freya_winit/
accessibility.rs1use std::{
2 mem,
3 ops::BitOrAssign,
4};
5
6use freya_core::prelude::NavigationMode;
7
8#[derive(Hash, PartialEq, Eq)]
9pub enum AccessibilityTask {
10 Init,
11 ProcessUpdate { mode: Option<NavigationMode> },
12 None,
13}
14
15impl AccessibilityTask {
16 pub fn take(&mut self) -> Self {
17 mem::replace(self, Self::None)
18 }
19}
20
21impl BitOrAssign for AccessibilityTask {
22 fn bitor_assign(&mut self, rhs: Self) {
23 if self == &Self::None {
24 *self = rhs
25 }
26 }
27}