gdk4_wayland

Struct WaylandToplevel

Source
pub struct WaylandToplevel { /* private fields */ }
Expand description

The Wayland implementation of gdk::Toplevel.

Beyond the gdk::Toplevel API, the Wayland implementation has API to set up cross-process parent-child relationships between surfaces with export_handle() and set_transient_for_exported().

§Implements

[WaylandSurfaceExt][trait@crate::prelude::WaylandSurfaceExt], gdk::prelude::SurfaceExt, gdk::prelude::ToplevelExt, WaylandSurfaceExtManual

GLib type: GObject with reference counted clone semantics.

Implementations§

Source§

impl WaylandToplevel

Source

pub fn drop_exported_handle(&self, handle: &str)

Available on crate feature v4_12 only.

Destroy a handle that was obtained with gdk_wayland_toplevel_export_handle().

Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future.

§handle

the handle to drop

Source

pub fn set_application_id(&self, application_id: &str)

Sets the application id on a gdk::Toplevel.

§application_id

the application id for the @self

Source

pub fn set_transient_for_exported(&self, parent_handle_str: &str) -> bool

Marks @self as transient for the surface to which the given @parent_handle_str refers.

Typically, the handle will originate from a export_handle() call in another process.

Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future.

§parent_handle_str

an exported handle for a surface

§Returns

true if the surface has been marked as transient, false if an error occurred.

Source

pub fn unexport_handle(&self)

👎Deprecated: Since 4.12

Destroys the handle that was obtained with gdk_wayland_toplevel_export_handle().

It is an error to call this function on a surface that does not have a handle.

Since 4.12, this function does nothing. Use drop_exported_handle() instead to drop a handle that was obtained with export_handle().

Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future.

§Deprecated since 4.12

Use drop_exported_handle() instead, this function does nothing

Source§

impl WaylandToplevel

Source

pub fn export_handle<P: Fn(&WaylandToplevel, Result<&str, BoolError>) + 'static>( &self, callback: P, ) -> bool

Asynchronously obtains a handle for a surface that can be passed to other processes.

When the handle has been obtained, @callback will be called.

It is an error to call this function on a surface that is already exported.

When the handle is no longer needed, unexport_handle() should be called to clean up resources.

The main purpose for obtaining a handle is to mark a surface from another surface as transient for this one, see set_transient_for_exported().

Before 4.12, this API could not safely be used multiple times, since there was no reference counting for handles. Starting with 4.12, every call to this function obtains a new handle, and every call to drop_exported_handle() drops just the handle that it is given.

Note that this API depends on an unstable Wayland protocol, and thus may require changes in the future.

§callback

callback to call with the handle

§Returns

true if the handle has been requested, false if an error occurred.

Trait Implementations§

Source§

impl Clone for WaylandToplevel

Source§

fn clone(&self) -> Self

Makes a clone of this shared reference.

This increments the strong reference count of the object. Dropping the object will decrement it again.

1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for WaylandToplevel

Source§

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

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

impl HasParamSpec for WaylandToplevel

Source§

type ParamSpec = ParamSpecObject

Source§

type SetValue = WaylandToplevel

Preferred value to be used as setter for the associated ParamSpec.
Source§

type BuilderFn = fn(_: &str) -> ParamSpecObjectBuilder<'_, WaylandToplevel>

Source§

fn param_spec_builder() -> Self::BuilderFn

Source§

impl Hash for WaylandToplevel

Source§

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Hashes the memory address of this object.

1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Ord for WaylandToplevel

Source§

fn cmp(&self, other: &Self) -> Ordering

Comparison for two GObjects.

Compares the memory addresses of the provided objects.

1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl ParentClassIs for WaylandToplevel

Source§

impl<OT: ObjectType> PartialEq<OT> for WaylandToplevel

Source§

fn eq(&self, other: &OT) -> bool

Equality for two GObjects.

Two GObjects are equal if their memory addresses are equal.

1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<OT: ObjectType> PartialOrd<OT> for WaylandToplevel

Source§

fn partial_cmp(&self, other: &OT) -> Option<Ordering>

Partial comparison for two GObjects.

Compares the memory addresses of the provided objects.

1.0.0 · Source§

