Fixed
Status Update
Comments
ap...@google.com <ap...@google.com> #2
Project: platform/frameworks/support
Branch: androidx-main
commit bbfbdb3b7ffc824bcb393595ebfcd4168d9ab934
Author: Matvei Malkov <malkov@google.com>
Date: Tue May 11 13:28:57 2021
Add Card overload with onClick to match Surface.
Most of the cards we have are usually clickable, so to match the Surface we added a Card overload that requires onClick.
Change-Id: Ia8744f372b7ecafd4e92d0fc58245ebc0972b18d
Relnote: BEHAVIOUR-BREAKING: Card now consumes clicks, making clicks added via Card(Modifier.clickable) to be a no-op. Please, use new experimental overload of a Card that accepts onClick.
Relnote: Added a new Card overload that handles clicks as well as other clickable functionality: indication, interactionSource, enabled/disabled. It wasn't possible to use a regular non-clickable Card with the Modifier.clickable because the Card will not clip the ripple indication in those cases.
Bug: 183775620
Test: added for a new overload
M compose/material/material/api/public_plus_experimental_1.0.0-beta08.txt
M compose/material/material/api/public_plus_experimental_current.txt
M compose/material/material/integration-tests/material-demos/src/main/java/androidx/compose/material/demos/ElevationDemo.kt
M compose/material/material/samples/src/main/java/androidx/compose/material/samples/CardSamples.kt
M compose/material/material/samples/src/main/java/androidx/compose/material/samples/SurfaceSamples.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/CardTest.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Card.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Surface.kt
https://android-review.googlesource.com/1703067
Branch: androidx-main
commit bbfbdb3b7ffc824bcb393595ebfcd4168d9ab934
Author: Matvei Malkov <malkov@google.com>
Date: Tue May 11 13:28:57 2021
Add Card overload with onClick to match Surface.
Most of the cards we have are usually clickable, so to match the Surface we added a Card overload that requires onClick.
Change-Id: Ia8744f372b7ecafd4e92d0fc58245ebc0972b18d
Relnote: BEHAVIOUR-BREAKING: Card now consumes clicks, making clicks added via Card(Modifier.clickable) to be a no-op. Please, use new experimental overload of a Card that accepts onClick.
Relnote: Added a new Card overload that handles clicks as well as other clickable functionality: indication, interactionSource, enabled/disabled. It wasn't possible to use a regular non-clickable Card with the Modifier.clickable because the Card will not clip the ripple indication in those cases.
Bug: 183775620
Test: added for a new overload
M compose/material/material/api/public_plus_experimental_1.0.0-beta08.txt
M compose/material/material/api/public_plus_experimental_current.txt
M compose/material/material/integration-tests/material-demos/src/main/java/androidx/compose/material/demos/ElevationDemo.kt
M compose/material/material/samples/src/main/java/androidx/compose/material/samples/CardSamples.kt
M compose/material/material/samples/src/main/java/androidx/compose/material/samples/SurfaceSamples.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/CardTest.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Card.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Surface.kt
ap...@google.com <ap...@google.com> #3
Project: platform/frameworks/support
Branch: androidx-main
commit dfbfcd90a67d66d7eab8a7381e85ae9f831cea4a
Author: Matvei Malkov <malkov@google.com>
Date: Wed Mar 31 17:25:02 2021
Add experimental support for a version of Surface that handles click and make a regular Surface to block touches behind it.
Clickable Surface allows us to handle many issues at once:
1. Allows to define clicks on the Surface layout node, making a11y to be correct
2. Allows to define clicks in the single layout node without the need to transfer indication hnadling to the node below (because of the clipping inside the surface)
3. Allows for a desired default behaviour in a non-clickable Surface when we block pointer events from going under the surface. Throughout the many components it is seens like a desiged behaviour and often leads to bugs (snackbar, Drawer, modal sheet & card being norable examples of surfaces that shouldn't allow touches behind it).
To make this work properly, I refactored ModalBottomSheetLayout to work with the sheet-based swipeable (instead of content-based), since sheet is not blocking clicks.
With this one overload we solve many issues so it seems like a worthy experiment.
Relnote: BEHAVIOUR-BREAKING: Surface now consumes clicks, making clicks added via Surface(Modifier.clickable) to be a no-op. Please, use new experimental overload of Surface that accepts onClick.
Relnote: Added a new Surface overload that handles clicks as well as other clickable functionality: indication, interactionSource, enabled/disabled. It wasn't possible to use a regular non-clickable Surface with the Modifier.clickable because the Surface will not clip the ripple indication in those cases.
Test: Added new for an overload
Fixes: 183775620
Change-Id: I73e6c76ed6389040d824a5dcc82dc84dc4fea0c7
M compose/material/material/api/public_plus_experimental_1.0.0-beta08.txt
M compose/material/material/api/public_plus_experimental_current.txt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/ModalBottomSheetTest.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/SnackbarHostTest.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/SurfaceTest.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Button.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Drawer.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/FloatingActionButton.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/ModalBottomSheet.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Slider.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Surface.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Swipeable.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Switch.kt
https://android-review.googlesource.com/1660323
Branch: androidx-main
commit dfbfcd90a67d66d7eab8a7381e85ae9f831cea4a
Author: Matvei Malkov <malkov@google.com>
Date: Wed Mar 31 17:25:02 2021
Add experimental support for a version of Surface that handles click and make a regular Surface to block touches behind it.
Clickable Surface allows us to handle many issues at once:
1. Allows to define clicks on the Surface layout node, making a11y to be correct
2. Allows to define clicks in the single layout node without the need to transfer indication hnadling to the node below (because of the clipping inside the surface)
3. Allows for a desired default behaviour in a non-clickable Surface when we block pointer events from going under the surface. Throughout the many components it is seens like a desiged behaviour and often leads to bugs (snackbar, Drawer, modal sheet & card being norable examples of surfaces that shouldn't allow touches behind it).
To make this work properly, I refactored ModalBottomSheetLayout to work with the sheet-based swipeable (instead of content-based), since sheet is not blocking clicks.
With this one overload we solve many issues so it seems like a worthy experiment.
Relnote: BEHAVIOUR-BREAKING: Surface now consumes clicks, making clicks added via Surface(Modifier.clickable) to be a no-op. Please, use new experimental overload of Surface that accepts onClick.
Relnote: Added a new Surface overload that handles clicks as well as other clickable functionality: indication, interactionSource, enabled/disabled. It wasn't possible to use a regular non-clickable Surface with the Modifier.clickable because the Surface will not clip the ripple indication in those cases.
Test: Added new for an overload
Fixes: 183775620
Change-Id: I73e6c76ed6389040d824a5dcc82dc84dc4fea0c7
M compose/material/material/api/public_plus_experimental_1.0.0-beta08.txt
M compose/material/material/api/public_plus_experimental_current.txt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/ModalBottomSheetTest.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/SnackbarHostTest.kt
M compose/material/material/src/androidAndroidTest/kotlin/androidx/compose/material/SurfaceTest.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Button.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Drawer.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/FloatingActionButton.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/ModalBottomSheet.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Slider.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Surface.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Swipeable.kt
M compose/material/material/src/commonMain/kotlin/androidx/compose/material/Switch.kt
ap...@google.com <ap...@google.com> #4
Project: platform/frameworks/support
Branch: androidx-main
commit 51769b7a8d6d3e2032e45b3ec1e3cfe29e718ab6
Author: Jeremy Woods <jbwoods@google.com>
Date: Wed Mar 31 10:59:25 2021
Add routes to NavDestination
This change introduces the concept of a route to NavDestination. A route
is String that defines the path to the Destination. Setting the route on
a NavDestination will replace the any id that was set previously and
adds a deep link to the destination. You can set a route on the
NavDestination programatically, or through xml.
RelNote: "You can now add a route to your NavDestination"
Test: NavDestinationTest
Bug: 172823546
Change-Id: I77daf563f480ae54b9728a78e7696ea96d19f264
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/NavDestinationAndroidTest.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavDestination.kt
M navigation/navigation-common/src/main/res-public/values/public_attrs.xml
M navigation/navigation-common/src/main/res/values/attrs.xml
https://android-review.googlesource.com/1660682
Branch: androidx-main
commit 51769b7a8d6d3e2032e45b3ec1e3cfe29e718ab6
Author: Jeremy Woods <jbwoods@google.com>
Date: Wed Mar 31 10:59:25 2021
Add routes to NavDestination
This change introduces the concept of a route to NavDestination. A route
is String that defines the path to the Destination. Setting the route on
a NavDestination will replace the any id that was set previously and
adds a deep link to the destination. You can set a route on the
NavDestination programatically, or through xml.
RelNote: "You can now add a route to your NavDestination"
Test: NavDestinationTest
Bug: 172823546
Change-Id: I77daf563f480ae54b9728a78e7696ea96d19f264
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/NavDestinationAndroidTest.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavDestination.kt
M navigation/navigation-common/src/main/res-public/values/public_attrs.xml
M navigation/navigation-common/src/main/res/values/attrs.xml
ap...@google.com <ap...@google.com> #5
Project: platform/frameworks/support
Branch: androidx-main
commit df16e2452d8333af236a9e5203b396b98f1056be
Author: Jeremy Woods <jbwoods@google.com>
Date: Mon Apr 05 17:19:54 2021
Add routes to NavDestination Kotlin DSL
You can now add a route to your NavDestination when using the Kotlin
DSL.
RelNote: "You can now add a route to your NavDestination via the Kotlin
DSL"
Test: NavDestinationBuilderTest
Bug: 172823546
Change-Id: I1276418c8ca0b22eb420c0be6b97f0a5d41de0f9
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/main/java/androidx/navigation/NavDestinationBuilder.kt
https://android-review.googlesource.com/1660683
Branch: androidx-main
commit df16e2452d8333af236a9e5203b396b98f1056be
Author: Jeremy Woods <jbwoods@google.com>
Date: Mon Apr 05 17:19:54 2021
Add routes to NavDestination Kotlin DSL
You can now add a route to your NavDestination when using the Kotlin
DSL.
RelNote: "You can now add a route to your NavDestination via the Kotlin
DSL"
Test: NavDestinationBuilderTest
Bug: 172823546
Change-Id: I1276418c8ca0b22eb420c0be6b97f0a5d41de0f9
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/main/java/androidx/navigation/NavDestinationBuilder.kt
ap...@google.com <ap...@google.com> #6
Project: platform/frameworks/support
Branch: androidx-main
commit e6ad7e497c3006c7c1fbe701c36d45f3906c33b0
Author: Jeremy Woods <jbwoods@google.com>
Date: Mon May 03 17:50:16 2021
Deprecated getStartDestination
Deprecating getStartDestination in favor of getStartDestinationId to
make the API more explicit.
RelNote: "The `getStartDestination()` API has been deprecated in favor
of `getStartDestinationId()`."
Test: ./gradlew checkApi
Bug: 172823546
Change-Id: I0887ffe673bea453b69dff286d5dc142ce4ef462
M compose/integration-tests/docs-snippets/src/main/java/androidx/compose/integration/docs/navigation/Navigation.kt
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/main/java/androidx/navigation/NavDestination.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavGraph.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavGraphBuilder.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavGraphNavigator.kt
M navigation/navigation-common/src/test/java/androidx/navigation/NavDestinationTest.kt
M navigation/navigation-common/src/test/java/androidx/navigation/NavGraphNavigatorTest.kt
M navigation/navigation-common/src/test/java/androidx/navigation/NavGraphTest.kt
M navigation/navigation-compose/integration-tests/navigation-demos/src/main/java/androidx/navigation/compose/demos/BottomBarNavDemo.kt
M navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavInflaterTest.kt
M navigation/navigation-runtime/src/main/java/androidx/navigation/NavController.kt
M navigation/navigation-ui/src/main/java/androidx/navigation/ui/NavigationUI.kt
https://android-review.googlesource.com/1695087
Branch: androidx-main
commit e6ad7e497c3006c7c1fbe701c36d45f3906c33b0
Author: Jeremy Woods <jbwoods@google.com>
Date: Mon May 03 17:50:16 2021
Deprecated getStartDestination
Deprecating getStartDestination in favor of getStartDestinationId to
make the API more explicit.
RelNote: "The `getStartDestination()` API has been deprecated in favor
of `getStartDestinationId()`."
Test: ./gradlew checkApi
Bug: 172823546
Change-Id: I0887ffe673bea453b69dff286d5dc142ce4ef462
M compose/integration-tests/docs-snippets/src/main/java/androidx/compose/integration/docs/navigation/Navigation.kt
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/main/java/androidx/navigation/NavDestination.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavGraph.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavGraphBuilder.kt
M navigation/navigation-common/src/main/java/androidx/navigation/NavGraphNavigator.kt
M navigation/navigation-common/src/test/java/androidx/navigation/NavDestinationTest.kt
M navigation/navigation-common/src/test/java/androidx/navigation/NavGraphNavigatorTest.kt
M navigation/navigation-common/src/test/java/androidx/navigation/NavGraphTest.kt
M navigation/navigation-compose/integration-tests/navigation-demos/src/main/java/androidx/navigation/compose/demos/BottomBarNavDemo.kt
M navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavInflaterTest.kt
M navigation/navigation-runtime/src/main/java/androidx/navigation/NavController.kt
M navigation/navigation-ui/src/main/java/androidx/navigation/ui/NavigationUI.kt
ap...@google.com <ap...@google.com> #7
Project: platform/frameworks/support
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
https://android-review.googlesource.com/1697773
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
Project: platform/frameworks/support
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
https://android-review.googlesource.com/1661700
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
Project: platform/frameworks/support
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
https://android-review.googlesource.com/1662685
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
Project: platform/frameworks/support
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
https://android-review.googlesource.com/1665701
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.