112
*/
113
private static _scanCodeToKeyCode(scanCode: ScanCode): KeyCode {
115
>
if (immutableKeyCode !== KeyCode.DependsOnKbLayout) {
116
return immutableKeyCode;
117
}
119
>
switch (scanCode) {
120
>
case ScanCode.KeyA: return KeyCode.KeyA;
121
>
case ScanCode.KeyB: return KeyCode.KeyB;
122
>
case ScanCode.KeyC: return KeyCode.KeyC;
123
>
case ScanCode.KeyD: return KeyCode.KeyD;
124
>
case ScanCode.KeyE: return KeyCode.KeyE;
125
>
case ScanCode.KeyF: return KeyCode.KeyF;
126
>
case ScanCode.KeyG: return KeyCode.KeyG;
127
>
case ScanCode.KeyH: return KeyCode.KeyH;
128
>
case ScanCode.KeyI: return KeyCode.KeyI;
129
>
case ScanCode.KeyJ: return KeyCode.KeyJ;
130
>
case ScanCode.KeyK: return KeyCode.KeyK;
131
>
case ScanCode.KeyL: return KeyCode.KeyL;
132
>
case ScanCode.KeyM: return KeyCode.KeyM;
133
>
case ScanCode.KeyN: return KeyCode.KeyN;
134
>
case ScanCode.KeyO: return KeyCode.KeyO;
135
>
case ScanCode.KeyP: return KeyCode.KeyP;
136
>
case ScanCode.KeyQ: return KeyCode.KeyQ;
137
>
case ScanCode.KeyR: return KeyCode.KeyR;
138
>
case ScanCode.KeyS: return KeyCode.KeyS;
139
>
case ScanCode.KeyT: return KeyCode.KeyT;
140
>
case ScanCode.KeyU: return KeyCode.KeyU;
141
>
case ScanCode.KeyV: return KeyCode.KeyV;
142
>
case ScanCode.KeyW: return KeyCode.KeyW;
143
>
case ScanCode.KeyX: return KeyCode.KeyX;
144
>
case ScanCode.KeyY: return KeyCode.KeyY;
145
>
case ScanCode.KeyZ: return KeyCode.KeyZ;
146
>
case ScanCode.Digit1: return KeyCode.Digit1;
147
>
case ScanCode.Digit2: return KeyCode.Digit2;
148
>
case ScanCode.Digit3: return KeyCode.Digit3;
149
>
case ScanCode.Digit4: return KeyCode.Digit4;
150
>
case ScanCode.Digit5: return KeyCode.Digit5;
151
>
case ScanCode.Digit6: return KeyCode.Digit6;
152
>
case ScanCode.Digit7: return KeyCode.Digit7;
153
>
case ScanCode.Digit8: return KeyCode.Digit8;
154
>
case ScanCode.Digit9: return KeyCode.Digit9;
155
>
case ScanCode.Digit0: return KeyCode.Digit0;
156
>
case ScanCode.Minus: return KeyCode.Minus;
157
>
case ScanCode.Equal: return KeyCode.Equal;
158
>
case ScanCode.BracketLeft: return KeyCode.BracketLeft;
159
>
case ScanCode.BracketRight: return KeyCode.BracketRight;
160
>
case ScanCode.Backslash: return KeyCode.Backslash;
161
>
case ScanCode.IntlHash: return KeyCode.Unknown; // missing
162
>
case ScanCode.Semicolon: return KeyCode.Semicolon;
163
>
case ScanCode.Quote: return KeyCode.Quote;
164
>
case ScanCode.Backquote: return KeyCode.Backquote;
165
>
case ScanCode.Comma: return KeyCode.Comma;
166
>
case ScanCode.Period: return KeyCode.Period;
167
>
case ScanCode.Slash: return KeyCode.Slash;
168
>
case ScanCode.IntlBackslash: return KeyCode.IntlBackslash;
169
>
}
170
return KeyCode.Unknown;
172
173
private static _toKeyCodeChord(chord: Chord | null): KeyCodeChord | null {