mirror of
https://github.com/niri-wm/niri.git
synced 2026-06-24 02:01:18 +07:00
layer-shell: only reset 'initial_configure_sent' for mapped surfaces
This commit is contained in:
committed by
Ivan Molodetskikh
parent
d618daf6b9
commit
51a176ec4a
@@ -174,13 +174,14 @@ impl State {
|
|||||||
self.niri.layer_shell_on_demand_focus = Some(layer.clone());
|
self.niri.layer_shell_on_demand_focus = Some(layer.clone());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
self.niri.mapped_layer_surfaces.remove(layer);
|
let was_mapped = self.niri.mapped_layer_surfaces.remove(layer).is_some();
|
||||||
self.niri.unmapped_layer_surfaces.insert(surface.clone());
|
self.niri.unmapped_layer_surfaces.insert(surface.clone());
|
||||||
|
|
||||||
// After layer surface unmaps it has to perform the initial commit-configure
|
// After layer surface unmaps it has to perform the initial commit-configure
|
||||||
// sequence again. This is a workaround until Smithay properly resets
|
// sequence again. This is a workaround until Smithay properly resets
|
||||||
// initial_configure_sent upon the surface unmapping itself as it does for
|
// initial_configure_sent upon the surface unmapping itself as it does for
|
||||||
// toplevels.
|
// toplevels.
|
||||||
|
if was_mapped {
|
||||||
with_states(surface, |states| {
|
with_states(surface, |states| {
|
||||||
let mut data = states
|
let mut data = states
|
||||||
.data_map
|
.data_map
|
||||||
@@ -191,6 +192,7 @@ impl State {
|
|||||||
data.initial_configure_sent = false;
|
data.initial_configure_sent = false;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
let scale = output.current_scale();
|
let scale = output.current_scale();
|
||||||
let transform = output.current_transform();
|
let transform = output.current_transform();
|
||||||
|
|||||||
Reference in New Issue
Block a user