tree: render overlayes over fullscreen windows
This commit is contained in:
parent
a162055f1d
commit
9c21d118d6
2 changed files with 14 additions and 7 deletions
|
|
@ -79,12 +79,6 @@ impl Renderer<'_> {
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if let Some(ws) = output.workspace.get() {
|
|
||||||
if let Some(fs) = ws.fullscreen.get() {
|
|
||||||
fs.tl_as_node().node_render(self, x, y);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
let opos = output.global.pos.get();
|
let opos = output.global.pos.get();
|
||||||
macro_rules! render_layer {
|
macro_rules! render_layer {
|
||||||
($layer:expr) => {
|
($layer:expr) => {
|
||||||
|
|
@ -98,6 +92,13 @@ impl Renderer<'_> {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
if let Some(ws) = output.workspace.get() {
|
||||||
|
if let Some(fs) = ws.fullscreen.get() {
|
||||||
|
fs.tl_as_node().node_render(self, x, y);
|
||||||
|
render_layer!(output.layers[3]);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
render_layer!(output.layers[0]);
|
render_layer!(output.layers[0]);
|
||||||
render_layer!(output.layers[1]);
|
render_layer!(output.layers[1]);
|
||||||
let theme = &self.state.theme;
|
let theme = &self.state.theme;
|
||||||
|
|
|
||||||
|
|
@ -535,6 +535,12 @@ impl Node for OutputNode {
|
||||||
}
|
}
|
||||||
return FindTreeResult::AcceptsInput;
|
return FindTreeResult::AcceptsInput;
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
let res = self.find_layer_surface_at(x, y, &[OVERLAY], tree);
|
||||||
|
if res.accepts_input() {
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
}
|
||||||
if let Some(ws) = self.workspace.get() {
|
if let Some(ws) = self.workspace.get() {
|
||||||
if let Some(fs) = ws.fullscreen.get() {
|
if let Some(fs) = ws.fullscreen.get() {
|
||||||
tree.push(FoundNode {
|
tree.push(FoundNode {
|
||||||
|
|
@ -546,7 +552,7 @@ impl Node for OutputNode {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
let res = self.find_layer_surface_at(x, y, &[OVERLAY, TOP], tree);
|
let res = self.find_layer_surface_at(x, y, &[TOP], tree);
|
||||||
if res.accepts_input() {
|
if res.accepts_input() {
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue