shell: Also restore stack element on sticky layer to stack
This commit is contained in:
parent
5c0c22988e
commit
98e1dd7f6b
1 changed files with 11 additions and 4 deletions
|
|
@ -4807,11 +4807,18 @@ impl Shell {
|
||||||
{
|
{
|
||||||
let mut from = set.sticky_layer.element_geometry(&mapped).unwrap();
|
let mut from = set.sticky_layer.element_geometry(&mapped).unwrap();
|
||||||
let mut was_maximized = false;
|
let mut was_maximized = false;
|
||||||
|
let mut restore_state = None;
|
||||||
window = if let Some(stack) = mapped.stack_ref()
|
window = if let Some(stack) = mapped.stack_ref()
|
||||||
&& stack.len() > 1
|
&& stack.len() > 1
|
||||||
{
|
{
|
||||||
let surface = stack.surfaces().find(|s| s == surface).unwrap();
|
let idx = stack.surfaces().position(|s| &s == surface)?;
|
||||||
stack.remove_window(&surface);
|
let surface = stack.remove_idx(idx)?;
|
||||||
|
restore_state = Some(FullscreenRestoreState::Stack {
|
||||||
|
state: StackRestoreData {
|
||||||
|
stack: mapped.key(),
|
||||||
|
idx,
|
||||||
|
},
|
||||||
|
});
|
||||||
surface
|
surface
|
||||||
} else {
|
} else {
|
||||||
// Must be set before `map_internal`/`unmap` below, as both may call
|
// Must be set before `map_internal`/`unmap` below, as both may call
|
||||||
|
|
@ -4844,7 +4851,7 @@ impl Shell {
|
||||||
workspace.map_fullscreen(
|
workspace.map_fullscreen(
|
||||||
&window,
|
&window,
|
||||||
&seat,
|
&seat,
|
||||||
Some(FullscreenRestoreState::Sticky {
|
Some(restore_state.unwrap_or(FullscreenRestoreState::Sticky {
|
||||||
output: old_output,
|
output: old_output,
|
||||||
state: FloatingRestoreData {
|
state: FloatingRestoreData {
|
||||||
geometry: from,
|
geometry: from,
|
||||||
|
|
@ -4852,7 +4859,7 @@ impl Shell {
|
||||||
was_maximized,
|
was_maximized,
|
||||||
was_snapped: None,
|
was_snapped: None,
|
||||||
},
|
},
|
||||||
}),
|
})),
|
||||||
Some(from),
|
Some(from),
|
||||||
);
|
);
|
||||||
} else if let Some(workspace) = self.space_for_mut(&mapped) {
|
} else if let Some(workspace) = self.space_for_mut(&mapped) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue