Make findDestination and matchDestination public
We should provide our internal NavigationUI helper methods so that is
easier for developers to write their own NavigationUI pieces.
RelNote: "`findDestination()` and `matchDestination()` are now public
and can be used to help implement custom NavigationUI"
Test: ./gradlew checkApi
Bug: 188183365
Change-Id: I2932fc4ddba6f381e5e353ee30d2233140e5a674
diff --git a/navigation/navigation-common/api/restricted_current.txt b/navigation/navigation-common/api/restricted_current.txt
index afc02e9..dda39ab 100644
--- a/navigation/navigation-common/api/restricted_current.txt
+++ b/navigation/navigation-common/api/restricted_current.txt
@@ -188,6 +188,7 @@
method public final void addDeepLink(androidx.navigation.NavDeepLink navDeepLink);
method public final androidx.navigation.NavAction? getAction(@IdRes int id);
method public final java.util.Map<java.lang.String,androidx.navigation.NavArgument> getArguments();
+ method public static final kotlin.sequences.Sequence<androidx.navigation.NavDestination> getHierarchy(androidx.navigation.NavDestination);
method @IdRes public final int getId();
method public final CharSequence? getLabel();
method public final String getNavigatorName();
@@ -219,7 +220,9 @@
}
public static final class NavDestination.Companion {
+ method public kotlin.sequences.Sequence<androidx.navigation.NavDestination> getHierarchy(androidx.navigation.NavDestination);
method protected <C> Class<? extends C> parseClassFromName(android.content.Context context, String name, Class<? extends C> expectedClassType);
+ property public final kotlin.sequences.Sequence<androidx.navigation.NavDestination> hierarchy;
}
@androidx.navigation.NavDestinationDsl public class NavDestinationBuilder<D extends androidx.navigation.NavDestination> {
@@ -260,6 +263,7 @@
method public final void clear();
method public final androidx.navigation.NavDestination? findNode(@IdRes int resId);
method public final androidx.navigation.NavDestination? findNode(String? route);
+ method public static final androidx.navigation.NavDestination findStartDestination(androidx.navigation.NavGraph);
method @Deprecated @IdRes public final int getStartDestination();
method @IdRes public final int getStartDestinationId();
method public final String? getStartDestinationRoute();
@@ -269,6 +273,11 @@
method public final void setStartDestination(String startDestRoute);
property @IdRes public final int startDestinationId;
property public final String? startDestinationRoute;
+ field public static final androidx.navigation.NavGraph.Companion Companion;
+ }
+
+ public static final class NavGraph.Companion {
+ method public androidx.navigation.NavDestination findStartDestination(androidx.navigation.NavGraph);
}
@androidx.navigation.NavDestinationDsl public class NavGraphBuilder extends androidx.navigation.NavDestinationBuilder<androidx.navigation.NavGraph> {