diff --git a/apps/root_menu.c b/apps/root_menu.c index 5709e7ac42..56b9918c40 100644 --- a/apps/root_menu.c +++ b/apps/root_menu.c @@ -1011,7 +1011,9 @@ void root_menu(void) case make sure we preserve and restore the origin */ if (shortcut_origin != GO_TO_ROOT) { - if (shortcut_origin != GO_TO_WPS) + if(tree_get_context()->out_of_tree > 0) /* a shortcut has been selected */ + next_screen = GO_TO_FILEBROWSER; + else if (shortcut_origin != GO_TO_WPS) next_screen = shortcut_origin; shortcut_origin = GO_TO_ROOT; } diff --git a/apps/shortcuts.c b/apps/shortcuts.c index 2ac3ceb3a0..ad19ec14fc 100644 --- a/apps/shortcuts.c +++ b/apps/shortcuts.c @@ -620,11 +620,6 @@ int do_shortcut_menu(void *ignored) while (done == GO_TO_PREVIOUS) { list.count = shortcut_count; - if(tree_get_context()->out_of_tree > 0) /* a shortcut has been selected */ - { - done = GO_TO_FILEBROWSER; - break; - } if (simplelist_show_list(&list)) break; /* some error happened?! */