Custom shell and corona

Marco Martin notmart at gmail.com
Sun Nov 29 22:37:14 UTC 2015


On Sun, Nov 29, 2015 at 9:08 PM, Olivier Churlaud <olivier at churlaud.com> wrote:

>  - Put some connections between the main app and the plasmoid. I don't know
> how to do that because I've never really used QML, but I think it should not
> be to complicated.
>  -> Question: do we do this by QDbus, or by DataEngine (I think it's the
> name of the thing)?

You have several ways, that all are quite simple:
you can do a DataEngine (how did Amarok1 do? if it was based on
dataengines they can all be just ported as the api there didn't
change)
Or you can have amarok applets using a subclass of Plasma::Applet ,
which shares a singleton with the Amarok app. Being in the same
process, everybody can just communicate by reading and writing that
single object instance (I can tell you the more detailed steps)

> Feedback about plasma-framework
> =======================
>  - To add a container, one must use PlasmaQuick::ContainmentView, which is a
> QQuickWindow and should therefore be toplevel. It's not so good, if I want
> to put it as a widget in a QDialog or something else. Another class would be
> good for applications.

The problem there is that QML stuff can't be directly used in QWidget
based applications because they are two different kinds of windows,
you can embed them with
http://doc.qt.io/qt-5/qwidget.html#createWindowContainer
(not a problem of plasma, it's an issue in the use of QML in general)

>  - The Shortcuts defined for the desktop are also defined for the custom
> shell, even with a minimal Shell that contains only
>
>      Item { id: root;     property Item containment; }
>
> In my case, if I scroll on the QML object it changes my virtual desktop !!

for both those things it will need a custom shell package that
disables the shortcut setting dialog and the action plugins (mouse
wheel, context menus)
I was thinking to add one ready for this in plasma-framework, so you
can ignore that for now

--
Marco Martin


More information about the Plasma-devel mailing list