Bug 434147 - 3rd party apps stopped opening at click
Summary: 3rd party apps stopped opening at click
Status: RESOLVED UPSTREAM
Alias: None
Product: plasmashell
Classification: Plasma
Component: System Tray widget (show other bugs)
Version: 5.21.2
Platform: Slackware Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-03-08 17:00 UTC by Dmitri Koulikoff
Modified: 2021-03-08 21:52 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dmitri Koulikoff 2021-03-08 17:00:04 UTC
SUMMARY

I use Skype and Slack applications. They keep their icons in the SystemTray.
In kde4 the clicking on the icon lead to the opening the application.
Now I see the same context menu as if I do the right-click


STEPS TO REPRODUCE
1. Start Skype for linux or Slack application
2. Right click on the icon in the System Tray
3. Left click on the icon in the System Tray


OBSERVED RESULT

Both clicks lead to the opening a context menu.


EXPECTED RESULT

The left click must open the application window.


SOFTWARE/OS VERSIONS
Operating System: Slackware-current
KDE Plasma Version: 5.21.2
KDE Frameworks Version: 5.79.0
Qt Version: 5.15.2
Kernel Version: 5.10.20
OS Type: 64-bit
Graphics Platform: X11
Processors: 12 × Intel® Core™ i7-9750H CPU @ 2.60GHz
Memory: 31.1 GiB of RAM
Graphics Processor: Mesa Intel® UHD Graphics 630
 

ADDITIONAL INFORMATION
Comment 1 Nate Graham 2021-03-08 20:00:43 UTC
Works for me with Discord, but not Dropbox. This would seem to be an app-specific issue, But I'll let Konrad have the last word on the subject.
Comment 2 Konrad Materka 2021-03-08 21:52:03 UTC
Back in the KDE4 times most of the System Tray icons used XEmbed protocol. It was deprecated long time ago, now most applications are using SNI (Status Notifier Item) protocol:
https://www.freedesktop.org/wiki/Specifications/StatusNotifierItem/StatusNotifierItem/

As part of this protocol applications can implement handlers for ContextMenu or Activate signals (among few others). Unfortunately, during the migration to SNI, most developers choose to implement only the ContextMenu signal (right mouse button click) and not the Activate (left click) signal. In this case, when user clicks with left mouse button, the only thing we can do is to fallback to ContextMenu, so that user at least has a chance to use the context menu to show the application window.

To be fair it is not entirely developers fault - libappindicator used by all GTK apps has exactly the same implementation for Activate and Context Menu:
https://bazaar.launchpad.net/~indicator-applet-developers/libappindicator/trunk/view/head:/src/app-indicator.c#L1713
There is a bug report with this issue that but little chance to get it fixed:
https://bugs.launchpad.net/ubuntu/+source/libappindicator/+bug/1910521

A lot (most?) of affected apps are built using Electron, which already has a bug report:
https://github.com/electron/electron/issues/14941
It probably won't be fixed anytime soon, on Linux Electron uses GTK and libappindicator...

@Nate my Discord shows context menu, what client are you using?