Fix workspace preview cards intercepting pointer input

This commit is contained in:
Samuel Onoja committed 2026-10-02 22:59:38 +01:00
1 parent 4166c1ea29
commit 629414e0fb
1 file changed
+8
+8
View File
@@ -8,6 +8,11 @@ impl Ferese {
if self.input_capture.active() { if self.input_capture.active() {
return None; 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]) self.layer_surface_under(position, &[Layer::Overlay, Layer::Top])
.map(|(_, surface, origin)| (surface, origin)) .map(|(_, surface, origin)| (surface, origin))
.or_else(|| self.window_surface_under(position)) .or_else(|| self.window_surface_under(position))
@@ -21,6 +26,9 @@ impl Ferese {
if self.session_lock.active() { if self.session_lock.active() {
return None; 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]) { if let Some(layer) = self.layer_surface_under(position, &[Layer::Overlay, Layer::Top]) {
return Some(layer); return Some(layer);
} }