material-decoration icon indicating copy to clipboard operation
material-decoration copied to clipboard

does not work on lxqt with kwin

Open Vosjedev opened this issue 2 years ago • 2 comments

i just switched from kde to lxqt, and i cant see the LIM. i already tried reinstalling, restarting kwin, running QT_LOGGING_RULES="*=false;kdecoration.material=true" kstart5 -- kwin_x11 --replace, setting the window decoration to breeze and back to material. i can send logs or output of a command or anything else needed to resolve the problem.

Vosjedev avatar Apr 07 '23 14:04 Vosjedev

That's because the AppMenuModel looks for the KDE X11 window properties (aka atoms).

https://github.com/Zren/material-decoration/blob/master/src/AppMenuModel.cc#L65

You can confirm if a window has those properties with xprop then clicking a window.

I' know that KDE's gmenu-dbusmenu-proxy is used to proxy GTK menues to this KDE DBus API. I also know there's probably a Unity based DBus API but I don't remember how it works.

https://invent.kde.org/plasma/plasma-workspace/-/tree/master/gmenu-dbusmenu-proxy

GTK App (Firefox with OpenSUSE patches) in KDE. Doesn't seem to have _KDE_NET_WM_APPMENU_OBJECT_PATH for some reason.

_GTK_MENUBAR_OBJECT_PATH(UTF8_STRING) = "/org/appmenu/gtk/window/4"
_UNITY_OBJECT_PATH(UTF8_STRING) = "/org/appmenu/gtk/window/4"
_GTK_UNIQUE_BUS_NAME(UTF8_STRING) = ":1.569"

Qt App (Dolphin) in KDE

_KDE_NET_WM_APPMENU_OBJECT_PATH(STRING) = "/MenuBar/1"
_KDE_NET_WM_APPMENU_SERVICE_NAME(STRING) = ":1.1881"

Another useful tool is qdbusviewer.

❯ locate qdbusviewer
/usr/bin/qdbusviewer-qt5
/usr/lib64/qt5/bin/qdbusviewer

Zren avatar Apr 07 '23 20:04 Zren

ah. so this is kde specific, not kwin. oke!

Vosjedev avatar Apr 12 '23 09:04 Vosjedev