fn lt(&self, other: &Rhs) -> bool

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

fn le(&self, other: &Rhs) -> bool

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

fn gt(&self, other: &Rhs) -> bool

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

fn ge(&self, other: &Rhs) -> bool

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl StaticType for WaylandToplevel

Source§

fn static_type() -> Type

Returns the type identifier of Self.
Source§

impl Eq for WaylandToplevel

Source§

impl IsA<Surface> for WaylandToplevel

Source§

impl IsA<Toplevel> for WaylandToplevel

Source§

impl IsA<WaylandSurface> for WaylandToplevel

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> Cast for T
where T: ObjectType,

Source§

fn upcast<T>(self) -> T
where T: ObjectType, Self: IsA<T>,

Upcasts an object to a superclass or interface T. Read more
Source§

fn upcast_ref<T>(&self) -> &T
where T: ObjectType, Self: IsA<T>,

Upcasts an object to a reference of its superclass or interface T. Read more
Source§

fn downcast<T>(self) -> Result<T, Self>
where T: ObjectType, Self: MayDowncastTo<T>,

Tries to downcast to a subclass or interface implementor T. Read more
Source§

fn downcast_ref<T>(&self) -> Option<&T>
where T: ObjectType, Self: MayDowncastTo<T>,

Tries to downcast to a reference of its subclass or interface implementor T. Read more
Source§

fn dynamic_cast<T>(self) -> Result<T, Self>
where T: ObjectType,

Tries to cast to an object of type T. This handles upcasting, downcasting and casting between interface and interface implementors. All checks are performed at runtime, while upcast will do many checks at compile-time already. downcast will perform the same checks at runtime as dynamic_cast, but will also ensure some amount of compile-time safety. Read more
Source§

fn dynamic_cast_ref<T>(&self) -> Option<&T>
where T: ObjectType,

Tries to cast to reference to an object of type T. This handles upcasting, downcasting and casting between interface and interface implementors. All checks are performed at runtime, while downcast and upcast will do many checks at compile-time already. Read more
Source§

unsafe fn unsafe_cast<T>(self) -> T
where T: ObjectType,

Casts to T unconditionally. Read more
Source§

unsafe fn unsafe_cast_ref<T>(&self) -> &T
where T: ObjectType,

Casts to &T unconditionally. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> Downcast<T> for T

Source§

fn downcast(&self) -> &T

§

impl<T> Downcast for T
where T: 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.
§

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.
§

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.
§

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for T

Source§

unsafe fn from_glib_none_num_as_vec(ptr: *const GList, num: usize) -> Vec<T>

Source§

unsafe fn from_glib_container_num_as_vec(_: *const GList, _: usize) -> Vec<T>

Source§

unsafe fn from_glib_full_num_as_vec(_: *const GList, _: usize) -> Vec<T>

Source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for T

Source§

unsafe fn from_glib_none_num_as_vec(ptr: *const GPtrArray, num: usize) -> Vec<T>

Source§

unsafe fn from_glib_container_num_as_vec( _: *const GPtrArray, _: usize, ) -> Vec<T>

Source§

unsafe fn from_glib_full_num_as_vec(_: *const GPtrArray, _: usize) -> Vec<T>

Source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for T

Source§

unsafe fn from_glib_none_num_as_vec(ptr: *const GSList, num: usize) -> Vec<T>

Source§

unsafe fn from_glib_container_num_as_vec(_: *const GSList, _: usize) -> Vec<T>

Source§

unsafe fn from_glib_full_num_as_vec(_: *const GSList, _: usize) -> Vec<T>

Source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for T

Source§

unsafe fn from_glib_none_num_as_vec(ptr: *mut GList, num: usize) -> Vec<T>

Source§

unsafe fn from_glib_container_num_as_vec(ptr: *mut GList, num: usize) -> Vec<T>

Source§

unsafe fn from_glib_full_num_as_vec(ptr: *mut GList, num: usize) -> Vec<T>

Source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for T

Source§

unsafe fn from_glib_none_num_as_vec(ptr: *mut GPtrArray, num: usize) -> Vec<T>

Source§

unsafe fn from_glib_container_num_as_vec( ptr: *mut GPtrArray, num: usize, ) -> Vec<T>

