tiling: Fix swap-focus always selecting whole stacks
This commit is contained in:
parent
9ad69fe119
commit
a5b10f5d4a
1 changed files with 8 additions and 2 deletions
|
|
@ -1948,7 +1948,10 @@ impl TilingLayout {
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
Data::Mapped { mapped, .. } => {
|
Data::Mapped { mapped, .. } => {
|
||||||
if mapped.is_stack() && desc.stack_window.is_none() {
|
if mapped.is_stack()
|
||||||
|
&& desc.stack_window.is_none()
|
||||||
|
&& replacement_id == &desc.node
|
||||||
|
{
|
||||||
mapped.stack_ref().unwrap().focus_stack();
|
mapped.stack_ref().unwrap().focus_stack();
|
||||||
}
|
}
|
||||||
FocusResult::Some(KeyboardFocusTarget::Element(mapped.clone()))
|
FocusResult::Some(KeyboardFocusTarget::Element(mapped.clone()))
|
||||||
|
|
@ -2025,7 +2028,10 @@ impl TilingLayout {
|
||||||
if mapped.is_stack()
|
if mapped.is_stack()
|
||||||
&& swap_desc
|
&& swap_desc
|
||||||
.as_ref()
|
.as_ref()
|
||||||
.map(|desc| desc.stack_window.is_none())
|
.map(|desc| {
|
||||||
|
desc.stack_window.is_none()
|
||||||
|
&& &desc.node == node_id.unwrap()
|
||||||
|
})
|
||||||
.unwrap_or(false)
|
.unwrap_or(false)
|
||||||
{
|
{
|
||||||
mapped.stack_ref().unwrap().focus_stack();
|
mapped.stack_ref().unwrap().focus_stack();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue