aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuido Günther <agx@sigxcpu.org>2018-04-24 13:10:20 +0200
committerGuido Günther <agx@sigxcpu.org>2018-04-24 13:11:42 +0200
commit24fa07565d407d95414b803d0490c725dd242901 (patch)
tree4d1a7610fbf36a9cf349bb31c6abc90fe6f1e901
parentc4dff67e000e3d97315610e033ea89b3dbad7c0a (diff)
layer-shell: use output_damage_{whole,from}_local_surface on map/unmap
These handle rotation and scaling
-rw-r--r--rootston/layer_shell.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/rootston/layer_shell.c b/rootston/layer_shell.c
index 7b3e8a9d..836deb42 100644
--- a/rootston/layer_shell.c
+++ b/rootston/layer_shell.c
@@ -255,7 +255,8 @@ static void unmap(struct wlr_layer_surface *layer_surface) {
struct wlr_output *wlr_output = layer_surface->output;
if (wlr_output != NULL) {
struct roots_output *output = wlr_output->data;
- wlr_output_damage_add_box(output->damage, &layer->geo);
+ output_damage_whole_local_surface(output, layer_surface->surface,
+ layer->geo.x, layer->geo.y, 0);
}
}
@@ -282,7 +283,8 @@ static void handle_map(struct wl_listener *listener, void *data) {
struct roots_layer_surface *layer = layer_surface->data;
struct wlr_output *wlr_output = layer_surface->output;
struct roots_output *output = wlr_output->data;
- wlr_output_damage_add_box(output->damage, &layer->geo);
+ output_damage_whole_local_surface(output, layer_surface->surface,
+ layer->geo.x, layer->geo.y, 0);
wlr_surface_send_enter(layer_surface->surface, wlr_output);
}