1
0
Fork 0
forked from wry/wry

Set top layer surfaces below fullscreen windows

This commit is contained in:
Mostafa Ibrahim 2025-06-21 17:39:56 +03:00 committed by Julian Orth
parent ae9fb541f4
commit 5c30a9da27
2 changed files with 4 additions and 4 deletions

View file

@ -86,6 +86,7 @@ impl Renderer<'_> {
} else { } else {
render_layer!(output.layers[0]); render_layer!(output.layers[0]);
render_layer!(output.layers[1]); render_layer!(output.layers[1]);
render_layer!(output.layers[2]);
let non_exclusive_rect = output.non_exclusive_rect_rel.get(); let non_exclusive_rect = output.non_exclusive_rect_rel.get();
let (x, y) = non_exclusive_rect.translate_inv(x, y); let (x, y) = non_exclusive_rect.translate_inv(x, y);
{ {
@ -182,7 +183,6 @@ impl Renderer<'_> {
}; };
} }
render_stacked!(self.state.root.stacked); render_stacked!(self.state.root.stacked);
render_layer!(output.layers[2]);
render_layer!(output.layers[3]); render_layer!(output.layers[3]);
render_stacked!(self.state.root.stacked_above_layers); render_stacked!(self.state.root.stacked_above_layers);
if let Some(ws) = output.workspace.get() if let Some(ws) = output.workspace.get()

View file

@ -1048,13 +1048,13 @@ impl OutputNode {
self.title_visible.set(lower_visible); self.title_visible.set(lower_visible);
set_layer_visible!(self.layers[0], lower_visible); set_layer_visible!(self.layers[0], lower_visible);
set_layer_visible!(self.layers[1], lower_visible); set_layer_visible!(self.layers[1], lower_visible);
set_layer_visible!(self.layers[2], lower_visible);
for item in self.tray_items.iter() { for item in self.tray_items.iter() {
item.set_visible(lower_visible); item.set_visible(lower_visible);
} }
if let Some(ws) = self.workspace.get() { if let Some(ws) = self.workspace.get() {
ws.set_visible(visible); ws.set_visible(visible);
} }
set_layer_visible!(self.layers[2], visible);
set_layer_visible!(self.layers[3], visible); set_layer_visible!(self.layers[3], visible);
} }
@ -1488,7 +1488,7 @@ impl Node for OutputNode {
} }
} }
{ {
let res = self.find_layer_surface_at(x, y, &[OVERLAY, TOP], tree, usecase); let res = self.find_layer_surface_at(x, y, &[OVERLAY], tree, usecase);
if res.accepts_input() { if res.accepts_input() {
return res; return res;
} }
@ -1549,7 +1549,7 @@ impl Node for OutputNode {
} }
} }
if search_layers { if search_layers {
self.find_layer_surface_at(x, y, &[BOTTOM, BACKGROUND], tree, usecase); self.find_layer_surface_at(x, y, &[TOP, BOTTOM, BACKGROUND], tree, usecase);
} }
FindTreeResult::AcceptsInput FindTreeResult::AcceptsInput
} }