summaryrefslogtreecommitdiff
path: root/src/config/ConfigManager.cpp
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-05-29 12:27:45 +0200
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-05-29 12:27:45 +0200
commitd0ff0c0990db230999cc918f1d6230c4a18d08c8 (patch)
treec4fa1342fc535ca5882a54c9253c84dd72cc32ef /src/config/ConfigManager.cpp
parentfdb3f610e564c644ab0fc7fd154562258350084a (diff)
Added basic monitor transforms, has bugs
blur doesnt work on transformed outputs full damage tracking issues
Diffstat (limited to 'src/config/ConfigManager.cpp')
-rw-r--r--src/config/ConfigManager.cpp18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/config/ConfigManager.cpp b/src/config/ConfigManager.cpp
index 7a20050b..f66e7085 100644
--- a/src/config/ConfigManager.cpp
+++ b/src/config/ConfigManager.cpp
@@ -186,10 +186,24 @@ void CConfigManager::handleMonitor(const std::string& command, const std::string
nextItem();
- if (curitem == "disable" || curitem == "disabled" || curitem == "addreserved") {
+ if (curitem == "disable" || curitem == "disabled" || curitem == "addreserved" || curitem == "transform") {
if (curitem == "disable" || curitem == "disabled")
newrule.disabled = true;
- else if (curitem == "addreserved") {
+ else if (curitem == "transform") {
+ nextItem();
+
+ wl_output_transform transform = (wl_output_transform)std::stoi(curitem);
+
+ // overwrite if exists
+ for (auto& r : m_dMonitorRules) {
+ if (r.name == newrule.name) {
+ r.transform = transform;
+ return;
+ }
+ }
+
+ return;
+ } else if (curitem == "addreserved") {
nextItem();
int top = std::stoi(curitem);