Source§

unsafe fn from_glib_full_num_as_vec(ptr: *mut GPtrArray, num: usize) -> Vec<T>

Source§

impl<T> FromGlibContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for T

Source§

unsafe fn from_glib_none_num_as_vec(ptr: *mut GSList, num: usize) -> Vec<T>

Source§

unsafe fn from_glib_container_num_as_vec(ptr: *mut GSList, num: usize) -> Vec<T>

Source§

unsafe fn from_glib_full_num_as_vec(ptr: *mut GSList, num: usize) -> Vec<T>

Source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GList> for T

Source§

unsafe fn from_glib_none_as_vec(ptr: *const GList) -> Vec<T>

Source§

unsafe fn from_glib_container_as_vec(_: *const GList) -> Vec<T>

Source§

unsafe fn from_glib_full_as_vec(_: *const GList) -> Vec<T>

Source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GPtrArray> for T

Source§

unsafe fn from_glib_none_as_vec(ptr: *const GPtrArray) -> Vec<T>

Source§

unsafe fn from_glib_container_as_vec(_: *const GPtrArray) -> Vec<T>

Source§

unsafe fn from_glib_full_as_vec(_: *const GPtrArray) -> Vec<T>

Source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *const GSList> for T

Source§

unsafe fn from_glib_none_as_vec(ptr: *const GSList) -> Vec<T>

Source§

unsafe fn from_glib_container_as_vec(_: *const GSList) -> Vec<T>

Source§

unsafe fn from_glib_full_as_vec(_: *const GSList) -> Vec<T>

Source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GList> for T

Source§

unsafe fn from_glib_none_as_vec(ptr: *mut GList) -> Vec<T>

Source§

unsafe fn from_glib_container_as_vec(ptr: *mut GList) -> Vec<T>

Source§

unsafe fn from_glib_full_as_vec(ptr: *mut GList) -> Vec<T>

Source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GPtrArray> for T

Source§

unsafe fn from_glib_none_as_vec(ptr: *mut GPtrArray) -> Vec<T>

Source§

unsafe fn from_glib_container_as_vec(ptr: *mut GPtrArray) -> Vec<T>

Source§

unsafe fn from_glib_full_as_vec(ptr: *mut GPtrArray) -> Vec<T>

Source§

impl<T> FromGlibPtrArrayContainerAsVec<<T as GlibPtrDefault>::GlibType, *mut GSList> for T

Source§

unsafe fn from_glib_none_as_vec(ptr: *mut GSList) -> Vec<T>

Source§

unsafe fn from_glib_container_as_vec(ptr: *mut GSList) -> Vec<T>

Source§

unsafe fn from_glib_full_as_vec(ptr: *mut GSList) -> Vec<T>

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> IntoClosureReturnValue for T
where T: Into<Value>,

Source§

impl<U> IsSubclassableExt for U

Source§

impl<T> ObjectExt for T
where T: ObjectType,

Source§

fn is<U>(&self) -> bool
where U: StaticType,

Returns true if the object is an instance of (can be cast to) T.
Source§

fn type_(&self) -> Type

Returns the type of the object.
Source§

fn object_class(&self) -> &Class<Object>

Returns the ObjectClass of the object. Read more
Source§

fn class(&self) -> &Class<T>
where T: IsClass,

Returns the class of the object.
Source§

fn class_of<U>(&self) -> Option<&Class<U>>
where U: IsClass,

Returns the class of the object in the given type T. Read more
Source§

fn interface<U>(&self) -> Option<InterfaceRef<'_, U>>
where U: IsInterface,

Returns the interface T of the object. Read more
Source§

fn set_property(&self, property_name: &str, value: impl Into<Value>)

Sets the property property_name of the object to value value. Read more
Source§

fn set_property_from_value(&self, property_name: &str, value: &Value)

Sets the property property_name of the object to value value. Read more
Source§

fn set_properties(&self, property_values: &[(&str, &dyn ToValue)])

Sets multiple properties of the object at once. Read more
Source§

fn set_properties_from_value(&self, property_values: &[(&str, Value)])

Sets multiple properties of the object at once. Read more
Source§

