Remove settings from drawer

This commit is contained in:
sadellie 2023-08-03 14:41:59 +03:00
parent 588474529f
commit 4962b5c86a
8 changed files with 11 additions and 49 deletions

View File

@ -77,7 +77,7 @@ internal fun UnittoApp(uiPrefs: UIPreferences) {
val shortcutsScope = rememberCoroutineScope()
val mainTabs by remember(uiPrefs.enableToolsExperiment) {
val tabs by remember(uiPrefs.enableToolsExperiment) {
derivedStateOf {
if (uiPrefs.enableToolsExperiment) {
listOf(
@ -90,7 +90,6 @@ internal fun UnittoApp(uiPrefs: UIPreferences) {
}
}
}
val additionalTabs = listOf(DrawerItems.Settings)
val navBackStackEntry by navController.currentBackStackEntryAsState()
val gesturesEnabled: Boolean by remember(navBackStackEntry?.destination) {
@ -113,8 +112,7 @@ internal fun UnittoApp(uiPrefs: UIPreferences) {
drawer = {
UnittoDrawerSheet(
modifier = Modifier,
mainTabs = mainTabs,
additionalTabs = additionalTabs,
tabs = tabs,
currentDestination = navBackStackEntry?.destination?.route
) { destination ->
drawerScope.launch { drawerState.close() }

View File

@ -79,8 +79,7 @@ internal fun UnittoNavigation(
settingGraph(
themmoController = themmoController,
navController = navController,
menuButtonClick = openDrawer
navController = navController
)
calculatorGraph(

View File

@ -116,6 +116,5 @@ val TOP_LEVEL_START_ROUTES by lazy {
CALCULATOR_START,
DATE_CALCULATOR_START,
TIME_ZONE_START,
SETTINGS_START,
)
}

View File

@ -19,7 +19,6 @@
package com.sadellie.unitto.core.ui.common
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.HorizontalDivider
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.ModalDrawerSheet
import androidx.compose.material3.NavigationDrawerItemDefaults
@ -38,8 +37,7 @@ import com.sadellie.unitto.core.ui.model.DrawerItems
@Composable
fun UnittoDrawerSheet(
modifier: Modifier,
mainTabs: List<DrawerItems>,
additionalTabs: List<DrawerItems>,
tabs: List<DrawerItems>,
currentDestination: String?,
onItemClick: (TopLevelDestinations) -> Unit
) {
@ -53,20 +51,7 @@ fun UnittoDrawerSheet(
color = MaterialTheme.colorScheme.primary
)
mainTabs.forEach { drawerItem ->
val selected = drawerItem.destination.start == currentDestination
UnittoDrawerItem(
modifier = Modifier.padding(NavigationDrawerItemDefaults.ItemPadding),
destination = drawerItem.destination,
icon = if (selected) drawerItem.selectedIcon else drawerItem.defaultIcon,
selected = selected,
onClick = onItemClick
)
}
HorizontalDivider(Modifier.padding(28.dp, 16.dp))
additionalTabs.forEach { drawerItem ->
tabs.forEach { drawerItem ->
val selected = drawerItem.destination.start == currentDestination
UnittoDrawerItem(
modifier = Modifier.padding(NavigationDrawerItemDefaults.ItemPadding),
@ -84,12 +69,7 @@ fun UnittoDrawerSheet(
private fun PreviewUnittoDrawerSheet() {
UnittoDrawerSheet(
modifier = Modifier,
mainTabs = listOf(
DrawerItems.Calculator,
DrawerItems.Calculator,
DrawerItems.Calculator,
),
additionalTabs = listOf(
tabs = listOf(
DrawerItems.Calculator,
DrawerItems.Calculator,
DrawerItems.Calculator,

View File

@ -163,12 +163,7 @@ private fun PreviewUnittoModalNavigationDrawer() {
drawer = {
UnittoDrawerSheet(
modifier = Modifier,
mainTabs = listOf(
DrawerItems.Calculator,
DrawerItems.Calculator,
DrawerItems.Calculator,
),
additionalTabs = listOf(
tabs = listOf(
DrawerItems.Calculator,
DrawerItems.Calculator,
DrawerItems.Calculator,

View File

@ -22,12 +22,10 @@ import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Calculate
import androidx.compose.material.icons.filled.Event
import androidx.compose.material.icons.filled.Schedule
import androidx.compose.material.icons.filled.Settings
import androidx.compose.material.icons.filled.SwapHoriz
import androidx.compose.material.icons.outlined.Calculate
import androidx.compose.material.icons.outlined.Event
import androidx.compose.material.icons.outlined.Schedule
import androidx.compose.material.icons.outlined.Settings
import androidx.compose.material.icons.outlined.SwapHoriz
import androidx.compose.ui.graphics.vector.ImageVector
import com.sadellie.unitto.core.base.TopLevelDestinations
@ -60,10 +58,4 @@ sealed class DrawerItems(
selectedIcon = Icons.Filled.Schedule,
defaultIcon = Icons.Outlined.Schedule
)
data object Settings : DrawerItems(
destination = TopLevelDestinations.Settings,
selectedIcon = Icons.Filled.Settings,
defaultIcon = Icons.Outlined.Settings
)
}

View File

@ -48,7 +48,7 @@ import com.sadellie.unitto.core.base.BuildConfig
import com.sadellie.unitto.core.base.R
import com.sadellie.unitto.core.base.TOP_LEVEL_GRAPH_ROUTES
import com.sadellie.unitto.core.ui.common.Header
import com.sadellie.unitto.core.ui.common.MenuButton
import com.sadellie.unitto.core.ui.common.NavigateUpButton
import com.sadellie.unitto.core.ui.common.UnittoListItem
import com.sadellie.unitto.core.ui.common.UnittoScreenWithLargeTopBar
import com.sadellie.unitto.core.ui.openLink
@ -73,7 +73,7 @@ internal fun SettingsScreen(
UnittoScreenWithLargeTopBar(
title = stringResource(R.string.settings_screen),
navigationIcon = { MenuButton(menuButtonClick) }
navigationIcon = { NavigateUpButton(menuButtonClick) }
) { padding ->
LazyColumn(contentPadding = padding) {

View File

@ -50,13 +50,12 @@ fun NavController.navigateToUnitGroups() {
fun NavGraphBuilder.settingGraph(
themmoController: ThemmoController,
navController: NavHostController,
menuButtonClick: () -> Unit
navController: NavHostController
) {
navigation(start, graph) {
composable(start) {
SettingsScreen(
menuButtonClick = menuButtonClick,
menuButtonClick = navController::navigateUp,
navControllerAction = navController::navigate
)
}