xpra icon
Bug tracker and wiki

Opened 19 months ago

Last modified 3 months ago

#1542 new defect

FreeBSD, XFCE: Clicking tray icon opens and instantly closes the menu

Reported by: John Smith Owned by: John Smith
Priority: minor Milestone: future
Component: client Version: trunk
Keywords: gui, xfce Cc:

Description

FreeBSD, XFCE: Clicking tray icon opens and instantly closes the menu.
To make the menu stay opened I have to send {LMB Down} event onto the tray icon and thus have the left mouse button held until I hover an inactive menuitem where I can release the click (this way the menu stays open) or release the click over the menuitem I needed to click.
This is a bit annoying.

FreeBSD 11.0-p9, Xfce 4.12_1

Change History (3)

comment:1 Changed 18 months ago by Antoine Martin

Milestone: future

The code that triggers the tray menu can be found here: browser/xpra/trunk/src/xpra/client/ui_client_base.py:

            if button==1 and pressed:
                self.idle_add(self.menu_helper.activate, button, time)
            elif button==3 and not pressed:
                self.idle_add(self.menu_helper.popup, button, time)

I don't think there's much else we can do here, and this works fine in a number of desktop environments.
So I won't be tackling this myself, patches will be accepted though.

comment:2 Changed 3 months ago by Antoine Martin

Owner: changed from Antoine Martin to John Smith

Does it work better if you apply r20513 (one liner) and right click on it?

comment:3 Changed 3 months ago by John Smith

The problem is elsewhere:
Your patch affects only the line elif button==3 and not pressed:, while the issue is also reproducible with button 1 (LMB).

The conditions for calling those methods are probably fine, the problem is how they work: there seems to be some hook/action tied to {LMB Up} and {RMB Up}, while there shouldn't be any (the tray icon should react only to {LMB Down} and {RMB Down}, not to both {... Up} and {... Down}).

Btw, I've switched to Xubuntu 18.04, Xfce 4.12.

Note: See TracTickets for help on using tickets.