pub struct FocusManager { /* private fields */ }Expand description
Stores the single keyboard-focus owner for one input router.
This type does not validate whether the ID exists or is focusable; routing code is responsible for clearing stale IDs and dispatching focus events.
§Examples
use ailloli_ui_core::ElementId;
use ailloli_ui_runtime::input::FocusManager;
let mut focus = FocusManager::default();
focus.set_focused(Some(ElementId(7)));
assert_eq!(focus.focused(), Some(ElementId(7)));Implementations§
Source§impl FocusManager
Provides the operations defined for FocusManager.
impl FocusManager
Provides the operations defined for FocusManager.
Sourcepub fn focused(&self) -> Option<ElementId>
pub fn focused(&self) -> Option<ElementId>
Returns the current focus owner, or None when nothing is focused.
§Examples
use ailloli_ui_runtime::input::FocusManager;
assert_eq!(FocusManager::default().focused(), None);Sourcepub fn set_focused(&mut self, id: Option<ElementId>)
pub fn set_focused(&mut self, id: Option<ElementId>)
Replaces the focus owner without dispatching events or invalidating paint.
Passing None clears focus. Unknown IDs are stored unchanged.
§Examples
use ailloli_ui_core::ElementId;
use ailloli_ui_runtime::input::FocusManager;
let mut focus = FocusManager::default();
focus.set_focused(Some(ElementId(2)));
focus.set_focused(None);
assert_eq!(focus.focused(), None);Trait Implementations§
Source§impl Clone for FocusManager
impl Clone for FocusManager
Source§fn clone(&self) -> FocusManager
fn clone(&self) -> FocusManager
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FocusManager
impl Debug for FocusManager
Source§impl Default for FocusManager
impl Default for FocusManager
Source§fn default() -> FocusManager
fn default() -> FocusManager
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for FocusManager
impl RefUnwindSafe for FocusManager
impl Send for FocusManager
impl Sync for FocusManager
impl Unpin for FocusManager
impl UnwindSafe for FocusManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<A> IntoClickAction<A> for Awhere
A: Clone + 'static,
impl<A> IntoClickAction<A> for Awhere
A: Clone + 'static,
Source§fn into_click_action(self) -> ClickAction<A>
fn into_click_action(self) -> ClickAction<A>
Implements the into_click_action helper used by this module.