Skip to content
Snippets Groups Projects
Commit 204f10c2 authored by Michel Dänzer's avatar Michel Dänzer Committed by Michel Dänzer
Browse files

xwayland: Call RRTellChanged if the RandR configuration may have changed

This makes sure RandR events are sent to interested clients as needed.
This was happening implicitly in some cases, but not in others, e.g. if
the root window size didn't change.

If this were to call RRTellChanged more often than necessary in some
cases, that should be harmless, as it only sends events if something
has actually changed since last time.

Should fix https://bugzilla.redhat.com/show_bug.cgi?id=1979892

 .

v2:
* Call RRTellChanged at the very end of update_screen_size, just in
  case.

Reviewed-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
parent a6d178b6
No related branches found
No related tags found
No related merge requests found
......@@ -216,6 +216,8 @@ update_screen_size(struct xwl_output *xwl_output, int width, int height)
}
update_desktop_dimensions();
RRTellChanged(xwl_screen->screen);
}
struct xwl_emulated_mode *
......@@ -674,6 +676,7 @@ xwl_output_create(struct xwl_screen *xwl_screen, uint32_t id)
RRCrtcGammaSetSize(xwl_output->randr_crtc, 256);
RROutputSetCrtcs(xwl_output->randr_output, &xwl_output->randr_crtc, 1);
RROutputSetConnection(xwl_output->randr_output, RR_Connected);
RRTellChanged(xwl_screen->screen);
/* We want the output to be in the list as soon as created so we can
* use it when binding to the xdg-output protocol...
......@@ -717,6 +720,7 @@ xwl_output_remove(struct xwl_output *xwl_output)
RRCrtcDestroy(xwl_output->randr_crtc);
RROutputDestroy(xwl_output->randr_output);
RRTellChanged(xwl_screen->screen);
xwl_output_destroy(xwl_output);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment