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)
sleep(HZ/2);
}
#endif
- if (last->keys_locked)
+ if (!has_flag(last->softlock_mask, SEL_ACTION_ALLNONOTIFY))
{
- splash(HZ/2, ID2P(LANG_KEYLOCK_ON));
- }
- else
- {
- splash(HZ/2, ID2P(LANG_KEYLOCK_OFF));
+ if (last->keys_locked)
+ {
+ splash(HZ/2, ID2P(LANG_KEYLOCK_ON));
+ }
+ else
+ {
+ splash(HZ/2, ID2P(LANG_KEYLOCK_OFF));
+ }
}
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 @@
#define SEL_ACTION_SEEK 0x004U
#define SEL_ACTION_SKIP 0x008U
#define SEL_ACTION_NOUNMAPPED 0x010U/* disable backlight on unmapped buttons */
- /* Available 0x020U*/
+#define SEL_ACTION_ALLNONOTIFY 0x020U/* disable switch for all softlock notifications */
/* Available 0x040U*/
#define SEL_ACTION_NOTOUCH 0x080U/* disable touch screen/pad on screen lock */
#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 @@
desc: Selective Actions
user: core
- *: "Play"
+ *: "Exempt Play"
- *: "Play"
+ *: "Exempt Play"
@@ -12490,13 +12490,13 @@
desc: Selective Actions
user: core
- *: "Seek"
+ *: "Exempt Seek"
- *: "Seek"
+ *: "Exempt Seek"
@@ -12504,13 +12504,13 @@
desc: Selective Actions
user: core
- *: "Skip"
+ *: "Exempt Skip"
- *: "Skip"
+ *: "Exempt Skip"
@@ -12602,13 +12602,13 @@
desc: Softlock behaviour setting
user: core
- *: "Disable Notify"
+ *: "Disable Locked Reminders"
- *: "Disable Notify"
+ *: "Disable Locked Reminders"
@@ -15738,4 +15738,32 @@
*: "Clear List & Play Shuffled"
-
\ No newline at end of file
+
+
+ id: LANG_SOFTLOCK_DISABLE_ALL_NOTIFY
+ desc: disable all softlock notifications
+ user: core
+
+
+ *: "Disable All Lock Notifications"
+
+
+ *: "Disable All Lock Notifications"
+
+
+
+ id: LANG_ACTION_VOLUME
+ desc: exempt volume from softlock
+ user: core
+
+
+ *: "Exempt Volume"
+
+
+ *: "Exempt Volume"
+
+
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)
(void)param;
int mask = global_settings.bl_selective_actions_mask;
struct s_mask_items maskitems[]={
- {ID2P(LANG_VOLUME) , SEL_ACTION_VOL},
+ {ID2P(LANG_ACTION_VOLUME) , SEL_ACTION_VOL},
{ID2P(LANG_ACTION_PLAY), SEL_ACTION_PLAY},
{ID2P(LANG_ACTION_SEEK), SEL_ACTION_SEEK},
{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)
(void)param;
int mask = global_settings.bt_selective_softlock_actions_mask;
struct s_mask_items maskitems[]={
- {ID2P(LANG_VOLUME) , SEL_ACTION_VOL},
- {ID2P(LANG_ACTION_PLAY), SEL_ACTION_PLAY},
- {ID2P(LANG_ACTION_SEEK), SEL_ACTION_SEEK},
- {ID2P(LANG_ACTION_SKIP), SEL_ACTION_SKIP},
+ {ID2P(LANG_ACTION_VOLUME), SEL_ACTION_VOL},
+ {ID2P(LANG_ACTION_PLAY), SEL_ACTION_PLAY},
+ {ID2P(LANG_ACTION_SEEK), SEL_ACTION_SEEK},
+ {ID2P(LANG_ACTION_SKIP), SEL_ACTION_SKIP},
#ifdef HAVE_BACKLIGHT
- {ID2P(LANG_ACTION_AUTOLOCK_ON), SEL_ACTION_AUTOLOCK},
+ {ID2P(LANG_ACTION_AUTOLOCK_ON), SEL_ACTION_AUTOLOCK},
#endif
#if defined(HAVE_TOUCHPAD) || defined(HAVE_TOUCHSCREEN)
- {ID2P(LANG_ACTION_DISABLE_TOUCH) , SEL_ACTION_NOTOUCH},
+ {ID2P(LANG_ACTION_DISABLE_TOUCH), SEL_ACTION_NOTOUCH},
#endif
- {ID2P(LANG_ACTION_DISABLE_NOTIFY), SEL_ACTION_NONOTIFY}
+ {ID2P(LANG_ACTION_DISABLE_NOTIFY), SEL_ACTION_NONOTIFY},
+ {ID2P(LANG_SOFTLOCK_DISABLE_ALL_NOTIFY), SEL_ACTION_ALLNONOTIFY}
};
mask = mask_select(mask, ID2P(LANG_SOFTLOCK_SELECTIVE)