fn property<V>(&self, property_name: &str) -> V
where V: for<'b> FromValue<'b> + 'static,

Gets the property property_name of the object and cast it to the type V. Read more
Source§

fn property_value(&self, property_name: &str) -> Value

Gets the property property_name of the object. Read more
Source§

fn has_property(&self, property_name: &str) -> bool

Check if the object has a property property_name.
Source§

fn has_property_with_type(&self, property_name: &str, type_: Type) -> bool

Check if the object has a property property_name of the given type_.
Source§

fn property_type(&self, property_name: &str) -> Option<Type>

Get the type of the property property_name of this object. Read more
Source§

fn find_property(&self, property_name: &str) -> Option<ParamSpec>

Get the ParamSpec of the property property_name of this object.
Source§

fn list_properties(&self) -> PtrSlice<ParamSpec>

Return all ParamSpec of the properties of this object.
Source§

fn freeze_notify(&self) -> PropertyNotificationFreezeGuard

Freeze all property notifications until the return guard object is dropped. Read more
Source§

unsafe fn set_qdata<QD>(&self, key: Quark, value: QD)
where QD: 'static,

Set arbitrary data on this object with the given key. Read more
Source§

unsafe fn qdata<QD>(&self, key: Quark) -> Option<NonNull<QD>>
where QD: 'static,

Return previously set arbitrary data of this object with the given key. Read more
Source§

unsafe fn steal_qdata<QD>(&self, key: Quark) -> Option<QD>
where QD: 'static,

Retrieve previously set arbitrary data of this object with the given key. Read more
Source§

unsafe fn set_data<QD>(&self, key: &str, value: QD)
where QD: 'static,

Set arbitrary data on this object with the given key. Read more
Source§

unsafe fn data<QD>(&self, key: &str) -> Option<NonNull<QD>>
where QD: 'static,

Return previously set arbitrary data of this object with the given key. Read more
Source§

unsafe fn steal_data<QD>(&self, key: &str) -> Option<QD>
where QD: 'static,

Retrieve previously set arbitrary data of this object with the given key. Read more
Source§

fn block_signal(&self, handler_id: &SignalHandlerId)

Block a given signal handler. Read more
Source§

fn unblock_signal(&self, handler_id: &SignalHandlerId)

Unblock a given signal handler.
Source§

fn stop_signal_emission(&self, signal_id: SignalId, detail: Option<Quark>)

Stop emission of the currently emitted signal.
Source§

fn stop_signal_emission_by_name(&self, signal_name: &str)

Stop emission of the currently emitted signal by the (possibly detailed) signal name.
Source§

fn connect<F>( &self, signal_name: &str, after: bool, callback: F, ) -> SignalHandlerId
where F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,

Connect to the signal signal_name on this object. Read more
Source§

fn connect_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F, ) -> SignalHandlerId
where F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,

Connect to the signal signal_id on this object. Read more
Source§

fn connect_local<F>( &self, signal_name: &str, after: bool, callback: F, ) -> SignalHandlerId
where F: Fn(&[Value]) -> Option<Value> + 'static,

Connect to the signal signal_name on this object. Read more
Source§

fn connect_local_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F, ) -> SignalHandlerId
where F: Fn(&[Value]) -> Option<Value> + 'static,

Connect to the signal signal_id on this object. Read more
Source§

unsafe fn connect_unsafe<F>( &self, signal_name: &str, after: bool, callback: F, ) -> SignalHandlerId
where F: Fn(&[Value]) -> Option<Value>,

Connect to the signal signal_name on this object. Read more
Source§

unsafe fn connect_unsafe_id<F>( &self, signal_id: SignalId, details: Option<Quark>, after: bool, callback: F, ) -> SignalHandlerId
where F: Fn(&[Value]) -> Option<Value>,

Connect to the signal signal_id on this object. Read more
Source§

fn connect_closure( &self, signal_name: &str, after: bool, closure: RustClosure, ) -> SignalHandlerId

Connect a closure to the signal signal_name on this object. Read more
Source§

fn connect_closure_id( &self, signal_id: SignalId, details: Option<Quark>, after: bool, closure: RustClosure, ) -> SignalHandlerId

