@@ -673,14 +673,14 @@ where
673
673
state : KeyState :: Down ,
674
674
} => {
675
675
self . modifiers . lshift = true ;
676
- None
676
+ Some ( DecodedKey :: RawKey ( KeyCode :: LShift ) )
677
677
}
678
678
KeyEvent {
679
679
code : KeyCode :: RShift ,
680
680
state : KeyState :: Down ,
681
681
} => {
682
682
self . modifiers . rshift = true ;
683
- None
683
+ Some ( DecodedKey :: RawKey ( KeyCode :: RShift ) )
684
684
}
685
685
KeyEvent {
686
686
code : KeyCode :: LShift ,
@@ -701,7 +701,7 @@ where
701
701
state : KeyState :: Down ,
702
702
} => {
703
703
self . modifiers . capslock = !self . modifiers . capslock ;
704
- None
704
+ Some ( DecodedKey :: RawKey ( KeyCode :: CapsLock ) )
705
705
}
706
706
KeyEvent {
707
707
code : KeyCode :: NumpadLock ,
@@ -714,15 +714,15 @@ where
714
714
} else {
715
715
// It's a numlock toggle
716
716
self . modifiers . numlock = !self . modifiers . numlock ;
717
- None
717
+ Some ( DecodedKey :: RawKey ( KeyCode :: NumpadLock ) )
718
718
}
719
719
}
720
720
KeyEvent {
721
721
code : KeyCode :: LControl ,
722
722
state : KeyState :: Down ,
723
723
} => {
724
724
self . modifiers . lctrl = true ;
725
- None
725
+ Some ( DecodedKey :: RawKey ( KeyCode :: LControl ) )
726
726
}
727
727
KeyEvent {
728
728
code : KeyCode :: LControl ,
@@ -736,7 +736,7 @@ where
736
736
state : KeyState :: Down ,
737
737
} => {
738
738
self . modifiers . rctrl = true ;
739
- None
739
+ Some ( DecodedKey :: RawKey ( KeyCode :: RControl ) )
740
740
}
741
741
KeyEvent {
742
742
code : KeyCode :: RControl ,
@@ -750,7 +750,7 @@ where
750
750
state : KeyState :: Down ,
751
751
} => {
752
752
self . modifiers . alt_gr = true ;
753
- None
753
+ Some ( DecodedKey :: RawKey ( KeyCode :: RAltGr ) )
754
754
}
755
755
KeyEvent {
756
756
code : KeyCode :: RAltGr ,
@@ -764,7 +764,7 @@ where
764
764
state : KeyState :: Down ,
765
765
} => {
766
766
self . modifiers . rctrl2 = true ;
767
- None
767
+ Some ( DecodedKey :: RawKey ( KeyCode :: RControl2 ) )
768
768
}
769
769
KeyEvent {
770
770
code : KeyCode :: RControl2 ,
@@ -1019,7 +1019,10 @@ mod test {
1019
1019
) ;
1020
1020
let test_sequence = [
1021
1021
// A with left shift held
1022
- ( KeyEvent :: new ( KeyCode :: LShift , KeyState :: Down ) , None ) ,
1022
+ (
1023
+ KeyEvent :: new ( KeyCode :: LShift , KeyState :: Down ) ,
1024
+ Some ( DecodedKey :: RawKey ( KeyCode :: LShift ) ) ,
1025
+ ) ,
1023
1026
(
1024
1027
KeyEvent :: new ( KeyCode :: A , KeyState :: Down ) ,
1025
1028
Some ( DecodedKey :: Unicode ( 'A' ) ) ,
@@ -1033,15 +1036,21 @@ mod test {
1033
1036
) ,
1034
1037
( KeyEvent :: new ( KeyCode :: A , KeyState :: Up ) , None ) ,
1035
1038
// A with right shift held
1036
- ( KeyEvent :: new ( KeyCode :: RShift , KeyState :: Down ) , None ) ,
1039
+ (
1040
+ KeyEvent :: new ( KeyCode :: RShift , KeyState :: Down ) ,
1041
+ Some ( DecodedKey :: RawKey ( KeyCode :: RShift ) ) ,
1042
+ ) ,
1037
1043
(
1038
1044
KeyEvent :: new ( KeyCode :: A , KeyState :: Down ) ,
1039
1045
Some ( DecodedKey :: Unicode ( 'A' ) ) ,
1040
1046
) ,
1041
1047
( KeyEvent :: new ( KeyCode :: A , KeyState :: Up ) , None ) ,
1042
1048
( KeyEvent :: new ( KeyCode :: RShift , KeyState :: Up ) , None ) ,
1043
1049
// Caps lock ON
1044
- ( KeyEvent :: new ( KeyCode :: CapsLock , KeyState :: Down ) , None ) ,
1050
+ (
1051
+ KeyEvent :: new ( KeyCode :: CapsLock , KeyState :: Down ) ,
1052
+ Some ( DecodedKey :: RawKey ( KeyCode :: CapsLock ) ) ,
1053
+ ) ,
1045
1054
( KeyEvent :: new ( KeyCode :: CapsLock , KeyState :: Up ) , None ) ,
1046
1055
// Letters are now caps
1047
1056
(
@@ -1050,7 +1059,10 @@ mod test {
1050
1059
) ,
1051
1060
( KeyEvent :: new ( KeyCode :: X , KeyState :: Up ) , None ) ,
1052
1061
// Unless you press shift
1053
- ( KeyEvent :: new ( KeyCode :: RShift , KeyState :: Down ) , None ) ,
1062
+ (
1063
+ KeyEvent :: new ( KeyCode :: RShift , KeyState :: Down ) ,
1064
+ Some ( DecodedKey :: RawKey ( KeyCode :: RShift ) ) ,
1065
+ ) ,
1054
1066
(
1055
1067
KeyEvent :: new ( KeyCode :: A , KeyState :: Down ) ,
1056
1068
Some ( DecodedKey :: Unicode ( 'a' ) ) ,
@@ -1083,7 +1095,10 @@ mod test {
1083
1095
) ,
1084
1096
( KeyEvent :: new ( KeyCode :: A , KeyState :: Up ) , None ) ,
1085
1097
// Left Control
1086
- ( KeyEvent :: new ( KeyCode :: LControl , KeyState :: Down ) , None ) ,
1098
+ (
1099
+ KeyEvent :: new ( KeyCode :: LControl , KeyState :: Down ) ,
1100
+ Some ( DecodedKey :: RawKey ( KeyCode :: LControl ) ) ,
1101
+ ) ,
1087
1102
(
1088
1103
KeyEvent :: new ( KeyCode :: A , KeyState :: Down ) ,
1089
1104
Some ( DecodedKey :: Unicode ( '\u{0001}' ) ) ,
@@ -1097,7 +1112,10 @@ mod test {
1097
1112
) ,
1098
1113
( KeyEvent :: new ( KeyCode :: A , KeyState :: Up ) , None ) ,
1099
1114
// Right Control
1100
- ( KeyEvent :: new ( KeyCode :: RControl , KeyState :: Down ) , None ) ,
1115
+ (
1116
+ KeyEvent :: new ( KeyCode :: RControl , KeyState :: Down ) ,
1117
+ Some ( DecodedKey :: RawKey ( KeyCode :: RControl ) ) ,
1118
+ ) ,
1101
1119
(
1102
1120
KeyEvent :: new ( KeyCode :: A , KeyState :: Down ) ,
1103
1121
Some ( DecodedKey :: Unicode ( '\u{0001}' ) ) ,
@@ -1124,7 +1142,10 @@ mod test {
1124
1142
) ,
1125
1143
( KeyEvent :: new ( KeyCode :: Numpad0 , KeyState :: Up ) , None ) ,
1126
1144
// Numlock OFF
1127
- ( KeyEvent :: new ( KeyCode :: NumpadLock , KeyState :: Down ) , None ) ,
1145
+ (
1146
+ KeyEvent :: new ( KeyCode :: NumpadLock , KeyState :: Down ) ,
1147
+ Some ( DecodedKey :: RawKey ( KeyCode :: NumpadLock ) ) ,
1148
+ ) ,
1128
1149
( KeyEvent :: new ( KeyCode :: NumpadLock , KeyState :: Up ) , None ) ,
1129
1150
// Now KP_0 produces INSERT
1130
1151
(
@@ -1358,7 +1379,7 @@ mod test {
1358
1379
code : KeyCode :: RControl2 ,
1359
1380
state : KeyState :: Down ,
1360
1381
} ,
1361
- None ,
1382
+ Some ( DecodedKey :: RawKey ( KeyCode :: RControl2 ) ) ,
1362
1383
) ,
1363
1384
// Numlock
1364
1385
(
0 commit comments