You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I read the code and messed around with it a little bit because there was an icon that I could not seem to hide from the tray. In he end I figured out that the getAppSetting() function in AppManager.js returns null when the setting is either not present OR the app is not found by _getTrayApp . Although this does make sense, in the addIcon() function in TrayIndicator.js the output of getAppSetting is truth tested for the "hidden" setting. I'm sure the idea is to say that icons are shown by default, but this has the consequence of apps that are signaled from the TrayManager but not found by AppSystem.search (again there is an app that fits this description on my setup so this is not just theoretical) are stuck in the dock and cannot be hidden (or interact with settings at all). A way around this would be to have the getAppSetting only return explicit results, null for settings-not-found and perhaps an exception for window not found, or some other scheme that communicates what happened, but in the case of hiding / showing the app icon there would still be a design choice. Are icons that are unable to interact with the settings hidden by default or shown by default? I changed the code so that they are hidden, but that is not the only answer to this question so I have not made a PR.
I'm new to gnome so maybe there is a way to fix the underlying issue of TrayManager and AppSystem.search not always agreeing with each other, or maybe this simply isn't worth considering at all in the grand scheme of things, but I thought I would share what I learned from having this issue.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
I read the code and messed around with it a little bit because there was an icon that I could not seem to hide from the tray. In he end I figured out that the
getAppSetting()
function inAppManager.js
returns null when the setting is either not present OR the app is not found by_getTrayApp
. Although this does make sense, in theaddIcon()
function inTrayIndicator.js
the output ofgetAppSetting
is truth tested for the "hidden" setting. I'm sure the idea is to say that icons are shown by default, but this has the consequence of apps that are signaled from theTrayManager
but not found byAppSystem.search
(again there is an app that fits this description on my setup so this is not just theoretical) are stuck in the dock and cannot be hidden (or interact with settings at all). A way around this would be to have thegetAppSetting
only return explicit results, null for settings-not-found and perhaps an exception for window not found, or some other scheme that communicates what happened, but in the case of hiding / showing the app icon there would still be a design choice. Are icons that are unable to interact with the settings hidden by default or shown by default? I changed the code so that they are hidden, but that is not the only answer to this question so I have not made a PR.I'm new to gnome so maybe there is a way to fix the underlying issue of
TrayManager
andAppSystem.search
not always agreeing with each other, or maybe this simply isn't worth considering at all in the grand scheme of things, but I thought I would share what I learned from having this issue.Beta Was this translation helpful? Give feedback.
All reactions