path: root/apps/tree.c
diff options
authorDana Conrad <>2021-03-14 14:03:00 -0500
committerWilliam Wilgus <>2021-05-24 02:30:09 +0000
commit10d199f9d5bf85136211c0811e29679787343375 (patch)
tree6fd57cb5cf8bac3e23b65dfd469d57bee969e6fc /apps/tree.c
parentb66990cf77b1726b2cda1e9225a06df71738d46b (diff)
Allow Softlock to happen in most contexts
All this tested on erosq, I'm not sure if this will break on other targets or if there is a reason this shouldn't be done. apps/menu.c: Added CONTEXT_MAINMENU|ALLOW_SOFTLOCK in do_menu(), this allows the user to lock the keys in most places within the main menu tree. apps/tree.c: Added CONTEXT_TREE|ALLOW_SOFTLOCK in dirbrowse(), this allows locking the keys in most other contexts not covered by the above. Notable exceptions I've found that still cannot be locked: View Playlist, any settings change screen (ex. Shuffle No/Yes, Volume Select dB) Adding fix for Advanced Key Lock feature brought to light by this change in apps/action.c. Expected behavior for Advanced keylock is now (according to my testing here): Volume: Can be exempted from keylock anywhere Skip/Scrollwheel: Can only be exempted in WPS Seek: Can only be exempted in WPS Play: Can only be exempted in WPS Backlight exemption is same except the Volume exemption doesn't work outside the WPS, but I don't believe that is due to this change. Change-Id: Ifa3d1a03cf4884520a37dd91ed53a825cdb66778
Diffstat (limited to 'apps/tree.c')
1 files changed, 1 insertions, 1 deletions
diff --git a/apps/tree.c b/apps/tree.c
index 9e4aafccfe..88ccff5e37 100644
--- a/apps/tree.c
+++ b/apps/tree.c
@@ -646,7 +646,7 @@ static int dirbrowse(void)
tc.dirlevel = 0; /* shouldnt be needed.. this code needs work! */
keyclick_set_callback(gui_synclist_keyclick_callback, &tree_lists);
- button = get_action(CONTEXT_TREE,
+ button = get_action(CONTEXT_TREE|ALLOW_SOFTLOCK,
list_do_action_timeout(&tree_lists, HZ/2));
oldbutton = button;
gui_synclist_do_button(&tree_lists, &button,LIST_WRAP_UNLESS_HELD);