Skip to content

Commit 748f516

Browse files
rustysecrustysec
andauthored
sync sessionlock key handler with layershell (#304)
Co-authored-by: rustysec <russ@infocyte.com>
1 parent 771da29 commit 748f516

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

sessionlockev/src/lib.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -881,16 +881,18 @@ impl<T> Dispatch<wl_keyboard::WlKeyboard, ()> for WindowState<T> {
881881
};
882882
state.message.push((surface_id, event));
883883
}
884+
884885
match pressed_state {
885886
ElementState::Pressed => {
886887
let delay = match keyboard_state.repeat_info {
887888
RepeatInfo::Repeat { delay, .. } => delay,
888889
RepeatInfo::Disable => return,
889890
};
890-
if !keyboard_state
891+
892+
if keyboard_state
891893
.xkb_context
892894
.keymap_mut()
893-
.is_some_and(|keymap| keymap.key_repeats(key))
895+
.is_none_or(|keymap| !keymap.key_repeats(key))
894896
{
895897
return;
896898
}
@@ -906,7 +908,7 @@ impl<T> Dispatch<wl_keyboard::WlKeyboard, ()> for WindowState<T> {
906908
let timer = Timer::from_duration(delay);
907909

908910
if let Some(looph) = state.loop_handler.as_ref() {
909-
looph
911+
keyboard_state.repeat_token = looph
910912
.insert_source(timer, move |_, _, state| {
911913
let keyboard_state = match state.keyboard_state.as_mut() {
912914
Some(keyboard_state) => keyboard_state,

0 commit comments

Comments
 (0)