From 07135818c4a7669e4839136ebc97e52274f84baa Mon Sep 17 00:00:00 2001 From: kugel Date: Sat, 29 Aug 2009 22:18:02 +0000 Subject: [PATCH] Samsung YH: Many keymap fixes for keyboard screen, wps, set time/date and quickscreen. Little kludge for quickscreen: Entering the quickscreen requires pressing 2 directional buttons (left and down), but that's really easy to do actually, much easier than messing with the side buttons (which don't even work reliably), accidental option changes shouldn't be possible due to use of precondition. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22551 a1c6a512-1295-4272-9138-f99709370657 --- apps/keymaps/keymap-yh8xx_yh9xx.c | 51 ++++++++++++++++++++------------------- apps/recorder/keyboard.c | 8 +++--- 2 files changed, 29 insertions(+), 30 deletions(-) diff --git a/apps/keymaps/keymap-yh8xx_yh9xx.c b/apps/keymaps/keymap-yh8xx_yh9xx.c index 7e65749f5..8a45b5cf6 100755 --- a/apps/keymaps/keymap-yh8xx_yh9xx.c +++ b/apps/keymaps/keymap-yh8xx_yh9xx.c @@ -48,16 +48,17 @@ CONTEXT_CUSTOM|CONTEXT_SETTINGS = the direction keys for the eq/col picker scree static const struct button_mapping button_context_standard[] = { { ACTION_STD_OK, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, - { ACTION_STD_CANCEL, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, + { ACTION_STD_CANCEL, BUTTON_LEFT, BUTTON_NONE }, { ACTION_STD_PREV, BUTTON_UP, BUTTON_NONE }, { ACTION_STD_PREVREPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_STD_NEXT, BUTTON_DOWN, BUTTON_NONE }, { ACTION_STD_NEXTREPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_MENU, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, { ACTION_STD_CONTEXT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, - { ACTION_STD_QUICKSCREEN, BUTTON_FFWD|BUTTON_RIGHT, BUTTON_FFWD }, + /* kludge: pressing 2 directional buttons is easy on this target */ + { ACTION_STD_QUICKSCREEN, BUTTON_LEFT|BUTTON_DOWN|BUTTON_REPEAT, + BUTTON_LEFT|BUTTON_DOWN|BUTTON_REPEAT }, { ACTION_STD_REC, BUTTON_REC|BUTTON_REPEAT, BUTTON_NONE }, @@ -81,18 +82,20 @@ static const struct button_mapping button_context_wps[] = { { ACTION_WPS_ABRESET, BUTTON_PLAY|BUTTON_UP, BUTTON_PLAY }, { ACTION_WPS_VOLDOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_WPS_VOLDOWN, BUTTON_DOWN, BUTTON_NONE }, + { ACTION_WPS_VOLDOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_NONE }, { ACTION_WPS_VOLUP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_WPS_VOLUP, BUTTON_UP, BUTTON_NONE }, - { ACTION_WPS_BROWSE, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, + { ACTION_WPS_BROWSE, BUTTON_RIGHT|BUTTON_REL, BUTTON_NONE }, /* these match context_standard */ - { ACTION_WPS_MENU, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, - { ACTION_WPS_VIEW_PLAYLIST, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, + { ACTION_WPS_MENU, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, { ACTION_WPS_CONTEXT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, - { ACTION_WPS_QUICKSCREEN, BUTTON_FFWD|BUTTON_RIGHT, BUTTON_FFWD }, + /* kludge: pressing 2 directional buttons is easy on this target */ + { ACTION_WPS_QUICKSCREEN, BUTTON_LEFT|BUTTON_DOWN|BUTTON_REPEAT, + BUTTON_LEFT|BUTTON_DOWN|BUTTON_REPEAT }, + { ACTION_WPS_VIEW_PLAYLIST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, { ACTION_WPS_REC, BUTTON_REC|BUTTON_REPEAT, BUTTON_NONE }, LAST_ITEM_IN_LIST @@ -150,10 +153,11 @@ static const struct button_mapping button_context_settings[] = { { ACTION_SETTINGS_DEC, BUTTON_DOWN, BUTTON_NONE }, { ACTION_SETTINGS_DECREPEAT,BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_PREV, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, + { ACTION_STD_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_NONE }, { ACTION_STD_PREVREPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_STD_NEXT, BUTTON_RIGHT, BUTTON_NONE }, + { ACTION_STD_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_NONE }, { ACTION_STD_NEXTREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_SETTINGS_RESET, BUTTON_PLAY, BUTTON_NONE }, @@ -212,16 +216,18 @@ static const struct button_mapping button_context_time[] = { static const struct button_mapping button_context_quickscreen[] = { { ACTION_NONE, BUTTON_LEFT, BUTTON_NONE }, - { ACTION_QS_TOP, BUTTON_UP, BUTTON_NONE }, + { ACTION_NONE, BUTTON_LEFT|BUTTON_DOWN|BUTTON_REL,BUTTON_NONE }, + + { ACTION_QS_TOP, BUTTON_UP|BUTTON_REL, BUTTON_UP }, { ACTION_QS_TOP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_QS_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_NONE }, + { ACTION_QS_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, { ACTION_QS_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_NONE }, + { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, { ACTION_QS_LEFT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_NONE }, + { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, { ACTION_QS_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_STD_CANCEL, BUTTON_PLAY, BUTTON_NONE }, @@ -282,23 +288,18 @@ static const struct button_mapping button_context_keyboard[] = { { ACTION_KBD_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, { ACTION_KBD_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_KBD_CURSOR_LEFT, BUTTON_REW, BUTTON_NONE }, + { ACTION_KBD_CURSOR_LEFT, BUTTON_REW|BUTTON_REL, BUTTON_FFWD }, { ACTION_KBD_CURSOR_LEFT, BUTTON_REW|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_KBD_CURSOR_RIGHT, BUTTON_FFWD, BUTTON_NONE }, + { ACTION_KBD_CURSOR_RIGHT, BUTTON_FFWD|BUTTON_REL, BUTTON_FFWD }, { ACTION_KBD_CURSOR_RIGHT, BUTTON_FFWD|BUTTON_REPEAT, BUTTON_NONE }, - { ACTION_KBD_BACKSPACE, BUTTON_LEFT|BUTTON_REW, BUTTON_NONE }, - { ACTION_KBD_BACKSPACE, BUTTON_LEFT|BUTTON_REW|BUTTON_REPEAT,BUTTON_NONE }, - - { ACTION_KBD_SELECT, BUTTON_PLAY, BUTTON_NONE }, + { ACTION_KBD_SELECT, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE }, { ACTION_KBD_PAGE_FLIP, BUTTON_PLAY|BUTTON_RIGHT, BUTTON_NONE }, - { ACTION_KBD_DONE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, - { ACTION_KBD_ABORT, BUTTON_PLAY|BUTTON_LEFT, BUTTON_PLAY }, - - { ACTION_KBD_MORSE_INPUT, BUTTON_PLAY|BUTTON_FFWD, BUTTON_NONE }, - { ACTION_KBD_MORSE_SELECT, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE }, + { ACTION_KBD_DONE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, + { ACTION_KBD_ABORT, BUTTON_FFWD|BUTTON_PLAY, BUTTON_FFWD }, + { ACTION_KBD_ABORT, BUTTON_FFWD|BUTTON_REW, BUTTON_FFWD }, LAST_ITEM_IN_LIST }; /* button_context_keyboard */ diff --git a/apps/recorder/keyboard.c b/apps/recorder/keyboard.c index 160779f7a..2911f9493 100644 --- a/apps/recorder/keyboard.c +++ b/apps/recorder/keyboard.c @@ -80,11 +80,9 @@ #define KBD_MORSE_INPUT #elif CONFIG_KEYPAD == SANSA_E200_PAD \ - || CONFIG_KEYPAD == SANSA_FUZE_PAD -#define KBD_CURSOR_KEYS -#define KBD_MODES - -#elif CONFIG_KEYPAD == SANSA_C200_PAD + || CONFIG_KEYPAD == SANSA_FUZE_PAD \ + || CONFIG_KEYPAD == SANSA_C200_PAD \ + || CONFIG_KEYPAD == SAMSUNG_YH_PAD #define KBD_CURSOR_KEYS #define KBD_MODES -- 2.11.4.GIT