minimalcontextmenu was meant to be used for the screensavers, see
kde-workspace:27d19ac6d96aff1993fae951f9f996ad1cb6f31e for reference,
since we don't have screensavers in Plasma 5, this is not useful now.
BUG: 343599
FIXED-IN: 5.3
The service used so far is broken (doesn't resolve latitude and
longitude). Which means we need to switch the service to unbreak.
This change implements support for the Mozilla Location Service [1].
Advantages are:
* free
* open
* supports wifi based locationing
* provided by our FLOSS friends
REVIEW: 122628
[1] https://location.services.mozilla.com/
With XInput2 it's possible that multiple pairs of keyboard and pointers
are connected. As the lock screen only grabbed keyboard and pointer using
the core protocol any additional input devices were still reporting
input events to non-lockscreen windows creating the risk of interaction
with the system and accidentially typing a password where it doesn't
belong.
This change ensures that all additional master devices are also grabbed.
Unfortunately there are no xcb bindings for xinput2 (considered
experimental and thus not build on at least all debian based distros)
and because of that the XLib library is used. This brings some problems
as we cannot process the events (for that we would need xcb bindings,
to get the events). To still be able to get any keyboard and mouse events
we grab using the core protocol as it used to be and then ignore the
"Virtual core" devices and don't grab them with XInput2. Input events
from additional devices are grabbed and ignored, but definately no longer
delivered to other windows.
BUG: 341469
FIXED-IN: 5.3.0
REVIEW: 122558
By invoking saveHistory after each change we ensure that the clipboard
doesn't lose data in case klipper (or in dataengine mode plasmashell)
crashes.
To not cause stalls, the saving is performed in a thread using
QtConcurrentRun. As klipper itself is not thread save a Mutex is
used to lock changes in the HistoryModel.
To not overload the system the save operations are delayed and queued.
Each save is delayed by five seconds since the last clipboard change.
So if the clipboard is changed multiple times in a short interval it
doesn't get synced to the disk till the interaction has settled.
BUG: 343333
FIXED-IN: 5.3.0
REVIEW: 122382