summaryrefslogtreecommitdiff
path: root/apps/plugins/lib
diff options
context:
space:
mode:
authorSolomon Peachy <pizza@shaftnet.org>2018-06-29 16:09:28 -0400
committerSolomon Peachy <pizza@shaftnet.org>2019-01-02 08:10:01 -0500
commitd4942cc74c82c465ea395637c77ed06565b8b497 (patch)
tree8c1fa737c93f8a2ade5a1566857dc4dc8f578bd6 /apps/plugins/lib
parentaf9459a7992596e932c6d8cc0a6366ff0f0b0fca (diff)
downloadrockbox-d4942cc74c82c465ea395637c77ed06565b8b497.tar.gz
rockbox-d4942cc74c82c465ea395637c77ed06565b8b497.zip
Add Xuelin iHIFI 770/770C/800 support
Taken from the xvortex fork (Roman Stolyarov) Ported, rebased, and cleaned up by myself. Change-Id: I7b2bca2d29502f2e4544e42f3d122786dd4b7978
Diffstat (limited to 'apps/plugins/lib')
-rw-r--r--apps/plugins/lib/keymaps.h28
-rw-r--r--apps/plugins/lib/pluginlib_actions.c31
2 files changed, 52 insertions, 7 deletions
diff --git a/apps/plugins/lib/keymaps.h b/apps/plugins/lib/keymaps.h
index 5fab361620..e240a0989e 100644
--- a/apps/plugins/lib/keymaps.h
+++ b/apps/plugins/lib/keymaps.h
@@ -216,12 +216,28 @@
216#define BTN_PAUSE BUTTON_POWER 216#define BTN_PAUSE BUTTON_POWER
217 217
218#elif (CONFIG_KEYPAD == XDUOO_X3_PAD) 218#elif (CONFIG_KEYPAD == XDUOO_X3_PAD)
219#define BTN_UP BUTTON_VOL_UP 219#define BTN_UP BUTTON_VOL_UP
220#define BTN_DOWN BUTTON_VOL_DOWN 220#define BTN_DOWN BUTTON_VOL_DOWN
221#define BTN_LEFT BUTTON_PREV 221#define BTN_LEFT BUTTON_PREV
222#define BTN_RIGHT BUTTON_NEXT 222#define BTN_RIGHT BUTTON_NEXT
223#define BTN_FIRE BUTTON_PLAY 223#define BTN_FIRE BUTTON_PLAY
224#define BTN_PAUSE BUTTON_OPTION 224#define BTN_PAUSE BUTTON_POWER
225
226#elif (CONFIG_KEYPAD == IHIFI_770_PAD)
227#define BTN_UP BUTTON_PREV
228#define BTN_DOWN BUTTON_NEXT
229#define BTN_LEFT BUTTON_HOME
230#define BTN_RIGHT BUTTON_VOL_DOWN
231#define BTN_FIRE BUTTON_PLAY
232#define BTN_PAUSE BUTTON_POWER
233
234#elif (CONFIG_KEYPAD == IHIFI_800_PAD)
235#define BTN_UP BUTTON_PREV
236#define BTN_DOWN BUTTON_NEXT
237#define BTN_LEFT BUTTON_HOME
238#define BTN_RIGHT BUTTON_VOL_DOWN
239#define BTN_FIRE BUTTON_PLAY
240#define BTN_PAUSE BUTTON_POWER
225 241
226#else 242#else
227#error Unsupported keypad 243#error Unsupported keypad
diff --git a/apps/plugins/lib/pluginlib_actions.c b/apps/plugins/lib/pluginlib_actions.c
index 2c5fb773ba..97b5a1e1bf 100644
--- a/apps/plugins/lib/pluginlib_actions.c
+++ b/apps/plugins/lib/pluginlib_actions.c
@@ -237,6 +237,24 @@ const struct button_mapping pla_main_ctx[] =
237 { PLA_DOWN_REPEAT, BUTTON_OPTION|BUTTON_REPEAT, BUTTON_NONE }, 237 { PLA_DOWN_REPEAT, BUTTON_OPTION|BUTTON_REPEAT, BUTTON_NONE },
238 { PLA_LEFT_REPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, 238 { PLA_LEFT_REPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE },
239 { PLA_RIGHT_REPEAT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, 239 { PLA_RIGHT_REPEAT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE },
240#elif (CONFIG_KEYPAD == IHIFI_770_PAD)
241 { PLA_UP, BUTTON_PREV, BUTTON_NONE },
242 { PLA_DOWN, BUTTON_NEXT, BUTTON_NONE },
243 { PLA_LEFT, BUTTON_HOME, BUTTON_NONE },
244 { PLA_RIGHT, BUTTON_VOL_DOWN, BUTTON_NONE },
245 { PLA_UP_REPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE },
246 { PLA_DOWN_REPEAT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE },
247 { PLA_LEFT_REPEAT, BUTTON_HOME|BUTTON_REPEAT, BUTTON_NONE },
248 { PLA_RIGHT_REPEAT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
249#elif (CONFIG_KEYPAD == IHIFI_800_PAD)
250 { PLA_UP, BUTTON_PREV, BUTTON_NONE },
251 { PLA_DOWN, BUTTON_NEXT, BUTTON_NONE },
252 { PLA_LEFT, BUTTON_HOME, BUTTON_NONE },
253 { PLA_RIGHT, BUTTON_VOL_DOWN, BUTTON_NONE },
254 { PLA_UP_REPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE },
255 { PLA_DOWN_REPEAT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE },
256 { PLA_LEFT_REPEAT, BUTTON_HOME|BUTTON_REPEAT, BUTTON_NONE },
257 { PLA_RIGHT_REPEAT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
240#else 258#else
241# ifndef HAVE_TOUCHSCREEN 259# ifndef HAVE_TOUCHSCREEN
242# error pluginlib_actions: No directions defined 260# error pluginlib_actions: No directions defined
@@ -462,7 +480,18 @@ const struct button_mapping pla_main_ctx[] =
462 {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE}, 480 {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE},
463 {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY}, 481 {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY},
464 {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, 482 {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE},
465 483#elif (CONFIG_KEYPAD == IHIFI_770_PAD)
484 {PLA_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER},
485 {PLA_EXIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE},
486 {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE},
487 {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY},
488 {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE},
489#elif (CONFIG_KEYPAD == IHIFI_800_PAD)
490 {PLA_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER},
491 {PLA_EXIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE},
492 {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE},
493 {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY},
494 {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE},
466#else 495#else
467# ifndef HAVE_TOUCHSCREEN 496# ifndef HAVE_TOUCHSCREEN
468# error pluginlib_actions: No actions defined 497# error pluginlib_actions: No actions defined