[Interest] Fwd: QWaylandCompositor question
Ralf Van Bogaert
ralf.vanbogaert at gmail.com
Wed Jun 15 14:45:22 CEST 2022
Hi guys,
I'm really stuck with this.
Can anyone help?
---------- Forwarded message ---------
Van: Ralf Van Bogaert <ralf.vanbogaert at gmail.com>
Date: wo 1 jun. 2022 om 16:15
Subject: QWaylandCompositor question
To: <interest at qt-project.org>
Hello,
I am developing a Qt-based desktop environment, and would like to use
QWaylandCompositor to provide built-in compositing.
I am looking at several QML-based examples like Pure QML
<https://code.qt.io/cgit/qt/qtwayland.git/tree/examples/wayland/pure-qml?h=5.15>,
but I would like to implement it using the C++ classes only.
So I've rewritten it to the best of my ability, and it actually works -
application windows show up in the compositor - except that they do not
update their content. Applications do respond to clicks, and even show
popup menus - but it's hard to tell since the window's content does not
show any feedback.
These same applications work fine in the Pure QML example.
The problem is (I suspect) I am not handling the
QWaylandXdgShell::toplevelCreated(QWaylandXdgToplevel*,QWaylandXdgSurface*)
signal correctly.
Currently the slot it connects to looks like this:
void Compositor::onToplevelCreated(QWaylandXdgToplevel
*toplevel,QWaylandXdgSurface *xdgSurface)
{
QQuickWindow
*outputWindow=static_cast<QQuickWIndow*>(defaultOutput()->window());
QWaylandQuickShellSurfaceItem item(outputWindow->contentItem());
item->setShellSurface(xdgSurface);
}
It is unclear to me how the QML version handles this, since this
functionality is hidden under all that nice syntactic sugar.
Is anyone able to help?
Regards
Ralf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20220615/18ba38a1/attachment.htm>
More information about the Interest
mailing list