#2729 closed defect (fixed)
right clicks on tray menus for applications running over Xpra don't work
Reported by: | darkpenguin | Owned by: | Antoine Martin |
---|---|---|---|
Priority: | critical | Milestone: | 4.1 |
Component: | client | Version: | 3.0.x |
Keywords: | tray menu | Cc: |
Description
I use Xpra to run applications that use tray icons. Right-clicking those tray icons is supposed to pop up a context menu, but when I click their tray icons, nothing happens.
However, left-clicking those icons works as expected.
To get a more specific test case:
- Host system: MATE on Debian Buster amd64
- Create a Docker container with Debian Buster
- Install openssh-server and Xpra there, connect to it from your host
- Install and launch something with tray icons (say, BiglyBT and uTorrent in Wine, to get a good variety)
- Left-clicking their tray icons does what it's supposed to do (for me, show/hide the window)
- Right-clicking their tray icons is supposed to bring up a context menu, but instead, it has no effect.
I have tried this on Xpra 3.0.4 , and the problem is still there.
(Please fix the ticket tags if they are wrong - I have no idea what to put there.)
Change History (11)
comment:1 Changed 11 months ago by
Milestone: | 4.0 → 4.1 |
---|---|
Status: | new → assigned |
comment:2 Changed 11 months ago by
Summary: | Tray menus for applications running over Xpra don't work → right clicks on tray menus for applications running over Xpra don't work |
---|
comment:3 Changed 11 months ago by
I'm trying again, and now I can't even get it to run. Apparently, this time I'm doing something wrong... I'll try this again if I don't give up.
I know that tray icons are a problem, so I didn't have much hope for this - but I wanted to help reporting and diagnosing it, in case it turns out that I was wrong and this is actually simple.
comment:4 Changed 10 months ago by
Owner: | changed from Antoine Martin to darkpenguin |
---|---|
Status: | assigned → new |
Can you provide a screenshot, or logs?
Do I need docker to reproduce this bug at all? And ssh?
Can't you reproduce the problem with just a local session?
comment:5 Changed 10 months ago by
No, you don't need Docker - that is simply the easiest way for me to launch a "completely clean system" without even starting a virtual machine.
Yes, I can reproduce it with a local session.
- Boot https://cdimage.debian.org/debian-cd/10.3.0-live/amd64/iso-hybrid/debian-live-10.3.0-amd64-mate.iso in a virtual machine or on a test machine (just to make sure we're exactly on the same system)
- sudo apt-get update; sudo apt-get install xpra qbittorrent (I know xpra in the repos is a little outdated, but I've confirmed this on 3.0.4, and this is easier to show)
- Try launching qbittorrent normally: left-clicking its tray icon hides the main window, right-clicking the tray icon pops up a menu. Choose "Exit" from that menu.
- xpra start :10 --start=/usr/bin/qbittorrent
- xpra attach :10
- Right-click qbittorrent's tray icon: nothing happens
comment:6 Changed 10 months ago by
Owner: | changed from darkpenguin to Antoine Martin |
---|---|
Priority: | major → critical |
Status: | new → assigned |
comment:7 Changed 10 months ago by
I can post the log, but it's 33 Kb long, and I don't see a way to do a spoiler here...
comment:8 Changed 10 months ago by
I can post the log, but it's 33 Kb long, and I don't see a way to do a spoiler here...
No worries, if it's that easy to reproduce, I'll take it from here.
comment:9 Changed 7 months ago by
Problem confirmed.
What's weird is that we already have an undocumented hack for swapping the left and right buttons when using the StatusIcon
implementation: just hold shift whilst pressing the button.
But this hack doesn't help either!?
And both buttons work with a win32 client, the menu shows up.
So at least I can try to manually inspect the difference in the packets.
comment:10 Changed 5 months ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Well, this bug wins the prize for the dumbest bit of code I've written: a right click should use button number 3, not 2... That's all there was to it.
Sorry it's taken so long.
Fixed in r27457.
comment:11 Changed 5 weeks ago by
this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/2729
I'm not sure if that's fixable.
Tray icon support on Linux is an awful mess, it's possible that the tray icon implementation we use with your DE does not provide right click events.
Maybe another does, or maybe not.
If you can, please post the client's
-d tray
log output, and right click once on a tray icon.