diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-04-17 18:47:10 +0200 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-04-17 18:47:10 +0200 |
| commit | b0f5e4ab5656fb3b72efa7ce646d4b47ae82b814 (patch) | |
| tree | 0eef3cf73193a8e64e9d2f547f03066939a38377 /src/render/Renderer.cpp | |
| parent | 748a787ba2935f62b1a6f986a3fd6c758a8ba626 (diff) | |
store scale and scale windows with monitor
Diffstat (limited to 'src/render/Renderer.cpp')
| -rw-r--r-- | src/render/Renderer.cpp | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index a85f2b32..77ba17fe 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -1,13 +1,6 @@ #include "Renderer.hpp" #include "../Compositor.hpp" -void scaleBox(wlr_box* box, float scale) { - box->width = std::round((box->x + box->width) * scale) - std::round(box->x * scale); - box->height = std::round((box->y + box->height) * scale) - std::round(box->y * scale); - box->x = std::round(box->x * scale); - box->y = std::round(box->y * scale); -} - void renderSurface(struct wlr_surface* surface, int x, int y, void* data) { const auto TEXTURE = wlr_surface_get_texture(surface); const auto RDATA = (SRenderData*)data; @@ -465,12 +458,14 @@ void CHyprRenderer::damageWindow(CWindow* pWindow) { void CHyprRenderer::damageMonitor(SMonitor* pMonitor) { wlr_box damageBox = {pMonitor->vecPosition.x, pMonitor->vecPosition.y, pMonitor->vecSize.x, pMonitor->vecSize.y}; + scaleBox(&damageBox, pMonitor->scale); wlr_output_damage_add_box(pMonitor->damage, &damageBox); } void CHyprRenderer::damageBox(wlr_box* pBox) { - for (auto& m : g_pCompositor->m_lMonitors) + for (auto& m : g_pCompositor->m_lMonitors) { wlr_output_damage_add_box(m.damage, pBox); + } } void CHyprRenderer::renderDragIcon(SMonitor* pMonitor, timespec* time) { |
