More NavigationState refactoring. Fix compilation errors.

pull/2003/head
Don Turner 5 months ago
parent f6824858c4
commit af504d2331

@ -32,8 +32,6 @@ import androidx.lifecycle.compose.collectAsStateWithLifecycle
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
import androidx.lifecycle.repeatOnLifecycle import androidx.lifecycle.repeatOnLifecycle
import androidx.metrics.performance.JankStats import androidx.metrics.performance.JankStats
import androidx.navigation3.runtime.EntryProviderScope
import androidx.navigation3.runtime.NavKey
import androidx.tracing.trace import androidx.tracing.trace
import com.google.samples.apps.nowinandroid.MainActivityUiState.Loading import com.google.samples.apps.nowinandroid.MainActivityUiState.Loading
import com.google.samples.apps.nowinandroid.core.analytics.AnalyticsHelper import com.google.samples.apps.nowinandroid.core.analytics.AnalyticsHelper
@ -42,9 +40,6 @@ import com.google.samples.apps.nowinandroid.core.data.repository.UserNewsResourc
import com.google.samples.apps.nowinandroid.core.data.util.NetworkMonitor import com.google.samples.apps.nowinandroid.core.data.util.NetworkMonitor
import com.google.samples.apps.nowinandroid.core.data.util.TimeZoneMonitor import com.google.samples.apps.nowinandroid.core.data.util.TimeZoneMonitor
import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme import com.google.samples.apps.nowinandroid.core.designsystem.theme.NiaTheme
//import com.google.samples.apps.nowinandroid.core.navigation.NiaBackStackViewModel
import com.google.samples.apps.nowinandroid.core.navigation.NiaNavKey
import com.google.samples.apps.nowinandroid.core.navigation.NiaNavigator
import com.google.samples.apps.nowinandroid.core.ui.LocalTimeZone import com.google.samples.apps.nowinandroid.core.ui.LocalTimeZone
import com.google.samples.apps.nowinandroid.ui.NiaApp import com.google.samples.apps.nowinandroid.ui.NiaApp
import com.google.samples.apps.nowinandroid.ui.rememberNiaAppState import com.google.samples.apps.nowinandroid.ui.rememberNiaAppState

@ -55,7 +55,7 @@ fun rememberNavigationState(
* State holder for navigation state. * State holder for navigation state.
* *
* @param startKey - the starting navigation key. The user will exit the app through this key. * @param startKey - the starting navigation key. The user will exit the app through this key.
* @param currentTopLevelKey - the current top level key * @param topLevelStack - the top level back stack. It holds only top level keys.
* @param subStacks - the back stacks for each top level key * @param subStacks - the back stacks for each top level key
*/ */
class NavigationState( class NavigationState(
@ -75,16 +75,7 @@ class NavigationState(
@get:VisibleForTesting @get:VisibleForTesting
val currentKey val currentKey
get() = currentSubStack?.last() get() = currentSubStack.last()
// TODO: Fix this
/*val stacksInUse: List<NavKey>
get() = topLevel
listOf(startRoute)
} else {
listOf(startRoute, topLevelRoute)
}
*/
} }
/** /**

@ -17,14 +17,7 @@
package com.google.samples.apps.nowinandroid.feature.bookmarks.api.navigation package com.google.samples.apps.nowinandroid.feature.bookmarks.api.navigation
import androidx.navigation3.runtime.NavKey import androidx.navigation3.runtime.NavKey
import com.google.samples.apps.nowinandroid.core.navigation.NiaNavKey
import kotlinx.serialization.Serializable import kotlinx.serialization.Serializable
/*@Serializable
object BookmarksRoute : NiaNavKey {
override val isTopLevel: Boolean
get() = true
}*/
@Serializable @Serializable
object BookmarksRoute : NavKey object BookmarksRoute : NavKey

@ -17,16 +17,7 @@
package com.google.samples.apps.nowinandroid.feature.foryou.api.navigation package com.google.samples.apps.nowinandroid.feature.foryou.api.navigation
import androidx.navigation3.runtime.NavKey import androidx.navigation3.runtime.NavKey
import com.google.samples.apps.nowinandroid.core.navigation.NiaNavKey
import kotlinx.serialization.Serializable import kotlinx.serialization.Serializable
/*
@Serializable
object ForYouRoute : NiaNavKey { // route to ForYou screen
override val isTopLevel: Boolean
get() = true
}
*/
@Serializable @Serializable
object ForYouRoute : NavKey object ForYouRoute : NavKey

@ -17,21 +17,8 @@
package com.google.samples.apps.nowinandroid.feature.interests.api.navigation package com.google.samples.apps.nowinandroid.feature.interests.api.navigation
import androidx.navigation3.runtime.NavKey import androidx.navigation3.runtime.NavKey
import com.google.samples.apps.nowinandroid.core.navigation.NiaNavKey
import kotlinx.serialization.Serializable import kotlinx.serialization.Serializable
/*
@Serializable
data class InterestsRoute(
// The ID of the topic which will be initially selected at this destination
val initialTopicId: String? = null,
) : NiaNavKey {
override val isTopLevel: Boolean
get() = true
}
*/
@Serializable @Serializable
data class InterestsRoute( data class InterestsRoute(
// The ID of the topic which will be initially selected at this destination // The ID of the topic which will be initially selected at this destination

Loading…
Cancel
Save