Connect a closure to the signal signal_id on this object. Read more
Source§

fn watch_closure(&self, closure: &impl AsRef<Closure>)

Limits the lifetime of closure to the lifetime of the object. When the object’s reference count drops to zero, the closure will be invalidated. An invalidated closure will ignore any calls to invoke_with_values, or invoke when using Rust closures.
Source§

fn emit<R>(&self, signal_id: SignalId, args: &[&dyn ToValue]) -> R

Emit signal by signal id. Read more
Source§

fn emit_with_values(&self, signal_id: SignalId, args: &[Value]) -> Option<Value>

Same as Self::emit but takes Value for the arguments.
Source§

fn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> R

Emit signal by its name. Read more
Source§

fn emit_by_name_with_values( &self, signal_name: &str, args: &[Value], ) -> Option<Value>

Emit signal by its name. Read more
Source§

fn emit_by_name_with_details<R>( &self, signal_name: &str, details: Quark, args: &[&dyn ToValue], ) -> R

Emit signal by its name with details. Read more
Source§

fn emit_by_name_with_details_and_values( &self, signal_name: &str, details: Quark, args: &[Value], ) -> Option<Value>

Emit signal by its name with details. Read more
Source§

fn emit_with_details<R>( &self, signal_id: SignalId, details: Quark, args: &[&dyn ToValue], ) -> R

Emit signal by signal id with details. Read more
Source§

fn emit_with_details_and_values( &self, signal_id: SignalId, details: Quark, args: &[Value], ) -> Option<Value>

Emit signal by signal id with details. Read more
Source§

fn disconnect(&self, handler_id: SignalHandlerId)

Disconnect a previously connected signal handler.
Source§

fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId
where F: Fn(&T, &ParamSpec) + Send + Sync + 'static,

Connect to the notify signal of the object. Read more
Source§

fn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId
where F: Fn(&T, &ParamSpec) + 'static,

Connect to the notify signal of the object. Read more
Source§

unsafe fn connect_notify_unsafe<F>( &self, name: Option<&str>, f: F, ) -> SignalHandlerId
where F: Fn(&T, &ParamSpec),

Connect to the notify signal of the object. Read more
Source§

fn notify(&self, property_name: &str)

Notify that the given property has changed its value. Read more
Source§

fn notify_by_pspec(&self, pspec: &ParamSpec)

Notify that the given property has changed its value. Read more
Source§

fn downgrade(&self) -> WeakRef<T>

Downgrade this object to a weak reference.
Source§

fn add_weak_ref_notify<F>(&self, f: F) -> WeakRefNotify<T>
where F: FnOnce() + Send + 'static,

Add a callback to be notified when the Object is disposed.
Source§

fn add_weak_ref_notify_local<F>(&self, f: F) -> WeakRefNotify<T>
where F: FnOnce() + 'static,

Add a callback to be notified when the Object is disposed. Read more
Source§

fn bind_property<'a, 'f, 't, O>( &'a self, source_property: &'a str, target: &'a O, target_property: &'a str, ) -> BindingBuilder<'a, 'f, 't>
where O: ObjectType,

Bind property source_property on this object to the target_property on the target object. Read more
Source§

fn ref_count(&self) -> u32

Returns the strong reference count of this object.
Source§

unsafe fn run_dispose(&self)

Runs the dispose mechanism of the object. Read more
Source§

impl<T> Property for T
where T: HasParamSpec,

Source§

type Value = T

Source§

impl<T> PropertyGet for T
where T: HasParamSpec,

Source§

type Value = T

Source§

fn get<R, F>(&self, f: F) -> R
where F: Fn(&<T as PropertyGet>::Value) -> R,

Source§

impl<T> StaticTypeExt for T
where T: StaticType,

Source§

fn ensure_type()

Ensures that the type has been registered with the type system.
Source§

impl<O> SurfaceExt for O
where O: IsA<Surface>,

Source§

fn beep(&self)

Emits a short beep associated to @self. Read more
Source§

fn create_cairo_context(&self) -> CairoContext

Creates a new CairoContext for rendering on @self. Read more
Source§

fn create_gl_context(&self) -> Result<GLContext, Error>

