File tree Expand file tree Collapse file tree 1 file changed +5
-3
lines changed
Expand file tree Collapse file tree 1 file changed +5
-3
lines changed Original file line number Diff line number Diff 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,
You can’t perform that action at this time.
0 commit comments