System tray icon support #774
kamilprusko
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Support for KStatusNotifierItem (SNI) / Appindicator got released in version 1.1.1
Screenshots
KDE
GNOME
Cinnamon
Capabilities
Quick overview what is enabled on various desktop environments:
Status icon (the progress ring) is displayed only when the host supports
IconThemePath, which is not part of the spec. Without it we can only display the app icon - nothing more. Pixmaps could be used as fallback, but I'm not in favour of using them in a modern app. It would be much cleaner if more hosts supported icon themes and symbolic icons.Primary Action refers to single mouse click on the icon. In Activation mode the app window gets opened / closed. In Context Menu mode, extra shortcut for the Timer window is added.
Secondary Action refers to the mouse middle-button click. Equivalent to pressing the highlighted button in the timer view.
Scroll Wheel Action is for extending / shortening of the countdown. We require Tooltips for this, so that there's an immediate visual feedback.
Capabilities operate on a whitelist - all is hardcoded here. Defaults resemble Cinnamon screenshot.
Overriding capabilities / Testing
If you use custom tray or a different DE you may want to override the capabilities. You can do it by running the app with env variables. For example:
Variables and expected behaviour per value:
SNI_HAVE_ICON_THEME1- status icon is visible0(default) - displays app iconSNI_HAVE_TOOLTIPS1- there is a tooltip with timer state0(default) - no tooltip or a tooltip with the app nameSNI_HAVE_MENU_ICONS1- icons in the context menu are visible and do not break the layout0(default) - no icons in the context menuSNI_HAVE_TOGGLES1(default) - use system ornaments next to state items in the context menu0- use custom icons for the ornaments; consider if1breaks the layoutSNI_HAVE_ACTIVATION1(default) - left mouse click opens apps main window0- left mouse click opens the context menuSNI_HAVE_PASSIVE_STATUS(KDE-specific?)1- icon gets lower priority when stopping the timer0(default) - icon is always visibleSNI_HAVE_ATTENTION_STATUS(KDE-specific?)1- when the timer is paused, the icon is pulsing/blinking0(default) - no animations when pausedUpdates to the
capabilities.valafile are welcomed! I can't add support for all the DEs / keep it up to date.Footnotes
Activation via double-click ↩
No icon at all ↩ ↩2
Displays app Title ↩ ↩2
Displays state (Pomodoro, Break), doesn't display time remaining ↩
Beta Was this translation helpful? Give feedback.
All reactions