Diff
1diff --git a/CHANGELOG.md b/CHANGELOG.md
2index d663f21ff0eeef48f8803a29a49df6b6da212f03..dde370ed450c1310ec32a6099118640531cecd5b 100644
3--- a/CHANGELOG.md
4+++ b/CHANGELOG.md
5@@ -11,6 +11,7 @@
6 - Added warp option to `hy3:movetoworkspace`.
7 - Fixed broken tab damage tracking (artifacts when tabs animate).
8 - Replaced `hy3:focustab mouse` with an unconditional hook that works better.
9+- Renamed tab color options.
10
11 # hl0.46.0 and before
12
13diff --git a/README.md b/README.md
14index 715ba1a72e1fe25e1825d7d23428bdd8a41e0679..d87906d7f7572634be4979f8caa92e79a5ca72b7 100644
15--- a/README.md
16+++ b/README.md
17@@ -275,18 +275,18 @@ plugin {
18
19 # active tab bar segment colors
20 col.active = <color> # default: rgba(50a0e0ff)
21- col.border.active = <color> # default: rgba(70b0c0ff)
22- col.text.active = <color> # default: rgba(000000ff)
23+ col.active.border = <color> # default: rgba(70b0c0ff)
24+ col.active.text = <color> # default: rgba(ffffffff)
25
26 # urgent tab bar segment colors
27 col.urgent = <color> # default: rgba(ff4f4fff)
28- col.border.urgent = <color> # default: rgba(ff8080ff)
29- col.text.urgent = <color> # default: rgba(000000ff)
30+ col.urgent.border = <color> # default: rgba(ff8080ff)
31+ col.urgent.text = <color> # default: rgba(ffffffff)
32
33 # inactive tab bar segment colors
34 col.inactive = <color> # default: rgba(30303050)
35- col.border.inactive = <color> # default: rgba(50505090)
36- col.text.inactive = <color> # default: rgba(ffffffff)
37+ col.inactive.border = <color> # default: rgba(50505090)
38+ col.inactive.text = <color> # default: rgba(ffffffff)
39
40 # if tab backgrounds should be blurred
41 # Blur is only visible when the above colors are not opaque.
42diff --git a/src/TabGroup.cpp b/src/TabGroup.cpp
43index 1ee60c259ba58993117c0c47ebeac76261a49e5e..6b4a38f55c865994b0e0fd51335d4db91c7163a5 100644
44--- a/src/TabGroup.cpp
45+++ b/src/TabGroup.cpp
46@@ -149,11 +149,11 @@ void Hy3TabBarEntry::render(float scale, CBox& box, float opacity_mul) {
47 static const auto s_opacity = ConfigValue<Hyprlang::FLOAT>("plugin:hy3:tabs:opacity");
48 static const auto blur = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:blur");
49 static const auto col_active = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.active");
50- static const auto col_border_active = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.border.active");
51+ static const auto col_border_active = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.active.border");
52 static const auto col_urgent = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.urgent");
53- static const auto col_border_urgent = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.border.urgent");
54+ static const auto col_border_urgent = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.urgent.border");
55 static const auto col_inactive = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.inactive");
56- static const auto col_border_inactive = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.border.inactive");
57+ static const auto col_border_inactive = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.inactive.border");
58 // clang-format on
59
60 auto radius = std::min((double) *s_radius * scale, std::min(box.width * 0.5, box.height * 0.5));
61@@ -205,9 +205,9 @@ void Hy3TabBarEntry::renderText(float scale, CBox& box, float opacity) {
62 static const auto text_font = ConfigValue<Hyprlang::STRING>("plugin:hy3:tabs:text_font");
63 static const auto text_height = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:text_height");
64 static const auto text_padding = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:text_padding");
65- static const auto col_text_active = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.text.active");
66- static const auto col_text_urgent = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.text.urgent");
67- static const auto col_text_inactive = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.text.inactive");
68+ static const auto col_text_active = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.active.text");
69+ static const auto col_text_urgent = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.urgent.text");
70+ static const auto col_text_inactive = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.inactive.text");
71 // clang-format on
72
73 if (!*render_text) {
74@@ -779,11 +779,11 @@ bool Hy3TabPassElement::needsPrecomputeBlur() {
75 static const auto s_opacity = ConfigValue<Hyprlang::FLOAT>("plugin:hy3:tabs:opacity");
76 static const auto blur = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:blur");
77 static const auto col_active = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.active");
78- static const auto col_border_active = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.border.active");
79+ static const auto col_border_active = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.active.border");
80 static const auto col_urgent = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.urgent");
81- static const auto col_border_urgent = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.border.urgent");
82+ static const auto col_border_urgent = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.urgent.border");
83 static const auto col_inactive = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.inactive");
84- static const auto col_border_inactive = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.border.inactive");
85+ static const auto col_border_inactive = ConfigValue<Hyprlang::INT>("plugin:hy3:tabs:col.inactive.border");
86 // clang-format on
87
88 if (!*blur) return false;
89diff --git a/src/main.cpp b/src/main.cpp
90index c9e9723bb4d1deea1bde65b6c0c36fe2278d4a03..35d0437d6d4da2d4dc22432f4027ec5f86e434cd 100644
91--- a/src/main.cpp
92+++ b/src/main.cpp
93@@ -55,14 +55,14 @@ APICALL EXPORT PLUGIN_DESCRIPTION_INFO PLUGIN_INIT(HANDLE handle) {
94 CONF("tabs:opacity", FLOAT, 1.0);
95 CONF("tabs:blur", INT, 1);
96 CONF("tabs:col.active", INT, 0x4033ccff);
97- CONF("tabs:col.border.active", INT, 0xee33ccff);
98+ CONF("tabs:col.active.border", INT, 0xee33ccff);
99+ CONF("tabs:col.active.text", INT, 0xffffffff);
100 CONF("tabs:col.urgent", INT, 0x40ff2233);
101- CONF("tabs:col.border.urgent", INT, 0xeeff2233);
102+ CONF("tabs:col.urgent.border", INT, 0xeeff2233);
103+ CONF("tabs:col.urgent.text", INT, 0xffffffff);
104 CONF("tabs:col.inactive", INT, 0x20303030);
105- CONF("tabs:col.border.inactive", INT, 0xaa606060);
106- CONF("tabs:col.text.active", INT, 0xffffffff);
107- CONF("tabs:col.text.urgent", INT, 0xffffffff);
108- CONF("tabs:col.text.inactive", INT, 0xffffffff);
109+ CONF("tabs:col.inactive.border", INT, 0xaa606060);
110+ CONF("tabs:col.inactive.text", INT, 0xffffffff);
111
112 // autotiling
113 CONF("autotile:enable", INT, 0);