Observe navController.previousBackStackEntry
as a state
#121
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The direct use of
navController.previousBackStackEntry
in a composable function doesn't actually react to its changes. In theCupcakeApp
composable function, the existing code works only becausenavController.currentBackStackEntryAsState()
is observed as a state above, and when the "current entry" changes, the composable function is rerun so the "previous entry"navController.previousBackStackEntry
is also updated. I have verified this by removingnavController.currentBackStackEntryAsState()
and then applying the fix in 2 separate commits: you can see the back navigation button doesn't show with huanshankeji@2654076, and it's back with huanshankeji@1ebc0c6.