Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux Riot tray icon interactivity issues #7553

Closed
BloodyIron opened this issue Oct 25, 2018 · 25 comments
Closed

Linux Riot tray icon interactivity issues #7553

BloodyIron opened this issue Oct 25, 2018 · 25 comments
Labels
A-Electron Help Wanted Extra attention is needed P2 S-Minor Impairs non-critical functionality or suitable workarounds exist T-Defect Z-Upstream

Comments

@BloodyIron
Copy link

I think this may be a feature regression in the last few months, because I recall it being the way I prefer in an earlier version.

I'm on Ubuntu, with XFCE4, and when I left or right click on the "systray" icon for Riot, both come up with the menu to open/quit.

I think the left click should just open/minimize it (depending on its state), and right click bring up the menu.

It's really annoying having to click on the pull-down menu to open it.

Small change, but would be really appreciated.

Please? :)

@lampholder
Copy link
Member

If this is a change, this could be another unintended side-effect of the electron version bump. Unfortunately I think the systray icon lives in a bit of a blind spot for us - there's no automated testing on it, and I don't know if anyone on the team regularly uses electron on a linux machine with a systray :\

So - thanks for this report, and if anyone has any ideas how we can keep an automated eye on systray behaviour I'd love to hear about them :)

@lampholder lampholder added T-Defect P2 S-Minor Impairs non-critical functionality or suitable workarounds exist A-Electron Help Wanted Extra attention is needed labels Nov 1, 2018
@banholzer
Copy link

banholzer commented Nov 6, 2018

I have the same issue and its quite annoying having to click multiple times to show/hide riot.

edit:
Perhaps it has to do with the "platform limitations" stated on https://github.com/electron/electron/blob/master/docs/api/tray.md

But I still wonder why it had worked before.

Platform limitations:

On Linux the app indicator will be used if it is supported, otherwise GtkStatusIcon will be used instead.
On Linux distributions that only have app indicator support, you have to install libappindicator1 to make the tray icon work.
App indicator will only be shown when it has a context menu.
When app indicator is used on Linux, the click event is ignored.
On Linux in order for changes made to individual MenuItems to take effect, you have to call setContextMenu again. For example:

@BloodyIron
Copy link
Author

Yeah it did use to just be left click to open/close, right click for menu. That worked plenty well for me!

@gerroon
Copy link

gerroon commented Jan 26, 2019

This is a harsh drag for the elderly users of Riot.

@BloodyIron
Copy link
Author

still really annoying

@gerroon
Copy link

gerroon commented Jan 26, 2019

@BloodyIron, I need to vnc to my mom's computer and click on Riot in the tray properly for her so that I can talk to her, she cant do it as of now due to this bug. It is that bad :(, it is so sad :(

She cant call me as well due to this issue.

That one extra click makes such a big difference for elderly people, especially for those with vision issues.

@Pointedstick
Copy link

In KDE Plasma with Riot version 1.0.1 this now works as expected.

@BloodyIron
Copy link
Author

Hmm just tried in XFCE with 1.0.1, still doing the menu thing.

@pacien
Copy link
Contributor

pacien commented Apr 9, 2019

Looks like a regression in Electron itself: electron/electron#16462, electron/electron#14941, electron/electron#13087.

@akontsevich
Copy link

Think #7553 and #7624 could be closed for now: works fine if libappindicator3 (libappindicator-gtk3) not installed. Unlike #6767 and #8819 (icon look) should be reopened and fixed: stopped to work even if I run with Exec=XDG_CURRENT_DESKTOP=Unity riot %U. For now icon looks like blank black square in KDE which is weird. I think local electron version used to build riot should be manually patched like Skype done previous year, where icon looks good for now with whatever appindicator is used or not, Unity desktop set or not. Otherwise we can wait too long it will be fixed in Electron. Makes sense?

@BloodyIron
Copy link
Author

Uhhh? If I left or right click it still brings up the menu. Still very much interested in left click open, right click menu.

@akontsevich
Copy link

