[−][src]Struct ashpd::WindowIdentifier
Most portals interact with the user by showing dialogs.
These dialogs should generally be placed on top of the application window that triggered them.
To arrange this, the compositor needs to know about the application window.
Many portal requests expect a WindowIdentifier
for this reason.
Under X11, the WindowIdentifier
should have the form "x11:XID", where XID is the XID of the application window.
Under Wayland, it should have the form "wayland:HANDLE", where HANDLE is a surface handle obtained with the xdg_foreign protocol.
For other windowing systems, or if you don't have a suitable handle, just use the Default
implementation.
Normally, we should provide a From<gtk::Window> for WindowIdentifier
implementation.
But as that's currently impossible to do from Rust in a sane way, we should try to provide a C function
that gives us a handle from the Gdk::Window
and call it from Rust in the From
implementation.
We would love merge requests that adds other From<T> for WindowIdentifier
implementations for other toolkits.
Implementations
impl WindowIdentifier
[src]
Trait Implementations
impl Clone for WindowIdentifier
[src]
fn clone(&self) -> WindowIdentifier
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for WindowIdentifier
[src]
impl Default for WindowIdentifier
[src]
impl<'de> Deserialize<'de> for WindowIdentifier
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl Serialize for WindowIdentifier
[src]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl Type for WindowIdentifier
[src]
Auto Trait Implementations
impl RefUnwindSafe for WindowIdentifier
impl Send for WindowIdentifier
impl Sync for WindowIdentifier
impl Unpin for WindowIdentifier
impl UnwindSafe for WindowIdentifier
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,