From 28095168e960094ab687861f99f76071e0b418f1 Mon Sep 17 00:00:00 2001 From: Andy Wickham Date: Tue, 14 Apr 2020 23:08:46 +0000 Subject: [PATCH] Refactors Sandbox to more easily add new tutorials. - Extracts abstract classes for common functionality - Renames some layouts, etc. to not be back-specific - Consolidates more logic in the controllers rather than classes like BackGestureTutorialTypeInfo - Removes redundant TutorialStep enum (combining it with TutorialType) Still considering removing additional layers of abstraction like the Fragment itself (instead keeping UI within the Activity, which would still be controlled by a TutorialController). Test: Built and went through the Back tutorial to confirm existing funcitonality was not disrupted. Bug: 148542211 Merged-In: Id893869cb59609141dcdbdca01744d0f5952b546 Change-Id: Id893869cb59609141dcdbdca01744d0f5952b546 --- ...ure_tutorial_action_button_background.xml} | 2 +- ...ure_tutorial_action_button_background.xml} | 2 +- ....xml => gesture_tutorial_close_button.xml} | 0 ...vity.xml => gesture_tutorial_activity.xml} | 2 +- ...ment.xml => gesture_tutorial_fragment.xml} | 40 ++-- quickstep/res/values/dimens.xml | 6 +- quickstep/res/values/strings.xml | 6 +- quickstep/res/values/styles.xml | 8 +- .../BackGestureTutorialConfirmController.java | 64 ------ .../BackGestureTutorialController.java | 199 ++++++------------ .../BackGestureTutorialEngagedController.java | 64 ------ .../BackGestureTutorialFragment.java | 153 ++------------ .../BackGestureTutorialTypeInfo.java | 109 ---------- .../BackGestureTutorialTypeInfoProvider.java | 59 ------ .../interaction/EdgeBackGestureHandler.java | 8 +- .../interaction/GestureSandboxActivity.java | 21 +- .../interaction/TutorialController.java | 135 ++++++++++++ .../interaction/TutorialFragment.java | 153 ++++++++++++++ ...mation.java => TutorialHandAnimation.java} | 16 +- res/values/colors.xml | 10 +- 20 files changed, 429 insertions(+), 628 deletions(-) rename quickstep/res/drawable-v28/{back_gesture_tutorial_action_button_background.xml => gesture_tutorial_action_button_background.xml} (90%) rename quickstep/res/drawable/{back_gesture_tutorial_action_button_background.xml => gesture_tutorial_action_button_background.xml} (90%) rename quickstep/res/drawable/{back_gesture_tutorial_close_button.xml => gesture_tutorial_close_button.xml} (100%) rename quickstep/res/layout/{back_gesture_tutorial_activity.xml => gesture_tutorial_activity.xml} (87%) rename quickstep/res/layout/{back_gesture_tutorial_fragment.xml => gesture_tutorial_fragment.xml} (70%) delete mode 100644 quickstep/src/com/android/quickstep/interaction/BackGestureTutorialConfirmController.java delete mode 100644 quickstep/src/com/android/quickstep/interaction/BackGestureTutorialEngagedController.java delete mode 100644 quickstep/src/com/android/quickstep/interaction/BackGestureTutorialTypeInfo.java delete mode 100644 quickstep/src/com/android/quickstep/interaction/BackGestureTutorialTypeInfoProvider.java create mode 100644 quickstep/src/com/android/quickstep/interaction/TutorialController.java create mode 100644 quickstep/src/com/android/quickstep/interaction/TutorialFragment.java rename quickstep/src/com/android/quickstep/interaction/{BackGestureTutorialHandAnimation.java => TutorialHandAnimation.java} (85%) diff --git a/quickstep/res/drawable-v28/back_gesture_tutorial_action_button_background.xml b/quickstep/res/drawable-v28/gesture_tutorial_action_button_background.xml similarity index 90% rename from quickstep/res/drawable-v28/back_gesture_tutorial_action_button_background.xml rename to quickstep/res/drawable-v28/gesture_tutorial_action_button_background.xml index cd30ef7075..57423c2ffc 100644 --- a/quickstep/res/drawable-v28/back_gesture_tutorial_action_button_background.xml +++ b/quickstep/res/drawable-v28/gesture_tutorial_action_button_background.xml @@ -16,5 +16,5 @@ - + \ No newline at end of file diff --git a/quickstep/res/drawable/back_gesture_tutorial_action_button_background.xml b/quickstep/res/drawable/gesture_tutorial_action_button_background.xml similarity index 90% rename from quickstep/res/drawable/back_gesture_tutorial_action_button_background.xml rename to quickstep/res/drawable/gesture_tutorial_action_button_background.xml index d7b910273a..3f3b288e2d 100644 --- a/quickstep/res/drawable/back_gesture_tutorial_action_button_background.xml +++ b/quickstep/res/drawable/gesture_tutorial_action_button_background.xml @@ -16,5 +16,5 @@ - + \ No newline at end of file diff --git a/quickstep/res/drawable/back_gesture_tutorial_close_button.xml b/quickstep/res/drawable/gesture_tutorial_close_button.xml similarity index 100% rename from quickstep/res/drawable/back_gesture_tutorial_close_button.xml rename to quickstep/res/drawable/gesture_tutorial_close_button.xml diff --git a/quickstep/res/layout/back_gesture_tutorial_activity.xml b/quickstep/res/layout/gesture_tutorial_activity.xml similarity index 87% rename from quickstep/res/layout/back_gesture_tutorial_activity.xml rename to quickstep/res/layout/gesture_tutorial_activity.xml index e894e893c3..4dc8913ef5 100644 --- a/quickstep/res/layout/back_gesture_tutorial_activity.xml +++ b/quickstep/res/layout/gesture_tutorial_activity.xml @@ -14,6 +14,6 @@ limitations under the License. --> \ No newline at end of file diff --git a/quickstep/res/layout/back_gesture_tutorial_fragment.xml b/quickstep/res/layout/gesture_tutorial_fragment.xml similarity index 70% rename from quickstep/res/layout/back_gesture_tutorial_fragment.xml rename to quickstep/res/layout/gesture_tutorial_fragment.xml index d8c25bd4d0..0bc062af35 100644 --- a/quickstep/res/layout/back_gesture_tutorial_fragment.xml +++ b/quickstep/res/layout/gesture_tutorial_fragment.xml @@ -16,27 +16,27 @@ + android:background="@color/gesture_tutorial_background_color"> + android:accessibilityTraversalAfter="@id/gesture_tutorial_fragment_titles_container" + android:contentDescription="@string/gesture_tutorial_close_button_content_description" + android:src="@drawable/gesture_tutorial_close_button"/> @@ -91,21 +91,21 @@ android:layout_gravity="center_horizontal">