Left click open, right click menu works fine for me as expected in suse KDE without libappindicator3 installed. What disto/DE/packages installed do You have?

@gerroon
Copy link

gerroon commented Jun 23, 2019

I get the same menu with either left or right or middle clicks. I do not get why Electron changed this behavior on Linux because this works as expected on Windows.

@MedicMomcilo
Copy link

@akontsevich I'm not sure I understand.

If libappindicator is dependency for many programs, how can we uninstall it?
Wouldn't that leave us with unusable DE?

@akontsevich
Copy link

akontsevich commented Jun 24, 2019

@MedicMomcilo Probably You're right. libappindicator is not a problem only in KDE. In Mate, Cinnamon, etc seems a problem.

@foresto
Copy link

foresto commented Jan 22, 2020

Confirmed on an Xfce desktop (Gtk widgets) that has both the Notification Area and the Indicator Plugin installed on the desktop panel.

It looks like the Riot icon is appearing in the Notification Area (not the Indicator area), which I think implies that it's using a Gtk StatusIcon rather than a Gtk AppIndicator. I'm not sure what it uses on a Qt desktop like KDE, but surely something different from either of those, which could explain why KDE users are not seeing the bad behavior.

And agreed: Having to fiddle with a menu when I just want to open Riot from the tray icon is an annoying hassle. I should be able to just click the icon, as I do with other apps that have a tray icon.

@foresto
Copy link

foresto commented Feb 20, 2020

This problem also occurs when using xfce's new Status Notifier Plugin.

It's still present in Riot-web 1.5.10.

@gerroon
Copy link

gerroon commented Feb 20, 2020

I think this is Electron shit storm all over again, they constantly f....k stuff.

@akontsevich
Copy link

This problem also occurs when using xfce's new Status Notifier Plugin.
It's still present in Riot-web 1.5.10.

For me problem is fixed: electron/electron#13087 (comment) in KDE while libappindicator3 is not necessary and nor used any more.

@t3chguy
Copy link
Member

t3chguy commented Jun 5, 2020

I believe this might actually be fixed with the whole electron tray mess right now

@akontsevich
Copy link

It will be broken with this electron/electron#21445 soon again.

@t3chguy
Copy link
Member

t3chguy commented Jun 5, 2020

Duplicate of #3133

@t3chguy t3chguy marked this as a duplicate of #3133 Jun 5, 2020
@t3chguy t3chguy closed this as completed Jun 5, 2020
@BloodyIron
Copy link
Author

BloodyIron commented Jun 5, 2020

@t3chguy I don't believe this is a duplicate of #3133 as we have (until the electron version bump) been able to interact with it. Just not left click show/hide.

@t3chguy t3chguy changed the title [Feature Change] Systray, left click open, right click menu Linux Riot tray icon interactivity issues Jun 5, 2020
@t3chguy
Copy link
Member

t3chguy commented Jun 5, 2020

They all boil down to the same underlying issues between Electron and your DE/WM, there is no point tracking them as 3 here. There isn't anything Riot can really do about them.

@BloodyIron
Copy link
Author

@t3chguy yeah I see that reading the electron reversion thread. Well, hopefully that brings back the left click convenience functionality.

