feat(hyprland): Refactor workspaces and add blur effect

Refactor Hyprland configuration to:
- Move Steam and Music from special workspaces to unique, named workspaces for better integration into the regular workflow.
- Update Waybar's workspace module to correctly display icons for these new named workspaces and filter them out from the special workspaces module.
- Implement a global blur effect for inactive windows, with a specific exception to keep Firefox windows fully opaque, enhancing focus on active content.
This commit is contained in:
kenji
2026-03-14 08:29:12 -05:00
parent dca67e19bc
commit 1c71784ac9
5 changed files with 47 additions and 23 deletions
+1
View File
@@ -25,6 +25,7 @@
windowrulev2 = [
"workspace special:youtube, class:^(youtube)$"
"workspace special:jellyfin, class:^(jellyfin)$"
"opacity 1.0 1.0, class:^(firefox)$"
];
};
imports = [
+3 -1
View File
@@ -5,11 +5,12 @@
gaps_out = 15;
layout = "dwindle";
allow_tearing = true;
resize_on_border = true;
};
decoration = {
rounding = 0;
active_opacity = 0.99;
inactive_opacity = 0.95;
inactive_opacity = 0.7;
shadow = {
enabled = true;
range = 2;
@@ -20,6 +21,7 @@
enabled = true;
size = 8;
passes = 2;
new_optimizations = true;
special = true;
brightness = 0.60;
contrast = 0.75;
+28 -11
View File
@@ -116,18 +116,39 @@ in {
all-outputs = true;
format = "{icon}";
format-icons = {
"music" = "󰎆";
"gaming" = "󰊖";
"steam" = "󰓓";
"default" = "";
"active" = "󱓻";
# Numbered workspaces 1-5
"1" = "1";
"2" = "2";
"3" = "3";
"4" = "4";
"5" = "5";
"6" = "6";
"7" = "7";
"8" = "8";
"9" = "9";
"10" = "0";
"active" = "󱓻";
# Kanji for workspaces 6-10
"6" = "";
"7" = "";
"8" = "";
"9" = "";
"10" = "";
# Dice for workspaces 11-15
"11" = "";
"12" = "";
"13" = "";
"14" = "";
"15" = "";
# Circled numbers for 16-20
"16" = "";
"17" = "";
"18" = "";
"19" = "";
"20" = "";
};
persistent-workspaces = {
"1" = [];
@@ -143,17 +164,13 @@ in {
show-special = true;
special-visible-only = true;
all-outputs = true;
ignore-workspaces = ["^[0-9]+$"];
ignore-workspaces = ["^([0-9]+|gaming|steam|music)$"];
format = "{icon}";
format-icons = {
"special:youtube" = "󰗃";
"special:music" = "󰎆";
"special:steam" = "󰓓";
"special:custom" = "󱗼";
"special:preload" = "󱗼";
"youtube" = "󰗃";
"music" = "󰎆";
"steam" = "󰓓";
"custom" = "󱗼";
"preload" = "󱗼";
"default" = "󱗼";