Struct smithay_client_toolkit::shell::xdg::XdgShellSurface

source ·
pub struct XdgShellSurface {
    xdg_surface: XdgSurface,
    surface: Surface,
}
Expand description

A surface role for functionality common in desktop-like surfaces.

Fields§

§xdg_surface: XdgSurface§surface: Surface

Implementations§

source§

impl XdgShellSurface

source

pub fn new<U, D>( wm_base: &impl ProvidesBoundGlobal<XdgWmBase, { XdgShell::API_VERSION_MAX }>, qh: &QueueHandle<D>, surface: impl Into<Surface>, udata: U, ) -> Result<XdgShellSurface, GlobalError>
where D: Dispatch<XdgSurface, U> + 'static, U: Send + Sync + 'static,

Creates an XdgShellSurface.

This function is generally intended to be called in a higher level abstraction, such as XdgShell::create_window.

The created XdgShellSurface will destroy the underlying XdgSurface or WlSurface when dropped. Higher level abstractions are responsible for ensuring the destruction order of protocol objects is correct. Since this function consumes the WlSurface, it may be accessed using XdgShellSurface::wl_surface.

§Protocol errors

If the surface already has a role object, the compositor will raise a protocol error.

A surface is considered to have a role object if some other type of surface was created using the surface. For example, creating a window, popup, layer, subsurface or some other type of surface object all assign a role object to a surface.

source

pub fn xdg_surface(&self) -> &XdgSurface

source

pub fn wl_surface(&self) -> &WlSurface

Trait Implementations§

source§

impl Debug for XdgShellSurface

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Drop for XdgShellSurface

source§

fn drop(&mut self)

Executes the destructor for this type. Read more
source§

impl WaylandSurface for XdgShellSurface

source§

fn wl_surface(&self) -> &WlSurface

The underlying WlSurface.
source§

fn attach(&self, buffer: Option<&WlBuffer>, x: u32, y: u32)

source§

fn set_opaque_region(&self, region: Option<&WlRegion>)

source§

fn set_input_region(&self, region: Option<&WlRegion>)

source§

fn set_buffer_transform(&self, transform: Transform) -> Result<(), Unsupported>

source§

fn set_buffer_scale(&self, scale: u32) -> Result<(), Unsupported>

source§

fn offset(&self, x: u32, y: u32) -> Result<(), Unsupported>

source§

fn commit(&self)

Commits pending surface state. Read more
source§

impl XdgSurface for XdgShellSurface

source§

fn xdg_surface(&self) -> &XdgSurface

The underlying XdgSurface.
source§

fn set_window_geometry(&self, x: u32, y: u32, width: u32, height: u32)

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> Downcast for T
where T: Any,

source§

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>

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)

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)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more