Creates a new GLContext for the Surface. Read more
Source§

fn create_vulkan_context(&self) -> Result<VulkanContext, Error>

👎Deprecated: Since 4.14
Sets an error and returns None. Read more
Source§

fn destroy(&self)

Source§

fn cursor(&self) -> Option<Cursor>

Retrieves a Cursor pointer for the cursor currently set on the Surface. Read more
Source§

fn device_cursor(&self, device: &impl IsA<Device>) -> Option<Cursor>

Retrieves a Cursor pointer for the @device currently set on the specified Surface. Read more
Source§

fn device_position( &self, device: &impl IsA<Device>, ) -> Option<(f64, f64, ModifierType)>

Obtains the current device position and modifier state. Read more
Source§

fn display(&self) -> Display

Gets the Display associated with a Surface. Read more
Source§

fn frame_clock(&self) -> FrameClock

Gets the frame clock for the surface. Read more
Source§

fn height(&self) -> i32

Returns the height of the given @self. Read more
Source§

fn is_mapped(&self) -> bool

Checks whether the surface has been mapped. Read more
Source§

fn scale(&self) -> f64

Available on crate feature v4_12 only.
Returns the internal scale that maps from surface coordinates to the actual device pixels. Read more
Source§

fn scale_factor(&self) -> i32

Returns the internal scale factor that maps from surface coordinates to the actual device pixels. Read more
Source§

fn width(&self) -> i32

Returns the width of the given @self. Read more
Source§

fn hide(&self)

Hide the surface. Read more
Source§

fn is_destroyed(&self) -> bool

Check to see if a surface is destroyed. Read more
Source§

fn queue_render(&self)

Forces a render signal emission for @self to be scheduled. Read more
Source§

fn request_layout(&self)

Request a layout phase from the surface’s frame clock. Read more
Source§

fn set_cursor(&self, cursor: Option<&Cursor>)

Sets the default mouse pointer for a Surface. Read more
Source§

fn set_device_cursor(&self, device: &impl IsA<Device>, cursor: &Cursor)

Sets a specific Cursor for a given device when it gets inside @self. Read more
Source§

fn set_input_region(&self, region: &Region)

Apply the region to the surface for the purpose of event handling. Read more
Source§

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

👎Deprecated: Since 4.16
Marks a region of the Surface as opaque. Read more
Source§

fn connect_enter_monitor<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self, &Monitor) + 'static,

Emitted when @surface starts being present on the monitor. Read more
Source§

fn connect_event<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self, &Event) -> bool + 'static,

Emitted when GDK receives an input event for @surface. Read more
Source§

fn connect_layout<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self, i32, i32) + 'static,

Emitted when the size of @surface is changed, or when relayout should be performed. Read more
Source§

fn connect_leave_monitor<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self, &Monitor) + 'static,

Emitted when @surface stops being present on the monitor. Read more
Source§

fn connect_render<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self, &Region) -> bool + 'static,

Emitted when part of the surface needs to be redrawn. Read more
Source§

fn connect_cursor_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_height_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_mapped_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_scale_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Available on crate feature v4_12 only.
Source§

fn connect_scale_factor_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_width_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

impl<O> SurfaceExtManual for O
where O: IsA<Surface>,

Source§

fn create_similar_surface( &self, content: Content, width: i32, height: i32, ) -> Surface

Create a new Cairo surface that is as compatible as possible with the given @self. Read more
Source§

fn translate_coordinates(&self, to: &Surface, x: f64, y: f64) -> bool

Translates coordinates between two surfaces. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<O> ToplevelExt for O
where O: IsA<Toplevel>,

Source§

fn begin_move( &self, device: &impl IsA<Device>, button: i32, x: f64, y: f64, timestamp: u32, )

Begins an interactive move operation. Read more
Source§

fn begin_resize( &self, edge: SurfaceEdge, device: Option<&impl IsA<Device>>, button: i32, x: f64, y: f64, timestamp: u32, )

Begins an interactive resize operation. Read more
Source§

fn focus(&self, timestamp: u32)

Sets keyboard focus to @surface. Read more
Source§

fn state(&self) -> ToplevelState

