moirai-pal 0.7.0

Platform Abstraction Layer for Moirai async I/O operations
Documentation
//! Thread-owned Win32 window, event and software-frame provider.
//!
//! The provider is deliberately smaller than a GUI toolkit. It owns one HWND,
//! translates the messages addressed to that HWND into bounded Rust values and
//! paints the last validated ARGB frame. Application state, widget policy,
//! authority and WebView hosting stay above this PAL boundary.

mod accessibility;
mod config;
mod event;
mod hotkey;
mod input;
mod menu_bar;
mod native;
mod placement;
mod popup_menu;
mod present;
mod state;
mod tray;

pub use accessibility::{
    AccessibilityAction, AccessibilityActionRequest, AccessibilityNode, AccessibilityRole,
    AccessibilityTree, MAX_ACCESSIBILITY_ACTIONS, MAX_ACCESSIBILITY_NODES,
    MAX_ACCESSIBILITY_TEXT_BYTES,
};
pub use config::{
    MAX_COMPOSITION_UNITS, MAX_FRAME_DIMENSION, MAX_FRAME_PIXELS, MAX_PUMP_MESSAGES,
    MAX_TITLE_UNITS, MAX_WAIT_MILLISECONDS, MAX_WINDOW_EVENTS, WindowConfig, WindowVisibility,
};
pub use event::{CompositionPhase, ModifierState, MouseButton, WindowEvent};
pub use hotkey::{
    GlobalHotkey, HotkeyId, MAX_GLOBAL_HOTKEYS, MAX_HOTKEY_ID, MAX_PENDING_HOTKEY_PRESSES,
};
pub use menu_bar::{MAX_MENU_BAR_MENUS, MAX_PENDING_MENU_COMMANDS, MenuBar, MenuCommand};
pub use native::NativeWindow;
pub use placement::{MAX_PLACEMENT_COORDINATE, WindowPlacement};
pub use popup_menu::{MAX_POPUP_MENU_ITEMS, MAX_POPUP_MENU_LABEL_UNITS, PopupMenu, PopupMenuItem};
pub use present::FrameRegion;
pub use tray::{
    MAX_NOTIFICATION_BODY_UNITS, MAX_NOTIFICATION_TITLE_UNITS, MAX_PENDING_TRAY_EVENTS,
    MAX_TRAY_TOOLTIP_UNITS, TRAY_ICON_SIZES, TrayEvent, TrayIconImage,
};

#[cfg(test)]
mod tests;