summaryrefslogtreecommitdiff
path: root/src/debug/HyprCtl.cpp
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2024-11-01 13:03:06 +0000
committervaxerski <vaxry@vaxry.net>2024-11-01 13:03:12 +0000
commit3852418d2446555509738bf1486940042107afe7 (patch)
tree9652902fddec52b1f3d50b2526b3bceded9253fd /src/debug/HyprCtl.cpp
parentc4d214c42d743a69f606ff476b7266b3ace7d70e (diff)
hyprctl: reload windowrules on reloadAll
Diffstat (limited to 'src/debug/HyprCtl.cpp')
-rw-r--r--src/debug/HyprCtl.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/debug/HyprCtl.cpp b/src/debug/HyprCtl.cpp
index 93e0f620..f5c63f86 100644
--- a/src/debug/HyprCtl.cpp
+++ b/src/debug/HyprCtl.cpp
@@ -1041,7 +1041,8 @@ std::string dispatchKeyword(eHyprCtlOutputFormat format, std::string in) {
}
// decorations will probably need a repaint
- if (COMMAND.contains("decoration:") || COMMAND.contains("border") || COMMAND == "workspace" || COMMAND.contains("zoom_factor") || COMMAND == "source") {
+ if (COMMAND.contains("decoration:") || COMMAND.contains("border") || COMMAND == "workspace" || COMMAND.contains("zoom_factor") || COMMAND == "source" ||
+ COMMAND.starts_with("windowrule")) {
for (auto const& m : g_pCompositor->m_vMonitors) {
g_pHyprRenderer->damageMonitor(m);
g_pLayoutManager->getCurrentLayout()->recalculateMonitor(m->ID);
@@ -1698,6 +1699,14 @@ std::string CHyprCtl::getReply(std::string request) {
rd.blurFBDirty = true;
}
+ for (auto const& w : g_pCompositor->m_vWindows) {
+ if (!w->m_bIsMapped || !g_pCompositor->isWorkspaceVisible(w->m_pWorkspace))
+ continue;
+
+ w->updateDynamicRules();
+ g_pCompositor->updateWindowAnimatedDecorationValues(w);
+ }
+
for (auto const& m : g_pCompositor->m_vMonitors) {
g_pHyprRenderer->damageMonitor(m);
g_pLayoutManager->getCurrentLayout()->recalculateMonitor(m->ID);