Skip to content

Implement new text/x-plasmoidservicename mimetype for existing applets drag and drop

Niccolò Venerandi requested to merge work/niccolove/plasmoidservicename into master

Currently, the only way to drag and drop applets (e.g. from the widget explorer sidebar) is to use text/x-plasmoidservicename, which however only contains the service name of the applet and will thus create a brand new applet when dropped. This does not allow drag-and-drop of applets between containments without losing its configuration.

Instead, the new text/x-plasmoidinstanceid allows to specify a containment_id:applet_id combination, and when dropped the target containment will move the applet itself from the previous containment to the new one, preserving its configuration and without even deleting the QML part of it.

Example usage of this new type is here: plasma-desktop!1754 (merged)

(An alternative would be for the source containment to handle the applet transfer, however there's no way for the source containment to know the coordinates of the drop, thus it wouldn't know where to drop the applet)

Edited by Niccolò Venerandi

Merge request reports