summaryrefslogtreecommitdiff
path: root/src/layout/MasterLayout.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/layout/MasterLayout.cpp')
-rw-r--r--src/layout/MasterLayout.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/layout/MasterLayout.cpp b/src/layout/MasterLayout.cpp
index 0fec8efd..a4ab9d8a 100644
--- a/src/layout/MasterLayout.cpp
+++ b/src/layout/MasterLayout.cpp
@@ -1227,6 +1227,20 @@ std::any CHyprMasterLayout::layoutMessage(SLayoutMessageHeader header, std::stri
runOrientationCycle(header, nullptr, -1);
} else if (command == "orientationcycle") {
runOrientationCycle(header, &vars, 1);
+ } else if (command == "mfact") {
+ if (vars.size() >= 2) {
+ float newMfact = 0;
+ try {
+ newMfact = std::stof(vars[1]);
+ } catch (std::exception& e) {
+ Debug::log(ERR, "Argument is invalid: {}", e.what());
+ return 0;
+ }
+ for (auto& nd : m_lMasterNodesData) {
+ if (nd.isMaster)
+ nd.percMaster = std::clamp(newMfact, 0.05f, 0.95f);
+ }
+ }
}
return 0;