From 6ccfc5a8eaa59a91f94792f0d47209f6cf99003c Mon Sep 17 00:00:00 2001 From: Ray Ryan Date: Wed, 17 Jan 2024 10:42:00 -0800 Subject: [PATCH] BREAKING: container > navigation In preparation for (finally!) locking down the workflow-ui API, renames the `com.squareup.workflow1.ui.container` package to `navigation`, since that's the common theme of nearly everything in there. I think this simple change should help make our navigation story a bit more self documentating. Yes, I'll still write navigation docs. Other changes: * `View.setBackHandler` moves from `ui` to `ui.navigation` * `EnvironmentScreen`, `Screen.withEnvironment()`, `Screen.withRegistry()` which this PR moves up to the `ui` package. References to these had bled out into other spots already, so this feels like a move in the right direction. * `OnBackPressedDispatcherOwnerKey` moves from `ui` to `ui.androidx` Also, note that the packages of the deprecated classes in the `container-android` and `container-common` modules were not changed, since they're about to be deleted. --- .../complex/poetry/PerformancePoemWorkflow.kt | 4 +- .../poetry/PerformancePoemsBrowserWorkflow.kt | 2 +- .../poetry/PerformancePoetryActivity.kt | 2 +- .../poetry/views/MayBeLoadingScreen.kt | 4 +- .../HelloBindingActivity.kt | 2 +- .../NestedRenderingsActivity.kt | 2 +- .../overviewdetail/OverviewDetailContainer.kt | 4 +- .../panel/PanelOverlayDialogFactory.kt | 8 +- .../sample/poetryapp/PoetryActivity.kt | 2 +- .../squareup/sample/ravenapp/RavenActivity.kt | 2 +- .../overviewdetail/OverviewDetailScreen.kt | 4 +- .../sample/container/panel/PanelOverlay.kt | 4 +- .../OverviewDetailScreenTest.kt | 2 +- .../hellobackbutton/AreYouSureWorkflow.kt | 14 +- .../HelloBackButtonActivity.kt | 2 +- .../hellobackbutton/HelloBackButtonScreen.kt | 2 +- .../sample/poetry/RealPoemWorkflow.kt | 4 +- .../sample/poetry/RealPoemsBrowserWorkflow.kt | 2 +- .../sample/poetry/StanzaListScreen.kt | 6 +- .../squareup/sample/poetry/StanzaScreen.kt | 6 +- .../sample/dungeon/DungeonActivity.kt | 2 +- .../sample/dungeon/DungeonAppWorkflow.kt | 4 +- .../sample/dungeon/GameSessionWorkflow.kt | 8 +- .../ShakeableTimeMachineLayoutRunner.kt | 2 +- .../nestedoverlays/NestedOverlaysWorkflow.kt | 6 +- .../sample/authworkflow/LoginViewFactory.kt | 2 +- .../authworkflow/SecondFactorViewFactory.kt | 2 +- .../gameworkflow/GameOverLayoutRunner.kt | 2 +- .../gameworkflow/GamePlayViewFactory.kt | 2 +- .../sample/gameworkflow/NewGameViewFactory.kt | 2 +- .../sample/mainactivity/TicTacToeActivity.kt | 2 +- .../sample/authworkflow/AuthWorkflow.kt | 2 +- .../sample/gameworkflow/RunGameWorkflow.kt | 12 +- .../sample/mainworkflow/TicTacToeWorkflow.kt | 6 +- .../mainworkflow/TicTacToeWorkflowTest.kt | 4 +- .../com/squareup/sample/todo/ToDoActivity.kt | 2 +- .../squareup/sample/todo/TodoEditorScreen.kt | 6 +- .../sample/todo/TodoListsAppWorkflow.kt | 2 +- .../compose/ComposeViewTreeIntegrationTest.kt | 12 +- .../compose/NoTransitionBackStackContainer.kt | 6 +- .../workflow1/ui/compose/WorkflowRendering.kt | 2 +- .../workflow1/ui/modal/ModalViewContainer.kt | 2 +- .../container-common/api/container-common.api | 2 +- .../workflow1/ui/backstack/BackStackScreen.kt | 2 +- workflow-ui/core-android/api/core-android.api | 158 +++++++++--------- .../src/androidTest/AndroidManifest.xml | 2 +- ...kStackContainerPersistenceLifecycleTest.kt | 14 +- .../BackStackContainerTest.kt | 2 +- .../DialogIntegrationTest.kt | 3 +- .../{ => navigation}/ViewBackHandlerTest.kt | 3 +- .../ViewStateCacheTest.kt | 4 +- .../BackStackContainerLifecycleActivity.kt | 10 +- .../NoTransitionBackStackContainer.kt | 6 +- .../fixtures/ViewStateTestView.kt | 4 +- .../squareup/workflow1/ui/AndroidScreen.kt | 4 +- .../workflow1/ui/AndroidViewRegistry.kt | 3 +- .../squareup/workflow1/ui/BackButtonScreen.kt | 4 +- .../workflow1/ui/ScreenViewFactory.kt | 2 +- .../workflow1/ui/ScreenViewFactoryFinder.kt | 9 +- .../squareup/workflow1/ui/WorkflowLayout.kt | 19 ++- .../OnBackPressedDispatcherOwnerKey.kt | 4 +- .../ui/androidx/WorkflowAndroidXSupport.kt | 1 - .../AlertDialogThemeResId.kt | 2 +- .../AlertOverlayDialogFactory.kt | 19 ++- .../AndroidDialogBounds.kt | 2 +- .../AndroidOverlay.kt | 2 +- .../AsDialogHolderWithContent.kt | 4 +- .../BackButtonScreen.kt | 3 +- .../BackStackContainer.kt | 6 +- .../BackStackScreenViewFactory.kt | 2 +- .../BodyAndOverlaysContainer.kt | 2 +- .../CoveredByModal.kt | 2 +- .../DialogCollator.kt | 4 +- .../DialogOverlay.kt | 2 +- .../DialogSession.kt | 4 +- .../DispatchCancelEvent.kt | 2 +- .../EnvironmentScreenLegacyViewFactory.kt | 3 +- .../FullScreenModalFactory.kt | 2 +- .../LayeredDialogSessions.kt | 4 +- .../{container => navigation}/OverlayArea.kt | 2 +- .../OverlayDialogFactory.kt | 2 +- .../OverlayDialogFactoryFinder.kt | 2 +- .../OverlayDialogHolder.kt | 2 +- .../RealOverlayDialogHolder.kt | 2 +- .../ScreenOverlayDialogFactory.kt | 3 +- .../ViewSetBackHandler.kt} | 4 +- .../ViewStateCache.kt | 2 +- .../ViewStateFrame.kt | 2 +- .../src/main/res/layout/view_stack_layout.xml | 5 +- ...EnvironmentScreenAndroidIntegrationTest.kt | 11 +- .../ui/LegacyAndroidViewRegistryTest.kt | 2 +- .../workflow1/ui/WorkflowLayoutTest.kt | 2 +- .../NamedScreenAndroidIntegrationTest.kt | 2 +- .../ScreenViewFactoryTestUtil.kt | 2 +- workflow-ui/core-common/api/core-common.api | 150 ++++++++--------- .../com/squareup/workflow1/ui/Container.kt | 8 +- .../ui/{container => }/EnvironmentScreen.kt | 9 +- .../squareup/workflow1/ui/ViewEnvironment.kt | 4 +- .../{container => navigation}/AlertOverlay.kt | 2 +- .../BackStackConfig.kt | 6 +- .../BackStackScreen.kt | 8 +- .../BodyAndOverlaysScreen.kt | 2 +- .../FullScreenModal.kt | 2 +- .../{container => navigation}/ModalOverlay.kt | 2 +- .../ui/{container => navigation}/Overlay.kt | 2 +- .../ScreenOverlay.kt | 2 +- .../{container => }/EnvironmentScreenTest.kt | 9 +- .../BackStackScreenTest.kt | 2 +- .../BodyAndOverlaysScreenTest.kt | 2 +- 109 files changed, 367 insertions(+), 377 deletions(-) rename workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/{container => navigation}/BackStackContainerPersistenceLifecycleTest.kt (96%) rename workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/{container => navigation}/BackStackContainerTest.kt (99%) rename workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/{container => navigation}/DialogIntegrationTest.kt (98%) rename workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/{ => navigation}/ViewBackHandlerTest.kt (94%) rename workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/{container => navigation}/ViewStateCacheTest.kt (98%) rename workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/{container => navigation}/fixtures/BackStackContainerLifecycleActivity.kt (92%) rename workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/{container => navigation}/fixtures/NoTransitionBackStackContainer.kt (88%) rename workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/{container => navigation}/fixtures/ViewStateTestView.kt (90%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{ => androidx}/OnBackPressedDispatcherOwnerKey.kt (77%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/AlertDialogThemeResId.kt (89%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/AlertOverlayDialogFactory.kt (86%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/AndroidDialogBounds.kt (98%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/AndroidOverlay.kt (97%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/AsDialogHolderWithContent.kt (97%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/BackButtonScreen.kt (96%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/BackStackContainer.kt (97%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/BackStackScreenViewFactory.kt (94%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/BodyAndOverlaysContainer.kt (99%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/CoveredByModal.kt (93%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/DialogCollator.kt (98%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/DialogOverlay.kt (96%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/DialogSession.kt (99%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/DispatchCancelEvent.kt (89%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/EnvironmentScreenLegacyViewFactory.kt (84%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/FullScreenModalFactory.kt (95%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/LayeredDialogSessions.kt (99%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/OverlayArea.kt (95%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/OverlayDialogFactory.kt (99%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/OverlayDialogFactoryFinder.kt (97%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/OverlayDialogHolder.kt (99%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/RealOverlayDialogHolder.kt (95%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/ScreenOverlayDialogFactory.kt (97%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{ViewBackHandler.kt => navigation/ViewSetBackHandler.kt} (95%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/ViewStateCache.kt (99%) rename workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/{container => navigation}/ViewStateFrame.kt (96%) rename workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/{container => }/EnvironmentScreenAndroidIntegrationTest.kt (84%) rename workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/{container => navigation}/NamedScreenAndroidIntegrationTest.kt (96%) rename workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/{container => navigation}/ScreenViewFactoryTestUtil.kt (97%) rename workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/{container => }/EnvironmentScreen.kt (85%) rename workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/{container => navigation}/AlertOverlay.kt (96%) rename workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/{container => navigation}/BackStackConfig.kt (85%) rename workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/{container => navigation}/BackStackScreen.kt (92%) rename workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/{container => navigation}/BodyAndOverlaysScreen.kt (98%) rename workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/{container => navigation}/FullScreenModal.kt (92%) rename workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/{container => navigation}/ModalOverlay.kt (85%) rename workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/{container => navigation}/Overlay.kt (95%) rename workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/{container => navigation}/ScreenOverlay.kt (91%) rename workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/{container => }/EnvironmentScreenTest.kt (89%) rename workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/{container => navigation}/BackStackScreenTest.kt (98%) rename workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/{container => navigation}/BodyAndOverlaysScreenTest.kt (97%) diff --git a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemWorkflow.kt b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemWorkflow.kt index cd159887f4..022ca5c9a6 100644 --- a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemWorkflow.kt +++ b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemWorkflow.kt @@ -33,8 +33,8 @@ import com.squareup.workflow1.WorkflowAction.Companion.noAction import com.squareup.workflow1.action import com.squareup.workflow1.runningWorker import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen -import com.squareup.workflow1.ui.container.toBackStackScreen +import com.squareup.workflow1.ui.navigation.BackStackScreen +import com.squareup.workflow1.ui.navigation.toBackStackScreen import kotlinx.coroutines.delay import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.flow diff --git a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemsBrowserWorkflow.kt b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemsBrowserWorkflow.kt index dd8613cd8f..3fcd4cca88 100644 --- a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemsBrowserWorkflow.kt +++ b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoemsBrowserWorkflow.kt @@ -25,7 +25,7 @@ import com.squareup.workflow1.WorkflowAction.Companion.noAction import com.squareup.workflow1.action import com.squareup.workflow1.runningWorker import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen +import com.squareup.workflow1.ui.navigation.BackStackScreen import kotlinx.coroutines.delay import kotlinx.coroutines.flow.MutableStateFlow diff --git a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoetryActivity.kt b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoetryActivity.kt index f7d38ce2be..3cabb94f18 100644 --- a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoetryActivity.kt +++ b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/PerformancePoetryActivity.kt @@ -29,8 +29,8 @@ import com.squareup.workflow1.ui.ViewEnvironment.Companion.EMPTY import com.squareup.workflow1.ui.ViewRegistry import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.withEnvironment import com.squareup.workflow1.ui.renderWorkflowIn +import com.squareup.workflow1.ui.withEnvironment import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.onEach diff --git a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/views/MayBeLoadingScreen.kt b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/views/MayBeLoadingScreen.kt index 3bd6ea3f25..6f10ade41b 100644 --- a/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/views/MayBeLoadingScreen.kt +++ b/benchmarks/performance-poetry/complex-poetry/src/main/java/com/squareup/benchmarks/performance/complex/poetry/views/MayBeLoadingScreen.kt @@ -3,8 +3,8 @@ package com.squareup.benchmarks.performance.complex.poetry.views import com.squareup.sample.container.overviewdetail.OverviewDetailScreen import com.squareup.sample.container.panel.ScrimScreen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BodyAndOverlaysScreen -import com.squareup.workflow1.ui.container.FullScreenModal +import com.squareup.workflow1.ui.navigation.BodyAndOverlaysScreen +import com.squareup.workflow1.ui.navigation.FullScreenModal @OptIn(WorkflowUiExperimentalApi::class) typealias MayBeLoadingScreen = diff --git a/samples/compose-samples/src/main/java/com/squareup/sample/compose/hellocomposebinding/HelloBindingActivity.kt b/samples/compose-samples/src/main/java/com/squareup/sample/compose/hellocomposebinding/HelloBindingActivity.kt index 872ac7de0a..6ced247b36 100644 --- a/samples/compose-samples/src/main/java/com/squareup/sample/compose/hellocomposebinding/HelloBindingActivity.kt +++ b/samples/compose-samples/src/main/java/com/squareup/sample/compose/hellocomposebinding/HelloBindingActivity.kt @@ -19,9 +19,9 @@ import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.compose.composeViewFactory import com.squareup.workflow1.ui.compose.withCompositionRoot -import com.squareup.workflow1.ui.container.withEnvironment import com.squareup.workflow1.ui.plus import com.squareup.workflow1.ui.renderWorkflowIn +import com.squareup.workflow1.ui.withEnvironment import kotlinx.coroutines.flow.StateFlow @OptIn(WorkflowUiExperimentalApi::class) diff --git a/samples/compose-samples/src/main/java/com/squareup/sample/compose/nestedrenderings/NestedRenderingsActivity.kt b/samples/compose-samples/src/main/java/com/squareup/sample/compose/nestedrenderings/NestedRenderingsActivity.kt index 72b69310b4..51a2962724 100644 --- a/samples/compose-samples/src/main/java/com/squareup/sample/compose/nestedrenderings/NestedRenderingsActivity.kt +++ b/samples/compose-samples/src/main/java/com/squareup/sample/compose/nestedrenderings/NestedRenderingsActivity.kt @@ -19,9 +19,9 @@ import com.squareup.workflow1.ui.ViewRegistry import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.compose.withCompositionRoot -import com.squareup.workflow1.ui.container.withEnvironment import com.squareup.workflow1.ui.plus import com.squareup.workflow1.ui.renderWorkflowIn +import com.squareup.workflow1.ui.withEnvironment import kotlinx.coroutines.flow.StateFlow @OptIn(WorkflowUiExperimentalApi::class) diff --git a/samples/containers/android/src/main/java/com/squareup/sample/container/overviewdetail/OverviewDetailContainer.kt b/samples/containers/android/src/main/java/com/squareup/sample/container/overviewdetail/OverviewDetailContainer.kt index c6cd6a1424..03267580b8 100644 --- a/samples/containers/android/src/main/java/com/squareup/sample/container/overviewdetail/OverviewDetailContainer.kt +++ b/samples/containers/android/src/main/java/com/squareup/sample/container/overviewdetail/OverviewDetailContainer.kt @@ -13,8 +13,8 @@ import com.squareup.workflow1.ui.ScreenViewRunner import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.WorkflowViewStub -import com.squareup.workflow1.ui.container.BackStackScreen -import com.squareup.workflow1.ui.container.plus +import com.squareup.workflow1.ui.navigation.BackStackScreen +import com.squareup.workflow1.ui.navigation.plus /** * Displays [OverviewDetailScreen] renderings in either split pane or single pane diff --git a/samples/containers/android/src/main/java/com/squareup/sample/container/panel/PanelOverlayDialogFactory.kt b/samples/containers/android/src/main/java/com/squareup/sample/container/panel/PanelOverlayDialogFactory.kt index de82600bf3..699866da19 100644 --- a/samples/containers/android/src/main/java/com/squareup/sample/container/panel/PanelOverlayDialogFactory.kt +++ b/samples/containers/android/src/main/java/com/squareup/sample/container/panel/PanelOverlayDialogFactory.kt @@ -6,10 +6,10 @@ import androidx.appcompat.app.AppCompatDialog import com.squareup.sample.container.R import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.OverlayDialogFactory -import com.squareup.workflow1.ui.container.OverlayDialogHolder -import com.squareup.workflow1.ui.container.asDialogHolderWithContent -import com.squareup.workflow1.ui.container.setBounds +import com.squareup.workflow1.ui.navigation.OverlayDialogFactory +import com.squareup.workflow1.ui.navigation.OverlayDialogHolder +import com.squareup.workflow1.ui.navigation.asDialogHolderWithContent +import com.squareup.workflow1.ui.navigation.setBounds import kotlin.reflect.KClass /** diff --git a/samples/containers/app-poetry/src/main/java/com/squareup/sample/poetryapp/PoetryActivity.kt b/samples/containers/app-poetry/src/main/java/com/squareup/sample/poetryapp/PoetryActivity.kt index cfd27146d4..7fe351fa93 100644 --- a/samples/containers/app-poetry/src/main/java/com/squareup/sample/poetryapp/PoetryActivity.kt +++ b/samples/containers/app-poetry/src/main/java/com/squareup/sample/poetryapp/PoetryActivity.kt @@ -17,8 +17,8 @@ import com.squareup.workflow1.config.AndroidRuntimeConfigTools import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.withRegistry import com.squareup.workflow1.ui.renderWorkflowIn +import com.squareup.workflow1.ui.withRegistry import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.map import timber.log.Timber diff --git a/samples/containers/app-raven/src/main/java/com/squareup/sample/ravenapp/RavenActivity.kt b/samples/containers/app-raven/src/main/java/com/squareup/sample/ravenapp/RavenActivity.kt index ec8ad55280..ab7099e420 100644 --- a/samples/containers/app-raven/src/main/java/com/squareup/sample/ravenapp/RavenActivity.kt +++ b/samples/containers/app-raven/src/main/java/com/squareup/sample/ravenapp/RavenActivity.kt @@ -17,8 +17,8 @@ import com.squareup.workflow1.config.AndroidRuntimeConfigTools import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.withRegistry import com.squareup.workflow1.ui.renderWorkflowIn +import com.squareup.workflow1.ui.withRegistry import kotlinx.coroutines.Job import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.map diff --git a/samples/containers/common/src/main/java/com/squareup/sample/container/overviewdetail/OverviewDetailScreen.kt b/samples/containers/common/src/main/java/com/squareup/sample/container/overviewdetail/OverviewDetailScreen.kt index aac9ddbd07..29109b1ee3 100644 --- a/samples/containers/common/src/main/java/com/squareup/sample/container/overviewdetail/OverviewDetailScreen.kt +++ b/samples/containers/common/src/main/java/com/squareup/sample/container/overviewdetail/OverviewDetailScreen.kt @@ -2,8 +2,8 @@ package com.squareup.sample.container.overviewdetail import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen -import com.squareup.workflow1.ui.container.plus +import com.squareup.workflow1.ui.navigation.BackStackScreen +import com.squareup.workflow1.ui.navigation.plus /** * Rendering type for overview / detail containers, with [BackStackScreen] in both roles. diff --git a/samples/containers/common/src/main/java/com/squareup/sample/container/panel/PanelOverlay.kt b/samples/containers/common/src/main/java/com/squareup/sample/container/panel/PanelOverlay.kt index 49f657244f..1f164d160a 100644 --- a/samples/containers/common/src/main/java/com/squareup/sample/container/panel/PanelOverlay.kt +++ b/samples/containers/common/src/main/java/com/squareup/sample/container/panel/PanelOverlay.kt @@ -2,8 +2,8 @@ package com.squareup.sample.container.panel import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.ModalOverlay -import com.squareup.workflow1.ui.container.ScreenOverlay +import com.squareup.workflow1.ui.navigation.ModalOverlay +import com.squareup.workflow1.ui.navigation.ScreenOverlay @OptIn(WorkflowUiExperimentalApi::class) class PanelOverlay( diff --git a/samples/containers/common/src/test/java/com/squareup/sample/container/overviewdetail/OverviewDetailScreenTest.kt b/samples/containers/common/src/test/java/com/squareup/sample/container/overviewdetail/OverviewDetailScreenTest.kt index 9d298044fb..eedf00f82a 100644 --- a/samples/containers/common/src/test/java/com/squareup/sample/container/overviewdetail/OverviewDetailScreenTest.kt +++ b/samples/containers/common/src/test/java/com/squareup/sample/container/overviewdetail/OverviewDetailScreenTest.kt @@ -3,7 +3,7 @@ package com.squareup.sample.container.overviewdetail import com.google.common.truth.Truth.assertThat import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen +import com.squareup.workflow1.ui.navigation.BackStackScreen import org.junit.Test @OptIn(WorkflowUiExperimentalApi::class) diff --git a/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/AreYouSureWorkflow.kt b/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/AreYouSureWorkflow.kt index c18c08c9c6..d00ad18ea3 100644 --- a/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/AreYouSureWorkflow.kt +++ b/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/AreYouSureWorkflow.kt @@ -15,13 +15,13 @@ import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewFactory.Companion.map import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.AlertOverlay -import com.squareup.workflow1.ui.container.AlertOverlay.Button.NEGATIVE -import com.squareup.workflow1.ui.container.AlertOverlay.Button.POSITIVE -import com.squareup.workflow1.ui.container.AlertOverlay.Event.ButtonClicked -import com.squareup.workflow1.ui.container.AlertOverlay.Event.Canceled -import com.squareup.workflow1.ui.container.BackButtonScreen -import com.squareup.workflow1.ui.container.BodyAndOverlaysScreen +import com.squareup.workflow1.ui.navigation.AlertOverlay +import com.squareup.workflow1.ui.navigation.AlertOverlay.Button.NEGATIVE +import com.squareup.workflow1.ui.navigation.AlertOverlay.Button.POSITIVE +import com.squareup.workflow1.ui.navigation.AlertOverlay.Event.ButtonClicked +import com.squareup.workflow1.ui.navigation.AlertOverlay.Event.Canceled +import com.squareup.workflow1.ui.navigation.BackButtonScreen +import com.squareup.workflow1.ui.navigation.BodyAndOverlaysScreen import com.squareup.workflow1.ui.toParcelable import com.squareup.workflow1.ui.toSnapshot import kotlinx.parcelize.Parcelize diff --git a/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonActivity.kt b/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonActivity.kt index 09f2017221..07017e2219 100644 --- a/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonActivity.kt +++ b/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonActivity.kt @@ -15,8 +15,8 @@ import com.squareup.workflow1.config.AndroidRuntimeConfigTools import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.withRegistry import com.squareup.workflow1.ui.renderWorkflowIn +import com.squareup.workflow1.ui.withRegistry import kotlinx.coroutines.Job import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.map diff --git a/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonScreen.kt b/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonScreen.kt index dfc911df5b..5b5cdd7142 100644 --- a/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonScreen.kt +++ b/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonScreen.kt @@ -6,7 +6,7 @@ import com.squareup.sample.hellobackbutton.databinding.HelloBackButtonLayoutBind import com.squareup.workflow1.ui.AndroidScreen import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.setBackHandler @OptIn(WorkflowUiExperimentalApi::class) data class HelloBackButtonScreen( diff --git a/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/RealPoemWorkflow.kt b/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/RealPoemWorkflow.kt index 17c68bcb42..d9ef5e0f0a 100644 --- a/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/RealPoemWorkflow.kt +++ b/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/RealPoemWorkflow.kt @@ -18,8 +18,8 @@ import com.squareup.workflow1.WorkflowAction import com.squareup.workflow1.WorkflowAction.Companion.noAction import com.squareup.workflow1.parse import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen -import com.squareup.workflow1.ui.container.toBackStackScreen +import com.squareup.workflow1.ui.navigation.BackStackScreen +import com.squareup.workflow1.ui.navigation.toBackStackScreen /** * Default implementation of [PoemWorkflow]. diff --git a/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/RealPoemsBrowserWorkflow.kt b/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/RealPoemsBrowserWorkflow.kt index f330af226e..2938d353d3 100644 --- a/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/RealPoemsBrowserWorkflow.kt +++ b/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/RealPoemsBrowserWorkflow.kt @@ -10,7 +10,7 @@ import com.squareup.workflow1.StatefulWorkflow import com.squareup.workflow1.action import com.squareup.workflow1.parse import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen +import com.squareup.workflow1.ui.navigation.BackStackScreen typealias SelectedPoem = Int diff --git a/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/StanzaListScreen.kt b/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/StanzaListScreen.kt index b94624f866..949ea2e01e 100644 --- a/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/StanzaListScreen.kt +++ b/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/StanzaListScreen.kt @@ -16,9 +16,9 @@ import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewRunner import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackConfig -import com.squareup.workflow1.ui.container.BackStackConfig.Other -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.BackStackConfig +import com.squareup.workflow1.ui.navigation.BackStackConfig.Other +import com.squareup.workflow1.ui.navigation.setBackHandler @OptIn(WorkflowUiExperimentalApi::class) data class StanzaListScreen( diff --git a/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/StanzaScreen.kt b/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/StanzaScreen.kt index a0273905b6..553944b8fd 100644 --- a/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/StanzaScreen.kt +++ b/samples/containers/poetry/src/main/java/com/squareup/sample/poetry/StanzaScreen.kt @@ -17,9 +17,9 @@ import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewRunner import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackConfig -import com.squareup.workflow1.ui.container.BackStackConfig.None -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.BackStackConfig +import com.squareup.workflow1.ui.navigation.BackStackConfig.None +import com.squareup.workflow1.ui.navigation.setBackHandler @OptIn(WorkflowUiExperimentalApi::class) data class StanzaScreen( diff --git a/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/DungeonActivity.kt b/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/DungeonActivity.kt index 3a56b54d8d..ad7e8bab15 100644 --- a/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/DungeonActivity.kt +++ b/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/DungeonActivity.kt @@ -5,7 +5,7 @@ import androidx.activity.viewModels import androidx.appcompat.app.AppCompatActivity import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.withRegistry +import com.squareup.workflow1.ui.withRegistry import kotlinx.coroutines.flow.map class DungeonActivity : AppCompatActivity() { diff --git a/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/DungeonAppWorkflow.kt b/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/DungeonAppWorkflow.kt index ce45000870..f18f2ef496 100644 --- a/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/DungeonAppWorkflow.kt +++ b/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/DungeonAppWorkflow.kt @@ -13,8 +13,8 @@ import com.squareup.workflow1.renderChild import com.squareup.workflow1.runningWorker import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BodyAndOverlaysScreen -import com.squareup.workflow1.ui.container.Overlay +import com.squareup.workflow1.ui.navigation.BodyAndOverlaysScreen +import com.squareup.workflow1.ui.navigation.Overlay @OptIn(WorkflowUiExperimentalApi::class) class DungeonAppWorkflow( diff --git a/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/GameSessionWorkflow.kt b/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/GameSessionWorkflow.kt index f9eb560361..447ced3b5a 100644 --- a/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/GameSessionWorkflow.kt +++ b/samples/dungeon/app/src/main/java/com/squareup/sample/dungeon/GameSessionWorkflow.kt @@ -17,10 +17,10 @@ import com.squareup.workflow1.action import com.squareup.workflow1.runningWorker import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.AlertOverlay -import com.squareup.workflow1.ui.container.AlertOverlay.Button.POSITIVE -import com.squareup.workflow1.ui.container.BodyAndOverlaysScreen -import com.squareup.workflow1.ui.container.Overlay +import com.squareup.workflow1.ui.navigation.AlertOverlay +import com.squareup.workflow1.ui.navigation.AlertOverlay.Button.POSITIVE +import com.squareup.workflow1.ui.navigation.BodyAndOverlaysScreen +import com.squareup.workflow1.ui.navigation.Overlay typealias BoardPath = String diff --git a/samples/dungeon/timemachine-shakeable/src/main/java/com/squareup/sample/timemachine/shakeable/ShakeableTimeMachineLayoutRunner.kt b/samples/dungeon/timemachine-shakeable/src/main/java/com/squareup/sample/timemachine/shakeable/ShakeableTimeMachineLayoutRunner.kt index 363fcf46d1..73b8500566 100644 --- a/samples/dungeon/timemachine-shakeable/src/main/java/com/squareup/sample/timemachine/shakeable/ShakeableTimeMachineLayoutRunner.kt +++ b/samples/dungeon/timemachine-shakeable/src/main/java/com/squareup/sample/timemachine/shakeable/ShakeableTimeMachineLayoutRunner.kt @@ -13,7 +13,7 @@ import com.squareup.workflow1.ui.ScreenViewRunner import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.WorkflowViewStub -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.setBackHandler import kotlin.time.Duration import kotlin.time.Duration.Companion.milliseconds import kotlin.time.ExperimentalTime diff --git a/samples/nested-overlays/src/main/java/com/squareup/sample/nestedoverlays/NestedOverlaysWorkflow.kt b/samples/nested-overlays/src/main/java/com/squareup/sample/nestedoverlays/NestedOverlaysWorkflow.kt index b694ed9f66..63a54c37e9 100644 --- a/samples/nested-overlays/src/main/java/com/squareup/sample/nestedoverlays/NestedOverlaysWorkflow.kt +++ b/samples/nested-overlays/src/main/java/com/squareup/sample/nestedoverlays/NestedOverlaysWorkflow.kt @@ -7,9 +7,9 @@ import com.squareup.workflow1.Snapshot import com.squareup.workflow1.StatefulWorkflow import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackButtonScreen -import com.squareup.workflow1.ui.container.BodyAndOverlaysScreen -import com.squareup.workflow1.ui.container.FullScreenModal +import com.squareup.workflow1.ui.navigation.BackButtonScreen +import com.squareup.workflow1.ui.navigation.BodyAndOverlaysScreen +import com.squareup.workflow1.ui.navigation.FullScreenModal @OptIn(WorkflowUiExperimentalApi::class) object NestedOverlaysWorkflow : StatefulWorkflow() { diff --git a/samples/tictactoe/app/src/main/java/com/squareup/sample/authworkflow/LoginViewFactory.kt b/samples/tictactoe/app/src/main/java/com/squareup/sample/authworkflow/LoginViewFactory.kt index 48a16af737..3a4785f67a 100644 --- a/samples/tictactoe/app/src/main/java/com/squareup/sample/authworkflow/LoginViewFactory.kt +++ b/samples/tictactoe/app/src/main/java/com/squareup/sample/authworkflow/LoginViewFactory.kt @@ -4,7 +4,7 @@ import com.squareup.sample.tictactoe.databinding.LoginLayoutBinding import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewFactory.Companion.fromViewBinding import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.setBackHandler @OptIn(WorkflowUiExperimentalApi::class) internal val LoginViewFactory: ScreenViewFactory = diff --git a/samples/tictactoe/app/src/main/java/com/squareup/sample/authworkflow/SecondFactorViewFactory.kt b/samples/tictactoe/app/src/main/java/com/squareup/sample/authworkflow/SecondFactorViewFactory.kt index 30feb2bed2..5972212a96 100644 --- a/samples/tictactoe/app/src/main/java/com/squareup/sample/authworkflow/SecondFactorViewFactory.kt +++ b/samples/tictactoe/app/src/main/java/com/squareup/sample/authworkflow/SecondFactorViewFactory.kt @@ -4,7 +4,7 @@ import com.squareup.sample.tictactoe.databinding.SecondFactorLayoutBinding import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewFactory.Companion.fromViewBinding import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.setBackHandler @OptIn(WorkflowUiExperimentalApi::class) internal val SecondFactorViewFactory: ScreenViewFactory = diff --git a/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/GameOverLayoutRunner.kt b/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/GameOverLayoutRunner.kt index f9ae5de207..344642dc90 100644 --- a/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/GameOverLayoutRunner.kt +++ b/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/GameOverLayoutRunner.kt @@ -15,7 +15,7 @@ import com.squareup.workflow1.ui.ScreenViewFactory.Companion.fromViewBinding import com.squareup.workflow1.ui.ScreenViewRunner import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.setBackHandler @OptIn(WorkflowUiExperimentalApi::class) internal class GameOverLayoutRunner( diff --git a/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/GamePlayViewFactory.kt b/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/GamePlayViewFactory.kt index 55433a74a8..942a6663d7 100644 --- a/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/GamePlayViewFactory.kt +++ b/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/GamePlayViewFactory.kt @@ -6,7 +6,7 @@ import com.squareup.sample.tictactoe.databinding.GamePlayLayoutBinding import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewFactory.Companion.fromViewBinding import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.setBackHandler @OptIn(WorkflowUiExperimentalApi::class) internal val GamePlayViewFactory: ScreenViewFactory = diff --git a/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/NewGameViewFactory.kt b/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/NewGameViewFactory.kt index afb44d84d6..c65a0b2698 100644 --- a/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/NewGameViewFactory.kt +++ b/samples/tictactoe/app/src/main/java/com/squareup/sample/gameworkflow/NewGameViewFactory.kt @@ -4,7 +4,7 @@ import com.squareup.sample.tictactoe.databinding.NewGameLayoutBinding import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewFactory.Companion.fromViewBinding import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.setBackHandler @OptIn(WorkflowUiExperimentalApi::class) internal val NewGameViewFactory: ScreenViewFactory = diff --git a/samples/tictactoe/app/src/main/java/com/squareup/sample/mainactivity/TicTacToeActivity.kt b/samples/tictactoe/app/src/main/java/com/squareup/sample/mainactivity/TicTacToeActivity.kt index 768be6287f..d38114d096 100644 --- a/samples/tictactoe/app/src/main/java/com/squareup/sample/mainactivity/TicTacToeActivity.kt +++ b/samples/tictactoe/app/src/main/java/com/squareup/sample/mainactivity/TicTacToeActivity.kt @@ -10,8 +10,8 @@ import com.squareup.sample.container.SampleContainers import com.squareup.sample.gameworkflow.TicTacToeViewFactories import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.withRegistry import com.squareup.workflow1.ui.plus +import com.squareup.workflow1.ui.withRegistry import kotlinx.coroutines.flow.map import kotlinx.coroutines.launch import timber.log.Timber diff --git a/samples/tictactoe/common/src/main/java/com/squareup/sample/authworkflow/AuthWorkflow.kt b/samples/tictactoe/common/src/main/java/com/squareup/sample/authworkflow/AuthWorkflow.kt index d429f1e863..506c569f80 100644 --- a/samples/tictactoe/common/src/main/java/com/squareup/sample/authworkflow/AuthWorkflow.kt +++ b/samples/tictactoe/common/src/main/java/com/squareup/sample/authworkflow/AuthWorkflow.kt @@ -16,7 +16,7 @@ import com.squareup.workflow1.action import com.squareup.workflow1.runningWorker import com.squareup.workflow1.rx2.asWorker import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen +import com.squareup.workflow1.ui.navigation.BackStackScreen /** * We define this otherwise redundant typealias to keep composite workflows diff --git a/samples/tictactoe/common/src/main/java/com/squareup/sample/gameworkflow/RunGameWorkflow.kt b/samples/tictactoe/common/src/main/java/com/squareup/sample/gameworkflow/RunGameWorkflow.kt index 5d65ef66e6..e9a4389214 100644 --- a/samples/tictactoe/common/src/main/java/com/squareup/sample/gameworkflow/RunGameWorkflow.kt +++ b/samples/tictactoe/common/src/main/java/com/squareup/sample/gameworkflow/RunGameWorkflow.kt @@ -23,12 +23,12 @@ import com.squareup.workflow1.runningWorker import com.squareup.workflow1.rx2.asWorker import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.AlertOverlay -import com.squareup.workflow1.ui.container.AlertOverlay.Button.NEGATIVE -import com.squareup.workflow1.ui.container.AlertOverlay.Button.NEUTRAL -import com.squareup.workflow1.ui.container.AlertOverlay.Button.POSITIVE -import com.squareup.workflow1.ui.container.AlertOverlay.Event.ButtonClicked -import com.squareup.workflow1.ui.container.AlertOverlay.Event.Canceled +import com.squareup.workflow1.ui.navigation.AlertOverlay +import com.squareup.workflow1.ui.navigation.AlertOverlay.Button.NEGATIVE +import com.squareup.workflow1.ui.navigation.AlertOverlay.Button.NEUTRAL +import com.squareup.workflow1.ui.navigation.AlertOverlay.Button.POSITIVE +import com.squareup.workflow1.ui.navigation.AlertOverlay.Event.ButtonClicked +import com.squareup.workflow1.ui.navigation.AlertOverlay.Event.Canceled enum class RunGameResult { CanceledStart, diff --git a/samples/tictactoe/common/src/main/java/com/squareup/sample/mainworkflow/TicTacToeWorkflow.kt b/samples/tictactoe/common/src/main/java/com/squareup/sample/mainworkflow/TicTacToeWorkflow.kt index c9d2cbbde6..865fd7f2e2 100644 --- a/samples/tictactoe/common/src/main/java/com/squareup/sample/mainworkflow/TicTacToeWorkflow.kt +++ b/samples/tictactoe/common/src/main/java/com/squareup/sample/mainworkflow/TicTacToeWorkflow.kt @@ -19,9 +19,9 @@ import com.squareup.workflow1.WorkflowAction.Companion.noAction import com.squareup.workflow1.action import com.squareup.workflow1.renderChild import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen -import com.squareup.workflow1.ui.container.BodyAndOverlaysScreen -import com.squareup.workflow1.ui.container.plus +import com.squareup.workflow1.ui.navigation.BackStackScreen +import com.squareup.workflow1.ui.navigation.BodyAndOverlaysScreen +import com.squareup.workflow1.ui.navigation.plus /** * Application specific root [Workflow], and demonstration of workflow composition. diff --git a/samples/tictactoe/common/src/test/java/com/squareup/sample/mainworkflow/TicTacToeWorkflowTest.kt b/samples/tictactoe/common/src/test/java/com/squareup/sample/mainworkflow/TicTacToeWorkflowTest.kt index 7ce5d33e66..ae81834cc8 100644 --- a/samples/tictactoe/common/src/test/java/com/squareup/sample/mainworkflow/TicTacToeWorkflowTest.kt +++ b/samples/tictactoe/common/src/test/java/com/squareup/sample/mainworkflow/TicTacToeWorkflowTest.kt @@ -17,8 +17,8 @@ import com.squareup.workflow1.stateless import com.squareup.workflow1.testing.launchForTestingFromStartWith import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen -import com.squareup.workflow1.ui.container.BodyAndOverlaysScreen +import com.squareup.workflow1.ui.navigation.BackStackScreen +import com.squareup.workflow1.ui.navigation.BodyAndOverlaysScreen import org.junit.Test /** diff --git a/samples/todo-android/app/src/main/java/com/squareup/sample/todo/ToDoActivity.kt b/samples/todo-android/app/src/main/java/com/squareup/sample/todo/ToDoActivity.kt index 78d04a2ade..7d7b06c930 100644 --- a/samples/todo-android/app/src/main/java/com/squareup/sample/todo/ToDoActivity.kt +++ b/samples/todo-android/app/src/main/java/com/squareup/sample/todo/ToDoActivity.kt @@ -16,8 +16,8 @@ import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.ViewRegistry import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.withRegistry import com.squareup.workflow1.ui.renderWorkflowIn +import com.squareup.workflow1.ui.withRegistry import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.map import java.io.File diff --git a/samples/todo-android/app/src/main/java/com/squareup/sample/todo/TodoEditorScreen.kt b/samples/todo-android/app/src/main/java/com/squareup/sample/todo/TodoEditorScreen.kt index bf0468b5e9..fda486821d 100644 --- a/samples/todo-android/app/src/main/java/com/squareup/sample/todo/TodoEditorScreen.kt +++ b/samples/todo-android/app/src/main/java/com/squareup/sample/todo/TodoEditorScreen.kt @@ -12,10 +12,10 @@ import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewRunner import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackConfig -import com.squareup.workflow1.ui.container.BackStackConfig.Other import com.squareup.workflow1.ui.control -import com.squareup.workflow1.ui.setBackHandler +import com.squareup.workflow1.ui.navigation.BackStackConfig +import com.squareup.workflow1.ui.navigation.BackStackConfig.Other +import com.squareup.workflow1.ui.navigation.setBackHandler @OptIn(WorkflowUiExperimentalApi::class) data class TodoEditorScreen( diff --git a/samples/todo-android/app/src/main/java/com/squareup/sample/todo/TodoListsAppWorkflow.kt b/samples/todo-android/app/src/main/java/com/squareup/sample/todo/TodoListsAppWorkflow.kt index f2c8412ecc..f6038c0ba6 100644 --- a/samples/todo-android/app/src/main/java/com/squareup/sample/todo/TodoListsAppWorkflow.kt +++ b/samples/todo-android/app/src/main/java/com/squareup/sample/todo/TodoListsAppWorkflow.kt @@ -10,7 +10,7 @@ import com.squareup.workflow1.Snapshot import com.squareup.workflow1.StatefulWorkflow import com.squareup.workflow1.action import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen +import com.squareup.workflow1.ui.navigation.BackStackScreen sealed class TodoListsAppState { abstract val lists: List diff --git a/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/ComposeViewTreeIntegrationTest.kt b/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/ComposeViewTreeIntegrationTest.kt index 5625bc776b..d4deac03b1 100644 --- a/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/ComposeViewTreeIntegrationTest.kt +++ b/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/ComposeViewTreeIntegrationTest.kt @@ -34,15 +34,15 @@ import com.squareup.workflow1.ui.ScreenViewHolder import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.ViewRegistry import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.AndroidOverlay -import com.squareup.workflow1.ui.container.BackStackScreen -import com.squareup.workflow1.ui.container.BodyAndOverlaysScreen -import com.squareup.workflow1.ui.container.OverlayDialogFactory -import com.squareup.workflow1.ui.container.ScreenOverlay -import com.squareup.workflow1.ui.container.asDialogHolderWithContent import com.squareup.workflow1.ui.internal.test.IdleAfterTestRule import com.squareup.workflow1.ui.internal.test.IdlingDispatcherRule import com.squareup.workflow1.ui.internal.test.WorkflowUiTestActivity +import com.squareup.workflow1.ui.navigation.AndroidOverlay +import com.squareup.workflow1.ui.navigation.BackStackScreen +import com.squareup.workflow1.ui.navigation.BodyAndOverlaysScreen +import com.squareup.workflow1.ui.navigation.OverlayDialogFactory +import com.squareup.workflow1.ui.navigation.ScreenOverlay +import com.squareup.workflow1.ui.navigation.asDialogHolderWithContent import com.squareup.workflow1.ui.plus import leakcanary.DetectLeaksAfterTestSuccess import org.junit.Before diff --git a/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/NoTransitionBackStackContainer.kt b/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/NoTransitionBackStackContainer.kt index 19b3fa1502..f6bb3821ea 100644 --- a/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/NoTransitionBackStackContainer.kt +++ b/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/NoTransitionBackStackContainer.kt @@ -3,12 +3,12 @@ package com.squareup.workflow1.ui.compose import android.content.Context import android.view.ViewGroup.LayoutParams.MATCH_PARENT import com.squareup.workflow1.ui.NamedScreen +import com.squareup.workflow1.ui.R import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewHolder import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackContainer -import com.squareup.workflow1.ui.container.BackStackScreen -import com.squareup.workflow1.ui.container.R +import com.squareup.workflow1.ui.navigation.BackStackContainer +import com.squareup.workflow1.ui.navigation.BackStackScreen /** * A subclass of [BackStackContainer] that disables transitions to make it simpler to test the diff --git a/workflow-ui/compose/src/main/java/com/squareup/workflow1/ui/compose/WorkflowRendering.kt b/workflow-ui/compose/src/main/java/com/squareup/workflow1/ui/compose/WorkflowRendering.kt index 9f6ab90001..9164e0de6e 100644 --- a/workflow-ui/compose/src/main/java/com/squareup/workflow1/ui/compose/WorkflowRendering.kt +++ b/workflow-ui/compose/src/main/java/com/squareup/workflow1/ui/compose/WorkflowRendering.kt @@ -23,7 +23,6 @@ import androidx.lifecycle.LifecycleOwner import androidx.lifecycle.LifecycleRegistry import androidx.lifecycle.setViewTreeLifecycleOwner import com.squareup.workflow1.ui.Compatible -import com.squareup.workflow1.ui.OnBackPressedDispatcherOwnerKey import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewFactoryFinder @@ -33,6 +32,7 @@ import com.squareup.workflow1.ui.ViewFactory import com.squareup.workflow1.ui.ViewRegistry import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.WorkflowViewStub +import com.squareup.workflow1.ui.androidx.OnBackPressedDispatcherOwnerKey import com.squareup.workflow1.ui.androidx.WorkflowLifecycleOwner import com.squareup.workflow1.ui.show import com.squareup.workflow1.ui.startShowing diff --git a/workflow-ui/container-android/src/main/java/com/squareup/workflow1/ui/modal/ModalViewContainer.kt b/workflow-ui/container-android/src/main/java/com/squareup/workflow1/ui/modal/ModalViewContainer.kt index 223b7a12ee..d3d0b8b9a2 100644 --- a/workflow-ui/container-android/src/main/java/com/squareup/workflow1/ui/modal/ModalViewContainer.kt +++ b/workflow-ui/container-android/src/main/java/com/squareup/workflow1/ui/modal/ModalViewContainer.kt @@ -23,8 +23,8 @@ import com.squareup.workflow1.ui.androidx.WorkflowAndroidXSupport.onBackPressedD import com.squareup.workflow1.ui.androidx.WorkflowLifecycleOwner import com.squareup.workflow1.ui.asScreen import com.squareup.workflow1.ui.bindShowRendering -import com.squareup.workflow1.ui.container.BackButtonScreen import com.squareup.workflow1.ui.modal.ModalViewContainer.Companion.binding +import com.squareup.workflow1.ui.navigation.BackButtonScreen import com.squareup.workflow1.ui.show import com.squareup.workflow1.ui.startShowing import com.squareup.workflow1.ui.toViewFactory diff --git a/workflow-ui/container-common/api/container-common.api b/workflow-ui/container-common/api/container-common.api index 3aeb87fed4..659a56c63c 100644 --- a/workflow-ui/container-common/api/container-common.api +++ b/workflow-ui/container-common/api/container-common.api @@ -14,7 +14,7 @@ public final class com/squareup/workflow1/ui/backstack/BackStackScreen { } public final class com/squareup/workflow1/ui/backstack/BackStackScreenKt { - public static final fun asNonLegacy (Lcom/squareup/workflow1/ui/backstack/BackStackScreen;)Lcom/squareup/workflow1/ui/container/BackStackScreen; + public static final fun asNonLegacy (Lcom/squareup/workflow1/ui/backstack/BackStackScreen;)Lcom/squareup/workflow1/ui/navigation/BackStackScreen; public static final fun toBackStackScreen (Ljava/util/List;)Lcom/squareup/workflow1/ui/backstack/BackStackScreen; public static final fun toBackStackScreenOrNull (Ljava/util/List;)Lcom/squareup/workflow1/ui/backstack/BackStackScreen; } diff --git a/workflow-ui/container-common/src/main/java/com/squareup/workflow1/ui/backstack/BackStackScreen.kt b/workflow-ui/container-common/src/main/java/com/squareup/workflow1/ui/backstack/BackStackScreen.kt index 4e7310ba57..f7db909367 100644 --- a/workflow-ui/container-common/src/main/java/com/squareup/workflow1/ui/backstack/BackStackScreen.kt +++ b/workflow-ui/container-common/src/main/java/com/squareup/workflow1/ui/backstack/BackStackScreen.kt @@ -5,7 +5,7 @@ package com.squareup.workflow1.ui.backstack import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.asScreen -import com.squareup.workflow1.ui.container.BackStackScreen as NewBackStackScreen +import com.squareup.workflow1.ui.navigation.BackStackScreen as NewBackStackScreen /** * Represents an active screen ([top]), and a set of previously visited screens to which we may diff --git a/workflow-ui/core-android/api/core-android.api b/workflow-ui/core-android/api/core-android.api index 73d7db5201..a3c4a80f69 100644 --- a/workflow-ui/core-android/api/core-android.api +++ b/workflow-ui/core-android/api/core-android.api @@ -76,12 +76,6 @@ public final class com/squareup/workflow1/ui/LayoutScreenViewFactory : com/squar public fun getType ()Lkotlin/reflect/KClass; } -public final class com/squareup/workflow1/ui/OnBackPressedDispatcherOwnerKey : com/squareup/workflow1/ui/ViewEnvironmentKey { - public static final field INSTANCE Lcom/squareup/workflow1/ui/OnBackPressedDispatcherOwnerKey; - public fun getDefault ()Landroidx/activity/OnBackPressedDispatcherOwner; - public synthetic fun getDefault ()Ljava/lang/Object; -} - public final class com/squareup/workflow1/ui/ParcelableTextController : android/os/Parcelable, com/squareup/workflow1/ui/TextController { public static final field CREATOR Lcom/squareup/workflow1/ui/ParcelableTextController$CREATOR; public synthetic fun (Landroid/os/Parcel;Lkotlin/jvm/internal/DefaultConstructorMarker;)V @@ -163,12 +157,6 @@ public final class com/squareup/workflow1/ui/TextControllerControlEditTextKt { public static final fun control (Lcom/squareup/workflow1/ui/TextController;Landroid/widget/EditText;)V } -public final class com/squareup/workflow1/ui/ViewBackHandlerKt { - public static final fun setBackHandler (Landroid/view/View;Lkotlin/jvm/functions/Function0;)V - public static final fun setBackHandler (Landroid/view/View;ZLkotlin/jvm/functions/Function0;)V - public static synthetic fun setBackHandler$default (Landroid/view/View;ZLkotlin/jvm/functions/Function0;ILjava/lang/Object;)V -} - public final class com/squareup/workflow1/ui/ViewBindingScreenViewFactory : com/squareup/workflow1/ui/ScreenViewFactory { public fun (Lkotlin/reflect/KClass;Lkotlin/jvm/functions/Function3;Lkotlin/jvm/functions/Function1;)V public fun buildView (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;Landroid/view/ViewGroup;)Lcom/squareup/workflow1/ui/ScreenViewHolder; @@ -285,6 +273,12 @@ public final class com/squareup/workflow1/ui/WorkflowViewStub : android/view/Vie public final fun update (Ljava/lang/Object;Lcom/squareup/workflow1/ui/ViewEnvironment;)Landroid/view/View; } +public final class com/squareup/workflow1/ui/androidx/OnBackPressedDispatcherOwnerKey : com/squareup/workflow1/ui/ViewEnvironmentKey { + public static final field INSTANCE Lcom/squareup/workflow1/ui/androidx/OnBackPressedDispatcherOwnerKey; + public fun getDefault ()Landroidx/activity/OnBackPressedDispatcherOwner; + public synthetic fun getDefault ()Ljava/lang/Object; +} + public final class com/squareup/workflow1/ui/androidx/WorkflowAndroidXSupport { public static final field INSTANCE Lcom/squareup/workflow1/ui/androidx/WorkflowAndroidXSupport; public final fun lifecycleOwnerFromContext (Landroid/content/Context;)Landroidx/lifecycle/LifecycleOwner; @@ -316,32 +310,32 @@ public final class com/squareup/workflow1/ui/androidx/WorkflowSavedStateRegistry public final fun saveAndPruneChildRegistryOwner (Ljava/lang/String;)V } -public final class com/squareup/workflow1/ui/container/AlertDialogThemeResId : com/squareup/workflow1/ui/ViewEnvironmentKey { - public static final field INSTANCE Lcom/squareup/workflow1/ui/container/AlertDialogThemeResId; +public final class com/squareup/workflow1/ui/navigation/AlertDialogThemeResId : com/squareup/workflow1/ui/ViewEnvironmentKey { + public static final field INSTANCE Lcom/squareup/workflow1/ui/navigation/AlertDialogThemeResId; public fun getDefault ()Ljava/lang/Integer; public synthetic fun getDefault ()Ljava/lang/Object; } -public final class com/squareup/workflow1/ui/container/AlertOverlayDialogFactoryKt { - public static final fun toDialogHolder (Landroid/app/AlertDialog;Lcom/squareup/workflow1/ui/ViewEnvironment;)Lcom/squareup/workflow1/ui/container/OverlayDialogHolder; +public final class com/squareup/workflow1/ui/navigation/AlertOverlayDialogFactoryKt { + public static final fun toDialogHolder (Landroid/app/AlertDialog;Lcom/squareup/workflow1/ui/ViewEnvironment;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; } -public final class com/squareup/workflow1/ui/container/AndroidDialogBoundsKt { +public final class com/squareup/workflow1/ui/navigation/AndroidDialogBoundsKt { public static final fun getScreenRect (Landroid/view/View;Landroid/graphics/Rect;)V public static final fun setBounds (Landroid/app/Dialog;Landroid/graphics/Rect;)V } -public abstract interface class com/squareup/workflow1/ui/container/AndroidOverlay : com/squareup/workflow1/ui/container/Overlay { - public abstract fun getDialogFactory ()Lcom/squareup/workflow1/ui/container/OverlayDialogFactory; +public abstract interface class com/squareup/workflow1/ui/navigation/AndroidOverlay : com/squareup/workflow1/ui/navigation/Overlay { + public abstract fun getDialogFactory ()Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactory; } -public final class com/squareup/workflow1/ui/container/AsDialogHolderWithContentKt { - public static final fun asDialogHolderWithContent (Landroidx/activity/ComponentDialog;Lcom/squareup/workflow1/ui/container/ScreenOverlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/OverlayDialogHolder; - public static synthetic fun asDialogHolderWithContent$default (Landroidx/activity/ComponentDialog;Lcom/squareup/workflow1/ui/container/ScreenOverlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/container/OverlayDialogHolder; +public final class com/squareup/workflow1/ui/navigation/AsDialogHolderWithContentKt { + public static final fun asDialogHolderWithContent (Landroidx/activity/ComponentDialog;Lcom/squareup/workflow1/ui/navigation/ScreenOverlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; + public static synthetic fun asDialogHolderWithContent$default (Landroidx/activity/ComponentDialog;Lcom/squareup/workflow1/ui/navigation/ScreenOverlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; public static final fun fixBackgroundAndDimming (Landroid/app/Dialog;)V } -public final class com/squareup/workflow1/ui/container/BackButtonScreen : com/squareup/workflow1/ui/AndroidScreen, com/squareup/workflow1/ui/Wrapper { +public final class com/squareup/workflow1/ui/navigation/BackButtonScreen : com/squareup/workflow1/ui/AndroidScreen, com/squareup/workflow1/ui/Wrapper { public fun (Lcom/squareup/workflow1/ui/Screen;ZLkotlin/jvm/functions/Function0;)V public synthetic fun (Lcom/squareup/workflow1/ui/Screen;ZLkotlin/jvm/functions/Function0;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public fun asSequence ()Lkotlin/sequences/Sequence; @@ -354,10 +348,10 @@ public final class com/squareup/workflow1/ui/container/BackButtonScreen : com/sq public final fun getWrapped ()Lcom/squareup/workflow1/ui/Screen; public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container; public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Wrapper; - public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/BackButtonScreen; + public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/BackButtonScreen; } -public class com/squareup/workflow1/ui/container/BackStackContainer : android/widget/FrameLayout { +public class com/squareup/workflow1/ui/navigation/BackStackContainer : android/widget/FrameLayout { public fun (Landroid/content/Context;)V public fun (Landroid/content/Context;Landroid/util/AttributeSet;)V public fun (Landroid/content/Context;Landroid/util/AttributeSet;I)V @@ -368,81 +362,81 @@ public class com/squareup/workflow1/ui/container/BackStackContainer : android/wi protected fun onRestoreInstanceState (Landroid/os/Parcelable;)V protected fun onSaveInstanceState ()Landroid/os/Parcelable; protected fun performTransition (Lcom/squareup/workflow1/ui/ScreenViewHolder;Lcom/squareup/workflow1/ui/ScreenViewHolder;Z)V - public final fun update (Lcom/squareup/workflow1/ui/container/BackStackScreen;Lcom/squareup/workflow1/ui/ViewEnvironment;)V + public final fun update (Lcom/squareup/workflow1/ui/navigation/BackStackScreen;Lcom/squareup/workflow1/ui/ViewEnvironment;)V } -public final class com/squareup/workflow1/ui/container/BackStackContainer$SavedState : android/view/View$BaseSavedState { - public static final field CREATOR Lcom/squareup/workflow1/ui/container/BackStackContainer$SavedState$CREATOR; +public final class com/squareup/workflow1/ui/navigation/BackStackContainer$SavedState : android/view/View$BaseSavedState { + public static final field CREATOR Lcom/squareup/workflow1/ui/navigation/BackStackContainer$SavedState$CREATOR; public fun (Landroid/os/Parcel;)V - public fun (Landroid/os/Parcelable;Lcom/squareup/workflow1/ui/container/ViewStateCache$Saved;)V - public final fun getSavedViewState ()Lcom/squareup/workflow1/ui/container/ViewStateCache$Saved; + public fun (Landroid/os/Parcelable;Lcom/squareup/workflow1/ui/navigation/ViewStateCache$Saved;)V + public final fun getSavedViewState ()Lcom/squareup/workflow1/ui/navigation/ViewStateCache$Saved; public fun writeToParcel (Landroid/os/Parcel;I)V } -public final class com/squareup/workflow1/ui/container/BackStackContainer$SavedState$CREATOR : android/os/Parcelable$Creator { - public fun createFromParcel (Landroid/os/Parcel;)Lcom/squareup/workflow1/ui/container/BackStackContainer$SavedState; +public final class com/squareup/workflow1/ui/navigation/BackStackContainer$SavedState$CREATOR : android/os/Parcelable$Creator { + public fun createFromParcel (Landroid/os/Parcel;)Lcom/squareup/workflow1/ui/navigation/BackStackContainer$SavedState; public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object; - public fun newArray (I)[Lcom/squareup/workflow1/ui/container/BackStackContainer$SavedState; + public fun newArray (I)[Lcom/squareup/workflow1/ui/navigation/BackStackContainer$SavedState; public synthetic fun newArray (I)[Ljava/lang/Object; } -public final class com/squareup/workflow1/ui/container/LayeredDialogSessions { - public static final field Companion Lcom/squareup/workflow1/ui/container/LayeredDialogSessions$Companion; +public final class com/squareup/workflow1/ui/navigation/LayeredDialogSessions { + public static final field Companion Lcom/squareup/workflow1/ui/navigation/LayeredDialogSessions$Companion; public synthetic fun (Landroid/content/Context;Lkotlinx/coroutines/flow/StateFlow;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun getAllowBodyEvents ()Z public final fun onAttachedToWindow (Ljava/lang/String;Landroid/view/View;)V public final fun onDetachedFromWindow ()V - public final fun onRestoreInstanceState (Lcom/squareup/workflow1/ui/container/LayeredDialogSessions$SavedState;)V - public final fun onSaveInstanceState ()Lcom/squareup/workflow1/ui/container/LayeredDialogSessions$SavedState; + public final fun onRestoreInstanceState (Lcom/squareup/workflow1/ui/navigation/LayeredDialogSessions$SavedState;)V + public final fun onSaveInstanceState ()Lcom/squareup/workflow1/ui/navigation/LayeredDialogSessions$SavedState; public final fun update (Ljava/util/List;Lcom/squareup/workflow1/ui/ViewEnvironment;Lkotlin/jvm/functions/Function1;)V } -public final class com/squareup/workflow1/ui/container/LayeredDialogSessions$Companion { - public final fun forView (Landroid/view/View;Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/LayeredDialogSessions; +public final class com/squareup/workflow1/ui/navigation/LayeredDialogSessions$Companion { + public final fun forView (Landroid/view/View;Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/LayeredDialogSessions; } -public final class com/squareup/workflow1/ui/container/LayeredDialogSessions$SavedState : android/os/Parcelable { - public static final field CREATOR Lcom/squareup/workflow1/ui/container/LayeredDialogSessions$SavedState$CREATOR; +public final class com/squareup/workflow1/ui/navigation/LayeredDialogSessions$SavedState : android/os/Parcelable { + public static final field CREATOR Lcom/squareup/workflow1/ui/navigation/LayeredDialogSessions$SavedState$CREATOR; public fun (Landroid/os/Parcel;)V public fun describeContents ()I public fun writeToParcel (Landroid/os/Parcel;I)V } -public final class com/squareup/workflow1/ui/container/LayeredDialogSessions$SavedState$CREATOR : android/os/Parcelable$Creator { - public fun createFromParcel (Landroid/os/Parcel;)Lcom/squareup/workflow1/ui/container/LayeredDialogSessions$SavedState; +public final class com/squareup/workflow1/ui/navigation/LayeredDialogSessions$SavedState$CREATOR : android/os/Parcelable$Creator { + public fun createFromParcel (Landroid/os/Parcel;)Lcom/squareup/workflow1/ui/navigation/LayeredDialogSessions$SavedState; public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object; - public fun newArray (I)[Lcom/squareup/workflow1/ui/container/LayeredDialogSessions$SavedState; + public fun newArray (I)[Lcom/squareup/workflow1/ui/navigation/LayeredDialogSessions$SavedState; public synthetic fun newArray (I)[Ljava/lang/Object; } -public abstract interface class com/squareup/workflow1/ui/container/OverlayDialogFactory : com/squareup/workflow1/ui/ViewRegistry$Entry { - public static final field Companion Lcom/squareup/workflow1/ui/container/OverlayDialogFactory$Companion; - public abstract fun buildDialog (Lcom/squareup/workflow1/ui/container/Overlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;)Lcom/squareup/workflow1/ui/container/OverlayDialogHolder; +public abstract interface class com/squareup/workflow1/ui/navigation/OverlayDialogFactory : com/squareup/workflow1/ui/ViewRegistry$Entry { + public static final field Companion Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactory$Companion; + public abstract fun buildDialog (Lcom/squareup/workflow1/ui/navigation/Overlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; } -public final class com/squareup/workflow1/ui/container/OverlayDialogFactory$Companion { +public final class com/squareup/workflow1/ui/navigation/OverlayDialogFactory$Companion { } -public abstract interface class com/squareup/workflow1/ui/container/OverlayDialogFactoryFinder { - public static final field Companion Lcom/squareup/workflow1/ui/container/OverlayDialogFactoryFinder$Companion; - public abstract fun getDialogFactoryForRendering (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/container/Overlay;)Lcom/squareup/workflow1/ui/container/OverlayDialogFactory; +public abstract interface class com/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder { + public static final field Companion Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder$Companion; + public abstract fun getDialogFactoryForRendering (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/navigation/Overlay;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactory; } -public final class com/squareup/workflow1/ui/container/OverlayDialogFactoryFinder$Companion : com/squareup/workflow1/ui/ViewEnvironmentKey { - public fun getDefault ()Lcom/squareup/workflow1/ui/container/OverlayDialogFactoryFinder; +public final class com/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder$Companion : com/squareup/workflow1/ui/ViewEnvironmentKey { + public fun getDefault ()Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder; public synthetic fun getDefault ()Ljava/lang/Object; } -public final class com/squareup/workflow1/ui/container/OverlayDialogFactoryFinder$DefaultImpls { - public static fun getDialogFactoryForRendering (Lcom/squareup/workflow1/ui/container/OverlayDialogFactoryFinder;Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/container/Overlay;)Lcom/squareup/workflow1/ui/container/OverlayDialogFactory; +public final class com/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder$DefaultImpls { + public static fun getDialogFactoryForRendering (Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder;Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/navigation/Overlay;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactory; } -public final class com/squareup/workflow1/ui/container/OverlayDialogFactoryKt { - public static final fun toDialogFactory (Lcom/squareup/workflow1/ui/container/Overlay;Lcom/squareup/workflow1/ui/ViewEnvironment;)Lcom/squareup/workflow1/ui/container/OverlayDialogFactory; +public final class com/squareup/workflow1/ui/navigation/OverlayDialogFactoryKt { + public static final fun toDialogFactory (Lcom/squareup/workflow1/ui/navigation/Overlay;Lcom/squareup/workflow1/ui/ViewEnvironment;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogFactory; } -public abstract interface class com/squareup/workflow1/ui/container/OverlayDialogHolder { - public static final field Companion Lcom/squareup/workflow1/ui/container/OverlayDialogHolder$Companion; +public abstract interface class com/squareup/workflow1/ui/navigation/OverlayDialogHolder { + public static final field Companion Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder$Companion; public abstract fun getDialog ()Landroid/app/Dialog; public abstract fun getEnvironment ()Lcom/squareup/workflow1/ui/ViewEnvironment; public abstract fun getOnBackPressed ()Lkotlin/jvm/functions/Function0; @@ -450,50 +444,56 @@ public abstract interface class com/squareup/workflow1/ui/container/OverlayDialo public abstract fun getRunner ()Lkotlin/jvm/functions/Function2; } -public final class com/squareup/workflow1/ui/container/OverlayDialogHolder$Companion { - public final fun invoke (Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/app/Dialog;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function2;)Lcom/squareup/workflow1/ui/container/OverlayDialogHolder; - public static synthetic fun invoke$default (Lcom/squareup/workflow1/ui/container/OverlayDialogHolder$Companion;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/app/Dialog;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/container/OverlayDialogHolder; +public final class com/squareup/workflow1/ui/navigation/OverlayDialogHolder$Companion { + public final fun invoke (Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/app/Dialog;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function2;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; + public static synthetic fun invoke$default (Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder$Companion;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/app/Dialog;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function0;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; } -public final class com/squareup/workflow1/ui/container/OverlayDialogHolderKt { - public static final fun canShow (Lcom/squareup/workflow1/ui/container/OverlayDialogHolder;Lcom/squareup/workflow1/ui/container/Overlay;)Z - public static final fun getShowing (Lcom/squareup/workflow1/ui/container/OverlayDialogHolder;)Lcom/squareup/workflow1/ui/container/Overlay; - public static final fun show (Lcom/squareup/workflow1/ui/container/OverlayDialogHolder;Lcom/squareup/workflow1/ui/container/Overlay;Lcom/squareup/workflow1/ui/ViewEnvironment;)V +public final class com/squareup/workflow1/ui/navigation/OverlayDialogHolderKt { + public static final fun canShow (Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder;Lcom/squareup/workflow1/ui/navigation/Overlay;)Z + public static final fun getShowing (Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder;)Lcom/squareup/workflow1/ui/navigation/Overlay; + public static final fun show (Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder;Lcom/squareup/workflow1/ui/navigation/Overlay;Lcom/squareup/workflow1/ui/ViewEnvironment;)V } -public class com/squareup/workflow1/ui/container/ScreenOverlayDialogFactory : com/squareup/workflow1/ui/container/OverlayDialogFactory { +public class com/squareup/workflow1/ui/navigation/ScreenOverlayDialogFactory : com/squareup/workflow1/ui/navigation/OverlayDialogFactory { public fun (Lkotlin/reflect/KClass;)V - public synthetic fun buildDialog (Lcom/squareup/workflow1/ui/container/Overlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;)Lcom/squareup/workflow1/ui/container/OverlayDialogHolder; - public final fun buildDialog (Lcom/squareup/workflow1/ui/container/ScreenOverlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;)Lcom/squareup/workflow1/ui/container/OverlayDialogHolder; - public fun buildDialogWithContent (Lcom/squareup/workflow1/ui/container/ScreenOverlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/ScreenViewHolder;)Lcom/squareup/workflow1/ui/container/OverlayDialogHolder; + public synthetic fun buildDialog (Lcom/squareup/workflow1/ui/navigation/Overlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; + public final fun buildDialog (Lcom/squareup/workflow1/ui/navigation/ScreenOverlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Landroid/content/Context;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; + public fun buildDialogWithContent (Lcom/squareup/workflow1/ui/navigation/ScreenOverlay;Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/ScreenViewHolder;)Lcom/squareup/workflow1/ui/navigation/OverlayDialogHolder; public fun getType ()Lkotlin/reflect/KClass; } -public final class com/squareup/workflow1/ui/container/ScreenOverlayDialogFactoryKt { +public final class com/squareup/workflow1/ui/navigation/ScreenOverlayDialogFactoryKt { public static final fun setContent (Landroid/app/Dialog;Lcom/squareup/workflow1/ui/ScreenViewHolder;)V } -public final class com/squareup/workflow1/ui/container/ViewStateCache { +public final class com/squareup/workflow1/ui/navigation/ViewSetBackHandlerKt { + public static final fun setBackHandler (Landroid/view/View;Lkotlin/jvm/functions/Function0;)V + public static final fun setBackHandler (Landroid/view/View;ZLkotlin/jvm/functions/Function0;)V + public static synthetic fun setBackHandler$default (Landroid/view/View;ZLkotlin/jvm/functions/Function0;ILjava/lang/Object;)V +} + +public final class com/squareup/workflow1/ui/navigation/ViewStateCache { public fun ()V public final fun attachToParentRegistryOwner (Ljava/lang/String;Landroidx/savedstate/SavedStateRegistryOwner;)V public final fun detachFromParentRegistry ()V public final fun prune (Ljava/util/Collection;)V - public final fun restore (Lcom/squareup/workflow1/ui/container/ViewStateCache$Saved;)V - public final fun save ()Lcom/squareup/workflow1/ui/container/ViewStateCache$Saved; + public final fun restore (Lcom/squareup/workflow1/ui/navigation/ViewStateCache$Saved;)V + public final fun save ()Lcom/squareup/workflow1/ui/navigation/ViewStateCache$Saved; public final fun update (Ljava/util/Collection;Lcom/squareup/workflow1/ui/ScreenViewHolder;Lcom/squareup/workflow1/ui/ScreenViewHolder;)V } -public final class com/squareup/workflow1/ui/container/ViewStateCache$Saved : android/os/Parcelable { - public static final field CREATOR Lcom/squareup/workflow1/ui/container/ViewStateCache$Saved$CREATOR; +public final class com/squareup/workflow1/ui/navigation/ViewStateCache$Saved : android/os/Parcelable { + public static final field CREATOR Lcom/squareup/workflow1/ui/navigation/ViewStateCache$Saved$CREATOR; public fun (Landroid/os/Parcel;)V public fun describeContents ()I public fun writeToParcel (Landroid/os/Parcel;I)V } -public final class com/squareup/workflow1/ui/container/ViewStateCache$Saved$CREATOR : android/os/Parcelable$Creator { - public fun createFromParcel (Landroid/os/Parcel;)Lcom/squareup/workflow1/ui/container/ViewStateCache$Saved; +public final class com/squareup/workflow1/ui/navigation/ViewStateCache$Saved$CREATOR : android/os/Parcelable$Creator { + public fun createFromParcel (Landroid/os/Parcel;)Lcom/squareup/workflow1/ui/navigation/ViewStateCache$Saved; public synthetic fun createFromParcel (Landroid/os/Parcel;)Ljava/lang/Object; - public fun newArray (I)[Lcom/squareup/workflow1/ui/container/ViewStateCache$Saved; + public fun newArray (I)[Lcom/squareup/workflow1/ui/navigation/ViewStateCache$Saved; public synthetic fun newArray (I)[Ljava/lang/Object; } diff --git a/workflow-ui/core-android/src/androidTest/AndroidManifest.xml b/workflow-ui/core-android/src/androidTest/AndroidManifest.xml index 67a3ee4a2f..a9d7a48083 100644 --- a/workflow-ui/core-android/src/androidTest/AndroidManifest.xml +++ b/workflow-ui/core-android/src/androidTest/AndroidManifest.xml @@ -5,7 +5,7 @@ android:name="com.squareup.workflow1.ui.WorkflowViewStubLifecycleActivity" android:theme="@style/Theme.AppCompat.NoActionBar"/> diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerPersistenceLifecycleTest.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/BackStackContainerPersistenceLifecycleTest.kt similarity index 96% rename from workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerPersistenceLifecycleTest.kt rename to workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/BackStackContainerPersistenceLifecycleTest.kt index 60d69c4a22..415c27424d 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerPersistenceLifecycleTest.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/BackStackContainerPersistenceLifecycleTest.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.os.Build import android.view.View @@ -10,13 +10,13 @@ import androidx.test.ext.junit.rules.ActivityScenarioRule import androidx.test.filters.SdkSuppress import com.google.common.truth.Truth.assertThat import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.fixtures.BackStackContainerLifecycleActivity -import com.squareup.workflow1.ui.container.fixtures.BackStackContainerLifecycleActivity.TestRendering.LeafRendering -import com.squareup.workflow1.ui.container.fixtures.BackStackContainerLifecycleActivity.TestRendering.RecurseRendering -import com.squareup.workflow1.ui.container.fixtures.ViewStateTestView -import com.squareup.workflow1.ui.container.fixtures.viewForScreen -import com.squareup.workflow1.ui.container.fixtures.waitForScreen import com.squareup.workflow1.ui.internal.test.IdlingDispatcherRule +import com.squareup.workflow1.ui.navigation.fixtures.BackStackContainerLifecycleActivity +import com.squareup.workflow1.ui.navigation.fixtures.BackStackContainerLifecycleActivity.TestRendering.LeafRendering +import com.squareup.workflow1.ui.navigation.fixtures.BackStackContainerLifecycleActivity.TestRendering.RecurseRendering +import com.squareup.workflow1.ui.navigation.fixtures.ViewStateTestView +import com.squareup.workflow1.ui.navigation.fixtures.viewForScreen +import com.squareup.workflow1.ui.navigation.fixtures.waitForScreen import leakcanary.DetectLeaksAfterTestSuccess import org.junit.Rule import org.junit.Test diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerTest.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/BackStackContainerTest.kt similarity index 99% rename from workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerTest.kt rename to workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/BackStackContainerTest.kt index 7e4cd535d0..ea7c236e9d 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerTest.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/BackStackContainerTest.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.content.Context import android.os.Build.VERSION diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/DialogIntegrationTest.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/DialogIntegrationTest.kt similarity index 98% rename from workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/DialogIntegrationTest.kt rename to workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/DialogIntegrationTest.kt index 4526357156..042c4ae43a 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/DialogIntegrationTest.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/DialogIntegrationTest.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.app.Dialog import android.text.SpannableStringBuilder @@ -24,6 +24,7 @@ import com.squareup.workflow1.ui.ScreenViewHolder import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowLayout import com.squareup.workflow1.ui.WorkflowUiExperimentalApi +import com.squareup.workflow1.ui.withEnvironment import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/ViewBackHandlerTest.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/ViewBackHandlerTest.kt similarity index 94% rename from workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/ViewBackHandlerTest.kt rename to workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/ViewBackHandlerTest.kt index e0b6fa0d7a..a6a0c7a755 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/ViewBackHandlerTest.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/ViewBackHandlerTest.kt @@ -1,9 +1,10 @@ -package com.squareup.workflow1.ui +package com.squareup.workflow1.ui.navigation import android.view.View import androidx.activity.ComponentActivity import androidx.test.ext.junit.rules.ActivityScenarioRule import com.google.common.truth.Truth.assertThat +import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.androidx.WorkflowLifecycleOwner import com.squareup.workflow1.ui.internal.test.IdlingDispatcherRule import leakcanary.DetectLeaksAfterTestSuccess diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/ViewStateCacheTest.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/ViewStateCacheTest.kt similarity index 98% rename from workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/ViewStateCacheTest.kt rename to workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/ViewStateCacheTest.kt index 120feb5253..6a4623ca71 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/ViewStateCacheTest.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/ViewStateCacheTest.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.os.Build.VERSION import android.os.Build.VERSION_CODES @@ -17,7 +17,7 @@ import com.squareup.workflow1.ui.ScreenViewHolder import com.squareup.workflow1.ui.ViewEnvironment.Companion.EMPTY import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.androidx.WorkflowLifecycleOwner -import com.squareup.workflow1.ui.container.fixtures.ViewStateTestView +import com.squareup.workflow1.ui.navigation.fixtures.ViewStateTestView import com.squareup.workflow1.ui.show import org.junit.Assert.fail import org.junit.Test diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/BackStackContainerLifecycleActivity.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/fixtures/BackStackContainerLifecycleActivity.kt similarity index 92% rename from workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/BackStackContainerLifecycleActivity.kt rename to workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/fixtures/BackStackContainerLifecycleActivity.kt index c428291403..e2fd271941 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/BackStackContainerLifecycleActivity.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/fixtures/BackStackContainerLifecycleActivity.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container.fixtures +package com.squareup.workflow1.ui.navigation.fixtures import android.content.Context import android.view.View @@ -18,11 +18,11 @@ import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.ViewRegistry import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.WorkflowViewStub -import com.squareup.workflow1.ui.container.BackStackScreen -import com.squareup.workflow1.ui.container.fixtures.BackStackContainerLifecycleActivity.TestRendering.LeafRendering -import com.squareup.workflow1.ui.container.fixtures.BackStackContainerLifecycleActivity.TestRendering.OuterRendering -import com.squareup.workflow1.ui.container.fixtures.BackStackContainerLifecycleActivity.TestRendering.RecurseRendering import com.squareup.workflow1.ui.internal.test.AbstractLifecycleTestActivity +import com.squareup.workflow1.ui.navigation.BackStackScreen +import com.squareup.workflow1.ui.navigation.fixtures.BackStackContainerLifecycleActivity.TestRendering.LeafRendering +import com.squareup.workflow1.ui.navigation.fixtures.BackStackContainerLifecycleActivity.TestRendering.OuterRendering +import com.squareup.workflow1.ui.navigation.fixtures.BackStackContainerLifecycleActivity.TestRendering.RecurseRendering import org.hamcrest.Matcher import org.hamcrest.Matchers.equalTo diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/NoTransitionBackStackContainer.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/fixtures/NoTransitionBackStackContainer.kt similarity index 88% rename from workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/NoTransitionBackStackContainer.kt rename to workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/fixtures/NoTransitionBackStackContainer.kt index 1f2ccc85bb..230a1065f5 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/NoTransitionBackStackContainer.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/fixtures/NoTransitionBackStackContainer.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container.fixtures +package com.squareup.workflow1.ui.navigation.fixtures import android.content.Context import android.view.ViewGroup.LayoutParams.MATCH_PARENT @@ -7,8 +7,8 @@ import com.squareup.workflow1.ui.R import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.ScreenViewHolder import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackContainer -import com.squareup.workflow1.ui.container.BackStackScreen +import com.squareup.workflow1.ui.navigation.BackStackContainer +import com.squareup.workflow1.ui.navigation.BackStackScreen /** * A subclass of [BackStackContainer] that disables transitions to make it simpler to test the diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/ViewStateTestView.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/fixtures/ViewStateTestView.kt similarity index 90% rename from workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/ViewStateTestView.kt rename to workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/fixtures/ViewStateTestView.kt index f42a41b0f5..7d1379a1ec 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/ViewStateTestView.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/navigation/fixtures/ViewStateTestView.kt @@ -1,12 +1,12 @@ -package com.squareup.workflow1.ui.container.fixtures +package com.squareup.workflow1.ui.navigation.fixtures import android.content.Context import android.os.Parcel import android.os.Parcelable import android.os.Parcelable.Creator import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.fixtures.BackStackContainerLifecycleActivity.TestRendering.LeafRendering import com.squareup.workflow1.ui.internal.test.AbstractLifecycleTestActivity.LeafView +import com.squareup.workflow1.ui.navigation.fixtures.BackStackContainerLifecycleActivity.TestRendering.LeafRendering /** * Simple view that has a string [viewState] property that will be saved and restored by the diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/AndroidScreen.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/AndroidScreen.kt index 8f90006c8f..5ec682335f 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/AndroidScreen.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/AndroidScreen.kt @@ -30,9 +30,9 @@ package com.squareup.workflow1.ui * a default UI that can be completely customized at runtime via [ViewRegistry] configuration. * * See also [ScreenViewFactoryFinder] to customize built in rendering types like - * [BackStackScreen][com.squareup.workflow1.ui.container.BackStackScreen]. + * [BackStackScreen][com.squareup.workflow1.ui.navigation.BackStackScreen]. * - * @see com.squareup.workflow1.ui.container.AndroidOverlay + * @see com.squareup.workflow1.ui.navigation.AndroidOverlay */ @WorkflowUiExperimentalApi public interface AndroidScreen> : Screen { diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/AndroidViewRegistry.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/AndroidViewRegistry.kt index ce164699cb..8472dead98 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/AndroidViewRegistry.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/AndroidViewRegistry.kt @@ -5,8 +5,7 @@ package com.squareup.workflow1.ui import android.content.Context import android.view.View import android.view.ViewGroup -import com.squareup.workflow1.ui.container.EnvironmentScreen -import com.squareup.workflow1.ui.container.EnvironmentScreenLegacyViewFactory +import com.squareup.workflow1.ui.navigation.EnvironmentScreenLegacyViewFactory import kotlin.reflect.KClass /** diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/BackButtonScreen.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/BackButtonScreen.kt index 22b240589e..649deef32e 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/BackButtonScreen.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/BackButtonScreen.kt @@ -18,8 +18,8 @@ package com.squareup.workflow1.ui @Suppress("DEPRECATION") @WorkflowUiExperimentalApi @Deprecated( - "Use com.squareup.workflow1.ui.container.BackButtonScreen", - ReplaceWith("BackButtonScreen", "com.squareup.workflow1.ui.container.BackButtonScreen") + "Use com.squareup.workflow1.ui.navigation.BackButtonScreen", + ReplaceWith("BackButtonScreen", "com.squareup.workflow1.ui.navigation.BackButtonScreen") ) public class BackButtonScreen( public val wrapped: W, diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ScreenViewFactory.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ScreenViewFactory.kt index 8d8a9d15d1..10fefc65cf 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ScreenViewFactory.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ScreenViewFactory.kt @@ -204,7 +204,7 @@ public interface ScreenViewFactory : ViewRegistry.Entry { initialEnvironment: ViewEnvironment, context: Context ): OverlayDialogHolder = - AlertDialog.Builder(context, initialEnvironment[AlertDialogThemeResId]) + AlertDialog.Builder( + context, + initialEnvironment[com.squareup.workflow1.ui.navigation.AlertDialogThemeResId] + ) .create() .toDialogHolder(initialEnvironment) } diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/AndroidDialogBounds.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/AndroidDialogBounds.kt similarity index 98% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/AndroidDialogBounds.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/AndroidDialogBounds.kt index d12f95aadd..4186338687 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/AndroidDialogBounds.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/AndroidDialogBounds.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.annotation.SuppressLint import android.app.Dialog diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/AndroidOverlay.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/AndroidOverlay.kt similarity index 97% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/AndroidOverlay.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/AndroidOverlay.kt index 5cd9dce400..96c7c93faa 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/AndroidOverlay.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/AndroidOverlay.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.WorkflowUiExperimentalApi diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/AsDialogHolderWithContent.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/AsDialogHolderWithContent.kt similarity index 97% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/AsDialogHolderWithContent.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/AsDialogHolderWithContent.kt index 69c1c7a303..5c2ab432c8 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/AsDialogHolderWithContent.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/AsDialogHolderWithContent.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.app.Dialog import android.graphics.drawable.ColorDrawable @@ -6,11 +6,11 @@ import android.util.TypedValue import android.view.WindowManager.LayoutParams.FLAG_DIM_BEHIND import android.view.WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL import androidx.activity.ComponentDialog -import com.squareup.workflow1.ui.OnBackPressedDispatcherOwnerKey import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.ScreenViewHolder import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi +import com.squareup.workflow1.ui.androidx.OnBackPressedDispatcherOwnerKey import com.squareup.workflow1.ui.androidx.WorkflowLifecycleOwner import com.squareup.workflow1.ui.show import com.squareup.workflow1.ui.startShowing diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BackButtonScreen.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BackButtonScreen.kt similarity index 96% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BackButtonScreen.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BackButtonScreen.kt index 308ec4bbb2..05051f2063 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BackButtonScreen.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BackButtonScreen.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.AndroidScreen import com.squareup.workflow1.ui.Compatible.Companion.keyFor @@ -6,7 +6,6 @@ import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.ScreenViewFactory import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.Wrapper -import com.squareup.workflow1.ui.setBackHandler /** * Adds optional back button handling to a [content] rendering, possibly overriding that diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BackStackContainer.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BackStackContainer.kt similarity index 97% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BackStackContainer.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BackStackContainer.kt index 8006d6a9a2..3e1c494b4f 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BackStackContainer.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BackStackContainer.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.content.Context import android.os.Build.VERSION @@ -28,8 +28,8 @@ import com.squareup.workflow1.ui.androidx.WorkflowAndroidXSupport.stateRegistryO import com.squareup.workflow1.ui.androidx.WorkflowLifecycleOwner import com.squareup.workflow1.ui.canShow import com.squareup.workflow1.ui.compatible -import com.squareup.workflow1.ui.container.BackStackConfig.First -import com.squareup.workflow1.ui.container.BackStackConfig.Other +import com.squareup.workflow1.ui.navigation.BackStackConfig.First +import com.squareup.workflow1.ui.navigation.BackStackConfig.Other import com.squareup.workflow1.ui.screen import com.squareup.workflow1.ui.show import com.squareup.workflow1.ui.startShowing diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BackStackScreenViewFactory.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BackStackScreenViewFactory.kt similarity index 94% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BackStackScreenViewFactory.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BackStackScreenViewFactory.kt index f7fc5c253d..55e577a44f 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BackStackScreenViewFactory.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BackStackScreenViewFactory.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.view.ViewGroup.LayoutParams import android.view.ViewGroup.LayoutParams.MATCH_PARENT diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BodyAndOverlaysContainer.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BodyAndOverlaysContainer.kt similarity index 99% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BodyAndOverlaysContainer.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BodyAndOverlaysContainer.kt index b8588d09e7..5af465ed6a 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/BodyAndOverlaysContainer.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/BodyAndOverlaysContainer.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.content.Context import android.os.Build.VERSION diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/CoveredByModal.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/CoveredByModal.kt similarity index 93% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/CoveredByModal.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/CoveredByModal.kt index e0b9e20931..c9bfbd42f7 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/CoveredByModal.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/CoveredByModal.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.ViewEnvironmentKey import com.squareup.workflow1.ui.WorkflowUiExperimentalApi diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DialogCollator.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DialogCollator.kt similarity index 98% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DialogCollator.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DialogCollator.kt index 0919db3e91..2ce5b54a74 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DialogCollator.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DialogCollator.kt @@ -1,9 +1,9 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.ViewEnvironmentKey import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.DialogCollator.IdAndSessions +import com.squareup.workflow1.ui.navigation.DialogCollator.IdAndSessions import java.util.UUID /** diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DialogOverlay.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DialogOverlay.kt similarity index 96% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DialogOverlay.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DialogOverlay.kt index ac93ed0e50..cda12dbb97 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DialogOverlay.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DialogOverlay.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.app.Dialog import android.view.View diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DialogSession.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DialogSession.kt similarity index 99% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DialogSession.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DialogSession.kt index ea7ce76ccc..464233cb65 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DialogSession.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DialogSession.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.os.Bundle import android.os.Parcel @@ -18,9 +18,9 @@ import androidx.lifecycle.DefaultLifecycleObserver import androidx.lifecycle.Lifecycle import androidx.lifecycle.LifecycleOwner import com.squareup.workflow1.ui.Compatible -import com.squareup.workflow1.ui.OnBackPressedDispatcherOwnerKey import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi +import com.squareup.workflow1.ui.androidx.OnBackPressedDispatcherOwnerKey import com.squareup.workflow1.ui.androidx.WorkflowAndroidXSupport.onBackPressedDispatcherOwnerOrNull import com.squareup.workflow1.ui.androidx.WorkflowLifecycleOwner import com.squareup.workflow1.ui.androidx.WorkflowSavedStateRegistryAggregator diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DispatchCancelEvent.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DispatchCancelEvent.kt similarity index 89% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DispatchCancelEvent.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DispatchCancelEvent.kt index c8b5668818..99ff822291 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/DispatchCancelEvent.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/DispatchCancelEvent.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.os.SystemClock import android.view.MotionEvent diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/EnvironmentScreenLegacyViewFactory.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/EnvironmentScreenLegacyViewFactory.kt similarity index 84% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/EnvironmentScreenLegacyViewFactory.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/EnvironmentScreenLegacyViewFactory.kt index 580faca271..79c9d0ec2c 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/EnvironmentScreenLegacyViewFactory.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/EnvironmentScreenLegacyViewFactory.kt @@ -1,8 +1,9 @@ @file:Suppress("DEPRECATION") -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.DecorativeViewFactory +import com.squareup.workflow1.ui.EnvironmentScreen import com.squareup.workflow1.ui.ViewFactory import com.squareup.workflow1.ui.WorkflowUiExperimentalApi diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/FullScreenModalFactory.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/FullScreenModalFactory.kt similarity index 95% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/FullScreenModalFactory.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/FullScreenModalFactory.kt index a72f8a9010..8f2a8114c5 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/FullScreenModalFactory.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/FullScreenModalFactory.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.content.Context import androidx.activity.ComponentDialog diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/LayeredDialogSessions.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/LayeredDialogSessions.kt similarity index 99% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/LayeredDialogSessions.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/LayeredDialogSessions.kt index 26eb4c6aff..0e7b88fb6d 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/LayeredDialogSessions.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/LayeredDialogSessions.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.content.Context import android.graphics.Rect @@ -22,7 +22,7 @@ import com.squareup.workflow1.ui.androidx.WorkflowAndroidXSupport import com.squareup.workflow1.ui.androidx.WorkflowAndroidXSupport.lifecycleOwnerFromContext import com.squareup.workflow1.ui.androidx.WorkflowLifecycleOwner import com.squareup.workflow1.ui.androidx.WorkflowSavedStateRegistryAggregator -import com.squareup.workflow1.ui.container.DialogSession.KeyAndBundle +import com.squareup.workflow1.ui.navigation.DialogSession.KeyAndBundle import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow import java.util.UUID diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayArea.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayArea.kt similarity index 95% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayArea.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayArea.kt index 47feb39655..03717fa2df 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayArea.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayArea.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.graphics.Rect import com.squareup.workflow1.ui.ViewEnvironment diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayDialogFactory.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayDialogFactory.kt similarity index 99% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayDialogFactory.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayDialogFactory.kt index 33bcf349e4..768ca9a837 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayDialogFactory.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayDialogFactory.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.app.Dialog import android.content.Context diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayDialogFactoryFinder.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder.kt similarity index 97% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayDialogFactoryFinder.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder.kt index a495a05158..d51e0dfd23 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayDialogFactoryFinder.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayDialogFactoryFinder.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.ViewEnvironment diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayDialogHolder.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayDialogHolder.kt similarity index 99% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayDialogHolder.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayDialogHolder.kt index fb6947927d..6bea33ce2b 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/OverlayDialogHolder.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/OverlayDialogHolder.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.app.Dialog import android.graphics.Rect diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/RealOverlayDialogHolder.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/RealOverlayDialogHolder.kt similarity index 95% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/RealOverlayDialogHolder.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/RealOverlayDialogHolder.kt index d9148ed304..455f02626f 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/RealOverlayDialogHolder.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/RealOverlayDialogHolder.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.app.Dialog import android.graphics.Rect diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/ScreenOverlayDialogFactory.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ScreenOverlayDialogFactory.kt similarity index 97% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/ScreenOverlayDialogFactory.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ScreenOverlayDialogFactory.kt index 98937d225f..166191f81c 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/ScreenOverlayDialogFactory.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ScreenOverlayDialogFactory.kt @@ -1,6 +1,6 @@ @file:Suppress("DEPRECATION") -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.app.Dialog import android.content.Context @@ -11,7 +11,6 @@ import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.androidx.WorkflowAndroidXSupport.onBackPressedDispatcherOwner import com.squareup.workflow1.ui.androidx.WorkflowLifecycleOwner -import com.squareup.workflow1.ui.setBackHandler import com.squareup.workflow1.ui.show import com.squareup.workflow1.ui.startShowing import com.squareup.workflow1.ui.toViewFactory diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ViewBackHandler.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ViewSetBackHandler.kt similarity index 95% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ViewBackHandler.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ViewSetBackHandler.kt index eb11f0f71e..19b8309f90 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ViewBackHandler.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ViewSetBackHandler.kt @@ -1,8 +1,10 @@ -package com.squareup.workflow1.ui +package com.squareup.workflow1.ui.navigation import android.view.View import androidx.activity.OnBackPressedCallback import androidx.lifecycle.findViewTreeLifecycleOwner +import com.squareup.workflow1.ui.R +import com.squareup.workflow1.ui.WorkflowUiExperimentalApi import com.squareup.workflow1.ui.androidx.WorkflowAndroidXSupport.onBackPressedDispatcherOwnerOrNull /** diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/ViewStateCache.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ViewStateCache.kt similarity index 99% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/ViewStateCache.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ViewStateCache.kt index 0e126c693f..069ea952dc 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/ViewStateCache.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ViewStateCache.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.os.Build.VERSION import android.os.Build.VERSION_CODES diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/ViewStateFrame.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ViewStateFrame.kt similarity index 96% rename from workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/ViewStateFrame.kt rename to workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ViewStateFrame.kt index ea439918da..b27f10f06d 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/container/ViewStateFrame.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/navigation/ViewStateFrame.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.os.Build.VERSION import android.os.Build.VERSION_CODES diff --git a/workflow-ui/core-android/src/main/res/layout/view_stack_layout.xml b/workflow-ui/core-android/src/main/res/layout/view_stack_layout.xml index 99c295d23f..a3300d18b2 100644 --- a/workflow-ui/core-android/src/main/res/layout/view_stack_layout.xml +++ b/workflow-ui/core-android/src/main/res/layout/view_stack_layout.xml @@ -1,8 +1,9 @@ - - + diff --git a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/container/EnvironmentScreenAndroidIntegrationTest.kt b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/EnvironmentScreenAndroidIntegrationTest.kt similarity index 84% rename from workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/container/EnvironmentScreenAndroidIntegrationTest.kt rename to workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/EnvironmentScreenAndroidIntegrationTest.kt index 6030e7a445..247e272c25 100644 --- a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/container/EnvironmentScreenAndroidIntegrationTest.kt +++ b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/EnvironmentScreenAndroidIntegrationTest.kt @@ -1,13 +1,10 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui import com.google.common.truth.Truth.assertThat import com.squareup.workflow1.ui.ViewEnvironment.Companion.EMPTY -import com.squareup.workflow1.ui.ViewRegistry -import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.plus -import com.squareup.workflow1.ui.show -import com.squareup.workflow1.ui.startShowing -import com.squareup.workflow1.ui.toViewFactory +import com.squareup.workflow1.ui.navigation.SomeEnvValue +import com.squareup.workflow1.ui.navigation.WrappedFactory +import com.squareup.workflow1.ui.navigation.WrappedScreen import org.junit.Test import org.mockito.kotlin.mock diff --git a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/LegacyAndroidViewRegistryTest.kt b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/LegacyAndroidViewRegistryTest.kt index ce653d3b0c..30e6c18b48 100644 --- a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/LegacyAndroidViewRegistryTest.kt +++ b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/LegacyAndroidViewRegistryTest.kt @@ -7,7 +7,7 @@ import android.view.View import android.view.ViewGroup import com.google.common.truth.Truth.assertThat import com.squareup.workflow1.ui.ViewRegistry.Entry -import com.squareup.workflow1.ui.container.mockView +import com.squareup.workflow1.ui.navigation.mockView import org.junit.Test import org.mockito.kotlin.mock import kotlin.reflect.KClass diff --git a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/WorkflowLayoutTest.kt b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/WorkflowLayoutTest.kt index c450df83fc..31fbbf3439 100644 --- a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/WorkflowLayoutTest.kt +++ b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/WorkflowLayoutTest.kt @@ -9,7 +9,7 @@ import androidx.lifecycle.Lifecycle import androidx.lifecycle.testing.TestLifecycleOwner import androidx.test.core.app.ApplicationProvider import com.google.common.truth.Truth.assertThat -import com.squareup.workflow1.ui.container.WrappedScreen +import com.squareup.workflow1.ui.navigation.WrappedScreen import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.flowOf import kotlinx.coroutines.test.UnconfinedTestDispatcher diff --git a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/container/NamedScreenAndroidIntegrationTest.kt b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/navigation/NamedScreenAndroidIntegrationTest.kt similarity index 96% rename from workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/container/NamedScreenAndroidIntegrationTest.kt rename to workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/navigation/NamedScreenAndroidIntegrationTest.kt index 20111ec8fe..a4111bb411 100644 --- a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/container/NamedScreenAndroidIntegrationTest.kt +++ b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/navigation/NamedScreenAndroidIntegrationTest.kt @@ -1,6 +1,6 @@ @file:OptIn(WorkflowUiExperimentalApi::class) -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.google.common.truth.Truth.assertThat import com.squareup.workflow1.ui.NamedScreen diff --git a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/container/ScreenViewFactoryTestUtil.kt b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/navigation/ScreenViewFactoryTestUtil.kt similarity index 97% rename from workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/container/ScreenViewFactoryTestUtil.kt rename to workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/navigation/ScreenViewFactoryTestUtil.kt index 5039372ae7..f9e63f5e51 100644 --- a/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/container/ScreenViewFactoryTestUtil.kt +++ b/workflow-ui/core-android/src/test/java/com/squareup/workflow1/ui/navigation/ScreenViewFactoryTestUtil.kt @@ -1,6 +1,6 @@ @file:OptIn(WorkflowUiExperimentalApi::class) -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import android.content.Context import android.view.View diff --git a/workflow-ui/core-common/api/core-common.api b/workflow-ui/core-common/api/core-common.api index 17b3865a28..a2506476ac 100644 --- a/workflow-ui/core-common/api/core-common.api +++ b/workflow-ui/core-common/api/core-common.api @@ -32,6 +32,26 @@ public abstract interface class com/squareup/workflow1/ui/Container { public abstract fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container; } +public final class com/squareup/workflow1/ui/EnvironmentScreen : com/squareup/workflow1/ui/Screen, com/squareup/workflow1/ui/Wrapper { + public fun (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;)V + public synthetic fun (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun asSequence ()Lkotlin/sequences/Sequence; + public fun getCompatibilityKey ()Ljava/lang/String; + public fun getContent ()Lcom/squareup/workflow1/ui/Screen; + public synthetic fun getContent ()Ljava/lang/Object; + public final fun getEnvironment ()Lcom/squareup/workflow1/ui/ViewEnvironment; + public final fun getWrapped ()Lcom/squareup/workflow1/ui/Screen; + public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container; + public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/EnvironmentScreen; + public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Wrapper; +} + +public final class com/squareup/workflow1/ui/EnvironmentScreenKt { + public static final fun withEnvironment (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;)Lcom/squareup/workflow1/ui/EnvironmentScreen; + public static synthetic fun withEnvironment$default (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/EnvironmentScreen; + public static final fun withRegistry (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewRegistry;)Lcom/squareup/workflow1/ui/EnvironmentScreen; +} + public final class com/squareup/workflow1/ui/Named : com/squareup/workflow1/ui/Compatible { public fun (Ljava/lang/Object;Ljava/lang/String;)V public final fun component1 ()Ljava/lang/Object; @@ -148,7 +168,7 @@ public final class com/squareup/workflow1/ui/Wrapper$DefaultImpls { public static fun getCompatibilityKey (Lcom/squareup/workflow1/ui/Wrapper;)Ljava/lang/String; } -public final class com/squareup/workflow1/ui/container/AlertOverlay : com/squareup/workflow1/ui/container/ModalOverlay { +public final class com/squareup/workflow1/ui/navigation/AlertOverlay : com/squareup/workflow1/ui/navigation/ModalOverlay { public fun (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;ZLkotlin/jvm/functions/Function1;)V public synthetic fun (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;ZLkotlin/jvm/functions/Function1;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Ljava/util/Map; @@ -156,8 +176,8 @@ public final class com/squareup/workflow1/ui/container/AlertOverlay : com/square public final fun component3 ()Ljava/lang/String; public final fun component4 ()Z public final fun component5 ()Lkotlin/jvm/functions/Function1; - public final fun copy (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;ZLkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/AlertOverlay; - public static synthetic fun copy$default (Lcom/squareup/workflow1/ui/container/AlertOverlay;Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;ZLkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/container/AlertOverlay; + public final fun copy (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;ZLkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/AlertOverlay; + public static synthetic fun copy$default (Lcom/squareup/workflow1/ui/navigation/AlertOverlay;Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;ZLkotlin/jvm/functions/Function1;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/navigation/AlertOverlay; public fun equals (Ljava/lang/Object;)Z public final fun getButtons ()Ljava/util/Map; public final fun getCancelable ()Z @@ -168,54 +188,54 @@ public final class com/squareup/workflow1/ui/container/AlertOverlay : com/square public fun toString ()Ljava/lang/String; } -public final class com/squareup/workflow1/ui/container/AlertOverlay$Button : java/lang/Enum { - public static final field NEGATIVE Lcom/squareup/workflow1/ui/container/AlertOverlay$Button; - public static final field NEUTRAL Lcom/squareup/workflow1/ui/container/AlertOverlay$Button; - public static final field POSITIVE Lcom/squareup/workflow1/ui/container/AlertOverlay$Button; +public final class com/squareup/workflow1/ui/navigation/AlertOverlay$Button : java/lang/Enum { + public static final field NEGATIVE Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button; + public static final field NEUTRAL Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button; + public static final field POSITIVE Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button; public static fun getEntries ()Lkotlin/enums/EnumEntries; - public static fun valueOf (Ljava/lang/String;)Lcom/squareup/workflow1/ui/container/AlertOverlay$Button; - public static fun values ()[Lcom/squareup/workflow1/ui/container/AlertOverlay$Button; + public static fun valueOf (Ljava/lang/String;)Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button; + public static fun values ()[Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button; } -public abstract class com/squareup/workflow1/ui/container/AlertOverlay$Event { +public abstract class com/squareup/workflow1/ui/navigation/AlertOverlay$Event { } -public final class com/squareup/workflow1/ui/container/AlertOverlay$Event$ButtonClicked : com/squareup/workflow1/ui/container/AlertOverlay$Event { - public fun (Lcom/squareup/workflow1/ui/container/AlertOverlay$Button;)V - public final fun component1 ()Lcom/squareup/workflow1/ui/container/AlertOverlay$Button; - public final fun copy (Lcom/squareup/workflow1/ui/container/AlertOverlay$Button;)Lcom/squareup/workflow1/ui/container/AlertOverlay$Event$ButtonClicked; - public static synthetic fun copy$default (Lcom/squareup/workflow1/ui/container/AlertOverlay$Event$ButtonClicked;Lcom/squareup/workflow1/ui/container/AlertOverlay$Button;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/container/AlertOverlay$Event$ButtonClicked; +public final class com/squareup/workflow1/ui/navigation/AlertOverlay$Event$ButtonClicked : com/squareup/workflow1/ui/navigation/AlertOverlay$Event { + public fun (Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button;)V + public final fun component1 ()Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button; + public final fun copy (Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button;)Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Event$ButtonClicked; + public static synthetic fun copy$default (Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Event$ButtonClicked;Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Event$ButtonClicked; public fun equals (Ljava/lang/Object;)Z - public final fun getButton ()Lcom/squareup/workflow1/ui/container/AlertOverlay$Button; + public final fun getButton ()Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Button; public fun hashCode ()I public fun toString ()Ljava/lang/String; } -public final class com/squareup/workflow1/ui/container/AlertOverlay$Event$Canceled : com/squareup/workflow1/ui/container/AlertOverlay$Event { - public static final field INSTANCE Lcom/squareup/workflow1/ui/container/AlertOverlay$Event$Canceled; +public final class com/squareup/workflow1/ui/navigation/AlertOverlay$Event$Canceled : com/squareup/workflow1/ui/navigation/AlertOverlay$Event { + public static final field INSTANCE Lcom/squareup/workflow1/ui/navigation/AlertOverlay$Event$Canceled; } -public final class com/squareup/workflow1/ui/container/BackStackConfig : java/lang/Enum { - public static final field Companion Lcom/squareup/workflow1/ui/container/BackStackConfig$Companion; - public static final field First Lcom/squareup/workflow1/ui/container/BackStackConfig; - public static final field None Lcom/squareup/workflow1/ui/container/BackStackConfig; - public static final field Other Lcom/squareup/workflow1/ui/container/BackStackConfig; +public final class com/squareup/workflow1/ui/navigation/BackStackConfig : java/lang/Enum { + public static final field Companion Lcom/squareup/workflow1/ui/navigation/BackStackConfig$Companion; + public static final field First Lcom/squareup/workflow1/ui/navigation/BackStackConfig; + public static final field None Lcom/squareup/workflow1/ui/navigation/BackStackConfig; + public static final field Other Lcom/squareup/workflow1/ui/navigation/BackStackConfig; public static fun getEntries ()Lkotlin/enums/EnumEntries; - public static fun valueOf (Ljava/lang/String;)Lcom/squareup/workflow1/ui/container/BackStackConfig; - public static fun values ()[Lcom/squareup/workflow1/ui/container/BackStackConfig; + public static fun valueOf (Ljava/lang/String;)Lcom/squareup/workflow1/ui/navigation/BackStackConfig; + public static fun values ()[Lcom/squareup/workflow1/ui/navigation/BackStackConfig; } -public final class com/squareup/workflow1/ui/container/BackStackConfig$Companion : com/squareup/workflow1/ui/ViewEnvironmentKey { - public fun getDefault ()Lcom/squareup/workflow1/ui/container/BackStackConfig; +public final class com/squareup/workflow1/ui/navigation/BackStackConfig$Companion : com/squareup/workflow1/ui/ViewEnvironmentKey { + public fun getDefault ()Lcom/squareup/workflow1/ui/navigation/BackStackConfig; public synthetic fun getDefault ()Ljava/lang/Object; } -public final class com/squareup/workflow1/ui/container/BackStackConfigKt { - public static final fun plus (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/container/BackStackConfig;)Lcom/squareup/workflow1/ui/ViewEnvironment; +public final class com/squareup/workflow1/ui/navigation/BackStackConfigKt { + public static final fun plus (Lcom/squareup/workflow1/ui/ViewEnvironment;Lcom/squareup/workflow1/ui/navigation/BackStackConfig;)Lcom/squareup/workflow1/ui/ViewEnvironment; } -public final class com/squareup/workflow1/ui/container/BackStackScreen : com/squareup/workflow1/ui/Container, com/squareup/workflow1/ui/Screen { - public static final field Companion Lcom/squareup/workflow1/ui/container/BackStackScreen$Companion; +public final class com/squareup/workflow1/ui/navigation/BackStackScreen : com/squareup/workflow1/ui/Container, com/squareup/workflow1/ui/Screen { + public static final field Companion Lcom/squareup/workflow1/ui/navigation/BackStackScreen$Companion; public fun (Lcom/squareup/workflow1/ui/Screen;Ljava/util/List;)V public fun (Lcom/squareup/workflow1/ui/Screen;[Lcom/squareup/workflow1/ui/Screen;)V public fun asSequence ()Lkotlin/sequences/Sequence; @@ -226,56 +246,36 @@ public final class com/squareup/workflow1/ui/container/BackStackScreen : com/squ public final fun getTop ()Lcom/squareup/workflow1/ui/Screen; public fun hashCode ()I public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container; - public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/BackStackScreen; - public final fun mapIndexed (Lkotlin/jvm/functions/Function2;)Lcom/squareup/workflow1/ui/container/BackStackScreen; + public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/BackStackScreen; + public final fun mapIndexed (Lkotlin/jvm/functions/Function2;)Lcom/squareup/workflow1/ui/navigation/BackStackScreen; public fun toString ()Ljava/lang/String; } -public final class com/squareup/workflow1/ui/container/BackStackScreen$Companion { - public final fun fromList (Ljava/util/List;)Lcom/squareup/workflow1/ui/container/BackStackScreen; - public final fun fromListOrNull (Ljava/util/List;)Lcom/squareup/workflow1/ui/container/BackStackScreen; +public final class com/squareup/workflow1/ui/navigation/BackStackScreen$Companion { + public final fun fromList (Ljava/util/List;)Lcom/squareup/workflow1/ui/navigation/BackStackScreen; + public final fun fromListOrNull (Ljava/util/List;)Lcom/squareup/workflow1/ui/navigation/BackStackScreen; } -public final class com/squareup/workflow1/ui/container/BackStackScreenKt { - public static final fun plus (Lcom/squareup/workflow1/ui/container/BackStackScreen;Lcom/squareup/workflow1/ui/container/BackStackScreen;)Lcom/squareup/workflow1/ui/container/BackStackScreen; - public static final fun toBackStackScreen (Ljava/util/List;)Lcom/squareup/workflow1/ui/container/BackStackScreen; - public static final fun toBackStackScreenOrNull (Ljava/util/List;)Lcom/squareup/workflow1/ui/container/BackStackScreen; +public final class com/squareup/workflow1/ui/navigation/BackStackScreenKt { + public static final fun plus (Lcom/squareup/workflow1/ui/navigation/BackStackScreen;Lcom/squareup/workflow1/ui/navigation/BackStackScreen;)Lcom/squareup/workflow1/ui/navigation/BackStackScreen; + public static final fun toBackStackScreen (Ljava/util/List;)Lcom/squareup/workflow1/ui/navigation/BackStackScreen; + public static final fun toBackStackScreenOrNull (Ljava/util/List;)Lcom/squareup/workflow1/ui/navigation/BackStackScreen; } -public final class com/squareup/workflow1/ui/container/BodyAndOverlaysScreen : com/squareup/workflow1/ui/Compatible, com/squareup/workflow1/ui/Screen { +public final class com/squareup/workflow1/ui/navigation/BodyAndOverlaysScreen : com/squareup/workflow1/ui/Compatible, com/squareup/workflow1/ui/Screen { public fun (Lcom/squareup/workflow1/ui/Screen;Ljava/util/List;Ljava/lang/String;)V public synthetic fun (Lcom/squareup/workflow1/ui/Screen;Ljava/util/List;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V - public fun (Lcom/squareup/workflow1/ui/Screen;[Lcom/squareup/workflow1/ui/container/Overlay;)V + public fun (Lcom/squareup/workflow1/ui/Screen;[Lcom/squareup/workflow1/ui/navigation/Overlay;)V public final fun getBody ()Lcom/squareup/workflow1/ui/Screen; public fun getCompatibilityKey ()Ljava/lang/String; public final fun getName ()Ljava/lang/String; public final fun getOverlays ()Ljava/util/List; - public final fun mapBody (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/BodyAndOverlaysScreen; - public final fun mapModals (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/BodyAndOverlaysScreen; - public final fun mapOverlays (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/BodyAndOverlaysScreen; -} - -public final class com/squareup/workflow1/ui/container/EnvironmentScreen : com/squareup/workflow1/ui/Screen, com/squareup/workflow1/ui/Wrapper { - public fun (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;)V - public synthetic fun (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;ILkotlin/jvm/internal/DefaultConstructorMarker;)V - public fun asSequence ()Lkotlin/sequences/Sequence; - public fun getCompatibilityKey ()Ljava/lang/String; - public fun getContent ()Lcom/squareup/workflow1/ui/Screen; - public synthetic fun getContent ()Ljava/lang/Object; - public final fun getEnvironment ()Lcom/squareup/workflow1/ui/ViewEnvironment; - public final fun getWrapped ()Lcom/squareup/workflow1/ui/Screen; - public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container; - public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Wrapper; - public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/EnvironmentScreen; -} - -public final class com/squareup/workflow1/ui/container/EnvironmentScreenKt { - public static final fun withEnvironment (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;)Lcom/squareup/workflow1/ui/container/EnvironmentScreen; - public static synthetic fun withEnvironment$default (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewEnvironment;ILjava/lang/Object;)Lcom/squareup/workflow1/ui/container/EnvironmentScreen; - public static final fun withRegistry (Lcom/squareup/workflow1/ui/Screen;Lcom/squareup/workflow1/ui/ViewRegistry;)Lcom/squareup/workflow1/ui/container/EnvironmentScreen; + public final fun mapBody (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/BodyAndOverlaysScreen; + public final fun mapModals (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/BodyAndOverlaysScreen; + public final fun mapOverlays (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/BodyAndOverlaysScreen; } -public final class com/squareup/workflow1/ui/container/FullScreenModal : com/squareup/workflow1/ui/container/ModalOverlay, com/squareup/workflow1/ui/container/ScreenOverlay { +public final class com/squareup/workflow1/ui/navigation/FullScreenModal : com/squareup/workflow1/ui/navigation/ModalOverlay, com/squareup/workflow1/ui/navigation/ScreenOverlay { public fun (Lcom/squareup/workflow1/ui/Screen;)V public fun asSequence ()Lkotlin/sequences/Sequence; public fun getCompatibilityKey ()Ljava/lang/String; @@ -283,23 +283,23 @@ public final class com/squareup/workflow1/ui/container/FullScreenModal : com/squ public synthetic fun getContent ()Ljava/lang/Object; public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Container; public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/Wrapper; - public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/FullScreenModal; - public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/ScreenOverlay; + public fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/FullScreenModal; + public synthetic fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/ScreenOverlay; } -public abstract interface class com/squareup/workflow1/ui/container/ModalOverlay : com/squareup/workflow1/ui/container/Overlay { +public abstract interface class com/squareup/workflow1/ui/navigation/ModalOverlay : com/squareup/workflow1/ui/navigation/Overlay { } -public abstract interface class com/squareup/workflow1/ui/container/Overlay { +public abstract interface class com/squareup/workflow1/ui/navigation/Overlay { } -public abstract interface class com/squareup/workflow1/ui/container/ScreenOverlay : com/squareup/workflow1/ui/Wrapper, com/squareup/workflow1/ui/container/Overlay { +public abstract interface class com/squareup/workflow1/ui/navigation/ScreenOverlay : com/squareup/workflow1/ui/Wrapper, com/squareup/workflow1/ui/navigation/Overlay { public abstract fun getContent ()Lcom/squareup/workflow1/ui/Screen; - public abstract fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/container/ScreenOverlay; + public abstract fun map (Lkotlin/jvm/functions/Function1;)Lcom/squareup/workflow1/ui/navigation/ScreenOverlay; } -public final class com/squareup/workflow1/ui/container/ScreenOverlay$DefaultImpls { - public static fun asSequence (Lcom/squareup/workflow1/ui/container/ScreenOverlay;)Lkotlin/sequences/Sequence; - public static fun getCompatibilityKey (Lcom/squareup/workflow1/ui/container/ScreenOverlay;)Ljava/lang/String; +public final class com/squareup/workflow1/ui/navigation/ScreenOverlay$DefaultImpls { + public static fun asSequence (Lcom/squareup/workflow1/ui/navigation/ScreenOverlay;)Lkotlin/sequences/Sequence; + public static fun getCompatibilityKey (Lcom/squareup/workflow1/ui/navigation/ScreenOverlay;)Ljava/lang/String; } diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/Container.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/Container.kt index cd04934ac7..277d7b3821 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/Container.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/Container.kt @@ -11,10 +11,10 @@ import com.squareup.workflow1.ui.Compatible.Companion.keyFor * that [map] is only able to transform `S` to other types of `Screen`. * * @param BaseT the invariant base type of the contents of such a container, - * usually [Screen] or [Overlay][com.squareup.workflow1.ui.container.Overlay]. + * usually [Screen] or [Overlay][com.squareup.workflow1.ui.navigation.Overlay]. * It is common for the [Container] itself to implement [BaseT], but that is - * not a requirement. E.g., [ScreenOverlay][com.squareup.workflow1.ui.container.ScreenOverlay] - * is an [Overlay][com.squareup.workflow1.ui.container.Overlay], but it + * not a requirement. E.g., [ScreenOverlay][com.squareup.workflow1.ui.navigation.ScreenOverlay] + * is an [Overlay][com.squareup.workflow1.ui.navigation.Overlay], but it * wraps a [Screen]. * * @param C the specific subtype of [BaseT] collected by this [Container]. @@ -48,7 +48,7 @@ public interface Container { /** * A [Container] rendering that wraps exactly one other rendering, its [content]. These are * typically used to "add value" to the [content], e.g. an - * [EnvironmentScreen][com.squareup.workflow1.ui.container.EnvironmentScreen] that allows + * [EnvironmentScreen][com.squareup.workflow1.ui.EnvironmentScreen] that allows * changes to be made to the [ViewEnvironment]. * * Usually a [Wrapper] is [Compatible] only with others of the same type with diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/EnvironmentScreen.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/EnvironmentScreen.kt similarity index 85% rename from workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/EnvironmentScreen.kt rename to workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/EnvironmentScreen.kt index c82219d062..1487c67f7c 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/EnvironmentScreen.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/EnvironmentScreen.kt @@ -1,11 +1,4 @@ -package com.squareup.workflow1.ui.container - -import com.squareup.workflow1.ui.Screen -import com.squareup.workflow1.ui.ViewEnvironment -import com.squareup.workflow1.ui.ViewRegistry -import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.Wrapper -import com.squareup.workflow1.ui.plus +package com.squareup.workflow1.ui /** * Pairs a [content] rendering with a [environment] to support its display. diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/ViewEnvironment.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/ViewEnvironment.kt index 3508f820dd..9c37d796a4 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/ViewEnvironment.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/ViewEnvironment.kt @@ -7,7 +7,7 @@ import kotlin.reflect.KClass * its children. Allows containers to give descendants information about * the context in which they're drawing. * - * Calling [Screen.withEnvironment][com.squareup.workflow1.ui.container.withEnvironment] + * Calling [Screen.withEnvironment][com.squareup.workflow1.ui.withEnvironment] * on a [Screen] is the easiest way to customize its environment before rendering it. */ @WorkflowUiExperimentalApi @@ -67,7 +67,7 @@ constructor( * * It is hard to imagine a useful implementation of this that is not a Kotlin `object`. * Preferred use is to have the `companion object` of [T] extend this class. See - * [BackStackConfig.Companion][com.squareup.workflow1.ui.container.BackStackConfig.Companion] + * [BackStackConfig.Companion][com.squareup.workflow1.ui.navigation.BackStackConfig.Companion] * for an example. */ @WorkflowUiExperimentalApi diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/AlertOverlay.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/AlertOverlay.kt similarity index 96% rename from workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/AlertOverlay.kt rename to workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/AlertOverlay.kt index d2018ed3d2..bbddd9d9c1 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/AlertOverlay.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/AlertOverlay.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.WorkflowUiExperimentalApi diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/BackStackConfig.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/BackStackConfig.kt similarity index 85% rename from workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/BackStackConfig.kt rename to workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/BackStackConfig.kt index 17c912aebc..28702b9186 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/BackStackConfig.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/BackStackConfig.kt @@ -1,10 +1,10 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.ViewEnvironmentKey import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackConfig.First -import com.squareup.workflow1.ui.container.BackStackConfig.Other +import com.squareup.workflow1.ui.navigation.BackStackConfig.First +import com.squareup.workflow1.ui.navigation.BackStackConfig.Other /** * Informs views whether they're children of a [BackStackScreen], diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/BackStackScreen.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/BackStackScreen.kt similarity index 92% rename from workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/BackStackScreen.kt rename to workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/BackStackScreen.kt index 7bd13ad706..61b4e73417 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/BackStackScreen.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/BackStackScreen.kt @@ -1,11 +1,11 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.Container import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.container.BackStackScreen.Companion -import com.squareup.workflow1.ui.container.BackStackScreen.Companion.fromList -import com.squareup.workflow1.ui.container.BackStackScreen.Companion.fromListOrNull +import com.squareup.workflow1.ui.navigation.BackStackScreen.Companion +import com.squareup.workflow1.ui.navigation.BackStackScreen.Companion.fromList +import com.squareup.workflow1.ui.navigation.BackStackScreen.Companion.fromListOrNull /** * Represents an active screen ([top]), and a set of previously visited screens to which we may diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/BodyAndOverlaysScreen.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/BodyAndOverlaysScreen.kt similarity index 98% rename from workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/BodyAndOverlaysScreen.kt rename to workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/BodyAndOverlaysScreen.kt index 77e92c9d28..f0e0f532e3 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/BodyAndOverlaysScreen.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/BodyAndOverlaysScreen.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.Compatible import com.squareup.workflow1.ui.Compatible.Companion.keyFor diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/FullScreenModal.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/FullScreenModal.kt similarity index 92% rename from workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/FullScreenModal.kt rename to workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/FullScreenModal.kt index 870d5cbc3d..1fe9e25b33 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/FullScreenModal.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/FullScreenModal.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/ModalOverlay.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/ModalOverlay.kt similarity index 85% rename from workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/ModalOverlay.kt rename to workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/ModalOverlay.kt index 9b0cceeb7e..4d4c9f4b08 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/ModalOverlay.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/ModalOverlay.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.WorkflowUiExperimentalApi diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/Overlay.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/Overlay.kt similarity index 95% rename from workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/Overlay.kt rename to workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/Overlay.kt index c47633d583..f98b593de9 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/Overlay.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/Overlay.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.WorkflowUiExperimentalApi diff --git a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/ScreenOverlay.kt b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/ScreenOverlay.kt similarity index 91% rename from workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/ScreenOverlay.kt rename to workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/ScreenOverlay.kt index bfd9c3e64b..b42122f826 100644 --- a/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/container/ScreenOverlay.kt +++ b/workflow-ui/core-common/src/main/java/com/squareup/workflow1/ui/navigation/ScreenOverlay.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.squareup.workflow1.ui.Screen import com.squareup.workflow1.ui.WorkflowUiExperimentalApi diff --git a/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/container/EnvironmentScreenTest.kt b/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/EnvironmentScreenTest.kt similarity index 89% rename from workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/container/EnvironmentScreenTest.kt rename to workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/EnvironmentScreenTest.kt index f1fc9fdf68..9d5652983b 100644 --- a/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/container/EnvironmentScreenTest.kt +++ b/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/EnvironmentScreenTest.kt @@ -1,14 +1,7 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui import com.google.common.truth.Truth.assertThat -import com.squareup.workflow1.ui.Screen -import com.squareup.workflow1.ui.ViewEnvironment import com.squareup.workflow1.ui.ViewEnvironment.Companion.EMPTY -import com.squareup.workflow1.ui.ViewEnvironmentKey -import com.squareup.workflow1.ui.ViewRegistry -import com.squareup.workflow1.ui.WorkflowUiExperimentalApi -import com.squareup.workflow1.ui.get -import com.squareup.workflow1.ui.plus import org.junit.Test import kotlin.reflect.KClass diff --git a/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/container/BackStackScreenTest.kt b/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/navigation/BackStackScreenTest.kt similarity index 98% rename from workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/container/BackStackScreenTest.kt rename to workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/navigation/BackStackScreenTest.kt index 6ea1438888..2760a67cf6 100644 --- a/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/container/BackStackScreenTest.kt +++ b/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/navigation/BackStackScreenTest.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.google.common.truth.Truth.assertThat import com.squareup.workflow1.ui.Screen diff --git a/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/container/BodyAndOverlaysScreenTest.kt b/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/navigation/BodyAndOverlaysScreenTest.kt similarity index 97% rename from workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/container/BodyAndOverlaysScreenTest.kt rename to workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/navigation/BodyAndOverlaysScreenTest.kt index ef76e489c5..297f4f6a21 100644 --- a/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/container/BodyAndOverlaysScreenTest.kt +++ b/workflow-ui/core-common/src/test/java/com/squareup/workflow1/ui/navigation/BodyAndOverlaysScreenTest.kt @@ -1,4 +1,4 @@ -package com.squareup.workflow1.ui.container +package com.squareup.workflow1.ui.navigation import com.google.common.truth.Truth.assertThat import com.squareup.workflow1.ui.Screen