blue-systems / plasma-issues

plasma 5.6 - 5.xx (ongoing)
0 stars 0 forks source link

[systray]: doesnt rightclick nor leftclick interact with "ring" #70

Closed star-buck closed 7 years ago

star-buck commented 7 years ago

Under netrunner, one can install these ring packages to test systray icon interaction:

http://dci.pangea.pub/job/1703_release_ds9-extras-packaging_ring_bin_amd64/lastSuccessfulBuild/artifact/result/ring_20170316.1.06a3f0b~dfsg1-1+9+build5_amd64.deb http://dci.pangea.pub/job/1703_release_ds9-extras-packaging_ring_bin_amd64/lastSuccessfulBuild/artifact/result/ring-daemon_20170316.1.06a3f0b~dfsg1-1+9+build5_amd64.deb

install via sudo apt install ./*.deb

davidedmundson commented 7 years ago

Frustratingly the code has full AppIndicator support, which would not use xembed at all. But then ring randomly disables it unless you're running Unity:

If you run "XDG_CURRENT_DESKTOP=Unity gnome-ring" you'll get it communicating directly with a nicer icon and working right click and everything.

If you end up patching gnome-ring for any other reason or want a fast fix, remove: if (g_strcmp0("Unity", desktop) == 0) { in ring_client.cpp:320

Of course xembedsniproxy should still work, so that still needs fixing, and it needs fixing on our side. I'm currently on that.

notmart commented 7 years ago

i get now a 404 error when trying to download the binaries, linking to the project on jenkins: http://dci.pangea.pub/job/1703_release_ds9-extras-packaging_ring_bin_amd64/ so, both a fix on our side (problem is specifically on xembedsniproxy?) with the current client, and would also be nice to send a patch to them too, which i can try

star-buck commented 7 years ago

@shadeslayer : any working links?

notmart commented 7 years ago

i can access the new built packages from the link i gave

davidedmundson commented 7 years ago

Bug is with GTK.someNewVersion and xembedsniproxy.

Xembedsniproxy fakes click events to the applet.

New GTK doesn't even register for mouse events. It did at the time of writing...

If you run xwininfo -events on the embedded window of xchat and one of a new GTK app, you'll see one registers for ButtonPressEvent the other doesn't. Naturally if the window doesn't even register for such an event, sending an event to that window isn't going to work.

I think GTK only supports XI2 now.

Hopefully we can just make xembedsniproxy fake those events and everything will work again...

notmart commented 7 years ago

this is a patch for ring itself, let's see if they accept it https://gerrit-ring.savoirfairelinux.com/#/c/6433/

notmart commented 7 years ago

patch has been merged in the ring client

davidedmundson commented 7 years ago

...and xembedsniproxy patched: https://phabricator.kde.org/D5156

Writing legacy support shouldn't be against a moving target.

shadeslayer commented 7 years ago

Presumably that ring patch will either land in tomorrow's or next week's release, so I can update that as required to fix the bug in Netrunner.

star-buck commented 7 years ago

@davidedmundson : what version would your fix be released with?