diff options
| author | MightyPlaza <123664421+MightyPlaza@users.noreply.github.com> | 2023-08-11 14:54:16 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-08-11 16:54:16 +0200 |
| commit | 901236a5356a3f249af7d55e5db69889e50256b8 (patch) | |
| tree | c32390a947746dcd346e8386d35df332129b25c9 /src/events/Windows.cpp | |
| parent | e4e8ae8f885104bb948afa24f1cd9fc3bdb450e9 (diff) | |
rules: center window improvements (#2935)
* center window improvements
modified: src/config/ConfigManager.cpp
modified: src/events/Windows.cpp
modified: src/managers/KeybindManager.cpp
* remove redundant line
modified: src/events/Windows.cpp
* simplify code
modified: src/events/Windows.cpp
modified: src/managers/KeybindManager.cpp
Diffstat (limited to 'src/events/Windows.cpp')
| -rw-r--r-- | src/events/Windows.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/events/Windows.cpp b/src/events/Windows.cpp index e79f1e74..a45aa91e 100644 --- a/src/events/Windows.cpp +++ b/src/events/Windows.cpp @@ -412,8 +412,13 @@ void Events::listener_mapWindow(void* owner, void* data) { PWINDOW->setHidden(false); } catch (...) { Debug::log(LOG, "Rule move failed, rule: %s -> %s", r.szRule.c_str(), r.szValue.c_str()); } - } else if (r.szRule == "center") { - PWINDOW->m_vRealPosition = PMONITOR->vecPosition + PMONITOR->vecSize / 2.f - PWINDOW->m_vRealSize.goalv() / 2.f; + } else if (r.szRule.find("center") == 0) { + auto RESERVEDOFFSET = Vector2D(); + const auto ARGS = CVarList(r.szRule, 2, ' '); + if (ARGS[1] == "1") + RESERVEDOFFSET = (PMONITOR->vecReservedTopLeft - PMONITOR->vecReservedBottomRight) / 2.f; + + PWINDOW->m_vRealPosition = PMONITOR->vecPosition + PMONITOR->vecSize / 2.f - PWINDOW->m_vRealSize.goalv() / 2.f + RESERVEDOFFSET; } } |
