feat(workspace): map client classes to application icons (#368)

* feat(workspace): map client classes to application icons

* refactor: extract app icon detection

* feat: hide duplicate icons per workspace

* feat: use dedicated icons for empty workspace and fallback

* provide default icons

* feat: title or class matcher can no provided as regex

* style: change option description

* style: use more descriptive param name

* style: fix comment

* fix(lint): missing return type

* refactor: move type definitions into separate file

* feat: defined default app icon set

* docs: change option subtitles

* style: change icons

* fix: add missing default variant

---------

Co-authored-by: Jas Singh <jaskiratpal.singh@outlook.com>
This commit is contained in:
Daniel Pfefferkorn
2024-10-28 04:11:42 +01:00
committed by GitHub
parent 25753e5f17
commit 4e2a774c7e
7 changed files with 186 additions and 5 deletions

View File

@@ -0,0 +1,29 @@
export const defaultApplicationIcons = {
'[dD]iscord': '󰙯',
'^thunderbird': '',
'class:wezterm$': '',
'draw.io': '󰇟',
'firefox-developer-edition': '',
'google-chrome': '',
'title:.*youtube': '',
Spotify: '󰓇',
chromium: '',
code: '󰨞',
dbeaver: '',
edge: '󰇩',
evince: '',
firefox: '',
foot: '',
keepassxc: '',
keymapp: '',
kitty: '',
obsidian: '󰠮',
password$: '',
qBittorrent$: '',
rofi: '',
slack: '',
spotube: '󰓇',
steam: '',
telegram: '',
vlc: '󰕼',
};