Skip to main content

TitleBarHostCallbacks

Struct TitleBarHostCallbacks 

Source
pub struct TitleBarHostCallbacks {
    pub request_close: Rc<dyn Fn()>,
    pub post_external: Rc<dyn Fn(Box<dyn Any + Send>)>,
    pub teksilo_id: TeksiloWindowId,
}
Expand description

Callbacks the window manager hands to a platform host at construction time. Hosts invoke these for operations that must go through the event loop:

  • request_close: winit 0.30 has no synchronous Window::request_close, so the host posts a CloseWindowRequest and teksilo-app routes it to WindowManager::queue_close.
  • post_external: the Windows backend forwards WM_NCLBUTTONUP / WM_NCMOUSEMOVE over its custom title-bar buttons as TitleBarSyntheticEvent / TitleBarHoverEvent payloads through the same AppEvent::External arm. The closure abstracts the posting mechanism (a winit EventLoopProxy in production) so teksilo-core stays winit-free.
  • teksilo_id: the host’s window id, copied into the synthetic payloads so the dispatcher knows which window to address.

Fields§

§request_close: Rc<dyn Fn()>§post_external: Rc<dyn Fn(Box<dyn Any + Send>)>

Post a Box<dyn Any + Send> payload back to the application event loop. Currently used by the Windows backend for TitleBarSyntheticEvent and TitleBarHoverEvent. Wayland and macOS construct hosts that never call this.

§teksilo_id: TeksiloWindowId

teksilo-side window id. The Windows backend stamps this into every synthetic payload it posts so the app dispatcher can route into the right WidgetTree.

Implementations§

Source§

impl TitleBarHostCallbacks

Source

pub fn noop() -> Self

Callbacks that do nothing. Useful for tests and for platform stubs that never construct a host (a headless build, or X11 with no EWMH-capable window manager).

Trait Implementations§

Source§

impl Clone for TitleBarHostCallbacks

Source§

fn clone(&self) -> TitleBarHostCallbacks

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for TitleBarHostCallbacks

Source§

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

Formats the value using the given formatter. Read more

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> CloneToUninit for T
where T: Clone,

Source§

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

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

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> 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<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

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>,

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.