Re-render OS Window when its layers requirement changes

This commit is contained in:
Kovid Goyal 2025-08-24 15:06:31 +05:30
parent cbca4d6593
commit 5740173bdc
No known key found for this signature in database
GPG key ID: 06BC317B515ACE7C

View file

@ -709,6 +709,7 @@ prepare_to_render_os_window(OSWindow *os_window, monotonic_t now, unsigned int *
#define TD os_window->tab_bar_render_data
bool needs_render = os_window->needs_render;
os_window->needs_render = false;
bool was_previously_rendered_with_layers = os_window->needs_layers;
os_window->needs_layers = (
!global_state.supports_framebuffer_srgb || effective_os_window_alpha(os_window) < 1.f ||
os_window->live_resize.in_progress || (os_window->bgimage && os_window->bgimage->texture_id > 0)
@ -790,7 +791,7 @@ prepare_to_render_os_window(OSWindow *os_window, monotonic_t now, unsigned int *
if (WD.screen->start_visual_bell_at != 0) needs_render = true;
}
}
return needs_render;
return needs_render || was_previously_rendered_with_layers != os_window->needs_layers;
}
static void