diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-07-04 17:55:33 +0200 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-07-04 17:55:33 +0200 |
| commit | beef23cee5cdc47142da50bf029f52bdff192025 (patch) | |
| tree | 9816976100e08f2b42157c241d182bbb6bdfba29 /src | |
| parent | 7e38de37a75f0429ae0d73be4fbbb0bfc04f9775 (diff) | |
fix vfr frame scheduling
Diffstat (limited to 'src')
| -rw-r--r-- | src/render/Renderer.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index 776c76dd..307229a1 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -555,6 +555,11 @@ void CHyprRenderer::damageSurface(wlr_surface* pSurface, double x, double y) { pixman_region32_init(&damageBox); wlr_surface_get_effective_damage(pSurface, &damageBox); + // schedule frame events + if (!wl_list_empty(&pSurface->current.frame_callback_list)) { + wlr_output_schedule_frame(g_pCompositor->getMonitorFromVector(Vector2D(x, y))->output); + } + if (!pixman_region32_not_empty(&damageBox)) { pixman_region32_fini(&damageBox); return; |
