summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/res/values/strings.xml2
-rw-r--r--packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/TouchpadTutorialScreensProvider.kt6
-rw-r--r--packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/ActionTutorialContent.kt1
-rw-r--r--packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialComponents.kt6
-rw-r--r--packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialScreenConfig.kt1
-rw-r--r--packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/view/KeyboardTouchpadTutorialActivity.kt32
-rw-r--r--packages/SystemUI/src/com/android/systemui/touchpad/tutorial/TouchpadTutorialModule.kt14
-rw-r--r--packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/BackGestureTutorialScreen.kt2
-rw-r--r--packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/HomeGestureTutorialScreen.kt2
9 files changed, 56 insertions, 10 deletions
diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml
index 86292039d93d..b1f92493ccca 100644
--- a/packages/SystemUI/res/values/strings.xml
+++ b/packages/SystemUI/res/values/strings.xml
@@ -4001,6 +4001,8 @@
<string name="touchpad_tutorial_switch_apps_gesture_button">Switch apps</string>
<!-- Label for button finishing touchpad tutorial [CHAR LIMIT=NONE] -->
<string name="touchpad_tutorial_done_button">Done</string>
+ <!-- Label for button proceeding touchpad tutorial [CHAR LIMIT=NONE] -->
+ <string name="touchpad_tutorial_next_button">Next</string>
<!-- Screen title after gesture was not done correctly [CHAR LIMIT=NONE] -->
<string name="gesture_error_title">Try again!</string>
<!-- BACK GESTURE -->
diff --git a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/TouchpadTutorialScreensProvider.kt b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/TouchpadTutorialScreensProvider.kt
index bd3e771f40bc..7d2492a41e82 100644
--- a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/TouchpadTutorialScreensProvider.kt
+++ b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/TouchpadTutorialScreensProvider.kt
@@ -20,7 +20,9 @@ import androidx.compose.runtime.Composable
interface TouchpadTutorialScreensProvider {
- @Composable fun BackGesture(onDoneButtonClicked: () -> Unit, onBack: () -> Unit)
+ @Composable
+ fun BackGesture(onDoneButtonClicked: () -> Unit, onBack: () -> Unit, isAutoProceed: Boolean)
- @Composable fun HomeGesture(onDoneButtonClicked: () -> Unit, onBack: () -> Unit)
+ @Composable
+ fun HomeGesture(onDoneButtonClicked: () -> Unit, onBack: () -> Unit, isAutoProceed: Boolean)
}
diff --git a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/ActionTutorialContent.kt b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/ActionTutorialContent.kt
index 8cbcba2c3b1c..ee875c484ca6 100644
--- a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/ActionTutorialContent.kt
+++ b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/ActionTutorialContent.kt
@@ -137,6 +137,7 @@ fun ActionTutorialContent(
onDoneButtonClicked = onDoneButtonClicked,
modifier = Modifier.padding(horizontal = 60.dp).graphicsLayer { alpha = buttonAlpha },
enabled = actionState is Finished,
+ isNext = config.hasNextButton,
)
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialComponents.kt b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialComponents.kt
index 202dba357d45..d92e48e18801 100644
--- a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialComponents.kt
+++ b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialComponents.kt
@@ -32,6 +32,7 @@ fun DoneButton(
onDoneButtonClicked: () -> Unit,
modifier: Modifier = Modifier,
enabled: Boolean = true,
+ isNext: Boolean = false,
) {
Row(
horizontalArrangement = Arrangement.End,
@@ -39,7 +40,10 @@ fun DoneButton(
modifier = modifier.fillMaxWidth(),
) {
Button(onClick = onDoneButtonClicked, enabled = enabled) {
- Text(stringResource(R.string.touchpad_tutorial_done_button))
+ val text =
+ if (isNext) R.string.touchpad_tutorial_next_button
+ else R.string.touchpad_tutorial_done_button
+ Text(stringResource(text))
}
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialScreenConfig.kt b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialScreenConfig.kt
index eda23a51a1ae..65adc148b6ae 100644
--- a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialScreenConfig.kt
+++ b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/composable/TutorialScreenConfig.kt
@@ -28,6 +28,7 @@ data class TutorialScreenConfig(
val colors: Colors,
val strings: Strings,
val animations: Animations,
+ val hasNextButton: Boolean = false,
) {
data class Colors(
diff --git a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/view/KeyboardTouchpadTutorialActivity.kt b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/view/KeyboardTouchpadTutorialActivity.kt
index 639e9b1805be..086705fbd7ba 100644
--- a/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/view/KeyboardTouchpadTutorialActivity.kt
+++ b/packages/SystemUI/src/com/android/systemui/inputdevice/tutorial/ui/view/KeyboardTouchpadTutorialActivity.kt
@@ -93,17 +93,29 @@ constructor(
}
}
}
+ val entryPointExtra = intent.getStringExtra(INTENT_TUTORIAL_ENTRY_POINT_KEY)
+ val isAutoProceed =
+ if (entryPointExtra == null) true
+ else entryPointExtra.equals(INTENT_TUTORIAL_ENTRY_POINT_SCHEDULER)
+ val scopeExtra = intent.getStringExtra(INTENT_TUTORIAL_SCOPE_KEY)
+ val isScopeAll = INTENT_TUTORIAL_SCOPE_ALL.equals(scopeExtra)
setContent {
- PlatformTheme { KeyboardTouchpadTutorialContainer(vm, touchpadTutorialScreensProvider) }
+ PlatformTheme {
+ KeyboardTouchpadTutorialContainer(
+ vm,
+ touchpadTutorialScreensProvider,
+ isAutoProceed,
+ isScopeAll,
+ )
+ }
}
if (savedInstanceState == null) {
logger.logOpenTutorial(TutorialContext.KEYBOARD_TOUCHPAD_TUTORIAL)
- val entryPointExtra = intent.getStringExtra(INTENT_TUTORIAL_ENTRY_POINT_KEY)
val tutorialTypeExtra = intent.getStringExtra(INTENT_TUTORIAL_SCOPE_KEY)
metricsLogger.logPeripheralTutorialLaunched(entryPointExtra, tutorialTypeExtra)
// We only update launched info when the tutorial is triggered by the scheduler
- if (entryPointExtra.equals(INTENT_TUTORIAL_ENTRY_POINT_SCHEDULER))
+ if (INTENT_TUTORIAL_ENTRY_POINT_SCHEDULER.equals(entryPointExtra))
updateLaunchInfo(tutorialTypeExtra)
}
}
@@ -124,17 +136,27 @@ constructor(
fun KeyboardTouchpadTutorialContainer(
vm: KeyboardTouchpadTutorialViewModel,
touchpadScreens: Optional<TouchpadTutorialScreensProvider>,
+ isAutoProceed: Boolean = false,
+ isScopeAll: Boolean = false,
) {
val activeScreen by vm.screen.collectAsStateWithLifecycle(STARTED)
when (activeScreen) {
BACK_GESTURE ->
touchpadScreens
.get()
- .BackGesture(onDoneButtonClicked = vm::onDoneButtonClicked, onBack = vm::onBack)
+ .BackGesture(
+ onDoneButtonClicked = vm::onDoneButtonClicked,
+ onBack = vm::onBack,
+ isAutoProceed = isAutoProceed,
+ )
HOME_GESTURE ->
touchpadScreens
.get()
- .HomeGesture(onDoneButtonClicked = vm::onDoneButtonClicked, onBack = vm::onBack)
+ .HomeGesture(
+ onDoneButtonClicked = vm::onDoneButtonClicked,
+ onBack = vm::onBack,
+ isAutoProceed = isScopeAll,
+ )
ACTION_KEY ->
ActionKeyTutorialScreen(
onDoneButtonClicked = vm::onDoneButtonClicked,
diff --git a/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/TouchpadTutorialModule.kt b/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/TouchpadTutorialModule.kt
index a2125c8f0955..d8a9527b22ab 100644
--- a/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/TouchpadTutorialModule.kt
+++ b/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/TouchpadTutorialModule.kt
@@ -130,22 +130,32 @@ private class ScreensProvider(
val easterEggGestureViewModel: EasterEggGestureViewModel,
) : TouchpadTutorialScreensProvider {
@Composable
- override fun BackGesture(onDoneButtonClicked: () -> Unit, onBack: () -> Unit) {
+ override fun BackGesture(
+ onDoneButtonClicked: () -> Unit,
+ onBack: () -> Unit,
+ isAutoProceed: Boolean,
+ ) {
BackGestureTutorialScreen(
backGestureScreenViewModel,
easterEggGestureViewModel,
onDoneButtonClicked,
onBack,
+ isAutoProceed,
)
}
@Composable
- override fun HomeGesture(onDoneButtonClicked: () -> Unit, onBack: () -> Unit) {
+ override fun HomeGesture(
+ onDoneButtonClicked: () -> Unit,
+ onBack: () -> Unit,
+ isAutoProceed: Boolean,
+ ) {
HomeGestureTutorialScreen(
homeGestureScreenViewModel,
easterEggGestureViewModel,
onDoneButtonClicked,
onBack,
+ isAutoProceed,
)
}
}
diff --git a/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/BackGestureTutorialScreen.kt b/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/BackGestureTutorialScreen.kt
index bce55cbdcc4a..c28483c55952 100644
--- a/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/BackGestureTutorialScreen.kt
+++ b/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/BackGestureTutorialScreen.kt
@@ -33,6 +33,7 @@ fun BackGestureTutorialScreen(
easterEggGestureViewModel: EasterEggGestureViewModel,
onDoneButtonClicked: () -> Unit,
onBack: () -> Unit,
+ isAutoProceed: Boolean = false,
) {
val screenConfig =
TutorialScreenConfig(
@@ -47,6 +48,7 @@ fun BackGestureTutorialScreen(
bodyErrorResId = R.string.touchpad_back_gesture_error_body,
),
animations = TutorialScreenConfig.Animations(educationResId = R.raw.trackpad_back_edu),
+ hasNextButton = isAutoProceed,
)
GestureTutorialScreen(
screenConfig = screenConfig,
diff --git a/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/HomeGestureTutorialScreen.kt b/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/HomeGestureTutorialScreen.kt
index 4acdb6070200..b238a8db31f8 100644
--- a/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/HomeGestureTutorialScreen.kt
+++ b/packages/SystemUI/src/com/android/systemui/touchpad/tutorial/ui/composable/HomeGestureTutorialScreen.kt
@@ -32,6 +32,7 @@ fun HomeGestureTutorialScreen(
easterEggGestureViewModel: EasterEggGestureViewModel,
onDoneButtonClicked: () -> Unit,
onBack: () -> Unit,
+ isAutoProceed: Boolean = false,
) {
val screenConfig =
TutorialScreenConfig(
@@ -46,6 +47,7 @@ fun HomeGestureTutorialScreen(
bodyErrorResId = R.string.touchpad_home_gesture_error_body,
),
animations = TutorialScreenConfig.Animations(educationResId = R.raw.trackpad_home_edu),
+ hasNextButton = isAutoProceed,
)
GestureTutorialScreen(
screenConfig = screenConfig,