diff options
author | Sebastian Leonhardt <sebastian.leonhardt@web.de> | 2015-12-27 18:14:41 +0100 |
---|---|---|
committer | Sebastian Leonhardt <sebastian.leonhardt@web.de> | 2015-12-27 18:14:41 +0100 |
commit | 5e91ec14011656d8952007aceb99189cd28786ba (patch) | |
tree | 6e0d8a4850f5f7ec85f01bf599e840c25659881f /apps/plugins/doom | |
parent | ad65f8cc71bfe9e98936d5f781263850a9d50cc0 (diff) | |
download | rockbox-5e91ec14011656d8952007aceb99189cd28786ba.tar.gz rockbox-5e91ec14011656d8952007aceb99189cd28786ba.zip |
Samsung YH820/92x keymap bugfixes
This patch fixes some (mostly small) plugin issues with the "big"
YH-keymap patch (a507b). Only one fix affects the main keymaps
(virtual keyboard "DONE" now exits after long key /release/ instead
of long button /press/).
Change-Id: Id34f925ebfa97ae4974cd9405fbe1fee4f597833
Diffstat (limited to 'apps/plugins/doom')
-rw-r--r-- | apps/plugins/doom/i_video.c | 31 |
1 files changed, 17 insertions, 14 deletions
diff --git a/apps/plugins/doom/i_video.c b/apps/plugins/doom/i_video.c index c97dce9821..8f13f4b9cd 100644 --- a/apps/plugins/doom/i_video.c +++ b/apps/plugins/doom/i_video.c | |||
@@ -402,10 +402,9 @@ void I_ShutdownGraphics(void) | |||
402 | #define DOOMBUTTON_RIGHT BUTTON_RIGHT | 402 | #define DOOMBUTTON_RIGHT BUTTON_RIGHT |
403 | #define DOOMBUTTON_SHOOT BUTTON_PLAY | 403 | #define DOOMBUTTON_SHOOT BUTTON_PLAY |
404 | #define DOOMBUTTON_OPEN BUTTON_REW | 404 | #define DOOMBUTTON_OPEN BUTTON_REW |
405 | #define DOOMBUTTON_ESC BUTTON_REC_SW_ON | ||
406 | #define DOOMBUTTON_ESC2 BUTTON_REC_SW_OFF | ||
407 | #define DOOMBUTTON_ENTER BUTTON_PLAY | 405 | #define DOOMBUTTON_ENTER BUTTON_PLAY |
408 | #define DOOMBUTTON_WEAPON BUTTON_FFWD | 406 | #define DOOMBUTTON_WEAPON BUTTON_FFWD |
407 | #define DOOMBUTTON_REC_SWITCH /* record switch toggles run mode; in game menu via hold switch */ | ||
409 | 408 | ||
410 | #elif CONFIG_KEYPAD == SAMSUNG_YH820_PAD | 409 | #elif CONFIG_KEYPAD == SAMSUNG_YH820_PAD |
411 | #define DOOMBUTTON_UP BUTTON_UP | 410 | #define DOOMBUTTON_UP BUTTON_UP |
@@ -618,7 +617,7 @@ static inline void getkey() | |||
618 | hswitch=0; | 617 | hswitch=0; |
619 | } | 618 | } |
620 | #if (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 619 | #if (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
621 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 620 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) || (CONFIG_KEYPAD == SAMSUNG_YH920_PAD) |
622 | /* Bring up the menu */ | 621 | /* Bring up the menu */ |
623 | event.data1=KEY_ESCAPE; | 622 | event.data1=KEY_ESCAPE; |
624 | #else | 623 | #else |
@@ -630,10 +629,12 @@ static inline void getkey() | |||
630 | holdbutton=rb->button_hold(); | 629 | holdbutton=rb->button_hold(); |
631 | #endif | 630 | #endif |
632 | 631 | ||
633 | #ifdef DOOMBUTTON_SCROLLWHEEL | 632 | #if defined(DOOMBUTTON_SCROLLWHEEL) || defined(DOOMBUTTON_REC_SWITCH) |
634 | /* use button_get(false) for clickwheel checks */ | 633 | /* use button_get(false) for clickwheel checks */ |
635 | int button; /* move me */ | 634 | int button; /* move me */ |
636 | button = rb->button_get(false); | 635 | button = rb->button_get(false); |
636 | |||
637 | #ifdef DOOMBUTTON_SCROLLWHEEL | ||
637 | switch(button){ | 638 | switch(button){ |
638 | case DOOMBUTTON_SCROLLWHEEL_CC | BUTTON_REPEAT: | 639 | case DOOMBUTTON_SCROLLWHEEL_CC | BUTTON_REPEAT: |
639 | case DOOMBUTTON_SCROLLWHEEL_CC: | 640 | case DOOMBUTTON_SCROLLWHEEL_CC: |
@@ -649,6 +650,16 @@ static inline void getkey() | |||
649 | D_PostEvent(&event); | 650 | D_PostEvent(&event); |
650 | break; | 651 | break; |
651 | } | 652 | } |
653 | #endif | ||
654 | #ifdef DOOMBUTTON_REC_SWITCH | ||
655 | if (button==BUTTON_REC_SW_ON || button==BUTTON_REC_SW_OFF) { | ||
656 | event.type = ev_keydown; | ||
657 | event.data1=KEY_CAPSLOCK; /* Enable run */ | ||
658 | D_PostEvent(&event); | ||
659 | event.type = ev_keyup; | ||
660 | D_PostEvent(&event); | ||
661 | } | ||
662 | #endif | ||
652 | #endif | 663 | #endif |
653 | newbuttonstate = rb->button_status(); | 664 | newbuttonstate = rb->button_status(); |
654 | #ifdef DOOMBUTTON_SCROLLWHEEL | 665 | #ifdef DOOMBUTTON_SCROLLWHEEL |
@@ -696,11 +707,7 @@ static inline void getkey() | |||
696 | D_PostEvent(&event); | 707 | D_PostEvent(&event); |
697 | } | 708 | } |
698 | #ifdef DOOMBUTTON_ESC | 709 | #ifdef DOOMBUTTON_ESC |
699 | if(released & DOOMBUTTON_ESC | 710 | if(released & DOOMBUTTON_ESC) |
700 | #ifdef DOOMBUTTON_ESC2 | ||
701 | || released & DOOMBUTTON_ESC2 | ||
702 | #endif | ||
703 | ) | ||
704 | { | 711 | { |
705 | event.data1=KEY_ESCAPE; | 712 | event.data1=KEY_ESCAPE; |
706 | D_PostEvent(&event); | 713 | D_PostEvent(&event); |
@@ -762,11 +769,7 @@ static inline void getkey() | |||
762 | D_PostEvent(&event); | 769 | D_PostEvent(&event); |
763 | } | 770 | } |
764 | #ifdef DOOMBUTTON_ESC | 771 | #ifdef DOOMBUTTON_ESC |
765 | if(pressed & DOOMBUTTON_ESC | 772 | if(pressed & DOOMBUTTON_ESC) |
766 | #ifdef DOOMBUTTON_ESC2 | ||
767 | || pressed & DOOMBUTTON_ESC2 | ||
768 | #endif | ||
769 | ) | ||
770 | { | 773 | { |
771 | event.data1=KEY_ESCAPE; | 774 | event.data1=KEY_ESCAPE; |
772 | D_PostEvent(&event); | 775 | D_PostEvent(&event); |