diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-11-05 18:04:44 +0000 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-11-05 18:04:44 +0000 |
| commit | 5a750b485aca8b2fd5545cfe86b3a48c69355d65 (patch) | |
| tree | b5624dc630450152a52889968805e2f7faee0c40 /src/render/Renderer.cpp | |
| parent | a71f44baa521e2fb867db8536d7766e7d02f3e32 (diff) | |
Added creating / destroying outputs on a multi-backend + headless backend
See `hyprctl output`.
Diffstat (limited to 'src/render/Renderer.cpp')
| -rw-r--r-- | src/render/Renderer.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index 3858b24e..2e7c5433 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -1347,6 +1347,13 @@ bool CHyprRenderer::applyMonitorRule(CMonitor* pMonitor, SMonitorRule* pMonitorR pMonitor->vecSize = (Vector2D(x, y) / pMonitor->scale).floor(); pMonitor->vecTransformedSize = Vector2D(x,y); + if (pMonitor->createdByUser) { + wlr_box transformedBox = { 0, 0, (int)pMonitor->vecTransformedSize.x, (int)pMonitor->vecTransformedSize.y }; + wlr_box_transform(&transformedBox, &transformedBox, wlr_output_transform_invert(pMonitor->output->transform), (int)pMonitor->vecTransformedSize.x, (int)pMonitor->vecTransformedSize.y); + + pMonitor->vecPixelSize = Vector2D(transformedBox.width, transformedBox.height); + } + 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; |
