summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Conrad <dconrad@fastmail.com>2021-03-20 15:11:05 -0500
committerWilliam Wilgus <me.theuser@yahoo.com>2021-03-23 02:05:20 +0000
commit1c54c5227b4b8640c979000a340631dbeb190111 (patch)
tree013f12d519da9240f3b995544d19e58bc75bbffb
parentbf9fdb13c4d38f19aa303b6fc88ee3a97ca6c441 (diff)
downloadrockbox-1c54c5227b4b8640c979000a340631dbeb190111.tar.gz
rockbox-1c54c5227b4b8640c979000a340631dbeb190111.zip
Add disable setting for all softlock notifications
Tested on erosq Added ability to disable all softlock notifications. Setting is "Disable All Lock Notifications" under Advanced Key Lock Settings. Tested to make sure it doesn't interfere with backlight exemptions, keylock exemptions, or first press enables backlight only. When enabled, this overrules the existing Disable Notify setting, which only disables the reminders when a button is pressed while the device is already locked. Also changed phrases in the Advanced Key Lock settings menu to make it more obvious what the options do. Changed LANG_ACTION_PLAY, LANG_ACTION_SEEK, and LANG_ACTION_SKIP from "[button]" to "Exempt [button]". These language changes will also affect the Backlight Exemptions list, but the wording should be appropriate there as well. Added LANG_SOFTLOCK_DISABLE_ALL_NOTIFY and LANG_ACTION_VOLUME, changed LANG_VOLUME to LANG_ACTION_VOLUME in display_menu.c for consistency. Change-Id: I914fe154ba5d508a842165aea7c7755e4e6b9c57
-rw-r--r--apps/action.c15
-rw-r--r--apps/action.h2
-rw-r--r--apps/lang/english.lang54
-rw-r--r--apps/menus/display_menu.c2
-rw-r--r--apps/menus/settings_menu.c15
5 files changed, 60 insertions, 28 deletions
diff --git a/apps/action.c b/apps/action.c
index 858a761219..f9602b967f 100644
--- a/apps/action.c
+++ b/apps/action.c
@@ -797,13 +797,16 @@ static inline void do_softlock(action_last_t *last, action_cur_t *cur)
797 sleep(HZ/2); 797 sleep(HZ/2);
798 } 798 }
799#endif 799#endif
800 if (last->keys_locked) 800 if (!has_flag(last->softlock_mask, SEL_ACTION_ALLNONOTIFY))
801 { 801 {
802 splash(HZ/2, ID2P(LANG_KEYLOCK_ON)); 802 if (last->keys_locked)
803 } 803 {
804 else 804 splash(HZ/2, ID2P(LANG_KEYLOCK_ON));
805 { 805 }
806 splash(HZ/2, ID2P(LANG_KEYLOCK_OFF)); 806 else
807 {
808 splash(HZ/2, ID2P(LANG_KEYLOCK_OFF));
809 }
807 } 810 }
808 811
809 action = ACTION_REDRAW; 812 action = ACTION_REDRAW;
diff --git a/apps/action.h b/apps/action.h
index b434a38470..da4565c28b 100644
--- a/apps/action.h
+++ b/apps/action.h
@@ -50,7 +50,7 @@
50#define SEL_ACTION_SEEK 0x004U 50#define SEL_ACTION_SEEK 0x004U
51#define SEL_ACTION_SKIP 0x008U 51#define SEL_ACTION_SKIP 0x008U
52#define SEL_ACTION_NOUNMAPPED 0x010U/* disable backlight on unmapped buttons */ 52#define SEL_ACTION_NOUNMAPPED 0x010U/* disable backlight on unmapped buttons */
53 /* Available 0x020U*/ 53#define SEL_ACTION_ALLNONOTIFY 0x020U/* disable switch for all softlock notifications */
54 /* Available 0x040U*/ 54 /* Available 0x040U*/
55#define SEL_ACTION_NOTOUCH 0x080U/* disable touch screen/pad on screen lock */ 55#define SEL_ACTION_NOTOUCH 0x080U/* disable touch screen/pad on screen lock */
56#define SEL_ACTION_AUTOLOCK 0x100U/* autolock on backlight off */ 56#define SEL_ACTION_AUTOLOCK 0x100U/* autolock on backlight off */
diff --git a/apps/lang/english.lang b/apps/lang/english.lang
index 5b8391b859..52d943f75e 100644
--- a/apps/lang/english.lang
+++ b/apps/lang/english.lang
@@ -12476,13 +12476,13 @@
12476 desc: Selective Actions 12476 desc: Selective Actions
12477 user: core 12477 user: core
12478 <source> 12478 <source>
12479 *: "Play" 12479 *: "Exempt Play"
12480 </source> 12480 </source>
12481 <dest> 12481 <dest>
12482 *: "Play" 12482 *: "Exempt Play"
12483 </dest> 12483 </dest>
12484 <voice> 12484 <voice>
12485 *: "Play" 12485 *: "Exempt Play"
12486 </voice> 12486 </voice>
12487</phrase> 12487</phrase>
12488<phrase> 12488<phrase>
@@ -12490,13 +12490,13 @@
12490 desc: Selective Actions 12490 desc: Selective Actions
12491 user: core 12491 user: core
12492 <source> 12492 <source>
12493 *: "Seek" 12493 *: "Exempt Seek"
12494 </source> 12494 </source>
12495 <dest> 12495 <dest>
12496 *: "Seek" 12496 *: "Exempt Seek"
12497 </dest> 12497 </dest>
12498 <voice> 12498 <voice>
12499 *: "Seek" 12499 *: "Exempt Seek"
12500 </voice> 12500 </voice>
12501</phrase> 12501</phrase>
12502<phrase> 12502<phrase>
@@ -12504,13 +12504,13 @@
12504 desc: Selective Actions 12504 desc: Selective Actions
12505 user: core 12505 user: core
12506 <source> 12506 <source>
12507 *: "Skip" 12507 *: "Exempt Skip"
12508 </source> 12508 </source>
12509 <dest> 12509 <dest>
12510 *: "Skip" 12510 *: "Exempt Skip"
12511 </dest> 12511 </dest>
12512 <voice> 12512 <voice>
12513 *: "Skip" 12513 *: "Exempt Skip"
12514 </voice> 12514 </voice>
12515</phrase> 12515</phrase>
12516<phrase> 12516<phrase>
@@ -12602,13 +12602,13 @@
12602 desc: Softlock behaviour setting 12602 desc: Softlock behaviour setting
12603 user: core 12603 user: core
12604 <source> 12604 <source>
12605 *: "Disable Notify" 12605 *: "Disable Locked Reminders"
12606 </source> 12606 </source>
12607 <dest> 12607 <dest>
12608 *: "Disable Notify" 12608 *: "Disable Locked Reminders"
12609 </dest> 12609 </dest>
12610 <voice> 12610 <voice>
12611 *: "Disable Notify" 12611 *: "Disable Locked Reminders"
12612 </voice> 12612 </voice>
12613</phrase> 12613</phrase>
12614<phrase> 12614<phrase>
@@ -15738,4 +15738,32 @@
15738 <voice> 15738 <voice>
15739 *: "Clear List & Play Shuffled" 15739 *: "Clear List & Play Shuffled"
15740 </voice> 15740 </voice>
15741</phrase> \ No newline at end of file 15741</phrase>
15742<phrase>
15743 id: LANG_SOFTLOCK_DISABLE_ALL_NOTIFY
15744 desc: disable all softlock notifications
15745 user: core
15746 <source>
15747 *: "Disable All Lock Notifications"
15748 </source>
15749 <dest>
15750 *: "Disable All Lock Notifications"
15751 </dest>
15752 <voice>
15753 *: "Disable All Lock Notifications"
15754 </voice>
15755</phrase>
15756<phrase>
15757 id: LANG_ACTION_VOLUME
15758 desc: exempt volume from softlock
15759 user: core
15760 <source>
15761 *: "Exempt Volume"
15762 </source>
15763 <dest>
15764 *: "Exempt Volume"
15765 </dest>
15766 <voice>
15767 *: "Exempt Volume"
15768 </voice>
15769</phrase>
diff --git a/apps/menus/display_menu.c b/apps/menus/display_menu.c
index b4a3d3eb63..c72fb08fae 100644
--- a/apps/menus/display_menu.c
+++ b/apps/menus/display_menu.c
@@ -94,7 +94,7 @@ static int selectivebacklight_set_mask(void* param)
94 (void)param; 94 (void)param;
95 int mask = global_settings.bl_selective_actions_mask; 95 int mask = global_settings.bl_selective_actions_mask;
96 struct s_mask_items maskitems[]={ 96 struct s_mask_items maskitems[]={
97 {ID2P(LANG_VOLUME) , SEL_ACTION_VOL}, 97 {ID2P(LANG_ACTION_VOLUME) , SEL_ACTION_VOL},
98 {ID2P(LANG_ACTION_PLAY), SEL_ACTION_PLAY}, 98 {ID2P(LANG_ACTION_PLAY), SEL_ACTION_PLAY},
99 {ID2P(LANG_ACTION_SEEK), SEL_ACTION_SEEK}, 99 {ID2P(LANG_ACTION_SEEK), SEL_ACTION_SEEK},
100 {ID2P(LANG_ACTION_SKIP), SEL_ACTION_SKIP}, 100 {ID2P(LANG_ACTION_SKIP), SEL_ACTION_SKIP},
diff --git a/apps/menus/settings_menu.c b/apps/menus/settings_menu.c
index 33d29b003c..a5daad01ce 100644
--- a/apps/menus/settings_menu.c
+++ b/apps/menus/settings_menu.c
@@ -83,17 +83,18 @@ static int selectivesoftlock_set_mask(void* param)
83 (void)param; 83 (void)param;
84int mask = global_settings.bt_selective_softlock_actions_mask; 84int mask = global_settings.bt_selective_softlock_actions_mask;
85 struct s_mask_items maskitems[]={ 85 struct s_mask_items maskitems[]={
86 {ID2P(LANG_VOLUME) , SEL_ACTION_VOL}, 86 {ID2P(LANG_ACTION_VOLUME), SEL_ACTION_VOL},
87 {ID2P(LANG_ACTION_PLAY), SEL_ACTION_PLAY}, 87 {ID2P(LANG_ACTION_PLAY), SEL_ACTION_PLAY},
88 {ID2P(LANG_ACTION_SEEK), SEL_ACTION_SEEK}, 88 {ID2P(LANG_ACTION_SEEK), SEL_ACTION_SEEK},
89 {ID2P(LANG_ACTION_SKIP), SEL_ACTION_SKIP}, 89 {ID2P(LANG_ACTION_SKIP), SEL_ACTION_SKIP},
90 #ifdef HAVE_BACKLIGHT 90 #ifdef HAVE_BACKLIGHT
91 {ID2P(LANG_ACTION_AUTOLOCK_ON), SEL_ACTION_AUTOLOCK}, 91 {ID2P(LANG_ACTION_AUTOLOCK_ON), SEL_ACTION_AUTOLOCK},
92 #endif 92 #endif
93 #if defined(HAVE_TOUCHPAD) || defined(HAVE_TOUCHSCREEN) 93 #if defined(HAVE_TOUCHPAD) || defined(HAVE_TOUCHSCREEN)
94 {ID2P(LANG_ACTION_DISABLE_TOUCH) , SEL_ACTION_NOTOUCH}, 94 {ID2P(LANG_ACTION_DISABLE_TOUCH), SEL_ACTION_NOTOUCH},
95 #endif 95 #endif
96 {ID2P(LANG_ACTION_DISABLE_NOTIFY), SEL_ACTION_NONOTIFY} 96 {ID2P(LANG_ACTION_DISABLE_NOTIFY), SEL_ACTION_NONOTIFY},
97 {ID2P(LANG_SOFTLOCK_DISABLE_ALL_NOTIFY), SEL_ACTION_ALLNONOTIFY}
97 }; 98 };
98 99
99 mask = mask_select(mask, ID2P(LANG_SOFTLOCK_SELECTIVE) 100 mask = mask_select(mask, ID2P(LANG_SOFTLOCK_SELECTIVE)