winit/wayland: input_zone for layer, instead of pointer_interactivity

This is a more general version of the same thing, at matches what is
used for popups and subsurfaces.
This commit is contained in:
Ian Douglas Scott 2025-09-18 13:14:19 -07:00 committed by Ashley Wulber
parent 20e60ffde6
commit ea4f704f0f
No known key found for this signature in database
GPG key ID: 5216D4F46A90A820
3 changed files with 16 additions and 6 deletions

View file

@ -7,6 +7,7 @@ use cctk::sctk::{
use iced_core::layout::Limits;
use iced_core::window::Id;
use iced_core::Rectangle;
/// output for layer surface
#[derive(Debug, Clone)]
@ -47,8 +48,9 @@ pub struct SctkLayerSurfaceSettings {
pub layer: Layer,
/// keyboard interactivity
pub keyboard_interactivity: KeyboardInteractivity,
/// pointer interactivity
pub pointer_interactivity: bool,
/// input zone
/// None results in accepting all input
pub input_zone: Option<Vec<Rectangle>>,
/// anchor, if a surface is anchored to two opposite edges, it will be stretched to fit between those edges, regardless of the specified size in that dimension.
pub anchor: Anchor,
/// output
@ -72,7 +74,7 @@ impl Default for SctkLayerSurfaceSettings {
id: Id::unique(),
layer: Layer::Top,
keyboard_interactivity: Default::default(),
pointer_interactivity: true,
input_zone: None,
anchor: Anchor::empty(),
output: Default::default(),
namespace: Default::default(),