Skip to main content

ShellApp

Trait ShellApp 

Source
pub trait ShellApp {
    // Required methods
    fn open_shell_window<V: Render + 'static>(
        &mut self,
        options: WindowOptions,
        shell: ShellOptions,
        build: impl FnOnce(&mut Window, &mut App) -> Entity<V>,
    ) -> Result<WindowHandle<ShellWindow>>;
    fn open_shell_window_with_titlebar<H: Render + 'static, V: Render + 'static>(
        &mut self,
        options: WindowOptions,
        shell: ShellOptions,
        build: impl FnOnce(&mut Window, &mut App) -> (Entity<H>, Entity<V>),
    ) -> Result<WindowHandle<ShellWindow>>;
}
Expand description

Open an application with compositor-provided chrome or a shared client-side frame.

Required Methods§

Source

fn open_shell_window<V: Render + 'static>( &mut self, options: WindowOptions, shell: ShellOptions, build: impl FnOnce(&mut Window, &mut App) -> Entity<V>, ) -> Result<WindowHandle<ShellWindow>>

Source

fn open_shell_window_with_titlebar<H: Render + 'static, V: Render + 'static>( &mut self, options: WindowOptions, shell: ShellOptions, build: impl FnOnce(&mut Window, &mut App) -> (Entity<H>, Entity<V>), ) -> Result<WindowHandle<ShellWindow>>

Supply an app-owned title-bar view and a separate content view. Native macOS traffic lights remain native; client-frame window controls remain shell-owned. Compose arbitrary app controls and use ShellDragRegion only for drag surfaces.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl ShellApp for App

Source§

fn open_shell_window<V: Render + 'static>( &mut self, options: WindowOptions, shell: ShellOptions, build: impl FnOnce(&mut Window, &mut App) -> Entity<V>, ) -> Result<WindowHandle<ShellWindow>>

Source§

fn open_shell_window_with_titlebar<H: Render + 'static, V: Render + 'static>( &mut self, options: WindowOptions, shell: ShellOptions, build: impl FnOnce(&mut Window, &mut App) -> (Entity<H>, Entity<V>), ) -> Result<WindowHandle<ShellWindow>>

Implementors§