diff --git a/compositor/src/state/hit_testing.rs b/compositor/src/state/hit_testing.rs index 321053d..60bd23e 100644 --- a/compositor/src/state/hit_testing.rs +++ b/compositor/src/state/hit_testing.rs @@ -8,6 +8,11 @@ impl Ferese { if self.input_capture.active() { return None; } + // The workspace strip is compositor UI, including its live miniatures. + // Surfaces behind it must not acquire pointer focus or receive clicks. + if self.overview_strip_at(position).is_some() { + return None; + } self.layer_surface_under(position, &[Layer::Overlay, Layer::Top]) .map(|(_, surface, origin)| (surface, origin)) .or_else(|| self.window_surface_under(position)) @@ -21,6 +26,9 @@ impl Ferese { if self.session_lock.active() { return None; } + if self.overview_strip_at(position).is_some() { + return None; + } if let Some(layer) = self.layer_surface_under(position, &[Layer::Overlay, Layer::Top]) { return Some(layer); }