mirror of
https://github.com/JakeStanger/ironbar.git
synced 2026-07-11 06:15:21 +01:00
[GH-ISSUE #487] [Launcher] Better mapping between favourites, executables and window classes #157
Labels
No labels
A:Build
A:CI
A:Client
A:Config
A:Core
A:Documentation
A:Documentation
A:IPC
A:Testing
A:UX/UI
blocked
BREAKING CHANGE
duplicate
good first issue
GTK4
help wanted
invalid
M:Battery
M:Battery
M:Bindmode
M:Bluetooth
M:Brightness
M:Cairo
M:Clipboard
M:Clock
M:Clock
M:Custom
M:Focused
M:Keyboard
M:Launcher
M:Menu
M:Music
M:Music
M:Music
M:Network Manager
M:Notifications
M:SysInfo
M:Tray
M:Volume
M:Workspaces
partially resolved
P:Critical
P:High
P:Low
P:Medium
pull-request
T:Bug
T:Bug
T:Core Enhancement
T:Module Enhancement
T:New Module
T:Question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
JakeStanger/ironbar#157
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @JakeStanger on GitHub (Mar 4, 2024).
Original GitHub issue: https://github.com/JakeStanger/ironbar/issues/487
Is your feature request related to a problem? Please describe.
The launcher
favoritesoption accepts any value thatxdg-opentakes, but for grouping to work this value has to match that of the window app_id / class.Describe the solution you'd like
Either the
favoritesor grouping logic (or both) should be smarter to make it easier to configure. Some well-knowns should be handled without requiring user configuration.Describe alternatives you've considered
None yet.
Additional context
Discussed in #465.
Properties in the
.desktopfile such asStartupWMClassmay potentially lend a hand.@slowsage commented on GitHub (Mar 25, 2024):
Two thoughts:
gtk-launch codeworks vscode-url-handlerin ironbar favorites.When an entry is not a string:
titleandclassare optional. When only one is specified, the launcher entry is matched with that value fortitleorclass. When both are specified, it should match both (AND).One thing I am unclear on is
initialTitleandinitialClassand how that can be mapped/tracked.@JakeStanger commented on GitHub (Mar 28, 2024):
Ironbar currently uses
gtk-launchto start favourites. This is probably why it's relatively smart in its current state.Spotify is CEF rather than Electron, not that it matters too much. I'll have a look at that one in particular because there should be a way of identifying it properly without needing to parse a desktop file.
I'd consider reading the desktop files a last resort. That said, there is already code for doing exactly that to pull out icons. Some tweaks there if necessary would give us a service + cache for any additional properties we would need.
I generally stay clear of mixed types where I can, but I think you're right to suggest it here. It may be that this is a place to introduce some pattern matching.
@slowsage commented on GitHub (Mar 28, 2024):
Re: Spotify see this.
+1 on the pattern matching - regexes to track windows would be great.
I also think instead of
namewe can uselaunchor something that cannot be confused with name/app_id/wm_class in the code (which usesfile_name).