1<!-- 2 Copyright (C) 2020 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_constraintTop_toTopOf="parent" 56 app:layout_constraintBottom_toBottomOf="parent" 57 app:layout_constraintStart_toStartOf="parent" 58 app:layout_constraintEnd_toEndOf="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_constraintVertical_chainStyle="spread" 71 app:layout_constraintBottom_toTopOf="@id/bottom_task_view" 72 app:layout_constraintEnd_toEndOf="parent" 73 app:layout_constraintStart_toStartOf="parent" 74 app:layout_constraintTop_toTopOf="@id/full_task_view" /> 75 76 <View 77 android:id="@+id/bottom_task_view" 78 android:layout_width="match_parent" 79 android:layout_height="0dp" 80 android:background="@drawable/top_task_view" 81 android:clipToOutline="true" 82 android:visibility="invisible" 83 84 app:layout_constraintBottom_toBottomOf="@id/full_task_view" 85 app:layout_constraintEnd_toEndOf="parent" 86 app:layout_constraintStart_toStartOf="parent" 87 app:layout_constraintTop_toBottomOf="@id/top_task_view" /> 88 89 </com.android.quickstep.interaction.AnimatedTaskView> 90 91 <FrameLayout 92 android:id="@+id/gesture_tutorial_fake_task_view" 93 android:layout_width="match_parent" 94 android:layout_height="match_parent" 95 android:visibility="visible" /> 96 97 <View 98 android:id="@+id/gesture_tutorial_ripple_view" 99 android:layout_width="match_parent" 100 android:layout_height="match_parent" 101 android:background="@drawable/gesture_tutorial_ripple"/> 102 103 <include 104 layout="@layout/gesture_tutorial_tablet_mock_taskbar" 105 android:id="@+id/gesture_tutorial_fake_taskbar_view" 106 android:layout_width="wrap_content" 107 android:layout_height="wrap_content" 108 android:layout_alignParentBottom="true" 109 android:layout_centerHorizontal="true" 110 android:layout_marginBottom="@dimen/gesture_tutorial_taskbar_margin_bottom"/> 111 112 <ImageView 113 android:id="@+id/gesture_tutorial_edge_gesture_video" 114 android:layout_width="match_parent" 115 android:layout_height="match_parent" 116 android:layout_alignParentTop="true" 117 android:layout_alignParentBottom="true" 118 android:layout_alignParentStart="true" 119 android:layout_alignParentEnd="true" 120 android:scaleType="fitXY" 121 android:visibility="gone"/> 122 123 <androidx.constraintlayout.widget.ConstraintLayout 124 android:id="@+id/gesture_tutorial_fragment_feedback_view" 125 android:layout_width="match_parent" 126 android:layout_height="wrap_content" 127 android:layout_alignParentTop="true" 128 android:layout_centerHorizontal="true" 129 android:paddingTop="24dp" 130 android:paddingBottom="16dp" 131 android:paddingStart="24dp" 132 android:paddingEnd="24dp" 133 android:background="@drawable/bg_sandbox_feedback"> 134 135 <TextView 136 android:id="@+id/gesture_tutorial_fragment_feedback_title" 137 style="@style/TextAppearance.GestureTutorial.Feedback.Title" 138 android:layout_width="wrap_content" 139 android:layout_height="wrap_content" 140 141 app:layout_constraintStart_toStartOf="parent" 142 app:layout_constraintEnd_toEndOf="parent" 143 app:layout_constraintTop_toTopOf="parent"/> 144 145 <TextView 146 android:id="@+id/gesture_tutorial_fragment_feedback_subtitle" 147 style="@style/TextAppearance.GestureTutorial.Feedback.Subtitle" 148 android:layout_width="0dp" 149 android:layout_height="wrap_content" 150 android:layout_marginTop="16dp" 151 152 app:layout_constraintStart_toStartOf="parent" 153 app:layout_constraintEnd_toEndOf="parent" 154 app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_title"/> 155 156 <Button 157 android:id="@+id/gesture_tutorial_fragment_action_button" 158 style="@style/TextAppearance.GestureTutorial.ButtonLabel" 159 android:layout_width="wrap_content" 160 android:layout_height="wrap_content" 161 android:layout_marginTop="32dp" 162 android:paddingTop="16dp" 163 android:paddingBottom="16dp" 164 android:paddingStart="26dp" 165 android:paddingEnd="26dp" 166 android:text="@string/gesture_tutorial_action_button_label" 167 android:background="@drawable/gesture_tutorial_action_button_background" 168 android:backgroundTint="?android:attr/colorAccent" 169 android:stateListAnimator="@null" 170 android:visibility="invisible" 171 172 app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_subtitle" 173 app:layout_constraintEnd_toEndOf="parent"/> 174 175 <Button 176 style="@style/TextAppearance.GestureTutorial.Feedback.Subtext" 177 android:id="@+id/gesture_tutorial_fragment_close_button" 178 android:layout_width="wrap_content" 179 android:layout_height="wrap_content" 180 android:layout_marginTop="32dp" 181 android:paddingTop="16dp" 182 android:paddingBottom="16dp" 183 android:text="@string/gesture_tutorial_action_button_label_skip" 184 android:background="?android:attr/selectableItemBackgroundBorderless" 185 186 app:layout_constraintTop_toBottomOf="@id/gesture_tutorial_fragment_feedback_subtitle" 187 app:layout_constraintStart_toStartOf="parent"/> 188 189 </androidx.constraintlayout.widget.ConstraintLayout> 190 191 <ImageView 192 android:id="@+id/gesture_tutorial_finger_dot" 193 android:layout_width="wrap_content" 194 android:layout_height="wrap_content" 195 android:src="@drawable/gesture_tutorial_finger_dot" 196 android:layout_centerHorizontal="true" 197 android:layout_centerVertical="true" 198 android:visibility="gone"/> 199 200</com.android.quickstep.interaction.RootSandboxLayout>