diff --git a/.config/ags/modules/.configuration/default_options.jsonc b/.config/ags/modules/.configuration/default_options.jsonc index 85f1f96b7..ef19f14e4 100644 --- a/.config/ags/modules/.configuration/default_options.jsonc +++ b/.config/ags/modules/.configuration/default_options.jsonc @@ -199,6 +199,7 @@ "firefox", "org.gnome.Nautilus" ], + "ignoredAppsRegex": [], "layer": "top", "monitorExclusivity": true, // Dock will move to other monitor along with focus if enabled "searchPinnedAppIcons": false, // Try to search for the correct icon if the app class isn't an icon name diff --git a/.config/ags/modules/dock/dock.js b/.config/ags/modules/dock/dock.js index 8e318410f..c5c7c222f 100755 --- a/.config/ags/modules/dock/dock.js +++ b/.config/ags/modules/dock/dock.js @@ -119,6 +119,17 @@ const Taskbar = (monitor) => Widget.Box({ const client = Hyprland.clients[i]; if (client["pid"] == -1) return; const appClass = substitute(client.class); + const ignoredAppsRegex = userOptions.dock.ignoredAppsRegex; + const isIgnored = false; + + for (const regex of ignoredAppsRegex) { + if (!appClass.match(regex)) continue; + isIgnored = true; + break; + } + + if (isIgnored) continue; + // for (const appName of userOptions.dock.pinnedApps) { // if (appClass.includes(appName.toLowerCase())) // return null;