• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<!--
2    Copyright (C) 2023 The Android Open Source Project
3
4    Licensed under the Apache License, Version 2.0 (the "License");
5    you may not use this file except in compliance with the License.
6    You may obtain a copy of the License at
7
8         http://www.apache.org/licenses/LICENSE-2.0
9
10    Unless required by applicable law or agreed to in writing, software
11    distributed under the License is distributed on an "AS IS" BASIS,
12    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13    See the License for the specific language governing permissions and
14    limitations under the License.
15-->
16<com.android.quickstep.interaction.RootSandboxLayout
17    xmlns:android="http://schemas.android.com/apk/res/android"
18    xmlns:app="http://schemas.android.com/apk/res-auto"
19    android:layout_width="match_parent"
20    android:layout_height="match_parent"
21    android:clipChildren="false">
22
23    <RelativeLayout
24        android:id="@+id/gesture_tutorial_fake_launcher_view"
25        android:layout_width="match_parent"
26        android:layout_height="match_parent">
27
28        <FrameLayout
29            android:id="@+id/gesture_tutorial_fake_hotseat_view"
30            android:layout_width="@dimen/gesture_tutorial_hotseat_width"
31            android:layout_height="@dimen/gesture_tutorial_hotseat_height" />
32
33    </RelativeLayout>
34
35    <com.android.launcher3.views.ClipIconView
36        android:id="@+id/gesture_tutorial_fake_icon_view"
37        android:layout_width="20dp"
38        android:layout_height="20dp"
39        android:visibility="invisible" />
40
41    <com.android.quickstep.interaction.AnimatedTaskView
42        android:id="@+id/gesture_tutorial_fake_previous_task_view"
43        android:layout_width="match_parent"
44        android:layout_height="match_parent"
45        android:scaleX="0.98"
46        android:scaleY="0.98"
47        android:visibility="invisible">
48
49        <View
50            android:id="@+id/full_task_view"
51            android:layout_width="match_parent"
52            android:layout_height="match_parent"
53            android:visibility="invisible"
54
55            app:layout_constraintBottom_toBottomOf="parent"
56            app:layout_constraintEnd_toEndOf="parent"
57            app:layout_constraintStart_toStartOf="parent"
58            app:layout_constraintTop_toTopOf="parent" />
59
60
61        <View
62            android:id="@+id/top_task_view"
63            android:layout_width="match_parent"
64            android:layout_height="0dp"
65            android:layout_marginBottom="@dimen/gesture_tutorial_multi_row_task_view_spacing"
66            android:background="@drawable/top_task_view"
67            android:clipToOutline="true"
68            android:visibility="invisible"
69
70            app:layout_constraintBottom_toTopOf="@id/bottom_task_view"
71            app:layout_constraintEnd_toEndOf="parent"
72            app:layout_constraintStart_toStartOf="parent"
73            app:layout_constraintTop_toTopOf="@id/full_task_view" />
74
75        <View
76            android:id="@+id/bottom_task_view"
77            android:layout_width="match_parent"
78            android:layout_height="0dp"
79            android:background="@drawable/top_task_view"
80            android:clipToOutline="true"
81            android:visibility="invisible"
82
83            app:layout_constraintBottom_toBottomOf="@id/full_task_view"
84            app:layout_constraintEnd_toEndOf="parent"
85            app:layout_constraintStart_toStartOf="parent"
86            app:layout_constraintTop_toBottomOf="@id/top_task_view" />
87
88    </com.android.quickstep.interaction.AnimatedTaskView>
89
90    <FrameLayout
91        android:id="@+id/gesture_tutorial_fake_task_view"
92        android:layout_width="match_parent"
93        android:layout_height="match_parent" />
94
95    <View
96        android:id="@+id/gesture_tutorial_ripple_view"
97        android:layout_width="match_parent"
98        android:layout_height="match_parent"
99        android:background="@drawable/gesture_tutorial_ripple" />
100
101    <include
102        android:id="@+id/gesture_tutorial_fake_taskbar_view"
103        layout="@layout/gesture_tutorial_tablet_mock_taskbar"
104        android:layout_width="wrap_content"
105        android:layout_height="wrap_content"
106        android:layout_alignParentBottom="true"
107        android:layout_centerHorizontal="true"
108        android:layout_marginBottom="@dimen/gesture_tutorial_taskbar_margin_bottom" />
109
110    <ImageView
111        android:id="@+id/gesture_tutorial_edge_gesture_video"
112        android:layout_width="match_parent"
113        android:layout_height="match_parent"
114        android:layout_alignParentBottom="true"
115        android:layout_alignParentEnd="true"
116        android:layout_alignParentStart="true"
117        android:layout_alignParentTop="true"
118        android:scaleType="fitXY"
119        android:visibility="gone" />
120
121    <View
122        android:id="@+id/exiting_app_back"
123        android:layout_width="match_parent"
124        android:layout_height="match_parent"
125        android:layout_centerVertical="true"
126        android:background="@color/gesture_back_tutorial_exiting_app"
127        android:visibility="gone" />
128
129    <RelativeLayout
130        android:id="@+id/full_gesture_demonstration"
131        android:layout_width="match_parent"
132        android:layout_height="match_parent">
133
134        <com.airbnb.lottie.LottieAnimationView
135            android:id="@+id/gesture_demonstration_animations"
136            android:layout_width="match_parent"
137            android:layout_height="match_parent"
138            android:gravity="center"
139            android:scaleType="centerCrop"
140            app:lottie_loop="true" />
141
142    </RelativeLayout>
143
144    <androidx.constraintlayout.widget.ConstraintLayout
145        android:id="@+id/gesture_tutorial_fragment_feedback_view"
146        android:layout_width="match_parent"
147        android:layout_height="wrap_content"
148        android:layout_alignParentTop="true"
149        android:layout_centerHorizontal="true"
150        android:background="@android:color/transparent"
151        android:paddingEnd="24dp"
152        android:paddingStart="24dp"
153        android:paddingTop="24dp">
154
155        <TextView
156            android:id="@+id/gesture_tutorial_fragment_feedback_title"
157            android:layout_width="wrap_content"
158            android:layout_height="wrap_content"
159            android:layout_marginTop="104dp"
160            android:accessibilityHeading="true"
161            android:gravity="top"
162            android:lineSpacingExtra="-1sp"
163            android:textAppearance="@style/TextAppearance.GestureTutorial.MainTitle"
164            app:layout_constraintStart_toStartOf="parent"
165            app:layout_constraintTop_toTopOf="parent" />
166
167        <TextView
168            android:id="@+id/gesture_tutorial_fragment_feedback_subtitle"
169            android:layout_width="wrap_content"
170            android:layout_height="wrap_content"
171            android:layout_marginStart="1dp"
172            android:layout_marginTop="24dp"
173            android:lineSpacingExtra="4sp"
174            android:textAppearance="@style/TextAppearance.GestureTutorial.MainSubtitle"
175
176            app:layout_constraintStart_toStartOf="parent"
177            app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_title" />
178
179        <com.android.quickstep.interaction.TutorialStepIndicator
180            android:id="@+id/gesture_tutorial_fragment_feedback_tutorial_step"
181            android:layout_width="wrap_content"
182            android:layout_height="wrap_content"
183
184            app:layout_constraintBottom_toBottomOf="@id/gesture_tutorial_fragment_action_button"
185            app:layout_constraintEnd_toEndOf="parent"
186            app:layout_constraintStart_toStartOf="parent"
187            app:layout_constraintTop_toTopOf="parent" />
188
189        <Button
190            android:id="@+id/gesture_tutorial_fragment_close_button"
191            style="@style/TextAppearance.GestureTutorial.Feedback.Subtext"
192            android:layout_width="wrap_content"
193            android:layout_height="wrap_content"
194            android:layout_marginTop="32dp"
195            android:background="?android:attr/selectableItemBackgroundBorderless"
196            android:paddingBottom="16dp"
197            android:paddingTop="16dp"
198            android:text="@string/gesture_tutorial_action_button_label_skip"
199            android:visibility="gone"
200
201            app:layout_constraintStart_toStartOf="parent"
202            app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_subtitle" />
203
204        <com.airbnb.lottie.LottieAnimationView
205            android:id="@+id/checkmark_animation"
206            android:layout_width="wrap_content"
207            android:layout_height="wrap_content"
208            android:gravity="center"
209            android:scaleType="centerCrop"
210            app:lottie_loop="false"
211            android:visibility="gone"
212
213            app:layout_constraintBottom_toBottomOf="parent"
214            app:layout_constraintEnd_toEndOf="parent"
215            app:layout_constraintStart_toStartOf="parent"
216            app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_subtitle" />
217
218        <Button
219            android:id="@+id/gesture_tutorial_fragment_action_button"
220            style="@style/TextAppearance.GestureTutorial.ButtonLabel"
221            android:layout_width="wrap_content"
222            android:layout_height="wrap_content"
223            android:background="@drawable/gesture_tutorial_action_button_background"
224            android:stateListAnimator="@null"
225            android:text="@string/gesture_tutorial_action_button_label"
226            android:visibility="invisible"
227            app:layout_constraintEnd_toEndOf="parent"
228            app:layout_constraintStart_toStartOf="parent"
229            app:layout_constraintBottom_toBottomOf="parent"
230            app:layout_constraintTop_toBottomOf="@id/checkmark_animation" />
231
232    </androidx.constraintlayout.widget.ConstraintLayout>
233
234    <ImageView
235        android:id="@+id/gesture_tutorial_finger_dot"
236        android:layout_width="wrap_content"
237        android:layout_height="wrap_content"
238        android:layout_centerInParent="true"
239        android:src="@drawable/gesture_tutorial_finger_dot"
240        android:visibility="gone" />
241
242</com.android.quickstep.interaction.RootSandboxLayout>