iced-core-kora 0.15.0

The essential ideas of iced (Playtron's Kora fork of iced_core)
//! Platform specific settings for Linux.

/// The platform specific window settings of an application.
#[derive(Debug, Clone, PartialEq, Eq, Default)]
pub struct PlatformSpecific {
    /// Sets the application id of the window.
    ///
    /// As a best practice, it is suggested to select an application id that match
    /// the basename of the application’s .desktop file.
    pub application_id: String,

    /// Whether bypass the window manager mapping for x11 windows
    ///
    /// This flag is particularly useful for creating UI elements that need precise
    /// positioning and immediate display without window manager interference.
    pub override_redirect: bool,

    /// Wayland-only: an xdg-foreign handle of a toplevel exported by another
    /// client, to be made the parent of this window.
    ///
    /// This is the bare handle string (no `wayland:` prefix) obtained by the
    /// other client via `zxdg_exporter_v2` — for example the `parent_window` an
    /// xdg-desktop-portal `FileChooser` backend receives. The window is imported
    /// via `zxdg_importer_v2` and set as a child of that toplevel, so the
    /// compositor places it as a dialog over the requesting application's window.
    /// Ignored on X11 and on compositors without `zxdg_importer_v2`.
    pub wayland_parent: Option<String>,

    /// Wayland-only: give Kora's Halo a drag strip over the window's top edge
    /// (`kora_halo_header_manager_v1`, overlay mode). The Halo itself always
    /// floats above the window, outside its geometry; without this nothing of
    /// it reaches into the window.
    ///
    /// For a window laid out chromeless — full-bleed content whose first row
    /// already sits clear of the strip. The mode is sent before the
    /// window's initial commit, the only time the protocol takes it. Ignored
    /// on X11 and on compositors without the global; ask
    /// `window::is_halo_header_overlay` which one the window got.
    pub halo_header_overlay: bool,
}