su-ex added a commit to SchildiChat/element-web that referenced this issue Jan 31, 2022
* Tweak room list header menu for when space is active ([\element-hq#7577](matrix-org/matrix-react-sdk#7577)). Fixes element-hq#20601.
* Tweak light hover & active color for bubble layout ([\element-hq#7626](matrix-org/matrix-react-sdk#7626)). Fixes element-hq#19475.
* De-labs Metaspaces ([\element-hq#7613](matrix-org/matrix-react-sdk#7613)).
* De-labs Message Bubbles layout ([\element-hq#7612](matrix-org/matrix-react-sdk#7612)).
* Add customisation point for mxid display ([\element-hq#7595](matrix-org/matrix-react-sdk#7595)).
* Add labs flag for default open right panel ([\element-hq#7618](matrix-org/matrix-react-sdk#7618)). Fixes element-hq#20666.
* Tweak copy for the Sidebar tab in User Settings ([\element-hq#7578](matrix-org/matrix-react-sdk#7578)). Fixes element-hq#20619.
* Make widgets not reload (persistent) between center and top container  ([\element-hq#7575](matrix-org/matrix-react-sdk#7575)). Fixes element-hq#20596. Contributed by @toger5.
* Don't render a bubble around emotes in bubble layout ([\element-hq#7573](matrix-org/matrix-react-sdk#7573)). Fixes element-hq#20617.
* Add ability to switch between voice & video in calls ([\element-hq#7155](matrix-org/matrix-react-sdk#7155)). Fixes element-hq#18619. Contributed by @SimonBrandner.
* Re-renable Share option for location messages ([\element-hq#7596](matrix-org/matrix-react-sdk#7596)).
* Make room ID copyable ([\element-hq#7600](matrix-org/matrix-react-sdk#7600)). Fixes element-hq#20675. Contributed by @SimonBrandner.
* Improve the look of the keyboard settings tab ([\element-hq#7562](matrix-org/matrix-react-sdk#7562)). Contributed by @SimonBrandner.
* Add tooltips to emoji in messages ([\element-hq#7592](matrix-org/matrix-react-sdk#7592)). Fixes element-hq#9911 and element-hq#20661. Contributed by @robintown.
* Improve redundant tooltip on send button in forward dialog ([\element-hq#7594](matrix-org/matrix-react-sdk#7594)). Contributed by @twigleingrid.
* Allow downloads from widgets. ([\element-hq#7502](matrix-org/matrix-react-sdk#7502)). Contributed by @Fox32.
* Parse matrix-schemed URIs ([\element-hq#7453](matrix-org/matrix-react-sdk#7453)).
* Show a tile at beginning of visible history ([\element-hq#5887](matrix-org/matrix-react-sdk#5887)). Fixes element-hq#16818 element-hq#16679 and element-hq#19888. Contributed by @robintown.
* Enable the polls feature ([\element-hq#7581](matrix-org/matrix-react-sdk#7581)).
* Display general marker on non-self location shares ([\element-hq#7574](matrix-org/matrix-react-sdk#7574)).
* Improve/add notifications for location and poll events ([\element-hq#7552](matrix-org/matrix-react-sdk#7552)). Fixes element-hq#20561. Contributed by @SimonBrandner.
* Upgrade linkify to v3.0 ([\element-hq#7282](matrix-org/matrix-react-sdk#7282)). Fixes element-hq#17133 element-hq#16825 and element-hq#5808. Contributed by @Palid.
* Update sidebar icon from Compound ([\element-hq#7572](matrix-org/matrix-react-sdk#7572)). Fixes element-hq#20615.
* Replace home icon with new one ([\element-hq#7571](matrix-org/matrix-react-sdk#7571)). Fixes element-hq#20606.
* Make the `Keyboard Shortcuts` dialog into a settings tab ([\element-hq#7198](matrix-org/matrix-react-sdk#7198)). Fixes element-hq#19866. Contributed by @SimonBrandner.
* Add setting for enabling location sharing ([\element-hq#7547](matrix-org/matrix-react-sdk#7547)).
* Add a developer mode 'view source' button to crashed event tiles ([\element-hq#7537](matrix-org/matrix-react-sdk#7537)).
* Replace `kick` terminology with `Remove from chat` ([\element-hq#7469](matrix-org/matrix-react-sdk#7469)). Fixes element-hq#9547.
* Render events as extensible events (behind labs) ([\element-hq#7462](matrix-org/matrix-react-sdk#7462)).
* Render Jitsi (and other sticky widgets) in PiP container, so it can be dragged and the "jump to room functionality" is provided ([\element-hq#7450](matrix-org/matrix-react-sdk#7450)). Fixes element-hq#15682. Contributed by @toger5.
* Allow bubble layout in Thread View ([\element-hq#7478](matrix-org/matrix-react-sdk#7478)). Fixes element-hq#20419.
* Make LocationPicker appearance cleaner ([\element-hq#7516](matrix-org/matrix-react-sdk#7516)).
* Limit max-width for bubble layout to 1200px ([\element-hq#7458](matrix-org/matrix-react-sdk#7458)). Fixes element-hq#18072.
* Improve look of call events in bubble layout ([\element-hq#7445](matrix-org/matrix-react-sdk#7445)). Fixes element-hq#20324. Contributed by @SimonBrandner.
* Make files & voice memos in bubble layout match colouring ([\element-hq#7457](matrix-org/matrix-react-sdk#7457)). Fixes element-hq#20326.
* Allow cancelling events whilst they are encrypting ([\element-hq#7483](matrix-org/matrix-react-sdk#7483)). Fixes element-hq#17726.
* [Release] Fix left panel widgets causing app-wide crash ([\element-hq#7660](matrix-org/matrix-react-sdk#7660)).
* Load light theme prior to HTML export to ensure it is present ([\element-hq#7643](matrix-org/matrix-react-sdk#7643)). Fixes element-hq#20276.
* Fix soft-crash when hanging up Jitsi via PIP ([\element-hq#7645](matrix-org/matrix-react-sdk#7645)). Fixes element-hq#20766.
* Fix RightPanelStore assuming isViewingRoom is false on load ([\element-hq#7642](matrix-org/matrix-react-sdk#7642)).
* Correctly handle Room.timeline events which have a nullable `Room` ([\element-hq#7635](matrix-org/matrix-react-sdk#7635)). Fixes matrix-org/element-web-rageshakes#9490.
* Translate keyboard shortcut alternate key names ([\element-hq#7633](matrix-org/matrix-react-sdk#7633)). Fixes element-hq#20739.
* Fix unfocused paste handling and focus return for file uploads ([\element-hq#7625](matrix-org/matrix-react-sdk#7625)).
* Changed MacOS hotkey for GoToHome view. ([\#7631](matrix-org/matrix-react-sdk#7631)). Contributed by @aj-ya.
* Fix issue with the new composer EmojiPart which caused infinite loops ([\element-hq#7629](matrix-org/matrix-react-sdk#7629)). Fixes element-hq#20746.
* Upgrade linkifyjs to fix schemes as domain prefixes ([\element-hq#7628](matrix-org/matrix-react-sdk#7628)). Fixes element-hq#20720.
* Show bubble tile timestamps for bubble layout inside the bubble ([\element-hq#7622](matrix-org/matrix-react-sdk#7622)). Fixes element-hq#20562.
*  Improve taken username warning in registration for when request fails ([\element-hq#7621](matrix-org/matrix-react-sdk#7621)).
* Avoid double dialog after clicking to remove a public room ([\element-hq#7604](matrix-org/matrix-react-sdk#7604)). Fixes element-hq#20681. Contributed by @c-cal.
* Fix space member list right panel state ([\element-hq#7617](matrix-org/matrix-react-sdk#7617)). Fixes element-hq#20716.
* Fall back to legacy analytics for guest users ([\#7616](matrix-org/matrix-react-sdk#7616)).
* Always emit a space filter update when the space is actually changed ([\element-hq#7611](matrix-org/matrix-react-sdk#7611)). Fixes element-hq#20664.
* Enlarge emoji in composer ([\element-hq#7602](matrix-org/matrix-react-sdk#7602)). Fixes element-hq#20665 element-hq#15635 and element-hq#20688. Contributed by @robintown.
* Disable location sharing button on Desktop ([\element-hq#7590](matrix-org/matrix-react-sdk#7590)).
* Make pills more natural to navigate around ([\element-hq#7607](matrix-org/matrix-react-sdk#7607)). Fixes element-hq#20678. Contributed by @robintown.
* Fix excessive padding on inline images ([\element-hq#7605](matrix-org/matrix-react-sdk#7605)). Contributed by @robintown.
* Prevent pills from being split by formatting actions ([\element-hq#7606](matrix-org/matrix-react-sdk#7606)). Contributed by @robintown.
* Fix translation of "powerText" ([\element-hq#7603](matrix-org/matrix-react-sdk#7603)). Contributed by @c-cal.
* Unhide display names when switching back to modern layout ([\element-hq#7601](matrix-org/matrix-react-sdk#7601)). Fixes element-hq#20676. Contributed by @robintown.
* Fix space member list not opening ([\element-hq#7609](matrix-org/matrix-react-sdk#7609)). Fixes element-hq#20679. Contributed by @SimonBrandner.
* Fix translation for the "Add room" tooltip ([\element-hq#7532](matrix-org/matrix-react-sdk#7532)). Contributed by @c-cal.
* Make the close button of the location share dialog visible in high-contrast theme ([\element-hq#7597](matrix-org/matrix-react-sdk#7597)).
* Cancel pending events in virtual room when call placed ([\element-hq#7583](matrix-org/matrix-react-sdk#7583)). Fixes element-hq#17594.
* Fix alignment of unread badge in thread list ([\element-hq#7582](matrix-org/matrix-react-sdk#7582)). Fixes element-hq#20643.
* Fix left positioned tooltips being wrong and offset by fixed value ([\element-hq#7551](matrix-org/matrix-react-sdk#7551)).
* Fix MAB overlapping or overflowing in bubbles layout and threads regressions ([\element-hq#7569](matrix-org/matrix-react-sdk#7569)). Fixes element-hq#20403 and element-hq#20404.
* Fix wrong icon being used for appearance tab in space preferences dialog ([\element-hq#7570](matrix-org/matrix-react-sdk#7570)). Fixes element-hq#20608.
* Fix `/jumptodate` using wrong MSC feature flag ([\element-hq#7563](matrix-org/matrix-react-sdk#7563)).
* Ensure maps show up in replies and threads, by creating unique IDs ([\element-hq#7568](matrix-org/matrix-react-sdk#7568)).
* Differentiate between hover and roving focus in spotlight dialog ([\element-hq#7564](matrix-org/matrix-react-sdk#7564)). Fixes element-hq#20597.
* Fix timeline jumping issues related to bubble layout ([\element-hq#7529](matrix-org/matrix-react-sdk#7529)). Fixes element-hq#20302.
* Start a conference in a room with 2 people + invitee rather than a 1:1 call ([\element-hq#7557](matrix-org/matrix-react-sdk#7557)). Fixes element-hq#1202. Contributed by @SimonBrandner.
* Wait for initial profile load before displaying widget ([\element-hq#7556](matrix-org/matrix-react-sdk#7556)).
* Make widgets and calls span across the whole room width when using bubble layout ([\element-hq#7553](matrix-org/matrix-react-sdk#7553)). Fixes element-hq#20560. Contributed by @SimonBrandner.
* Always show right panel after setting a card ([\element-hq#7544](matrix-org/matrix-react-sdk#7544)). Contributed by @toger5.
* Support deserialising HR tags for editing ([\element-hq#7543](matrix-org/matrix-react-sdk#7543)). Fixes element-hq#20553.
* Refresh ThreadView after React state has been updated ([\element-hq#7539](matrix-org/matrix-react-sdk#7539)). Fixes element-hq#20549.
* Set initial zoom level to 1 to make zooming to location faster ([\element-hq#7541](matrix-org/matrix-react-sdk#7541)).
* truncate room name on pip header ([\#7538](matrix-org/matrix-react-sdk#7538)).
* Prevent enter to send edit weirdness when no change has been made ([\element-hq#7522](matrix-org/matrix-react-sdk#7522)). Fixes element-hq#20507.
* Allow using room pills in slash commands ([\element-hq#7513](matrix-org/matrix-react-sdk#7513)). Fixes element-hq#20343.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Electron Help Wanted Extra attention is needed P2 S-Minor Impairs non-critical functionality or suitable workarounds exist T-Defect Z-Upstream
Projects
None yet
Development

No branches or pull requests