1
0
Fork 0
forked from wry/wry

seat: add FallbackOutputMode

This commit is contained in:
Julian Orth 2026-02-24 20:00:45 +01:00
parent ca6e3891af
commit 727a1bc68b
2 changed files with 35 additions and 1 deletions

View file

@ -106,10 +106,11 @@ use {
},
ahash::AHashMap,
jay_config::{
input::FallbackOutputMode,
input::FallbackOutputMode as ConfigFallbackOutputMode,
keyboard::syms::{KeySym, SYM_Escape},
},
kbvm::Keycode,
linearize::Linearize,
run_on_drop::on_drop,
smallvec::SmallVec,
std::{
@ -258,6 +259,34 @@ enum MarkMode {
Jump,
}
#[derive(Copy, Clone, Debug, Hash, Eq, PartialEq, Linearize)]
pub enum FallbackOutputMode {
Cursor,
Focus,
}
impl TryFrom<ConfigFallbackOutputMode> for FallbackOutputMode {
type Error = ();
fn try_from(value: ConfigFallbackOutputMode) -> Result<Self, Self::Error> {
let v = match value {
ConfigFallbackOutputMode::Cursor => FallbackOutputMode::Cursor,
ConfigFallbackOutputMode::Focus => FallbackOutputMode::Focus,
_ => return Err(()),
};
Ok(v)
}
}
impl Into<ConfigFallbackOutputMode> for FallbackOutputMode {
fn into(self) -> ConfigFallbackOutputMode {
match self {
FallbackOutputMode::Cursor => ConfigFallbackOutputMode::Cursor,
FallbackOutputMode::Focus => ConfigFallbackOutputMode::Focus,
}
}
}
const CHANGE_CURSOR_MOVED: u32 = 1 << 0;
const CHANGE_TREE: u32 = 1 << 1;