From 0578c7299c267969f424618860dfc18a6a66c4a7 Mon Sep 17 00:00:00 2001 From: daniele-verducci Date: Fri, 30 Oct 2026 19:27:59 +0100 Subject: [PATCH] Fixed back navigation in upload screen Signed-off-by: daniele-verducci --- .../android/ui/activity/UploadFilesActivity.kt | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/com/owncloud/android/ui/activity/UploadFilesActivity.kt b/app/src/main/java/com/owncloud/android/ui/activity/UploadFilesActivity.kt index a951b9304fe9..e568da67896f 100644 --- a/app/src/main/java/com/owncloud/android/ui/activity/UploadFilesActivity.kt +++ b/app/src/main/java/com/owncloud/android/ui/activity/UploadFilesActivity.kt @@ -110,7 +110,11 @@ class UploadFilesActivity : private val onBackPressedCallback = object : OnBackPressedCallback(true) { override fun handleOnBackPressed() { - if (isSearchOpen) closeSearch() else navigateToParentDirectory() + when { + isSearchOpen -> closeSearch() + navigateToParentDirectory() -> Log_OC.i(TAG, "Moved to parent directory") + else -> finish() + } } } @@ -288,14 +292,19 @@ class UploadFilesActivity : setDrawerIndicatorEnabled(isDrawerIndicatorAvailable) } - private fun navigateToParentDirectory() { + /** + * Navigates to parent directory + * + * @return true if navigation is possible, false otherwise + */ + private fun navigateToParentDirectory(): Boolean { if (directories.count <= SINGLE_DIR) { finish() - return + return false } val isParentUnreadable = currentDir?.parentFile?.canRead() == false - if (currentDir == null || isParentUnreadable) return + if (currentDir == null || isParentUnreadable) return false directories.remove(directories.getItem(0)) fileListFragment.onNavigateUp() @@ -309,6 +318,7 @@ class UploadFilesActivity : if (!isFolderPickerMode) { setSelectAllMenuItem(selectAllMenuItem, false) } + return true } override fun onSaveInstanceState(outState: Bundle) {