diff options
| author | Sebastian Leonhardt <sebastian.leonhardt@web.de> | 2015-07-20 01:50:26 +0200 |
|---|---|---|
| committer | Gerrit Rockbox <gerrit@rockbox.org> | 2015-11-15 23:46:39 +0100 |
| commit | a507bb283782ee3adb1fc9ba0c6f094108ef558c (patch) | |
| tree | acae6cf04f8e34172375061b6fbdc11b6ffb84cb /apps/plugins/chessbox | |
| parent | a8758c953d50fb020b245d5739c41de113638b49 (diff) | |
| download | rockbox-a507bb283782ee3adb1fc9ba0c6f094108ef558c.zip rockbox-a507bb283782ee3adb1fc9ba0c6f094108ef558c.tar.gz rockbox-a507bb283782ee3adb1fc9ba0c6f094108ef558c.tar.bz2 rockbox-a507bb283782ee3adb1fc9ba0c6f094108ef558c.tar.xz | |
YH8xx,YH9xx: Keymap improvement
The main "innovation" in this patch are two "virtual buttons"
for the record switch on YH92x targets. When the switch state
changes, a single BUTTON_REC_SW_ON or .._OFF button event will
be generated. Thus keymap code can react on switching, but
not on the actual state of the switch.
Wherever sensible, the following user scheme is applied:
- use PLAY as confirm button
- use REW button or Long REW to exit
- use REC (YH820) or FFWD (YH92X) as modifier key for button combos
Change-Id: Ic8d1db9cc6869daed8dda98990dfdf7f6fd5d5a1
Diffstat (limited to 'apps/plugins/chessbox')
| -rw-r--r-- | apps/plugins/chessbox/chessbox.c | 4 | ||||
| -rw-r--r-- | apps/plugins/chessbox/chessbox_pgn.h | 26 |
2 files changed, 24 insertions, 6 deletions
diff --git a/apps/plugins/chessbox/chessbox.c b/apps/plugins/chessbox/chessbox.c index 906cc5d..be69f67 100644 --- a/apps/plugins/chessbox/chessbox.c +++ b/apps/plugins/chessbox/chessbox.c @@ -680,6 +680,10 @@ static struct cb_command cb_getcommand (void) { #ifdef CB_PLAY_PRE if (lastbutton != CB_PLAY_PRE) break; + /* fallthrough */ +#endif +#ifdef CB_PLAY_ALT + case CB_PLAY_ALT: #endif result.type = COMMAND_PLAY; return result; diff --git a/apps/plugins/chessbox/chessbox_pgn.h b/apps/plugins/chessbox/chessbox_pgn.h index 159bdf1..e38d7f4 100644 --- a/apps/plugins/chessbox/chessbox_pgn.h +++ b/apps/plugins/chessbox/chessbox_pgn.h @@ -357,16 +357,30 @@ #elif CONFIG_KEYPAD == ONDAVX777_PAD #define CB_MENU BUTTON_POWER -#elif (CONFIG_KEYPAD == SAMSUNG_YH820_PAD) || \ - (CONFIG_KEYPAD == SAMSUNG_YH920_PAD) -#define CB_SELECT BUTTON_FFWD +#elif CONFIG_KEYPAD == SAMSUNG_YH820_PAD +#define CB_SELECT BUTTON_PLAY #define CB_UP BUTTON_UP #define CB_DOWN BUTTON_DOWN #define CB_LEFT BUTTON_LEFT #define CB_RIGHT BUTTON_RIGHT -#define CB_PLAY BUTTON_PLAY -#define CB_LEVEL (BUTTON_REW|BUTTON_RIGHT) -#define CB_MENU (BUTTON_REW|BUTTON_LEFT) +#define CB_PLAY BUTTON_REC +#define CB_LEVEL BUTTON_FFWD +#define CB_MENU BUTTON_REW +#define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT) +#define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT) +#define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT) +#define CB_SCROLL_RIGHT (BUTTON_RIGHT|BUTTON_REPEAT) + +#elif CONFIG_KEYPAD == SAMSUNG_YH920_PAD +#define CB_SELECT BUTTON_PLAY +#define CB_UP BUTTON_UP +#define CB_DOWN BUTTON_DOWN +#define CB_LEFT BUTTON_LEFT +#define CB_RIGHT BUTTON_RIGHT +#define CB_PLAY BUTTON_REC_SW_ON +#define CB_PLAY_ALT BUTTON_REC_SW_OFF +#define CB_LEVEL BUTTON_FFWD +#define CB_MENU BUTTON_REW #define CB_SCROLL_UP (BUTTON_UP|BUTTON_REPEAT) #define CB_SCROLL_DOWN (BUTTON_DOWN|BUTTON_REPEAT) #define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT) |