view: ensure output is usable before setting adaptive sync

Fixes #2337
This commit is contained in:
Consolatis 2024-11-13 14:24:07 +01:00
parent d7e6f3a7a8
commit 36e099fc93
2 changed files with 5 additions and 0 deletions

View file

@ -1048,6 +1048,8 @@ handle_output_power_manager_set_mode(struct wl_listener *listener, void *data)
void
output_enable_adaptive_sync(struct output *output, bool enabled)
{
assert(output_is_usable(output));
wlr_output_state_set_adaptive_sync_enabled(&output->pending, enabled);
if (!wlr_output_test_state(output->wlr_output, &output->pending)) {
wlr_output_state_set_adaptive_sync_enabled(&output->pending, false);

View file

@ -454,6 +454,9 @@ view_discover_output(struct view *view, struct wlr_box *geometry)
static void
set_adaptive_sync_fullscreen(struct view *view)
{
if (!output_is_usable(view->output)) {
return;
}
if (rc.adaptive_sync != LAB_ADAPTIVE_SYNC_FULLSCREEN) {
return;
}