input: Add the Shift-modifier

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/696>
This commit is contained in:
MoonlightWave-12
2024-11-05 11:04:40 +01:00
parent c8c4653432
commit f5558e6112
3 changed files with 5 additions and 0 deletions

View File

@ -15,6 +15,7 @@ pub enum Modifier {
/// Control and Alt are the only modifiers
/// which doesn't interfere with levels,
/// so it's simple to implement as levels are deprecated in squeekboard.
Shift,
Control,
Alt,
Mod4,

View File

@ -420,6 +420,9 @@ fn create_action<H: logging::Handler>(
}).collect(),
},
SubmitData::Modifier(modifier) => match modifier {
Modifier::Shift => action::Action::ApplyModifier(
action::Modifier::Shift,
),
Modifier::Control => action::Action::ApplyModifier(
action::Modifier::Control,
),

View File

@ -238,6 +238,7 @@ impl Submission {
fn update_modifiers(&mut self) {
let raw_modifiers = self.modifiers_active.iter()
.map(|(_id, m)| match m {
Modifier::Shift => Modifiers::SHIFT,
Modifier::Control => Modifiers::CONTROL,
Modifier::Alt => Modifiers::MOD1,
Modifier::Mod4 => Modifiers::MOD4,