diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-10-12 15:16:31 +0100 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-10-12 15:16:31 +0100 |
| commit | 2ee9fb067526f51c6e13aa399ff540efe20cb540 (patch) | |
| tree | 8ac5b4ddf0abc36eff8a61d84ab12e6dc95c0a2c /src/render/Renderer.cpp | |
| parent | 1396d2a39bec3be434dcb79e5c29d5c52a017d21 (diff) | |
don't recalc offset on monitor reload offset auto
Diffstat (limited to 'src/render/Renderer.cpp')
| -rw-r--r-- | src/render/Renderer.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index 93017824..e2983cae 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -955,8 +955,6 @@ bool CHyprRenderer::applyMonitorRule(CMonitor* pMonitor, SMonitorRule* pMonitorR wlr_output_set_scale(pMonitor->output, pMonitorRule->scale); pMonitor->scale = pMonitorRule->scale; - pMonitor->vecPosition = pMonitorRule->offset; - // loop over modes and choose an appropriate one. if (pMonitorRule->resolution != Vector2D() && pMonitorRule->resolution != Vector2D(-1,-1) && pMonitorRule->resolution != Vector2D(-1,-2)) { if (!wl_list_empty(&pMonitor->output->modes)) { @@ -1175,7 +1173,7 @@ bool CHyprRenderer::applyMonitorRule(CMonitor* pMonitor, SMonitorRule* pMonitorR pMonitor->vecSize = (Vector2D(x, y) / pMonitor->scale).floor(); pMonitor->vecTransformedSize = Vector2D(x,y); - if (pMonitorRule->offset == Vector2D(-1, -1)) { + if (pMonitorRule->offset == Vector2D(-1, -1) && pMonitor->vecPosition == Vector2D(-1, -1)) { // let's find manually a sensible position for it, to the right. Vector2D finalPos; @@ -1189,6 +1187,8 @@ bool CHyprRenderer::applyMonitorRule(CMonitor* pMonitor, SMonitorRule* pMonitorR } pMonitor->vecPosition = finalPos; + } else if (pMonitorRule->offset != Vector2D(-1, -1)) { + pMonitor->vecPosition = pMonitorRule->offset; } if (!pMonitor->isMirror()) |
