diff options
-rw-r--r-- | apps/action.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/apps/action.c b/apps/action.c index d2fef6f513..858a761219 100644 --- a/apps/action.c +++ b/apps/action.c | |||
@@ -730,10 +730,19 @@ static inline void do_softlock(action_last_t *last, action_cur_t *cur) | |||
730 | { | 730 | { |
731 | action = do_auto_softlock(last, cur); | 731 | action = do_auto_softlock(last, cur); |
732 | } | 732 | } |
733 | |||
733 | /* Lock/Unlock toggled by ACTION_STD_KEYLOCK presses*/ | 734 | /* Lock/Unlock toggled by ACTION_STD_KEYLOCK presses*/ |
734 | if ((action == ACTION_STD_KEYLOCK) | 735 | if ((action == ACTION_STD_KEYLOCK) |
735 | || (last->keys_locked && last->unlock_combo == cur->button)) | 736 | || (last->keys_locked && last->unlock_combo == cur->button)) |
736 | { | 737 | { |
738 | #ifdef HAVE_BACKLIGHT | ||
739 | // if backlight is off and keys are unlocked, do nothing and exit. | ||
740 | // The backlight should come on without locking keypad. | ||
741 | if ((!last->keys_locked) && (!is_backlight_on(false))) | ||
742 | { | ||
743 | return; | ||
744 | } | ||
745 | #endif | ||
737 | last->unlock_combo = cur->button; | 746 | last->unlock_combo = cur->button; |
738 | do_key_lock(!last->keys_locked); | 747 | do_key_lock(!last->keys_locked); |
739 | notify_user = true; | 748 | notify_user = true; |