Status Update
Comments
ap...@google.com <ap...@google.com> #3
Thanks for the report!
ap...@google.com <ap...@google.com> #4
The release notes documentation has been edited to clarify this change in behavior for line height.
To support non-standard text sizes, we encourage users to follow the Material design system and use a different style = LocalTextStyle.current.copy(lineHeight = TextUnit.Unspecified)
, or create a custom Typography
entirely.
ap...@google.com <ap...@google.com> #5
ap...@google.com <ap...@google.com> #6
In my case, I have multiple font sizes in the same Text
(using SpanStyle
in AnnotatedString
). There are legitimate reasons for this. For example, when combining Chinese and English (phonetic) together (for language-learning purposes).
ap...@google.com <ap...@google.com> #7
Branch: androidx-main
commit 81aaeccc3cd3530b790317e0488380464f29023e
Author: Jeremy Woods <jbwoods@google.com>
Date: Wed May 05 13:08:11 2021
Deprecate popUpTo in NavOptions
This deprecates popUpTo properties in by NavOptions and the
NavOptionsBuilder DSL in favor of popUpToId. Setting the popUpToId
should be done by using the popUpTo functions without passing in a
builder.
RelNote: "The `popUpTo` kotlin property has been deprecated in favor of
`popUpToId`."
Test: ./gradlew checkApi
Bug: 172823546
Change-Id: I59c73c383b84eb2b36472966aedff1b53957e26d
M navigation/navigation-common/api/api_lint.ignore
M navigation/navigation-common/api/current.txt
M navigation/navigation-common/api/public_plus_experimental_current.txt
M navigation/navigation-common/api/restricted_current.txt
M navigation/navigation-common/src/androidTest/java/androidx/navigation/NavDestinationBuilderTest.kt
M navigation/navigation-common/src/androidTest/java/androidx/navigation/NavOptionsBuilderTest.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavOptions.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavOptionsBuilder.kt
M navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavControllerTest.kt
M navigation/navigation-runtime/src/main/java/androidx/navigation/NavController.kt
ap...@google.com <ap...@google.com> #8
Branch: androidx-main
commit fc9a744da1fd9cc99aaf92ec679bd01bb7b4564f
Author: Jeremy Woods <jbwoods@google.com>
Date: Wed Mar 31 19:09:29 2021
Add routes to NavGraph
This add routes to NavGraph. You can set a route and
startDestinationRoute as an alternative to an id and
startDestinationId.
Passing a blank route of startDestinationRoute is equivalent to passing
0 meaning you can have a NavGraph with a blank route, but you cannot
have a NavGraph with a blank startDestinationRoute.
This change also includes the addition of routes to the NavGraphBuilder
Kotlin DSL
RelNote: "Navigation now supports adding NavGraphs by using a route."
Test: NavGraphTest, NavGraphAndroidTest, NavGraphBuilderTest
Bug: 172823546
Change-Id: I36c68144318ac23785c9178e847b677c0ef1cd8d
M navigation/navigation-common/api/api_lint.ignore
M navigation/navigation-common/api/current.txt
M navigation/navigation-common/api/public_plus_experimental_current.txt
M navigation/navigation-common/api/restricted_current.txt
M navigation/navigation-common/src/androidTest/java/androidx/navigation/NavGraphAndroidTest.kt
M navigation/navigation-common/src/androidTest/java/androidx/navigation/NavGraphBuilderTest.kt
M navigation/navigation-common/src/androidTest/java/androidx/navigation/NavGraphTest.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavDestinationBuilder.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavGraph.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavGraphBuilder.kt
ap...@google.com <ap...@google.com> #9
Branch: androidx-main
commit 7220fdfc37ee734820cda773812ad7ec40e587d6
Author: Jeremy Woods <jbwoods@google.com>
Date: Thu Apr 01 14:42:02 2021
Add popUpToRoute to NavOptions
Instead of popUpTo with an id, you can now use it with route.
RelNote: "NavOptions now supports popUpToRoute to allow popping to the
given destination route"
Test: NavOptionsBuilderTest
Bug: 172823546
Change-Id: I0c8fb723e1bfb410b1518a619620415f7a1893e1
M navigation/navigation-common/api/api_lint.ignore
M navigation/navigation-common/api/current.txt
M navigation/navigation-common/api/public_plus_experimental_current.txt
M navigation/navigation-common/api/restricted_current.txt
M navigation/navigation-common/src/androidTest/java/androidx/navigation/NavOptionsBuilderTest.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavOptions.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavOptionsBuilder.kt
ap...@google.com <ap...@google.com> #10
Branch: androidx-main
commit 385530a581a2438d09c6aa8a96635927c1bdb08a
Author: Jeremy Woods <jbwoods@google.com>
Date: Wed Apr 07 15:02:34 2021
Remove routes from navigation compose
Routes are now part of base navigation so we can remove them from
nav-compose. Removed the duplicated APIs and made the appropriate
changes to imports.
RelNote: "You no longer need to use extension methods for route support
in Navigation Compose."
Test: ./gradlew checkApi
Bug: 172823546
Change-Id: I22beb923cccecdc76c555abc7921ab3d9efc860d
M compose/integration-tests/docs-snippets/src/main/java/androidx/compose/integration/docs/libraries/Libraries.kt
M compose/integration-tests/docs-snippets/src/main/java/androidx/compose/integration/docs/navigation/Navigation.kt
M compose/material/material/integration-tests/material-catalog/src/main/java/androidx/compose/material/catalog/NavGraph.kt
M hilt/hilt-navigation-compose/samples/src/main/java/androidx/hilt/navigation/compose/samples/HiltViewModelSamples.kt
M hilt/hilt-navigation-compose/src/androidTest/java/androidx/hilt/navigation/compose/HiltViewModelComposeTest.kt
M hilt/hilt-navigation-compose/src/main/java/androidx/hilt/navigation/compose/HiltViewModel.kt
M navigation/navigation-compose/api/current.txt
M navigation/navigation-compose/api/public_plus_experimental_current.txt
M navigation/navigation-compose/api/restricted_current.txt
M navigation/navigation-compose/integration-tests/navigation-demos/src/main/java/androidx/navigation/compose/demos/BottomBarNavDemo.kt
M navigation/navigation-compose/integration-tests/navigation-demos/src/main/java/androidx/navigation/compose/demos/NavPopUpToDemo.kt
M navigation/navigation-compose/integration-tests/navigation-demos/src/main/java/androidx/navigation/compose/demos/NavSingleTopDemo.kt
M navigation/navigation-compose/integration-tests/navigation-demos/src/main/java/androidx/navigation/compose/demos/NavWithArgsDemo.kt
M navigation/navigation-compose/samples/src/main/java/androidx/navigation/compose/samples/NavigationSamples.kt
M navigation/navigation-compose/src/androidTest/java/androidx/navigation/compose/NavGraphBuilderTest.kt
M navigation/navigation-compose/src/androidTest/java/androidx/navigation/compose/NavHostControllerTest.kt
M navigation/navigation-compose/src/androidTest/java/androidx/navigation/compose/NavHostTest.kt
M navigation/navigation-compose/src/main/java/androidx/navigation/compose/NavGraphBuilder.kt
M navigation/navigation-compose/src/main/java/androidx/navigation/compose/NavHost.kt
M navigation/navigation-compose/src/main/java/androidx/navigation/compose/NavHostController.kt
D navigation/navigation-compose/src/main/java/androidx/navigation/compose/NavOptionsBuilder.kt
il...@google.com <il...@google.com> #11
We've completed the merge of Navigation Compose specific concepts like routes into the core classes of Navigation (i.e., NavDestination
, NavController
, etc.). As such, many of the APIs that used to be extension methods are now methods on the classes themselves. This means that a number of imports previously needed can be removed:
import androidx.navigation.compose.navigation
import androidx.navigation.compose.createGraph
import androidx.navigation.compose.getBackStackEntry
import androidx.navigation.compose.navigate
import androidx.navigation.compose.popUpTo
And the KEY_ROUTE
can now be accessed simply by calling destination.route
.
With these changes, Navigation Compose will join the same versioning scheme as the rest of Navigation and be moved to version 2.4.0-alpha01
for the next version.
Description
Navigation Compose has APIs that would be a better fit as part of the base Navigation library. Instead of allowing Navigation Compose to go to 1.0.0 stable with the libraries and attempting to deprecate them later when they are added to base Navigation, we should instead add those APIs to the next version of Navigation and move Navigation Compose in sync with that.
This means that Navigation Compose will be part of Navigation 2.4.0 instead of an 1.0.0.