diff options
author | Christian Soffke <christian.soffke@gmail.com> | 2022-12-18 21:13:15 +0100 |
---|---|---|
committer | Christian Soffke <christian.soffke@gmail.com> | 2022-12-29 04:39:22 +0100 |
commit | faa2cb99429214de745bbc3e64e48a7432db51ae (patch) | |
tree | de2967e0e8237cb86422cd82488e110b97ff831e /apps/plugins | |
parent | 52f59f637dfcb24900b30ed52c1d7725eab93364 (diff) | |
download | rockbox-faa2cb99429214de745bbc3e64e48a7432db51ae.tar.gz rockbox-faa2cb99429214de745bbc3e64e48a7432db51ae.zip |
plugins: Improve usability of iPod keymaps
- Reduce need to press multiple buttons at
the same time to quit a plugin
- Have "Menu" be default way to quit plugins or
to access plugin menu
- Fall back to (Long) "Select" or Long "Menu"
in cases where Menu button isn't available
(e.g. in ImageViewer and many games)
out of scope:
boomshine, lua_scripts, Rockpaint,
Doom, Duke3D, Pacbox, Quake,
Sgt-Puzzles, Wolf3D, XWorld,
Minesweeper, Pixel Painter, Spacerocks
Change-Id: I6d4dc7174695fe4b8ee9cbaccb21bdbfe6af5c48
Diffstat (limited to 'apps/plugins')
50 files changed, 331 insertions, 78 deletions
diff --git a/apps/plugins/2048.c b/apps/plugins/2048.c index 456f973aef..2f4eb4c001 100644 --- a/apps/plugins/2048.c +++ b/apps/plugins/2048.c | |||
@@ -91,9 +91,16 @@ static const int BACKGROUND_Y = (BASE_Y-MIN_SPACE); | |||
91 | #define KEY_DOWN PLA_DOWN | 91 | #define KEY_DOWN PLA_DOWN |
92 | #define KEY_LEFT PLA_LEFT | 92 | #define KEY_LEFT PLA_LEFT |
93 | #define KEY_RIGHT PLA_RIGHT | 93 | #define KEY_RIGHT PLA_RIGHT |
94 | #define KEY_EXIT PLA_CANCEL | ||
95 | #define KEY_UNDO PLA_SELECT | 94 | #define KEY_UNDO PLA_SELECT |
96 | 95 | ||
96 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
97 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
98 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
99 | #define KEY_EXIT PLA_SELECT_REPEAT | ||
100 | #else | ||
101 | #define KEY_EXIT PLA_CANCEL | ||
102 | #endif | ||
103 | |||
97 | /* notice how "color" is spelled :P */ | 104 | /* notice how "color" is spelled :P */ |
98 | #ifdef HAVE_LCD_COLOR | 105 | #ifdef HAVE_LCD_COLOR |
99 | 106 | ||
diff --git a/apps/plugins/alarmclock.c b/apps/plugins/alarmclock.c index ecafceddc7..aa7c13d1a4 100644 --- a/apps/plugins/alarmclock.c +++ b/apps/plugins/alarmclock.c | |||
@@ -138,7 +138,13 @@ enum plugin_status plugin_start(const void* parameter) | |||
138 | while(!quit) { | 138 | while(!quit) { |
139 | button = get_button(); | 139 | button = get_button(); |
140 | 140 | ||
141 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
142 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
143 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
144 | if (button == PLA_EXIT || button == PLA_CANCEL || button == PLA_UP) | ||
145 | #else | ||
141 | if (button == PLA_EXIT || button == PLA_CANCEL) | 146 | if (button == PLA_EXIT || button == PLA_CANCEL) |
147 | #endif | ||
142 | quit = true; | 148 | quit = true; |
143 | 149 | ||
144 | FOR_NB_SCREENS(i) { | 150 | FOR_NB_SCREENS(i) { |
diff --git a/apps/plugins/bounce.c b/apps/plugins/bounce.c index e6f29817d6..a42a0af6ba 100644 --- a/apps/plugins/bounce.c +++ b/apps/plugins/bounce.c | |||
@@ -34,10 +34,6 @@ | |||
34 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | 34 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; |
35 | 35 | ||
36 | /* We set button maping with PLA */ | 36 | /* We set button maping with PLA */ |
37 | #define BOUNCE_UP PLA_UP | ||
38 | #define BOUNCE_UP_REPEAT PLA_UP_REPEAT | ||
39 | #define BOUNCE_DOWN PLA_DOWN | ||
40 | #define BOUNCE_DOWN_REPEAT PLA_DOWN_REPEAT | ||
41 | 37 | ||
42 | #ifdef HAVE_SCROLLWHEEL | 38 | #ifdef HAVE_SCROLLWHEEL |
43 | #define BOUNCE_LEFT PLA_SCROLL_BACK | 39 | #define BOUNCE_LEFT PLA_SCROLL_BACK |
@@ -52,7 +48,22 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | |||
52 | #endif | 48 | #endif |
53 | 49 | ||
54 | #define BOUNCE_QUIT PLA_EXIT | 50 | #define BOUNCE_QUIT PLA_EXIT |
51 | |||
52 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
53 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
54 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
55 | #define BOUNCE_QUIT2 PLA_UP | ||
56 | #define BOUNCE_DOWN PLA_LEFT | ||
57 | #define BOUNCE_DOWN_REPEAT PLA_LEFT_REPEAT | ||
58 | #define BOUNCE_UP PLA_RIGHT | ||
59 | #define BOUNCE_UP_REPEAT PLA_RIGHT_REPEAT | ||
60 | #else | ||
55 | #define BOUNCE_QUIT2 PLA_CANCEL | 61 | #define BOUNCE_QUIT2 PLA_CANCEL |
62 | #define BOUNCE_DOWN PLA_DOWN | ||
63 | #define BOUNCE_DOWN_REPEAT PLA_DOWN_REPEAT | ||
64 | #define BOUNCE_UP PLA_UP | ||
65 | #define BOUNCE_UP_REPEAT PLA_UP_REPEAT | ||
66 | #endif | ||
56 | #define BOUNCE_MODE PLA_SELECT | 67 | #define BOUNCE_MODE PLA_SELECT |
57 | 68 | ||
58 | #define LETTER_WIDTH 11 | 69 | #define LETTER_WIDTH 11 |
@@ -471,6 +482,10 @@ enum plugin_status plugin_start(const void* parameter) | |||
471 | #if (CONFIG_KEYPAD == SAMSUNG_YH92X_PAD) || \ | 482 | #if (CONFIG_KEYPAD == SAMSUNG_YH92X_PAD) || \ |
472 | (CONFIG_KEYPAD == SAMSUNG_YH820_PAD) | 483 | (CONFIG_KEYPAD == SAMSUNG_YH820_PAD) |
473 | "[Rew] to stop"; | 484 | "[Rew] to stop"; |
485 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
486 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
487 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
488 | "[Menu] to stop"; | ||
474 | #else | 489 | #else |
475 | "[Off] to stop"; | 490 | "[Off] to stop"; |
476 | #endif | 491 | #endif |
diff --git a/apps/plugins/bubbles.c b/apps/plugins/bubbles.c index 88d7228d72..a64093492f 100644 --- a/apps/plugins/bubbles.c +++ b/apps/plugins/bubbles.c | |||
@@ -79,7 +79,6 @@ enum { | |||
79 | #define ANGLE_STEP_REP 6 | 79 | #define ANGLE_STEP_REP 6 |
80 | 80 | ||
81 | #define BUBBLES_QUIT1 PLA_EXIT | 81 | #define BUBBLES_QUIT1 PLA_EXIT |
82 | #define BUBBLES_QUIT2 PLA_CANCEL | ||
83 | 82 | ||
84 | /* these are better off shooting with up */ | 83 | /* these are better off shooting with up */ |
85 | #if (CONFIG_KEYPAD == SAMSUNG_YH820_PAD) \ | 84 | #if (CONFIG_KEYPAD == SAMSUNG_YH820_PAD) \ |
@@ -92,10 +91,19 @@ enum { | |||
92 | #define BUBBLES_FIRE PLA_UP | 91 | #define BUBBLES_FIRE PLA_UP |
93 | #define BUBBLES_FIRE_REPEAT PLA_UP_REPEAT | 92 | #define BUBBLES_FIRE_REPEAT PLA_UP_REPEAT |
94 | #define BUBBLES_PAUSE PLA_SELECT | 93 | #define BUBBLES_PAUSE PLA_SELECT |
94 | #define BUBBLES_QUIT2 PLA_CANCEL | ||
95 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
96 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
97 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
98 | #define BUBBLES_FIRE PLA_SELECT | ||
99 | #define BUBBLES_FIRE_REPEAT PLA_SELECT_REPEAT | ||
100 | #define BUBBLES_PAUSE PLA_DOWN | ||
101 | #define BUBBLES_QUIT2 PLA_UP | ||
95 | #else | 102 | #else |
96 | #define BUBBLES_FIRE PLA_SELECT | 103 | #define BUBBLES_FIRE PLA_SELECT |
97 | #define BUBBLES_FIRE_REPEAT PLA_SELECT_REPEAT | 104 | #define BUBBLES_FIRE_REPEAT PLA_SELECT_REPEAT |
98 | #define BUBBLES_PAUSE PLA_UP | 105 | #define BUBBLES_PAUSE PLA_UP |
106 | #define BUBBLES_QUIT2 PLA_CANCEL | ||
99 | #endif | 107 | #endif |
100 | 108 | ||
101 | /* external bitmaps */ | 109 | /* external bitmaps */ |
diff --git a/apps/plugins/calendar.c b/apps/plugins/calendar.c index a70f47c34b..765b42ef59 100644 --- a/apps/plugins/calendar.c +++ b/apps/plugins/calendar.c | |||
@@ -39,14 +39,12 @@ | |||
39 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 39 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ |
40 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 40 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
41 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 41 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
42 | #define CALENDAR_QUIT (BUTTON_SELECT|BUTTON_MENU) | 42 | #define CALENDAR_QUIT (BUTTON_MENU|BUTTON_REL) |
43 | #define CALENDAR_SELECT (BUTTON_SELECT|BUTTON_REL) | 43 | #define CALENDAR_SELECT (BUTTON_SELECT|BUTTON_REL) |
44 | #define CALENDAR_NEXT_WEEK BUTTON_SCROLL_FWD | 44 | #define CALENDAR_NEXT_WEEK BUTTON_SCROLL_FWD |
45 | #define CALENDAR_PREV_WEEK BUTTON_SCROLL_BACK | 45 | #define CALENDAR_PREV_WEEK BUTTON_SCROLL_BACK |
46 | #define CALENDAR_NEXT_DAY BUTTON_RIGHT | 46 | #define CALENDAR_NEXT_DAY BUTTON_RIGHT |
47 | #define CALENDAR_PREV_DAY BUTTON_LEFT | 47 | #define CALENDAR_PREV_DAY BUTTON_LEFT |
48 | #define CALENDAR_NEXT_MONTH BUTTON_PLAY | ||
49 | #define CALENDAR_PREV_MONTH (BUTTON_MENU|BUTTON_REL) | ||
50 | 48 | ||
51 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) | 49 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) |
52 | #define CALENDAR_QUIT BUTTON_POWER | 50 | #define CALENDAR_QUIT BUTTON_POWER |
@@ -1095,17 +1093,18 @@ enum plugin_status plugin_start(const void* parameter) | |||
1095 | case CALENDAR_QUIT: | 1093 | case CALENDAR_QUIT: |
1096 | exit = true; | 1094 | exit = true; |
1097 | break; | 1095 | break; |
1098 | 1096 | #ifdef CALENDAR_NEXT_MONTH | |
1099 | case CALENDAR_NEXT_MONTH: | 1097 | case CALENDAR_NEXT_MONTH: |
1100 | case CALENDAR_NEXT_MONTH | BUTTON_REPEAT: | 1098 | case CALENDAR_NEXT_MONTH | BUTTON_REPEAT: |
1101 | next_month(&shown, 0); | 1099 | next_month(&shown, 0); |
1102 | break; | 1100 | break; |
1103 | 1101 | #endif | |
1102 | #ifdef CALENDAR_PREV_MONTH | ||
1104 | case CALENDAR_PREV_MONTH: | 1103 | case CALENDAR_PREV_MONTH: |
1105 | case CALENDAR_PREV_MONTH | BUTTON_REPEAT: | 1104 | case CALENDAR_PREV_MONTH | BUTTON_REPEAT: |
1106 | prev_month(&shown, 0); | 1105 | prev_month(&shown, 0); |
1107 | break; | 1106 | break; |
1108 | 1107 | #endif | |
1109 | case CALENDAR_NEXT_WEEK: | 1108 | case CALENDAR_NEXT_WEEK: |
1110 | case CALENDAR_NEXT_WEEK | BUTTON_REPEAT: | 1109 | case CALENDAR_NEXT_WEEK | BUTTON_REPEAT: |
1111 | next_day(&shown, 7); | 1110 | next_day(&shown, 7); |
diff --git a/apps/plugins/chessbox/chessbox_pgn.h b/apps/plugins/chessbox/chessbox_pgn.h index 9d4f369ecc..7d0cb795cf 100644 --- a/apps/plugins/chessbox/chessbox_pgn.h +++ b/apps/plugins/chessbox/chessbox_pgn.h | |||
@@ -33,7 +33,7 @@ | |||
33 | #define CB_PLAY (BUTTON_SELECT | BUTTON_PLAY) | 33 | #define CB_PLAY (BUTTON_SELECT | BUTTON_PLAY) |
34 | #define CB_LEVEL (BUTTON_SELECT | BUTTON_RIGHT) | 34 | #define CB_LEVEL (BUTTON_SELECT | BUTTON_RIGHT) |
35 | #define CB_RESTART (BUTTON_SELECT | BUTTON_LEFT) | 35 | #define CB_RESTART (BUTTON_SELECT | BUTTON_LEFT) |
36 | #define CB_MENU (BUTTON_SELECT | BUTTON_MENU) | 36 | #define CB_MENU (BUTTON_SELECT | BUTTON_REPEAT) |
37 | #define CB_SCROLL_UP (BUTTON_SCROLL_FWD|BUTTON_REPEAT) | 37 | #define CB_SCROLL_UP (BUTTON_SCROLL_FWD|BUTTON_REPEAT) |
38 | #define CB_SCROLL_DOWN (BUTTON_SCROLL_BACK|BUTTON_REPEAT) | 38 | #define CB_SCROLL_DOWN (BUTTON_SCROLL_BACK|BUTTON_REPEAT) |
39 | #define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT) | 39 | #define CB_SCROLL_LEFT (BUTTON_LEFT|BUTTON_REPEAT) |
diff --git a/apps/plugins/clix.c b/apps/plugins/clix.c index 9cd66a8034..06813f3a4d 100644 --- a/apps/plugins/clix.c +++ b/apps/plugins/clix.c | |||
@@ -66,9 +66,7 @@ | |||
66 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 66 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ |
67 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 67 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
68 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 68 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
69 | #define CLIX_BUTTON_QUIT (BUTTON_SELECT | BUTTON_MENU) | 69 | #define CLIX_BUTTON_QUIT BUTTON_MENU |
70 | #define CLIX_BUTTON_UP BUTTON_MENU | ||
71 | #define CLIX_BUTTON_DOWN BUTTON_PLAY | ||
72 | #define CLIX_BUTTON_SCROLL_FWD BUTTON_SCROLL_FWD | 70 | #define CLIX_BUTTON_SCROLL_FWD BUTTON_SCROLL_FWD |
73 | #define CLIX_BUTTON_SCROLL_BACK BUTTON_SCROLL_BACK | 71 | #define CLIX_BUTTON_SCROLL_BACK BUTTON_SCROLL_BACK |
74 | #define CLIX_BUTTON_CLICK BUTTON_SELECT | 72 | #define CLIX_BUTTON_CLICK BUTTON_SELECT |
@@ -921,8 +919,10 @@ static int clix_handle_game(struct clix_game_state_t* state) | |||
921 | case CLIX_BUTTON_SCROLL_BACK: | 919 | case CLIX_BUTTON_SCROLL_BACK: |
922 | case CLIX_BUTTON_SCROLL_BACK|BUTTON_REPEAT: | 920 | case CLIX_BUTTON_SCROLL_BACK|BUTTON_REPEAT: |
923 | #endif | 921 | #endif |
922 | #ifdef CLIX_BUTTON_UP | ||
924 | case CLIX_BUTTON_UP: | 923 | case CLIX_BUTTON_UP: |
925 | case CLIX_BUTTON_UP|BUTTON_REPEAT: | 924 | case CLIX_BUTTON_UP|BUTTON_REPEAT: |
925 | #endif | ||
926 | if( state->y == 0 || | 926 | if( state->y == 0 || |
927 | state->board[ XYPOS( state->x, state->y - 1)] == | 927 | state->board[ XYPOS( state->x, state->y - 1)] == |
928 | CC_BLACK | 928 | CC_BLACK |
@@ -938,8 +938,10 @@ static int clix_handle_game(struct clix_game_state_t* state) | |||
938 | case CLIX_BUTTON_SCROLL_FWD: | 938 | case CLIX_BUTTON_SCROLL_FWD: |
939 | case CLIX_BUTTON_SCROLL_FWD|BUTTON_REPEAT: | 939 | case CLIX_BUTTON_SCROLL_FWD|BUTTON_REPEAT: |
940 | #endif | 940 | #endif |
941 | #ifdef CLIX_BUTTON_DOWN | ||
941 | case CLIX_BUTTON_DOWN: | 942 | case CLIX_BUTTON_DOWN: |
942 | case CLIX_BUTTON_DOWN|BUTTON_REPEAT: | 943 | case CLIX_BUTTON_DOWN|BUTTON_REPEAT: |
944 | #endif | ||
943 | if( state->y == (BOARD_HEIGHT - 1)) | 945 | if( state->y == (BOARD_HEIGHT - 1)) |
944 | state->y = 0; | 946 | state->y = 0; |
945 | else | 947 | else |
diff --git a/apps/plugins/clock/clock.c b/apps/plugins/clock/clock.c index d287c75598..c61b466aba 100644 --- a/apps/plugins/clock/clock.c +++ b/apps/plugins/clock/clock.c | |||
@@ -44,13 +44,19 @@ const struct button_mapping* plugin_contexts[]={ | |||
44 | 44 | ||
45 | #define ACTION_COUNTER_TOGGLE PLA_SELECT | 45 | #define ACTION_COUNTER_TOGGLE PLA_SELECT |
46 | #define ACTION_COUNTER_RESET PLA_SELECT_REPEAT | 46 | #define ACTION_COUNTER_RESET PLA_SELECT_REPEAT |
47 | #define ACTION_MENU PLA_CANCEL | ||
48 | #define ACTION_MODE_NEXT PLA_RIGHT | 47 | #define ACTION_MODE_NEXT PLA_RIGHT |
49 | #define ACTION_MODE_NEXT_REPEAT PLA_RIGHT_REPEAT | 48 | #define ACTION_MODE_NEXT_REPEAT PLA_RIGHT_REPEAT |
50 | #define ACTION_MODE_PREV PLA_LEFT | 49 | #define ACTION_MODE_PREV PLA_LEFT |
51 | #define ACTION_MODE_PREV_REPEAT PLA_LEFT_REPEAT | 50 | #define ACTION_MODE_PREV_REPEAT PLA_LEFT_REPEAT |
51 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
52 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
53 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
54 | #define ACTION_MENU PLA_UP | ||
55 | #else | ||
56 | #define ACTION_MENU PLA_CANCEL | ||
52 | #define ACTION_SKIN_NEXT PLA_UP | 57 | #define ACTION_SKIN_NEXT PLA_UP |
53 | #define ACTION_SKIN_NEXT_REPEAT PLA_UP_REPEAT | 58 | #define ACTION_SKIN_NEXT_REPEAT PLA_UP_REPEAT |
59 | #endif | ||
54 | #define ACTION_SKIN_PREV PLA_DOWN | 60 | #define ACTION_SKIN_PREV PLA_DOWN |
55 | #define ACTION_SKIN_PREV_REPEAT PLA_DOWN_REPEAT | 61 | #define ACTION_SKIN_PREV_REPEAT PLA_DOWN_REPEAT |
56 | 62 | ||
@@ -165,10 +171,12 @@ enum plugin_status plugin_start(const void* parameter){ | |||
165 | case ACTION_SKIN_PREV: | 171 | case ACTION_SKIN_PREV: |
166 | clock_settings_skin_next(&clock_settings); | 172 | clock_settings_skin_next(&clock_settings); |
167 | break; | 173 | break; |
174 | #if defined(ACTION_SKIN_NEXT) && defined(ACTION_SKIN_NEXT_REPEAT) | ||
168 | case ACTION_SKIN_NEXT_REPEAT: | 175 | case ACTION_SKIN_NEXT_REPEAT: |
169 | case ACTION_SKIN_NEXT: | 176 | case ACTION_SKIN_NEXT: |
170 | clock_settings_skin_previous(&clock_settings); | 177 | clock_settings_skin_previous(&clock_settings); |
171 | break; | 178 | break; |
179 | #endif | ||
172 | case ACTION_MENU: | 180 | case ACTION_MENU: |
173 | clock_draw_restore_colors(); | 181 | clock_draw_restore_colors(); |
174 | exit_clock=main_menu(); | 182 | exit_clock=main_menu(); |
diff --git a/apps/plugins/codebuster.c b/apps/plugins/codebuster.c index 956991575d..401ce6085f 100644 --- a/apps/plugins/codebuster.c +++ b/apps/plugins/codebuster.c | |||
@@ -438,6 +438,13 @@ enum plugin_status plugin_start(const void* parameter) { | |||
438 | if (button == PLA_SELECT) | 438 | if (button == PLA_SELECT) |
439 | break; | 439 | break; |
440 | 440 | ||
441 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
442 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
443 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
444 | if (button == PLA_UP) /* Menu button */ | ||
445 | button = PLA_CANCEL; | ||
446 | #endif | ||
447 | |||
441 | switch (button) { | 448 | switch (button) { |
442 | 449 | ||
443 | /* Exit */ | 450 | /* Exit */ |
diff --git a/apps/plugins/cube.c b/apps/plugins/cube.c index dfd7df8951..43318f5aee 100644 --- a/apps/plugins/cube.c +++ b/apps/plugins/cube.c | |||
@@ -52,12 +52,14 @@ | |||
52 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 52 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ |
53 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 53 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
54 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 54 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
55 | #define CUBE_QUIT (BUTTON_SELECT | BUTTON_MENU) | 55 | #define CUBE_QUIT_PRE BUTTON_MENU |
56 | #define CUBE_QUIT (BUTTON_MENU | BUTTON_REL) | ||
56 | #define CUBE_NEXT BUTTON_RIGHT | 57 | #define CUBE_NEXT BUTTON_RIGHT |
57 | #define CUBE_PREV BUTTON_LEFT | 58 | #define CUBE_PREV BUTTON_LEFT |
58 | #define CUBE_INC BUTTON_SCROLL_FWD | 59 | #define CUBE_INC BUTTON_SCROLL_FWD |
59 | #define CUBE_DEC BUTTON_SCROLL_BACK | 60 | #define CUBE_DEC BUTTON_SCROLL_BACK |
60 | #define CUBE_MODE BUTTON_MENU | 61 | #define CUBE_MODE_PRE BUTTON_MENU |
62 | #define CUBE_MODE (BUTTON_MENU | BUTTON_REPEAT) | ||
61 | #define CUBE_PAUSE BUTTON_PLAY | 63 | #define CUBE_PAUSE BUTTON_PLAY |
62 | #define CUBE_HIGHSPEED_PRE BUTTON_SELECT | 64 | #define CUBE_HIGHSPEED_PRE BUTTON_SELECT |
63 | #define CUBE_HIGHSPEED (BUTTON_SELECT | BUTTON_REL) | 65 | #define CUBE_HIGHSPEED (BUTTON_SELECT | BUTTON_REL) |
@@ -729,6 +731,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
729 | 731 | ||
730 | int button; | 732 | int button; |
731 | #if defined(CUBE_MODE_PRE) || \ | 733 | #if defined(CUBE_MODE_PRE) || \ |
734 | defined(CUBE_QUIT_PRE) || \ | ||
732 | defined(CUBE_PAUSE_PRE) || \ | 735 | defined(CUBE_PAUSE_PRE) || \ |
733 | defined(CUBE_HIGHSPEED_PRE) | 736 | defined(CUBE_HIGHSPEED_PRE) |
734 | int lastbutton = BUTTON_NONE; | 737 | int lastbutton = BUTTON_NONE; |
@@ -903,6 +906,10 @@ enum plugin_status plugin_start(const void* parameter) | |||
903 | case CUBE_RC_QUIT: | 906 | case CUBE_RC_QUIT: |
904 | #endif | 907 | #endif |
905 | case CUBE_QUIT: | 908 | case CUBE_QUIT: |
909 | #ifdef CUBE_QUIT_PRE | ||
910 | if (lastbutton != CUBE_QUIT_PRE) | ||
911 | break; | ||
912 | #endif | ||
906 | quit = true; | 913 | quit = true; |
907 | break; | 914 | break; |
908 | 915 | ||
@@ -911,6 +918,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
911 | break; | 918 | break; |
912 | } | 919 | } |
913 | #if defined(CUBE_MODE_PRE) || \ | 920 | #if defined(CUBE_MODE_PRE) || \ |
921 | defined(CUBE_QUIT_PRE) || \ | ||
914 | defined(CUBE_PAUSE_PRE) || \ | 922 | defined(CUBE_PAUSE_PRE) || \ |
915 | defined(CUBE_HIGHSPEED_PRE) | 923 | defined(CUBE_HIGHSPEED_PRE) |
916 | if (button != BUTTON_NONE) | 924 | if (button != BUTTON_NONE) |
diff --git a/apps/plugins/demystify.c b/apps/plugins/demystify.c index 1a1505ff96..cb8e4ddf72 100644 --- a/apps/plugins/demystify.c +++ b/apps/plugins/demystify.c | |||
@@ -37,26 +37,42 @@ | |||
37 | #define MIN_POLYGONS 1 | 37 | #define MIN_POLYGONS 1 |
38 | 38 | ||
39 | /* Key assignement */ | 39 | /* Key assignement */ |
40 | #define DEMYSTIFY_QUIT PLA_CANCEL | ||
41 | 40 | ||
42 | #ifdef HAVE_SCROLLWHEEL | 41 | #ifdef HAVE_SCROLLWHEEL |
43 | 42 | ||
43 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
44 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
45 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
46 | #define DEMYSTIFY_QUIT PLA_UP | ||
47 | #else | ||
48 | #define DEMYSTIFY_QUIT PLA_CANCEL | ||
49 | #endif | ||
50 | |||
44 | #define DEMYSTIFY_INCREASE_SPEED PLA_SCROLL_FWD | 51 | #define DEMYSTIFY_INCREASE_SPEED PLA_SCROLL_FWD |
45 | #define DEMYSTIFY_DECREASE_SPEED PLA_SCROLL_BACK | 52 | #define DEMYSTIFY_DECREASE_SPEED PLA_SCROLL_BACK |
46 | #define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_SCROLL_FWD_REPEAT | 53 | #define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_SCROLL_FWD_REPEAT |
47 | #define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_SCROLL_BACK_REPEAT | 54 | #define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_SCROLL_BACK_REPEAT |
55 | |||
56 | #define DEMYSTIFY_ADD_POLYGON PLA_RIGHT | ||
57 | #define DEMYSTIFY_REMOVE_POLYGON PLA_LEFT | ||
58 | #define DEMYSTIFY_ADD_POLYGON_REPEAT PLA_RIGHT_REPEAT | ||
59 | #define DEMYSTIFY_REMOVE_POLYGON_REPEAT PLA_LEFT_REPEAT | ||
60 | |||
48 | #else | 61 | #else |
62 | |||
63 | #define DEMYSTIFY_QUIT PLA_CANCEL | ||
64 | |||
49 | #define DEMYSTIFY_INCREASE_SPEED PLA_RIGHT | 65 | #define DEMYSTIFY_INCREASE_SPEED PLA_RIGHT |
50 | #define DEMYSTIFY_DECREASE_SPEED PLA_LEFT | 66 | #define DEMYSTIFY_DECREASE_SPEED PLA_LEFT |
51 | #define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_RIGHT_REPEAT | 67 | #define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_RIGHT_REPEAT |
52 | #define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_LEFT_REPEAT | 68 | #define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_LEFT_REPEAT |
53 | #endif | ||
54 | 69 | ||
55 | #define DEMYSTIFY_ADD_POLYGON PLA_UP | 70 | #define DEMYSTIFY_ADD_POLYGON PLA_UP |
56 | #define DEMYSTIFY_REMOVE_POLYGON PLA_DOWN | 71 | #define DEMYSTIFY_REMOVE_POLYGON PLA_DOWN |
57 | #define DEMYSTIFY_ADD_POLYGON_REPEAT PLA_UP_REPEAT | 72 | #define DEMYSTIFY_ADD_POLYGON_REPEAT PLA_UP_REPEAT |
58 | #define DEMYSTIFY_REMOVE_POLYGON_REPEAT PLA_DOWN_REPEAT | 73 | #define DEMYSTIFY_REMOVE_POLYGON_REPEAT PLA_DOWN_REPEAT |
59 | 74 | ||
75 | #endif | ||
60 | const struct button_mapping *plugin_contexts[] | 76 | const struct button_mapping *plugin_contexts[] |
61 | = {pla_main_ctx, | 77 | = {pla_main_ctx, |
62 | #if defined(HAVE_REMOTE_LCD) | 78 | #if defined(HAVE_REMOTE_LCD) |
diff --git a/apps/plugins/dice.c b/apps/plugins/dice.c index 622c58d71d..7580697267 100644 --- a/apps/plugins/dice.c +++ b/apps/plugins/dice.c | |||
@@ -28,7 +28,14 @@ | |||
28 | #define INITIAL_NB_DICES 1 | 28 | #define INITIAL_NB_DICES 1 |
29 | #define INITIAL_NB_SIDES 2 /* corresponds to 6 sides in the array */ | 29 | #define INITIAL_NB_SIDES 2 /* corresponds to 6 sides in the array */ |
30 | 30 | ||
31 | |||
32 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
33 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
34 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
35 | #define DICE_QUIT PLA_UP | ||
36 | #else | ||
31 | #define DICE_QUIT PLA_CANCEL | 37 | #define DICE_QUIT PLA_CANCEL |
38 | #endif | ||
32 | #define DICE_ROLL PLA_SELECT | 39 | #define DICE_ROLL PLA_SELECT |
33 | 40 | ||
34 | 41 | ||
diff --git a/apps/plugins/fft/fft.c b/apps/plugins/fft/fft.c index f612a0ea35..4d36302ddf 100644 --- a/apps/plugins/fft/fft.c +++ b/apps/plugins/fft/fft.c | |||
@@ -40,13 +40,22 @@ GREY_INFO_STRUCT | |||
40 | 40 | ||
41 | /* this set the context to use with PLA */ | 41 | /* this set the context to use with PLA */ |
42 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | 42 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; |
43 | #define FFT_PREV_GRAPH PLA_LEFT | 43 | #define FFT_PREV_GRAPH PLA_LEFT |
44 | #define FFT_NEXT_GRAPH PLA_RIGHT | 44 | #define FFT_NEXT_GRAPH PLA_RIGHT |
45 | #define FFT_ORIENTATION PLA_CANCEL | 45 | #define FFT_ORIENTATION PLA_CANCEL |
46 | #define FFT_WINDOW PLA_SELECT | 46 | #define FFT_WINDOW PLA_SELECT_REL |
47 | #define FFT_AMP_SCALE PLA_UP | 47 | #define FFT_AMP_SCALE PLA_SELECT_REPEAT |
48 | #define FFT_FREQ_SCALE PLA_DOWN | 48 | #define FFT_AMP_SCALE_PRE PLA_SELECT |
49 | #define FFT_QUIT PLA_EXIT | 49 | #define FFT_FREQ_SCALE PLA_DOWN |
50 | |||
51 | |||
52 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
53 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
54 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
55 | #define FFT_QUIT PLA_UP | ||
56 | #else | ||
57 | #define FFT_QUIT PLA_EXIT | ||
58 | #endif | ||
50 | 59 | ||
51 | #ifdef HAVE_LCD_COLOR | 60 | #ifdef HAVE_LCD_COLOR |
52 | #include "pluginbitmaps/fft_colors.h" | 61 | #include "pluginbitmaps/fft_colors.h" |
@@ -1257,6 +1266,10 @@ enum plugin_status plugin_start(const void* parameter) | |||
1257 | if(!fft_setup()) | 1266 | if(!fft_setup()) |
1258 | return PLUGIN_ERROR; | 1267 | return PLUGIN_ERROR; |
1259 | 1268 | ||
1269 | #if defined(FFT_AMP_SCALE_PRE) | ||
1270 | int lastbutton = BUTTON_NONE; | ||
1271 | #endif | ||
1272 | |||
1260 | while(run) | 1273 | while(run) |
1261 | { | 1274 | { |
1262 | long delay = fft_draw(); | 1275 | long delay = fft_draw(); |
@@ -1300,6 +1313,10 @@ enum plugin_status plugin_start(const void* parameter) | |||
1300 | break; | 1313 | break; |
1301 | 1314 | ||
1302 | case FFT_AMP_SCALE: | 1315 | case FFT_AMP_SCALE: |
1316 | #ifdef FFT_AMP_SCALE_PRE | ||
1317 | if (lastbutton != FFT_AMP_SCALE_PRE) | ||
1318 | break; | ||
1319 | #endif | ||
1303 | if (++fft.amp_scale >= FFT_MAX_AS) | 1320 | if (++fft.amp_scale >= FFT_MAX_AS) |
1304 | fft.amp_scale = FFT_MIN_AS; | 1321 | fft.amp_scale = FFT_MIN_AS; |
1305 | 1322 | ||
@@ -1328,6 +1345,11 @@ enum plugin_status plugin_start(const void* parameter) | |||
1328 | exit_on_usb(button); | 1345 | exit_on_usb(button); |
1329 | break; | 1346 | break; |
1330 | } | 1347 | } |
1348 | |||
1349 | #if defined(FFT_AMP_SCALE_PRE) | ||
1350 | if (button != BUTTON_NONE) | ||
1351 | lastbutton = button; | ||
1352 | #endif | ||
1331 | } | 1353 | } |
1332 | 1354 | ||
1333 | return PLUGIN_OK; | 1355 | return PLUGIN_OK; |
diff --git a/apps/plugins/fire.c b/apps/plugins/fire.c index 43d10bf920..5cdf4a2d3a 100644 --- a/apps/plugins/fire.c +++ b/apps/plugins/fire.c | |||
@@ -56,10 +56,17 @@ const struct button_mapping* plugin_contexts[]= { | |||
56 | }; | 56 | }; |
57 | 57 | ||
58 | #define FIRE_QUIT PLA_CANCEL | 58 | #define FIRE_QUIT PLA_CANCEL |
59 | #define FIRE_QUIT2 PLA_EXIT | ||
60 | #define FIRE_SWITCH_FLAMES_TYPE PLA_LEFT | 59 | #define FIRE_SWITCH_FLAMES_TYPE PLA_LEFT |
61 | #define FIRE_SWITCH_FLAMES_MOVING PLA_RIGHT | 60 | #define FIRE_SWITCH_FLAMES_MOVING PLA_RIGHT |
62 | 61 | ||
62 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
63 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
64 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
65 | #define FIRE_QUIT2 PLA_UP | ||
66 | #else | ||
67 | #define FIRE_QUIT2 PLA_EXIT | ||
68 | #endif | ||
69 | |||
63 | #ifdef HAVE_SCROLLWHEEL | 70 | #ifdef HAVE_SCROLLWHEEL |
64 | #define FIRE_INCREASE_MULT PLA_SCROLL_FWD | 71 | #define FIRE_INCREASE_MULT PLA_SCROLL_FWD |
65 | #define FIRE_INCREASE_MULT_REP PLA_SCROLL_FWD_REPEAT | 72 | #define FIRE_INCREASE_MULT_REP PLA_SCROLL_FWD_REPEAT |
diff --git a/apps/plugins/fireworks.c b/apps/plugins/fireworks.c index febd093e3f..54a6d07c20 100644 --- a/apps/plugins/fireworks.c +++ b/apps/plugins/fireworks.c | |||
@@ -35,10 +35,17 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | |||
35 | 35 | ||
36 | /* We use PLA */ | 36 | /* We use PLA */ |
37 | #define BTN_EXIT PLA_EXIT | 37 | #define BTN_EXIT PLA_EXIT |
38 | #define BTN_MENU PLA_CANCEL | ||
39 | #define BTN_FIRE PLA_SELECT | 38 | #define BTN_FIRE PLA_SELECT |
40 | #define BTN_FIRE_REPEAT PLA_SELECT_REPEAT | 39 | #define BTN_FIRE_REPEAT PLA_SELECT_REPEAT |
41 | 40 | ||
41 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
42 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
43 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
44 | #define BTN_MENU PLA_UP | ||
45 | #else | ||
46 | #define BTN_MENU PLA_CANCEL | ||
47 | #endif | ||
48 | |||
42 | /* The lowdown on source terminology: | 49 | /* The lowdown on source terminology: |
43 | * a ROCKET is launched from the LCD bottom. | 50 | * a ROCKET is launched from the LCD bottom. |
44 | * FIREWORKs are ejected from the rocket when it explodes. */ | 51 | * FIREWORKs are ejected from the rocket when it explodes. */ |
diff --git a/apps/plugins/flipit.c b/apps/plugins/flipit.c index c659cf5ba5..278c77e188 100644 --- a/apps/plugins/flipit.c +++ b/apps/plugins/flipit.c | |||
@@ -49,7 +49,7 @@ | |||
49 | #define FLIPIT_DOWN BUTTON_PLAY | 49 | #define FLIPIT_DOWN BUTTON_PLAY |
50 | #define FLIPIT_NEXT BUTTON_SCROLL_FWD | 50 | #define FLIPIT_NEXT BUTTON_SCROLL_FWD |
51 | #define FLIPIT_PREV BUTTON_SCROLL_BACK | 51 | #define FLIPIT_PREV BUTTON_SCROLL_BACK |
52 | #define FLIPIT_QUIT (BUTTON_SELECT | BUTTON_MENU) | 52 | #define FLIPIT_QUIT (BUTTON_SELECT | BUTTON_REPEAT) |
53 | #define FLIPIT_SHUFFLE (BUTTON_SELECT | BUTTON_LEFT) | 53 | #define FLIPIT_SHUFFLE (BUTTON_SELECT | BUTTON_LEFT) |
54 | #define FLIPIT_SOLVE (BUTTON_SELECT | BUTTON_PLAY) | 54 | #define FLIPIT_SOLVE (BUTTON_SELECT | BUTTON_PLAY) |
55 | #define FLIPIT_STEP_BY_STEP (BUTTON_SELECT | BUTTON_RIGHT) | 55 | #define FLIPIT_STEP_BY_STEP (BUTTON_SELECT | BUTTON_RIGHT) |
@@ -841,7 +841,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
841 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 841 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ |
842 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 842 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
843 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 843 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
844 | rb->lcd_putsxy(2, 8, "[S-MENU] to stop"); | 844 | rb->lcd_putsxy(2, 8, "Long [SELECT] to stop"); |
845 | rb->lcd_putsxy(2, 18, "[SELECT] toggle"); | 845 | rb->lcd_putsxy(2, 18, "[SELECT] toggle"); |
846 | rb->lcd_putsxy(2, 28, "[S-LEFT] shuffle"); | 846 | rb->lcd_putsxy(2, 28, "[S-LEFT] shuffle"); |
847 | rb->lcd_putsxy(2, 38, "[S-PLAY] solution"); | 847 | rb->lcd_putsxy(2, 38, "[S-PLAY] solution"); |
diff --git a/apps/plugins/fractals/fractal.h b/apps/plugins/fractals/fractal.h index 8e9446df0d..8432546c1e 100644 --- a/apps/plugins/fractals/fractal.h +++ b/apps/plugins/fractals/fractal.h | |||
@@ -40,7 +40,7 @@ | |||
40 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 40 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ |
41 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 41 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
42 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 42 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
43 | #define FRACTAL_QUIT (BUTTON_SELECT | BUTTON_MENU) | 43 | #define FRACTAL_QUIT (BUTTON_SELECT | BUTTON_REPEAT) |
44 | #define FRACTAL_UP BUTTON_MENU | 44 | #define FRACTAL_UP BUTTON_MENU |
45 | #define FRACTAL_DOWN BUTTON_PLAY | 45 | #define FRACTAL_DOWN BUTTON_PLAY |
46 | #define FRACTAL_LEFT BUTTON_LEFT | 46 | #define FRACTAL_LEFT BUTTON_LEFT |
diff --git a/apps/plugins/imageviewer/imageviewer.c b/apps/plugins/imageviewer/imageviewer.c index 91c0950035..c77b22fdae 100644 --- a/apps/plugins/imageviewer/imageviewer.c +++ b/apps/plugins/imageviewer/imageviewer.c | |||
@@ -353,7 +353,7 @@ static int show_menu(void) /* return 1 to quit */ | |||
353 | static int ask_and_get_audio_buffer(const char *filename) | 353 | static int ask_and_get_audio_buffer(const char *filename) |
354 | { | 354 | { |
355 | int button; | 355 | int button; |
356 | #if defined(IMGVIEW_ZOOM_PRE) | 356 | #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_QUIT_PRE) |
357 | int lastbutton = BUTTON_NONE; | 357 | int lastbutton = BUTTON_NONE; |
358 | #endif | 358 | #endif |
359 | rb->lcd_setfont(FONT_SYSFIXED); | 359 | rb->lcd_setfont(FONT_SYSFIXED); |
@@ -392,6 +392,10 @@ static int ask_and_get_audio_buffer(const char *filename) | |||
392 | #endif | 392 | #endif |
393 | #ifdef IMGVIEW_QUIT | 393 | #ifdef IMGVIEW_QUIT |
394 | case IMGVIEW_QUIT: | 394 | case IMGVIEW_QUIT: |
395 | #ifdef IMGVIEW_QUIT_PRE | ||
396 | if (lastbutton != IMGVIEW_QUIT_PRE) | ||
397 | break; | ||
398 | #endif | ||
395 | #endif | 399 | #endif |
396 | case IMGVIEW_MENU: | 400 | case IMGVIEW_MENU: |
397 | return PLUGIN_OK; | 401 | return PLUGIN_OK; |
@@ -424,7 +428,7 @@ static int ask_and_get_audio_buffer(const char *filename) | |||
424 | == SYS_USB_CONNECTED) | 428 | == SYS_USB_CONNECTED) |
425 | return PLUGIN_USB_CONNECTED; | 429 | return PLUGIN_USB_CONNECTED; |
426 | } | 430 | } |
427 | #if defined(IMGVIEW_ZOOM_PRE) | 431 | #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_QUIT_PRE) |
428 | if (button != BUTTON_NONE) | 432 | if (button != BUTTON_NONE) |
429 | lastbutton = button; | 433 | lastbutton = button; |
430 | #endif | 434 | #endif |
@@ -572,14 +576,19 @@ static void pan_view_down(struct image_info *info) | |||
572 | } | 576 | } |
573 | 577 | ||
574 | /* interactively scroll around the image */ | 578 | /* interactively scroll around the image */ |
575 | static int scroll_bmp(struct image_info *info) | 579 | static int scroll_bmp(struct image_info *info, bool initial_frame) |
576 | { | 580 | { |
577 | static long ss_timeout = 0; | 581 | static long ss_timeout = 0; |
578 | 582 | ||
579 | int button; | 583 | int button; |
580 | #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_MENU_PRE) \ | 584 | #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_MENU_PRE) \ |
581 | || defined(IMGVIEW_SLIDE_SHOW_PRE) | 585 | || defined(IMGVIEW_SLIDE_SHOW_PRE) || defined(IMGVIEW_QUIT_PRE) |
582 | int lastbutton = BUTTON_NONE; | 586 | static int lastbutton; |
587 | if (initial_frame) | ||
588 | lastbutton = BUTTON_NONE; | ||
589 | |||
590 | #else | ||
591 | (void) initial_frame; | ||
583 | #endif | 592 | #endif |
584 | 593 | ||
585 | if (!ss_timeout && iv_api.slideshow_enabled) | 594 | if (!ss_timeout && iv_api.slideshow_enabled) |
@@ -745,6 +754,10 @@ static int scroll_bmp(struct image_info *info) | |||
745 | 754 | ||
746 | #ifdef IMGVIEW_QUIT | 755 | #ifdef IMGVIEW_QUIT |
747 | case IMGVIEW_QUIT: | 756 | case IMGVIEW_QUIT: |
757 | #ifdef IMGVIEW_QUIT_PRE | ||
758 | if (lastbutton != IMGVIEW_QUIT_PRE) | ||
759 | break; | ||
760 | #endif | ||
748 | return PLUGIN_OK; | 761 | return PLUGIN_OK; |
749 | break; | 762 | break; |
750 | #endif | 763 | #endif |
@@ -756,7 +769,8 @@ static int scroll_bmp(struct image_info *info) | |||
756 | break; | 769 | break; |
757 | 770 | ||
758 | } /* switch */ | 771 | } /* switch */ |
759 | #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_MENU_PRE) || defined(IMGVIEW_SLIDE_SHOW_PRE) | 772 | #if defined(IMGVIEW_ZOOM_PRE) || defined(IMGVIEW_MENU_PRE) ||\ |
773 | defined(IMGVIEW_SLIDE_SHOW_PRE) || defined(IMGVIEW_QUIT_PRE) | ||
760 | if (button != BUTTON_NONE) | 774 | if (button != BUTTON_NONE) |
761 | lastbutton = button; | 775 | lastbutton = button; |
762 | #endif | 776 | #endif |
@@ -922,6 +936,7 @@ static int load_and_show(char* filename, struct image_info *info) | |||
922 | 936 | ||
923 | /* used to loop through subimages in animated gifs */ | 937 | /* used to loop through subimages in animated gifs */ |
924 | int frame = 0; | 938 | int frame = 0; |
939 | bool initial_frame = true; | ||
925 | do /* loop the image prepare and decoding when zoomed */ | 940 | do /* loop the image prepare and decoding when zoomed */ |
926 | { | 941 | { |
927 | status = imgdec->get_image(info, frame, ds); /* decode or fetch from cache */ | 942 | status = imgdec->get_image(info, frame, ds); /* decode or fetch from cache */ |
@@ -954,7 +969,8 @@ static int load_and_show(char* filename, struct image_info *info) | |||
954 | */ | 969 | */ |
955 | while (1) | 970 | while (1) |
956 | { | 971 | { |
957 | status = scroll_bmp(info); | 972 | status = scroll_bmp(info, initial_frame); |
973 | initial_frame = false; | ||
958 | 974 | ||
959 | if (status == ZOOM_IN) | 975 | if (status == ZOOM_IN) |
960 | { | 976 | { |
diff --git a/apps/plugins/imageviewer/imageviewer_button.h b/apps/plugins/imageviewer/imageviewer_button.h index b8b8c3baf7..d324f93292 100644 --- a/apps/plugins/imageviewer/imageviewer_button.h +++ b/apps/plugins/imageviewer/imageviewer_button.h | |||
@@ -53,8 +53,10 @@ | |||
53 | #define IMGVIEW_RIGHT BUTTON_RIGHT | 53 | #define IMGVIEW_RIGHT BUTTON_RIGHT |
54 | #define IMGVIEW_NEXT (BUTTON_SELECT | BUTTON_RIGHT) | 54 | #define IMGVIEW_NEXT (BUTTON_SELECT | BUTTON_RIGHT) |
55 | #define IMGVIEW_PREVIOUS (BUTTON_SELECT | BUTTON_LEFT) | 55 | #define IMGVIEW_PREVIOUS (BUTTON_SELECT | BUTTON_LEFT) |
56 | #define IMGVIEW_MENU (BUTTON_SELECT | BUTTON_MENU) | 56 | #define IMGVIEW_MENU_PRE BUTTON_SELECT |
57 | #define IMGVIEW_QUIT (BUTTON_SELECT | BUTTON_PLAY) | 57 | #define IMGVIEW_MENU (BUTTON_SELECT | BUTTON_REPEAT) |
58 | #define IMGVIEW_QUIT_PRE BUTTON_SELECT | ||
59 | #define IMGVIEW_QUIT (BUTTON_SELECT | BUTTON_REL) | ||
58 | 60 | ||
59 | #elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD | 61 | #elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD |
60 | #define IMGVIEW_ZOOM_PRE BUTTON_SELECT | 62 | #define IMGVIEW_ZOOM_PRE BUTTON_SELECT |
diff --git a/apps/plugins/jackpot.c b/apps/plugins/jackpot.c index 78f74568ca..fd878509cf 100644 --- a/apps/plugins/jackpot.c +++ b/apps/plugins/jackpot.c | |||
@@ -25,6 +25,13 @@ | |||
25 | #include "lib/pluginlib_exit.h" | 25 | #include "lib/pluginlib_exit.h" |
26 | 26 | ||
27 | 27 | ||
28 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
29 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
30 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
31 | #define JACKPOT_QUIT PLA_UP | ||
32 | #else | ||
33 | #define JACKPOT_QUIT PLA_CANCEL | ||
34 | #endif | ||
28 | 35 | ||
29 | const struct button_mapping* plugin_contexts[]={pla_main_ctx}; | 36 | const struct button_mapping* plugin_contexts[]={pla_main_ctx}; |
30 | #define NB_PICTURES 9 | 37 | #define NB_PICTURES 9 |
@@ -248,7 +255,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
248 | plugin_contexts, ARRAYLEN(plugin_contexts)); | 255 | plugin_contexts, ARRAYLEN(plugin_contexts)); |
249 | switch ( action ) | 256 | switch ( action ) |
250 | { | 257 | { |
251 | case PLA_CANCEL: | 258 | case JACKPOT_QUIT: |
252 | return PLUGIN_OK; | 259 | return PLUGIN_OK; |
253 | case PLA_SELECT: | 260 | case PLA_SELECT: |
254 | jackpot_play_turn(&game); | 261 | jackpot_play_turn(&game); |
diff --git a/apps/plugins/jewels.c b/apps/plugins/jewels.c index 3f209ae556..1536b785b4 100644 --- a/apps/plugins/jewels.c +++ b/apps/plugins/jewels.c | |||
@@ -49,9 +49,9 @@ | |||
49 | #define JEWELS_PREV BUTTON_SCROLL_BACK | 49 | #define JEWELS_PREV BUTTON_SCROLL_BACK |
50 | #define JEWELS_NEXT BUTTON_SCROLL_FWD | 50 | #define JEWELS_NEXT BUTTON_SCROLL_FWD |
51 | #define JEWELS_SELECT BUTTON_SELECT | 51 | #define JEWELS_SELECT BUTTON_SELECT |
52 | #define JEWELS_CANCEL (BUTTON_SELECT | BUTTON_MENU) | 52 | #define JEWELS_CANCEL (BUTTON_SELECT | BUTTON_REPEAT) |
53 | #define HK_SELECT "SELECT" | 53 | #define HK_SELECT "SELECT" |
54 | #define HK_CANCEL "SEL + MENU" | 54 | #define HK_CANCEL "Long SELECT" |
55 | 55 | ||
56 | #elif (CONFIG_KEYPAD == IPOD_3G_PAD) | 56 | #elif (CONFIG_KEYPAD == IPOD_3G_PAD) |
57 | #define JEWELS_LEFT BUTTON_LEFT | 57 | #define JEWELS_LEFT BUTTON_LEFT |
diff --git a/apps/plugins/lamp.c b/apps/plugins/lamp.c index 42a2353b2a..5aa06f4d2d 100644 --- a/apps/plugins/lamp.c +++ b/apps/plugins/lamp.c | |||
@@ -58,7 +58,14 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | |||
58 | 58 | ||
59 | 59 | ||
60 | #define LAMP_EXIT PLA_EXIT | 60 | #define LAMP_EXIT PLA_EXIT |
61 | |||
62 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
63 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
64 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
65 | #define LAMP_EXIT2 PLA_UP | ||
66 | #else | ||
61 | #define LAMP_EXIT2 PLA_CANCEL | 67 | #define LAMP_EXIT2 PLA_CANCEL |
68 | #endif | ||
62 | 69 | ||
63 | 70 | ||
64 | #ifdef HAVE_LCD_COLOR | 71 | #ifdef HAVE_LCD_COLOR |
diff --git a/apps/plugins/logo.c b/apps/plugins/logo.c index 984a65aa34..9df73a9d0b 100644 --- a/apps/plugins/logo.c +++ b/apps/plugins/logo.c | |||
@@ -49,15 +49,27 @@ static const struct button_mapping *plugin_contexts[] | |||
49 | 49 | ||
50 | /* We use PLA */ | 50 | /* We use PLA */ |
51 | #define LP_QUIT PLA_EXIT | 51 | #define LP_QUIT PLA_EXIT |
52 | #define LP_QUIT2 PLA_CANCEL | ||
53 | #define LP_DEC_X PLA_LEFT | 52 | #define LP_DEC_X PLA_LEFT |
54 | #define LP_DEC_X_REPEAT PLA_LEFT_REPEAT | 53 | #define LP_DEC_X_REPEAT PLA_LEFT_REPEAT |
55 | #define LP_INC_X PLA_RIGHT | 54 | #define LP_INC_X PLA_RIGHT |
56 | #define LP_INC_X_REPEAT PLA_RIGHT_REPEAT | 55 | #define LP_INC_X_REPEAT PLA_RIGHT_REPEAT |
56 | |||
57 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
58 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
59 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
60 | #define LP_QUIT2 PLA_UP | ||
61 | #define LP_DEC_Y PLA_SCROLL_BACK | ||
62 | #define LP_DEC_Y_REPEAT PLA_SCROLL_BACK_REPEAT | ||
63 | #define LP_INC_Y PLA_SCROLL_FWD | ||
64 | #define LP_INC_Y_REPEAT PLA_SCROLL_FWD_REPEAT | ||
65 | #else | ||
66 | #define LP_QUIT2 PLA_CANCEL | ||
57 | #define LP_DEC_Y PLA_DOWN | 67 | #define LP_DEC_Y PLA_DOWN |
58 | #define LP_DEC_Y_REPEAT PLA_DOWN_REPEAT | 68 | #define LP_DEC_Y_REPEAT PLA_DOWN_REPEAT |
59 | #define LP_INC_Y PLA_UP | 69 | #define LP_INC_Y PLA_UP |
60 | #define LP_INC_Y_REPEAT PLA_UP_REPEAT | 70 | #define LP_INC_Y_REPEAT PLA_UP_REPEAT |
71 | #endif | ||
72 | |||
61 | 73 | ||
62 | enum plugin_status plugin_start(const void* parameter) { | 74 | enum plugin_status plugin_start(const void* parameter) { |
63 | int button; | 75 | int button; |
diff --git a/apps/plugins/matrix.c b/apps/plugins/matrix.c index 1b2f6d465a..6e96aae10c 100644 --- a/apps/plugins/matrix.c +++ b/apps/plugins/matrix.c | |||
@@ -52,6 +52,14 @@ | |||
52 | /* this set the context to use with PLA */ | 52 | /* this set the context to use with PLA */ |
53 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | 53 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; |
54 | 54 | ||
55 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
56 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
57 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
58 | #define MATRIX_EXIT2 PLA_UP | ||
59 | #else | ||
60 | #define MATRIX_EXIT2 PLA_CANCEL | ||
61 | #endif | ||
62 | |||
55 | #ifdef HAVE_SCROLLWHEEL | 63 | #ifdef HAVE_SCROLLWHEEL |
56 | #define MATRIX_SLEEP_MORE PLA_SCROLL_BACK | 64 | #define MATRIX_SLEEP_MORE PLA_SCROLL_BACK |
57 | #define MATRIX_SLEEP_MORE_REPEAT PLA_SCROLL_BACK_REPEAT | 65 | #define MATRIX_SLEEP_MORE_REPEAT PLA_SCROLL_BACK_REPEAT |
@@ -65,7 +73,6 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | |||
65 | #endif /* HAVE_SCROLLWHEEL */ | 73 | #endif /* HAVE_SCROLLWHEEL */ |
66 | #define MATRIX_PAUSE PLA_SELECT | 74 | #define MATRIX_PAUSE PLA_SELECT |
67 | #define MATRIX_EXIT PLA_EXIT | 75 | #define MATRIX_EXIT PLA_EXIT |
68 | #define MATRIX_EXIT2 PLA_CANCEL | ||
69 | 76 | ||
70 | #define SLEEP HZ/50 | 77 | #define SLEEP HZ/50 |
71 | 78 | ||
diff --git a/apps/plugins/maze.c b/apps/plugins/maze.c index 8c951ebdcc..ebb83ab15c 100644 --- a/apps/plugins/maze.c +++ b/apps/plugins/maze.c | |||
@@ -37,11 +37,14 @@ | |||
37 | 37 | ||
38 | /* key assignments */ | 38 | /* key assignments */ |
39 | 39 | ||
40 | #if (CONFIG_KEYPAD == IPOD_3G_PAD) | 40 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ |
41 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
42 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
41 | # define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT) | 43 | # define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT) |
42 | # define MAZE_NEW_PRE BUTTON_SELECT | 44 | # define MAZE_NEW_PRE BUTTON_SELECT |
43 | # define MAZE_QUIT BUTTON_MENU | 45 | # define MAZE_QUIT BUTTON_MENU |
44 | # define MAZE_SOLVE (BUTTON_SELECT | BUTTON_PLAY) | 46 | # define MAZE_SOLVE (BUTTON_SELECT | BUTTON_REL) |
47 | # define MAZE_SOLVE_PRE BUTTON_SELECT | ||
45 | # define MAZE_RIGHT BUTTON_RIGHT | 48 | # define MAZE_RIGHT BUTTON_RIGHT |
46 | # define MAZE_RIGHT_REPEAT BUTTON_RIGHT|BUTTON_REPEAT | 49 | # define MAZE_RIGHT_REPEAT BUTTON_RIGHT|BUTTON_REPEAT |
47 | # define MAZE_LEFT BUTTON_LEFT | 50 | # define MAZE_LEFT BUTTON_LEFT |
@@ -491,7 +494,7 @@ static void maze_move_player_left(struct maze* maze) | |||
491 | enum plugin_status plugin_start(const void* parameter) | 494 | enum plugin_status plugin_start(const void* parameter) |
492 | { | 495 | { |
493 | int button; | 496 | int button; |
494 | #ifdef MAZE_NEW_PRE | 497 | #if defined(MAZE_NEW_PRE) || defined(MAZE_SOLVE_PRE) |
495 | int lastbutton = BUTTON_NONE; | 498 | int lastbutton = BUTTON_NONE; |
496 | #endif | 499 | #endif |
497 | int quit = 0; | 500 | int quit = 0; |
@@ -544,6 +547,10 @@ enum plugin_status plugin_start(const void* parameter) | |||
544 | maze_draw(&maze, rb->screens[i]); | 547 | maze_draw(&maze, rb->screens[i]); |
545 | break; | 548 | break; |
546 | case MAZE_SOLVE: | 549 | case MAZE_SOLVE: |
550 | #ifdef MAZE_SOLVE_PRE | ||
551 | if(lastbutton != MAZE_SOLVE_PRE) | ||
552 | break; | ||
553 | #endif | ||
547 | maze_solve(&maze); | 554 | maze_solve(&maze); |
548 | FOR_NB_SCREENS(i) | 555 | FOR_NB_SCREENS(i) |
549 | maze_draw(&maze, rb->screens[i]); | 556 | maze_draw(&maze, rb->screens[i]); |
@@ -583,7 +590,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
583 | } | 590 | } |
584 | break; | 591 | break; |
585 | } | 592 | } |
586 | #ifdef MAZE_NEW_PRE | 593 | #if defined(MAZE_NEW_PRE) || defined(MAZE_SOLVE_PRE) |
587 | if( button != BUTTON_NONE ) | 594 | if( button != BUTTON_NONE ) |
588 | lastbutton = button; | 595 | lastbutton = button; |
589 | #endif | 596 | #endif |
diff --git a/apps/plugins/mazezam.c b/apps/plugins/mazezam.c index 423b09288d..1183f8f502 100644 --- a/apps/plugins/mazezam.c +++ b/apps/plugins/mazezam.c | |||
@@ -27,7 +27,9 @@ | |||
27 | /* Include standard plugin macro */ | 27 | /* Include standard plugin macro */ |
28 | 28 | ||
29 | 29 | ||
30 | #if (CONFIG_KEYPAD == IPOD_3G_PAD) | 30 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ |
31 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
32 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
31 | # define MAZEZAM_MENU BUTTON_MENU | 33 | # define MAZEZAM_MENU BUTTON_MENU |
32 | # define MAZEZAM_RIGHT BUTTON_RIGHT | 34 | # define MAZEZAM_RIGHT BUTTON_RIGHT |
33 | # define MAZEZAM_LEFT BUTTON_LEFT | 35 | # define MAZEZAM_LEFT BUTTON_LEFT |
diff --git a/apps/plugins/metronome.c b/apps/plugins/metronome.c index 157d116ff9..9d61c067fd 100644 --- a/apps/plugins/metronome.c +++ b/apps/plugins/metronome.c | |||
@@ -82,7 +82,13 @@ enum metronome_errors | |||
82 | #define MET_SYNC | 82 | #define MET_SYNC |
83 | #endif | 83 | #endif |
84 | 84 | ||
85 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
86 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
87 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
88 | #define METRONOME_QUIT PLA_UP | ||
89 | #else | ||
85 | #define METRONOME_QUIT PLA_EXIT | 90 | #define METRONOME_QUIT PLA_EXIT |
91 | #endif | ||
86 | 92 | ||
87 | #ifdef HAVE_SCROLLWHEEL | 93 | #ifdef HAVE_SCROLLWHEEL |
88 | #define METRONOME_VOL_UP PLA_SCROLL_FWD | 94 | #define METRONOME_VOL_UP PLA_SCROLL_FWD |
diff --git a/apps/plugins/mosaique.c b/apps/plugins/mosaique.c index caf5346dc5..cf3f42521a 100644 --- a/apps/plugins/mosaique.c +++ b/apps/plugins/mosaique.c | |||
@@ -37,10 +37,17 @@ | |||
37 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | 37 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; |
38 | 38 | ||
39 | #define MOSAIQUE_QUIT PLA_EXIT | 39 | #define MOSAIQUE_QUIT PLA_EXIT |
40 | #define MOSAIQUE_QUIT2 PLA_CANCEL | 40 | #define MOSAIQUE_SPEED PLA_RIGHT |
41 | #define MOSAIQUE_SPEED PLA_UP | ||
42 | #define MOSAIQUE_RESTART PLA_SELECT | 41 | #define MOSAIQUE_RESTART PLA_SELECT |
43 | 42 | ||
43 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
44 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
45 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
46 | #define MOSAIQUE_QUIT2 PLA_UP | ||
47 | #else | ||
48 | #define MOSAIQUE_QUIT2 PLA_CANCEL | ||
49 | #endif | ||
50 | |||
44 | enum plugin_status plugin_start(const void* parameter) | 51 | enum plugin_status plugin_start(const void* parameter) |
45 | { | 52 | { |
46 | int button; | 53 | int button; |
diff --git a/apps/plugins/open_plugins.c b/apps/plugins/open_plugins.c index 9a2fa3593f..a4b19d558f 100644 --- a/apps/plugins/open_plugins.c +++ b/apps/plugins/open_plugins.c | |||
@@ -904,6 +904,7 @@ reopen_datfile: | |||
904 | } | 904 | } |
905 | break; | 905 | break; |
906 | case ACTION_STD_CANCEL: | 906 | case ACTION_STD_CANCEL: |
907 | case ACTION_STD_MENU: | ||
907 | { | 908 | { |
908 | selection = -2; | 909 | selection = -2; |
909 | exit = true; | 910 | exit = true; |
diff --git a/apps/plugins/oscilloscope.c b/apps/plugins/oscilloscope.c index ef9e6b8a98..00d03fb03e 100644 --- a/apps/plugins/oscilloscope.c +++ b/apps/plugins/oscilloscope.c | |||
@@ -47,12 +47,14 @@ | |||
47 | 47 | ||
48 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 48 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
49 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 49 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
50 | #define OSCILLOSCOPE_QUIT (BUTTON_SELECT | BUTTON_MENU) | 50 | #define OSCILLOSCOPE_QUIT BUTTON_MENU |
51 | #define OSCILLOSCOPE_DRAWMODE (BUTTON_SELECT | BUTTON_PLAY) | 51 | #define OSCILLOSCOPE_GRAPHMODE_PRE BUTTON_SELECT |
52 | #define OSCILLOSCOPE_GRAPHMODE (BUTTON_SELECT | BUTTON_REL) | ||
53 | #define OSCILLOSCOPE_DRAWMODE_PRE BUTTON_SELECT | ||
54 | #define OSCILLOSCOPE_DRAWMODE (BUTTON_SELECT | BUTTON_REPEAT) | ||
52 | #define OSCILLOSCOPE_ADVMODE (BUTTON_SELECT | BUTTON_RIGHT) | 55 | #define OSCILLOSCOPE_ADVMODE (BUTTON_SELECT | BUTTON_RIGHT) |
53 | #define OSCILLOSCOPE_ORIENTATION (BUTTON_SELECT | BUTTON_LEFT) | 56 | #define OSCILLOSCOPE_ORIENTATION (BUTTON_SELECT | BUTTON_LEFT) |
54 | #define OSCILLOSCOPE_GRAPHMODE BUTTON_MENU | 57 | #define OSCILLOSCOPE_PAUSE BUTTON_PLAY | BUTTON_REL |
55 | #define OSCILLOSCOPE_PAUSE BUTTON_PLAY | ||
56 | #define OSCILLOSCOPE_SPEED_UP BUTTON_RIGHT | 58 | #define OSCILLOSCOPE_SPEED_UP BUTTON_RIGHT |
57 | #define OSCILLOSCOPE_SPEED_DOWN BUTTON_LEFT | 59 | #define OSCILLOSCOPE_SPEED_DOWN BUTTON_LEFT |
58 | #define OSCILLOSCOPE_VOL_UP BUTTON_SCROLL_FWD | 60 | #define OSCILLOSCOPE_VOL_UP BUTTON_SCROLL_FWD |
diff --git a/apps/plugins/pegbox.c b/apps/plugins/pegbox.c index cb6361547d..8b88aad052 100644 --- a/apps/plugins/pegbox.c +++ b/apps/plugins/pegbox.c | |||
@@ -65,7 +65,7 @@ | |||
65 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 65 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
66 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 66 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
67 | #define PEGBOX_SELECT (BUTTON_SELECT|BUTTON_RIGHT) | 67 | #define PEGBOX_SELECT (BUTTON_SELECT|BUTTON_RIGHT) |
68 | #define PEGBOX_QUIT (BUTTON_SELECT|BUTTON_PLAY) | 68 | #define PEGBOX_QUIT (BUTTON_SELECT|BUTTON_REPEAT) |
69 | #define PEGBOX_RESTART (BUTTON_SELECT|BUTTON_LEFT) | 69 | #define PEGBOX_RESTART (BUTTON_SELECT|BUTTON_LEFT) |
70 | #define PEGBOX_LVL_UP (BUTTON_SELECT|BUTTON_MENU) | 70 | #define PEGBOX_LVL_UP (BUTTON_SELECT|BUTTON_MENU) |
71 | #define PEGBOX_UP BUTTON_MENU | 71 | #define PEGBOX_UP BUTTON_MENU |
@@ -74,7 +74,7 @@ | |||
74 | #define PEGBOX_LEFT BUTTON_LEFT | 74 | #define PEGBOX_LEFT BUTTON_LEFT |
75 | 75 | ||
76 | #define SELECT_TEXT "SELECT+RIGHT" | 76 | #define SELECT_TEXT "SELECT+RIGHT" |
77 | #define QUIT_TEXT "SELECT+PLAY" | 77 | #define QUIT_TEXT "Long SELECT" |
78 | #define RESTART_TEXT "SELECT+LEFT" | 78 | #define RESTART_TEXT "SELECT+LEFT" |
79 | #define LVL_UP_TEXT "SELECT+MENU" | 79 | #define LVL_UP_TEXT "SELECT+MENU" |
80 | #define LVL_DOWN_TEXT "-" | 80 | #define LVL_DOWN_TEXT "-" |
diff --git a/apps/plugins/periodic_table.c b/apps/plugins/periodic_table.c index b77dd07432..2dd84baacd 100644 --- a/apps/plugins/periodic_table.c +++ b/apps/plugins/periodic_table.c | |||
@@ -619,7 +619,6 @@ enum plugin_status plugin_start(const void* parameter) | |||
619 | switch (button) | 619 | switch (button) |
620 | { | 620 | { |
621 | case PERIODIC_KEY_SELECT: | 621 | case PERIODIC_KEY_SELECT: |
622 | break; | ||
623 | case PERIODIC_KEY_MENU: | 622 | case PERIODIC_KEY_MENU: |
624 | return PLUGIN_OK; | 623 | return PLUGIN_OK; |
625 | break; | 624 | break; |
diff --git a/apps/plugins/pictureflow/pictureflow.c b/apps/plugins/pictureflow/pictureflow.c index 7670ef01df..a7a0031391 100644 --- a/apps/plugins/pictureflow/pictureflow.c +++ b/apps/plugins/pictureflow/pictureflow.c | |||
@@ -152,7 +152,8 @@ const struct button_mapping pf_context_buttons[] = | |||
152 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | 152 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ |
153 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | 153 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ |
154 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | 154 | || (CONFIG_KEYPAD == IPOD_4G_PAD) |
155 | {PF_QUIT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU}, | 155 | {PF_MENU, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU}, |
156 | {PF_QUIT, BUTTON_MENU|BUTTON_REL, BUTTON_MENU}, | ||
156 | {PF_SORTING_NEXT, BUTTON_SELECT|BUTTON_MENU, BUTTON_NONE}, | 157 | {PF_SORTING_NEXT, BUTTON_SELECT|BUTTON_MENU, BUTTON_NONE}, |
157 | {PF_SORTING_PREV, BUTTON_SELECT|BUTTON_PLAY, BUTTON_NONE}, | 158 | {PF_SORTING_PREV, BUTTON_SELECT|BUTTON_PLAY, BUTTON_NONE}, |
158 | #elif CONFIG_KEYPAD == MPIO_HD300_PAD | 159 | #elif CONFIG_KEYPAD == MPIO_HD300_PAD |
diff --git a/apps/plugins/pitch_detector.c b/apps/plugins/pitch_detector.c index 4ae43b3236..e9b1fb11b0 100644 --- a/apps/plugins/pitch_detector.c +++ b/apps/plugins/pitch_detector.c | |||
@@ -1013,6 +1013,11 @@ static void record_and_get_pitch(void) | |||
1013 | break; | 1013 | break; |
1014 | 1014 | ||
1015 | case PLA_CANCEL: | 1015 | case PLA_CANCEL: |
1016 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
1017 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
1018 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
1019 | case PLA_UP: | ||
1020 | #endif | ||
1016 | rb->pcm_stop_recording(); | 1021 | rb->pcm_stop_recording(); |
1017 | quit = main_menu(); | 1022 | quit = main_menu(); |
1018 | if(!quit) | 1023 | if(!quit) |
diff --git a/apps/plugins/plasma.c b/apps/plugins/plasma.c index 8da53874e1..cdb6e66569 100644 --- a/apps/plugins/plasma.c +++ b/apps/plugins/plasma.c | |||
@@ -268,6 +268,11 @@ int main(void) | |||
268 | 268 | ||
269 | switch(action) | 269 | switch(action) |
270 | { | 270 | { |
271 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
272 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
273 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
274 | case PLA_UP: | ||
275 | #endif | ||
271 | case PLA_EXIT: | 276 | case PLA_EXIT: |
272 | case PLA_CANCEL: | 277 | case PLA_CANCEL: |
273 | return PLUGIN_OK; | 278 | return PLUGIN_OK; |
@@ -277,7 +282,11 @@ int main(void) | |||
277 | case PLA_SCROLL_FWD: | 282 | case PLA_SCROLL_FWD: |
278 | case PLA_SCROLL_FWD_REPEAT: | 283 | case PLA_SCROLL_FWD_REPEAT: |
279 | #endif | 284 | #endif |
285 | #if (CONFIG_KEYPAD != IPOD_1G2G_PAD) \ | ||
286 | && (CONFIG_KEYPAD != IPOD_3G_PAD) \ | ||
287 | && (CONFIG_KEYPAD != IPOD_4G_PAD) | ||
280 | case PLA_UP: | 288 | case PLA_UP: |
289 | #endif | ||
281 | case PLA_UP_REPEAT: | 290 | case PLA_UP_REPEAT: |
282 | ++plasma_frequency; | 291 | ++plasma_frequency; |
283 | wave_table_generate(); | 292 | wave_table_generate(); |
diff --git a/apps/plugins/robotfindskitten.c b/apps/plugins/robotfindskitten.c index 4f228423b6..31c419e33d 100644 --- a/apps/plugins/robotfindskitten.c +++ b/apps/plugins/robotfindskitten.c | |||
@@ -469,7 +469,13 @@ static char* messages[] = | |||
469 | 469 | ||
470 | #define RFK_VERSION "v1.4142135.406" | 470 | #define RFK_VERSION "v1.4142135.406" |
471 | 471 | ||
472 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
473 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
474 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
475 | # define RFK_QUIT PLA_SELECT_REPEAT | ||
476 | #else | ||
472 | # define RFK_QUIT PLA_CANCEL | 477 | # define RFK_QUIT PLA_CANCEL |
478 | #endif | ||
473 | # define RFK_RIGHT PLA_RIGHT | 479 | # define RFK_RIGHT PLA_RIGHT |
474 | # define RFK_LEFT PLA_LEFT | 480 | # define RFK_LEFT PLA_LEFT |
475 | # define RFK_UP PLA_UP | 481 | # define RFK_UP PLA_UP |
diff --git a/apps/plugins/rockblox.c b/apps/plugins/rockblox.c index cc719e5067..a0105a1ffb 100644 --- a/apps/plugins/rockblox.c +++ b/apps/plugins/rockblox.c | |||
@@ -33,7 +33,7 @@ | |||
33 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 33 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
34 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 34 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
35 | 35 | ||
36 | #define ROCKBLOX_OFF (BUTTON_MENU | BUTTON_SELECT) | 36 | #define ROCKBLOX_OFF (BUTTON_SELECT | BUTTON_REPEAT) |
37 | #define ROCKBLOX_ROTATE_CCW BUTTON_SCROLL_BACK | 37 | #define ROCKBLOX_ROTATE_CCW BUTTON_SCROLL_BACK |
38 | #define ROCKBLOX_ROTATE_CCW2 (BUTTON_MENU | BUTTON_REL) | 38 | #define ROCKBLOX_ROTATE_CCW2 (BUTTON_MENU | BUTTON_REL) |
39 | #define ROCKBLOX_ROTATE_CW BUTTON_SCROLL_FWD | 39 | #define ROCKBLOX_ROTATE_CW BUTTON_SCROLL_FWD |
@@ -41,6 +41,7 @@ | |||
41 | #define ROCKBLOX_RIGHT BUTTON_RIGHT | 41 | #define ROCKBLOX_RIGHT BUTTON_RIGHT |
42 | #define ROCKBLOX_DOWN BUTTON_PLAY | 42 | #define ROCKBLOX_DOWN BUTTON_PLAY |
43 | #define ROCKBLOX_RESTART (BUTTON_SELECT | BUTTON_PLAY) | 43 | #define ROCKBLOX_RESTART (BUTTON_SELECT | BUTTON_PLAY) |
44 | #define ROCKBLOX_DROP_PRE BUTTON_SELECT | ||
44 | #define ROCKBLOX_DROP (BUTTON_SELECT | BUTTON_REL) | 45 | #define ROCKBLOX_DROP (BUTTON_SELECT | BUTTON_REL) |
45 | 46 | ||
46 | #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ | 47 | #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ |
diff --git a/apps/plugins/rockblox1d.c b/apps/plugins/rockblox1d.c index 6a2b013c44..6d535bbcd7 100644 --- a/apps/plugins/rockblox1d.c +++ b/apps/plugins/rockblox1d.c | |||
@@ -28,7 +28,14 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | |||
28 | #define ONEDROCKBLOX_DOWN PLA_DOWN | 28 | #define ONEDROCKBLOX_DOWN PLA_DOWN |
29 | #define ONEDROCKBLOX_DOWN_REPEAT PLA_DOWN_REPEAT | 29 | #define ONEDROCKBLOX_DOWN_REPEAT PLA_DOWN_REPEAT |
30 | #define ONEDROCKBLOX_QUIT PLA_EXIT | 30 | #define ONEDROCKBLOX_QUIT PLA_EXIT |
31 | |||
32 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
33 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
34 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
35 | #define ONEDROCKBLOX_QUIT2 PLA_UP | ||
36 | #else | ||
31 | #define ONEDROCKBLOX_QUIT2 PLA_CANCEL | 37 | #define ONEDROCKBLOX_QUIT2 PLA_CANCEL |
38 | #endif | ||
32 | 39 | ||
33 | #define mrand(max) (short)(rb->rand()%max) | 40 | #define mrand(max) (short)(rb->rand()%max) |
34 | 41 | ||
diff --git a/apps/plugins/rocklife.c b/apps/plugins/rocklife.c index bed947cc71..c4c7842fe0 100644 --- a/apps/plugins/rocklife.c +++ b/apps/plugins/rocklife.c | |||
@@ -70,7 +70,13 @@ | |||
70 | #define ROCKLIFE_INIT PLA_DOWN | 70 | #define ROCKLIFE_INIT PLA_DOWN |
71 | #define ROCKLIFE_NEXT PLA_RIGHT | 71 | #define ROCKLIFE_NEXT PLA_RIGHT |
72 | #define ROCKLIFE_NEXT_REP PLA_RIGHT_REPEAT | 72 | #define ROCKLIFE_NEXT_REP PLA_RIGHT_REPEAT |
73 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
74 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
75 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
76 | #define ROCKLIFE_QUIT PLA_UP | ||
77 | #else | ||
73 | #define ROCKLIFE_QUIT PLA_CANCEL | 78 | #define ROCKLIFE_QUIT PLA_CANCEL |
79 | #endif | ||
74 | #define ROCKLIFE_STATUS PLA_LEFT | 80 | #define ROCKLIFE_STATUS PLA_LEFT |
75 | 81 | ||
76 | #define PATTERN_RANDOM 0 | 82 | #define PATTERN_RANDOM 0 |
diff --git a/apps/plugins/sliding_puzzle.c b/apps/plugins/sliding_puzzle.c index af6aa40ea0..33d2bb68f6 100644 --- a/apps/plugins/sliding_puzzle.c +++ b/apps/plugins/sliding_puzzle.c | |||
@@ -36,7 +36,7 @@ | |||
36 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 36 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ |
37 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 37 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
38 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 38 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
39 | #define PUZZLE_QUIT (BUTTON_SELECT | BUTTON_MENU) | 39 | #define PUZZLE_QUIT (BUTTON_SELECT | BUTTON_REPEAT) |
40 | #define PUZZLE_LEFT BUTTON_LEFT | 40 | #define PUZZLE_LEFT BUTTON_LEFT |
41 | #define PUZZLE_RIGHT BUTTON_RIGHT | 41 | #define PUZZLE_RIGHT BUTTON_RIGHT |
42 | #define PUZZLE_UP BUTTON_MENU | 42 | #define PUZZLE_UP BUTTON_MENU |
@@ -848,7 +848,7 @@ enum plugin_status plugin_start( | |||
848 | #if (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 848 | #if (CONFIG_KEYPAD == IPOD_4G_PAD) || \ |
849 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 849 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
850 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 850 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
851 | rb->lcd_putsxy(0, 18, "[S-MENU] to stop"); | 851 | rb->lcd_putsxy(0, 18, "Long [SELECT] to stop"); |
852 | rb->lcd_putsxy(0, 28, "[S-LEFT] shuffle"); | 852 | rb->lcd_putsxy(0, 28, "[S-LEFT] shuffle"); |
853 | rb->lcd_putsxy(0, 38, "[S-RIGHT] change pic"); | 853 | rb->lcd_putsxy(0, 38, "[S-RIGHT] change pic"); |
854 | #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ | 854 | #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ |
diff --git a/apps/plugins/snake.c b/apps/plugins/snake.c index 25c89b264b..359077c9fa 100644 --- a/apps/plugins/snake.c +++ b/apps/plugins/snake.c | |||
@@ -55,12 +55,12 @@ dir is the current direction of the snake - 0=up, 1=right, 2=down, 3=left; | |||
55 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 55 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || \ |
56 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 56 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
57 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 57 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
58 | #define SNAKE_QUIT (BUTTON_SELECT|BUTTON_MENU) | 58 | #define SNAKE_QUIT (BUTTON_SELECT|BUTTON_REPEAT) |
59 | #define SNAKE_LEFT BUTTON_LEFT | 59 | #define SNAKE_LEFT BUTTON_LEFT |
60 | #define SNAKE_RIGHT BUTTON_RIGHT | 60 | #define SNAKE_RIGHT BUTTON_RIGHT |
61 | #define SNAKE_UP BUTTON_MENU | 61 | #define SNAKE_UP BUTTON_MENU |
62 | #define SNAKE_DOWN BUTTON_PLAY | 62 | #define SNAKE_DOWN BUTTON_PLAY |
63 | #define SNAKE_PLAYPAUSE BUTTON_SELECT | 63 | #define SNAKE_PLAYPAUSE (BUTTON_SELECT|BUTTON_REL) |
64 | 64 | ||
65 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) | 65 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) |
66 | #define SNAKE_QUIT BUTTON_POWER | 66 | #define SNAKE_QUIT BUTTON_POWER |
diff --git a/apps/plugins/snake2.c b/apps/plugins/snake2.c index 094fd854eb..7a43b235b7 100644 --- a/apps/plugins/snake2.c +++ b/apps/plugins/snake2.c | |||
@@ -181,8 +181,8 @@ Head and Tail are stored | |||
181 | #define SNAKE2_RIGHT BUTTON_RIGHT | 181 | #define SNAKE2_RIGHT BUTTON_RIGHT |
182 | #define SNAKE2_UP BUTTON_MENU | 182 | #define SNAKE2_UP BUTTON_MENU |
183 | #define SNAKE2_DOWN BUTTON_PLAY | 183 | #define SNAKE2_DOWN BUTTON_PLAY |
184 | #define SNAKE2_QUIT (BUTTON_SELECT | BUTTON_MENU) | 184 | #define SNAKE2_QUIT (BUTTON_SELECT | BUTTON_REPEAT) |
185 | #define SNAKE2_PLAYPAUSE BUTTON_SELECT | 185 | #define SNAKE2_PLAYPAUSE (BUTTON_SELECT | BUTTON_REL) |
186 | #define SNAKE2_PLAYPAUSE_TEXT "Select" | 186 | #define SNAKE2_PLAYPAUSE_TEXT "Select" |
187 | 187 | ||
188 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) | 188 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) |
diff --git a/apps/plugins/snow.c b/apps/plugins/snow.c index 10b41c972b..c7d7ad31d8 100644 --- a/apps/plugins/snow.c +++ b/apps/plugins/snow.c | |||
@@ -30,8 +30,14 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | |||
30 | 30 | ||
31 | /* PLA definitions */ | 31 | /* PLA definitions */ |
32 | #define SNOW_QUIT PLA_EXIT | 32 | #define SNOW_QUIT PLA_EXIT |
33 | #define SNOW_QUIT2 PLA_CANCEL | ||
34 | 33 | ||
34 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
35 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
36 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
37 | #define SNOW_QUIT2 PLA_UP | ||
38 | #else | ||
39 | #define SNOW_QUIT2 PLA_CANCEL | ||
40 | #endif | ||
35 | static short particles[NUM_PARTICLES][2]; | 41 | static short particles[NUM_PARTICLES][2]; |
36 | 42 | ||
37 | #if LCD_WIDTH >= 160 | 43 | #if LCD_WIDTH >= 160 |
diff --git a/apps/plugins/sokoban.c b/apps/plugins/sokoban.c index 247663a5c2..bf61db7d88 100644 --- a/apps/plugins/sokoban.c +++ b/apps/plugins/sokoban.c | |||
@@ -125,7 +125,7 @@ | |||
125 | #define SOKOBAN_RIGHT BUTTON_RIGHT | 125 | #define SOKOBAN_RIGHT BUTTON_RIGHT |
126 | #define SOKOBAN_UP BUTTON_MENU | 126 | #define SOKOBAN_UP BUTTON_MENU |
127 | #define SOKOBAN_DOWN BUTTON_PLAY | 127 | #define SOKOBAN_DOWN BUTTON_PLAY |
128 | #define SOKOBAN_MENU (BUTTON_SELECT | BUTTON_MENU) | 128 | #define SOKOBAN_MENU (BUTTON_SELECT | BUTTON_REPEAT) |
129 | #define SOKOBAN_UNDO_PRE BUTTON_SELECT | 129 | #define SOKOBAN_UNDO_PRE BUTTON_SELECT |
130 | #define SOKOBAN_UNDO (BUTTON_SELECT | BUTTON_REL) | 130 | #define SOKOBAN_UNDO (BUTTON_SELECT | BUTTON_REL) |
131 | #define SOKOBAN_REDO (BUTTON_SELECT | BUTTON_PLAY) | 131 | #define SOKOBAN_REDO (BUTTON_SELECT | BUTTON_PLAY) |
diff --git a/apps/plugins/solitaire.c b/apps/plugins/solitaire.c index ebc042f6db..874d872d95 100644 --- a/apps/plugins/solitaire.c +++ b/apps/plugins/solitaire.c | |||
@@ -56,7 +56,7 @@ | |||
56 | 56 | ||
57 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 57 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
58 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 58 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
59 | # define SOL_QUIT (BUTTON_SELECT | BUTTON_MENU) | 59 | # define SOL_QUIT (BUTTON_SELECT | BUTTON_REPEAT) |
60 | # define SOL_UP BUTTON_SCROLL_BACK | 60 | # define SOL_UP BUTTON_SCROLL_BACK |
61 | # define SOL_DOWN BUTTON_SCROLL_FWD | 61 | # define SOL_DOWN BUTTON_SCROLL_FWD |
62 | # define SOL_LEFT_PRE BUTTON_LEFT | 62 | # define SOL_LEFT_PRE BUTTON_LEFT |
diff --git a/apps/plugins/star.c b/apps/plugins/star.c index 874afc1cf1..59cefa2c15 100644 --- a/apps/plugins/star.c +++ b/apps/plugins/star.c | |||
@@ -80,7 +80,7 @@ | |||
80 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 80 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
81 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 81 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
82 | 82 | ||
83 | #define STAR_QUIT (BUTTON_SELECT | BUTTON_MENU) | 83 | #define STAR_QUIT (BUTTON_SELECT | BUTTON_REPEAT) |
84 | #define STAR_LEFT BUTTON_LEFT | 84 | #define STAR_LEFT BUTTON_LEFT |
85 | #define STAR_RIGHT BUTTON_RIGHT | 85 | #define STAR_RIGHT BUTTON_RIGHT |
86 | #define STAR_UP BUTTON_MENU | 86 | #define STAR_UP BUTTON_MENU |
@@ -91,7 +91,7 @@ | |||
91 | #define STAR_LEVEL_DOWN (BUTTON_SELECT | BUTTON_LEFT) | 91 | #define STAR_LEVEL_DOWN (BUTTON_SELECT | BUTTON_LEFT) |
92 | #define STAR_LEVEL_REPEAT (BUTTON_SELECT | BUTTON_PLAY) | 92 | #define STAR_LEVEL_REPEAT (BUTTON_SELECT | BUTTON_PLAY) |
93 | #define STAR_TOGGLE_CONTROL_NAME "SELECT" | 93 | #define STAR_TOGGLE_CONTROL_NAME "SELECT" |
94 | #define STAR_QUIT_NAME "S + MENU" | 94 | #define STAR_QUIT_NAME "Long SELECT" |
95 | #define STAR_LEVEL_UP_NAME "S >" | 95 | #define STAR_LEVEL_UP_NAME "S >" |
96 | #define STAR_LEVEL_DOWN_NAME "S <" | 96 | #define STAR_LEVEL_DOWN_NAME "S <" |
97 | #define STAR_LEVEL_REPEAT_NAME "S + PLAY" | 97 | #define STAR_LEVEL_REPEAT_NAME "S + PLAY" |
diff --git a/apps/plugins/starfield.c b/apps/plugins/starfield.c index 39ed8a8171..239b7c1396 100644 --- a/apps/plugins/starfield.c +++ b/apps/plugins/starfield.c | |||
@@ -27,11 +27,21 @@ static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | |||
27 | 27 | ||
28 | /* Key assignement */ | 28 | /* Key assignement */ |
29 | #define STARFIELD_QUIT PLA_EXIT | 29 | #define STARFIELD_QUIT PLA_EXIT |
30 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
31 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
32 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
33 | #define STARFIELD_QUIT2 PLA_UP | ||
34 | #define STARFIELD_INCREASE_ZMOVE PLA_SCROLL_FWD | ||
35 | #define STARFIELD_INCREASE_ZMOVE_REPEAT PLA_SCROLL_FWD_REPEAT | ||
36 | #define STARFIELD_DECREASE_ZMOVE PLA_SCROLL_BACK | ||
37 | #define STARFIELD_DECREASE_ZMOVE_REPEAT PLA_SCROLL_BACK_REPEAT | ||
38 | #else | ||
30 | #define STARFIELD_QUIT2 PLA_CANCEL | 39 | #define STARFIELD_QUIT2 PLA_CANCEL |
31 | #define STARFIELD_INCREASE_ZMOVE PLA_UP | 40 | #define STARFIELD_INCREASE_ZMOVE PLA_UP |
32 | #define STARFIELD_INCREASE_ZMOVE_REPEAT PLA_UP_REPEAT | 41 | #define STARFIELD_INCREASE_ZMOVE_REPEAT PLA_UP_REPEAT |
33 | #define STARFIELD_DECREASE_ZMOVE PLA_DOWN | 42 | #define STARFIELD_DECREASE_ZMOVE PLA_DOWN |
34 | #define STARFIELD_DECREASE_ZMOVE_REPEAT PLA_DOWN_REPEAT | 43 | #define STARFIELD_DECREASE_ZMOVE_REPEAT PLA_DOWN_REPEAT |
44 | #endif | ||
35 | #define STARFIELD_INCREASE_NB_STARS PLA_RIGHT | 45 | #define STARFIELD_INCREASE_NB_STARS PLA_RIGHT |
36 | #define STARFIELD_INCREASE_NB_STARS_REPEAT PLA_RIGHT_REPEAT | 46 | #define STARFIELD_INCREASE_NB_STARS_REPEAT PLA_RIGHT_REPEAT |
37 | #define STARFIELD_DECREASE_NB_STARS PLA_LEFT | 47 | #define STARFIELD_DECREASE_NB_STARS PLA_LEFT |
diff --git a/apps/plugins/stats.c b/apps/plugins/stats.c index 19ccd9f452..b48259a0e4 100644 --- a/apps/plugins/stats.c +++ b/apps/plugins/stats.c | |||
@@ -29,7 +29,15 @@ static bool cancel; | |||
29 | 29 | ||
30 | /* we use PLA */ | 30 | /* we use PLA */ |
31 | #define STATS_STOP PLA_EXIT | 31 | #define STATS_STOP PLA_EXIT |
32 | |||
33 | #if (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
34 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
35 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
36 | #define STATS_STOP2 PLA_UP | ||
37 | #else | ||
32 | #define STATS_STOP2 PLA_CANCEL | 38 | #define STATS_STOP2 PLA_CANCEL |
39 | #endif | ||
40 | |||
33 | /* this set the context to use with PLA */ | 41 | /* this set the context to use with PLA */ |
34 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | 42 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; |
35 | 43 | ||
@@ -149,7 +157,7 @@ static void traversedir(char* location, char* name) | |||
149 | lasttick = *rb->current_tick; | 157 | lasttick = *rb->current_tick; |
150 | button = pluginlib_getaction(TIMEOUT_NOBLOCK, plugin_contexts, | 158 | button = pluginlib_getaction(TIMEOUT_NOBLOCK, plugin_contexts, |
151 | ARRAYLEN(plugin_contexts)); | 159 | ARRAYLEN(plugin_contexts)); |
152 | if (button == STATS_STOP) { | 160 | if (button == STATS_STOP || button == STATS_STOP2) { |
153 | cancel = true; | 161 | cancel = true; |
154 | break; | 162 | break; |
155 | } | 163 | } |
diff --git a/apps/plugins/wormlet.c b/apps/plugins/wormlet.c index c09ef48bdc..abdb6a4725 100644 --- a/apps/plugins/wormlet.c +++ b/apps/plugins/wormlet.c | |||
@@ -54,7 +54,7 @@ static long max_cycle; | |||
54 | #define BTN_DIR_LEFT BUTTON_LEFT | 54 | #define BTN_DIR_LEFT BUTTON_LEFT |
55 | #define BTN_DIR_RIGHT BUTTON_RIGHT | 55 | #define BTN_DIR_RIGHT BUTTON_RIGHT |
56 | #define BTN_STARTPAUSE (BUTTON_SELECT|BUTTON_REL) | 56 | #define BTN_STARTPAUSE (BUTTON_SELECT|BUTTON_REL) |
57 | #define BTN_QUIT (BUTTON_SELECT|BUTTON_MENU) | 57 | #define BTN_QUIT (BUTTON_SELECT|BUTTON_REPEAT) |
58 | #define BTN_STOPRESET (BUTTON_SELECT|BUTTON_PLAY) | 58 | #define BTN_STOPRESET (BUTTON_SELECT|BUTTON_PLAY) |
59 | 59 | ||
60 | #elif (CONFIG_KEYPAD == IRIVER_H300_PAD) || (CONFIG_KEYPAD == IRIVER_H100_PAD) | 60 | #elif (CONFIG_KEYPAD == IRIVER_H300_PAD) || (CONFIG_KEYPAD == IRIVER_H100_PAD) |
diff --git a/apps/plugins/xobox.c b/apps/plugins/xobox.c index c7499fed7a..336d92bd4e 100644 --- a/apps/plugins/xobox.c +++ b/apps/plugins/xobox.c | |||
@@ -42,10 +42,10 @@ | |||
42 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | 42 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ |
43 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 43 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) |
44 | 44 | ||
45 | #define QUIT (BUTTON_SELECT | BUTTON_MENU) | 45 | #define QUIT (BUTTON_SELECT | BUTTON_REPEAT) |
46 | #define LEFT BUTTON_LEFT | 46 | #define LEFT BUTTON_LEFT |
47 | #define RIGHT BUTTON_RIGHT | 47 | #define RIGHT BUTTON_RIGHT |
48 | #define PAUSE BUTTON_SELECT | 48 | #define PAUSE (BUTTON_SELECT | BUTTON_REL) |
49 | #define MENU_UP BUTTON_SCROLL_FWD | 49 | #define MENU_UP BUTTON_SCROLL_FWD |
50 | #define MENU_DOWN BUTTON_SCROLL_BACK | 50 | #define MENU_DOWN BUTTON_SCROLL_BACK |
51 | #define UP BUTTON_MENU | 51 | #define UP BUTTON_MENU |