unity-panel-service top-level menubar (created in panel-service.c:2540)
-> menu item for every indicator entry, including dead ones
(created in panel-service.c:2566, added in panel-service.c:2589)
-> item submenu (created in indicator-application.c:555, added in panel-service.c:2590)
-> dbusmenu client (created in libdbusmenu-gtk/menu.c:402)
-> finally, each dbusmenu client maintains its own menu structure
(and all clients are alive and massively send D-Bus requests)
A question from me: is it possible to inspect unity-panel-service with GTK+ Inspector somehow? I tried running it with GTK_DEBUG=interactive, but the only object it shows to me is GtkSettings.
Hi Marco, thanks for looking at this!
Attached is a smaller test case. Compile it with:
g++ -fPIC -I /usr/include/ x86_64- linux-gnu/ qt5 -lQt5Core -lQt5Gui -lQt5Widgets ./test.cpp
To me, the chain of objects looks like this:
unity-panel-service top-level menubar (created in panel-service. c:2540) c:2566, added in panel-service. c:2589) application. c:555, added in panel-service. c:2590) gtk/menu. c:402)
-> menu item for every indicator entry, including dead ones
(created in panel-service.
-> item submenu (created in indicator-
-> dbusmenu client (created in libdbusmenu-
-> finally, each dbusmenu client maintains its own menu structure
(and all clients are alive and massively send D-Bus requests)
The upstream commit is https:/ /github. com/owncloud/ client/ commit/ 98efb075357fa64 f — it contained other changes, so I did not cherry-pick all of it. The first item in the commit message is relevant to us.
A question from me: is it possible to inspect unity-panel-service with GTK+ Inspector somehow? I tried running it with GTK_DEBUG= interactive, but the only object it shows to me is GtkSettings.