summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hyprtester/src/tests/main/window.cpp17
-rw-r--r--src/desktop/rule/windowRule/WindowRuleApplicator.cpp2
2 files changed, 18 insertions, 1 deletions
diff --git a/hyprtester/src/tests/main/window.cpp b/hyprtester/src/tests/main/window.cpp
index ea44cb24..a0187ab0 100644
--- a/hyprtester/src/tests/main/window.cpp
+++ b/hyprtester/src/tests/main/window.cpp
@@ -785,6 +785,23 @@ static bool test() {
Tests::killAllWindows();
+ OK(getFromSocket("/keyword windowrule[border-magic-kitty]:match:class border_kitty"));
+ OK(getFromSocket("/keyword windowrule[border-magic-kitty]:border_color rgba(c6ff00ff) rgba(ff0000ee) 45deg"));
+
+ if (!spawnKitty("border_kitty"))
+ return false;
+
+ OK(getFromSocket("/dispatch focuswindow class:border_kitty"));
+
+ {
+ auto str = getFromSocket("/getprop active active_border_color");
+ EXPECT_CONTAINS(str, "ffc6ff00");
+ EXPECT_CONTAINS(str, "eeff0000");
+ EXPECT_CONTAINS(str, "45deg");
+ }
+
+ Tests::killAllWindows();
+
if (!spawnKitty("tag_kitty"))
return false;
diff --git a/src/desktop/rule/windowRule/WindowRuleApplicator.cpp b/src/desktop/rule/windowRule/WindowRuleApplicator.cpp
index cb3a6f67..9a3f4f63 100644
--- a/src/desktop/rule/windowRule/WindowRuleApplicator.cpp
+++ b/src/desktop/rule/windowRule/WindowRuleApplicator.cpp
@@ -151,7 +151,7 @@ CWindowRuleApplicator::SRuleResult CWindowRuleApplicator::applyDynamicRule(const
CGradientValueData activeBorderGradient = {};
CGradientValueData inactiveBorderGradient = {};
bool active = true;
- CVarList colorsAndAngles = CVarList(trim(effect.substr(effect.find_first_of(' ') + 1)), 0, 's', true);
+ CVarList colorsAndAngles = CVarList(trim(effect), 0, 's', true);
// Basic form has only two colors, everything else can be parsed as a gradient
if (colorsAndAngles.size() == 2 && !colorsAndAngles[1].contains("deg")) {