dotfiles/home/modules/hypr/land/config/windowrulev2.nix

99 lines
2.4 KiB
Nix
Raw Normal View History

2025-01-08 01:05:45 -06:00
let
blueman = "(.blueman-manager-wrapped)";
2025-01-10 04:17:54 -06:00
calculator = "(org.gnome.Calculator)";
2025-01-08 01:05:45 -06:00
easyeffects = "(com.github.wwmm.easyeffects)";
2025-01-10 04:17:54 -06:00
firefox = "(firefox)";
2025-01-08 01:05:45 -06:00
nomacs = "(org.nomacs.ImageLounge)";
mpv = "(mpv)";
2025-01-10 04:17:54 -06:00
vlc = "(vlc)";
2025-01-08 01:05:45 -06:00
emote = "(emote)";
2025-01-09 02:09:02 -06:00
flameshot = "(flameshot)";
2025-01-10 04:17:54 -06:00
bitwarden = "(.*Bitwarden.*)";
picture = "(.*Picture-in-Picture.*)";
signal = "(signal)";
vesktop = "(vesktop)";
code = "(code)";
feishin = "(feishin)";
steam = "(steam)";
kdenlive = "(org.kde.kdenlive)";
2025-01-08 01:05:45 -06:00
maxsizeWindows = [
2025-01-10 04:17:54 -06:00
"maxsize 720 400, class:^${blueman}$"
"maxsize 360 500, class:^${calculator}$"
"maxsize 720 400, class:^${easyeffects}$"
"maxsize 720 400, class:^${mpv}$"
"maxsize 720 400, class:^${vlc}$"
2025-01-08 19:06:14 -06:00
"maxsize 640 360, class:^${nomacs}$"
2025-01-10 04:17:54 -06:00
"maxsize 800 450, title:^${bitwarden}$"
"maxsize 720 400, title:^${picture}$"
2025-01-08 01:05:45 -06:00
];
2025-01-10 04:17:54 -06:00
2025-01-08 01:05:45 -06:00
floatWindows = builtins.map (x: "float, " + x) [
2025-01-10 04:17:54 -06:00
"class:^${blueman}$"
"class:^${calculator}$"
"class:^${easyeffects}$"
"class:^${emote}$"
"class:^${mpv}$"
"class:^${vlc}$"
"class:^${nomacs}$"
"class:^${flameshot}$"
"title:^(${picture})$"
"title:^${bitwarden}$"
2025-01-08 01:05:45 -06:00
];
pinWindows = builtins.map (x: "pin, " + x) [
2025-01-10 04:17:54 -06:00
"title:^${bitwarden}$"
"title:^${picture}$"
];
idleInhibit = builtins.map (x: "idleinhibit, " + x) [
"fullscreen, class:^${firefox}$"
];
workspaceInit1 = builtins.map (x: "workspace 1 silent, " + x) [
"class:^${signal}$"
"class:^${vesktop}$"
];
workspaceInit2 = builtins.map (x: "workspace 2 silent, " + x) [
"class:^${code}$"
"class:^${firefox}$"
];
workspaceInit3 = builtins.map (x: "workspace 3 silent, " + x) [
"class:^${steam}$"
];
workspaceInit4 = builtins.map (x: "workspace 4 silent, " + x) [
"class:^${feishin}$"
];
centerWindows = builtins.map (x: "center, " + x) [
"class:^${emote}$"
"class:^${mpv}$"
"class:^${nomacs}$"
];
opaqueWindows = builtins.map (x: "opaque, " + x) [
"class:^${firefox}$"
"class:^${kdenlive}$"
"class:^(krita)$"
"class:^(shotcut)$"
"class:^${mpv}$"
"class:^(Brave-browser)$"
"class:^(Gimp-2.10)$"
"class:^(org.kde.okular)$"
"class:^${vlc}$"
2025-01-08 01:05:45 -06:00
];
in
2025-01-10 04:17:54 -06:00
maxsizeWindows
++ floatWindows
++ pinWindows
++ idleInhibit
++ workspaceInit1
++ workspaceInit2
++ workspaceInit3
++ workspaceInit4
++ centerWindows
++ opaqueWindows