For that the empty state is exposed in the DataEngine. As we have the
empty value now exposed the current on empty is now an empty string and
the clipboard is empty message is set in the plasmoid.
Klipper class needs to be splitted in a better way, but as a first step
just disable parts based on mode. E.g. we don't want to export the
klipper dbus interface when executed as a data engine.
The ClipboardEngine provides a service which in turn starts a
ClipboardJob. The following operations are globally supported:
* configureKlipper
* clearHistory
And the following operations are supported on uuid (base64):
* select
* remove
* edit
* barcode
* action
barcode is only supported if klipper gets compiled with prison support,
this is announced as data element "supportsBarcodes" in the "clipboard"
source of the DataEngine.