summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-01-27 18:01:16 -0600
committerCraig Jennings <c@cjennings.net>2026-01-27 18:07:25 -0600
commitbc0140586772ff23c3b2f6d15284ff74a924ebd9 (patch)
tree10815521b768f88b64b9c38ad1fcd579389172c4
parentadefdc60b358548c70237e6c551aba4cd3ae52c9 (diff)
feat(hyprland): add hy3 tab bar theme colors and boot-time theme apply
Add static plugin { hy3 { tabs { ... } } } block with full color set including border, focused, and darkened inactive tab colors. Eliminates default cyan borders. Update set-theme with matching colors for both dupre and hudson themes. Add exec-once set-theme to reapply theme on boot. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
-rw-r--r--dotfiles/hyprland/.config/hypr/hyprland.conf22
-rwxr-xr-xdotfiles/hyprland/.local/bin/set-theme18
-rw-r--r--todo.org2
3 files changed, 37 insertions, 5 deletions
diff --git a/dotfiles/hyprland/.config/hypr/hyprland.conf b/dotfiles/hyprland/.config/hypr/hyprland.conf
index 2716b63..755edad 100644
--- a/dotfiles/hyprland/.config/hypr/hyprland.conf
+++ b/dotfiles/hyprland/.config/hypr/hyprland.conf
@@ -24,6 +24,7 @@ exec-once = mpd
exec-once = signal-desktop --start-in-tray --ozone-platform=wayland
exec-once = protonmail-bridge --no-window
exec-once = insync start
+exec-once = set-theme "$(cat ~/.config/current-theme 2>/dev/null || echo hudson)"
# ============================================================================
# Environment Variables
@@ -112,6 +113,27 @@ xwayland {
}
# ============================================================================
+# Plugins
+# ============================================================================
+plugin {
+ hy3 {
+ tabs {
+ col.active = rgba(444444ff)
+ col.active.text = rgba(bbbbbbff)
+ col.active.border = rgba(daa520ff)
+ col.focused = rgba(444444ff)
+ col.focused.text = rgba(bbbbbbff)
+ col.focused.border = rgba(daa520ff)
+ col.inactive = rgba(333333ff)
+ col.inactive.text = rgba(888888ff)
+ col.inactive.border = rgba(333333ff)
+ col.urgent = rgba(cc6666ff)
+ col.locked = rgba(8abeb7ff)
+ }
+ }
+}
+
+# ============================================================================
# Window Rules (Hyprland 0.53+ syntax: match:CONDITION, RULE)
# ============================================================================
# Floating windows (from DWM rules)
diff --git a/dotfiles/hyprland/.local/bin/set-theme b/dotfiles/hyprland/.local/bin/set-theme
index e95b27b..9bbcbd4 100755
--- a/dotfiles/hyprland/.local/bin/set-theme
+++ b/dotfiles/hyprland/.local/bin/set-theme
@@ -56,8 +56,13 @@ apply_theme() {
# hy3 tab bar (monocle mode)
hyprctl keyword plugin:hy3:tabs:col.active "rgba(474544ff)"
hyprctl keyword plugin:hy3:tabs:col.active.text "rgba(969385ff)"
- hyprctl keyword plugin:hy3:tabs:col.inactive "rgba(d0cbc0ff)"
- hyprctl keyword plugin:hy3:tabs:col.inactive.text "rgba(d0cbc0ff)"
+ hyprctl keyword plugin:hy3:tabs:col.active.border "rgba(d7af5fff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused "rgba(474544ff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused.text "rgba(969385ff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused.border "rgba(d7af5fff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive "rgba(2a2725ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive.text "rgba(6c6a60ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive.border "rgba(2a2725ff)"
hyprctl keyword plugin:hy3:tabs:col.urgent "rgba(d47c59ff)"
hyprctl keyword plugin:hy3:tabs:col.locked "rgba(8a9496ff)"
;;
@@ -68,8 +73,13 @@ apply_theme() {
# hy3 tab bar (monocle mode)
hyprctl keyword plugin:hy3:tabs:col.active "rgba(444444ff)"
hyprctl keyword plugin:hy3:tabs:col.active.text "rgba(bbbbbbff)"
- hyprctl keyword plugin:hy3:tabs:col.inactive "rgba(c5c8c6ff)"
- hyprctl keyword plugin:hy3:tabs:col.inactive.text "rgba(c5c8c6ff)"
+ hyprctl keyword plugin:hy3:tabs:col.active.border "rgba(daa520ff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused "rgba(444444ff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused.text "rgba(bbbbbbff)"
+ hyprctl keyword plugin:hy3:tabs:col.focused.border "rgba(daa520ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive "rgba(333333ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive.text "rgba(888888ff)"
+ hyprctl keyword plugin:hy3:tabs:col.inactive.border "rgba(333333ff)"
hyprctl keyword plugin:hy3:tabs:col.urgent "rgba(cc6666ff)"
hyprctl keyword plugin:hy3:tabs:col.locked "rgba(8abeb7ff)"
;;
diff --git a/todo.org b/todo.org
index c82f737..bb71ce8 100644
--- a/todo.org
+++ b/todo.org
@@ -123,7 +123,7 @@ The script handles edge cases gracefully, provides detailed error messages with
**** DONE [#B] Change Keybinding: mod-f should open nautilus
remove the terminal+ranger keybinding and replace it with opening nautilus
-**** TODO [#B] Monocle layout *(tab group) bar at the top needs to be themed
+**** DONE [#B] Monocle layout *(tab group) bar at the top needs to be themed
the bar appears to be colored straight cyan. cyan should be replaced with dupre blue.
the other neutral colors should be replaced with dupre neutral colors.
this will need visual inspection to ensure the right colors are chosen and don't clash in different layouts