pub struct Popup {
inner: Arc<PopupInner>,
}
Fields§
§inner: Arc<PopupInner>
Implementations§
source§impl Popup
impl Popup
sourcepub fn new<D>(
parent: &XdgSurface,
position: &XdgPositioner,
qh: &QueueHandle<D>,
compositor: &impl ProvidesBoundGlobal<WlCompositor, 6>,
wm_base: &impl ProvidesBoundGlobal<XdgWmBase, 5>,
) -> Result<Popup, GlobalError>where
D: Dispatch<WlSurface, SurfaceData> + Dispatch<XdgSurface, PopupData> + Dispatch<XdgPopup, PopupData> + PopupHandler + 'static,
pub fn new<D>(
parent: &XdgSurface,
position: &XdgPositioner,
qh: &QueueHandle<D>,
compositor: &impl ProvidesBoundGlobal<WlCompositor, 6>,
wm_base: &impl ProvidesBoundGlobal<XdgWmBase, 5>,
) -> Result<Popup, GlobalError>where
D: Dispatch<WlSurface, SurfaceData> + Dispatch<XdgSurface, PopupData> + Dispatch<XdgPopup, PopupData> + PopupHandler + 'static,
Create a new popup.
This creates the popup and sends the initial commit. You must wait for
PopupHandler::configure
to commit contents to the surface.
sourcepub fn from_surface<D>(
parent: Option<&XdgSurface>,
position: &XdgPositioner,
qh: &QueueHandle<D>,
surface: impl Into<Surface>,
wm_base: &impl ProvidesBoundGlobal<XdgWmBase, 5>,
) -> Result<Popup, GlobalError>
pub fn from_surface<D>( parent: Option<&XdgSurface>, position: &XdgPositioner, qh: &QueueHandle<D>, surface: impl Into<Surface>, wm_base: &impl ProvidesBoundGlobal<XdgWmBase, 5>, ) -> Result<Popup, GlobalError>
Create a new popup from an existing surface.
If you do not specify a parent surface, you must configure the parent using an alternate
function such as LayerSurface::get_popup
prior to committing the surface, or you will
get an invalid_popup_parent
protocol error.
pub fn xdg_popup(&self) -> &XdgPopup
pub fn xdg_shell_surface(&self) -> &XdgShellSurface
pub fn xdg_surface(&self) -> &XdgSurface
pub fn wl_surface(&self) -> &WlSurface
pub fn reposition(&self, position: &XdgPositioner, token: u32)
Trait Implementations§
source§impl PartialEq for Popup
impl PartialEq for Popup
impl Eq for Popup
Auto Trait Implementations§
impl Freeze for Popup
impl !RefUnwindSafe for Popup
impl Send for Popup
impl Sync for Popup
impl Unpin for Popup
impl !UnwindSafe for Popup
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.