output: damage whole output when fullscreen surface size changes
This commit is contained in:
parent
a295c805c4
commit
edb4c8d858
|
@ -82,6 +82,7 @@ struct wlr_output {
|
||||||
struct wlr_surface *fullscreen_surface;
|
struct wlr_surface *fullscreen_surface;
|
||||||
struct wl_listener fullscreen_surface_commit;
|
struct wl_listener fullscreen_surface_commit;
|
||||||
struct wl_listener fullscreen_surface_destroy;
|
struct wl_listener fullscreen_surface_destroy;
|
||||||
|
int fullscreen_width, fullscreen_height;
|
||||||
|
|
||||||
struct wl_list cursors; // wlr_output_cursor::link
|
struct wl_list cursors; // wlr_output_cursor::link
|
||||||
struct wlr_output_cursor *hardware_cursor;
|
struct wlr_output_cursor *hardware_cursor;
|
||||||
|
|
|
@ -594,6 +594,14 @@ static void output_fullscreen_surface_handle_commit(
|
||||||
fullscreen_surface_commit);
|
fullscreen_surface_commit);
|
||||||
struct wlr_surface *surface = output->fullscreen_surface;
|
struct wlr_surface *surface = output->fullscreen_surface;
|
||||||
|
|
||||||
|
if (output->fullscreen_width != surface->current->width ||
|
||||||
|
output->fullscreen_height != surface->current->height) {
|
||||||
|
output->fullscreen_width = surface->current->width;
|
||||||
|
output->fullscreen_height = surface->current->height;
|
||||||
|
output_damage_whole(output);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
struct wlr_box box;
|
struct wlr_box box;
|
||||||
output_fullscreen_surface_get_box(output, surface, &box);
|
output_fullscreen_surface_get_box(output, surface, &box);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue