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.zip rockbox-5e91ec14011656d8952007aceb99189cd28786ba.tar.gz rockbox-5e91ec14011656d8952007aceb99189cd28786ba.tar.bz2 rockbox-5e91ec14011656d8952007aceb99189cd28786ba.tar.xz | |
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 c97dce9..8f13f4b 100644 --- a/apps/plugins/doom/i_video.c +++ b/apps/plugins/doom/i_video.c @@ -402,10 +402,9 @@ void I_ShutdownGraphics(void) #define DOOMBUTTON_RIGHT BUTTON_RIGHT #define DOOMBUTTON_SHOOT BUTTON_PLAY #define DOOMBUTTON_OPEN BUTTON_REW -#define DOOMBUTTON_ESC BUTTON_REC_SW_ON -#define DOOMBUTTON_ESC2 BUTTON_REC_SW_OFF #define DOOMBUTTON_ENTER BUTTON_PLAY #define DOOMBUTTON_WEAPON BUTTON_FFWD +#define DOOMBUTTON_REC_SWITCH /* record switch toggles run mode; in game menu via hold switch */ #elif CONFIG_KEYPAD == SAMSUNG_YH820_PAD #define DOOMBUTTON_UP BUTTON_UP @@ -618,7 +617,7 @@ static inline void getkey() hswitch=0; } #if (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ - (CONFIG_KEYPAD == IPOD_1G2G_PAD) + (CONFIG_KEYPAD == IPOD_1G2G_PAD) || (CONFIG_KEYPAD == SAMSUNG_YH920_PAD) /* Bring up the menu */ event.data1=KEY_ESCAPE; #else @@ -630,10 +629,12 @@ static inline void getkey() holdbutton=rb->button_hold(); #endif -#ifdef DOOMBUTTON_SCROLLWHEEL +#if defined(DOOMBUTTON_SCROLLWHEEL) || defined(DOOMBUTTON_REC_SWITCH) /* use button_get(false) for clickwheel checks */ int button; /* move me */ button = rb->button_get(false); + +#ifdef DOOMBUTTON_SCROLLWHEEL switch(button){ case DOOMBUTTON_SCROLLWHEEL_CC | BUTTON_REPEAT: case DOOMBUTTON_SCROLLWHEEL_CC: @@ -649,6 +650,16 @@ static inline void getkey() D_PostEvent(&event); break; } +#endif +#ifdef DOOMBUTTON_REC_SWITCH + if (button==BUTTON_REC_SW_ON || button==BUTTON_REC_SW_OFF) { + event.type = ev_keydown; + event.data1=KEY_CAPSLOCK; /* Enable run */ + D_PostEvent(&event); + event.type = ev_keyup; + D_PostEvent(&event); + } +#endif #endif newbuttonstate = rb->button_status(); #ifdef DOOMBUTTON_SCROLLWHEEL @@ -696,11 +707,7 @@ static inline void getkey() D_PostEvent(&event); } #ifdef DOOMBUTTON_ESC - if(released & DOOMBUTTON_ESC -#ifdef DOOMBUTTON_ESC2 - || released & DOOMBUTTON_ESC2 -#endif - ) + if(released & DOOMBUTTON_ESC) { event.data1=KEY_ESCAPE; D_PostEvent(&event); @@ -762,11 +769,7 @@ static inline void getkey() D_PostEvent(&event); } #ifdef DOOMBUTTON_ESC - if(pressed & DOOMBUTTON_ESC -#ifdef DOOMBUTTON_ESC2 - || pressed & DOOMBUTTON_ESC2 -#endif - ) + if(pressed & DOOMBUTTON_ESC) { event.data1=KEY_ESCAPE; D_PostEvent(&event); |