diff --git a/app/src/main/java/com/todoroo/astrid/activity/MainActivity.kt b/app/src/main/java/com/todoroo/astrid/activity/MainActivity.kt index 85e2f9109..31fd76a30 100644 --- a/app/src/main/java/com/todoroo/astrid/activity/MainActivity.kt +++ b/app/src/main/java/com/todoroo/astrid/activity/MainActivity.kt @@ -13,6 +13,7 @@ import androidx.activity.result.contract.ActivityResultContracts import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.view.ActionMode +import androidx.compose.foundation.layout.Arrangement import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.MaterialTheme import androidx.compose.material3.ModalBottomSheet @@ -146,8 +147,14 @@ class MainActivity : AppCompatActivity() { context.findActivity()?.recreate() } val scope = rememberCoroutineScope() + val bottomSearchBar = atLeastR() TaskListDrawer( - bottomSearchBar = atLeastR(), + arrangement = when { + state.menuQuery.isBlank() -> Arrangement.Top + bottomSearchBar -> Arrangement.Bottom + else -> Arrangement.Top + }, + bottomSearchBar = bottomSearchBar, filters = if (state.menuQuery.isNotEmpty()) state.searchItems else state.drawerItems, onClick = { when (it) { diff --git a/kmp/src/androidMain/kotlin/org/tasks/previews/TaskListDrawerPreview.kt b/kmp/src/androidMain/kotlin/org/tasks/previews/TaskListDrawerPreview.kt index 9bfc5a394..608889bb2 100644 --- a/kmp/src/androidMain/kotlin/org/tasks/previews/TaskListDrawerPreview.kt +++ b/kmp/src/androidMain/kotlin/org/tasks/previews/TaskListDrawerPreview.kt @@ -1,6 +1,7 @@ package org.tasks.previews import android.content.res.Configuration +import androidx.compose.foundation.layout.Arrangement import androidx.compose.runtime.Composable import androidx.compose.ui.tooling.preview.Preview import kotlinx.collections.immutable.persistentListOf @@ -18,6 +19,7 @@ import org.tasks.themes.TasksTheme fun MenuPreview() { TasksTheme { TaskListDrawer( + arrangement = Arrangement.Top, searchBar = { MenuSearchBar( begForMoney = true, diff --git a/kmp/src/commonMain/kotlin/org/tasks/compose/drawer/TaskListDrawer.kt b/kmp/src/commonMain/kotlin/org/tasks/compose/drawer/TaskListDrawer.kt index fdf65f075..9e6d681b6 100644 --- a/kmp/src/commonMain/kotlin/org/tasks/compose/drawer/TaskListDrawer.kt +++ b/kmp/src/commonMain/kotlin/org/tasks/compose/drawer/TaskListDrawer.kt @@ -69,6 +69,7 @@ import kotlin.math.roundToInt @OptIn(ExperimentalMaterial3Api::class) @Composable fun TaskListDrawer( + arrangement: Arrangement.Vertical, bottomSearchBar: Boolean, filters: ImmutableList, onClick: (DrawerItem) -> Unit, @@ -136,7 +137,7 @@ fun TaskListDrawer( ) else 48.dp ), - verticalArrangement = if (bottomSearchBar) Arrangement.Bottom else Arrangement.Top, + verticalArrangement = arrangement, ) { items(items = filters, key = { it.key() }) { when (it) {