aboutsummaryrefslogtreecommitdiff
path: root/rootston/layer_shell.c
diff options
context:
space:
mode:
authorDorota Czaplejewicz <dorota.czaplejewicz@puri.sm>2018-09-06 16:04:38 +0200
committerDorota Czaplejewicz <dorota.czaplejewicz@puri.sm>2018-09-11 11:47:22 +0200
commite9e65c549ad914a3e05c4eefcad6fcd88b874f5a (patch)
tree54c8ae21ed4e2f1ee16c8dcf3fdf81ddf5e96182 /rootston/layer_shell.c
parentca331c0468415be6f6028c8dd7a2238f132a2c91 (diff)
rootston: Keep older anchored layers near anchor points
Layer surfaces are attached to edges of the screen starting with the youngest, causing new ones to always displace existing ones. This changes the order to oldest first, keeping the positions more often.
Diffstat (limited to 'rootston/layer_shell.c')
-rw-r--r--rootston/layer_shell.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/rootston/layer_shell.c b/rootston/layer_shell.c
index 4ce4c293..39054079 100644
--- a/rootston/layer_shell.c
+++ b/rootston/layer_shell.c
@@ -110,7 +110,7 @@ static void arrange_layer(struct wlr_output *output,
struct wlr_box full_area = { 0 };
wlr_output_effective_resolution(output,
&full_area.width, &full_area.height);
- wl_list_for_each(roots_surface, list, link) {
+ wl_list_for_each_reverse(roots_surface, list, link) {
struct wlr_layer_surface *layer = roots_surface->layer_surface;
struct wlr_layer_surface_state *state = &layer->current;
if (exclusive != (state->exclusive_zone > 0)) {