Some actions were set to not-visible in order to not show them in
the popup if not in standalone mode. This has the side effect of
global shortcuts no longer working as global shortcuts do not
trigger for not visible actions.
To fullfill both needs the check is now done to only add the actions
to the popup if it's in standalone mode, but the visibility is not
changed.
BUG: 345945
FIXED-IN: 5.3.1
REVIEW: 123727
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
When clicking the barcode button, the view is changed to just show
the barcode instead of opening a dialog. By default a QR Code is
displayed.
A tool button is added which allows to change the barcode type, with
the following barcodes being supported:
* QR
* Data Matrix
* Code 39
* Code 93
REVIEW: 122402
As Prison no longer provides a QWidget based API, we need to do the
mapping to a QWidget ourself.
Note: for the plasmoid I'm considering switching to a non-widget based
solution.
REVIEW: 122386
Klipper crashes when any modifier key (with the exception of ALT) is pressed.
This is because it enters into an infinite recursion.
This happens because Klipper popup delegates all events to its input field.
The input field does not consume the event, so it is propagated to the parent widget,
which is the popup. The popup tries to send the event to the input field again.
Since klipper is now part of plasma, this bug kills the entire shell
REVIEW: 122106
BUG: 342947
Klipper crashes when any modifier key (with the exception of ALT) is pressed.
This is because it enters into an infinite recursion.
This happens because Klipper popup delegates all events to its input field.
The input field does not consume the event, so it is propagated to the parent widget,
which is the popup. The popup tries to send the event to the input field again.
Since klipper is now part of plasma, this bug kills the entire shell
REVIEW: 122106
BUG: 342947