Gets the bitwise or of the currently active surface state flags, from the ToplevelState enumeration. Read more
Source§

fn inhibit_system_shortcuts(&self, event: Option<impl AsRef<Event>>)

Requests that the @self inhibit the system shortcuts. Read more
Source§

fn lower(&self) -> bool

Asks to lower the @self below other windows. Read more
Source§

fn minimize(&self) -> bool

Asks to minimize the @self. Read more
Source§

fn present(&self, layout: &ToplevelLayout)

Present @self after having processed the ToplevelLayout rules. Read more
Source§

fn restore_system_shortcuts(&self)

Restore default system keyboard shortcuts which were previously inhibited. Read more
Source§

fn set_decorated(&self, decorated: bool)

Sets the toplevel to be decorated. Read more
Source§

fn set_deletable(&self, deletable: bool)

Sets the toplevel to be deletable. Read more
Source§

fn set_icon_list(&self, surfaces: &[Texture])

Sets a list of icons for the surface. Read more
Source§

fn set_modal(&self, modal: bool)

Sets the toplevel to be modal. Read more
Source§

fn set_startup_id(&self, startup_id: &str)

Sets the startup notification ID. Read more
Source§

fn set_title(&self, title: &str)

Sets the title of a toplevel surface. Read more
Source§

fn set_transient_for(&self, parent: &impl IsA<Surface>)

Sets a transient-for parent. Read more
Source§

fn show_window_menu(&self, event: impl AsRef<Event>) -> bool

Asks the windowing system to show the window menu. Read more
Source§

fn supports_edge_constraints(&self) -> bool

Returns whether the desktop environment supports tiled window states. Read more
Source§

fn titlebar_gesture(&self, gesture: TitlebarGesture) -> bool

Available on crate feature v4_4 only.
Performs a title bar gesture. Read more
Source§

fn is_decorated(&self) -> bool

Whether the window manager should add decorations.
Source§

fn is_deletable(&self) -> bool

Whether the window manager should allow to close the surface.
Source§

fn fullscreen_mode(&self) -> FullscreenMode

The fullscreen mode of the surface.
Source§

fn set_fullscreen_mode(&self, fullscreen_mode: FullscreenMode)

The fullscreen mode of the surface.
Source§

fn is_modal(&self) -> bool

Whether the surface is modal.
Source§

fn is_shortcuts_inhibited(&self) -> bool

Whether the surface should inhibit keyboard shortcuts.
Source§

fn startup_id(&self) -> Option<GString>

The startup ID of the surface. Read more
Source§

fn title(&self) -> Option<GString>

The title of the surface.
Source§

fn transient_for(&self) -> Option<Surface>

The transient parent of the surface.
Source§

fn connect_decorated_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_deletable_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_fullscreen_mode_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_icon_list_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_modal_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_shortcuts_inhibited_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_startup_id_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_state_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_title_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

fn connect_transient_for_notify<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Self) + 'static,

Source§

impl<O> ToplevelExtManual for O
where O: IsA<Toplevel>,

Source§

fn connect_compute_size<F>(&self, f: F) -> SignalHandlerId
where F: Fn(&Toplevel, &mut ToplevelSize) + 'static,

Emitted when the size for the surface needs to be computed, when it is present. Read more
Source§

impl<T> TransparentType for T

Source§

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

Source§

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> TryFromClosureReturnValue for T
where T: for<'a> FromValue<'a> + StaticType + 'static,

Source§

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

Source§

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> Upcast<T> for T

Source§

fn upcast(&self) -> Option<&T>

Source§

impl<O> WaylandSurfaceExtManual for O
where O: IsA<WaylandSurface>,

Source§

fn wl_surface(&self) -> Option<WlSurface>

Available on crate feature wayland_crate only.
Returns the Wayland wl_surface of a gdk::Surface. Read more
Source§

impl<'a, T, C, E> FromValueOptional<'a> for T
where T: FromValue<'a, Checker = C>, C: ValueTypeChecker<Error = ValueTypeMismatchOrNoneError<E>>, E: Error + Send + 'static,

Source§

impl<Super, Sub> MayDowncastTo<Sub> for Super
where Super: IsA<Super>, Sub: IsA<Super>,