pub struct PopupManager { /* private fields */ }
Available on crate features
wayland_frontend
and desktop
only.Expand description
Helper to track popups.
Implementations§
Source§impl PopupManager
impl PopupManager
Sourcepub fn track_popup(&mut self, kind: PopupKind) -> Result<(), DeadResource>
pub fn track_popup(&mut self, kind: PopupKind) -> Result<(), DeadResource>
Start tracking a new popup.
Sourcepub fn commit(&mut self, surface: &WlSurface)
pub fn commit(&mut self, surface: &WlSurface)
Needs to be called for PopupManager
to correctly update its internal state.
Sourcepub fn grab_popup<D>(
&mut self,
root: <D as SeatHandler>::KeyboardFocus,
popup: PopupKind,
seat: &Seat<D>,
serial: Serial,
) -> Result<PopupGrab<D>, PopupGrabError>where
D: SeatHandler + 'static,
<D as SeatHandler>::KeyboardFocus: WaylandFocus + From<PopupKind>,
<D as SeatHandler>::PointerFocus: From<<D as SeatHandler>::KeyboardFocus> + WaylandFocus,
pub fn grab_popup<D>(
&mut self,
root: <D as SeatHandler>::KeyboardFocus,
popup: PopupKind,
seat: &Seat<D>,
serial: Serial,
) -> Result<PopupGrab<D>, PopupGrabError>where
D: SeatHandler + 'static,
<D as SeatHandler>::KeyboardFocus: WaylandFocus + From<PopupKind>,
<D as SeatHandler>::PointerFocus: From<<D as SeatHandler>::KeyboardFocus> + WaylandFocus,
Take an explicit grab for the provided PopupKind
Returns a PopupGrab
on success or an PopupGrabError
if the grab has been denied.
Sourcepub fn find_popup(&self, surface: &WlSurface) -> Option<PopupKind>
pub fn find_popup(&self, surface: &WlSurface) -> Option<PopupKind>
Finds the popup belonging to a given WlSurface
, if any.
Sourcepub fn popups_for_surface(
surface: &WlSurface,
) -> impl Iterator<Item = (PopupKind, Point<i32, Logical>)>
pub fn popups_for_surface( surface: &WlSurface, ) -> impl Iterator<Item = (PopupKind, Point<i32, Logical>)>
Returns the popups and their relative positions for a given toplevel surface, if any.
Sourcepub fn dismiss_popup(
surface: &WlSurface,
popup: &PopupKind,
) -> Result<(), DeadResource>
pub fn dismiss_popup( surface: &WlSurface, popup: &PopupKind, ) -> Result<(), DeadResource>
Dismiss the popup
associated with the `surface.
Trait Implementations§
Source§impl Debug for PopupManager
impl Debug for PopupManager
Source§impl Default for PopupManager
impl Default for PopupManager
Source§fn default() -> PopupManager
fn default() -> PopupManager
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for PopupManager
impl !RefUnwindSafe for PopupManager
impl Send for PopupManager
impl Sync for PopupManager
impl Unpin for PopupManager
impl !UnwindSafe for PopupManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.