(fix) Reject resize_request on surfaces which are already being resized
This commit is contained in:
parent
677be79635
commit
b955789a4e
1 changed files with 14 additions and 0 deletions
|
|
@ -4344,6 +4344,20 @@ impl Shell {
|
||||||
return None;
|
return None;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Reject duplicate resize requests (e.g. Steam sends two
|
||||||
|
// _NET_WM_MOVERESIZE messages). Creating a new grab while one is
|
||||||
|
// already active would corrupt the resize state when the old grab's
|
||||||
|
// ungrab() overwrites the freshly-set Resizing state.
|
||||||
|
if let Some(ResizeState::Resizing(data)) = *mapped.resize_state.lock().unwrap() {
|
||||||
|
tracing::warn!(
|
||||||
|
app_id = mapped.active_window().app_id(),
|
||||||
|
active_edges = ?data.edges,
|
||||||
|
requested_edges = ?edges,
|
||||||
|
"Rejecting duplicate resize request while resize is already active",
|
||||||
|
);
|
||||||
|
return None;
|
||||||
|
}
|
||||||
|
|
||||||
let floating_layer = if let Some(set) = self
|
let floating_layer = if let Some(set) = self
|
||||||
.workspaces
|
.workspaces
|
||||||
.sets
|
.sets
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue