@@ -155,44 +155,6 @@ inline int apply_shortcut(short keyCode) {
155
155
return 0 ;
156
156
}
157
157
158
- /* *
159
- * Update flags for keyboard shortcut combo's
160
- */
161
- inline void update_shortcutFlags (int *flags, short keyCode, bool release) {
162
- switch (keyCode) {
163
- case VKEY_SHIFT:
164
- case VKEY_LSHIFT:
165
- case VKEY_RSHIFT:
166
- if (release) {
167
- *flags &= ~input_t ::SHIFT;
168
- }
169
- else {
170
- *flags |= input_t ::SHIFT;
171
- }
172
- break ;
173
- case VKEY_CONTROL:
174
- case VKEY_LCONTROL:
175
- case VKEY_RCONTROL:
176
- if (release) {
177
- *flags &= ~input_t ::CTRL;
178
- }
179
- else {
180
- *flags |= input_t ::CTRL;
181
- }
182
- break ;
183
- case VKEY_MENU:
184
- case VKEY_LMENU:
185
- case VKEY_RMENU:
186
- if (release) {
187
- *flags &= ~input_t ::ALT;
188
- }
189
- else {
190
- *flags |= input_t ::ALT;
191
- }
192
- break ;
193
- }
194
- }
195
-
196
158
void print (PNV_REL_MOUSE_MOVE_PACKET packet) {
197
159
BOOST_LOG (debug)
198
160
<< " --begin relative mouse move packet--" sv << std::endl
@@ -396,27 +358,65 @@ void passthrough(std::shared_ptr<input_t> &input, PNV_MOUSE_BUTTON_PACKET packet
396
358
platf::button_mouse (platf_input, button, release);
397
359
}
398
360
361
+ short map_keycode (short keycode) {
362
+ auto it = config::input.keybindings .find (keycode);
363
+ if (it != std::end (config::input.keybindings )) {
364
+ return it->second ;
365
+ }
366
+
367
+ return keycode;
368
+ }
369
+
370
+ /* *
371
+ * Update flags for keyboard shortcut combo's
372
+ */
373
+ inline void update_shortcutFlags (int *flags, short keyCode, bool release) {
374
+ switch (map_keycode (keyCode)) {
375
+ case VKEY_SHIFT:
376
+ case VKEY_LSHIFT:
377
+ case VKEY_RSHIFT:
378
+ if (release) {
379
+ *flags &= ~input_t ::SHIFT;
380
+ }
381
+ else {
382
+ *flags |= input_t ::SHIFT;
383
+ }
384
+ break ;
385
+ case VKEY_CONTROL:
386
+ case VKEY_LCONTROL:
387
+ case VKEY_RCONTROL:
388
+ if (release) {
389
+ *flags &= ~input_t ::CTRL;
390
+ }
391
+ else {
392
+ *flags |= input_t ::CTRL;
393
+ }
394
+ break ;
395
+ case VKEY_MENU:
396
+ case VKEY_LMENU:
397
+ case VKEY_RMENU:
398
+ if (release) {
399
+ *flags &= ~input_t ::ALT;
400
+ }
401
+ else {
402
+ *flags |= input_t ::ALT;
403
+ }
404
+ break ;
405
+ }
406
+ }
407
+
399
408
void repeat_key (short key_code) {
400
409
// If key no longer pressed, stop repeating
401
410
if (!key_press[key_code]) {
402
411
key_press_repeat_id = nullptr ;
403
412
return ;
404
413
}
405
414
406
- platf::keyboard (platf_input, key_code, false );
415
+ platf::keyboard (platf_input, map_keycode ( key_code) , false );
407
416
408
417
key_press_repeat_id = task_pool.pushDelayed (repeat_key, config::input.key_repeat_period , key_code).task_id ;
409
418
}
410
419
411
- short map_keycode (short keycode) {
412
- auto it = config::input.keybindings .find (keycode);
413
- if (it != std::end (config::input.keybindings )) {
414
- return it->second ;
415
- }
416
-
417
- return keycode;
418
- }
419
-
420
420
void passthrough (std::shared_ptr<input_t > &input, PNV_KEYBOARD_PACKET packet) {
421
421
auto constexpr BUTTON_RELEASED = 0x04 ;
422
422
0 commit comments