pull/1948/head
sachin09999 2 weeks ago
parent 8092c60c0f
commit 2b2fe8686f

@ -12,6 +12,7 @@
</option> </option>
<option name="IMPORT_LAYOUT_TABLE"> <option name="IMPORT_LAYOUT_TABLE">
<value> <value>
<package name="" withSubpackages="true" static="false" module="true" />
<package name="" withSubpackages="true" static="false" /> <package name="" withSubpackages="true" static="false" />
<emptyLine /> <emptyLine />
<package name="javax" withSubpackages="true" static="false" /> <package name="javax" withSubpackages="true" static="false" />

@ -16,10 +16,14 @@
package com.google.samples.apps.nowinandroid.ui package com.google.samples.apps.nowinandroid.ui
import android.util.Log
import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.WindowInsetsSides import androidx.compose.foundation.layout.WindowInsetsSides
import androidx.compose.foundation.layout.calculateEndPadding
import androidx.compose.foundation.layout.calculateStartPadding
import androidx.compose.foundation.layout.consumeWindowInsets import androidx.compose.foundation.layout.consumeWindowInsets
import androidx.compose.foundation.layout.exclude import androidx.compose.foundation.layout.exclude
import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxSize
@ -58,6 +62,7 @@ import androidx.compose.ui.platform.testTag
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.semantics.semantics import androidx.compose.ui.semantics.semantics
import androidx.compose.ui.semantics.testTagsAsResourceId import androidx.compose.ui.semantics.testTagsAsResourceId
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.lifecycle.compose.collectAsStateWithLifecycle
import androidx.navigation.NavDestination import androidx.navigation.NavDestination
@ -145,33 +150,39 @@ internal fun NiaApp(
onDismiss = { onSettingsDismissed() }, onDismiss = { onSettingsDismissed() },
) )
} }
val currentRoute = appState.currentDestination?.route
Log.d("RouteCheck", "Current route: $currentRoute")
val searchRoute = "com.google.samples.apps.nowinandroid.feature.search.navigation.SearchRoute"
NiaNavigationSuiteScaffold( NiaNavigationSuiteScaffold(
navigationSuiteItems = { navigationSuiteItems = {
appState.topLevelDestinations.forEach { destination -> if (currentRoute == searchRoute) {
val hasUnread = unreadDestinations.contains(destination)
val selected = currentDestination } else {
.isRouteInHierarchy(destination.baseRoute) appState.topLevelDestinations.forEach { destination ->
item( val hasUnread = unreadDestinations.contains(destination)
selected = selected, val selected = currentDestination
onClick = { appState.navigateToTopLevelDestination(destination) }, .isRouteInHierarchy(destination.baseRoute)
icon = { item(
Icon( selected = selected,
imageVector = destination.unselectedIcon, onClick = { appState.navigateToTopLevelDestination(destination) },
contentDescription = null, icon = {
) Icon(
}, imageVector = destination.unselectedIcon,
selectedIcon = { contentDescription = null,
Icon( )
imageVector = destination.selectedIcon, },
contentDescription = null, selectedIcon = {
) Icon(
}, imageVector = destination.selectedIcon,
label = { Text(stringResource(destination.iconTextId)) }, contentDescription = null,
modifier = Modifier )
.testTag("NiaNavItem") },
.then(if (hasUnread) Modifier.notificationDot() else Modifier), label = { Text(stringResource(destination.iconTextId)) },
) modifier = Modifier
.testTag("NiaNavItem")
.then(if (hasUnread) Modifier.notificationDot() else Modifier),
)
}
} }
}, },
windowAdaptiveInfo = windowAdaptiveInfo, windowAdaptiveInfo = windowAdaptiveInfo,
@ -194,6 +205,7 @@ internal fun NiaApp(
) )
}, },
) { padding -> ) { padding ->
Column( Column(
Modifier Modifier
.fillMaxSize() .fillMaxSize()

Loading…
Cancel
Save