summaryrefslogtreecommitdiff
path: root/apps/plugins/stats.c
diff options
context:
space:
mode:
authorChristian Soffke <christian.soffke@gmail.com>2022-12-18 21:13:15 +0100
committerChristian Soffke <christian.soffke@gmail.com>2022-12-29 04:39:22 +0100
commitfaa2cb99429214de745bbc3e64e48a7432db51ae (patch)
treede2967e0e8237cb86422cd82488e110b97ff831e /apps/plugins/stats.c
parent52f59f637dfcb24900b30ed52c1d7725eab93364 (diff)
downloadrockbox-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/stats.c')
-rw-r--r--apps/plugins/stats.c10
1 files changed, 9 insertions, 1 deletions
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 */
34static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; 42static 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 }