diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2023-04-16 14:48:38 +0100 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2023-04-16 14:48:38 +0100 |
| commit | b05ff89c76b2c9454c76daf2120f4ccb076a018d (patch) | |
| tree | 14067692ffc6a25ac24f43680bbb880d96c0d76c /src/helpers/Monitor.cpp | |
| parent | 28dfe215844fe33d425bda33c677a0fae835082b (diff) | |
Render: add cursor_zoom
Diffstat (limited to 'src/helpers/Monitor.cpp')
| -rw-r--r-- | src/helpers/Monitor.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp index c271e066..44d566cb 100644 --- a/src/helpers/Monitor.cpp +++ b/src/helpers/Monitor.cpp @@ -299,11 +299,23 @@ void CMonitor::onDisconnect() { } void CMonitor::addDamage(const pixman_region32_t* rg) { + static auto* const PZOOMFACTOR = &g_pConfigManager->getConfigValuePtr("misc:cursor_zoom_factor")->floatValue; + if (*PZOOMFACTOR != 1.f && g_pCompositor->getMonitorFromCursor() == this) { + wlr_damage_ring_add_whole(&damage); + g_pCompositor->scheduleFrameForMonitor(this); + } + if (wlr_damage_ring_add(&damage, rg)) g_pCompositor->scheduleFrameForMonitor(this); } void CMonitor::addDamage(const wlr_box* box) { + static auto* const PZOOMFACTOR = &g_pConfigManager->getConfigValuePtr("misc:cursor_zoom_factor")->floatValue; + if (*PZOOMFACTOR != 1.f && g_pCompositor->getMonitorFromCursor() == this) { + wlr_damage_ring_add_whole(&damage); + g_pCompositor->scheduleFrameForMonitor(this); + } + if (wlr_damage_ring_add_box(&damage, box)) g_pCompositor->scheduleFrameForMonitor(this); } |
