From 3292a1b96ef1879397b3bef70fdea9fca8e6c8e7 Mon Sep 17 00:00:00 2001 From: Andrew Gunnerson Date: Mon, 15 Jun 2026 13:36:55 -0400 Subject: [PATCH] FolderPickerDialog: Make back button go up one level Signed-off-by: Andrew Gunnerson --- .../chiller3/basicsync/settings/FolderPickerDialog.kt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/chiller3/basicsync/settings/FolderPickerDialog.kt b/app/src/main/java/com/chiller3/basicsync/settings/FolderPickerDialog.kt index 8a44bc3..e431100 100644 --- a/app/src/main/java/com/chiller3/basicsync/settings/FolderPickerDialog.kt +++ b/app/src/main/java/com/chiller3/basicsync/settings/FolderPickerDialog.kt @@ -6,6 +6,7 @@ package com.chiller3.basicsync.settings import android.os.Parcelable +import androidx.activity.compose.BackHandler import androidx.compose.foundation.lazy.itemsIndexed import androidx.compose.material3.AlertDialog import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi @@ -61,6 +62,7 @@ fun FolderPickerDialog( } val state by viewModel.state.collectAsStateWithLifecycle() + val hasParent = ".." in state.childDirs var showNewFolderDialog by rememberSaveable { mutableStateOf(false) } @@ -79,6 +81,11 @@ fun FolderPickerDialog( ) } } + + BackHandler( + enabled = hasParent, + onBack = { viewModel.navigate(File("..")) }, + ) }, onDismissRequest = onDismiss, confirmButton = { @@ -96,7 +103,7 @@ fun FolderPickerDialog( } }, properties = DialogProperties( - dismissOnBackPress = false, + dismissOnBackPress = !hasParent, dismissOnClickOutside = false, ), )