diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-03-20 14:52:23 +0100 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-03-20 14:52:23 +0100 |
| commit | 45addfb31d02dac2ac7651410178e7a0cfde00f4 (patch) | |
| tree | 588298df01248f6a2f558aedce8fb42ddb53a468 /src/render | |
| parent | e7abda1b2bae15e02242e90d57efced1437fabff (diff) | |
arrange properly layers with no anchors
Diffstat (limited to 'src/render')
| -rw-r--r-- | src/render/Renderer.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index 2f772e71..74ebb122 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -189,6 +189,14 @@ void CHyprRenderer::arrangeLayerArray(SMonitor* pMonitor, const std::list<SLayer layerBox.height -= STATE->margin.top + STATE->margin.bottom; } + if (!(STATE->anchor & (ZWLR_LAYER_SURFACE_V1_ANCHOR_RIGHT | ZWLR_LAYER_SURFACE_V1_ANCHOR_LEFT | ZWLR_LAYER_SURFACE_V1_ANCHOR_TOP | ZWLR_LAYER_SURFACE_V1_ANCHOR_BOTTOM))) { + // no anchors. center + layerBox.x = pMonitor->vecPosition.x + (pMonitor->vecSize.x - layerBox.width) / 2.f; + layerBox.y = pMonitor->vecPosition.y + (pMonitor->vecSize.y - layerBox.height) / 2.f; + + // TODO: maybe allow the app to choose for itself its x and y? + } + ls->geometry = layerBox; wlr_layer_surface_v1_configure(ls->layerSurface, layerBox.width, layerBox.height); |
