diff options
author | Solomon Peachy <pizza@shaftnet.org> | 2020-10-05 18:23:55 -0400 |
---|---|---|
committer | Solomon Peachy <pizza@shaftnet.org> | 2020-10-05 22:55:08 +0000 |
commit | 914114fd21a126be36435e7b0bc3a9f2685149c6 (patch) | |
tree | 07a0bebced0a6f8a6ffee2f948da66df31440aa9 | |
parent | c6f66cf696a4a0802dad8128dd985c7ab6489602 (diff) | |
download | rockbox-914114f.tar.gz rockbox-914114f.zip |
FS13241: Get rid of the hacky hold switch emulation on the X3ii & X20
It doesn't work properly and interferes with the power button in the keymap.
Rework WPS keymap a bit to make single-tap power emulate lock.
Change-Id: I9d9b9b4adcea3764e6e427f484e051c9bab9d13b
-rw-r--r-- | apps/keymaps/keymap-xduoox20.c | 7 | ||||
-rw-r--r-- | apps/keymaps/keymap-xduoox3ii.c | 7 | ||||
-rw-r--r-- | firmware/export/config/xduoox20.h | 3 | ||||
-rw-r--r-- | firmware/export/config/xduoox3ii.h | 3 | ||||
-rw-r--r-- | firmware/target/hosted/xduoo/button-target.h | 2 | ||||
-rw-r--r-- | firmware/target/hosted/xduoo/button-xduoo.c | 34 |
6 files changed, 8 insertions, 48 deletions
diff --git a/apps/keymaps/keymap-xduoox20.c b/apps/keymaps/keymap-xduoox20.c index a6c5ca4153..00df9c89e7 100644 --- a/apps/keymaps/keymap-xduoox20.c +++ b/apps/keymaps/keymap-xduoox20.c @@ -49,7 +49,7 @@ static const struct button_mapping button_context_standard[] = { static const struct button_mapping button_context_wps[] = { { ACTION_WPS_PLAY, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, - { ACTION_WPS_STOP, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, + { ACTION_WPS_STOP, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, { ACTION_WPS_SKIPPREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, { ACTION_WPS_SEEKBACK, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_WPS_STOPSEEK, BUTTON_PREV|BUTTON_REL, BUTTON_PREV|BUTTON_REPEAT }, @@ -61,10 +61,11 @@ static const struct button_mapping button_context_wps[] = { { ACTION_WPS_VOLDOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, { ACTION_WPS_VOLDOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_WPS_BROWSE, BUTTON_HOME|BUTTON_REL, BUTTON_HOME }, - { ACTION_WPS_CONTEXT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, + { ACTION_WPS_CONTEXT, BUTTON_HOME|BUTTON_REPEAT, BUTTON_HOME }, { ACTION_WPS_MENU, BUTTON_OPTION|BUTTON_REL, BUTTON_OPTION }, { ACTION_WPS_QUICKSCREEN, BUTTON_OPTION|BUTTON_REPEAT, BUTTON_OPTION }, - { ACTION_WPS_HOTKEY, BUTTON_HOME|BUTTON_REPEAT, BUTTON_HOME }, + + { ACTION_STD_KEYLOCK, BUTTON_POWER, BUTTON_NONE }, LAST_ITEM_IN_LIST }; /* button_context_wps */ diff --git a/apps/keymaps/keymap-xduoox3ii.c b/apps/keymaps/keymap-xduoox3ii.c index e43bd30290..a8cf349e0d 100644 --- a/apps/keymaps/keymap-xduoox3ii.c +++ b/apps/keymaps/keymap-xduoox3ii.c @@ -49,7 +49,7 @@ static const struct button_mapping button_context_standard[] = { static const struct button_mapping button_context_wps[] = { { ACTION_WPS_PLAY, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, - { ACTION_WPS_STOP, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, + { ACTION_WPS_STOP, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, { ACTION_WPS_SKIPPREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, { ACTION_WPS_SEEKBACK, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_WPS_STOPSEEK, BUTTON_PREV|BUTTON_REL, BUTTON_PREV|BUTTON_REPEAT }, @@ -61,10 +61,11 @@ static const struct button_mapping button_context_wps[] = { { ACTION_WPS_VOLDOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, { ACTION_WPS_VOLDOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, { ACTION_WPS_BROWSE, BUTTON_HOME|BUTTON_REL, BUTTON_HOME }, - { ACTION_WPS_CONTEXT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, + { ACTION_WPS_CONTEXT, BUTTON_HOME|BUTTON_REPEAT, BUTTON_HOME }, { ACTION_WPS_MENU, BUTTON_OPTION|BUTTON_REL, BUTTON_OPTION }, { ACTION_WPS_QUICKSCREEN, BUTTON_OPTION|BUTTON_REPEAT, BUTTON_OPTION }, - { ACTION_WPS_HOTKEY, BUTTON_HOME|BUTTON_REPEAT, BUTTON_HOME }, + + { ACTION_STD_KEYLOCK, BUTTON_POWER, BUTTON_NONE }, LAST_ITEM_IN_LIST }; /* button_context_wps */ diff --git a/firmware/export/config/xduoox20.h b/firmware/export/config/xduoox20.h index 4a5b63bf38..62b2d58582 100644 --- a/firmware/export/config/xduoox20.h +++ b/firmware/export/config/xduoox20.h @@ -73,9 +73,6 @@ /* KeyPad configuration for plugins */ #define CONFIG_KEYPAD XDUOO_X20_PAD -/* Define this if a programmable hotkey is mapped */ -#define HAVE_HOTKEY - /* define this if the target has volume keys which can be used in the lists */ #define HAVE_VOLUME_IN_LIST diff --git a/firmware/export/config/xduoox3ii.h b/firmware/export/config/xduoox3ii.h index e2066e453c..893fcc5e51 100644 --- a/firmware/export/config/xduoox3ii.h +++ b/firmware/export/config/xduoox3ii.h @@ -73,9 +73,6 @@ /* KeyPad configuration for plugins */ #define CONFIG_KEYPAD XDUOO_X3II_PAD -/* Define this if a programmable hotkey is mapped */ -#define HAVE_HOTKEY - /* define this if the target has volume keys which can be used in the lists */ #define HAVE_VOLUME_IN_LIST diff --git a/firmware/target/hosted/xduoo/button-target.h b/firmware/target/hosted/xduoo/button-target.h index 6cca5c22a0..ac77a7da7d 100644 --- a/firmware/target/hosted/xduoo/button-target.h +++ b/firmware/target/hosted/xduoo/button-target.h @@ -20,8 +20,6 @@ #ifndef _BUTTON_TARGET_H_ #define _BUTTON_TARGET_H_ -#define HAS_BUTTON_HOLD - /* Main unit's buttons */ #define BUTTON_POWER 0x00000001 #define BUTTON_HOME 0x00000002 diff --git a/firmware/target/hosted/xduoo/button-xduoo.c b/firmware/target/hosted/xduoo/button-xduoo.c index 605cd18736..99b0908378 100644 --- a/firmware/target/hosted/xduoo/button-xduoo.c +++ b/firmware/target/hosted/xduoo/button-xduoo.c @@ -38,14 +38,6 @@ #include "backlight-target.h" #include "xduoolinux_codec.h" -static bool soft_hold = false; -#ifndef BOOTLOADER -static unsigned soft_hold_counter = 0; -#define SOFT_HOLD_BUTTON BUTTON_POWER -#define SOFT_HOLD_CNTMAX_1 (HZ) -#define SOFT_HOLD_CNTMAX_2 (HZ*2) -#endif - #define NR_POLL_DESC 3 static struct pollfd poll_fds[NR_POLL_DESC]; @@ -141,27 +133,6 @@ int button_read_device(void) } } -#ifndef BOOTLOADER - if (button_bitmap == SOFT_HOLD_BUTTON) { - soft_hold_counter++; - if (soft_hold_counter == SOFT_HOLD_CNTMAX_1) { - soft_hold = !soft_hold; - backlight_hold_changed(soft_hold); - } - else - if (soft_hold_counter == SOFT_HOLD_CNTMAX_2) { - soft_hold = false; - backlight_hold_changed(soft_hold); - } - } else { - soft_hold_counter = 0; - } - - if((soft_hold) && (button_bitmap != SOFT_HOLD_BUTTON)) { - return BUTTON_NONE; - } -#endif - return button_bitmap; } @@ -187,8 +158,3 @@ void button_close_device(void) close(poll_fds[i].fd); } } - -bool button_hold(void) -{ - return soft_hold; -} |