Merge "Prevent thumbnails from shifting if placeholder view doesn't overlap" into sc-dev
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 1fad72d..8066816 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -49,7 +49,7 @@
android:stateNotNeeded="true"
android:windowSoftInputMode="adjustPan"
android:screenOrientation="unspecified"
- android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout"
+ android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize|density"
android:resizeableActivity="true"
android:resumeWhilePausing="true"
android:taskAffinity=""
diff --git a/go/AndroidManifest-launcher.xml b/go/AndroidManifest-launcher.xml
index d2575b6..6a8f715 100644
--- a/go/AndroidManifest-launcher.xml
+++ b/go/AndroidManifest-launcher.xml
@@ -49,7 +49,7 @@
android:stateNotNeeded="true"
android:windowSoftInputMode="adjustPan"
android:screenOrientation="unspecified"
- android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|uiMode"
+ android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize|density|uiMode"
android:resizeableActivity="true"
android:resumeWhilePausing="true"
android:taskAffinity=""
diff --git a/go/quickstep/res/drawable/ic_listen.xml b/go/quickstep/res/drawable/ic_listen.xml
index a8e6c93..16bb597 100644
--- a/go/quickstep/res/drawable/ic_listen.xml
+++ b/go/quickstep/res/drawable/ic_listen.xml
@@ -13,20 +13,12 @@
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="28dp"
- android:height="28dp"
- android:viewportWidth="28"
- android:viewportHeight="28">
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24"
+ android:tint="?attr/colorControlNormal">
<path
- android:pathData="M10.5,15.17c2.58,0 4.67,-2.09 4.67,-4.67s-2.09,-4.67 -4.67,-4.67c-2.58,0 -4.67,2.09 -4.67,4.67S7.92,15.17 10.5,15.17zM10.5,8.17c1.28,0 2.33,1.05 2.33,2.33s-1.05,2.33 -2.33,2.33c-1.28,0 -2.33,-1.05 -2.33,-2.33S9.22,8.17 10.5,8.17z"
- android:fillColor="#4285F4"/>
- <path
- android:pathData="M10.5,17.5c-3.11,0 -9.33,1.56 -9.33,4.67v2.33h18.67v-2.33C19.83,19.06 13.62,17.5 10.5,17.5zM3.5,22.17c0.26,-0.84 3.86,-2.33 7,-2.33c3.15,0 6.77,1.5 7,2.33H3.5z"
- android:fillColor="#4285F4"/>
- <path
- android:pathData="M25.67,10.5c0,0.36 -0.02,0.71 -0.05,1.05c-0.01,0.15 -0.03,0.29 -0.05,0.43c-0.02,0.18 -0.05,0.36 -0.08,0.54c-0.04,0.2 -0.07,0.39 -0.12,0.58c-0.01,0.06 -0.03,0.11 -0.04,0.17c-0.59,2.34 -1.81,4.01 -2.52,4.82c-0.09,0.1 -0.18,0.2 -0.28,0.3c-0.17,0.18 -0.27,0.27 -0.27,0.27l-1.65,-1.63c1.34,-1.33 2.27,-3.07 2.6,-5.01c0.01,-0.08 0.02,-0.16 0.04,-0.24c0.06,-0.42 0.1,-0.85 0.1,-1.29c0,-0.44 -0.04,-0.88 -0.1,-1.3c-0.01,-0.06 -0.02,-0.13 -0.03,-0.19c-0.32,-1.95 -1.25,-3.7 -2.6,-5.04l1.65,-1.63c0,0 0.11,0.1 0.27,0.27c0.09,0.1 0.19,0.2 0.28,0.3c0.71,0.82 1.93,2.48 2.52,4.82c0.01,0.06 0.03,0.11 0.04,0.17c0.04,0.19 0.08,0.38 0.12,0.58c0.03,0.18 0.06,0.36 0.08,0.54c0.02,0.14 0.04,0.28 0.05,0.43C25.65,9.79 25.67,10.14 25.67,10.5z"
- android:fillColor="#EA4335"/>
- <path
- android:pathData="M20.61,8.4C20.85,9.06 21,9.76 21,10.5s-0.15,1.44 -0.39,2.1c-0.28,0.77 -0.71,1.46 -1.25,2.05l-1.66,-1.64c0.56,-0.63 0.91,-1.44 0.95,-2.34c0,-0.06 0.02,-0.11 0.02,-0.17s-0.01,-0.11 -0.02,-0.17c-0.04,-0.9 -0.39,-1.71 -0.95,-2.34l1.66,-1.64C19.9,6.94 20.32,7.63 20.61,8.4z"
- android:fillColor="#FBBC04"/>
+ android:fillColor="@android:color/white"
+ android:pathData="M15.08,7.05c0.84,1.18 0.84,2.71 0,3.89l1.68,1.69c2.02,-2.02 2.02,-5.07 0,-7.27l-1.68,1.69zM20.07,2l-1.63,1.63c2.77,3.02 2.77,7.56 0,10.74L20.07,16c3.9,-3.89 3.91,-9.95 0,-14zM9,13c2.21,0 4,-1.79 4,-4s-1.79,-4 -4,-4 -4,1.79 -4,4 1.79,4 4,4zM9,7c1.1,0 2,0.9 2,2s-0.9,2 -2,2 -2,-0.9 -2,-2 0.9,-2 2,-2zM9,14c-2.67,0 -8,1.34 -8,4v3h16v-3c0,-2.66 -5.33,-4 -8,-4zM15,19L3,19v-0.99C3.2,17.29 6.3,16 9,16s5.8,1.29 6,2v1z"/>
</vector>
diff --git a/go/quickstep/res/drawable/ic_search.xml b/go/quickstep/res/drawable/ic_search.xml
index 4307330..ce290d9 100644
--- a/go/quickstep/res/drawable/ic_search.xml
+++ b/go/quickstep/res/drawable/ic_search.xml
@@ -13,20 +13,24 @@
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="28dp"
- android:height="28dp"
- android:viewportWidth="28"
- android:viewportHeight="28">
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24"
+ android:tint="?attr/colorControlNormal">
<path
- android:pathData="M24.5,22.75l-6.84,-6.84c1,-1.35 1.59,-3.02 1.59,-4.83h-2.33c0,3.22 -2.62,5.83 -5.83,5.83v2.33c1.81,0 3.47,-0.6 4.83,-1.59l6.84,6.84L24.5,22.75z"
- android:fillColor="#4285F4"/>
+ android:fillColor="@android:color/white"
+ android:pathData="M16,3h-2v2h2c1.65,0 3,1.35 3,3v2h2V8C21,5.24 18.76,3 16,3z"/>
<path
- android:pathData="M11.08,2.92v2.33c3.22,0 5.83,2.62 5.83,5.83h2.33C19.25,6.57 15.59,2.92 11.08,2.92z"
- android:fillColor="#34A853"/>
+ android:fillColor="@android:color/white"
+ android:pathData="M5,16v-2H3v2c0,2.76 2.24,5 5,5h2v-2H8C6.35,19 5,17.65 5,16z"/>
<path
- android:pathData="M5.25,11.08H2.92c0,4.51 3.66,8.17 8.17,8.17v-2.33C7.87,16.92 5.25,14.3 5.25,11.08z"
- android:fillColor="#EA4335"/>
+ android:fillColor="@android:color/white"
+ android:pathData="M12,8.5c-1.93,0 -3.5,1.57 -3.5,3.5s1.57,3.5 3.5,3.5s3.5,-1.57 3.5,-3.5S13.93,8.5 12,8.5z"/>
<path
- android:pathData="M2.92,11.08h2.33c0,-3.22 2.62,-5.83 5.83,-5.83V2.92C6.57,2.92 2.92,6.57 2.92,11.08z"
- android:fillColor="#FBBC04"/>
+ android:fillColor="@android:color/white"
+ android:pathData="M18,18m-2,0a2,2 0,1 1,4 0a2,2 0,1 1,-4 0"/>
+ <path
+ android:fillColor="@android:color/white"
+ android:pathData="M5,8c0,-1.65 1.35,-3 3,-3h2V3H8C5.24,3 3,5.24 3,8v2h2V8z"/>
</vector>
diff --git a/go/quickstep/res/drawable/ic_translate.xml b/go/quickstep/res/drawable/ic_translate.xml
index 1247807..e3df56f 100644
--- a/go/quickstep/res/drawable/ic_translate.xml
+++ b/go/quickstep/res/drawable/ic_translate.xml
@@ -13,20 +13,12 @@
limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="28dp"
- android:height="28dp"
- android:viewportWidth="28"
- android:viewportHeight="28">
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24"
+ android:tint="?attr/colorControlNormal">
<path
- android:pathData="M12.28,15.19l-0.07,-0.05c-0.61,-0.49 -1.15,-1.05 -1.65,-1.63c-1.05,-1.22 -1.88,-2.63 -2.39,-4.17H5.83c0.54,2.17 1.58,4.16 3.01,5.85l-5.93,5.23l1.75,1.75l5.91,-5.26c0.05,0.04 0.1,0.09 0.15,0.13l3.42,2.79l1.02,-2.33L12.28,15.19z"
- android:fillColor="#FBBC04"/>
- <path
- android:pathData="M21.58,11.67h-2.33l-5.25,14h2.33l1.31,-3.5h5.54l1.32,3.5h2.33L21.58,11.67zM18.53,19.83l1.89,-5.05l1.89,5.05H18.53z"
- android:fillColor="#4285F4"/>
- <path
- android:pathData="M11.67,2.33l-2.34,0l0,2.34l-8.16,0l0,2.33l10.5,0l0,-2.33z"
- android:fillColor="#EA4335"/>
- <path
- android:pathData="M11.67,4.67V7H14c-0.61,2.42 -1.79,4.65 -3.44,6.5c0.5,0.59 1.04,1.15 1.65,1.63l0.07,0.05c2.03,-2.32 3.44,-5.14 4.05,-8.19h3.5V4.67H11.67z"
- android:fillColor="#34A853"/>
+ android:fillColor="@android:color/white"
+ android:pathData="M12.87,15.07l-2.54,-2.51 0.03,-0.03c1.74,-1.94 2.98,-4.17 3.71,-6.53L17,6L17,4h-7L10,2L8,2v2L1,4v1.99h11.17C11.5,7.92 10.44,9.75 9,11.35 8.07,10.32 7.3,9.19 6.69,8h-2c0.73,1.63 1.73,3.17 2.98,4.56l-5.09,5.02L4,19l5,-5 3.11,3.11 0.76,-2.04zM18.5,10h-2L12,22h2l1.12,-3h4.75L21,22h2l-4.5,-12zM15.88,17l1.62,-4.33L19.12,17h-3.24z"/>
</vector>
diff --git a/res/drawable/single_item_secondary.xml b/go/quickstep/res/drawable/round_rect_button.xml
similarity index 76%
rename from res/drawable/single_item_secondary.xml
rename to go/quickstep/res/drawable/round_rect_button.xml
index 4edc481..b276686 100644
--- a/res/drawable/single_item_secondary.xml
+++ b/go/quickstep/res/drawable/round_rect_button.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 The Android Open Source Project
+<!--
+ Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -14,7 +15,6 @@
limitations under the License.
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
- android:shape="rectangle">
- <solid android:color="?attr/popupColorSecondary"/>
- <corners android:radius="@dimen/popup_single_item_radius" />
-</shape>
\ No newline at end of file
+ android:shape="rectangle">
+ <corners android:radius="@dimen/go_button_corner_radius" />
+</shape>
diff --git a/go/quickstep/res/layout/overview_actions_container.xml b/go/quickstep/res/layout/overview_actions_container.xml
index 4aa7774..6a331ea 100644
--- a/go/quickstep/res/layout/overview_actions_container.xml
+++ b/go/quickstep/res/layout/overview_actions_container.xml
@@ -25,7 +25,7 @@
android:id="@+id/action_buttons"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_gravity="center"
+ android:layout_gravity="top|center_horizontal"
android:orientation="horizontal">
<Space
@@ -33,62 +33,75 @@
android:layout_height="1dp"
android:layout_weight="1" />
- <Button
- android:id="@+id/action_translate"
- style="@style/GoOverviewActionButton"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:drawableTop="@drawable/ic_translate"
- android:drawablePadding="1dp"
- android:text="@string/action_translate"
- android:theme="@style/ThemeControlHighlightWorkspaceColor" />
+ <LinearLayout
+ style="@style/GoOverviewActionButtonContainer">
+ <ImageButton
+ android:id="@+id/action_translate"
+ style="@style/GoOverviewActionButton"
+ android:src="@drawable/ic_translate"
+ android:contentDescription="@string/action_translate" />
+ <TextView
+ style="@style/GoOverviewActionButtonCaption"
+ android:text="@string/action_translate" />
+ </LinearLayout>
<Space
android:layout_width="0dp"
android:layout_height="1dp"
android:layout_weight="1" />
- <Button
- android:id="@+id/action_listen"
- style="@style/GoOverviewActionButton"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:drawableTop="@drawable/ic_listen"
- android:drawablePadding="1dp"
- android:text="@string/action_listen"
- android:theme="@style/ThemeControlHighlightWorkspaceColor" />
+ <LinearLayout
+ style="@style/GoOverviewActionButtonContainer">
+ <ImageButton
+ android:id="@+id/action_listen"
+ style="@style/GoOverviewActionButton"
+ android:src="@drawable/ic_listen"
+ android:contentDescription="@string/action_listen"
+ android:background="@drawable/round_rect_button" />
+ <TextView
+ style="@style/GoOverviewActionButtonCaption"
+ android:text="@string/action_listen" />
+ </LinearLayout>
<Space
android:layout_width="0dp"
android:layout_height="1dp"
android:layout_weight="1" />
- <Button
- android:id="@+id/action_screenshot"
- style="@style/GoOverviewActionButton"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:drawableTop="@drawable/ic_screenshot"
- android:drawablePadding="1dp"
- android:text="@string/action_screenshot"
- android:theme="@style/ThemeControlHighlightWorkspaceColor" />
+ <LinearLayout
+ style="@style/GoOverviewActionButtonContainer">
+ <ImageButton
+ android:id="@+id/action_screenshot"
+ style="@style/GoOverviewActionButton"
+ android:src="@drawable/ic_screenshot"
+ android:contentDescription="@string/action_screenshot"
+ android:background="@drawable/round_rect_button" />
+ <TextView
+ style="@style/GoOverviewActionButtonCaption"
+ android:text="@string/action_screenshot" />
+ </LinearLayout>
<Space
android:layout_width="0dp"
android:layout_height="1dp"
android:layout_weight="1" />
- <Button
- android:id="@+id/action_search"
- style="@style/GoOverviewActionButton"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:drawableTop="@drawable/ic_search"
- android:drawablePadding="1dp"
- android:text="@string/action_search"
- android:theme="@style/ThemeControlHighlightWorkspaceColor"
- android:visibility="gone" />
+ <!-- Will be enabled in a future version. -->
+ <LinearLayout
+ style="@style/GoOverviewActionButtonContainer"
+ android:visibility="gone" >
+ <ImageButton
+ android:id="@+id/action_search"
+ style="@style/GoOverviewActionButton"
+ android:src="@drawable/ic_search"
+ android:contentDescription="@string/action_search"
+ android:background="@drawable/round_rect_button" />
+ <TextView
+ style="@style/GoOverviewActionButtonCaption"
+ android:text="@string/action_search" />
+ </LinearLayout>
+ <!-- Unused. Included only for compatibility with parent class. -->
<Button
android:id="@+id/action_share"
style="@style/GoOverviewActionButton"
@@ -98,13 +111,6 @@
android:text="@string/action_share"
android:theme="@style/ThemeControlHighlightWorkspaceColor"
android:visibility="gone" />
-
- <Space
- android:id="@+id/oav_three_button_space"
- android:layout_width="0dp"
- android:layout_height="1dp"
- android:layout_weight="1"
- android:visibility="gone" />
</LinearLayout>
</com.android.quickstep.views.GoOverviewActionsView>
\ No newline at end of file
diff --git a/go/quickstep/res/values-af/strings.xml b/go/quickstep/res/values-af/strings.xml
new file mode 100644
index 0000000..8570531
--- /dev/null
+++ b/go/quickstep/res/values-af/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Deel program"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Luister"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Vertaal"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-da/strings.xml b/go/quickstep/res/values-da/strings.xml
new file mode 100644
index 0000000..46648ce
--- /dev/null
+++ b/go/quickstep/res/values-da/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Del app"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Lyt"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Oversæt"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-en-rAU/strings.xml b/go/quickstep/res/values-en-rAU/strings.xml
new file mode 100644
index 0000000..3a609b6
--- /dev/null
+++ b/go/quickstep/res/values-en-rAU/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Share app"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Listen"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Translate"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-en-rCA/strings.xml b/go/quickstep/res/values-en-rCA/strings.xml
new file mode 100644
index 0000000..3a609b6
--- /dev/null
+++ b/go/quickstep/res/values-en-rCA/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Share app"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Listen"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Translate"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-en-rGB/strings.xml b/go/quickstep/res/values-en-rGB/strings.xml
new file mode 100644
index 0000000..3a609b6
--- /dev/null
+++ b/go/quickstep/res/values-en-rGB/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Share app"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Listen"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Translate"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-en-rIN/strings.xml b/go/quickstep/res/values-en-rIN/strings.xml
new file mode 100644
index 0000000..3a609b6
--- /dev/null
+++ b/go/quickstep/res/values-en-rIN/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Share app"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Listen"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Translate"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-en-rXC/strings.xml b/go/quickstep/res/values-en-rXC/strings.xml
new file mode 100644
index 0000000..614f69a
--- /dev/null
+++ b/go/quickstep/res/values-en-rXC/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Share App"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Listen"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Translate"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-es-rUS/strings.xml b/go/quickstep/res/values-es-rUS/strings.xml
new file mode 100644
index 0000000..e6946d7
--- /dev/null
+++ b/go/quickstep/res/values-es-rUS/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Compartir app"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Escuchar"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Traducir"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-fa/strings.xml b/go/quickstep/res/values-fa/strings.xml
new file mode 100644
index 0000000..491b32f
--- /dev/null
+++ b/go/quickstep/res/values-fa/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"همرسانی برنامه"</string>
+ <string name="action_listen" msgid="2370304050784689486">"گوش دادن"</string>
+ <string name="action_translate" msgid="8028378961867277746">"ترجمه"</string>
+ <string name="action_search" msgid="6269564710943755464">"لنز"</string>
+</resources>
diff --git a/go/quickstep/res/values-kn/strings.xml b/go/quickstep/res/values-kn/strings.xml
new file mode 100644
index 0000000..1083e84
--- /dev/null
+++ b/go/quickstep/res/values-kn/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"ಆ್ಯಪ್ ಹಂಚಿಕೊಳ್ಳಿ"</string>
+ <string name="action_listen" msgid="2370304050784689486">"ಆಲಿಸಿ"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Translate"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-ms/strings.xml b/go/quickstep/res/values-ms/strings.xml
new file mode 100644
index 0000000..39698e8
--- /dev/null
+++ b/go/quickstep/res/values-ms/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Kongsi Apl"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Dengar"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Terjemah"</string>
+ <string name="action_search" msgid="6269564710943755464">"Kanta"</string>
+</resources>
diff --git a/go/quickstep/res/values-nl/strings.xml b/go/quickstep/res/values-nl/strings.xml
new file mode 100644
index 0000000..ff5f16b
--- /dev/null
+++ b/go/quickstep/res/values-nl/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"App delen"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Luisteren"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Vertalen"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-pl/strings.xml b/go/quickstep/res/values-pl/strings.xml
new file mode 100644
index 0000000..a9696a6
--- /dev/null
+++ b/go/quickstep/res/values-pl/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Udostępnij aplikację"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Posłuchaj"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Przetłumacz"</string>
+ <string name="action_search" msgid="6269564710943755464">"Obiektyw"</string>
+</resources>
diff --git a/go/quickstep/res/values-pt/strings.xml b/go/quickstep/res/values-pt/strings.xml
new file mode 100644
index 0000000..6be2219
--- /dev/null
+++ b/go/quickstep/res/values-pt/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Compartilhar app"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Ouvir"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Traduzir"</string>
+ <string name="action_search" msgid="6269564710943755464">"Google Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-sk/strings.xml b/go/quickstep/res/values-sk/strings.xml
new file mode 100644
index 0000000..f142492
--- /dev/null
+++ b/go/quickstep/res/values-sk/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Zdieľať aplikáciu"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Počúvať"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Preložiť"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-uz/strings.xml b/go/quickstep/res/values-uz/strings.xml
new file mode 100644
index 0000000..4e375c7
--- /dev/null
+++ b/go/quickstep/res/values-uz/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Ilovani ulashish"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Tinglash"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Tarjimon"</string>
+ <string name="action_search" msgid="6269564710943755464">"Lens"</string>
+</resources>
diff --git a/go/quickstep/res/values-zu/strings.xml b/go/quickstep/res/values-zu/strings.xml
new file mode 100644
index 0000000..6dd94cb
--- /dev/null
+++ b/go/quickstep/res/values-zu/strings.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+ <string name="app_share_drop_target_label" msgid="5804774105974539508">"Yabelana nge-App"</string>
+ <string name="action_listen" msgid="2370304050784689486">"Lalela"</string>
+ <string name="action_translate" msgid="8028378961867277746">"Humusha"</string>
+ <string name="action_search" msgid="6269564710943755464">"Ilensi"</string>
+</resources>
diff --git a/res/drawable/single_item_secondary.xml b/go/quickstep/res/values/colors.xml
similarity index 68%
copy from res/drawable/single_item_secondary.xml
copy to go/quickstep/res/values/colors.xml
index 4edc481..9383770 100644
--- a/res/drawable/single_item_secondary.xml
+++ b/go/quickstep/res/values/colors.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2021 The Android Open Source Project
+<!--
+ Copyright (C) 2021 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -13,8 +14,8 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<shape xmlns:android="http://schemas.android.com/apk/res/android"
- android:shape="rectangle">
- <solid android:color="?attr/popupColorSecondary"/>
- <corners android:radius="@dimen/popup_single_item_radius" />
-</shape>
\ No newline at end of file
+<resources>
+ <!-- Overview -->
+ <color name="go_overview_button_icon_color">#3C4043</color>
+ <color name="go_overview_button_color">#70FFFFFF</color>
+</resources>
diff --git a/go/quickstep/res/values/dimens.xml b/go/quickstep/res/values/dimens.xml
new file mode 100644
index 0000000..cb260b5
--- /dev/null
+++ b/go/quickstep/res/values/dimens.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2021 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<resources>
+ <dimen name="go_button_corner_radius">20dp</dimen>
+
+ <!-- Overview -->
+ <dimen name="go_overview_button_width">60dp</dimen>
+ <dimen name="go_overview_button_height">60dp</dimen>
+ <dimen name="go_overview_button_container_width">80dp</dimen>
+ <dimen name="go_overview_button_caption_margin">8dp</dimen>
+</resources>
diff --git a/go/quickstep/res/values/styles.xml b/go/quickstep/res/values/styles.xml
index 927c49a..df49ecd 100644
--- a/go/quickstep/res/values/styles.xml
+++ b/go/quickstep/res/values/styles.xml
@@ -15,12 +15,31 @@
limitations under the License.
-->
<resources>
- <style name="GoOverviewActionButton"
- parent="@android:style/Widget.DeviceDefault.Button">
- <item name="android:textColor">@color/overview_button</item>
- <item name="android:drawableTint">@color/overview_button</item>
- <item name="android:tint">?android:attr/textColorPrimary</item>
- <item name="android:drawablePadding">8dp</item>
- <item name="android:textAllCaps">false</item>
+ <style name="GoOverviewActionButton">
+ <item name="android:tint">@color/go_overview_button_icon_color</item>
+ <item name="android:backgroundTint">@color/go_overview_button_color</item>
+ <item name="android:background">@drawable/round_rect_button</item>
+ <item name="android:layout_width">@dimen/go_overview_button_width</item>
+ <item name="android:layout_height">@dimen/go_overview_button_height</item>
+ <item name="android:layout_gravity">center_horizontal</item>
+ </style>
+
+ <style name="GoOverviewActionButtonCaption">
+ <item name="android:fontFamily">roboto-medium</item>
+ <item name="android:textSize">14dp</item>
+ <item name="android:textColor">@color/go_overview_button_icon_color</item>
+ <item name="android:lineHeight">20dp</item>
+ <item name="android:textAlignment">center</item>
+ <item name="android:importantForAccessibility">no</item>
+ <item name="android:layout_width">wrap_content</item>
+ <item name="android:layout_height">wrap_content</item>
+ <item name="android:layout_marginTop">@dimen/go_overview_button_caption_margin</item>
+ <item name="android:layout_gravity">center_horizontal</item>
+ </style>
+
+ <style name="GoOverviewActionButtonContainer">
+ <item name="android:layout_width">@dimen/go_overview_button_container_width</item>
+ <item name="android:layout_height">wrap_content</item>
+ <item name="android:orientation">vertical</item>
</style>
</resources>
\ No newline at end of file
diff --git a/go/quickstep/src/com/android/quickstep/TaskOverlayFactoryGo.java b/go/quickstep/src/com/android/quickstep/TaskOverlayFactoryGo.java
index 67e9d89..9077675 100644
--- a/go/quickstep/src/com/android/quickstep/TaskOverlayFactoryGo.java
+++ b/go/quickstep/src/com/android/quickstep/TaskOverlayFactoryGo.java
@@ -170,9 +170,9 @@
public void checkPermissions() {
ContentResolver contentResolver = mApplicationContext.getContentResolver();
boolean structureEnabled = Settings.Secure.getInt(contentResolver,
- Settings.Secure.ASSIST_STRUCTURE_ENABLED, 0) != 0;
+ Settings.Secure.ASSIST_STRUCTURE_ENABLED, 1) != 0;
boolean screenshotEnabled = Settings.Secure.getInt(contentResolver,
- Settings.Secure.ASSIST_SCREENSHOT_ENABLED, 0) != 0;
+ Settings.Secure.ASSIST_SCREENSHOT_ENABLED, 1) != 0;
mAssistPermissionsEnabled = structureEnabled && screenshotEnabled;
}
diff --git a/quickstep/AndroidManifest-launcher.xml b/quickstep/AndroidManifest-launcher.xml
index 7fe9b08..6808222 100644
--- a/quickstep/AndroidManifest-launcher.xml
+++ b/quickstep/AndroidManifest-launcher.xml
@@ -49,7 +49,7 @@
android:stateNotNeeded="true"
android:windowSoftInputMode="adjustPan"
android:screenOrientation="unspecified"
- android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout"
+ android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize|density"
android:resizeableActivity="true"
android:resumeWhilePausing="true"
android:taskAffinity=""
diff --git a/quickstep/AndroidManifest.xml b/quickstep/AndroidManifest.xml
index 7ab09c5..bf9059f 100644
--- a/quickstep/AndroidManifest.xml
+++ b/quickstep/AndroidManifest.xml
@@ -71,7 +71,7 @@
android:stateNotNeeded="true"
android:theme="@style/LauncherTheme"
android:screenOrientation="unspecified"
- android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout"
+ android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize|density"
android:resizeableActivity="true"
android:resumeWhilePausing="true"
android:taskAffinity=""/>
diff --git a/quickstep/res/drawable/gesture_tutorial_back_left.xml b/quickstep/res/drawable/gesture_tutorial_back_left.xml
deleted file mode 100644
index 92ae202..0000000
--- a/quickstep/res/drawable/gesture_tutorial_back_left.xml
+++ /dev/null
@@ -1,559 +0,0 @@
-<animated-vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt">
- <aapt:attr name="android:drawable">
- <vector android:height="892dp" android:width="412dp" android:viewportHeight="892" android:viewportWidth="412">
- <group android:name="_R_G">
- <group android:name="_R_G_L_7_G" android:translateX="206" android:translateY="446">
- <path android:name="_R_G_L_7_G_D_0_P_0" android:fillColor="#f1f3f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c "/>
- </group>
- <group android:name="_R_G_L_6_G" android:pivotX="206" android:pivotY="446" android:scaleX="1" android:scaleY="1">
- <group android:name="_R_G_L_6_G_L_3_G" android:translateX="206" android:translateY="446" android:scaleX="1.2" android:scaleY="1.2">
- <path android:name="_R_G_L_6_G_L_3_G_D_0_P_0" android:fillColor="#f1f3f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G">
- <group android:name="_R_G_L_6_G_L_2_G_L_11_G" android:translateX="206" android:translateY="496.5">
- <path android:name="_R_G_L_6_G_L_2_G_L_11_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M235.5 -452.14 C235.5,-452.14 235.5,452.14 235.5,452.14 C235.5,452.14 -235.5,452.14 -235.5,452.14 C-235.5,452.14 -235.5,-452.14 -235.5,-452.14 C-235.5,-452.14 235.5,-452.14 235.5,-452.14c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_10_G" android:translateX="182.5" android:translateY="831">
- <path android:name="_R_G_L_6_G_L_2_G_L_10_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_9_G" android:translateX="186" android:translateY="801">
- <path android:name="_R_G_L_6_G_L_2_G_L_9_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -7 C162,-7 162,7 162,7 C162,9.21 160.21,11 158,11 C158,11 -158,11 -158,11 C-160.21,11 -162,9.21 -162,7 C-162,7 -162,-7 -162,-7 C-162,-9.21 -160.21,-11 -158,-11 C-158,-11 158,-11 158,-11 C160.21,-11 162,-9.21 162,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_8_G" android:translateX="119" android:translateY="755">
- <path android:name="_R_G_L_6_G_L_2_G_L_8_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M95 -7 C95,-7 95,7 95,7 C95,9.21 93.21,11 91,11 C91,11 -91,11 -91,11 C-93.21,11 -95,9.21 -95,7 C-95,7 -95,-7 -95,-7 C-95,-9.21 -93.21,-11 -91,-11 C-91,-11 91,-11 91,-11 C93.21,-11 95,-9.21 95,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_7_G" android:translateX="182.5" android:translateY="725">
- <path android:name="_R_G_L_6_G_L_2_G_L_7_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_6_G" android:translateX="197.5" android:translateY="695">
- <path android:name="_R_G_L_6_G_L_2_G_L_6_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M173.5 -7 C173.5,-7 173.5,7 173.5,7 C173.5,9.21 171.71,11 169.5,11 C169.5,11 -169.5,11 -169.5,11 C-171.71,11 -173.5,9.21 -173.5,7 C-173.5,7 -173.5,-7 -173.5,-7 C-173.5,-9.21 -171.71,-11 -169.5,-11 C-169.5,-11 169.5,-11 169.5,-11 C171.71,-11 173.5,-9.21 173.5,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_5_G" android:translateX="192" android:translateY="665">
- <path android:name="_R_G_L_6_G_L_2_G_L_5_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M168 -7 C168,-7 168,7 168,7 C168,9.21 166.21,11 164,11 C164,11 -164,11 -164,11 C-166.21,11 -168,9.21 -168,7 C-168,7 -168,-7 -168,-7 C-168,-9.21 -166.21,-11 -164,-11 C-164,-11 164,-11 164,-11 C166.21,-11 168,-9.21 168,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_4_G" android:translateX="105.5" android:translateY="360">
- <path android:name="_R_G_L_6_G_L_2_G_L_4_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_3_G" android:translateX="47.5" android:translateY="360">
- <path android:name="_R_G_L_6_G_L_2_G_L_3_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_2_G" android:translateX="142.5" android:translateY="328">
- <path android:name="_R_G_L_6_G_L_2_G_L_2_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M118.5 -14 C118.5,-14 118.5,14 118.5,14 C118.5,16.21 116.71,18 114.5,18 C114.5,18 -114.5,18 -114.5,18 C-116.71,18 -118.5,16.21 -118.5,14 C-118.5,14 -118.5,-14 -118.5,-14 C-118.5,-16.21 -116.71,-18 -114.5,-18 C-114.5,-18 114.5,-18 114.5,-18 C116.71,-18 118.5,-16.21 118.5,-14c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_1_G" android:translateX="186" android:translateY="284">
- <path android:name="_R_G_L_6_G_L_2_G_L_1_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -14 C162,-14 162,14 162,14 C162,16.21 160.21,18 158,18 C158,18 -158,18 -158,18 C-160.21,18 -162,16.21 -162,14 C-162,14 -162,-14 -162,-14 C-162,-16.21 -160.21,-18 -158,-18 C-158,-18 158,-18 158,-18 C160.21,-18 162,-16.21 162,-14c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_0_G" android:translateX="155" android:translateY="240">
- <path android:name="_R_G_L_6_G_L_2_G_L_0_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M131 -14 C131,-14 131,14 131,14 C131,16.21 129.21,18 127,18 C127,18 -127,18 -127,18 C-129.21,18 -131,16.21 -131,14 C-131,14 -131,-14 -131,-14 C-131,-16.21 -129.21,-18 -127,-18 C-127,-18 127,-18 127,-18 C129.21,-18 131,-16.21 131,-14c "/>
- </group>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G" android:translateX="24" android:translateY="390">
- <group android:name="_R_G_L_6_G_L_1_G_L_7_G" android:translateX="182" android:translateY="120"/>
- <group android:name="_R_G_L_6_G_L_1_G_L_6_G" android:translateX="182" android:translateY="120">
- <path android:name="_R_G_L_6_G_L_1_G_L_6_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M182 -116 C182,-116 182,116 182,116 C182,118.21 180.21,120 178,120 C178,120 -178,120 -178,120 C-180.21,120 -182,118.21 -182,116 C-182,116 -182,-116 -182,-116 C-182,-118.21 -180.21,-120 -178,-120 C-178,-120 178,-120 178,-120 C180.21,-120 182,-118.21 182,-116c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_5_G" android:translateX="77.322" android:translateY="150.552">
- <path android:name="_R_G_L_6_G_L_1_G_L_5_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- <path android:name="_R_G_L_6_G_L_1_G_L_5_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_4_G" android:translateX="38.772" android:translateY="121.73">
- <path android:name="_R_G_L_6_G_L_1_G_L_4_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- <path android:name="_R_G_L_6_G_L_1_G_L_4_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_3_G" android:translateX="183" android:translateY="222">
- <path android:name="_R_G_L_6_G_L_1_G_L_3_G_D_0_P_0" android:fillColor="#000000" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- <path android:name="_R_G_L_6_G_L_1_G_L_3_G_D_1_P_0" android:strokeColor="#9aa0a6" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="4" android:strokeAlpha="1" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_2_G" android:translateX="265.619" android:translateY="162.331">
- <path android:name="_R_G_L_6_G_L_1_G_L_2_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- <path android:name="_R_G_L_6_G_L_1_G_L_2_G_D_1_P_0" android:strokeColor="#a8cbfe" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_1_G" android:translateX="319.271" android:translateY="37.945">
- <path android:name="_R_G_L_6_G_L_1_G_L_1_G_D_0_P_0" android:fillColor="#feefc3" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M13.42 2.99 C14.95,-4.17 9.93,-11.31 2.21,-12.96 C-0.9,-13.62 -3.97,-13.3 -6.64,-12.2 C-6.58,-12.19 -6.53,-12.18 -6.48,-12.17 C-1.03,-11.01 2.52,-5.97 1.44,-0.92 C0.36,4.13 -4.94,7.28 -10.4,6.12 C-11.6,5.86 -12.7,5.42 -13.69,4.83 C-11.9,8.78 -8.15,11.93 -3.34,12.96 C4.38,14.61 11.88,10.14 13.42,2.99c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_0_G" android:translateX="179.5" android:translateY="73.351">
- <path android:name="_R_G_L_6_G_L_1_G_L_0_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M51.08 -40.95 C51.08,-40.95 50.55,-42.54 50.55,-42.54 C50.55,-42.54 49.67,-41.13 49.67,-41.13 C49.67,-41.13 48.17,-41.21 48.17,-41.21 C48.17,-41.21 49.05,-39.8 49.05,-39.8 C49.05,-39.8 48.61,-38.22 48.61,-38.22 C48.61,-38.22 50.02,-38.74 50.02,-38.74 C50.02,-38.74 51.35,-37.69 51.35,-37.69 C51.35,-37.69 51.26,-39.45 51.26,-39.45 C51.26,-39.45 52.59,-40.42 52.59,-40.42 C52.59,-40.42 51.08,-40.95 51.08,-40.95c M8.78 30.58 C8.78,30.58 8.25,28.99 8.25,28.99 C8.25,28.99 7.37,30.4 7.37,30.4 C7.37,30.4 5.87,30.31 5.87,30.31 C5.87,30.31 6.75,31.72 6.75,31.72 C6.75,31.72 6.31,33.31 6.31,33.31 C6.31,33.31 7.72,32.78 7.72,32.78 C7.72,32.78 9.05,33.84 9.05,33.84 C9.05,33.84 8.96,32.08 8.96,32.08 C8.96,32.08 10.29,31.11 10.29,31.11 C10.29,31.11 8.78,30.58 8.78,30.58c M19.38 -61.67 C19.38,-61.67 18.94,-63.35 18.94,-63.35 C18.94,-63.35 17.97,-61.94 17.97,-61.94 C17.97,-61.94 16.47,-61.94 16.47,-61.94 C16.47,-61.94 17.35,-60.62 17.35,-60.62 C17.35,-60.62 16.91,-58.94 16.91,-58.94 C16.91,-58.94 18.41,-59.56 18.41,-59.56 C18.41,-59.56 19.65,-58.5 19.65,-58.5 C19.65,-58.5 19.56,-60.18 19.56,-60.18 C19.56,-60.18 20.88,-61.23 20.88,-61.23 C20.88,-61.23 19.38,-61.67 19.38,-61.67c M-32.98 35.08 C-32.98,35.08 -33.51,33.4 -33.51,33.4 C-33.51,33.4 -34.4,34.81 -34.4,34.81 C-34.4,34.81 -35.9,34.81 -35.9,34.81 C-35.9,34.81 -35.01,36.22 -35.01,36.22 C-35.01,36.22 -35.45,37.81 -35.45,37.81 C-35.45,37.81 -34.04,37.28 -34.04,37.28 C-34.04,37.28 -32.72,38.25 -32.72,38.25 C-32.72,38.25 -32.81,36.58 -32.81,36.58 C-32.81,36.58 -31.48,35.6 -31.48,35.6 C-31.48,35.6 -32.98,35.08 -32.98,35.08c M45.34 7.56 C45.34,7.56 44.81,5.97 44.81,5.97 C44.81,5.97 43.93,7.38 43.93,7.38 C43.93,7.38 42.34,7.3 42.34,7.3 C42.34,7.3 43.31,8.71 43.31,8.71 C43.31,8.71 42.87,10.29 42.87,10.29 C42.87,10.29 44.28,9.77 44.28,9.77 C44.28,9.77 45.52,10.82 45.52,10.82 C45.52,10.82 45.52,9.06 45.52,9.06 C45.52,9.06 46.76,8.09 46.76,8.09 C46.76,8.09 45.34,7.56 45.34,7.56c M-9.59 -41.67 C-9.59,-41.67 -10.12,-43.35 -10.12,-43.35 C-10.12,-43.35 -11,-41.94 -11,-41.94 C-11,-41.94 -12.5,-41.94 -12.5,-41.94 C-12.5,-41.94 -11.62,-40.62 -11.62,-40.62 C-11.62,-40.62 -12.06,-38.94 -12.06,-38.94 C-12.06,-38.94 -10.65,-39.56 -10.65,-39.56 C-10.65,-39.56 -9.32,-38.5 -9.32,-38.5 C-9.32,-38.5 -9.41,-40.26 -9.41,-40.26 C-9.41,-40.26 -8.09,-41.23 -8.09,-41.23 C-8.09,-41.23 -9.59,-41.67 -9.59,-41.67c M97.74 -23.97 C97.74,-23.97 97.03,-26.35 97.03,-26.35 C97.03,-26.35 95.8,-24.32 95.8,-24.32 C95.8,-24.32 93.5,-24.32 93.5,-24.32 C93.5,-24.32 94.91,-22.38 94.91,-22.38 C94.91,-22.38 94.21,-20 94.21,-20 C94.21,-20 96.33,-20.88 96.33,-20.88 C96.33,-20.88 98.09,-19.38 98.09,-19.38 C98.09,-19.38 98.09,-21.85 98.09,-21.85 C98.09,-21.85 99.86,-23.26 99.86,-23.26 C99.86,-23.26 97.74,-23.97 97.74,-23.97c M167.29 43.28 C167.29,43.28 166.67,40.9 166.67,40.9 C166.67,40.9 165.35,42.93 165.35,42.93 C165.35,42.93 163.14,42.93 163.14,42.93 C163.14,42.93 164.47,44.87 164.47,44.87 C164.47,44.87 163.76,47.25 163.76,47.25 C163.76,47.25 165.88,46.37 165.88,46.37 C165.88,46.37 167.73,47.87 167.73,47.87 C167.73,47.87 167.65,45.4 167.65,45.4 C167.65,45.4 169.5,43.98 169.5,43.98 C169.5,43.98 167.29,43.28 167.29,43.28c M-1.1 -1.79 C-1.1,-1.79 -1.72,-4.08 -1.72,-4.08 C-1.72,-4.08 -3.05,-2.14 -3.05,-2.14 C-3.05,-2.14 -5.25,-2.14 -5.25,-2.14 C-5.25,-2.14 -3.93,-0.11 -3.93,-0.11 C-3.93,-0.11 -4.64,2.18 -4.64,2.18 C-4.64,2.18 -2.52,1.38 -2.52,1.38 C-2.52,1.38 -0.66,2.8 -0.66,2.8 C-0.66,2.8 -0.75,0.41 -0.75,0.41 C-0.75,0.41 1.1,-1.08 1.1,-1.08 C1.1,-1.08 -1.1,-1.79 -1.1,-1.79c M-60.89 -5.23 C-60.89,-5.23 -61.59,-7.61 -61.59,-7.61 C-61.59,-7.61 -62.83,-5.58 -62.83,-5.58 C-62.83,-5.58 -65.13,-5.58 -65.13,-5.58 C-65.13,-5.58 -63.71,-3.64 -63.71,-3.64 C-63.71,-3.64 -64.42,-1.26 -64.42,-1.26 C-64.42,-1.26 -62.39,-2.14 -62.39,-2.14 C-62.39,-2.14 -60.53,-0.64 -60.53,-0.64 C-60.53,-0.64 -60.62,-3.11 -60.62,-3.11 C-60.62,-3.11 -58.77,-4.52 -58.77,-4.52 C-58.77,-4.52 -60.89,-5.23 -60.89,-5.23c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-51.26 -42.98 C-51.26,-42.98 -54.09,-45.01 -54.09,-45.01 C-54.09,-45.01 -53.91,-41.57 -53.91,-41.57 C-53.91,-41.57 -56.65,-39.54 -56.65,-39.54 C-56.65,-39.54 -53.38,-38.57 -53.38,-38.57 C-53.38,-38.57 -52.32,-35.3 -52.32,-35.3 C-52.32,-35.3 -50.38,-38.13 -50.38,-38.13 C-50.38,-38.13 -46.94,-38.22 -46.94,-38.22 C-46.94,-38.22 -49.05,-40.86 -49.05,-40.86 C-49.05,-40.86 -47.99,-44.21 -47.99,-44.21 C-47.99,-44.21 -51.26,-42.98 -51.26,-42.98c M-92.06 -47.92 C-92.06,-47.92 -92.59,-49.59 -92.59,-49.59 C-92.59,-49.59 -93.47,-48.18 -93.47,-48.18 C-93.47,-48.18 -95.06,-48.18 -95.06,-48.18 C-95.06,-48.18 -94.09,-46.86 -94.09,-46.86 C-94.09,-46.86 -94.53,-45.18 -94.53,-45.18 C-94.53,-45.18 -93.12,-45.8 -93.12,-45.8 C-93.12,-45.8 -91.88,-44.74 -91.88,-44.74 C-91.88,-44.74 -91.88,-46.42 -91.88,-46.42 C-91.88,-46.42 -90.65,-47.47 -90.65,-47.47 C-90.65,-47.47 -92.06,-47.92 -92.06,-47.92c M62.83 -13.34 C62.83,-13.34 62.39,-14.93 62.39,-14.93 C62.39,-14.93 61.5,-13.52 61.5,-13.52 C61.5,-13.52 59.91,-13.52 59.91,-13.52 C59.91,-13.52 60.89,-12.2 60.89,-12.2 C60.89,-12.2 60.36,-10.52 60.36,-10.52 C60.36,-10.52 61.86,-11.14 61.86,-11.14 C61.86,-11.14 63.09,-10.08 63.09,-10.08 C63.09,-10.08 63.09,-11.84 63.09,-11.84 C63.09,-11.84 64.33,-12.81 64.33,-12.81 C64.33,-12.81 62.83,-13.34 62.83,-13.34c M-155.99 -40.95 C-155.99,-40.95 -156.43,-42.54 -156.43,-42.54 C-156.43,-42.54 -157.32,-41.13 -157.32,-41.13 C-157.32,-41.13 -158.91,-41.21 -158.91,-41.21 C-158.91,-41.21 -157.93,-39.8 -157.93,-39.8 C-157.93,-39.8 -158.46,-38.22 -158.46,-38.22 C-158.46,-38.22 -156.96,-38.74 -156.96,-38.74 C-156.96,-38.74 -155.73,-37.69 -155.73,-37.69 C-155.73,-37.69 -155.73,-39.45 -155.73,-39.45 C-155.73,-39.45 -154.49,-40.42 -154.49,-40.42 C-154.49,-40.42 -155.99,-40.95 -155.99,-40.95c M141.24 26.52 C141.24,26.52 140.71,24.85 140.71,24.85 C140.71,24.85 139.83,26.26 139.83,26.26 C139.83,26.26 138.33,26.26 138.33,26.26 C138.33,26.26 139.21,27.67 139.21,27.67 C139.21,27.67 138.77,29.26 138.77,29.26 C138.77,29.26 140.18,28.73 140.18,28.73 C140.18,28.73 141.51,29.7 141.51,29.7 C141.51,29.7 141.42,28.02 141.42,28.02 C141.42,28.02 142.74,27.05 142.74,27.05 C142.74,27.05 141.24,26.52 141.24,26.52c M111.4 -51.27 C111.4,-51.27 110.95,-52.94 110.95,-52.94 C110.95,-52.94 110.07,-51.53 110.07,-51.53 C110.07,-51.53 108.48,-51.53 108.48,-51.53 C108.48,-51.53 109.45,-50.21 109.45,-50.21 C109.45,-50.21 108.92,-48.53 108.92,-48.53 C108.92,-48.53 110.42,-49.15 110.42,-49.15 C110.42,-49.15 111.66,-48.09 111.66,-48.09 C111.66,-48.09 111.66,-49.86 111.66,-49.86 C111.66,-49.86 112.9,-50.83 112.9,-50.83 C112.9,-50.83 111.4,-51.27 111.4,-51.27c M-66.59 53.33 C-66.59,53.33 -67.03,51.65 -67.03,51.65 C-67.03,51.65 -67.91,53.06 -67.91,53.06 C-67.91,53.06 -69.5,53.06 -69.5,53.06 C-69.5,53.06 -68.53,54.47 -68.53,54.47 C-68.53,54.47 -69.06,56.06 -69.06,56.06 C-69.06,56.06 -67.56,55.53 -67.56,55.53 C-67.56,55.53 -66.32,56.5 -66.32,56.5 C-66.32,56.5 -66.32,54.82 -66.32,54.82 C-66.32,54.82 -65.08,53.77 -65.08,53.77 C-65.08,53.77 -66.59,53.33 -66.59,53.33c M-50.59 59.33 C-50.59,59.33 -51.12,57.65 -51.12,57.65 C-51.12,57.65 -52,59.06 -52,59.06 C-52,59.06 -53.5,59.06 -53.5,59.06 C-53.5,59.06 -52.62,60.38 -52.62,60.38 C-52.62,60.38 -53.06,62.06 -53.06,62.06 C-53.06,62.06 -51.65,61.53 -51.65,61.53 C-51.65,61.53 -50.32,62.5 -50.32,62.5 C-50.32,62.5 -50.41,60.82 -50.41,60.82 C-50.41,60.82 -49.08,59.77 -49.08,59.77 C-49.08,59.77 -50.59,59.33 -50.59,59.33c M29.98 -16.08 C29.98,-16.08 29.27,-18.46 29.27,-18.46 C29.27,-18.46 27.95,-16.43 27.95,-16.43 C27.95,-16.43 25.74,-16.43 25.74,-16.43 C25.74,-16.43 27.06,-14.49 27.06,-14.49 C27.06,-14.49 26.36,-12.11 26.36,-12.11 C26.36,-12.11 28.48,-12.9 28.48,-12.9 C28.48,-12.9 30.33,-11.49 30.33,-11.49 C30.33,-11.49 30.24,-13.96 30.24,-13.96 C30.24,-13.96 32.1,-15.37 32.1,-15.37 C32.1,-15.37 29.98,-16.08 29.98,-16.08c M81.28 55.98 C81.28,55.98 80.58,53.6 80.58,53.6 C80.58,53.6 79.25,55.63 79.25,55.63 C79.25,55.63 77.04,55.63 77.04,55.63 C77.04,55.63 78.37,57.57 78.37,57.57 C78.37,57.57 77.66,59.95 77.66,59.95 C77.66,59.95 79.78,59.07 79.78,59.07 C79.78,59.07 81.64,60.56 81.64,60.56 C81.64,60.56 81.55,58.1 81.55,58.1 C81.55,58.1 83.4,56.68 83.4,56.68 C83.4,56.68 81.28,55.98 81.28,55.98c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-74.05 21.76 C-74.05,21.76 -74.66,19.47 -74.66,19.47 C-74.66,19.47 -75.99,21.49 -75.99,21.49 C-75.99,21.49 -78.2,21.41 -78.2,21.41 C-78.2,21.41 -76.87,23.43 -76.87,23.43 C-76.87,23.43 -77.58,25.73 -77.58,25.73 C-77.58,25.73 -75.46,24.93 -75.46,24.93 C-75.46,24.93 -73.6,26.43 -73.6,26.43 C-73.6,26.43 -73.69,23.96 -73.69,23.96 C-73.69,23.96 -71.84,22.46 -71.84,22.46 C-71.84,22.46 -74.05,21.76 -74.05,21.76c M8.98 55.68 C8.98,55.68 6.15,53.65 6.15,53.65 C6.15,53.65 6.24,57.09 6.24,57.09 C6.24,57.09 3.5,59.12 3.5,59.12 C3.5,59.12 6.86,60.09 6.86,60.09 C6.86,60.09 7.92,63.35 7.92,63.35 C7.92,63.35 9.86,60.44 9.86,60.44 C9.86,60.44 13.3,60.44 13.3,60.44 C13.3,60.44 11.18,57.71 11.18,57.71 C11.18,57.71 12.15,54.44 12.15,54.44 C12.15,54.44 8.98,55.68 8.98,55.68c M124.89 -2.41 C124.89,-2.41 122.06,-4.35 122.06,-4.35 C122.06,-4.35 122.24,-0.91 122.24,-0.91 C122.24,-0.91 119.5,1.12 119.5,1.12 C119.5,1.12 122.77,2 122.77,2 C122.77,2 123.83,5.26 123.83,5.26 C123.83,5.26 125.77,2.44 125.77,2.44 C125.77,2.44 129.21,2.44 129.21,2.44 C129.21,2.44 127.09,-0.29 127.09,-0.29 C127.09,-0.29 128.15,-3.56 128.15,-3.56 C128.15,-3.56 124.89,-2.41 124.89,-2.41c M77.31 19.91 C77.31,19.91 74.57,17.88 74.57,17.88 C74.57,17.88 74.66,21.32 74.66,21.32 C74.66,21.32 71.92,23.35 71.92,23.35 C71.92,23.35 75.19,24.32 75.19,24.32 C75.19,24.32 76.34,27.58 76.34,27.58 C76.34,27.58 78.19,24.67 78.19,24.67 C78.19,24.67 81.64,24.67 81.64,24.67 C81.64,24.67 79.52,21.94 79.52,21.94 C79.52,21.94 80.58,18.67 80.58,18.67 C80.58,18.67 77.31,19.91 77.31,19.91c M-28.11 7.68 C-28.11,7.68 -30.94,5.65 -30.94,5.65 C-30.94,5.65 -30.76,9.09 -30.76,9.09 C-30.76,9.09 -33.5,11.12 -33.5,11.12 C-33.5,11.12 -30.23,12.09 -30.23,12.09 C-30.23,12.09 -29.17,15.35 -29.17,15.35 C-29.17,15.35 -27.23,12.44 -27.23,12.44 C-27.23,12.44 -23.79,12.44 -23.79,12.44 C-23.79,12.44 -25.91,9.71 -25.91,9.71 C-25.91,9.71 -24.85,6.44 -24.85,6.44 C-24.85,6.44 -28.11,7.68 -28.11,7.68c M-119.43 -20.22 C-119.43,-20.22 -122.26,-22.16 -122.26,-22.16 C-122.26,-22.16 -122.08,-18.72 -122.08,-18.72 C-122.08,-18.72 -124.82,-16.7 -124.82,-16.7 C-124.82,-16.7 -121.55,-15.81 -121.55,-15.81 C-121.55,-15.81 -120.49,-12.55 -120.49,-12.55 C-120.49,-12.55 -118.55,-15.37 -118.55,-15.37 C-118.55,-15.37 -115.11,-15.37 -115.11,-15.37 C-115.11,-15.37 -117.23,-18.11 -117.23,-18.11 C-117.23,-18.11 -116.17,-21.37 -116.17,-21.37 C-116.17,-21.37 -119.43,-20.22 -119.43,-20.22c "/>
- </group>
- </group>
- <group android:name="_R_G_L_6_G_L_0_G">
- <group android:name="_R_G_L_6_G_L_0_G_L_2_G" android:translateX="206" android:translateY="145">
- <path android:name="_R_G_L_6_G_L_0_G_L_2_G_D_0_P_0" android:fillColor="#e8eaed" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M230.57 -95.63 C230.57,-95.63 230.57,42.37 230.57,42.37 C230.57,43.47 229.56,44.37 228.33,44.37 C228.33,44.37 -228.33,44.37 -228.33,44.37 C-229.56,44.37 -230.57,43.47 -230.57,42.37 C-230.57,42.37 -230.57,-95.63 -230.57,-95.63 C-230.57,-96.73 -229.56,-97.63 -228.33,-97.63 C-228.33,-97.63 228.33,-97.63 228.33,-97.63 C229.56,-97.63 230.57,-96.73 230.57,-95.63c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_0_G_L_1_G" android:translateX="206" android:translateY="145">
- <path android:name="_R_G_L_6_G_L_0_G_L_1_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M109 -14 C109,-14 109,14 109,14 C109,15.1 108.1,16 107,16 C107,16 -107,16 -107,16 C-108.1,16 -109,15.1 -109,14 C-109,14 -109,-14 -109,-14 C-109,-15.1 -108.1,-16 -107,-16 C-107,-16 107,-16 107,-16 C108.1,-16 109,-15.1 109,-14c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_0_G_L_0_G" android:translateX="46" android:translateY="145">
- <path android:name="_R_G_L_6_G_L_0_G_L_0_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M22 -14 C22,-14 22,14 22,14 C22,18.42 18.42,22 14,22 C14,22 -14,22 -14,22 C-18.42,22 -22,18.42 -22,14 C-22,14 -22,-14 -22,-14 C-22,-18.42 -18.42,-22 -14,-22 C-14,-22 14,-22 14,-22 C18.42,-22 22,-18.42 22,-14c "/>
- </group>
- </group>
- </group>
- <group android:name="_R_G_L_5_G" android:scaleY="0">
- <group android:name="_R_G_L_5_G_L_11_G" android:translateX="206" android:translateY="446" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_11_G_D_0_P_0" android:fillColor="#f1f3f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_10_G" android:translateX="148" android:translateY="441" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_10_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M48 -8 C48,-8 48,8 48,8 C48,10.21 46.21,12 44,12 C44,12 -44,12 -44,12 C-46.21,12 -48,10.21 -48,8 C-48,8 -48,-8 -48,-8 C-48,-10.21 -46.21,-12 -44,-12 C-44,-12 44,-12 44,-12 C46.21,-12 48,-10.21 48,-8c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_9_G" android:translateX="264" android:translateY="441" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_9_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M48 -8 C48,-8 48,8 48,8 C48,10.21 46.21,12 44,12 C44,12 -44,12 -44,12 C-46.21,12 -48,10.21 -48,8 C-48,8 -48,-8 -48,-8 C-48,-10.21 -46.21,-12 -44,-12 C-44,-12 44,-12 44,-12 C46.21,-12 48,-10.21 48,-8c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_8_G" android:translateX="206" android:translateY="380" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_8_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M176 0 C176,0 176,0 176,0 C176,14.9 163.9,27 149,27 C149,27 -149,27 -149,27 C-163.9,27 -176,14.9 -176,0 C-176,0 -176,0 -176,0 C-176,-14.9 -163.9,-27 -149,-27 C-149,-27 149,-27 149,-27 C163.9,-27 176,-14.9 176,0c "/>
- <path android:name="_R_G_L_5_G_L_8_G_D_1_P_0" android:strokeColor="#bdc1c6" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="4" android:strokeAlpha="1" android:pathData=" M176 0 C176,0 176,0 176,0 C176,14.9 163.9,27 149,27 C149,27 -149,27 -149,27 C-163.9,27 -176,14.9 -176,0 C-176,0 -176,0 -176,0 C-176,-14.9 -163.9,-27 -149,-27 C-149,-27 149,-27 149,-27 C163.9,-27 176,-14.9 176,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_7_G" android:translateX="120" android:translateY="268" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_7_G_D_0_P_0" android:fillColor="#4285f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M26 0 C26,0 26,0 26,0 C26,14.35 14.35,26 0,26 C0,26 0,26 0,26 C-14.35,26 -26,14.35 -26,0 C-26,0 -26,0 -26,0 C-26,-14.35 -14.35,-26 0,-26 C0,-26 0,-26 0,-26 C14.35,-26 26,-14.35 26,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_6_G" android:translateX="167" android:translateY="278" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_6_G_D_0_P_0" android:fillColor="#e94235" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M17 0 C17,0 17,0 17,0 C17,9.38 9.38,17 0,17 C0,17 0,17 0,17 C-9.38,17 -17,9.38 -17,0 C-17,0 -17,0 -17,0 C-17,-9.38 -9.38,-17 0,-17 C0,-17 0,-17 0,-17 C9.38,-17 17,-9.38 17,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_5_G" android:translateX="205" android:translateY="278" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_5_G_D_0_P_0" android:fillColor="#fabb05" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M17 0 C17,0 17,0 17,0 C17,9.38 9.38,17 0,17 C0,17 0,17 0,17 C-9.38,17 -17,9.38 -17,0 C-17,0 -17,0 -17,0 C-17,-9.38 -9.38,-17 0,-17 C0,-17 0,-17 0,-17 C9.38,-17 17,-9.38 17,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_4_G" android:translateX="243" android:translateY="286" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_4_G_D_0_P_0" android:fillColor="#4285f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M17 -8 C17,-8 17,8 17,8 C17,17.38 9.38,25 0,25 C0,25 0,25 0,25 C-9.38,25 -17,17.38 -17,8 C-17,8 -17,-8 -17,-8 C-17,-17.38 -9.38,-25 0,-25 C0,-25 0,-25 0,-25 C9.38,-25 17,-17.38 17,-8c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_3_G" android:translateX="272" android:translateY="269" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_3_G_D_0_P_0" android:fillColor="#34a853" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M8 -17 C8,-17 8,17 8,17 C8,21.42 4.42,25 0,25 C0,25 0,25 0,25 C-4.42,25 -8,21.42 -8,17 C-8,17 -8,-17 -8,-17 C-8,-21.42 -4.42,-25 0,-25 C0,-25 0,-25 0,-25 C4.42,-25 8,-21.42 8,-17c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_2_G" android:translateX="301" android:translateY="278" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_2_G_D_0_P_0" android:fillColor="#e94235" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M17 0 C17,0 17,0 17,0 C17,9.38 9.38,17 0,17 C0,17 0,17 0,17 C-9.38,17 -17,9.38 -17,0 C-17,0 -17,0 -17,0 C-17,-9.38 -9.38,-17 0,-17 C0,-17 0,-17 0,-17 C9.38,-17 17,-9.38 17,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_1_G" android:translateX="42" android:translateY="140" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_1_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M12 -8 C12,-8 12,8 12,8 C12,10.21 10.21,12 8,12 C8,12 -8,12 -8,12 C-10.21,12 -12,10.21 -12,8 C-12,8 -12,-8 -12,-8 C-12,-10.21 -10.21,-12 -8,-12 C-8,-12 8,-12 8,-12 C10.21,-12 12,-10.21 12,-8c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_0_G" android:translateX="92.5" android:translateY="140" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_0_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M28.5 -5 C28.5,-5 28.5,5 28.5,5 C28.5,7.21 26.71,9 24.5,9 C24.5,9 -24.5,9 -24.5,9 C-26.71,9 -28.5,7.21 -28.5,5 C-28.5,5 -28.5,-5 -28.5,-5 C-28.5,-7.21 -26.71,-9 -24.5,-9 C-24.5,-9 24.5,-9 24.5,-9 C26.71,-9 28.5,-7.21 28.5,-5c "/>
- </group>
- </group>
- <group android:name="_R_G_L_4_G" android:translateX="206" android:translateY="877">
- <path android:name="_R_G_L_4_G_D_0_P_0" android:fillColor="#373737" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M40 0 C40,0 40,0 40,0 C40,1.1 39.1,2 38,2 C38,2 -38,2 -38,2 C-39.1,2 -40,1.1 -40,0 C-40,0 -40,0 -40,0 C-40,-1.1 -39.1,-2 -38,-2 C-38,-2 38,-2 38,-2 C39.1,-2 40,-1.1 40,0c "/>
- </group>
- <group android:name="_R_G_L_3_G">
- <group android:name="_R_G_L_3_G_L_1_G" android:translateX="206" android:translateY="50.5">
- <path android:name="_R_G_L_3_G_L_1_G_D_0_P_0" android:fillColor="#202124" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -50.5 C206,-50.5 206,50.5 206,50.5 C206,50.5 -206,50.5 -206,50.5 C-206,50.5 -206,-50.5 -206,-50.5 C-206,-50.5 206,-50.5 206,-50.5c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_0_G" android:translateX="206" android:translateY="66.5">
- <path android:name="_R_G_L_3_G_L_0_G_D_0_P_0" android:fillColor="#3c4043" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M190 0 C190,0 190,0 190,0 C190,10.21 181.71,18.5 171.5,18.5 C171.5,18.5 -171.5,18.5 -171.5,18.5 C-181.71,18.5 -190,10.21 -190,0 C-190,0 -190,0 -190,0 C-190,-10.21 -181.71,-18.5 -171.5,-18.5 C-171.5,-18.5 171.5,-18.5 171.5,-18.5 C181.71,-18.5 190,-10.21 190,0c "/>
- </group>
- </group>
- <group android:name="_R_G_L_2_G" android:translateX="28.25" android:translateY="462.5" android:scaleY="0">
- <group android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0" android:translateX="-60" android:translateY="0">
- <path android:name="_R_G_L_2_G_D_0_P_0" android:fillColor="#000000" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M28.25 0 C28.25,31.2 2.95,56.5 -28.25,56.5 C-28.25,56.5 -28.25,-56.5 -28.25,-56.5 C2.95,-56.5 28.25,-31.2 28.25,0c "/>
- </group>
- </group>
- <group android:name="_R_G_L_1_G" android:translateX="-4.25" android:translateY="463" android:scaleX="0.5" android:scaleY="0" android:rotation="180">
- <path android:name="_R_G_L_1_G_D_0_P_0" android:fillColor="#ffffff" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M3.87 -13.45 C3.07,-14.21 1.8,-14.18 1.04,-13.38 C0.28,-12.58 0.31,-11.31 1.11,-10.55 C1.11,-10.55 9.75,-2.32 9.75,-2.32 C9.75,-2.32 -14.75,-2.32 -14.75,-2.32 C-15.85,-2.32 -16.75,-1.43 -16.75,-0.32 C-16.75,0.78 -15.85,1.68 -14.75,1.68 C-14.75,1.68 9.94,1.68 9.94,1.68 C9.94,1.68 1.07,10.59 1.07,10.59 C0.29,11.37 0.29,12.64 1.08,13.42 C1.86,14.2 3.13,14.19 3.9,13.41 C3.9,13.41 16.17,1.09 16.17,1.09 C16.55,0.71 16.76,0.19 16.75,-0.35 C16.74,-0.89 16.52,-1.4 16.13,-1.77 C16.13,-1.77 3.87,-13.45 3.87,-13.45c "/>
- </group>
- <group android:name="_R_G_L_0_G" android:translateX="-130.003" android:translateY="399" android:scaleY="0">
- <group android:name="_R_G_L_0_G_L_2_G" android:translateX="295.995" android:translateY="63.997" android:scaleY="0">
- <path android:name="_R_G_L_0_G_L_2_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="0.3" android:fillType="nonZero" android:pathData=" M-166 64 C-130.65,64 -102,35.35 -102,0 C-102,-35.34 -130.65,-64 -166,-64 C-201.34,-64 -230,-35.34 -230,0 C-230,35.35 -201.34,64 -166,64c "/>
- </group>
- <group android:name="_R_G_L_0_G_L_1_G" android:translateX="192" android:translateY="63.997" android:rotation="90" android:scaleX="-1" android:scaleY="0">
- <path android:name="_R_G_L_0_G_L_1_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="0.3" android:fillType="nonZero" android:pathData=" M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c "/>
- </group>
- <group android:name="_R_G_L_0_G_L_0_G" android:translateX="295.995" android:translateY="63.997" android:scaleY="0">
- <group android:name="_R_G_L_0_G_L_0_G_D_0_P_0_G_0_T_0" android:translateX="-166" android:translateY="0">
- <path android:name="_R_G_L_0_G_L_0_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 64 C35.35,64 64,35.35 64,0 C64,-35.34 35.35,-64 0,-64 C-35.34,-64 -64,-35.34 -64,0 C-64,35.35 -35.34,64 0,64c "/>
- </group>
- </group>
- </group>
- </group>
- <group android:name="time_group"/>
- </vector>
- </aapt:attr>
- <target android:name="_R_G_L_6_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2283" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2283" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2267" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="2133" android:startOffset="0" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="2133" android:startOffset="0" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="283" android:startOffset="2133" android:valueFrom="1" android:valueTo="0.88012" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="283" android:startOffset="2133" android:valueFrom="1" android:valueTo="0.88012" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2417" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_11_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_10_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2433" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_9_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2433" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_8_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_7_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_5_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_4_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_3_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="1133" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -60,0C -50,0 -70,0 -60,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="667" android:startOffset="1133" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -60,0C -50,0 -10,0 0,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="333" android:startOffset="1800" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 0,0C 0,0 0,0 0,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0.333 0,0 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="333" android:startOffset="2133" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 0,0C -10,0 -50,0 -60,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1133" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2467" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="1133" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -4.25,463C 0.75,463 -9.25,463 -4.25,463">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="583" android:startOffset="1133" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -4.25,463C 0.75,463 20.75,463 25.75,463">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="417" android:startOffset="1717" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 25.75,463C 25.75,463 25.75,463 25.75,463">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0.333 0.667,0.667 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="333" android:startOffset="2133" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 25.75,463C 25.75,463 -4.25,463 -4.25,463">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="1300" android:startOffset="0" android:valueFrom="0.5" android:valueTo="0.5" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="1300" android:startOffset="0" android:valueFrom="0.5" android:valueTo="0.5" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="417" android:startOffset="1300" android:valueFrom="0.5" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="417" android:startOffset="1300" android:valueFrom="0.5" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="417" android:startOffset="1717" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="417" android:startOffset="1717" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="200" android:startOffset="2133" android:valueFrom="1" android:valueTo="0.5" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="200" android:startOffset="2133" android:valueFrom="1" android:valueTo="0.5" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1300" android:valueFrom="0" android:valueTo="0.5" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0.5" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="867" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1033" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G_D_0_P_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="pathData" android:duration="167" android:startOffset="867" android:valueFrom="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueTo="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueType="pathType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="pathData" android:duration="467" android:startOffset="1033" android:valueFrom="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueTo="M0 167.99 C35.35,167.99 64,139.34 64,104 C64,104 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,104 -64,104 C-64,139.34 -35.34,167.99 0,167.99c " android:valueType="pathType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1033" android:valueFrom="0" android:valueTo="-1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2267" android:valueFrom="-1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G_D_0_P_0_G_0_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="167" android:startOffset="867" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -166,0C -138.333,0 -193.667,0 -166,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="467" android:startOffset="1033" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -166,0C -138.333,0 -27.667,0 0,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="867" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2267" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="867" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2267" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="time_group">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateX" android:duration="4017" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
-</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_back_right.xml b/quickstep/res/drawable/gesture_tutorial_back_right.xml
deleted file mode 100644
index 77d9924..0000000
--- a/quickstep/res/drawable/gesture_tutorial_back_right.xml
+++ /dev/null
@@ -1,561 +0,0 @@
-<animated-vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt">
- <aapt:attr name="android:drawable">
- <vector android:height="892dp" android:width="412dp" android:viewportHeight="892" android:viewportWidth="412">
- <group android:name="_R_G">
- <group android:name="_R_G_L_7_G" android:translateX="206" android:translateY="446">
- <path android:name="_R_G_L_7_G_D_0_P_0" android:fillColor="#f1f3f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c "/>
- </group>
- <group android:name="_R_G_L_6_G" android:pivotX="206" android:pivotY="446" android:scaleX="1" android:scaleY="1">
- <group android:name="_R_G_L_6_G_L_3_G" android:translateX="206" android:translateY="446" android:scaleX="1.2" android:scaleY="1.2">
- <path android:name="_R_G_L_6_G_L_3_G_D_0_P_0" android:fillColor="#f1f3f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G">
- <group android:name="_R_G_L_6_G_L_2_G_L_11_G" android:translateX="206" android:translateY="496.5">
- <path android:name="_R_G_L_6_G_L_2_G_L_11_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M235.5 -452.14 C235.5,-452.14 235.5,452.14 235.5,452.14 C235.5,452.14 -235.5,452.14 -235.5,452.14 C-235.5,452.14 -235.5,-452.14 -235.5,-452.14 C-235.5,-452.14 235.5,-452.14 235.5,-452.14c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_10_G" android:translateX="182.5" android:translateY="831">
- <path android:name="_R_G_L_6_G_L_2_G_L_10_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_9_G" android:translateX="186" android:translateY="801">
- <path android:name="_R_G_L_6_G_L_2_G_L_9_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -7 C162,-7 162,7 162,7 C162,9.21 160.21,11 158,11 C158,11 -158,11 -158,11 C-160.21,11 -162,9.21 -162,7 C-162,7 -162,-7 -162,-7 C-162,-9.21 -160.21,-11 -158,-11 C-158,-11 158,-11 158,-11 C160.21,-11 162,-9.21 162,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_8_G" android:translateX="119" android:translateY="755">
- <path android:name="_R_G_L_6_G_L_2_G_L_8_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M95 -7 C95,-7 95,7 95,7 C95,9.21 93.21,11 91,11 C91,11 -91,11 -91,11 C-93.21,11 -95,9.21 -95,7 C-95,7 -95,-7 -95,-7 C-95,-9.21 -93.21,-11 -91,-11 C-91,-11 91,-11 91,-11 C93.21,-11 95,-9.21 95,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_7_G" android:translateX="182.5" android:translateY="725">
- <path android:name="_R_G_L_6_G_L_2_G_L_7_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_6_G" android:translateX="197.5" android:translateY="695">
- <path android:name="_R_G_L_6_G_L_2_G_L_6_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M173.5 -7 C173.5,-7 173.5,7 173.5,7 C173.5,9.21 171.71,11 169.5,11 C169.5,11 -169.5,11 -169.5,11 C-171.71,11 -173.5,9.21 -173.5,7 C-173.5,7 -173.5,-7 -173.5,-7 C-173.5,-9.21 -171.71,-11 -169.5,-11 C-169.5,-11 169.5,-11 169.5,-11 C171.71,-11 173.5,-9.21 173.5,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_5_G" android:translateX="192" android:translateY="665">
- <path android:name="_R_G_L_6_G_L_2_G_L_5_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M168 -7 C168,-7 168,7 168,7 C168,9.21 166.21,11 164,11 C164,11 -164,11 -164,11 C-166.21,11 -168,9.21 -168,7 C-168,7 -168,-7 -168,-7 C-168,-9.21 -166.21,-11 -164,-11 C-164,-11 164,-11 164,-11 C166.21,-11 168,-9.21 168,-7c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_4_G" android:translateX="105.5" android:translateY="360">
- <path android:name="_R_G_L_6_G_L_2_G_L_4_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_3_G" android:translateX="47.5" android:translateY="360">
- <path android:name="_R_G_L_6_G_L_2_G_L_3_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_2_G" android:translateX="142.5" android:translateY="328">
- <path android:name="_R_G_L_6_G_L_2_G_L_2_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M118.5 -14 C118.5,-14 118.5,14 118.5,14 C118.5,16.21 116.71,18 114.5,18 C114.5,18 -114.5,18 -114.5,18 C-116.71,18 -118.5,16.21 -118.5,14 C-118.5,14 -118.5,-14 -118.5,-14 C-118.5,-16.21 -116.71,-18 -114.5,-18 C-114.5,-18 114.5,-18 114.5,-18 C116.71,-18 118.5,-16.21 118.5,-14c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_1_G" android:translateX="186" android:translateY="284">
- <path android:name="_R_G_L_6_G_L_2_G_L_1_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -14 C162,-14 162,14 162,14 C162,16.21 160.21,18 158,18 C158,18 -158,18 -158,18 C-160.21,18 -162,16.21 -162,14 C-162,14 -162,-14 -162,-14 C-162,-16.21 -160.21,-18 -158,-18 C-158,-18 158,-18 158,-18 C160.21,-18 162,-16.21 162,-14c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_2_G_L_0_G" android:translateX="155" android:translateY="240">
- <path android:name="_R_G_L_6_G_L_2_G_L_0_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M131 -14 C131,-14 131,14 131,14 C131,16.21 129.21,18 127,18 C127,18 -127,18 -127,18 C-129.21,18 -131,16.21 -131,14 C-131,14 -131,-14 -131,-14 C-131,-16.21 -129.21,-18 -127,-18 C-127,-18 127,-18 127,-18 C129.21,-18 131,-16.21 131,-14c "/>
- </group>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G" android:translateX="24" android:translateY="390">
- <group android:name="_R_G_L_6_G_L_1_G_L_7_G" android:translateX="182" android:translateY="120"/>
- <group android:name="_R_G_L_6_G_L_1_G_L_6_G" android:translateX="182" android:translateY="120">
- <path android:name="_R_G_L_6_G_L_1_G_L_6_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M182 -116 C182,-116 182,116 182,116 C182,118.21 180.21,120 178,120 C178,120 -178,120 -178,120 C-180.21,120 -182,118.21 -182,116 C-182,116 -182,-116 -182,-116 C-182,-118.21 -180.21,-120 -178,-120 C-178,-120 178,-120 178,-120 C180.21,-120 182,-118.21 182,-116c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_5_G" android:translateX="77.322" android:translateY="150.552">
- <path android:name="_R_G_L_6_G_L_1_G_L_5_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- <path android:name="_R_G_L_6_G_L_1_G_L_5_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_4_G" android:translateX="38.772" android:translateY="121.73">
- <path android:name="_R_G_L_6_G_L_1_G_L_4_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- <path android:name="_R_G_L_6_G_L_1_G_L_4_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_3_G" android:translateX="183" android:translateY="222">
- <path android:name="_R_G_L_6_G_L_1_G_L_3_G_D_0_P_0" android:fillColor="#000000" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- <path android:name="_R_G_L_6_G_L_1_G_L_3_G_D_1_P_0" android:strokeColor="#9aa0a6" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="4" android:strokeAlpha="1" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_2_G" android:translateX="265.619" android:translateY="162.331">
- <path android:name="_R_G_L_6_G_L_1_G_L_2_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- <path android:name="_R_G_L_6_G_L_1_G_L_2_G_D_1_P_0" android:strokeColor="#a8cbfe" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_1_G" android:translateX="319.271" android:translateY="37.945">
- <path android:name="_R_G_L_6_G_L_1_G_L_1_G_D_0_P_0" android:fillColor="#feefc3" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M13.42 2.99 C14.95,-4.17 9.93,-11.31 2.21,-12.96 C-0.9,-13.62 -3.97,-13.3 -6.64,-12.2 C-6.58,-12.19 -6.53,-12.18 -6.48,-12.17 C-1.03,-11.01 2.52,-5.97 1.44,-0.92 C0.36,4.13 -4.94,7.28 -10.4,6.12 C-11.6,5.86 -12.7,5.42 -13.69,4.83 C-11.9,8.78 -8.15,11.93 -3.34,12.96 C4.38,14.61 11.88,10.14 13.42,2.99c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_1_G_L_0_G" android:translateX="179.5" android:translateY="73.351">
- <path android:name="_R_G_L_6_G_L_1_G_L_0_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M51.08 -40.95 C51.08,-40.95 50.55,-42.54 50.55,-42.54 C50.55,-42.54 49.67,-41.13 49.67,-41.13 C49.67,-41.13 48.17,-41.21 48.17,-41.21 C48.17,-41.21 49.05,-39.8 49.05,-39.8 C49.05,-39.8 48.61,-38.22 48.61,-38.22 C48.61,-38.22 50.02,-38.74 50.02,-38.74 C50.02,-38.74 51.35,-37.69 51.35,-37.69 C51.35,-37.69 51.26,-39.45 51.26,-39.45 C51.26,-39.45 52.59,-40.42 52.59,-40.42 C52.59,-40.42 51.08,-40.95 51.08,-40.95c M8.78 30.58 C8.78,30.58 8.25,28.99 8.25,28.99 C8.25,28.99 7.37,30.4 7.37,30.4 C7.37,30.4 5.87,30.31 5.87,30.31 C5.87,30.31 6.75,31.72 6.75,31.72 C6.75,31.72 6.31,33.31 6.31,33.31 C6.31,33.31 7.72,32.78 7.72,32.78 C7.72,32.78 9.05,33.84 9.05,33.84 C9.05,33.84 8.96,32.08 8.96,32.08 C8.96,32.08 10.29,31.11 10.29,31.11 C10.29,31.11 8.78,30.58 8.78,30.58c M19.38 -61.67 C19.38,-61.67 18.94,-63.35 18.94,-63.35 C18.94,-63.35 17.97,-61.94 17.97,-61.94 C17.97,-61.94 16.47,-61.94 16.47,-61.94 C16.47,-61.94 17.35,-60.62 17.35,-60.62 C17.35,-60.62 16.91,-58.94 16.91,-58.94 C16.91,-58.94 18.41,-59.56 18.41,-59.56 C18.41,-59.56 19.65,-58.5 19.65,-58.5 C19.65,-58.5 19.56,-60.18 19.56,-60.18 C19.56,-60.18 20.88,-61.23 20.88,-61.23 C20.88,-61.23 19.38,-61.67 19.38,-61.67c M-32.98 35.08 C-32.98,35.08 -33.51,33.4 -33.51,33.4 C-33.51,33.4 -34.4,34.81 -34.4,34.81 C-34.4,34.81 -35.9,34.81 -35.9,34.81 C-35.9,34.81 -35.01,36.22 -35.01,36.22 C-35.01,36.22 -35.45,37.81 -35.45,37.81 C-35.45,37.81 -34.04,37.28 -34.04,37.28 C-34.04,37.28 -32.72,38.25 -32.72,38.25 C-32.72,38.25 -32.81,36.58 -32.81,36.58 C-32.81,36.58 -31.48,35.6 -31.48,35.6 C-31.48,35.6 -32.98,35.08 -32.98,35.08c M45.34 7.56 C45.34,7.56 44.81,5.97 44.81,5.97 C44.81,5.97 43.93,7.38 43.93,7.38 C43.93,7.38 42.34,7.3 42.34,7.3 C42.34,7.3 43.31,8.71 43.31,8.71 C43.31,8.71 42.87,10.29 42.87,10.29 C42.87,10.29 44.28,9.77 44.28,9.77 C44.28,9.77 45.52,10.82 45.52,10.82 C45.52,10.82 45.52,9.06 45.52,9.06 C45.52,9.06 46.76,8.09 46.76,8.09 C46.76,8.09 45.34,7.56 45.34,7.56c M-9.59 -41.67 C-9.59,-41.67 -10.12,-43.35 -10.12,-43.35 C-10.12,-43.35 -11,-41.94 -11,-41.94 C-11,-41.94 -12.5,-41.94 -12.5,-41.94 C-12.5,-41.94 -11.62,-40.62 -11.62,-40.62 C-11.62,-40.62 -12.06,-38.94 -12.06,-38.94 C-12.06,-38.94 -10.65,-39.56 -10.65,-39.56 C-10.65,-39.56 -9.32,-38.5 -9.32,-38.5 C-9.32,-38.5 -9.41,-40.26 -9.41,-40.26 C-9.41,-40.26 -8.09,-41.23 -8.09,-41.23 C-8.09,-41.23 -9.59,-41.67 -9.59,-41.67c M97.74 -23.97 C97.74,-23.97 97.03,-26.35 97.03,-26.35 C97.03,-26.35 95.8,-24.32 95.8,-24.32 C95.8,-24.32 93.5,-24.32 93.5,-24.32 C93.5,-24.32 94.91,-22.38 94.91,-22.38 C94.91,-22.38 94.21,-20 94.21,-20 C94.21,-20 96.33,-20.88 96.33,-20.88 C96.33,-20.88 98.09,-19.38 98.09,-19.38 C98.09,-19.38 98.09,-21.85 98.09,-21.85 C98.09,-21.85 99.86,-23.26 99.86,-23.26 C99.86,-23.26 97.74,-23.97 97.74,-23.97c M167.29 43.28 C167.29,43.28 166.67,40.9 166.67,40.9 C166.67,40.9 165.35,42.93 165.35,42.93 C165.35,42.93 163.14,42.93 163.14,42.93 C163.14,42.93 164.47,44.87 164.47,44.87 C164.47,44.87 163.76,47.25 163.76,47.25 C163.76,47.25 165.88,46.37 165.88,46.37 C165.88,46.37 167.73,47.87 167.73,47.87 C167.73,47.87 167.65,45.4 167.65,45.4 C167.65,45.4 169.5,43.98 169.5,43.98 C169.5,43.98 167.29,43.28 167.29,43.28c M-1.1 -1.79 C-1.1,-1.79 -1.72,-4.08 -1.72,-4.08 C-1.72,-4.08 -3.05,-2.14 -3.05,-2.14 C-3.05,-2.14 -5.25,-2.14 -5.25,-2.14 C-5.25,-2.14 -3.93,-0.11 -3.93,-0.11 C-3.93,-0.11 -4.64,2.18 -4.64,2.18 C-4.64,2.18 -2.52,1.38 -2.52,1.38 C-2.52,1.38 -0.66,2.8 -0.66,2.8 C-0.66,2.8 -0.75,0.41 -0.75,0.41 C-0.75,0.41 1.1,-1.08 1.1,-1.08 C1.1,-1.08 -1.1,-1.79 -1.1,-1.79c M-60.89 -5.23 C-60.89,-5.23 -61.59,-7.61 -61.59,-7.61 C-61.59,-7.61 -62.83,-5.58 -62.83,-5.58 C-62.83,-5.58 -65.13,-5.58 -65.13,-5.58 C-65.13,-5.58 -63.71,-3.64 -63.71,-3.64 C-63.71,-3.64 -64.42,-1.26 -64.42,-1.26 C-64.42,-1.26 -62.39,-2.14 -62.39,-2.14 C-62.39,-2.14 -60.53,-0.64 -60.53,-0.64 C-60.53,-0.64 -60.62,-3.11 -60.62,-3.11 C-60.62,-3.11 -58.77,-4.52 -58.77,-4.52 C-58.77,-4.52 -60.89,-5.23 -60.89,-5.23c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-51.26 -42.98 C-51.26,-42.98 -54.09,-45.01 -54.09,-45.01 C-54.09,-45.01 -53.91,-41.57 -53.91,-41.57 C-53.91,-41.57 -56.65,-39.54 -56.65,-39.54 C-56.65,-39.54 -53.38,-38.57 -53.38,-38.57 C-53.38,-38.57 -52.32,-35.3 -52.32,-35.3 C-52.32,-35.3 -50.38,-38.13 -50.38,-38.13 C-50.38,-38.13 -46.94,-38.22 -46.94,-38.22 C-46.94,-38.22 -49.05,-40.86 -49.05,-40.86 C-49.05,-40.86 -47.99,-44.21 -47.99,-44.21 C-47.99,-44.21 -51.26,-42.98 -51.26,-42.98c M-92.06 -47.92 C-92.06,-47.92 -92.59,-49.59 -92.59,-49.59 C-92.59,-49.59 -93.47,-48.18 -93.47,-48.18 C-93.47,-48.18 -95.06,-48.18 -95.06,-48.18 C-95.06,-48.18 -94.09,-46.86 -94.09,-46.86 C-94.09,-46.86 -94.53,-45.18 -94.53,-45.18 C-94.53,-45.18 -93.12,-45.8 -93.12,-45.8 C-93.12,-45.8 -91.88,-44.74 -91.88,-44.74 C-91.88,-44.74 -91.88,-46.42 -91.88,-46.42 C-91.88,-46.42 -90.65,-47.47 -90.65,-47.47 C-90.65,-47.47 -92.06,-47.92 -92.06,-47.92c M62.83 -13.34 C62.83,-13.34 62.39,-14.93 62.39,-14.93 C62.39,-14.93 61.5,-13.52 61.5,-13.52 C61.5,-13.52 59.91,-13.52 59.91,-13.52 C59.91,-13.52 60.89,-12.2 60.89,-12.2 C60.89,-12.2 60.36,-10.52 60.36,-10.52 C60.36,-10.52 61.86,-11.14 61.86,-11.14 C61.86,-11.14 63.09,-10.08 63.09,-10.08 C63.09,-10.08 63.09,-11.84 63.09,-11.84 C63.09,-11.84 64.33,-12.81 64.33,-12.81 C64.33,-12.81 62.83,-13.34 62.83,-13.34c M-155.99 -40.95 C-155.99,-40.95 -156.43,-42.54 -156.43,-42.54 C-156.43,-42.54 -157.32,-41.13 -157.32,-41.13 C-157.32,-41.13 -158.91,-41.21 -158.91,-41.21 C-158.91,-41.21 -157.93,-39.8 -157.93,-39.8 C-157.93,-39.8 -158.46,-38.22 -158.46,-38.22 C-158.46,-38.22 -156.96,-38.74 -156.96,-38.74 C-156.96,-38.74 -155.73,-37.69 -155.73,-37.69 C-155.73,-37.69 -155.73,-39.45 -155.73,-39.45 C-155.73,-39.45 -154.49,-40.42 -154.49,-40.42 C-154.49,-40.42 -155.99,-40.95 -155.99,-40.95c M141.24 26.52 C141.24,26.52 140.71,24.85 140.71,24.85 C140.71,24.85 139.83,26.26 139.83,26.26 C139.83,26.26 138.33,26.26 138.33,26.26 C138.33,26.26 139.21,27.67 139.21,27.67 C139.21,27.67 138.77,29.26 138.77,29.26 C138.77,29.26 140.18,28.73 140.18,28.73 C140.18,28.73 141.51,29.7 141.51,29.7 C141.51,29.7 141.42,28.02 141.42,28.02 C141.42,28.02 142.74,27.05 142.74,27.05 C142.74,27.05 141.24,26.52 141.24,26.52c M111.4 -51.27 C111.4,-51.27 110.95,-52.94 110.95,-52.94 C110.95,-52.94 110.07,-51.53 110.07,-51.53 C110.07,-51.53 108.48,-51.53 108.48,-51.53 C108.48,-51.53 109.45,-50.21 109.45,-50.21 C109.45,-50.21 108.92,-48.53 108.92,-48.53 C108.92,-48.53 110.42,-49.15 110.42,-49.15 C110.42,-49.15 111.66,-48.09 111.66,-48.09 C111.66,-48.09 111.66,-49.86 111.66,-49.86 C111.66,-49.86 112.9,-50.83 112.9,-50.83 C112.9,-50.83 111.4,-51.27 111.4,-51.27c M-66.59 53.33 C-66.59,53.33 -67.03,51.65 -67.03,51.65 C-67.03,51.65 -67.91,53.06 -67.91,53.06 C-67.91,53.06 -69.5,53.06 -69.5,53.06 C-69.5,53.06 -68.53,54.47 -68.53,54.47 C-68.53,54.47 -69.06,56.06 -69.06,56.06 C-69.06,56.06 -67.56,55.53 -67.56,55.53 C-67.56,55.53 -66.32,56.5 -66.32,56.5 C-66.32,56.5 -66.32,54.82 -66.32,54.82 C-66.32,54.82 -65.08,53.77 -65.08,53.77 C-65.08,53.77 -66.59,53.33 -66.59,53.33c M-50.59 59.33 C-50.59,59.33 -51.12,57.65 -51.12,57.65 C-51.12,57.65 -52,59.06 -52,59.06 C-52,59.06 -53.5,59.06 -53.5,59.06 C-53.5,59.06 -52.62,60.38 -52.62,60.38 C-52.62,60.38 -53.06,62.06 -53.06,62.06 C-53.06,62.06 -51.65,61.53 -51.65,61.53 C-51.65,61.53 -50.32,62.5 -50.32,62.5 C-50.32,62.5 -50.41,60.82 -50.41,60.82 C-50.41,60.82 -49.08,59.77 -49.08,59.77 C-49.08,59.77 -50.59,59.33 -50.59,59.33c M29.98 -16.08 C29.98,-16.08 29.27,-18.46 29.27,-18.46 C29.27,-18.46 27.95,-16.43 27.95,-16.43 C27.95,-16.43 25.74,-16.43 25.74,-16.43 C25.74,-16.43 27.06,-14.49 27.06,-14.49 C27.06,-14.49 26.36,-12.11 26.36,-12.11 C26.36,-12.11 28.48,-12.9 28.48,-12.9 C28.48,-12.9 30.33,-11.49 30.33,-11.49 C30.33,-11.49 30.24,-13.96 30.24,-13.96 C30.24,-13.96 32.1,-15.37 32.1,-15.37 C32.1,-15.37 29.98,-16.08 29.98,-16.08c M81.28 55.98 C81.28,55.98 80.58,53.6 80.58,53.6 C80.58,53.6 79.25,55.63 79.25,55.63 C79.25,55.63 77.04,55.63 77.04,55.63 C77.04,55.63 78.37,57.57 78.37,57.57 C78.37,57.57 77.66,59.95 77.66,59.95 C77.66,59.95 79.78,59.07 79.78,59.07 C79.78,59.07 81.64,60.56 81.64,60.56 C81.64,60.56 81.55,58.1 81.55,58.1 C81.55,58.1 83.4,56.68 83.4,56.68 C83.4,56.68 81.28,55.98 81.28,55.98c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-74.05 21.76 C-74.05,21.76 -74.66,19.47 -74.66,19.47 C-74.66,19.47 -75.99,21.49 -75.99,21.49 C-75.99,21.49 -78.2,21.41 -78.2,21.41 C-78.2,21.41 -76.87,23.43 -76.87,23.43 C-76.87,23.43 -77.58,25.73 -77.58,25.73 C-77.58,25.73 -75.46,24.93 -75.46,24.93 C-75.46,24.93 -73.6,26.43 -73.6,26.43 C-73.6,26.43 -73.69,23.96 -73.69,23.96 C-73.69,23.96 -71.84,22.46 -71.84,22.46 C-71.84,22.46 -74.05,21.76 -74.05,21.76c M8.98 55.68 C8.98,55.68 6.15,53.65 6.15,53.65 C6.15,53.65 6.24,57.09 6.24,57.09 C6.24,57.09 3.5,59.12 3.5,59.12 C3.5,59.12 6.86,60.09 6.86,60.09 C6.86,60.09 7.92,63.35 7.92,63.35 C7.92,63.35 9.86,60.44 9.86,60.44 C9.86,60.44 13.3,60.44 13.3,60.44 C13.3,60.44 11.18,57.71 11.18,57.71 C11.18,57.71 12.15,54.44 12.15,54.44 C12.15,54.44 8.98,55.68 8.98,55.68c M124.89 -2.41 C124.89,-2.41 122.06,-4.35 122.06,-4.35 C122.06,-4.35 122.24,-0.91 122.24,-0.91 C122.24,-0.91 119.5,1.12 119.5,1.12 C119.5,1.12 122.77,2 122.77,2 C122.77,2 123.83,5.26 123.83,5.26 C123.83,5.26 125.77,2.44 125.77,2.44 C125.77,2.44 129.21,2.44 129.21,2.44 C129.21,2.44 127.09,-0.29 127.09,-0.29 C127.09,-0.29 128.15,-3.56 128.15,-3.56 C128.15,-3.56 124.89,-2.41 124.89,-2.41c M77.31 19.91 C77.31,19.91 74.57,17.88 74.57,17.88 C74.57,17.88 74.66,21.32 74.66,21.32 C74.66,21.32 71.92,23.35 71.92,23.35 C71.92,23.35 75.19,24.32 75.19,24.32 C75.19,24.32 76.34,27.58 76.34,27.58 C76.34,27.58 78.19,24.67 78.19,24.67 C78.19,24.67 81.64,24.67 81.64,24.67 C81.64,24.67 79.52,21.94 79.52,21.94 C79.52,21.94 80.58,18.67 80.58,18.67 C80.58,18.67 77.31,19.91 77.31,19.91c M-28.11 7.68 C-28.11,7.68 -30.94,5.65 -30.94,5.65 C-30.94,5.65 -30.76,9.09 -30.76,9.09 C-30.76,9.09 -33.5,11.12 -33.5,11.12 C-33.5,11.12 -30.23,12.09 -30.23,12.09 C-30.23,12.09 -29.17,15.35 -29.17,15.35 C-29.17,15.35 -27.23,12.44 -27.23,12.44 C-27.23,12.44 -23.79,12.44 -23.79,12.44 C-23.79,12.44 -25.91,9.71 -25.91,9.71 C-25.91,9.71 -24.85,6.44 -24.85,6.44 C-24.85,6.44 -28.11,7.68 -28.11,7.68c M-119.43 -20.22 C-119.43,-20.22 -122.26,-22.16 -122.26,-22.16 C-122.26,-22.16 -122.08,-18.72 -122.08,-18.72 C-122.08,-18.72 -124.82,-16.7 -124.82,-16.7 C-124.82,-16.7 -121.55,-15.81 -121.55,-15.81 C-121.55,-15.81 -120.49,-12.55 -120.49,-12.55 C-120.49,-12.55 -118.55,-15.37 -118.55,-15.37 C-118.55,-15.37 -115.11,-15.37 -115.11,-15.37 C-115.11,-15.37 -117.23,-18.11 -117.23,-18.11 C-117.23,-18.11 -116.17,-21.37 -116.17,-21.37 C-116.17,-21.37 -119.43,-20.22 -119.43,-20.22c "/>
- </group>
- </group>
- <group android:name="_R_G_L_6_G_L_0_G">
- <group android:name="_R_G_L_6_G_L_0_G_L_2_G" android:translateX="206" android:translateY="145">
- <path android:name="_R_G_L_6_G_L_0_G_L_2_G_D_0_P_0" android:fillColor="#e8eaed" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M230.57 -95.63 C230.57,-95.63 230.57,42.37 230.57,42.37 C230.57,43.47 229.56,44.37 228.33,44.37 C228.33,44.37 -228.33,44.37 -228.33,44.37 C-229.56,44.37 -230.57,43.47 -230.57,42.37 C-230.57,42.37 -230.57,-95.63 -230.57,-95.63 C-230.57,-96.73 -229.56,-97.63 -228.33,-97.63 C-228.33,-97.63 228.33,-97.63 228.33,-97.63 C229.56,-97.63 230.57,-96.73 230.57,-95.63c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_0_G_L_1_G" android:translateX="206" android:translateY="145">
- <path android:name="_R_G_L_6_G_L_0_G_L_1_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M109 -14 C109,-14 109,14 109,14 C109,15.1 108.1,16 107,16 C107,16 -107,16 -107,16 C-108.1,16 -109,15.1 -109,14 C-109,14 -109,-14 -109,-14 C-109,-15.1 -108.1,-16 -107,-16 C-107,-16 107,-16 107,-16 C108.1,-16 109,-15.1 109,-14c "/>
- </group>
- <group android:name="_R_G_L_6_G_L_0_G_L_0_G" android:translateX="46" android:translateY="145">
- <path android:name="_R_G_L_6_G_L_0_G_L_0_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M22 -14 C22,-14 22,14 22,14 C22,18.42 18.42,22 14,22 C14,22 -14,22 -14,22 C-18.42,22 -22,18.42 -22,14 C-22,14 -22,-14 -22,-14 C-22,-18.42 -18.42,-22 -14,-22 C-14,-22 14,-22 14,-22 C18.42,-22 22,-18.42 22,-14c "/>
- </group>
- </group>
- </group>
- <group android:name="_R_G_L_5_G" android:scaleY="0">
- <group android:name="_R_G_L_5_G_L_11_G" android:translateX="206" android:translateY="446" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_11_G_D_0_P_0" android:fillColor="#f1f3f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_10_G" android:translateX="148" android:translateY="441" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_10_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M48 -8 C48,-8 48,8 48,8 C48,10.21 46.21,12 44,12 C44,12 -44,12 -44,12 C-46.21,12 -48,10.21 -48,8 C-48,8 -48,-8 -48,-8 C-48,-10.21 -46.21,-12 -44,-12 C-44,-12 44,-12 44,-12 C46.21,-12 48,-10.21 48,-8c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_9_G" android:translateX="264" android:translateY="441" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_9_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M48 -8 C48,-8 48,8 48,8 C48,10.21 46.21,12 44,12 C44,12 -44,12 -44,12 C-46.21,12 -48,10.21 -48,8 C-48,8 -48,-8 -48,-8 C-48,-10.21 -46.21,-12 -44,-12 C-44,-12 44,-12 44,-12 C46.21,-12 48,-10.21 48,-8c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_8_G" android:translateX="206" android:translateY="380" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_8_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M176 0 C176,0 176,0 176,0 C176,14.9 163.9,27 149,27 C149,27 -149,27 -149,27 C-163.9,27 -176,14.9 -176,0 C-176,0 -176,0 -176,0 C-176,-14.9 -163.9,-27 -149,-27 C-149,-27 149,-27 149,-27 C163.9,-27 176,-14.9 176,0c "/>
- <path android:name="_R_G_L_5_G_L_8_G_D_1_P_0" android:strokeColor="#bdc1c6" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="4" android:strokeAlpha="1" android:pathData=" M176 0 C176,0 176,0 176,0 C176,14.9 163.9,27 149,27 C149,27 -149,27 -149,27 C-163.9,27 -176,14.9 -176,0 C-176,0 -176,0 -176,0 C-176,-14.9 -163.9,-27 -149,-27 C-149,-27 149,-27 149,-27 C163.9,-27 176,-14.9 176,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_7_G" android:translateX="120" android:translateY="268" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_7_G_D_0_P_0" android:fillColor="#4285f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M26 0 C26,0 26,0 26,0 C26,14.35 14.35,26 0,26 C0,26 0,26 0,26 C-14.35,26 -26,14.35 -26,0 C-26,0 -26,0 -26,0 C-26,-14.35 -14.35,-26 0,-26 C0,-26 0,-26 0,-26 C14.35,-26 26,-14.35 26,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_6_G" android:translateX="167" android:translateY="278" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_6_G_D_0_P_0" android:fillColor="#e94235" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M17 0 C17,0 17,0 17,0 C17,9.38 9.38,17 0,17 C0,17 0,17 0,17 C-9.38,17 -17,9.38 -17,0 C-17,0 -17,0 -17,0 C-17,-9.38 -9.38,-17 0,-17 C0,-17 0,-17 0,-17 C9.38,-17 17,-9.38 17,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_5_G" android:translateX="205" android:translateY="278" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_5_G_D_0_P_0" android:fillColor="#fabb05" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M17 0 C17,0 17,0 17,0 C17,9.38 9.38,17 0,17 C0,17 0,17 0,17 C-9.38,17 -17,9.38 -17,0 C-17,0 -17,0 -17,0 C-17,-9.38 -9.38,-17 0,-17 C0,-17 0,-17 0,-17 C9.38,-17 17,-9.38 17,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_4_G" android:translateX="243" android:translateY="286" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_4_G_D_0_P_0" android:fillColor="#4285f4" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M17 -8 C17,-8 17,8 17,8 C17,17.38 9.38,25 0,25 C0,25 0,25 0,25 C-9.38,25 -17,17.38 -17,8 C-17,8 -17,-8 -17,-8 C-17,-17.38 -9.38,-25 0,-25 C0,-25 0,-25 0,-25 C9.38,-25 17,-17.38 17,-8c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_3_G" android:translateX="272" android:translateY="269" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_3_G_D_0_P_0" android:fillColor="#34a853" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M8 -17 C8,-17 8,17 8,17 C8,21.42 4.42,25 0,25 C0,25 0,25 0,25 C-4.42,25 -8,21.42 -8,17 C-8,17 -8,-17 -8,-17 C-8,-21.42 -4.42,-25 0,-25 C0,-25 0,-25 0,-25 C4.42,-25 8,-21.42 8,-17c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_2_G" android:translateX="301" android:translateY="278" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_2_G_D_0_P_0" android:fillColor="#e94235" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M17 0 C17,0 17,0 17,0 C17,9.38 9.38,17 0,17 C0,17 0,17 0,17 C-9.38,17 -17,9.38 -17,0 C-17,0 -17,0 -17,0 C-17,-9.38 -9.38,-17 0,-17 C0,-17 0,-17 0,-17 C9.38,-17 17,-9.38 17,0c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_1_G" android:translateX="42" android:translateY="140" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_1_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M12 -8 C12,-8 12,8 12,8 C12,10.21 10.21,12 8,12 C8,12 -8,12 -8,12 C-10.21,12 -12,10.21 -12,8 C-12,8 -12,-8 -12,-8 C-12,-10.21 -10.21,-12 -8,-12 C-8,-12 8,-12 8,-12 C10.21,-12 12,-10.21 12,-8c "/>
- </group>
- <group android:name="_R_G_L_5_G_L_0_G" android:translateX="92.5" android:translateY="140" android:scaleY="0">
- <path android:name="_R_G_L_5_G_L_0_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M28.5 -5 C28.5,-5 28.5,5 28.5,5 C28.5,7.21 26.71,9 24.5,9 C24.5,9 -24.5,9 -24.5,9 C-26.71,9 -28.5,7.21 -28.5,5 C-28.5,5 -28.5,-5 -28.5,-5 C-28.5,-7.21 -26.71,-9 -24.5,-9 C-24.5,-9 24.5,-9 24.5,-9 C26.71,-9 28.5,-7.21 28.5,-5c "/>
- </group>
- </group>
- <group android:name="_R_G_L_4_G" android:translateX="206" android:translateY="877">
- <path android:name="_R_G_L_4_G_D_0_P_0" android:fillColor="#373737" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M40 0 C40,0 40,0 40,0 C40,1.1 39.1,2 38,2 C38,2 -38,2 -38,2 C-39.1,2 -40,1.1 -40,0 C-40,0 -40,0 -40,0 C-40,-1.1 -39.1,-2 -38,-2 C-38,-2 38,-2 38,-2 C39.1,-2 40,-1.1 40,0c "/>
- </group>
- <group android:name="_R_G_L_3_G">
- <group android:name="_R_G_L_3_G_L_1_G" android:translateX="206" android:translateY="50.5">
- <path android:name="_R_G_L_3_G_L_1_G_D_0_P_0" android:fillColor="#202124" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -50.5 C206,-50.5 206,50.5 206,50.5 C206,50.5 -206,50.5 -206,50.5 C-206,50.5 -206,-50.5 -206,-50.5 C-206,-50.5 206,-50.5 206,-50.5c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_0_G" android:translateX="206" android:translateY="66.5">
- <path android:name="_R_G_L_3_G_L_0_G_D_0_P_0" android:fillColor="#3c4043" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M190 0 C190,0 190,0 190,0 C190,10.21 181.71,18.5 171.5,18.5 C171.5,18.5 -171.5,18.5 -171.5,18.5 C-181.71,18.5 -190,10.21 -190,0 C-190,0 -190,0 -190,0 C-190,-10.21 -181.71,-18.5 -171.5,-18.5 C-171.5,-18.5 171.5,-18.5 171.5,-18.5 C181.71,-18.5 190,-10.21 190,0c "/>
- </group>
- </group>
- <group android:name="_R_G_L_2_G" android:translateX="382.824" android:translateY="462.5" android:scaleX="-1" android:scaleY="0">
- <group android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0" android:translateX="-60" android:translateY="0">
- <path android:name="_R_G_L_2_G_D_0_P_0" android:fillColor="#000000" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M28.25 0 C28.25,31.2 2.95,56.5 -28.25,56.5 C-28.25,56.5 -28.25,-56.5 -28.25,-56.5 C2.95,-56.5 28.25,-31.2 28.25,0c "/>
- </group>
- </group>
- <group android:name="_R_G_L_1_G" android:translateX="414.087" android:translateY="463" android:scaleX="0.5" android:scaleY="0" android:rotation="180">
- <path android:name="_R_G_L_1_G_D_0_P_0" android:fillColor="#ffffff" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M3.87 -13.45 C3.07,-14.21 1.8,-14.18 1.04,-13.38 C0.28,-12.58 0.31,-11.31 1.11,-10.55 C1.11,-10.55 9.75,-2.32 9.75,-2.32 C9.75,-2.32 -14.75,-2.32 -14.75,-2.32 C-15.85,-2.32 -16.75,-1.43 -16.75,-0.32 C-16.75,0.78 -15.85,1.68 -14.75,1.68 C-14.75,1.68 9.94,1.68 9.94,1.68 C9.94,1.68 1.07,10.59 1.07,10.59 C0.29,11.37 0.29,12.64 1.08,13.42 C1.86,14.2 3.13,14.19 3.9,13.41 C3.9,13.41 16.17,1.09 16.17,1.09 C16.55,0.71 16.76,0.19 16.75,-0.35 C16.74,-0.89 16.52,-1.4 16.13,-1.77 C16.13,-1.77 3.87,-13.45 3.87,-13.45c "/>
- </group>
- <group android:name="_R_G_L_0_G_N_1_T_0" android:translateX="206" android:translateY="446" android:scaleX="-1" android:scaleY="0">
- <group android:name="_R_G_L_0_G" android:translateX="-336.003" android:translateY="-48.003">
- <group android:name="_R_G_L_0_G_L_2_G" android:translateX="295.995" android:translateY="63.997" android:scaleY="0">
- <path android:name="_R_G_L_0_G_L_2_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="0.3" android:fillType="nonZero" android:pathData=" M-166 64 C-130.65,64 -102,35.35 -102,0 C-102,-35.34 -130.65,-64 -166,-64 C-201.34,-64 -230,-35.34 -230,0 C-230,35.35 -201.34,64 -166,64c "/>
- </group>
- <group android:name="_R_G_L_0_G_L_1_G" android:translateX="192" android:translateY="63.997" android:rotation="90" android:scaleX="-1" android:scaleY="0">
- <path android:name="_R_G_L_0_G_L_1_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="0.3" android:fillType="nonZero" android:pathData=" M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c "/>
- </group>
- <group android:name="_R_G_L_0_G_L_0_G" android:translateX="295.995" android:translateY="63.997" android:scaleY="0">
- <group android:name="_R_G_L_0_G_L_0_G_D_0_P_0_G_0_T_0" android:translateX="-166" android:translateY="0">
- <path android:name="_R_G_L_0_G_L_0_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 64 C35.35,64 64,35.35 64,0 C64,-35.34 35.35,-64 0,-64 C-35.34,-64 -64,-35.34 -64,0 C-64,35.35 -35.34,64 0,64c "/>
- </group>
- </group>
- </group>
- </group>
- </group>
- <group android:name="time_group"/>
- </vector>
- </aapt:attr>
- <target android:name="_R_G_L_6_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2283" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2283" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2267" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="2133" android:startOffset="0" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="2133" android:startOffset="0" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="283" android:startOffset="2133" android:valueFrom="1" android:valueTo="0.88012" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="283" android:startOffset="2133" android:valueFrom="1" android:valueTo="0.88012" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2417" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_11_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_10_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2433" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_9_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2433" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_8_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_7_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_5_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_4_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_3_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2367" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_5_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="1133" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -60,0C -50.167,0 -69.833,0 -60,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="667" android:startOffset="1133" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -60,0C -50.167,0 -10.833,0 -1,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="333" android:startOffset="1800" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -1,0C -1,0 -1,0 -1,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0.333 0,0 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="333" android:startOffset="2133" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -1,0C -10.833,0 -50.167,0 -60,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1133" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2467" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="1133" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 414.087,463C 409.087,463 419.087,463 414.087,463">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="583" android:startOffset="1133" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 414.087,463C 409.087,463 389.087,463 384.087,463">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="417" android:startOffset="1717" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 384.087,463C 384.087,463 384.087,463 384.087,463">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0.333 0.667,0.667 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="333" android:startOffset="2133" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 384.087,463C 389.087,463 409.087,463 414.087,463">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="1300" android:startOffset="0" android:valueFrom="0.5" android:valueTo="0.5" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="1300" android:startOffset="0" android:valueFrom="0.5" android:valueTo="0.5" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="417" android:startOffset="1300" android:valueFrom="0.5" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="417" android:startOffset="1300" android:valueFrom="0.5" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="417" android:startOffset="1717" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="417" android:startOffset="1717" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="200" android:startOffset="2133" android:valueFrom="1" android:valueTo="0.5" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="200" android:startOffset="2133" android:valueFrom="1" android:valueTo="0.5" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1300" android:valueFrom="0" android:valueTo="0.5" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2333" android:valueFrom="0.5" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="867" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1033" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G_D_0_P_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="pathData" android:duration="167" android:startOffset="867" android:valueFrom="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueTo="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueType="pathType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="pathData" android:duration="467" android:startOffset="1033" android:valueFrom="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueTo="M0 167.99 C35.35,167.99 64,139.34 64,104 C64,104 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,104 -64,104 C-64,139.34 -35.34,167.99 0,167.99c " android:valueType="pathType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1033" android:valueFrom="0" android:valueTo="-1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2267" android:valueFrom="-1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G_D_0_P_0_G_0_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="167" android:startOffset="867" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -166,0C -138.333,0 -193.667,0 -166,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="467" android:startOffset="1033" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -166,0C -138.333,0 -27.667,0 0,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="867" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2267" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_N_1_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="867" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_N_1_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2267" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="time_group">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateX" android:duration="4017" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
-</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_home.xml b/quickstep/res/drawable/gesture_tutorial_home.xml
deleted file mode 100644
index e77eb74..0000000
--- a/quickstep/res/drawable/gesture_tutorial_home.xml
+++ /dev/null
@@ -1,394 +0,0 @@
-<animated-vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt">
- <aapt:attr name="android:drawable">
- <vector android:height="892dp" android:width="412dp" android:viewportHeight="892" android:viewportWidth="412">
- <group android:name="_R_G">
- <group android:name="_R_G_L_4_G" android:translateX="206" android:translateY="877">
- <path android:name="_R_G_L_4_G_D_0_P_0" android:fillColor="#373737" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M40 0 C40,0 40,0 40,0 C40,1.1 39.1,2 38,2 C38,2 -38,2 -38,2 C-39.1,2 -40,1.1 -40,0 C-40,0 -40,0 -40,0 C-40,-1.1 -39.1,-2 -38,-2 C-38,-2 38,-2 38,-2 C39.1,-2 40,-1.1 40,0c "/>
- </group>
- <group android:name="_R_G_L_3_G">
- <path android:name="_R_G_L_3_G_S" android:fillColor="#000000" android:pathData="M0,0 L412,0 L412,892 L0,892z"/>
- </group>
- <group android:name="_R_G_L_2_G" android:scaleY="0">
- <group android:name="_R_G_L_2_G_L_5_G" android:translateX="206" android:translateY="872" android:scaleY="0">
- <path android:name="_R_G_L_2_G_L_5_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M40 0 C40,0 40,0 40,0 C40,1.1 39.1,2 38,2 C38,2 -38,2 -38,2 C-39.1,2 -40,1.1 -40,0 C-40,0 -40,0 -40,0 C-40,-1.1 -39.1,-2 -38,-2 C-38,-2 38,-2 38,-2 C39.1,-2 40,-1.1 40,0c "/>
- </group>
- <group android:name="_R_G_L_2_G_L_4_G" android:translateX="206" android:translateY="776" android:scaleY="0">
- <path android:name="_R_G_L_2_G_L_4_G_D_0_P_0" android:fillColor="#3c4043" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M180 0 C180,0 180,0 180,0 C180,13.8 168.8,25 155,25 C155,25 -155,25 -155,25 C-168.8,25 -180,13.8 -180,0 C-180,0 -180,0 -180,0 C-180,-13.8 -168.8,-25 -155,-25 C-155,-25 155,-25 155,-25 C168.8,-25 180,-13.8 180,0c "/>
- </group>
- <group android:name="_R_G_L_2_G_L_3_G" android:translateX="56" android:translateY="673" android:scaleY="0">
- <path android:name="_R_G_L_2_G_L_3_G_D_0_P_0" android:fillColor="#8ab4f8" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 -30 C16.56,-30 30,-16.56 30,0 C30,16.56 16.56,30 0,30 C-16.56,30 -30,16.56 -30,0 C-30,-16.56 -16.56,-30 0,-30c "/>
- </group>
- <group android:name="_R_G_L_2_G_L_2_G" android:translateX="156" android:translateY="673" android:scaleY="0">
- <path android:name="_R_G_L_2_G_L_2_G_D_0_P_0" android:fillColor="#f28b82" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 -30 C16.56,-30 30,-16.56 30,0 C30,16.56 16.56,30 0,30 C-16.56,30 -30,16.56 -30,0 C-30,-16.56 -16.56,-30 0,-30c "/>
- </group>
- <group android:name="_R_G_L_2_G_L_1_G" android:translateX="256" android:translateY="673" android:scaleY="0">
- <path android:name="_R_G_L_2_G_L_1_G_D_0_P_0" android:fillColor="#fdd663" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 -30 C16.56,-30 30,-16.56 30,0 C30,16.56 16.56,30 0,30 C-16.56,30 -30,16.56 -30,0 C-30,-16.56 -16.56,-30 0,-30c "/>
- </group>
- <group android:name="_R_G_L_2_G_L_0_G" android:translateX="356" android:translateY="673" android:scaleY="0">
- <path android:name="_R_G_L_2_G_L_0_G_D_0_P_0" android:fillColor="#81c995" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 -30 C16.56,-30 30,-16.56 30,0 C30,16.56 16.56,30 0,30 C-16.56,30 -30,16.56 -30,0 C-30,-16.56 -16.56,-30 0,-30c "/>
- </group>
- </group>
- <group android:name="_R_G_L_1_G_N_1_T_0" android:translateX="206" android:translateY="446" android:scaleX="1" android:scaleY="1">
- <group android:name="_R_G_L_1_G" android:translateX="-206" android:translateY="-446">
- <group android:name="_R_G_L_1_G_L_4_G">
- <group android:name="_R_G_L_1_G_L_4_G_L_11_G" android:translateX="206" android:translateY="472.769" android:scaleX="0.87473" android:scaleY="0.98643">
- <path android:name="_R_G_L_1_G_L_4_G_L_11_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M235.5 -407 C235.5,-407 235.5,407 235.5,407 C235.5,416.93 227.43,425 217.5,425 C217.5,425 -217.5,425 -217.5,425 C-227.43,425 -235.5,416.93 -235.5,407 C-235.5,407 -235.5,-407 -235.5,-407 C-235.5,-416.93 -227.43,-425 -217.5,-425 C-217.5,-425 217.5,-425 217.5,-425 C227.43,-425 235.5,-416.93 235.5,-407c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_10_G" android:translateX="182.5" android:translateY="831">
- <path android:name="_R_G_L_1_G_L_4_G_L_10_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_9_G" android:translateX="186" android:translateY="801">
- <path android:name="_R_G_L_1_G_L_4_G_L_9_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -7 C162,-7 162,7 162,7 C162,9.21 160.21,11 158,11 C158,11 -158,11 -158,11 C-160.21,11 -162,9.21 -162,7 C-162,7 -162,-7 -162,-7 C-162,-9.21 -160.21,-11 -158,-11 C-158,-11 158,-11 158,-11 C160.21,-11 162,-9.21 162,-7c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_8_G" android:translateX="119" android:translateY="755">
- <path android:name="_R_G_L_1_G_L_4_G_L_8_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M95 -7 C95,-7 95,7 95,7 C95,9.21 93.21,11 91,11 C91,11 -91,11 -91,11 C-93.21,11 -95,9.21 -95,7 C-95,7 -95,-7 -95,-7 C-95,-9.21 -93.21,-11 -91,-11 C-91,-11 91,-11 91,-11 C93.21,-11 95,-9.21 95,-7c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_7_G" android:translateX="182.5" android:translateY="725">
- <path android:name="_R_G_L_1_G_L_4_G_L_7_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_6_G" android:translateX="197.5" android:translateY="695">
- <path android:name="_R_G_L_1_G_L_4_G_L_6_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M173.5 -7 C173.5,-7 173.5,7 173.5,7 C173.5,9.21 171.71,11 169.5,11 C169.5,11 -169.5,11 -169.5,11 C-171.71,11 -173.5,9.21 -173.5,7 C-173.5,7 -173.5,-7 -173.5,-7 C-173.5,-9.21 -171.71,-11 -169.5,-11 C-169.5,-11 169.5,-11 169.5,-11 C171.71,-11 173.5,-9.21 173.5,-7c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_5_G" android:translateX="192" android:translateY="665">
- <path android:name="_R_G_L_1_G_L_4_G_L_5_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M168 -7 C168,-7 168,7 168,7 C168,9.21 166.21,11 164,11 C164,11 -164,11 -164,11 C-166.21,11 -168,9.21 -168,7 C-168,7 -168,-7 -168,-7 C-168,-9.21 -166.21,-11 -164,-11 C-164,-11 164,-11 164,-11 C166.21,-11 168,-9.21 168,-7c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_4_G" android:translateX="105.5" android:translateY="360">
- <path android:name="_R_G_L_1_G_L_4_G_L_4_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_3_G" android:translateX="47.5" android:translateY="360">
- <path android:name="_R_G_L_1_G_L_4_G_L_3_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_2_G" android:translateX="142.5" android:translateY="328">
- <path android:name="_R_G_L_1_G_L_4_G_L_2_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M118.5 -14 C118.5,-14 118.5,14 118.5,14 C118.5,16.21 116.71,18 114.5,18 C114.5,18 -114.5,18 -114.5,18 C-116.71,18 -118.5,16.21 -118.5,14 C-118.5,14 -118.5,-14 -118.5,-14 C-118.5,-16.21 -116.71,-18 -114.5,-18 C-114.5,-18 114.5,-18 114.5,-18 C116.71,-18 118.5,-16.21 118.5,-14c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_1_G" android:translateX="186" android:translateY="284">
- <path android:name="_R_G_L_1_G_L_4_G_L_1_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -14 C162,-14 162,14 162,14 C162,16.21 160.21,18 158,18 C158,18 -158,18 -158,18 C-160.21,18 -162,16.21 -162,14 C-162,14 -162,-14 -162,-14 C-162,-16.21 -160.21,-18 -158,-18 C-158,-18 158,-18 158,-18 C160.21,-18 162,-16.21 162,-14c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_4_G_L_0_G" android:translateX="155" android:translateY="240">
- <path android:name="_R_G_L_1_G_L_4_G_L_0_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M131 -14 C131,-14 131,14 131,14 C131,16.21 129.21,18 127,18 C127,18 -127,18 -127,18 C-129.21,18 -131,16.21 -131,14 C-131,14 -131,-14 -131,-14 C-131,-16.21 -129.21,-18 -127,-18 C-127,-18 127,-18 127,-18 C129.21,-18 131,-16.21 131,-14c "/>
- </group>
- </group>
- <group android:name="_R_G_L_1_G_L_3_G" android:translateX="24" android:translateY="390">
- <group android:name="_R_G_L_1_G_L_3_G_L_7_G" android:translateX="182" android:translateY="120"/>
- <group android:name="_R_G_L_1_G_L_3_G_L_6_G" android:translateX="182" android:translateY="120">
- <path android:name="_R_G_L_1_G_L_3_G_L_6_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M182 -116 C182,-116 182,116 182,116 C182,118.21 180.21,120 178,120 C178,120 -178,120 -178,120 C-180.21,120 -182,118.21 -182,116 C-182,116 -182,-116 -182,-116 C-182,-118.21 -180.21,-120 -178,-120 C-178,-120 178,-120 178,-120 C180.21,-120 182,-118.21 182,-116c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_3_G_L_5_G" android:translateX="77.322" android:translateY="150.552">
- <path android:name="_R_G_L_1_G_L_3_G_L_5_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- <path android:name="_R_G_L_1_G_L_3_G_L_5_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_3_G_L_4_G" android:translateX="38.772" android:translateY="121.73">
- <path android:name="_R_G_L_1_G_L_3_G_L_4_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- <path android:name="_R_G_L_1_G_L_3_G_L_4_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_3_G_L_3_G" android:translateX="183" android:translateY="222">
- <path android:name="_R_G_L_1_G_L_3_G_L_3_G_D_0_P_0" android:fillColor="#000000" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- <path android:name="_R_G_L_1_G_L_3_G_L_3_G_D_1_P_0" android:strokeColor="#9aa0a6" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="4" android:strokeAlpha="1" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- </group>
- <group android:name="_R_G_L_1_G_L_3_G_L_2_G" android:translateX="265.619" android:translateY="162.331">
- <path android:name="_R_G_L_1_G_L_3_G_L_2_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- <path android:name="_R_G_L_1_G_L_3_G_L_2_G_D_1_P_0" android:strokeColor="#a8cbfe" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- </group>
- <group android:name="_R_G_L_1_G_L_3_G_L_1_G" android:translateX="319.271" android:translateY="37.945">
- <path android:name="_R_G_L_1_G_L_3_G_L_1_G_D_0_P_0" android:fillColor="#feefc3" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M13.42 2.99 C14.95,-4.17 9.93,-11.31 2.21,-12.96 C-0.9,-13.62 -3.97,-13.3 -6.64,-12.2 C-6.58,-12.19 -6.53,-12.18 -6.48,-12.17 C-1.03,-11.01 2.52,-5.97 1.44,-0.92 C0.36,4.13 -4.94,7.28 -10.4,6.12 C-11.6,5.86 -12.7,5.42 -13.69,4.83 C-11.9,8.78 -8.15,11.93 -3.34,12.96 C4.38,14.61 11.88,10.14 13.42,2.99c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_3_G_L_0_G" android:translateX="179.5" android:translateY="73.351">
- <path android:name="_R_G_L_1_G_L_3_G_L_0_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M51.08 -40.95 C51.08,-40.95 50.55,-42.54 50.55,-42.54 C50.55,-42.54 49.67,-41.13 49.67,-41.13 C49.67,-41.13 48.17,-41.21 48.17,-41.21 C48.17,-41.21 49.05,-39.8 49.05,-39.8 C49.05,-39.8 48.61,-38.22 48.61,-38.22 C48.61,-38.22 50.02,-38.74 50.02,-38.74 C50.02,-38.74 51.35,-37.69 51.35,-37.69 C51.35,-37.69 51.26,-39.45 51.26,-39.45 C51.26,-39.45 52.59,-40.42 52.59,-40.42 C52.59,-40.42 51.08,-40.95 51.08,-40.95c M8.78 30.58 C8.78,30.58 8.25,28.99 8.25,28.99 C8.25,28.99 7.37,30.4 7.37,30.4 C7.37,30.4 5.87,30.31 5.87,30.31 C5.87,30.31 6.75,31.72 6.75,31.72 C6.75,31.72 6.31,33.31 6.31,33.31 C6.31,33.31 7.72,32.78 7.72,32.78 C7.72,32.78 9.05,33.84 9.05,33.84 C9.05,33.84 8.96,32.08 8.96,32.08 C8.96,32.08 10.29,31.11 10.29,31.11 C10.29,31.11 8.78,30.58 8.78,30.58c M19.38 -61.67 C19.38,-61.67 18.94,-63.35 18.94,-63.35 C18.94,-63.35 17.97,-61.94 17.97,-61.94 C17.97,-61.94 16.47,-61.94 16.47,-61.94 C16.47,-61.94 17.35,-60.62 17.35,-60.62 C17.35,-60.62 16.91,-58.94 16.91,-58.94 C16.91,-58.94 18.41,-59.56 18.41,-59.56 C18.41,-59.56 19.65,-58.5 19.65,-58.5 C19.65,-58.5 19.56,-60.18 19.56,-60.18 C19.56,-60.18 20.88,-61.23 20.88,-61.23 C20.88,-61.23 19.38,-61.67 19.38,-61.67c M-32.98 35.08 C-32.98,35.08 -33.51,33.4 -33.51,33.4 C-33.51,33.4 -34.4,34.81 -34.4,34.81 C-34.4,34.81 -35.9,34.81 -35.9,34.81 C-35.9,34.81 -35.01,36.22 -35.01,36.22 C-35.01,36.22 -35.45,37.81 -35.45,37.81 C-35.45,37.81 -34.04,37.28 -34.04,37.28 C-34.04,37.28 -32.72,38.25 -32.72,38.25 C-32.72,38.25 -32.81,36.58 -32.81,36.58 C-32.81,36.58 -31.48,35.6 -31.48,35.6 C-31.48,35.6 -32.98,35.08 -32.98,35.08c M45.34 7.56 C45.34,7.56 44.81,5.97 44.81,5.97 C44.81,5.97 43.93,7.38 43.93,7.38 C43.93,7.38 42.34,7.3 42.34,7.3 C42.34,7.3 43.31,8.71 43.31,8.71 C43.31,8.71 42.87,10.29 42.87,10.29 C42.87,10.29 44.28,9.77 44.28,9.77 C44.28,9.77 45.52,10.82 45.52,10.82 C45.52,10.82 45.52,9.06 45.52,9.06 C45.52,9.06 46.76,8.09 46.76,8.09 C46.76,8.09 45.34,7.56 45.34,7.56c M-9.59 -41.67 C-9.59,-41.67 -10.12,-43.35 -10.12,-43.35 C-10.12,-43.35 -11,-41.94 -11,-41.94 C-11,-41.94 -12.5,-41.94 -12.5,-41.94 C-12.5,-41.94 -11.62,-40.62 -11.62,-40.62 C-11.62,-40.62 -12.06,-38.94 -12.06,-38.94 C-12.06,-38.94 -10.65,-39.56 -10.65,-39.56 C-10.65,-39.56 -9.32,-38.5 -9.32,-38.5 C-9.32,-38.5 -9.41,-40.26 -9.41,-40.26 C-9.41,-40.26 -8.09,-41.23 -8.09,-41.23 C-8.09,-41.23 -9.59,-41.67 -9.59,-41.67c M97.74 -23.97 C97.74,-23.97 97.03,-26.35 97.03,-26.35 C97.03,-26.35 95.8,-24.32 95.8,-24.32 C95.8,-24.32 93.5,-24.32 93.5,-24.32 C93.5,-24.32 94.91,-22.38 94.91,-22.38 C94.91,-22.38 94.21,-20 94.21,-20 C94.21,-20 96.33,-20.88 96.33,-20.88 C96.33,-20.88 98.09,-19.38 98.09,-19.38 C98.09,-19.38 98.09,-21.85 98.09,-21.85 C98.09,-21.85 99.86,-23.26 99.86,-23.26 C99.86,-23.26 97.74,-23.97 97.74,-23.97c M167.29 43.28 C167.29,43.28 166.67,40.9 166.67,40.9 C166.67,40.9 165.35,42.93 165.35,42.93 C165.35,42.93 163.14,42.93 163.14,42.93 C163.14,42.93 164.47,44.87 164.47,44.87 C164.47,44.87 163.76,47.25 163.76,47.25 C163.76,47.25 165.88,46.37 165.88,46.37 C165.88,46.37 167.73,47.87 167.73,47.87 C167.73,47.87 167.65,45.4 167.65,45.4 C167.65,45.4 169.5,43.98 169.5,43.98 C169.5,43.98 167.29,43.28 167.29,43.28c M-1.1 -1.79 C-1.1,-1.79 -1.72,-4.08 -1.72,-4.08 C-1.72,-4.08 -3.05,-2.14 -3.05,-2.14 C-3.05,-2.14 -5.25,-2.14 -5.25,-2.14 C-5.25,-2.14 -3.93,-0.11 -3.93,-0.11 C-3.93,-0.11 -4.64,2.18 -4.64,2.18 C-4.64,2.18 -2.52,1.38 -2.52,1.38 C-2.52,1.38 -0.66,2.8 -0.66,2.8 C-0.66,2.8 -0.75,0.41 -0.75,0.41 C-0.75,0.41 1.1,-1.08 1.1,-1.08 C1.1,-1.08 -1.1,-1.79 -1.1,-1.79c M-60.89 -5.23 C-60.89,-5.23 -61.59,-7.61 -61.59,-7.61 C-61.59,-7.61 -62.83,-5.58 -62.83,-5.58 C-62.83,-5.58 -65.13,-5.58 -65.13,-5.58 C-65.13,-5.58 -63.71,-3.64 -63.71,-3.64 C-63.71,-3.64 -64.42,-1.26 -64.42,-1.26 C-64.42,-1.26 -62.39,-2.14 -62.39,-2.14 C-62.39,-2.14 -60.53,-0.64 -60.53,-0.64 C-60.53,-0.64 -60.62,-3.11 -60.62,-3.11 C-60.62,-3.11 -58.77,-4.52 -58.77,-4.52 C-58.77,-4.52 -60.89,-5.23 -60.89,-5.23c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-51.26 -42.98 C-51.26,-42.98 -54.09,-45.01 -54.09,-45.01 C-54.09,-45.01 -53.91,-41.57 -53.91,-41.57 C-53.91,-41.57 -56.65,-39.54 -56.65,-39.54 C-56.65,-39.54 -53.38,-38.57 -53.38,-38.57 C-53.38,-38.57 -52.32,-35.3 -52.32,-35.3 C-52.32,-35.3 -50.38,-38.13 -50.38,-38.13 C-50.38,-38.13 -46.94,-38.22 -46.94,-38.22 C-46.94,-38.22 -49.05,-40.86 -49.05,-40.86 C-49.05,-40.86 -47.99,-44.21 -47.99,-44.21 C-47.99,-44.21 -51.26,-42.98 -51.26,-42.98c M-92.06 -47.92 C-92.06,-47.92 -92.59,-49.59 -92.59,-49.59 C-92.59,-49.59 -93.47,-48.18 -93.47,-48.18 C-93.47,-48.18 -95.06,-48.18 -95.06,-48.18 C-95.06,-48.18 -94.09,-46.86 -94.09,-46.86 C-94.09,-46.86 -94.53,-45.18 -94.53,-45.18 C-94.53,-45.18 -93.12,-45.8 -93.12,-45.8 C-93.12,-45.8 -91.88,-44.74 -91.88,-44.74 C-91.88,-44.74 -91.88,-46.42 -91.88,-46.42 C-91.88,-46.42 -90.65,-47.47 -90.65,-47.47 C-90.65,-47.47 -92.06,-47.92 -92.06,-47.92c M62.83 -13.34 C62.83,-13.34 62.39,-14.93 62.39,-14.93 C62.39,-14.93 61.5,-13.52 61.5,-13.52 C61.5,-13.52 59.91,-13.52 59.91,-13.52 C59.91,-13.52 60.89,-12.2 60.89,-12.2 C60.89,-12.2 60.36,-10.52 60.36,-10.52 C60.36,-10.52 61.86,-11.14 61.86,-11.14 C61.86,-11.14 63.09,-10.08 63.09,-10.08 C63.09,-10.08 63.09,-11.84 63.09,-11.84 C63.09,-11.84 64.33,-12.81 64.33,-12.81 C64.33,-12.81 62.83,-13.34 62.83,-13.34c M-155.99 -40.95 C-155.99,-40.95 -156.43,-42.54 -156.43,-42.54 C-156.43,-42.54 -157.32,-41.13 -157.32,-41.13 C-157.32,-41.13 -158.91,-41.21 -158.91,-41.21 C-158.91,-41.21 -157.93,-39.8 -157.93,-39.8 C-157.93,-39.8 -158.46,-38.22 -158.46,-38.22 C-158.46,-38.22 -156.96,-38.74 -156.96,-38.74 C-156.96,-38.74 -155.73,-37.69 -155.73,-37.69 C-155.73,-37.69 -155.73,-39.45 -155.73,-39.45 C-155.73,-39.45 -154.49,-40.42 -154.49,-40.42 C-154.49,-40.42 -155.99,-40.95 -155.99,-40.95c M141.24 26.52 C141.24,26.52 140.71,24.85 140.71,24.85 C140.71,24.85 139.83,26.26 139.83,26.26 C139.83,26.26 138.33,26.26 138.33,26.26 C138.33,26.26 139.21,27.67 139.21,27.67 C139.21,27.67 138.77,29.26 138.77,29.26 C138.77,29.26 140.18,28.73 140.18,28.73 C140.18,28.73 141.51,29.7 141.51,29.7 C141.51,29.7 141.42,28.02 141.42,28.02 C141.42,28.02 142.74,27.05 142.74,27.05 C142.74,27.05 141.24,26.52 141.24,26.52c M111.4 -51.27 C111.4,-51.27 110.95,-52.94 110.95,-52.94 C110.95,-52.94 110.07,-51.53 110.07,-51.53 C110.07,-51.53 108.48,-51.53 108.48,-51.53 C108.48,-51.53 109.45,-50.21 109.45,-50.21 C109.45,-50.21 108.92,-48.53 108.92,-48.53 C108.92,-48.53 110.42,-49.15 110.42,-49.15 C110.42,-49.15 111.66,-48.09 111.66,-48.09 C111.66,-48.09 111.66,-49.86 111.66,-49.86 C111.66,-49.86 112.9,-50.83 112.9,-50.83 C112.9,-50.83 111.4,-51.27 111.4,-51.27c M-66.59 53.33 C-66.59,53.33 -67.03,51.65 -67.03,51.65 C-67.03,51.65 -67.91,53.06 -67.91,53.06 C-67.91,53.06 -69.5,53.06 -69.5,53.06 C-69.5,53.06 -68.53,54.47 -68.53,54.47 C-68.53,54.47 -69.06,56.06 -69.06,56.06 C-69.06,56.06 -67.56,55.53 -67.56,55.53 C-67.56,55.53 -66.32,56.5 -66.32,56.5 C-66.32,56.5 -66.32,54.82 -66.32,54.82 C-66.32,54.82 -65.08,53.77 -65.08,53.77 C-65.08,53.77 -66.59,53.33 -66.59,53.33c M-50.59 59.33 C-50.59,59.33 -51.12,57.65 -51.12,57.65 C-51.12,57.65 -52,59.06 -52,59.06 C-52,59.06 -53.5,59.06 -53.5,59.06 C-53.5,59.06 -52.62,60.38 -52.62,60.38 C-52.62,60.38 -53.06,62.06 -53.06,62.06 C-53.06,62.06 -51.65,61.53 -51.65,61.53 C-51.65,61.53 -50.32,62.5 -50.32,62.5 C-50.32,62.5 -50.41,60.82 -50.41,60.82 C-50.41,60.82 -49.08,59.77 -49.08,59.77 C-49.08,59.77 -50.59,59.33 -50.59,59.33c M29.98 -16.08 C29.98,-16.08 29.27,-18.46 29.27,-18.46 C29.27,-18.46 27.95,-16.43 27.95,-16.43 C27.95,-16.43 25.74,-16.43 25.74,-16.43 C25.74,-16.43 27.06,-14.49 27.06,-14.49 C27.06,-14.49 26.36,-12.11 26.36,-12.11 C26.36,-12.11 28.48,-12.9 28.48,-12.9 C28.48,-12.9 30.33,-11.49 30.33,-11.49 C30.33,-11.49 30.24,-13.96 30.24,-13.96 C30.24,-13.96 32.1,-15.37 32.1,-15.37 C32.1,-15.37 29.98,-16.08 29.98,-16.08c M81.28 55.98 C81.28,55.98 80.58,53.6 80.58,53.6 C80.58,53.6 79.25,55.63 79.25,55.63 C79.25,55.63 77.04,55.63 77.04,55.63 C77.04,55.63 78.37,57.57 78.37,57.57 C78.37,57.57 77.66,59.95 77.66,59.95 C77.66,59.95 79.78,59.07 79.78,59.07 C79.78,59.07 81.64,60.56 81.64,60.56 C81.64,60.56 81.55,58.1 81.55,58.1 C81.55,58.1 83.4,56.68 83.4,56.68 C83.4,56.68 81.28,55.98 81.28,55.98c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-74.05 21.76 C-74.05,21.76 -74.66,19.47 -74.66,19.47 C-74.66,19.47 -75.99,21.49 -75.99,21.49 C-75.99,21.49 -78.2,21.41 -78.2,21.41 C-78.2,21.41 -76.87,23.43 -76.87,23.43 C-76.87,23.43 -77.58,25.73 -77.58,25.73 C-77.58,25.73 -75.46,24.93 -75.46,24.93 C-75.46,24.93 -73.6,26.43 -73.6,26.43 C-73.6,26.43 -73.69,23.96 -73.69,23.96 C-73.69,23.96 -71.84,22.46 -71.84,22.46 C-71.84,22.46 -74.05,21.76 -74.05,21.76c M8.98 55.68 C8.98,55.68 6.15,53.65 6.15,53.65 C6.15,53.65 6.24,57.09 6.24,57.09 C6.24,57.09 3.5,59.12 3.5,59.12 C3.5,59.12 6.86,60.09 6.86,60.09 C6.86,60.09 7.92,63.35 7.92,63.35 C7.92,63.35 9.86,60.44 9.86,60.44 C9.86,60.44 13.3,60.44 13.3,60.44 C13.3,60.44 11.18,57.71 11.18,57.71 C11.18,57.71 12.15,54.44 12.15,54.44 C12.15,54.44 8.98,55.68 8.98,55.68c M124.89 -2.41 C124.89,-2.41 122.06,-4.35 122.06,-4.35 C122.06,-4.35 122.24,-0.91 122.24,-0.91 C122.24,-0.91 119.5,1.12 119.5,1.12 C119.5,1.12 122.77,2 122.77,2 C122.77,2 123.83,5.26 123.83,5.26 C123.83,5.26 125.77,2.44 125.77,2.44 C125.77,2.44 129.21,2.44 129.21,2.44 C129.21,2.44 127.09,-0.29 127.09,-0.29 C127.09,-0.29 128.15,-3.56 128.15,-3.56 C128.15,-3.56 124.89,-2.41 124.89,-2.41c M77.31 19.91 C77.31,19.91 74.57,17.88 74.57,17.88 C74.57,17.88 74.66,21.32 74.66,21.32 C74.66,21.32 71.92,23.35 71.92,23.35 C71.92,23.35 75.19,24.32 75.19,24.32 C75.19,24.32 76.34,27.58 76.34,27.58 C76.34,27.58 78.19,24.67 78.19,24.67 C78.19,24.67 81.64,24.67 81.64,24.67 C81.64,24.67 79.52,21.94 79.52,21.94 C79.52,21.94 80.58,18.67 80.58,18.67 C80.58,18.67 77.31,19.91 77.31,19.91c M-28.11 7.68 C-28.11,7.68 -30.94,5.65 -30.94,5.65 C-30.94,5.65 -30.76,9.09 -30.76,9.09 C-30.76,9.09 -33.5,11.12 -33.5,11.12 C-33.5,11.12 -30.23,12.09 -30.23,12.09 C-30.23,12.09 -29.17,15.35 -29.17,15.35 C-29.17,15.35 -27.23,12.44 -27.23,12.44 C-27.23,12.44 -23.79,12.44 -23.79,12.44 C-23.79,12.44 -25.91,9.71 -25.91,9.71 C-25.91,9.71 -24.85,6.44 -24.85,6.44 C-24.85,6.44 -28.11,7.68 -28.11,7.68c M-119.43 -20.22 C-119.43,-20.22 -122.26,-22.16 -122.26,-22.16 C-122.26,-22.16 -122.08,-18.72 -122.08,-18.72 C-122.08,-18.72 -124.82,-16.7 -124.82,-16.7 C-124.82,-16.7 -121.55,-15.81 -121.55,-15.81 C-121.55,-15.81 -120.49,-12.55 -120.49,-12.55 C-120.49,-12.55 -118.55,-15.37 -118.55,-15.37 C-118.55,-15.37 -115.11,-15.37 -115.11,-15.37 C-115.11,-15.37 -117.23,-18.11 -117.23,-18.11 C-117.23,-18.11 -116.17,-21.37 -116.17,-21.37 C-116.17,-21.37 -119.43,-20.22 -119.43,-20.22c "/>
- </group>
- </group>
- <group android:name="_R_G_L_1_G_L_2_G">
- <group android:name="_R_G_L_1_G_L_2_G_L_2_G" android:translateX="206" android:translateY="145">
- <path android:name="_R_G_L_1_G_L_2_G_L_2_G_D_0_P_0" android:fillColor="#e8eaed" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -95.63 C206,-95.63 206,42.37 206,42.37 C206,43.47 205.1,44.37 204,44.37 C204,44.37 -204,44.37 -204,44.37 C-205.1,44.37 -206,43.47 -206,42.37 C-206,42.37 -206,-95.63 -206,-95.63 C-206,-96.73 -205.1,-97.63 -204,-97.63 C-204,-97.63 204,-97.63 204,-97.63 C205.1,-97.63 206,-96.73 206,-95.63c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_2_G_L_1_G" android:translateX="206" android:translateY="145">
- <path android:name="_R_G_L_1_G_L_2_G_L_1_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M109 -14 C109,-14 109,14 109,14 C109,15.1 108.1,16 107,16 C107,16 -107,16 -107,16 C-108.1,16 -109,15.1 -109,14 C-109,14 -109,-14 -109,-14 C-109,-15.1 -108.1,-16 -107,-16 C-107,-16 107,-16 107,-16 C108.1,-16 109,-15.1 109,-14c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_2_G_L_0_G" android:translateX="46" android:translateY="145">
- <path android:name="_R_G_L_1_G_L_2_G_L_0_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M22 -14 C22,-14 22,14 22,14 C22,18.42 18.42,22 14,22 C14,22 -14,22 -14,22 C-18.42,22 -22,18.42 -22,14 C-22,14 -22,-14 -22,-14 C-22,-18.42 -18.42,-22 -14,-22 C-14,-22 14,-22 14,-22 C18.42,-22 22,-18.42 22,-14c "/>
- </group>
- </group>
- <group android:name="_R_G_L_1_G_L_1_G" android:translateX="206" android:translateY="877">
- <path android:name="_R_G_L_1_G_L_1_G_D_0_P_0" android:fillColor="#373737" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M40 0 C40,0 40,0 40,0 C40,1.1 39.1,2 38,2 C38,2 -38,2 -38,2 C-39.1,2 -40,1.1 -40,0 C-40,0 -40,0 -40,0 C-40,-1.1 -39.1,-2 -38,-2 C-38,-2 38,-2 38,-2 C39.1,-2 40,-1.1 40,0c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_0_G">
- <group android:name="_R_G_L_1_G_L_0_G_L_2_G" android:translateX="206" android:translateY="51">
- <path android:name="_R_G_L_1_G_L_0_G_L_2_G_D_0_P_0" android:fillColor="#202124" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -0.27 C206,-0.27 206,49.73 206,49.73 C206,49.73 -206,49.73 -206,49.73 C-206,49.73 -206,-0.27 -206,-0.27 C-206,-0.27 206,-0.27 206,-0.27c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_0_G_L_1_G" android:translateX="206" android:translateY="50.5">
- <path android:name="_R_G_L_1_G_L_0_G_L_1_G_D_0_P_0" android:fillColor="#202124" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -32.5 C206,-32.5 206,32.5 206,32.5 C206,42.43 197.93,50.5 188,50.5 C188,50.5 -188,50.5 -188,50.5 C-197.93,50.5 -206,42.43 -206,32.5 C-206,32.5 -206,-32.5 -206,-32.5 C-206,-42.43 -197.93,-50.5 -188,-50.5 C-188,-50.5 188,-50.5 188,-50.5 C197.93,-50.5 206,-42.43 206,-32.5c "/>
- </group>
- <group android:name="_R_G_L_1_G_L_0_G_L_0_G" android:translateX="206" android:translateY="66.5">
- <path android:name="_R_G_L_1_G_L_0_G_L_0_G_D_0_P_0" android:fillColor="#3c4043" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M190 0 C190,0 190,0 190,0 C190,10.21 181.71,18.5 171.5,18.5 C171.5,18.5 -171.5,18.5 -171.5,18.5 C-181.71,18.5 -190,10.21 -190,0 C-190,0 -190,0 -190,0 C-190,-10.21 -181.71,-18.5 -171.5,-18.5 C-171.5,-18.5 171.5,-18.5 171.5,-18.5 C181.71,-18.5 190,-10.21 190,0c "/>
- </group>
- </group>
- </group>
- </group>
- <group android:name="_R_G_L_0_G" android:translateX="-30" android:translateY="658.997" android:pivotX="300" android:pivotY="64" android:rotation="-90" android:scaleY="0">
- <group android:name="_R_G_L_0_G_L_2_G" android:translateX="295.995" android:translateY="63.997" android:scaleY="0">
- <path android:name="_R_G_L_0_G_L_2_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="0.3" android:fillType="nonZero" android:pathData=" M-166 64 C-130.65,64 -102,35.35 -102,0 C-102,-35.34 -130.65,-64 -166,-64 C-201.34,-64 -230,-35.34 -230,0 C-230,35.35 -201.34,64 -166,64c "/>
- </group>
- <group android:name="_R_G_L_0_G_L_1_G" android:translateX="192" android:translateY="63.997" android:rotation="90" android:scaleX="-1" android:scaleY="0">
- <path android:name="_R_G_L_0_G_L_1_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="0.3" android:fillType="nonZero" android:pathData=" M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c "/>
- </group>
- <group android:name="_R_G_L_0_G_L_0_G" android:translateX="295.995" android:translateY="63.997" android:scaleY="0">
- <group android:name="_R_G_L_0_G_L_0_G_D_0_P_0_G_0_T_0" android:translateX="-166" android:translateY="0">
- <path android:name="_R_G_L_0_G_L_0_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 64 C35.35,64 64,35.35 64,0 C64,-35.34 35.35,-64 0,-64 C-35.34,-64 -64,-35.34 -64,0 C-64,35.35 -35.34,64 0,64c "/>
- </group>
- </group>
- </group>
- </group>
- <group android:name="time_group"/>
- </vector>
- </aapt:attr>
- <target android:name="_R_G_L_2_G_L_5_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1917" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_4_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="50" android:startOffset="1917" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,776C 206,776 206,776 206,776">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="700" android:startOffset="1967" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,776C 206,776 206,797 206,797">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_4_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1967" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_3_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="700" android:startOffset="1917" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 56,673C 56,673 56,706 56,706">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_3_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1917" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="700" android:startOffset="1917" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 156,673C 156,673 156,706 156,706">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1917" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="700" android:startOffset="1917" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 256,673C 256,673 256,706 256,706">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1917" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="700" android:startOffset="1917" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 356,673C 356,673 356,706 356,706">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1917" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1917" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G_N_1_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="1533" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,446C 206,446 206,446 206,446">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.477,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="317" android:startOffset="1533" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,446C 206,446 206,354.603 206,354.603">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.477,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="300" android:startOffset="1850" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,354.603C 206,354.603 206,639 206,639">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.531,0.542 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G_N_1_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="1533" android:startOffset="0" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.833 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="1533" android:startOffset="0" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.833 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="617" android:startOffset="1533" android:valueFrom="1" android:valueTo="0.16" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.833 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="617" android:startOffset="1533" android:valueFrom="1" android:valueTo="0.16" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.833 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="600" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1550" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G_D_0_P_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="pathData" android:duration="217" android:startOffset="1317" android:valueFrom="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueTo="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueType="pathType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="pathData" android:duration="383" android:startOffset="1533" android:valueFrom="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueTo="M-0.01 363.74 C35.34,363.74 63.99,335.09 63.99,299.75 C63.99,299.75 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64.01,299.75 -64.01,299.75 C-64.01,335.09 -35.35,363.74 -0.01,363.74c " android:valueType="pathType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1550" android:valueFrom="0" android:valueTo="-1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2050" android:valueFrom="-1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G_D_0_P_0_G_0_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="217" android:startOffset="1317" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -166,0C -105.667,0 -226.333,0 -166,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="383" android:startOffset="1533" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -166,0C -105.667,0 135.667,0 196,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.508,0 0.487,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="600" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2050" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1317" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2050" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="time_group">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateX" android:duration="4017" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
-</animated-vector>
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_back_left.xml b/quickstep/res/drawable/gesture_tutorial_loop_back_left.xml
new file mode 100644
index 0000000..8bf305c
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_back_left.xml
@@ -0,0 +1,96 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="783"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="1000"
+ android:propertyName="fillAlpha"
+ android:startOffset="0"
+ android:valueFrom="0.25"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="1000"
+ android:propertyName="fillAlpha"
+ android:startOffset="1000"
+ android:valueFrom="0.75"
+ android:valueTo="0.25"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2000"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_1_G"
+ android:translateX="206"
+ android:translateY="446" />
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="12.5"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_G_D_0_P_0"
+ android:fillAlpha="0.25"
+ android:fillColor="#84ba69"
+ android:fillType="nonZero"
+ android:pathData=" M12.5 -446 C12.5,-446 12.5,446 12.5,446 C12.5,446 -12.5,446 -12.5,446 C-12.5,446 -12.5,-446 -12.5,-446 C-12.5,-446 12.5,-446 12.5,-446c " />
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_back_right.xml b/quickstep/res/drawable/gesture_tutorial_loop_back_right.xml
new file mode 100644
index 0000000..812c54c
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_back_right.xml
@@ -0,0 +1,96 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_1_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="1000"
+ android:propertyName="fillAlpha"
+ android:startOffset="0"
+ android:valueFrom="0.25"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="1000"
+ android:propertyName="fillAlpha"
+ android:startOffset="1000"
+ android:valueFrom="0.75"
+ android:valueTo="0.25"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="783"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2000"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_1_G"
+ android:translateX="399.5"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_1_G_D_0_P_0"
+ android:fillAlpha="0.25"
+ android:fillColor="#84ba69"
+ android:fillType="nonZero"
+ android:pathData=" M12.5 -446 C12.5,-446 12.5,446 12.5,446 C12.5,446 -12.5,446 -12.5,446 C-12.5,446 -12.5,-446 -12.5,-446 C-12.5,-446 12.5,-446 12.5,-446c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="446" />
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_bottom_edge.xml b/quickstep/res/drawable/gesture_tutorial_loop_bottom_edge.xml
new file mode 100644
index 0000000..3efb52d
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_bottom_edge.xml
@@ -0,0 +1,38 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2000"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="874.5">
+ <path
+ android:name="_R_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#84ba69"
+ android:fillType="nonZero"
+ android:pathData=" M206 -17.5 C206,-17.5 206,17.5 206,17.5 C206,17.5 -206,17.5 -206,17.5 C-206,17.5 -206,-17.5 -206,-17.5 C-206,-17.5 206,-17.5 206,-17.5c " />
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_gesture_back_right.xml b/quickstep/res/drawable/gesture_tutorial_loop_gesture_back_right.xml
new file mode 100644
index 0000000..c41d077
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_gesture_back_right.xml
@@ -0,0 +1,57 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="783"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2000"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="446" />
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_gesture_home.xml b/quickstep/res/drawable/gesture_tutorial_loop_gesture_home.xml
new file mode 100644
index 0000000..c5dd41b
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_gesture_home.xml
@@ -0,0 +1,57 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="850"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2000"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="446" />
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_gesture_left_edge.xml b/quickstep/res/drawable/gesture_tutorial_loop_gesture_left_edge.xml
new file mode 100644
index 0000000..c41d077
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_gesture_left_edge.xml
@@ -0,0 +1,57 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="783"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2000"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="446" />
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_gesture_overview.xml b/quickstep/res/drawable/gesture_tutorial_loop_gesture_overview.xml
new file mode 100644
index 0000000..5d87805
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_gesture_overview.xml
@@ -0,0 +1,57 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1500"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2000"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="446" />
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_home.xml b/quickstep/res/drawable/gesture_tutorial_loop_home.xml
new file mode 100644
index 0000000..ed072a9
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_home.xml
@@ -0,0 +1 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt"><aapt:attr name="android:drawable"><vector android:height="892dp" android:width="412dp" android:viewportHeight="892" android:viewportWidth="412"><group android:name="_R_G"><group android:name="_R_G_L_1_G" android:translateX="206" android:translateY="879.5"><path android:name="_R_G_L_1_G_D_0_P_0" android:fillColor="#84ba69" android:fillAlpha="0.25" android:fillType="nonZero" android:pathData=" M206 -12.5 C206,-12.5 206,12.5 206,12.5 C206,12.5 -206,12.5 -206,12.5 C-206,12.5 -206,-12.5 -206,-12.5 C-206,-12.5 206,-12.5 206,-12.5c "/></group><group android:name="_R_G_L_0_G" android:translateX="206" android:translateY="446"/></group><group android:name="time_group"/></vector></aapt:attr><target android:name="_R_G_L_1_G_D_0_P_0"><aapt:attr name="android:animation"><set android:ordering="together"><objectAnimator android:propertyName="fillAlpha" android:duration="1000" android:startOffset="0" android:valueFrom="0.25" android:valueTo="0.75" android:valueType="floatType"><aapt:attr name="android:interpolator"><pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0"/></aapt:attr></objectAnimator><objectAnimator android:propertyName="fillAlpha" android:duration="1000" android:startOffset="1000" android:valueFrom="0.75" android:valueTo="0.25" android:valueType="floatType"><aapt:attr name="android:interpolator"><pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0"/></aapt:attr></objectAnimator></set></aapt:attr></target><target android:name="_R_G_L_0_G"><aapt:attr name="android:animation"><set android:ordering="together"><objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/></set></aapt:attr></target><target android:name="_R_G_L_0_G"><aapt:attr name="android:animation"><set android:ordering="together"><objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="850" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/></set></aapt:attr></target><target android:name="time_group"><aapt:attr name="android:animation"><set android:ordering="together"><objectAnimator android:propertyName="translateX" android:duration="2000" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/></set></aapt:attr></target></animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_left_edge.xml b/quickstep/res/drawable/gesture_tutorial_loop_left_edge.xml
new file mode 100644
index 0000000..07caaea
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_left_edge.xml
@@ -0,0 +1,38 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2000"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="17.5"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#84ba69"
+ android:fillType="nonZero"
+ android:pathData=" M17.5 -446 C17.5,-446 17.5,446 17.5,446 C17.5,446 -17.5,446 -17.5,446 C-17.5,446 -17.5,-446 -17.5,-446 C-17.5,-446 17.5,-446 17.5,-446c " />
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_overview.xml b/quickstep/res/drawable/gesture_tutorial_loop_overview.xml
new file mode 100644
index 0000000..acf0c4c
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_overview.xml
@@ -0,0 +1 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt"><aapt:attr name="android:drawable"><vector android:height="892dp" android:width="412dp" android:viewportHeight="892" android:viewportWidth="412"><group android:name="_R_G"><group android:name="_R_G_L_1_G" android:translateX="206" android:translateY="879.5"><path android:name="_R_G_L_1_G_D_0_P_0" android:fillColor="#84ba69" android:fillAlpha="0.25" android:fillType="nonZero" android:pathData=" M206 -12.5 C206,-12.5 206,12.5 206,12.5 C206,12.5 -206,12.5 -206,12.5 C-206,12.5 -206,-12.5 -206,-12.5 C-206,-12.5 206,-12.5 206,-12.5c "/></group><group android:name="_R_G_L_0_G" android:translateX="206" android:translateY="446"/></group><group android:name="time_group"/></vector></aapt:attr><target android:name="_R_G_L_1_G_D_0_P_0"><aapt:attr name="android:animation"><set android:ordering="together"><objectAnimator android:propertyName="fillAlpha" android:duration="1000" android:startOffset="0" android:valueFrom="0.25" android:valueTo="0.75" android:valueType="floatType"><aapt:attr name="android:interpolator"><pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0"/></aapt:attr></objectAnimator><objectAnimator android:propertyName="fillAlpha" android:duration="1000" android:startOffset="1000" android:valueFrom="0.75" android:valueTo="0.25" android:valueType="floatType"><aapt:attr name="android:interpolator"><pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0"/></aapt:attr></objectAnimator></set></aapt:attr></target><target android:name="_R_G_L_0_G"><aapt:attr name="android:animation"><set android:ordering="together"><objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/></set></aapt:attr></target><target android:name="_R_G_L_0_G"><aapt:attr name="android:animation"><set android:ordering="together"><objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1500" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/></set></aapt:attr></target><target android:name="time_group"><aapt:attr name="android:animation"><set android:ordering="together"><objectAnimator android:propertyName="translateX" android:duration="2000" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/></set></aapt:attr></target></animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_loop_right_edge.xml b/quickstep/res/drawable/gesture_tutorial_loop_right_edge.xml
new file mode 100644
index 0000000..d86b653
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_loop_right_edge.xml
@@ -0,0 +1,38 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2000"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="394.5"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#84ba69"
+ android:fillType="nonZero"
+ android:pathData=" M17.5 -446 C17.5,-446 17.5,446 17.5,446 C17.5,446 -17.5,446 -17.5,446 C-17.5,446 -17.5,-446 -17.5,-446 C-17.5,-446 17.5,-446 17.5,-446c " />
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_motion_back_left.xml b/quickstep/res/drawable/gesture_tutorial_motion_back_left.xml
new file mode 100644
index 0000000..e944c0e
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_motion_back_left.xml
@@ -0,0 +1,1412 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_1_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_2_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_3_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_4_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_5_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_6_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_7_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_8_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_9_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_10_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_11_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_12_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_13_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1367"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="283"
+ android:propertyName="scaleX"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0.88012"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="283"
+ android:propertyName="scaleY"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0.88012"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2417"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_1_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_2_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_3_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_4_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_5_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_6_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_7_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_8_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_9_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_10_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_11_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_12_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_13_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_14_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_15_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_16_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_17_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_18_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_19_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_20_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_21_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_22_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_23_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="667"
+ android:pathData="M -60,53C -50,53 -10,53 0,53"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:pathData="M 0,53C 0,53 0,53 0,53"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="883">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0.333 0,0 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:pathData="M 0,53C -10,53 -50,53 -60,53"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="1217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="217"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2467"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="417"
+ android:propertyName="fillAlpha"
+ android:startOffset="383"
+ android:valueFrom="0"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="417"
+ android:propertyName="fillAlpha"
+ android:startOffset="800"
+ android:valueFrom="0.5"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="200"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="0.5"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_D_0_P_0_G_0_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="583"
+ android:pathData="M 39,0C 32.5,0 6.5,0 0,0"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="417"
+ android:pathData="M 0,0C 0,0 0,0 0,0"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="800">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0.333 0.667,0.667 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:pathData="M 0,0C 6.5,0 32.5,0 39,0"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="1217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_D_0_P_0_G_0_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="583"
+ android:propertyName="scaleX"
+ android:startOffset="217"
+ android:valueFrom="0.5"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="583"
+ android:propertyName="scaleY"
+ android:startOffset="217"
+ android:valueFrom="0.5"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="417"
+ android:propertyName="scaleX"
+ android:startOffset="800"
+ android:valueFrom="1"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="417"
+ android:propertyName="scaleY"
+ android:startOffset="800"
+ android:valueFrom="1"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="scaleX"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="scaleY"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="383"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2333"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="fillAlpha"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="967"
+ android:propertyName="fillAlpha"
+ android:startOffset="217"
+ android:valueFrom="0.75"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="fillAlpha"
+ android:startOffset="1183"
+ android:valueFrom="0.75"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.833,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="pathData"
+ android:startOffset="0"
+ android:valueFrom="M-206.5 13.5 C-186.34,13.5 -170,29.84 -170,50 C-170,70.16 -186.34,86.5 -206.5,86.5 C-226.66,86.5 -243,70.16 -243,50 C-243,29.84 -226.66,13.5 -206.5,13.5c "
+ android:valueTo="M-206 0 C-178.39,0 -156,22.39 -156,50 C-156,77.61 -178.39,100 -206,100 C-233.61,100 -256,77.61 -256,50 C-256,22.39 -233.61,0 -206,0c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="583"
+ android:propertyName="pathData"
+ android:startOffset="217"
+ android:valueFrom="M-206 0 C-178.39,0 -156,22.39 -156,50 C-156,77.61 -178.39,100 -206,100 C-233.61,100 -256,77.61 -256,50 C-256,22.39 -233.61,0 -206,0c "
+ android:valueTo="M0 0 C27.61,0 50,22.39 50,50 C50,77.61 27.61,100 0,100 C-27.61,100 -50,77.61 -50,50 C-50,22.39 -27.61,0 0,0c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="383"
+ android:propertyName="pathData"
+ android:startOffset="800"
+ android:valueFrom="M0 0 C27.61,0 50,22.39 50,50 C50,77.61 27.61,100 0,100 C-27.61,100 -50,77.61 -50,50 C-50,22.39 -27.61,0 0,0c "
+ android:valueTo="M0 0 C27.61,0 50,22.39 50,50 C50,77.61 27.61,100 0,100 C-27.61,100 -50,77.61 -50,50 C-50,22.39 -27.61,0 0,0c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="pathData"
+ android:startOffset="1183"
+ android:valueFrom="M0 0 C27.61,0 50,22.39 50,50 C50,77.61 27.61,100 0,100 C-27.61,100 -50,77.61 -50,50 C-50,22.39 -27.61,0 0,0c "
+ android:valueTo="M0 13.5 C20.16,13.5 36.5,29.84 36.5,50 C36.5,70.16 20.16,86.5 0,86.5 C-20.16,86.5 -36.5,70.16 -36.5,50 C-36.5,29.84 -20.16,13.5 0,13.5c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="1767"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_5_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_5_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G"
+ android:pivotX="206"
+ android:pivotY="446"
+ android:scaleX="1"
+ android:scaleY="1">
+ <group android:name="_R_G_L_4_G_L_0_G">
+ <group android:name="_R_G_L_4_G_L_0_G_L_0_G">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#f1f3f4"
+ android:fillType="nonZero"
+ android:pathData=" M412 101 C412,101 412,892 412,892 C412,892 0,892 0,892 C0,892 0,101 0,101 C0,101 412,101 412,101c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_1_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M412 0 C412,0 412,101 412,101 C412,101 0,101 0,101 C0,101 0,0 0,0 C0,0 412,0 412,0c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_2_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M383 804 C383,816.15 373.15,826 361,826 C361,826 51,826 51,826 C38.85,826 29,816.15 29,804 C29,791.85 38.85,782 51,782 C51,782 361,782 361,782 C373.15,782 383,791.85 383,804c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_3_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M201 47 C201,47 201,75 201,75 C201,77.21 199.21,79 197,79 C197,79 38,79 38,79 C35.79,79 34,77.21 34,75 C34,75 34,47 34,47 C34,44.79 35.79,43 38,43 C38,43 197,43 197,43 C199.21,43 201,44.79 201,47c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_4_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M388 47 C388,47 388,75 388,75 C388,77.21 386.21,79 384,79 C384,79 356,79 356,79 C353.79,79 352,77.21 352,75 C352,75 352,47 352,47 C352,44.79 353.79,43 356,43 C356,43 384,43 384,43 C386.21,43 388,44.79 388,47c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_5_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M336 47 C336,47 336,75 336,75 C336,77.21 334.21,79 332,79 C332,79 304,79 304,79 C301.79,79 300,77.21 300,75 C300,75 300,47 300,47 C300,44.79 301.79,43 304,43 C304,43 332,43 332,43 C334.21,43 336,44.79 336,47c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_6_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M70 618 C70,630.15 60.15,640 48,640 C35.85,640 26,630.15 26,618 C26,605.85 35.85,596 48,596 C60.15,596 70,605.85 70,618c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_7_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M70 396 C70,408.15 60.15,418 48,418 C35.85,418 26,408.15 26,396 C26,383.85 35.85,374 48,374 C60.15,374 70,383.85 70,396c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_8_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M394 248 C394,248 394,324 394,324 C394,333.94 385.94,342 376,342 C376,342 142,342 142,342 C132.06,342 124,333.94 124,324 C124,324 124,248 124,248 C124,238.06 132.06,230 142,230 C142,230 376,230 376,230 C385.94,230 394,238.06 394,248c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_9_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M393.94 468.38 C393.94,468.38 393.94,481.5 393.94,481.5 C393.94,483.71 392.15,485.5 389.94,485.5 C389.94,485.5 303.5,485.5 303.5,485.5 C301.29,485.5 299.5,483.71 299.5,481.5 C299.5,481.5 299.5,468.38 299.5,468.38 C299.5,466.17 301.29,464.38 303.5,464.38 C303.5,464.38 389.94,464.38 389.94,464.38 C392.15,464.38 393.94,466.17 393.94,468.38c M394 468 C394,477.67 386.17,485.5 376.5,485.5 C376.5,485.5 290,485.5 290,485.5 C280.33,485.5 272.5,477.67 272.5,468 C272.5,458.34 280.33,450.5 290,450.5 C290,450.5 376.5,450.5 376.5,450.5 C386.17,450.5 394,458.34 394,468c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_10_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M394 494 C394,494 394,547 394,547 C394,549.21 392.21,551 390,551 C390,551 164,551 164,551 C161.79,551 160,549.21 160,547 C160,547 160,494 160,494 C160,491.79 161.79,490 164,490 C164,490 390,490 390,490 C392.21,490 394,491.79 394,494c M394 508 C394,508 394,545 394,545 C394,554.94 385.94,563 376,563 C376,563 142,563 142,563 C132.06,563 124,554.94 124,545 C124,545 124,508 124,508 C124,498.06 132.06,490 142,490 C142,490 376,490 376,490 C385.94,490 394,498.06 394,508c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_11_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M394 690 C394,690 394,727 394,727 C394,736.94 385.94,745 376,745 C376,745 142,745 142,745 C132.06,745 124,736.94 124,727 C124,727 124,690 124,690 C124,680.06 132.06,672 142,672 C142,672 376,672 376,672 C385.94,672 394,680.06 394,690c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_12_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M267.5 617 C267.5,626.67 259.67,634.5 250,634.5 C250,634.5 104.5,634.5 104.5,634.5 C94.84,634.5 87,626.67 87,617 C87,607.34 94.84,599.5 104.5,599.5 C104.5,599.5 250,599.5 250,599.5 C259.67,599.5 267.5,607.34 267.5,617c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_13_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M299 395.5 C299,405.17 291.16,413 281.5,413 C281.5,413 104.5,413 104.5,413 C94.84,413 87,405.17 87,395.5 C87,385.84 94.84,378 104.5,378 C104.5,378 281.5,378 281.5,378 C291.16,378 299,385.84 299,395.5c " />
+ </group>
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_3_G"
+ android:scaleY="0">
+ <group
+ android:name="_R_G_L_3_G_L_0_G"
+ android:scaleY="0">
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_0_G"
+ android:scaleY="0">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M412 0 C412,0 412,892 412,892 C412,892 0,892 0,892 C0,892 0,0 0,0 C0,0 412,0 412,0c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_1_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M412 0 C412,0 412,101 412,101 C412,101 0,101 0,101 C0,101 0,0 0,0 C0,0 412,0 412,0c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_2_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M195 143 C195,143 195,153 195,153 C195,155.21 193.21,157 191,157 C191,157 106,157 106,157 C103.79,157 102,155.21 102,153 C102,153 102,143 102,143 C102,140.79 103.79,139 106,139 C106,139 191,139 191,139 C193.21,139 195,140.79 195,143c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_3_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M270 165 C270,165 270,173 270,173 C270,175.21 268.21,177 266,177 C266,177 106,177 106,177 C103.79,177 102,175.21 102,173 C102,173 102,165 102,165 C102,162.79 103.79,161 106,161 C106,161 266,161 266,161 C268.21,161 270,162.79 270,165c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_4_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M222 231 C222,231 222,241 222,241 C222,243.21 220.21,245 218,245 C218,245 106,245 106,245 C103.79,245 102,243.21 102,241 C102,241 102,231 102,231 C102,228.79 103.79,227 106,227 C106,227 218,227 218,227 C220.21,227 222,228.79 222,231c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_5_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M241 253 C241,253 241,261 241,261 C241,263.21 239.21,265 237,265 C237,265 106,265 106,265 C103.79,265 102,263.21 102,261 C102,261 102,253 102,253 C102,250.79 103.79,249 106,249 C106,249 237,249 237,249 C239.21,249 241,250.79 241,253c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_6_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M214 319 C214,319 214,329 214,329 C214,331.21 212.21,333 210,333 C210,333 106,333 106,333 C103.79,333 102,331.21 102,329 C102,329 102,319 102,319 C102,316.79 103.79,315 106,315 C106,315 210,315 210,315 C212.21,315 214,316.79 214,319c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_7_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M333 341 C333,341 333,349 333,349 C333,351.21 331.21,353 329,353 C329,353 106,353 106,353 C103.79,353 102,351.21 102,349 C102,349 102,341 102,341 C102,338.79 103.79,337 106,337 C106,337 329,337 329,337 C331.21,337 333,338.79 333,341c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_8_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M238 407 C238,407 238,417 238,417 C238,419.21 236.21,421 234,421 C234,421 106,421 106,421 C103.79,421 102,419.21 102,417 C102,417 102,407 102,407 C102,404.79 103.79,403 106,403 C106,403 234,403 234,403 C236.21,403 238,404.79 238,407c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_9_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M295 429 C295,429 295,437 295,437 C295,439.21 293.21,441 291,441 C291,441 106,441 106,441 C103.79,441 102,439.21 102,437 C102,437 102,429 102,429 C102,426.79 103.79,425 106,425 C106,425 291,425 291,425 C293.21,425 295,426.79 295,429c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_10_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M168 495 C168,495 168,505 168,505 C168,507.21 166.21,509 164,509 C164,509 106,509 106,509 C103.79,509 102,507.21 102,505 C102,505 102,495 102,495 C102,492.79 103.79,491 106,491 C106,491 164,491 164,491 C166.21,491 168,492.79 168,495c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_11_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M269 517 C269,517 269,525 269,525 C269,527.21 267.21,529 265,529 C265,529 106,529 106,529 C103.79,529 102,527.21 102,525 C102,525 102,517 102,517 C102,514.79 103.79,513 106,513 C106,513 265,513 265,513 C267.21,513 269,514.79 269,517c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_12_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M235 583 C235,583 235,593 235,593 C235,595.21 233.21,597 231,597 C231,597 106,597 106,597 C103.79,597 102,595.21 102,593 C102,593 102,583 102,583 C102,580.79 103.79,579 106,579 C106,579 231,579 231,579 C233.21,579 235,580.79 235,583c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_13_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M295 605 C295,605 295,613 295,613 C295,615.21 293.21,617 291,617 C291,617 106,617 106,617 C103.79,617 102,615.21 102,613 C102,613 102,605 102,605 C102,602.79 103.79,601 106,601 C106,601 291,601 291,601 C293.21,601 295,602.79 295,605c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_14_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M223 671 C223,671 223,681 223,681 C223,683.21 221.21,685 219,685 C219,685 106,685 106,685 C103.79,685 102,683.21 102,681 C102,681 102,671 102,671 C102,668.79 103.79,667 106,667 C106,667 219,667 219,667 C221.21,667 223,668.79 223,671c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_15_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M246 693 C246,693 246,701 246,701 C246,703.21 244.21,705 242,705 C242,705 106,705 106,705 C103.79,705 102,703.21 102,701 C102,701 102,693 102,693 C102,690.79 103.79,689 106,689 C106,689 242,689 242,689 C244.21,689 246,690.79 246,693c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_16_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M388 798 C388,798 388,798 388,798 C388,813.45 375.45,826 360,826 C360,826 267,826 267,826 C251.55,826 239,813.45 239,798 C239,798 239,798 239,798 C239,782.55 251.55,770 267,770 C267,770 360,770 360,770 C375.45,770 388,782.55 388,798c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_17_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#f8f9fa"
+ android:fillType="nonZero"
+ android:pathData=" M377 47 C377,47 377,75 377,75 C377,77.21 375.21,79 373,79 C373,79 38,79 38,79 C35.79,79 34,77.21 34,75 C34,75 34,47 34,47 C34,44.79 35.79,43 38,43 C38,43 373,43 373,43 C375.21,43 377,44.79 377,47c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_18_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 157 C82,172.46 69.46,185 54,185 C38.54,185 26,172.46 26,157 C26,141.54 38.54,129 54,129 C69.46,129 82,141.54 82,157c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_19_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 245 C82,260.46 69.46,273 54,273 C38.54,273 26,260.46 26,245 C26,229.54 38.54,217 54,217 C69.46,217 82,229.54 82,245c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_20_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 333 C82,348.46 69.46,361 54,361 C38.54,361 26,348.46 26,333 C26,317.54 38.54,305 54,305 C69.46,305 82,317.54 82,333c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_21_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 421 C82,436.46 69.46,449 54,449 C38.54,449 26,436.46 26,421 C26,405.54 38.54,393 54,393 C69.46,393 82,405.54 82,421c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_22_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 509 C82,524.46 69.46,537 54,537 C38.54,537 26,524.46 26,509 C26,493.54 38.54,481 54,481 C69.46,481 82,493.54 82,509c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_23_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 597 C82,612.46 69.46,625 54,625 C38.54,625 26,612.46 26,597 C26,581.54 38.54,569 54,569 C69.46,569 82,581.54 82,597c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_24_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 685 C82,700.46 69.46,713 54,713 C38.54,713 26,700.46 26,685 C26,669.54 38.54,657 54,657 C69.46,657 82,669.54 82,685c " />
+ </group>
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_2_G"
+ android:scaleY="0"
+ android:translateX="28.25"
+ android:translateY="443">
+ <group
+ android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0"
+ android:translateX="-60"
+ android:translateY="53">
+ <path
+ android:name="_R_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#000000"
+ android:fillType="nonZero"
+ android:pathData=" M28.25 0 C28.25,31.2 2.95,56.5 -28.25,56.5 C-28.25,56.5 -28.25,-56.5 -28.25,-56.5 C2.95,-56.5 28.25,-31.2 28.25,0c " />
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_1_G"
+ android:rotation="180"
+ android:scaleY="0"
+ android:translateX="25.75"
+ android:translateY="496">
+ <group
+ android:name="_R_G_L_1_G_D_0_P_0_G_0_T_0"
+ android:scaleX="0.5"
+ android:scaleY="0.5"
+ android:translateX="39"
+ android:translateY="0">
+ <path
+ android:name="_R_G_L_1_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#ffffff"
+ android:fillType="nonZero"
+ android:pathData=" M3.87 -13.45 C3.07,-14.21 1.8,-14.18 1.04,-13.38 C0.28,-12.58 0.31,-11.31 1.11,-10.55 C1.11,-10.55 9.75,-2.32 9.75,-2.32 C9.75,-2.32 -14.75,-2.32 -14.75,-2.32 C-15.85,-2.32 -16.75,-1.43 -16.75,-0.32 C-16.75,0.78 -15.85,1.68 -14.75,1.68 C-14.75,1.68 9.94,1.68 9.94,1.68 C9.94,1.68 1.07,10.59 1.07,10.59 C0.29,11.37 0.29,12.64 1.08,13.42 C1.86,14.2 3.13,14.19 3.9,13.41 C3.9,13.41 16.17,1.09 16.17,1.09 C16.55,0.71 16.76,0.19 16.75,-0.35 C16.74,-0.89 16.52,-1.4 16.13,-1.77 C16.13,-1.77 3.87,-13.45 3.87,-13.45c " />
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#84ba69"
+ android:fillType="nonZero"
+ android:pathData=" M-206.5 13.5 C-186.34,13.5 -170,29.84 -170,50 C-170,70.16 -186.34,86.5 -206.5,86.5 C-226.66,86.5 -243,70.16 -243,50 C-243,29.84 -226.66,13.5 -206.5,13.5c " />
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_motion_back_right.xml b/quickstep/res/drawable/gesture_tutorial_motion_back_right.xml
new file mode 100644
index 0000000..f8d649a
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_motion_back_right.xml
@@ -0,0 +1,1413 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_1_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_2_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_3_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_4_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_5_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_6_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_7_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_8_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_9_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_10_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_11_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_12_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G_L_0_G_D_13_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1367"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="283"
+ android:propertyName="scaleX"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0.88012"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="283"
+ android:propertyName="scaleY"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0.88012"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,0.536 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2417"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_1_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_2_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_3_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_4_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_5_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_6_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_7_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_8_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_9_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_10_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_11_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_12_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_13_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_14_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_15_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_16_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_17_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_18_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_19_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_20_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_21_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_22_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G_D_23_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="fillAlpha"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1417"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="667"
+ android:pathData="M 414,53C 404.333,53 365.667,53 356,53"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:pathData="M 356,53C 356,53 356,53 356,53"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="883">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0.333 0,0 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:pathData="M 356,53C 365.667,53 404.333,53 414,53"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="1217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="217"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2467"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="417"
+ android:propertyName="fillAlpha"
+ android:startOffset="383"
+ android:valueFrom="0"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="417"
+ android:propertyName="fillAlpha"
+ android:startOffset="800"
+ android:valueFrom="0.5"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="200"
+ android:propertyName="fillAlpha"
+ android:startOffset="1217"
+ android:valueFrom="0.5"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_D_0_P_0_G_0_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="583"
+ android:pathData="M -407,0C -399,0 -367,0 -359,0"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="417"
+ android:pathData="M -359,0C -359,0 -359,0 -359,0"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="800">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0.333 0.667,0.667 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:pathData="M -359,0C -367,0 -399,0 -407,0"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="1217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_D_0_P_0_G_0_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="583"
+ android:propertyName="scaleX"
+ android:startOffset="217"
+ android:valueFrom="0.5"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="583"
+ android:propertyName="scaleY"
+ android:startOffset="217"
+ android:valueFrom="0.5"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="417"
+ android:propertyName="scaleX"
+ android:startOffset="800"
+ android:valueFrom="1"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="417"
+ android:propertyName="scaleY"
+ android:startOffset="800"
+ android:valueFrom="1"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="scaleX"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:propertyName="scaleY"
+ android:startOffset="1217"
+ android:valueFrom="1"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="383"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2333"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="fillAlpha"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="967"
+ android:propertyName="fillAlpha"
+ android:startOffset="217"
+ android:valueFrom="0.75"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="fillAlpha"
+ android:startOffset="1183"
+ android:valueFrom="0.75"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.833,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="pathData"
+ android:startOffset="0"
+ android:valueFrom="M205 13.5 C225.16,13.5 241.5,29.84 241.5,50 C241.5,70.16 225.16,86.5 205,86.5 C184.84,86.5 168.5,70.16 168.5,50 C168.5,29.84 184.84,13.5 205,13.5c "
+ android:valueTo="M205.5 0 C233.11,0 255.5,22.39 255.5,50 C255.5,77.61 233.11,100 205.5,100 C177.89,100 155.5,77.61 155.5,50 C155.5,22.39 177.89,0 205.5,0c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="583"
+ android:propertyName="pathData"
+ android:startOffset="217"
+ android:valueFrom="M205.5 0 C233.11,0 255.5,22.39 255.5,50 C255.5,77.61 233.11,100 205.5,100 C177.89,100 155.5,77.61 155.5,50 C155.5,22.39 177.89,0 205.5,0c "
+ android:valueTo="M0 0 C27.61,0 50,22.39 50,50 C50,77.61 27.61,100 0,100 C-27.61,100 -50,77.61 -50,50 C-50,22.39 -27.61,0 0,0c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="383"
+ android:propertyName="pathData"
+ android:startOffset="800"
+ android:valueFrom="M0 0 C27.61,0 50,22.39 50,50 C50,77.61 27.61,100 0,100 C-27.61,100 -50,77.61 -50,50 C-50,22.39 -27.61,0 0,0c "
+ android:valueTo="M0 0 C27.61,0 50,22.39 50,50 C50,77.61 27.61,100 0,100 C-27.61,100 -50,77.61 -50,50 C-50,22.39 -27.61,0 0,0c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="pathData"
+ android:startOffset="1183"
+ android:valueFrom="M0 0 C27.61,0 50,22.39 50,50 C50,77.61 27.61,100 0,100 C-27.61,100 -50,77.61 -50,50 C-50,22.39 -27.61,0 0,0c "
+ android:valueTo="M0 13.5 C20.16,13.5 36.5,29.84 36.5,50 C36.5,70.16 20.16,86.5 0,86.5 C-20.16,86.5 -36.5,70.16 -36.5,50 C-36.5,29.84 -20.16,13.5 0,13.5c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="1767"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_5_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_5_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G"
+ android:pivotX="206"
+ android:pivotY="446"
+ android:scaleX="1"
+ android:scaleY="1">
+ <group android:name="_R_G_L_4_G_L_0_G">
+ <group android:name="_R_G_L_4_G_L_0_G_L_0_G">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#f1f3f4"
+ android:fillType="nonZero"
+ android:pathData=" M412 101 C412,101 412,892 412,892 C412,892 0,892 0,892 C0,892 0,101 0,101 C0,101 412,101 412,101c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_1_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M412 0 C412,0 412,101 412,101 C412,101 0,101 0,101 C0,101 0,0 0,0 C0,0 412,0 412,0c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_2_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M383 804 C383,816.15 373.15,826 361,826 C361,826 51,826 51,826 C38.85,826 29,816.15 29,804 C29,791.85 38.85,782 51,782 C51,782 361,782 361,782 C373.15,782 383,791.85 383,804c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_3_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M201 47 C201,47 201,75 201,75 C201,77.21 199.21,79 197,79 C197,79 38,79 38,79 C35.79,79 34,77.21 34,75 C34,75 34,47 34,47 C34,44.79 35.79,43 38,43 C38,43 197,43 197,43 C199.21,43 201,44.79 201,47c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_4_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M388 47 C388,47 388,75 388,75 C388,77.21 386.21,79 384,79 C384,79 356,79 356,79 C353.79,79 352,77.21 352,75 C352,75 352,47 352,47 C352,44.79 353.79,43 356,43 C356,43 384,43 384,43 C386.21,43 388,44.79 388,47c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_5_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M336 47 C336,47 336,75 336,75 C336,77.21 334.21,79 332,79 C332,79 304,79 304,79 C301.79,79 300,77.21 300,75 C300,75 300,47 300,47 C300,44.79 301.79,43 304,43 C304,43 332,43 332,43 C334.21,43 336,44.79 336,47c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_6_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M70 618 C70,630.15 60.15,640 48,640 C35.85,640 26,630.15 26,618 C26,605.85 35.85,596 48,596 C60.15,596 70,605.85 70,618c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_7_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M70 396 C70,408.15 60.15,418 48,418 C35.85,418 26,408.15 26,396 C26,383.85 35.85,374 48,374 C60.15,374 70,383.85 70,396c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_8_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M394 248 C394,248 394,324 394,324 C394,333.94 385.94,342 376,342 C376,342 142,342 142,342 C132.06,342 124,333.94 124,324 C124,324 124,248 124,248 C124,238.06 132.06,230 142,230 C142,230 376,230 376,230 C385.94,230 394,238.06 394,248c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_9_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M393.94 468.38 C393.94,468.38 393.94,481.5 393.94,481.5 C393.94,483.71 392.15,485.5 389.94,485.5 C389.94,485.5 303.5,485.5 303.5,485.5 C301.29,485.5 299.5,483.71 299.5,481.5 C299.5,481.5 299.5,468.38 299.5,468.38 C299.5,466.17 301.29,464.38 303.5,464.38 C303.5,464.38 389.94,464.38 389.94,464.38 C392.15,464.38 393.94,466.17 393.94,468.38c M394 468 C394,477.67 386.17,485.5 376.5,485.5 C376.5,485.5 290,485.5 290,485.5 C280.33,485.5 272.5,477.67 272.5,468 C272.5,458.34 280.33,450.5 290,450.5 C290,450.5 376.5,450.5 376.5,450.5 C386.17,450.5 394,458.34 394,468c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_10_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M394 494 C394,494 394,547 394,547 C394,549.21 392.21,551 390,551 C390,551 164,551 164,551 C161.79,551 160,549.21 160,547 C160,547 160,494 160,494 C160,491.79 161.79,490 164,490 C164,490 390,490 390,490 C392.21,490 394,491.79 394,494c M394 508 C394,508 394,545 394,545 C394,554.94 385.94,563 376,563 C376,563 142,563 142,563 C132.06,563 124,554.94 124,545 C124,545 124,508 124,508 C124,498.06 132.06,490 142,490 C142,490 376,490 376,490 C385.94,490 394,498.06 394,508c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_11_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M394 690 C394,690 394,727 394,727 C394,736.94 385.94,745 376,745 C376,745 142,745 142,745 C132.06,745 124,736.94 124,727 C124,727 124,690 124,690 C124,680.06 132.06,672 142,672 C142,672 376,672 376,672 C385.94,672 394,680.06 394,690c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_12_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M267.5 617 C267.5,626.67 259.67,634.5 250,634.5 C250,634.5 104.5,634.5 104.5,634.5 C94.84,634.5 87,626.67 87,617 C87,607.34 94.84,599.5 104.5,599.5 C104.5,599.5 250,599.5 250,599.5 C259.67,599.5 267.5,607.34 267.5,617c " />
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_13_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M299 395.5 C299,405.17 291.16,413 281.5,413 C281.5,413 104.5,413 104.5,413 C94.84,413 87,405.17 87,395.5 C87,385.84 94.84,378 104.5,378 C104.5,378 281.5,378 281.5,378 C291.16,378 299,385.84 299,395.5c " />
+ </group>
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_3_G"
+ android:scaleY="0">
+ <group
+ android:name="_R_G_L_3_G_L_0_G"
+ android:scaleY="0">
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_0_G"
+ android:scaleY="0">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M412 0 C412,0 412,892 412,892 C412,892 0,892 0,892 C0,892 0,0 0,0 C0,0 412,0 412,0c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_1_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M412 0 C412,0 412,101 412,101 C412,101 0,101 0,101 C0,101 0,0 0,0 C0,0 412,0 412,0c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_2_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M195 143 C195,143 195,153 195,153 C195,155.21 193.21,157 191,157 C191,157 106,157 106,157 C103.79,157 102,155.21 102,153 C102,153 102,143 102,143 C102,140.79 103.79,139 106,139 C106,139 191,139 191,139 C193.21,139 195,140.79 195,143c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_3_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M270 165 C270,165 270,173 270,173 C270,175.21 268.21,177 266,177 C266,177 106,177 106,177 C103.79,177 102,175.21 102,173 C102,173 102,165 102,165 C102,162.79 103.79,161 106,161 C106,161 266,161 266,161 C268.21,161 270,162.79 270,165c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_4_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M222 231 C222,231 222,241 222,241 C222,243.21 220.21,245 218,245 C218,245 106,245 106,245 C103.79,245 102,243.21 102,241 C102,241 102,231 102,231 C102,228.79 103.79,227 106,227 C106,227 218,227 218,227 C220.21,227 222,228.79 222,231c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_5_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M241 253 C241,253 241,261 241,261 C241,263.21 239.21,265 237,265 C237,265 106,265 106,265 C103.79,265 102,263.21 102,261 C102,261 102,253 102,253 C102,250.79 103.79,249 106,249 C106,249 237,249 237,249 C239.21,249 241,250.79 241,253c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_6_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M214 319 C214,319 214,329 214,329 C214,331.21 212.21,333 210,333 C210,333 106,333 106,333 C103.79,333 102,331.21 102,329 C102,329 102,319 102,319 C102,316.79 103.79,315 106,315 C106,315 210,315 210,315 C212.21,315 214,316.79 214,319c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_7_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M333 341 C333,341 333,349 333,349 C333,351.21 331.21,353 329,353 C329,353 106,353 106,353 C103.79,353 102,351.21 102,349 C102,349 102,341 102,341 C102,338.79 103.79,337 106,337 C106,337 329,337 329,337 C331.21,337 333,338.79 333,341c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_8_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M238 407 C238,407 238,417 238,417 C238,419.21 236.21,421 234,421 C234,421 106,421 106,421 C103.79,421 102,419.21 102,417 C102,417 102,407 102,407 C102,404.79 103.79,403 106,403 C106,403 234,403 234,403 C236.21,403 238,404.79 238,407c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_9_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M295 429 C295,429 295,437 295,437 C295,439.21 293.21,441 291,441 C291,441 106,441 106,441 C103.79,441 102,439.21 102,437 C102,437 102,429 102,429 C102,426.79 103.79,425 106,425 C106,425 291,425 291,425 C293.21,425 295,426.79 295,429c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_10_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M168 495 C168,495 168,505 168,505 C168,507.21 166.21,509 164,509 C164,509 106,509 106,509 C103.79,509 102,507.21 102,505 C102,505 102,495 102,495 C102,492.79 103.79,491 106,491 C106,491 164,491 164,491 C166.21,491 168,492.79 168,495c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_11_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M269 517 C269,517 269,525 269,525 C269,527.21 267.21,529 265,529 C265,529 106,529 106,529 C103.79,529 102,527.21 102,525 C102,525 102,517 102,517 C102,514.79 103.79,513 106,513 C106,513 265,513 265,513 C267.21,513 269,514.79 269,517c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_12_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M235 583 C235,583 235,593 235,593 C235,595.21 233.21,597 231,597 C231,597 106,597 106,597 C103.79,597 102,595.21 102,593 C102,593 102,583 102,583 C102,580.79 103.79,579 106,579 C106,579 231,579 231,579 C233.21,579 235,580.79 235,583c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_13_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M295 605 C295,605 295,613 295,613 C295,615.21 293.21,617 291,617 C291,617 106,617 106,617 C103.79,617 102,615.21 102,613 C102,613 102,605 102,605 C102,602.79 103.79,601 106,601 C106,601 291,601 291,601 C293.21,601 295,602.79 295,605c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_14_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M223 671 C223,671 223,681 223,681 C223,683.21 221.21,685 219,685 C219,685 106,685 106,685 C103.79,685 102,683.21 102,681 C102,681 102,671 102,671 C102,668.79 103.79,667 106,667 C106,667 219,667 219,667 C221.21,667 223,668.79 223,671c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_15_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M246 693 C246,693 246,701 246,701 C246,703.21 244.21,705 242,705 C242,705 106,705 106,705 C103.79,705 102,703.21 102,701 C102,701 102,693 102,693 C102,690.79 103.79,689 106,689 C106,689 242,689 242,689 C244.21,689 246,690.79 246,693c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_16_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M388 798 C388,798 388,798 388,798 C388,813.45 375.45,826 360,826 C360,826 267,826 267,826 C251.55,826 239,813.45 239,798 C239,798 239,798 239,798 C239,782.55 251.55,770 267,770 C267,770 360,770 360,770 C375.45,770 388,782.55 388,798c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_17_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#f8f9fa"
+ android:fillType="nonZero"
+ android:pathData=" M377 47 C377,47 377,75 377,75 C377,77.21 375.21,79 373,79 C373,79 38,79 38,79 C35.79,79 34,77.21 34,75 C34,75 34,47 34,47 C34,44.79 35.79,43 38,43 C38,43 373,43 373,43 C375.21,43 377,44.79 377,47c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_18_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 157 C82,172.46 69.46,185 54,185 C38.54,185 26,172.46 26,157 C26,141.54 38.54,129 54,129 C69.46,129 82,141.54 82,157c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_19_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 245 C82,260.46 69.46,273 54,273 C38.54,273 26,260.46 26,245 C26,229.54 38.54,217 54,217 C69.46,217 82,229.54 82,245c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_20_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 333 C82,348.46 69.46,361 54,361 C38.54,361 26,348.46 26,333 C26,317.54 38.54,305 54,305 C69.46,305 82,317.54 82,333c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_21_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 421 C82,436.46 69.46,449 54,449 C38.54,449 26,436.46 26,421 C26,405.54 38.54,393 54,393 C69.46,393 82,405.54 82,421c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_22_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 509 C82,524.46 69.46,537 54,537 C38.54,537 26,524.46 26,509 C26,493.54 38.54,481 54,481 C69.46,481 82,493.54 82,509c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_23_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 597 C82,612.46 69.46,625 54,625 C38.54,625 26,612.46 26,597 C26,581.54 38.54,569 54,569 C69.46,569 82,581.54 82,597c " />
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_24_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M82 685 C82,700.46 69.46,713 54,713 C38.54,713 26,700.46 26,685 C26,669.54 38.54,657 54,657 C69.46,657 82,669.54 82,685c " />
+ </group>
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_2_G"
+ android:scaleY="0"
+ android:translateX="28.25"
+ android:translateY="443">
+ <group
+ android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0"
+ android:rotation="180"
+ android:translateX="414"
+ android:translateY="53">
+ <path
+ android:name="_R_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#000000"
+ android:fillType="nonZero"
+ android:pathData=" M28.25 0 C28.25,31.2 2.95,56.5 -28.25,56.5 C-28.25,56.5 -28.25,-56.5 -28.25,-56.5 C2.95,-56.5 28.25,-31.2 28.25,0c " />
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_1_G"
+ android:rotation="180"
+ android:scaleY="0"
+ android:translateX="25.75"
+ android:translateY="496">
+ <group
+ android:name="_R_G_L_1_G_D_0_P_0_G_0_T_0"
+ android:scaleX="0.5"
+ android:scaleY="0.5"
+ android:translateX="-407"
+ android:translateY="0">
+ <path
+ android:name="_R_G_L_1_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#ffffff"
+ android:fillType="nonZero"
+ android:pathData=" M3.87 -13.45 C3.07,-14.21 1.8,-14.18 1.04,-13.38 C0.28,-12.58 0.31,-11.31 1.11,-10.55 C1.11,-10.55 9.75,-2.32 9.75,-2.32 C9.75,-2.32 -14.75,-2.32 -14.75,-2.32 C-15.85,-2.32 -16.75,-1.43 -16.75,-0.32 C-16.75,0.78 -15.85,1.68 -14.75,1.68 C-14.75,1.68 9.94,1.68 9.94,1.68 C9.94,1.68 1.07,10.59 1.07,10.59 C0.29,11.37 0.29,12.64 1.08,13.42 C1.86,14.2 3.13,14.19 3.9,13.41 C3.9,13.41 16.17,1.09 16.17,1.09 C16.55,0.71 16.76,0.19 16.75,-0.35 C16.74,-0.89 16.52,-1.4 16.13,-1.77 C16.13,-1.77 3.87,-13.45 3.87,-13.45c " />
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#84ba69"
+ android:fillType="nonZero"
+ android:pathData=" M205 13.5 C225.16,13.5 241.5,29.84 241.5,50 C241.5,70.16 225.16,86.5 205,86.5 C184.84,86.5 168.5,70.16 168.5,50 C168.5,29.84 184.84,13.5 205,13.5c " />
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_motion_home.xml b/quickstep/res/drawable/gesture_tutorial_motion_home.xml
new file mode 100644
index 0000000..9dbaee6
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_motion_home.xml
@@ -0,0 +1,1254 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_2_G_L_4_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="50"
+ android:propertyName="fillAlpha"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="fillAlpha"
+ android:startOffset="650"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_4_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="50"
+ android:pathData="M 206,776C 206,776 206,776 206,776"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="600">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="700"
+ android:pathData="M 206,776C 206,776 206,797 206,797"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="650">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_4_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="650"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_3_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="fillAlpha"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_3_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="700"
+ android:pathData="M 56,673C 56,673 56,706 56,706"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="600">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_3_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_2_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="fillAlpha"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_2_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="700"
+ android:pathData="M 156,673C 156,673 156,706 156,706"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="600">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_2_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_1_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="fillAlpha"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="700"
+ android:pathData="M 256,673C 256,673 256,706 256,706"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="600">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="fillAlpha"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="700"
+ android:pathData="M 356,673C 356,673 356,706 356,706"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="600">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.27,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="600"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_11_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#dadce0"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.215 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_10_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_9_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_8_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_7_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_6_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_5_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_4_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_3_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_2_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_1_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_4_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="517"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_3_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#bdc1c6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.92 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_3_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="517"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_2_G_L_2_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#e8eaed"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,1.232 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_2_G_L_1_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#80868b"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.674 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_2_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="100"
+ android:propertyName="fillColor"
+ android:startOffset="400"
+ android:valueFrom="#80868b"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.674 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_2_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="517"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_1_G_L_2_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="150"
+ android:propertyName="fillColor"
+ android:startOffset="350"
+ android:valueFrom="#202124"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.69 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_1_G_L_1_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="150"
+ android:propertyName="fillColor"
+ android:startOffset="350"
+ android:valueFrom="#202124"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.69 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_1_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="150"
+ android:propertyName="fillColor"
+ android:startOffset="350"
+ android:valueFrom="#3c4043"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.69 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="517"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="133"
+ android:propertyName="fillColor"
+ android:startOffset="500"
+ android:valueFrom="#bac4d6"
+ android:valueTo="#bac4d6"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="50"
+ android:propertyName="fillColor"
+ android:startOffset="633"
+ android:valueFrom="#bac4d6"
+ android:valueTo="#8ab4f8"
+ android:valueType="colorType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,-0.214 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="283"
+ android:propertyName="fillAlpha"
+ android:startOffset="500"
+ android:valueFrom="1"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.4,0 0.999,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="283"
+ android:propertyName="pathData"
+ android:startOffset="500"
+ android:valueFrom="M206.06 -430.06 C206.06,-430.06 206,431 206,431 C206,446 189.75,446 189.79,446 C189.79,446 -189.98,446 -189.98,446 C-189.94,446 -206,446 -206,431 C-206,431 -206,-430 -206,-430 C-206,-446 -189.97,-446 -190.01,-446 C-190.01,-446 188.98,-446.06 188.98,-446.06 C188.94,-446.06 206,-446 206.06,-430.06c "
+ android:valueTo="M60 -0.06 C60,-0.06 60,0.06 60,0.06 C60,28 36,60.25 -0.02,60.25 C-0.02,60.25 0.02,60.25 0.02,60.25 C-32.5,60.25 -60,31.5 -60,0.06 C-60,0.06 -60,-0.06 -60,-0.06 C-60,-31.25 -34,-59.25 0.02,-59.25 C0.02,-59.25 -0.02,-59.25 -0.02,-59.25 C33.5,-59.25 60,-38 60,-0.06c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.4,0 0.999,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="500"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="850"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_T_1">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="283"
+ android:pathData="M 206,446C 201.417,411.133 195,385.297 195,385.297"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="333"
+ android:pathData="M 195,385.297C 195,385.297 105.5,148.09000000000003 56,691.5"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="500">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.443,0.093 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_T_1">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="467"
+ android:propertyName="scaleX"
+ android:startOffset="217"
+ android:valueFrom="1"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="467"
+ android:propertyName="scaleY"
+ android:startOffset="217"
+ android:valueFrom="1"
+ android:valueTo="0.5"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_T_1">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2167"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="fillAlpha"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="233"
+ android:propertyName="fillAlpha"
+ android:startOffset="217"
+ android:valueFrom="0.75"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="fillAlpha"
+ android:startOffset="450"
+ android:valueFrom="0.75"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0.167 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="pathData"
+ android:startOffset="0"
+ android:valueFrom="M0 411 C19.33,411 35,426.67 35,446 C35,465.33 19.33,481 0,481 C-19.33,481 -35,465.33 -35,446 C-35,426.67 -19.33,411 0,411c "
+ android:valueTo="M0 396 C27.61,396 50,418.39 50,446 C50,473.61 27.61,496 0,496 C-27.61,496 -50,473.61 -50,446 C-50,418.39 -27.61,396 0,396c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="433"
+ android:propertyName="pathData"
+ android:startOffset="217"
+ android:valueFrom="M0 396 C27.61,396 50,418.39 50,446 C50,473.61 27.61,496 0,496 C-27.61,496 -50,473.61 -50,446 C-50,418.39 -27.61,396 0,396c "
+ android:valueTo="M0 68 C27.61,68 50,90.39 50,118 C50,145.61 27.61,168 0,168 C-27.61,168 -50,145.61 -50,118 C-50,90.39 -27.61,68 0,68c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2167"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="1367"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_3_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_3_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#000000"
+ android:fillType="nonZero"
+ android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c " />
+ </group>
+ <group
+ android:name="_R_G_L_2_G"
+ android:scaleY="0">
+ <group
+ android:name="_R_G_L_2_G_L_4_G"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="776">
+ <path
+ android:name="_R_G_L_2_G_L_4_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#3c4043"
+ android:fillType="nonZero"
+ android:pathData=" M180 0 C180,0 180,0 180,0 C180,13.8 168.8,25 155,25 C155,25 -155,25 -155,25 C-168.8,25 -180,13.8 -180,0 C-180,0 -180,0 -180,0 C-180,-13.8 -168.8,-25 -155,-25 C-155,-25 155,-25 155,-25 C168.8,-25 180,-13.8 180,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_2_G_L_3_G"
+ android:scaleY="0"
+ android:translateX="56"
+ android:translateY="673">
+ <path
+ android:name="_R_G_L_2_G_L_3_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#8ab4f8"
+ android:fillType="nonZero"
+ android:pathData=" M0 -30 C16.56,-30 30,-16.56 30,0 C30,16.56 16.56,30 0,30 C-16.56,30 -30,16.56 -30,0 C-30,-16.56 -16.56,-30 0,-30c " />
+ </group>
+ <group
+ android:name="_R_G_L_2_G_L_2_G"
+ android:scaleY="0"
+ android:translateX="156"
+ android:translateY="673">
+ <path
+ android:name="_R_G_L_2_G_L_2_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#f28b82"
+ android:fillType="nonZero"
+ android:pathData=" M0 -30 C16.56,-30 30,-16.56 30,0 C30,16.56 16.56,30 0,30 C-16.56,30 -30,16.56 -30,0 C-30,-16.56 -16.56,-30 0,-30c " />
+ </group>
+ <group
+ android:name="_R_G_L_2_G_L_1_G"
+ android:scaleY="0"
+ android:translateX="256"
+ android:translateY="673">
+ <path
+ android:name="_R_G_L_2_G_L_1_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#fdd663"
+ android:fillType="nonZero"
+ android:pathData=" M0 -30 C16.56,-30 30,-16.56 30,0 C30,16.56 16.56,30 0,30 C-16.56,30 -30,16.56 -30,0 C-30,-16.56 -16.56,-30 0,-30c " />
+ </group>
+ <group
+ android:name="_R_G_L_2_G_L_0_G"
+ android:scaleY="0"
+ android:translateX="356"
+ android:translateY="673">
+ <path
+ android:name="_R_G_L_2_G_L_0_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#81c995"
+ android:fillType="nonZero"
+ android:pathData=" M0 -30 C16.56,-30 30,-16.56 30,0 C30,16.56 16.56,30 0,30 C-16.56,30 -30,16.56 -30,0 C-30,-16.56 -16.56,-30 0,-30c " />
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_1_G_T_1"
+ android:scaleX="1"
+ android:scaleY="1"
+ android:translateX="206"
+ android:translateY="446">
+ <group
+ android:name="_R_G_L_1_G"
+ android:translateX="-206"
+ android:translateY="-446">
+ <group android:name="_R_G_L_1_G_L_4_G">
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_11_G"
+ android:scaleX="0.87473"
+ android:scaleY="0.98643"
+ android:translateX="206"
+ android:translateY="472.769">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_11_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M235.5 -407 C235.5,-407 235.5,407 235.5,407 C235.5,416.93 227.43,425 217.5,425 C217.5,425 -217.5,425 -217.5,425 C-227.43,425 -235.5,416.93 -235.5,407 C-235.5,407 -235.5,-407 -235.5,-407 C-235.5,-416.93 -227.43,-425 -217.5,-425 C-217.5,-425 217.5,-425 217.5,-425 C227.43,-425 235.5,-416.93 235.5,-407c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_10_G"
+ android:translateX="182.5"
+ android:translateY="831">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_10_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M158.5 -3 C158.5,-3 158.5,3 158.5,3 C158.5,7.42 154.92,11 150.5,11 C150.5,11 -150.5,11 -150.5,11 C-154.92,11 -158.5,7.42 -158.5,3 C-158.5,3 -158.5,-3 -158.5,-3 C-158.5,-7.42 -154.92,-11 -150.5,-11 C-150.5,-11 150.5,-11 150.5,-11 C154.92,-11 158.5,-7.42 158.5,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_9_G"
+ android:translateX="186"
+ android:translateY="801">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_9_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M162 -3 C162,-3 162,3 162,3 C162,7.42 158.42,11 154,11 C154,11 -154,11 -154,11 C-158.42,11 -162,7.42 -162,3 C-162,3 -162,-3 -162,-3 C-162,-7.42 -158.42,-11 -154,-11 C-154,-11 154,-11 154,-11 C158.42,-11 162,-7.42 162,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_8_G"
+ android:translateX="119"
+ android:translateY="755">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_8_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M95 -3 C95,-3 95,3 95,3 C95,7.42 91.42,11 87,11 C87,11 -87,11 -87,11 C-91.42,11 -95,7.42 -95,3 C-95,3 -95,-3 -95,-3 C-95,-7.42 -91.42,-11 -87,-11 C-87,-11 87,-11 87,-11 C91.42,-11 95,-7.42 95,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_7_G"
+ android:translateX="182.5"
+ android:translateY="725">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_7_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M158.5 -3 C158.5,-3 158.5,3 158.5,3 C158.5,7.42 154.92,11 150.5,11 C150.5,11 -150.5,11 -150.5,11 C-154.92,11 -158.5,7.42 -158.5,3 C-158.5,3 -158.5,-3 -158.5,-3 C-158.5,-7.42 -154.92,-11 -150.5,-11 C-150.5,-11 150.5,-11 150.5,-11 C154.92,-11 158.5,-7.42 158.5,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_6_G"
+ android:translateX="197.5"
+ android:translateY="695">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_6_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M173.5 -3 C173.5,-3 173.5,3 173.5,3 C173.5,7.42 169.92,11 165.5,11 C165.5,11 -165.5,11 -165.5,11 C-169.92,11 -173.5,7.42 -173.5,3 C-173.5,3 -173.5,-3 -173.5,-3 C-173.5,-7.42 -169.92,-11 -165.5,-11 C-165.5,-11 165.5,-11 165.5,-11 C169.92,-11 173.5,-7.42 173.5,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_5_G"
+ android:translateX="192"
+ android:translateY="665">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_5_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M168 -3 C168,-3 168,3 168,3 C168,7.42 164.42,11 160,11 C160,11 -160,11 -160,11 C-164.42,11 -168,7.42 -168,3 C-168,3 -168,-3 -168,-3 C-168,-7.42 -164.42,-11 -160,-11 C-160,-11 160,-11 160,-11 C164.42,-11 168,-7.42 168,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_4_G"
+ android:translateX="105.5"
+ android:translateY="360">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_4_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_3_G"
+ android:translateX="47.5"
+ android:translateY="360">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_3_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_2_G"
+ android:translateX="142.5"
+ android:translateY="328">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M118.5 -10 C118.5,-10 118.5,10 118.5,10 C118.5,14.42 114.92,18 110.5,18 C110.5,18 -110.5,18 -110.5,18 C-114.92,18 -118.5,14.42 -118.5,10 C-118.5,10 -118.5,-10 -118.5,-10 C-118.5,-14.42 -114.92,-18 -110.5,-18 C-110.5,-18 110.5,-18 110.5,-18 C114.92,-18 118.5,-14.42 118.5,-10c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_1_G"
+ android:translateX="186"
+ android:translateY="284">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M162 -10 C162,-10 162,10 162,10 C162,14.42 158.42,18 154,18 C154,18 -154,18 -154,18 C-158.42,18 -162,14.42 -162,10 C-162,10 -162,-10 -162,-10 C-162,-14.42 -158.42,-18 -154,-18 C-154,-18 154,-18 154,-18 C158.42,-18 162,-14.42 162,-10c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_4_G_L_0_G"
+ android:translateX="155"
+ android:translateY="240">
+ <path
+ android:name="_R_G_L_1_G_L_4_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M131 -10 C131,-10 131,10 131,10 C131,14.42 127.42,18 123,18 C123,18 -123,18 -123,18 C-127.42,18 -131,14.42 -131,10 C-131,10 -131,-10 -131,-10 C-131,-14.42 -127.42,-18 -123,-18 C-123,-18 123,-18 123,-18 C127.42,-18 131,-14.42 131,-10c " />
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_3_G"
+ android:translateX="24"
+ android:translateY="390">
+ <group
+ android:name="_R_G_L_1_G_L_3_G_L_0_G"
+ android:translateX="182"
+ android:translateY="120">
+ <path
+ android:name="_R_G_L_1_G_L_3_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M182 -98 C182,-98 182,98 182,98 C182,110.14 172.14,120 160,120 C160,120 -160,120 -160,120 C-172.14,120 -182,110.14 -182,98 C-182,98 -182,-98 -182,-98 C-182,-110.14 -172.14,-120 -160,-120 C-160,-120 160,-120 160,-120 C172.14,-120 182,-110.14 182,-98c " />
+ </group>
+ </group>
+ <group android:name="_R_G_L_1_G_L_2_G">
+ <group
+ android:name="_R_G_L_1_G_L_2_G_L_2_G"
+ android:translateX="206"
+ android:translateY="145">
+ <path
+ android:name="_R_G_L_1_G_L_2_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M206 -95.63 C206,-95.63 206,42.37 206,42.37 C206,43.47 205.1,44.37 204,44.37 C204,44.37 -204,44.37 -204,44.37 C-205.1,44.37 -206,43.47 -206,42.37 C-206,42.37 -206,-95.63 -206,-95.63 C-206,-96.73 -205.1,-97.63 -204,-97.63 C-204,-97.63 204,-97.63 204,-97.63 C205.1,-97.63 206,-96.73 206,-95.63c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_2_G_L_1_G"
+ android:translateX="206"
+ android:translateY="145">
+ <path
+ android:name="_R_G_L_1_G_L_2_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#80868b"
+ android:fillType="nonZero"
+ android:pathData=" M109 -14 C109,-14 109,14 109,14 C109,15.1 108.1,16 107,16 C107,16 -107,16 -107,16 C-108.1,16 -109,15.1 -109,14 C-109,14 -109,-14 -109,-14 C-109,-15.1 -108.1,-16 -107,-16 C-107,-16 107,-16 107,-16 C108.1,-16 109,-15.1 109,-14c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_2_G_L_0_G"
+ android:translateX="46"
+ android:translateY="145">
+ <path
+ android:name="_R_G_L_1_G_L_2_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#80868b"
+ android:fillType="nonZero"
+ android:pathData=" M22 -14 C22,-14 22,14 22,14 C22,18.42 18.42,22 14,22 C14,22 -14,22 -14,22 C-18.42,22 -22,18.42 -22,14 C-22,14 -22,-14 -22,-14 C-22,-18.42 -18.42,-22 -14,-22 C-14,-22 14,-22 14,-22 C18.42,-22 22,-18.42 22,-14c " />
+ </group>
+ </group>
+ <group android:name="_R_G_L_1_G_L_1_G">
+ <group
+ android:name="_R_G_L_1_G_L_1_G_L_2_G"
+ android:translateX="206"
+ android:translateY="51">
+ <path
+ android:name="_R_G_L_1_G_L_1_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#202124"
+ android:fillType="nonZero"
+ android:pathData=" M206 -0.27 C206,-0.27 206,49.73 206,49.73 C206,49.73 -206,49.73 -206,49.73 C-206,49.73 -206,-0.27 -206,-0.27 C-206,-0.27 206,-0.27 206,-0.27c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_1_G_L_1_G"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_1_G_L_1_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#202124"
+ android:fillType="nonZero"
+ android:pathData=" M206 -32.5 C206,-32.5 206,32.5 206,32.5 C206,42.43 197.93,50.5 188,50.5 C188,50.5 -188,50.5 -188,50.5 C-197.93,50.5 -206,42.43 -206,32.5 C-206,32.5 -206,-32.5 -206,-32.5 C-206,-42.43 -197.93,-50.5 -188,-50.5 C-188,-50.5 188,-50.5 188,-50.5 C197.93,-50.5 206,-42.43 206,-32.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_1_G_L_0_G"
+ android:translateX="206"
+ android:translateY="66.5">
+ <path
+ android:name="_R_G_L_1_G_L_1_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#3c4043"
+ android:fillType="nonZero"
+ android:pathData=" M190 0 C190,0 190,0 190,0 C190,10.21 181.71,18.5 171.5,18.5 C171.5,18.5 -171.5,18.5 -171.5,18.5 C-181.71,18.5 -190,10.21 -190,0 C-190,0 -190,0 -190,0 C-190,-10.21 -181.71,-18.5 -171.5,-18.5 C-171.5,-18.5 171.5,-18.5 171.5,-18.5 C181.71,-18.5 190,-10.21 190,0c " />
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_1_G_L_0_G"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_1_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bac4d6"
+ android:fillType="nonZero"
+ android:pathData=" M206.06 -430.06 C206.06,-430.06 206,431 206,431 C206,446 189.75,446 189.79,446 C189.79,446 -189.98,446 -189.98,446 C-189.94,446 -206,446 -206,431 C-206,431 -206,-430 -206,-430 C-206,-446 -189.97,-446 -190.01,-446 C-190.01,-446 188.98,-446.06 188.98,-446.06 C188.94,-446.06 206,-446 206.06,-430.06c " />
+ </group>
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#84ba69"
+ android:fillType="nonZero"
+ android:pathData=" M0 411 C19.33,411 35,426.67 35,446 C35,465.33 19.33,481 0,481 C-19.33,481 -35,465.33 -35,446 C-35,426.67 -19.33,411 0,411c " />
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_motion_overview.xml b/quickstep/res/drawable/gesture_tutorial_motion_overview.xml
new file mode 100644
index 0000000..4751fa9
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_motion_overview.xml
@@ -0,0 +1,1623 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="_R_G_L_4_G_N_3_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="1050"
+ android:pathData="M 206,446C 206,446 206,395 206,395"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="217">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_N_3_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="1050"
+ android:propertyName="scaleX"
+ android:startOffset="217"
+ android:valueFrom="1"
+ android:valueTo="0.6"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="1050"
+ android:propertyName="scaleY"
+ android:startOffset="217"
+ android:valueFrom="1"
+ android:valueTo="0.6"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_4_G_N_3_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="3400"
+ android:valueFrom="1"
+ android:valueTo="0"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_28_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_27_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_26_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_25_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_24_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_23_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_22_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_21_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_20_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_19_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_18_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_17_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_16_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_15_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_14_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_13_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_12_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_11_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_10_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_9_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_8_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_7_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_6_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_5_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_4_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_3_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_2_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_L_0_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_N_2_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="350"
+ android:pathData="M 206,395C 206,403.5 206,437.5 206,446"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="2083">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_N_2_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="350"
+ android:propertyName="scaleX"
+ android:startOffset="2083"
+ android:valueFrom="0.6"
+ android:valueTo="0.72718"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="350"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0.6"
+ android:valueTo="0.72718"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="scaleX"
+ android:startOffset="2433"
+ android:valueFrom="0.72718"
+ android:valueTo="0.72"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="scaleY"
+ android:startOffset="2433"
+ android:valueFrom="0.72718"
+ android:valueTo="0.72"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_3_G_N_2_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0"
+ android:valueTo="0.6"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="scaleX"
+ android:startOffset="2567"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="scaleY"
+ android:startOffset="2567"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_N_2_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="350"
+ android:pathData="M 206,395C 206,403.5 206,437.5 206,446"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="2083">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_N_2_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="350"
+ android:propertyName="scaleX"
+ android:startOffset="2083"
+ android:valueFrom="0.6"
+ android:valueTo="0.72718"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="350"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0.6"
+ android:valueTo="0.72718"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="scaleX"
+ android:startOffset="2433"
+ android:valueFrom="0.72718"
+ android:valueTo="0.72"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="scaleY"
+ android:startOffset="2433"
+ android:valueFrom="0.72718"
+ android:valueTo="0.72"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_2_G_N_2_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="2567"
+ android:valueFrom="0"
+ android:valueTo="0.6"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="250"
+ android:pathData="M -556.176,-7.307C -556.176,-7.307 -421.176,-7.307 -421.176,-7.307"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="1350">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.272,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="417"
+ android:pathData="M -421.176,-7.307C -421.176,-7.307 -429.51,-7.307 -429.51,-7.307"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="1600">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_N_2_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="350"
+ android:pathData="M 206,395C 206,403.5 206,437.5 206,446"
+ android:propertyName="translateXY"
+ android:propertyXName="translateX"
+ android:propertyYName="translateY"
+ android:startOffset="2083">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_N_2_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="350"
+ android:propertyName="scaleX"
+ android:startOffset="2083"
+ android:valueFrom="0.6"
+ android:valueTo="0.72718"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="350"
+ android:propertyName="scaleY"
+ android:startOffset="2083"
+ android:valueFrom="0.6"
+ android:valueTo="0.72718"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="scaleX"
+ android:startOffset="2433"
+ android:valueFrom="0.72718"
+ android:valueTo="0.72"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="scaleY"
+ android:startOffset="2433"
+ android:valueFrom="0.72718"
+ android:valueTo="0.72"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_1_G_N_2_T_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="0"
+ android:propertyName="scaleY"
+ android:startOffset="1350"
+ android:valueFrom="0"
+ android:valueTo="0.6"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="fillAlpha"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.833 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="1833"
+ android:propertyName="fillAlpha"
+ android:startOffset="217"
+ android:valueFrom="0.75"
+ android:valueTo="0.75"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="fillAlpha"
+ android:startOffset="2050"
+ android:valueFrom="0.75"
+ android:valueTo="0"
+ android:valueType="floatType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="_R_G_L_0_G_D_0_P_0">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="217"
+ android:propertyName="pathData"
+ android:startOffset="0"
+ android:valueFrom="M0 406 C21.54,406 39,423.46 39,445 C39,466.54 21.54,484 0,484 C-21.54,484 -39,466.54 -39,445 C-39,423.46 -21.54,406 0,406c "
+ android:valueTo="M0 395 C27.61,395 50,417.39 50,445 C50,472.61 27.61,495 0,495 C-27.61,495 -50,472.61 -50,445 C-50,417.39 -27.61,395 0,395c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="1050"
+ android:propertyName="pathData"
+ android:startOffset="217"
+ android:valueFrom="M0 395 C27.61,395 50,417.39 50,445 C50,472.61 27.61,495 0,495 C-27.61,495 -50,472.61 -50,445 C-50,417.39 -27.61,395 0,395c "
+ android:valueTo="M0 166 C27.61,166 50,188.39 50,216 C50,243.61 27.61,266 0,266 C-27.61,266 -50,243.61 -50,216 C-50,188.39 -27.61,166 0,166c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="783"
+ android:propertyName="pathData"
+ android:startOffset="1267"
+ android:valueFrom="M0 166 C27.61,166 50,188.39 50,216 C50,243.61 27.61,266 0,266 C-27.61,266 -50,243.61 -50,216 C-50,188.39 -27.61,166 0,166c "
+ android:valueTo="M0 166 C27.61,166 50,188.39 50,216 C50,243.61 27.61,266 0,266 C-27.61,266 -50,243.61 -50,216 C-50,188.39 -27.61,166 0,166c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ <objectAnimator
+ android:duration="167"
+ android:propertyName="pathData"
+ android:startOffset="2050"
+ android:valueFrom="M0 166 C27.61,166 50,188.39 50,216 C50,243.61 27.61,266 0,266 C-27.61,266 -50,243.61 -50,216 C-50,188.39 -27.61,166 0,166c "
+ android:valueTo="M0 180 C19.88,180 36,196.12 36,216 C36,235.88 19.88,252 0,252 C-19.88,252 -36,235.88 -36,216 C-36,196.12 -19.88,180 0,180c "
+ android:valueType="pathType">
+ <aapt:attr name="android:interpolator">
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.667,1 1.0,1.0" />
+ </aapt:attr>
+ </objectAnimator>
+ </set>
+ </aapt:attr>
+ </target>
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="2750"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_5_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_5_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#000000"
+ android:fillType="nonZero"
+ android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_N_3_T_0"
+ android:scaleX="1"
+ android:scaleY="1"
+ android:translateX="206"
+ android:translateY="446">
+ <group
+ android:name="_R_G_L_4_G"
+ android:translateX="-206"
+ android:translateY="-446">
+ <group android:name="_R_G_L_4_G_L_0_G">
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_28_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_28_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#000000"
+ android:fillType="nonZero"
+ android:pathData=" M206 -422 C206,-422 206,422 206,422 C206,435.25 195.25,446 182,446 C182,446 -182,446 -182,446 C-195.25,446 -206,435.25 -206,422 C-206,422 -206,-422 -206,-422 C-206,-435.25 -195.25,-446 -182,-446 C-182,-446 182,-446 182,-446 C195.25,-446 206,-435.25 206,-422c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_27_G"
+ android:translateX="206"
+ android:translateY="422.5">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_27_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -395.5 C206,-395.5 206,395.5 206,395.5 C206,395.5 -206,395.5 -206,395.5 C-206,395.5 -206,-395.5 -206,-395.5 C-206,-395.5 206,-395.5 206,-395.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_26_G"
+ android:translateX="206"
+ android:translateY="496.5">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_26_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -377.5 C206,-377.5 206,377.5 206,377.5 C206,387.43 197.93,395.5 188,395.5 C188,395.5 -188,395.5 -188,395.5 C-197.93,395.5 -206,387.43 -206,377.5 C-206,377.5 -206,-377.5 -206,-377.5 C-206,-387.43 -197.93,-395.5 -188,-395.5 C-188,-395.5 188,-395.5 188,-395.5 C197.93,-395.5 206,-387.43 206,-377.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_25_G"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_25_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M206 -23.5 C206,-23.5 206,50.5 206,50.5 C206,50.5 -206,50.5 -206,50.5 C-206,50.5 -206,-23.5 -206,-23.5 C-206,-23.5 206,-23.5 206,-23.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_24_G"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_24_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M206 -32.5 C206,-32.5 206,32.5 206,32.5 C206,42.43 197.93,50.5 188,50.5 C188,50.5 -188,50.5 -188,50.5 C-197.93,50.5 -206,42.43 -206,32.5 C-206,32.5 -206,-32.5 -206,-32.5 C-206,-42.43 -197.93,-50.5 -188,-50.5 C-188,-50.5 188,-50.5 188,-50.5 C197.93,-50.5 206,-42.43 206,-32.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_23_G"
+ android:translateX="54"
+ android:translateY="157">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_23_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_22_G"
+ android:translateX="54"
+ android:translateY="157">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_22_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_21_G"
+ android:translateX="148.5"
+ android:translateY="148">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_21_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M46.5 -5 C46.5,-5 46.5,5 46.5,5 C46.5,7.21 44.71,9 42.5,9 C42.5,9 -42.5,9 -42.5,9 C-44.71,9 -46.5,7.21 -46.5,5 C-46.5,5 -46.5,-5 -46.5,-5 C-46.5,-7.21 -44.71,-9 -42.5,-9 C-42.5,-9 42.5,-9 42.5,-9 C44.71,-9 46.5,-7.21 46.5,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_20_G"
+ android:translateX="186"
+ android:translateY="169">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_20_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M84 -4 C84,-4 84,4 84,4 C84,6.21 82.21,8 80,8 C80,8 -80,8 -80,8 C-82.21,8 -84,6.21 -84,4 C-84,4 -84,-4 -84,-4 C-84,-6.21 -82.21,-8 -80,-8 C-80,-8 80,-8 80,-8 C82.21,-8 84,-6.21 84,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_19_G"
+ android:translateX="54"
+ android:translateY="245">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_19_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_18_G"
+ android:translateX="162"
+ android:translateY="236">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_18_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M60 -5 C60,-5 60,5 60,5 C60,7.21 58.21,9 56,9 C56,9 -56,9 -56,9 C-58.21,9 -60,7.21 -60,5 C-60,5 -60,-5 -60,-5 C-60,-7.21 -58.21,-9 -56,-9 C-56,-9 56,-9 56,-9 C58.21,-9 60,-7.21 60,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_17_G"
+ android:translateX="171.5"
+ android:translateY="257">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_17_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M69.5 -4 C69.5,-4 69.5,4 69.5,4 C69.5,6.21 67.71,8 65.5,8 C65.5,8 -65.5,8 -65.5,8 C-67.71,8 -69.5,6.21 -69.5,4 C-69.5,4 -69.5,-4 -69.5,-4 C-69.5,-6.21 -67.71,-8 -65.5,-8 C-65.5,-8 65.5,-8 65.5,-8 C67.71,-8 69.5,-6.21 69.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_16_G"
+ android:translateX="54"
+ android:translateY="333">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_16_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_15_G"
+ android:translateX="158"
+ android:translateY="324">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_15_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M56 -5 C56,-5 56,5 56,5 C56,7.21 54.21,9 52,9 C52,9 -52,9 -52,9 C-54.21,9 -56,7.21 -56,5 C-56,5 -56,-5 -56,-5 C-56,-7.21 -54.21,-9 -52,-9 C-52,-9 52,-9 52,-9 C54.21,-9 56,-7.21 56,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_14_G"
+ android:translateX="217.5"
+ android:translateY="345">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_14_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M115.5 -4 C115.5,-4 115.5,4 115.5,4 C115.5,6.21 113.71,8 111.5,8 C111.5,8 -111.5,8 -111.5,8 C-113.71,8 -115.5,6.21 -115.5,4 C-115.5,4 -115.5,-4 -115.5,-4 C-115.5,-6.21 -113.71,-8 -111.5,-8 C-111.5,-8 111.5,-8 111.5,-8 C113.71,-8 115.5,-6.21 115.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_13_G"
+ android:translateX="54"
+ android:translateY="421">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_13_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_12_G"
+ android:translateX="170"
+ android:translateY="412">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_12_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M68 -5 C68,-5 68,5 68,5 C68,7.21 66.21,9 64,9 C64,9 -64,9 -64,9 C-66.21,9 -68,7.21 -68,5 C-68,5 -68,-5 -68,-5 C-68,-7.21 -66.21,-9 -64,-9 C-64,-9 64,-9 64,-9 C66.21,-9 68,-7.21 68,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_11_G"
+ android:translateX="198.5"
+ android:translateY="433">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_11_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M96.5 -4 C96.5,-4 96.5,4 96.5,4 C96.5,6.21 94.71,8 92.5,8 C92.5,8 -92.5,8 -92.5,8 C-94.71,8 -96.5,6.21 -96.5,4 C-96.5,4 -96.5,-4 -96.5,-4 C-96.5,-6.21 -94.71,-8 -92.5,-8 C-92.5,-8 92.5,-8 92.5,-8 C94.71,-8 96.5,-6.21 96.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_10_G"
+ android:translateX="54"
+ android:translateY="509">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_10_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_9_G"
+ android:translateX="135"
+ android:translateY="500">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_9_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M33 -5 C33,-5 33,5 33,5 C33,7.21 31.21,9 29,9 C29,9 -29,9 -29,9 C-31.21,9 -33,7.21 -33,5 C-33,5 -33,-5 -33,-5 C-33,-7.21 -31.21,-9 -29,-9 C-29,-9 29,-9 29,-9 C31.21,-9 33,-7.21 33,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_8_G"
+ android:translateX="185.5"
+ android:translateY="521">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_8_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M83.5 -4 C83.5,-4 83.5,4 83.5,4 C83.5,6.21 81.71,8 79.5,8 C79.5,8 -79.5,8 -79.5,8 C-81.71,8 -83.5,6.21 -83.5,4 C-83.5,4 -83.5,-4 -83.5,-4 C-83.5,-6.21 -81.71,-8 -79.5,-8 C-79.5,-8 79.5,-8 79.5,-8 C81.71,-8 83.5,-6.21 83.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_7_G"
+ android:translateX="54"
+ android:translateY="597">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_7_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_6_G"
+ android:translateX="168.5"
+ android:translateY="588">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_6_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M66.5 -5 C66.5,-5 66.5,5 66.5,5 C66.5,7.21 64.71,9 62.5,9 C62.5,9 -62.5,9 -62.5,9 C-64.71,9 -66.5,7.21 -66.5,5 C-66.5,5 -66.5,-5 -66.5,-5 C-66.5,-7.21 -64.71,-9 -62.5,-9 C-62.5,-9 62.5,-9 62.5,-9 C64.71,-9 66.5,-7.21 66.5,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_5_G"
+ android:translateX="198.5"
+ android:translateY="609">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_5_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M96.5 -4 C96.5,-4 96.5,4 96.5,4 C96.5,6.21 94.71,8 92.5,8 C92.5,8 -92.5,8 -92.5,8 C-94.71,8 -96.5,6.21 -96.5,4 C-96.5,4 -96.5,-4 -96.5,-4 C-96.5,-6.21 -94.71,-8 -92.5,-8 C-92.5,-8 92.5,-8 92.5,-8 C94.71,-8 96.5,-6.21 96.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_4_G"
+ android:translateX="54"
+ android:translateY="685">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_4_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_3_G"
+ android:translateX="162.5"
+ android:translateY="676">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_3_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M60.5 -5 C60.5,-5 60.5,5 60.5,5 C60.5,7.21 58.71,9 56.5,9 C56.5,9 -56.5,9 -56.5,9 C-58.71,9 -60.5,7.21 -60.5,5 C-60.5,5 -60.5,-5 -60.5,-5 C-60.5,-7.21 -58.71,-9 -56.5,-9 C-56.5,-9 56.5,-9 56.5,-9 C58.71,-9 60.5,-7.21 60.5,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_2_G"
+ android:translateX="174"
+ android:translateY="697">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M72 -4 C72,-4 72,4 72,4 C72,6.21 70.21,8 68,8 C68,8 -68,8 -68,8 C-70.21,8 -72,6.21 -72,4 C-72,4 -72,-4 -72,-4 C-72,-6.21 -70.21,-8 -68,-8 C-68,-8 68,-8 68,-8 C70.21,-8 72,-6.21 72,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_1_G"
+ android:translateX="313.5"
+ android:translateY="798">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M74.5 0 C74.5,0 74.5,0 74.5,0 C74.5,15.45 61.95,28 46.5,28 C46.5,28 -46.5,28 -46.5,28 C-61.95,28 -74.5,15.45 -74.5,0 C-74.5,0 -74.5,0 -74.5,0 C-74.5,-15.45 -61.95,-28 -46.5,-28 C-46.5,-28 46.5,-28 46.5,-28 C61.95,-28 74.5,-15.45 74.5,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_4_G_L_0_G_L_0_G"
+ android:translateX="205.5"
+ android:translateY="61">
+ <path
+ android:name="_R_G_L_4_G_L_0_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#f8f9fa"
+ android:fillType="nonZero"
+ android:pathData=" M171.5 -14 C171.5,-14 171.5,14 171.5,14 C171.5,16.21 169.71,18 167.5,18 C167.5,18 -167.5,18 -167.5,18 C-169.71,18 -171.5,16.21 -171.5,14 C-171.5,14 -171.5,-14 -171.5,-14 C-171.5,-16.21 -169.71,-18 -167.5,-18 C-167.5,-18 167.5,-18 167.5,-18 C169.71,-18 171.5,-16.21 171.5,-14c " />
+ </group>
+ </group>
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_3_G_N_2_T_0"
+ android:scaleX="0.6"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="395">
+ <group
+ android:name="_R_G_L_3_G"
+ android:translateX="-206"
+ android:translateY="-446">
+ <group
+ android:name="_R_G_L_3_G_L_0_G"
+ android:scaleY="0">
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_28_G"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_28_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#000000"
+ android:fillType="nonZero"
+ android:pathData=" M206 -422 C206,-422 206,422 206,422 C206,435.25 195.25,446 182,446 C182,446 -182,446 -182,446 C-195.25,446 -206,435.25 -206,422 C-206,422 -206,-422 -206,-422 C-206,-435.25 -195.25,-446 -182,-446 C-182,-446 182,-446 182,-446 C195.25,-446 206,-435.25 206,-422c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_27_G"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="422.5">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_27_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -395.5 C206,-395.5 206,395.5 206,395.5 C206,395.5 -206,395.5 -206,395.5 C-206,395.5 -206,-395.5 -206,-395.5 C-206,-395.5 206,-395.5 206,-395.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_26_G"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="496.5">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_26_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -377.5 C206,-377.5 206,377.5 206,377.5 C206,387.43 197.93,395.5 188,395.5 C188,395.5 -188,395.5 -188,395.5 C-197.93,395.5 -206,387.43 -206,377.5 C-206,377.5 -206,-377.5 -206,-377.5 C-206,-387.43 -197.93,-395.5 -188,-395.5 C-188,-395.5 188,-395.5 188,-395.5 C197.93,-395.5 206,-387.43 206,-377.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_25_G"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_25_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M206 -23.5 C206,-23.5 206,50.5 206,50.5 C206,50.5 -206,50.5 -206,50.5 C-206,50.5 -206,-23.5 -206,-23.5 C-206,-23.5 206,-23.5 206,-23.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_24_G"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_24_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M206 -32.5 C206,-32.5 206,32.5 206,32.5 C206,42.43 197.93,50.5 188,50.5 C188,50.5 -188,50.5 -188,50.5 C-197.93,50.5 -206,42.43 -206,32.5 C-206,32.5 -206,-32.5 -206,-32.5 C-206,-42.43 -197.93,-50.5 -188,-50.5 C-188,-50.5 188,-50.5 188,-50.5 C197.93,-50.5 206,-42.43 206,-32.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_23_G"
+ android:scaleY="0"
+ android:translateX="54"
+ android:translateY="157">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_23_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_22_G"
+ android:scaleY="0"
+ android:translateX="54"
+ android:translateY="157">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_22_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_21_G"
+ android:scaleY="0"
+ android:translateX="148.5"
+ android:translateY="148">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_21_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M46.5 -5 C46.5,-5 46.5,5 46.5,5 C46.5,7.21 44.71,9 42.5,9 C42.5,9 -42.5,9 -42.5,9 C-44.71,9 -46.5,7.21 -46.5,5 C-46.5,5 -46.5,-5 -46.5,-5 C-46.5,-7.21 -44.71,-9 -42.5,-9 C-42.5,-9 42.5,-9 42.5,-9 C44.71,-9 46.5,-7.21 46.5,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_20_G"
+ android:scaleY="0"
+ android:translateX="186"
+ android:translateY="169">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_20_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M84 -4 C84,-4 84,4 84,4 C84,6.21 82.21,8 80,8 C80,8 -80,8 -80,8 C-82.21,8 -84,6.21 -84,4 C-84,4 -84,-4 -84,-4 C-84,-6.21 -82.21,-8 -80,-8 C-80,-8 80,-8 80,-8 C82.21,-8 84,-6.21 84,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_19_G"
+ android:scaleY="0"
+ android:translateX="54"
+ android:translateY="245">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_19_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_18_G"
+ android:scaleY="0"
+ android:translateX="162"
+ android:translateY="236">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_18_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M60 -5 C60,-5 60,5 60,5 C60,7.21 58.21,9 56,9 C56,9 -56,9 -56,9 C-58.21,9 -60,7.21 -60,5 C-60,5 -60,-5 -60,-5 C-60,-7.21 -58.21,-9 -56,-9 C-56,-9 56,-9 56,-9 C58.21,-9 60,-7.21 60,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_17_G"
+ android:scaleY="0"
+ android:translateX="171.5"
+ android:translateY="257">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_17_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M69.5 -4 C69.5,-4 69.5,4 69.5,4 C69.5,6.21 67.71,8 65.5,8 C65.5,8 -65.5,8 -65.5,8 C-67.71,8 -69.5,6.21 -69.5,4 C-69.5,4 -69.5,-4 -69.5,-4 C-69.5,-6.21 -67.71,-8 -65.5,-8 C-65.5,-8 65.5,-8 65.5,-8 C67.71,-8 69.5,-6.21 69.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_16_G"
+ android:scaleY="0"
+ android:translateX="54"
+ android:translateY="333">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_16_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_15_G"
+ android:scaleY="0"
+ android:translateX="158"
+ android:translateY="324">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_15_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M56 -5 C56,-5 56,5 56,5 C56,7.21 54.21,9 52,9 C52,9 -52,9 -52,9 C-54.21,9 -56,7.21 -56,5 C-56,5 -56,-5 -56,-5 C-56,-7.21 -54.21,-9 -52,-9 C-52,-9 52,-9 52,-9 C54.21,-9 56,-7.21 56,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_14_G"
+ android:scaleY="0"
+ android:translateX="217.5"
+ android:translateY="345">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_14_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M115.5 -4 C115.5,-4 115.5,4 115.5,4 C115.5,6.21 113.71,8 111.5,8 C111.5,8 -111.5,8 -111.5,8 C-113.71,8 -115.5,6.21 -115.5,4 C-115.5,4 -115.5,-4 -115.5,-4 C-115.5,-6.21 -113.71,-8 -111.5,-8 C-111.5,-8 111.5,-8 111.5,-8 C113.71,-8 115.5,-6.21 115.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_13_G"
+ android:scaleY="0"
+ android:translateX="54"
+ android:translateY="421">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_13_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_12_G"
+ android:scaleY="0"
+ android:translateX="170"
+ android:translateY="412">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_12_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M68 -5 C68,-5 68,5 68,5 C68,7.21 66.21,9 64,9 C64,9 -64,9 -64,9 C-66.21,9 -68,7.21 -68,5 C-68,5 -68,-5 -68,-5 C-68,-7.21 -66.21,-9 -64,-9 C-64,-9 64,-9 64,-9 C66.21,-9 68,-7.21 68,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_11_G"
+ android:scaleY="0"
+ android:translateX="198.5"
+ android:translateY="433">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_11_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M96.5 -4 C96.5,-4 96.5,4 96.5,4 C96.5,6.21 94.71,8 92.5,8 C92.5,8 -92.5,8 -92.5,8 C-94.71,8 -96.5,6.21 -96.5,4 C-96.5,4 -96.5,-4 -96.5,-4 C-96.5,-6.21 -94.71,-8 -92.5,-8 C-92.5,-8 92.5,-8 92.5,-8 C94.71,-8 96.5,-6.21 96.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_10_G"
+ android:scaleY="0"
+ android:translateX="54"
+ android:translateY="509">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_10_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_9_G"
+ android:scaleY="0"
+ android:translateX="135"
+ android:translateY="500">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_9_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M33 -5 C33,-5 33,5 33,5 C33,7.21 31.21,9 29,9 C29,9 -29,9 -29,9 C-31.21,9 -33,7.21 -33,5 C-33,5 -33,-5 -33,-5 C-33,-7.21 -31.21,-9 -29,-9 C-29,-9 29,-9 29,-9 C31.21,-9 33,-7.21 33,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_8_G"
+ android:scaleY="0"
+ android:translateX="185.5"
+ android:translateY="521">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_8_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M83.5 -4 C83.5,-4 83.5,4 83.5,4 C83.5,6.21 81.71,8 79.5,8 C79.5,8 -79.5,8 -79.5,8 C-81.71,8 -83.5,6.21 -83.5,4 C-83.5,4 -83.5,-4 -83.5,-4 C-83.5,-6.21 -81.71,-8 -79.5,-8 C-79.5,-8 79.5,-8 79.5,-8 C81.71,-8 83.5,-6.21 83.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_7_G"
+ android:scaleY="0"
+ android:translateX="54"
+ android:translateY="597">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_7_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_6_G"
+ android:scaleY="0"
+ android:translateX="168.5"
+ android:translateY="588">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_6_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M66.5 -5 C66.5,-5 66.5,5 66.5,5 C66.5,7.21 64.71,9 62.5,9 C62.5,9 -62.5,9 -62.5,9 C-64.71,9 -66.5,7.21 -66.5,5 C-66.5,5 -66.5,-5 -66.5,-5 C-66.5,-7.21 -64.71,-9 -62.5,-9 C-62.5,-9 62.5,-9 62.5,-9 C64.71,-9 66.5,-7.21 66.5,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_5_G"
+ android:scaleY="0"
+ android:translateX="198.5"
+ android:translateY="609">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_5_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M96.5 -4 C96.5,-4 96.5,4 96.5,4 C96.5,6.21 94.71,8 92.5,8 C92.5,8 -92.5,8 -92.5,8 C-94.71,8 -96.5,6.21 -96.5,4 C-96.5,4 -96.5,-4 -96.5,-4 C-96.5,-6.21 -94.71,-8 -92.5,-8 C-92.5,-8 92.5,-8 92.5,-8 C94.71,-8 96.5,-6.21 96.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_4_G"
+ android:scaleY="0"
+ android:translateX="54"
+ android:translateY="685">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_4_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_3_G"
+ android:scaleY="0"
+ android:translateX="162.5"
+ android:translateY="676">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_3_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M60.5 -5 C60.5,-5 60.5,5 60.5,5 C60.5,7.21 58.71,9 56.5,9 C56.5,9 -56.5,9 -56.5,9 C-58.71,9 -60.5,7.21 -60.5,5 C-60.5,5 -60.5,-5 -60.5,-5 C-60.5,-7.21 -58.71,-9 -56.5,-9 C-56.5,-9 56.5,-9 56.5,-9 C58.71,-9 60.5,-7.21 60.5,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_2_G"
+ android:scaleY="0"
+ android:translateX="174"
+ android:translateY="697">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M72 -4 C72,-4 72,4 72,4 C72,6.21 70.21,8 68,8 C68,8 -68,8 -68,8 C-70.21,8 -72,6.21 -72,4 C-72,4 -72,-4 -72,-4 C-72,-6.21 -70.21,-8 -68,-8 C-68,-8 68,-8 68,-8 C70.21,-8 72,-6.21 72,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_1_G"
+ android:scaleY="0"
+ android:translateX="313.5"
+ android:translateY="798">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M74.5 0 C74.5,0 74.5,0 74.5,0 C74.5,15.45 61.95,28 46.5,28 C46.5,28 -46.5,28 -46.5,28 C-61.95,28 -74.5,15.45 -74.5,0 C-74.5,0 -74.5,0 -74.5,0 C-74.5,-15.45 -61.95,-28 -46.5,-28 C-46.5,-28 46.5,-28 46.5,-28 C61.95,-28 74.5,-15.45 74.5,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_3_G_L_0_G_L_0_G"
+ android:scaleY="0"
+ android:translateX="205.5"
+ android:translateY="61">
+ <path
+ android:name="_R_G_L_3_G_L_0_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#f8f9fa"
+ android:fillType="nonZero"
+ android:pathData=" M171.5 -14 C171.5,-14 171.5,14 171.5,14 C171.5,16.21 169.71,18 167.5,18 C167.5,18 -167.5,18 -167.5,18 C-169.71,18 -171.5,16.21 -171.5,14 C-171.5,14 -171.5,-14 -171.5,-14 C-171.5,-16.21 -169.71,-18 -167.5,-18 C-167.5,-18 167.5,-18 167.5,-18 C169.71,-18 171.5,-16.21 171.5,-14c " />
+ </group>
+ </group>
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_2_G_N_2_T_0"
+ android:scaleX="0.6"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="395">
+ <group
+ android:name="_R_G_L_2_G"
+ android:scaleX="1.3767699999999998"
+ android:scaleY="1.3767699999999998"
+ android:translateY="-508.163">
+ <group
+ android:name="_R_G_L_2_G_D_0_P_0_G_0_T_0"
+ android:scaleX="0"
+ android:scaleY="0">
+ <path
+ android:name="_R_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M0 25 C13.81,25 25,13.81 25,0 C25,-13.81 13.81,-25 0,-25 C-13.81,-25 -25,-13.81 -25,0 C-25,13.81 -13.81,25 0,25c " />
+ </group>
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_1_G_N_2_T_0"
+ android:scaleX="0.6"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="395">
+ <group
+ android:name="_R_G_L_1_G"
+ android:scaleX="1.39"
+ android:scaleY="1.39"
+ android:translateX="-556.176"
+ android:translateY="-7.307">
+ <path
+ android:name="_R_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#3c4043"
+ android:fillType="nonZero"
+ android:pathData=" M135 -301 C135,-301 135,311 135,311 C135,319.28 128.28,326 120,326 C120,326 -120,326 -120,326 C-128.28,326 -135,319.28 -135,311 C-135,311 -135,-301 -135,-301 C-135,-309.28 -128.28,-316 -120,-316 C-120,-316 120,-316 120,-316 C128.28,-316 135,-309.28 135,-301c " />
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_0_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_G_D_0_P_0"
+ android:fillAlpha="0"
+ android:fillColor="#84ba69"
+ android:fillType="nonZero"
+ android:pathData=" M0 406 C21.54,406 39,423.46 39,445 C39,466.54 21.54,484 0,484 C-21.54,484 -39,466.54 -39,445 C-39,423.46 -21.54,406 0,406c " />
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_overview.xml b/quickstep/res/drawable/gesture_tutorial_overview.xml
deleted file mode 100644
index c4ca72f..0000000
--- a/quickstep/res/drawable/gesture_tutorial_overview.xml
+++ /dev/null
@@ -1,823 +0,0 @@
-<animated-vector xmlns:android="http://schemas.android.com/apk/res/android" xmlns:aapt="http://schemas.android.com/aapt">
- <aapt:attr name="android:drawable">
- <vector android:height="892dp" android:width="412dp" android:viewportHeight="892" android:viewportWidth="412">
- <group android:name="_R_G">
- <group android:name="_R_G_L_7_G" android:translateX="206" android:translateY="446">
- <path android:name="_R_G_L_7_G_D_0_P_0" android:fillColor="#666666" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c "/>
- </group>
- <group android:name="_R_G_L_6_G">
- <path android:name="_R_G_L_6_G_S" android:fillColor="#000000" android:pathData="M0,0 L412,0 L412,892 L0,892z"/>
- </group>
- <group android:name="_R_G_L_5_G" android:translateX="206" android:translateY="877">
- <path android:name="_R_G_L_5_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M40 0 C40,0 40,0 40,0 C40,1.1 39.1,2 38,2 C38,2 -38,2 -38,2 C-39.1,2 -40,1.1 -40,0 C-40,0 -40,0 -40,0 C-40,-1.1 -39.1,-2 -38,-2 C-38,-2 38,-2 38,-2 C39.1,-2 40,-1.1 40,0c "/>
- </group>
- <group android:name="_R_G_L_4_G_N_7_T_0" android:translateX="206" android:translateY="446" android:scaleX="1" android:scaleY="1">
- <group android:name="_R_G_L_4_G" android:translateX="-206" android:translateY="-446">
- <group android:name="_R_G_L_4_G_L_4_G">
- <group android:name="_R_G_L_4_G_L_4_G_L_11_G" android:translateX="206" android:translateY="467">
- <path android:name="_R_G_L_4_G_L_4_G_L_11_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -407 C206,-407 206,407 206,407 C206,416.93 197.93,425 188,425 C188,425 -188,425 -188,425 C-197.93,425 -206,416.93 -206,407 C-206,407 -206,-407 -206,-407 C-206,-416.93 -197.93,-425 -188,-425 C-188,-425 188,-425 188,-425 C197.93,-425 206,-416.93 206,-407c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_10_G" android:translateX="182.5" android:translateY="831">
- <path android:name="_R_G_L_4_G_L_4_G_L_10_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_9_G" android:translateX="186" android:translateY="801">
- <path android:name="_R_G_L_4_G_L_4_G_L_9_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -7 C162,-7 162,7 162,7 C162,9.21 160.21,11 158,11 C158,11 -158,11 -158,11 C-160.21,11 -162,9.21 -162,7 C-162,7 -162,-7 -162,-7 C-162,-9.21 -160.21,-11 -158,-11 C-158,-11 158,-11 158,-11 C160.21,-11 162,-9.21 162,-7c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_8_G" android:translateX="119" android:translateY="755">
- <path android:name="_R_G_L_4_G_L_4_G_L_8_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M95 -7 C95,-7 95,7 95,7 C95,9.21 93.21,11 91,11 C91,11 -91,11 -91,11 C-93.21,11 -95,9.21 -95,7 C-95,7 -95,-7 -95,-7 C-95,-9.21 -93.21,-11 -91,-11 C-91,-11 91,-11 91,-11 C93.21,-11 95,-9.21 95,-7c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_7_G" android:translateX="182.5" android:translateY="725">
- <path android:name="_R_G_L_4_G_L_4_G_L_7_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_6_G" android:translateX="197.5" android:translateY="695">
- <path android:name="_R_G_L_4_G_L_4_G_L_6_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M173.5 -7 C173.5,-7 173.5,7 173.5,7 C173.5,9.21 171.71,11 169.5,11 C169.5,11 -169.5,11 -169.5,11 C-171.71,11 -173.5,9.21 -173.5,7 C-173.5,7 -173.5,-7 -173.5,-7 C-173.5,-9.21 -171.71,-11 -169.5,-11 C-169.5,-11 169.5,-11 169.5,-11 C171.71,-11 173.5,-9.21 173.5,-7c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_5_G" android:translateX="192" android:translateY="665">
- <path android:name="_R_G_L_4_G_L_4_G_L_5_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M168 -7 C168,-7 168,7 168,7 C168,9.21 166.21,11 164,11 C164,11 -164,11 -164,11 C-166.21,11 -168,9.21 -168,7 C-168,7 -168,-7 -168,-7 C-168,-9.21 -166.21,-11 -164,-11 C-164,-11 164,-11 164,-11 C166.21,-11 168,-9.21 168,-7c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_4_G" android:translateX="105.5" android:translateY="360">
- <path android:name="_R_G_L_4_G_L_4_G_L_4_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_3_G" android:translateX="47.5" android:translateY="360">
- <path android:name="_R_G_L_4_G_L_4_G_L_3_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_2_G" android:translateX="142.5" android:translateY="328">
- <path android:name="_R_G_L_4_G_L_4_G_L_2_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M118.5 -14 C118.5,-14 118.5,14 118.5,14 C118.5,16.21 116.71,18 114.5,18 C114.5,18 -114.5,18 -114.5,18 C-116.71,18 -118.5,16.21 -118.5,14 C-118.5,14 -118.5,-14 -118.5,-14 C-118.5,-16.21 -116.71,-18 -114.5,-18 C-114.5,-18 114.5,-18 114.5,-18 C116.71,-18 118.5,-16.21 118.5,-14c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_1_G" android:translateX="186" android:translateY="284">
- <path android:name="_R_G_L_4_G_L_4_G_L_1_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -14 C162,-14 162,14 162,14 C162,16.21 160.21,18 158,18 C158,18 -158,18 -158,18 C-160.21,18 -162,16.21 -162,14 C-162,14 -162,-14 -162,-14 C-162,-16.21 -160.21,-18 -158,-18 C-158,-18 158,-18 158,-18 C160.21,-18 162,-16.21 162,-14c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_4_G_L_0_G" android:translateX="155" android:translateY="240">
- <path android:name="_R_G_L_4_G_L_4_G_L_0_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M131 -14 C131,-14 131,14 131,14 C131,16.21 129.21,18 127,18 C127,18 -127,18 -127,18 C-129.21,18 -131,16.21 -131,14 C-131,14 -131,-14 -131,-14 C-131,-16.21 -129.21,-18 -127,-18 C-127,-18 127,-18 127,-18 C129.21,-18 131,-16.21 131,-14c "/>
- </group>
- </group>
- <group android:name="_R_G_L_4_G_L_3_G" android:translateX="24" android:translateY="390">
- <group android:name="_R_G_L_4_G_L_3_G_L_7_G" android:translateX="182" android:translateY="120"/>
- <group android:name="_R_G_L_4_G_L_3_G_L_6_G" android:translateX="182" android:translateY="120">
- <path android:name="_R_G_L_4_G_L_3_G_L_6_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M182 -116 C182,-116 182,116 182,116 C182,118.21 180.21,120 178,120 C178,120 -178,120 -178,120 C-180.21,120 -182,118.21 -182,116 C-182,116 -182,-116 -182,-116 C-182,-118.21 -180.21,-120 -178,-120 C-178,-120 178,-120 178,-120 C180.21,-120 182,-118.21 182,-116c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_3_G_L_5_G" android:translateX="77.322" android:translateY="150.552">
- <path android:name="_R_G_L_4_G_L_3_G_L_5_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- <path android:name="_R_G_L_4_G_L_3_G_L_5_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_3_G_L_4_G" android:translateX="38.772" android:translateY="121.73">
- <path android:name="_R_G_L_4_G_L_3_G_L_4_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- <path android:name="_R_G_L_4_G_L_3_G_L_4_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_3_G_L_3_G" android:translateX="183" android:translateY="222">
- <path android:name="_R_G_L_4_G_L_3_G_L_3_G_D_0_P_0" android:fillColor="#000000" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- <path android:name="_R_G_L_4_G_L_3_G_L_3_G_D_1_P_0" android:strokeColor="#9aa0a6" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="4" android:strokeAlpha="1" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- </group>
- <group android:name="_R_G_L_4_G_L_3_G_L_2_G" android:translateX="265.619" android:translateY="162.331">
- <path android:name="_R_G_L_4_G_L_3_G_L_2_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- <path android:name="_R_G_L_4_G_L_3_G_L_2_G_D_1_P_0" android:strokeColor="#a8cbfe" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- </group>
- <group android:name="_R_G_L_4_G_L_3_G_L_1_G" android:translateX="319.271" android:translateY="37.945">
- <path android:name="_R_G_L_4_G_L_3_G_L_1_G_D_0_P_0" android:fillColor="#feefc3" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M13.42 2.99 C14.95,-4.17 9.93,-11.31 2.21,-12.96 C-0.9,-13.62 -3.97,-13.3 -6.64,-12.2 C-6.58,-12.19 -6.53,-12.18 -6.48,-12.17 C-1.03,-11.01 2.52,-5.97 1.44,-0.92 C0.36,4.13 -4.94,7.28 -10.4,6.12 C-11.6,5.86 -12.7,5.42 -13.69,4.83 C-11.9,8.78 -8.15,11.93 -3.34,12.96 C4.38,14.61 11.88,10.14 13.42,2.99c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_3_G_L_0_G" android:translateX="179.5" android:translateY="73.351">
- <path android:name="_R_G_L_4_G_L_3_G_L_0_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M51.08 -40.95 C51.08,-40.95 50.55,-42.54 50.55,-42.54 C50.55,-42.54 49.67,-41.13 49.67,-41.13 C49.67,-41.13 48.17,-41.21 48.17,-41.21 C48.17,-41.21 49.05,-39.8 49.05,-39.8 C49.05,-39.8 48.61,-38.22 48.61,-38.22 C48.61,-38.22 50.02,-38.74 50.02,-38.74 C50.02,-38.74 51.35,-37.69 51.35,-37.69 C51.35,-37.69 51.26,-39.45 51.26,-39.45 C51.26,-39.45 52.59,-40.42 52.59,-40.42 C52.59,-40.42 51.08,-40.95 51.08,-40.95c M8.78 30.58 C8.78,30.58 8.25,28.99 8.25,28.99 C8.25,28.99 7.37,30.4 7.37,30.4 C7.37,30.4 5.87,30.31 5.87,30.31 C5.87,30.31 6.75,31.72 6.75,31.72 C6.75,31.72 6.31,33.31 6.31,33.31 C6.31,33.31 7.72,32.78 7.72,32.78 C7.72,32.78 9.05,33.84 9.05,33.84 C9.05,33.84 8.96,32.08 8.96,32.08 C8.96,32.08 10.29,31.11 10.29,31.11 C10.29,31.11 8.78,30.58 8.78,30.58c M19.38 -61.67 C19.38,-61.67 18.94,-63.35 18.94,-63.35 C18.94,-63.35 17.97,-61.94 17.97,-61.94 C17.97,-61.94 16.47,-61.94 16.47,-61.94 C16.47,-61.94 17.35,-60.62 17.35,-60.62 C17.35,-60.62 16.91,-58.94 16.91,-58.94 C16.91,-58.94 18.41,-59.56 18.41,-59.56 C18.41,-59.56 19.65,-58.5 19.65,-58.5 C19.65,-58.5 19.56,-60.18 19.56,-60.18 C19.56,-60.18 20.88,-61.23 20.88,-61.23 C20.88,-61.23 19.38,-61.67 19.38,-61.67c M-32.98 35.08 C-32.98,35.08 -33.51,33.4 -33.51,33.4 C-33.51,33.4 -34.4,34.81 -34.4,34.81 C-34.4,34.81 -35.9,34.81 -35.9,34.81 C-35.9,34.81 -35.01,36.22 -35.01,36.22 C-35.01,36.22 -35.45,37.81 -35.45,37.81 C-35.45,37.81 -34.04,37.28 -34.04,37.28 C-34.04,37.28 -32.72,38.25 -32.72,38.25 C-32.72,38.25 -32.81,36.58 -32.81,36.58 C-32.81,36.58 -31.48,35.6 -31.48,35.6 C-31.48,35.6 -32.98,35.08 -32.98,35.08c M45.34 7.56 C45.34,7.56 44.81,5.97 44.81,5.97 C44.81,5.97 43.93,7.38 43.93,7.38 C43.93,7.38 42.34,7.3 42.34,7.3 C42.34,7.3 43.31,8.71 43.31,8.71 C43.31,8.71 42.87,10.29 42.87,10.29 C42.87,10.29 44.28,9.77 44.28,9.77 C44.28,9.77 45.52,10.82 45.52,10.82 C45.52,10.82 45.52,9.06 45.52,9.06 C45.52,9.06 46.76,8.09 46.76,8.09 C46.76,8.09 45.34,7.56 45.34,7.56c M-9.59 -41.67 C-9.59,-41.67 -10.12,-43.35 -10.12,-43.35 C-10.12,-43.35 -11,-41.94 -11,-41.94 C-11,-41.94 -12.5,-41.94 -12.5,-41.94 C-12.5,-41.94 -11.62,-40.62 -11.62,-40.62 C-11.62,-40.62 -12.06,-38.94 -12.06,-38.94 C-12.06,-38.94 -10.65,-39.56 -10.65,-39.56 C-10.65,-39.56 -9.32,-38.5 -9.32,-38.5 C-9.32,-38.5 -9.41,-40.26 -9.41,-40.26 C-9.41,-40.26 -8.09,-41.23 -8.09,-41.23 C-8.09,-41.23 -9.59,-41.67 -9.59,-41.67c M97.74 -23.97 C97.74,-23.97 97.03,-26.35 97.03,-26.35 C97.03,-26.35 95.8,-24.32 95.8,-24.32 C95.8,-24.32 93.5,-24.32 93.5,-24.32 C93.5,-24.32 94.91,-22.38 94.91,-22.38 C94.91,-22.38 94.21,-20 94.21,-20 C94.21,-20 96.33,-20.88 96.33,-20.88 C96.33,-20.88 98.09,-19.38 98.09,-19.38 C98.09,-19.38 98.09,-21.85 98.09,-21.85 C98.09,-21.85 99.86,-23.26 99.86,-23.26 C99.86,-23.26 97.74,-23.97 97.74,-23.97c M167.29 43.28 C167.29,43.28 166.67,40.9 166.67,40.9 C166.67,40.9 165.35,42.93 165.35,42.93 C165.35,42.93 163.14,42.93 163.14,42.93 C163.14,42.93 164.47,44.87 164.47,44.87 C164.47,44.87 163.76,47.25 163.76,47.25 C163.76,47.25 165.88,46.37 165.88,46.37 C165.88,46.37 167.73,47.87 167.73,47.87 C167.73,47.87 167.65,45.4 167.65,45.4 C167.65,45.4 169.5,43.98 169.5,43.98 C169.5,43.98 167.29,43.28 167.29,43.28c M-1.1 -1.79 C-1.1,-1.79 -1.72,-4.08 -1.72,-4.08 C-1.72,-4.08 -3.05,-2.14 -3.05,-2.14 C-3.05,-2.14 -5.25,-2.14 -5.25,-2.14 C-5.25,-2.14 -3.93,-0.11 -3.93,-0.11 C-3.93,-0.11 -4.64,2.18 -4.64,2.18 C-4.64,2.18 -2.52,1.38 -2.52,1.38 C-2.52,1.38 -0.66,2.8 -0.66,2.8 C-0.66,2.8 -0.75,0.41 -0.75,0.41 C-0.75,0.41 1.1,-1.08 1.1,-1.08 C1.1,-1.08 -1.1,-1.79 -1.1,-1.79c M-60.89 -5.23 C-60.89,-5.23 -61.59,-7.61 -61.59,-7.61 C-61.59,-7.61 -62.83,-5.58 -62.83,-5.58 C-62.83,-5.58 -65.13,-5.58 -65.13,-5.58 C-65.13,-5.58 -63.71,-3.64 -63.71,-3.64 C-63.71,-3.64 -64.42,-1.26 -64.42,-1.26 C-64.42,-1.26 -62.39,-2.14 -62.39,-2.14 C-62.39,-2.14 -60.53,-0.64 -60.53,-0.64 C-60.53,-0.64 -60.62,-3.11 -60.62,-3.11 C-60.62,-3.11 -58.77,-4.52 -58.77,-4.52 C-58.77,-4.52 -60.89,-5.23 -60.89,-5.23c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-51.26 -42.98 C-51.26,-42.98 -54.09,-45.01 -54.09,-45.01 C-54.09,-45.01 -53.91,-41.57 -53.91,-41.57 C-53.91,-41.57 -56.65,-39.54 -56.65,-39.54 C-56.65,-39.54 -53.38,-38.57 -53.38,-38.57 C-53.38,-38.57 -52.32,-35.3 -52.32,-35.3 C-52.32,-35.3 -50.38,-38.13 -50.38,-38.13 C-50.38,-38.13 -46.94,-38.22 -46.94,-38.22 C-46.94,-38.22 -49.05,-40.86 -49.05,-40.86 C-49.05,-40.86 -47.99,-44.21 -47.99,-44.21 C-47.99,-44.21 -51.26,-42.98 -51.26,-42.98c M-92.06 -47.92 C-92.06,-47.92 -92.59,-49.59 -92.59,-49.59 C-92.59,-49.59 -93.47,-48.18 -93.47,-48.18 C-93.47,-48.18 -95.06,-48.18 -95.06,-48.18 C-95.06,-48.18 -94.09,-46.86 -94.09,-46.86 C-94.09,-46.86 -94.53,-45.18 -94.53,-45.18 C-94.53,-45.18 -93.12,-45.8 -93.12,-45.8 C-93.12,-45.8 -91.88,-44.74 -91.88,-44.74 C-91.88,-44.74 -91.88,-46.42 -91.88,-46.42 C-91.88,-46.42 -90.65,-47.47 -90.65,-47.47 C-90.65,-47.47 -92.06,-47.92 -92.06,-47.92c M62.83 -13.34 C62.83,-13.34 62.39,-14.93 62.39,-14.93 C62.39,-14.93 61.5,-13.52 61.5,-13.52 C61.5,-13.52 59.91,-13.52 59.91,-13.52 C59.91,-13.52 60.89,-12.2 60.89,-12.2 C60.89,-12.2 60.36,-10.52 60.36,-10.52 C60.36,-10.52 61.86,-11.14 61.86,-11.14 C61.86,-11.14 63.09,-10.08 63.09,-10.08 C63.09,-10.08 63.09,-11.84 63.09,-11.84 C63.09,-11.84 64.33,-12.81 64.33,-12.81 C64.33,-12.81 62.83,-13.34 62.83,-13.34c M-155.99 -40.95 C-155.99,-40.95 -156.43,-42.54 -156.43,-42.54 C-156.43,-42.54 -157.32,-41.13 -157.32,-41.13 C-157.32,-41.13 -158.91,-41.21 -158.91,-41.21 C-158.91,-41.21 -157.93,-39.8 -157.93,-39.8 C-157.93,-39.8 -158.46,-38.22 -158.46,-38.22 C-158.46,-38.22 -156.96,-38.74 -156.96,-38.74 C-156.96,-38.74 -155.73,-37.69 -155.73,-37.69 C-155.73,-37.69 -155.73,-39.45 -155.73,-39.45 C-155.73,-39.45 -154.49,-40.42 -154.49,-40.42 C-154.49,-40.42 -155.99,-40.95 -155.99,-40.95c M141.24 26.52 C141.24,26.52 140.71,24.85 140.71,24.85 C140.71,24.85 139.83,26.26 139.83,26.26 C139.83,26.26 138.33,26.26 138.33,26.26 C138.33,26.26 139.21,27.67 139.21,27.67 C139.21,27.67 138.77,29.26 138.77,29.26 C138.77,29.26 140.18,28.73 140.18,28.73 C140.18,28.73 141.51,29.7 141.51,29.7 C141.51,29.7 141.42,28.02 141.42,28.02 C141.42,28.02 142.74,27.05 142.74,27.05 C142.74,27.05 141.24,26.52 141.24,26.52c M111.4 -51.27 C111.4,-51.27 110.95,-52.94 110.95,-52.94 C110.95,-52.94 110.07,-51.53 110.07,-51.53 C110.07,-51.53 108.48,-51.53 108.48,-51.53 C108.48,-51.53 109.45,-50.21 109.45,-50.21 C109.45,-50.21 108.92,-48.53 108.92,-48.53 C108.92,-48.53 110.42,-49.15 110.42,-49.15 C110.42,-49.15 111.66,-48.09 111.66,-48.09 C111.66,-48.09 111.66,-49.86 111.66,-49.86 C111.66,-49.86 112.9,-50.83 112.9,-50.83 C112.9,-50.83 111.4,-51.27 111.4,-51.27c M-66.59 53.33 C-66.59,53.33 -67.03,51.65 -67.03,51.65 C-67.03,51.65 -67.91,53.06 -67.91,53.06 C-67.91,53.06 -69.5,53.06 -69.5,53.06 C-69.5,53.06 -68.53,54.47 -68.53,54.47 C-68.53,54.47 -69.06,56.06 -69.06,56.06 C-69.06,56.06 -67.56,55.53 -67.56,55.53 C-67.56,55.53 -66.32,56.5 -66.32,56.5 C-66.32,56.5 -66.32,54.82 -66.32,54.82 C-66.32,54.82 -65.08,53.77 -65.08,53.77 C-65.08,53.77 -66.59,53.33 -66.59,53.33c M-50.59 59.33 C-50.59,59.33 -51.12,57.65 -51.12,57.65 C-51.12,57.65 -52,59.06 -52,59.06 C-52,59.06 -53.5,59.06 -53.5,59.06 C-53.5,59.06 -52.62,60.38 -52.62,60.38 C-52.62,60.38 -53.06,62.06 -53.06,62.06 C-53.06,62.06 -51.65,61.53 -51.65,61.53 C-51.65,61.53 -50.32,62.5 -50.32,62.5 C-50.32,62.5 -50.41,60.82 -50.41,60.82 C-50.41,60.82 -49.08,59.77 -49.08,59.77 C-49.08,59.77 -50.59,59.33 -50.59,59.33c M29.98 -16.08 C29.98,-16.08 29.27,-18.46 29.27,-18.46 C29.27,-18.46 27.95,-16.43 27.95,-16.43 C27.95,-16.43 25.74,-16.43 25.74,-16.43 C25.74,-16.43 27.06,-14.49 27.06,-14.49 C27.06,-14.49 26.36,-12.11 26.36,-12.11 C26.36,-12.11 28.48,-12.9 28.48,-12.9 C28.48,-12.9 30.33,-11.49 30.33,-11.49 C30.33,-11.49 30.24,-13.96 30.24,-13.96 C30.24,-13.96 32.1,-15.37 32.1,-15.37 C32.1,-15.37 29.98,-16.08 29.98,-16.08c M81.28 55.98 C81.28,55.98 80.58,53.6 80.58,53.6 C80.58,53.6 79.25,55.63 79.25,55.63 C79.25,55.63 77.04,55.63 77.04,55.63 C77.04,55.63 78.37,57.57 78.37,57.57 C78.37,57.57 77.66,59.95 77.66,59.95 C77.66,59.95 79.78,59.07 79.78,59.07 C79.78,59.07 81.64,60.56 81.64,60.56 C81.64,60.56 81.55,58.1 81.55,58.1 C81.55,58.1 83.4,56.68 83.4,56.68 C83.4,56.68 81.28,55.98 81.28,55.98c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-74.05 21.76 C-74.05,21.76 -74.66,19.47 -74.66,19.47 C-74.66,19.47 -75.99,21.49 -75.99,21.49 C-75.99,21.49 -78.2,21.41 -78.2,21.41 C-78.2,21.41 -76.87,23.43 -76.87,23.43 C-76.87,23.43 -77.58,25.73 -77.58,25.73 C-77.58,25.73 -75.46,24.93 -75.46,24.93 C-75.46,24.93 -73.6,26.43 -73.6,26.43 C-73.6,26.43 -73.69,23.96 -73.69,23.96 C-73.69,23.96 -71.84,22.46 -71.84,22.46 C-71.84,22.46 -74.05,21.76 -74.05,21.76c M8.98 55.68 C8.98,55.68 6.15,53.65 6.15,53.65 C6.15,53.65 6.24,57.09 6.24,57.09 C6.24,57.09 3.5,59.12 3.5,59.12 C3.5,59.12 6.86,60.09 6.86,60.09 C6.86,60.09 7.92,63.35 7.92,63.35 C7.92,63.35 9.86,60.44 9.86,60.44 C9.86,60.44 13.3,60.44 13.3,60.44 C13.3,60.44 11.18,57.71 11.18,57.71 C11.18,57.71 12.15,54.44 12.15,54.44 C12.15,54.44 8.98,55.68 8.98,55.68c M124.89 -2.41 C124.89,-2.41 122.06,-4.35 122.06,-4.35 C122.06,-4.35 122.24,-0.91 122.24,-0.91 C122.24,-0.91 119.5,1.12 119.5,1.12 C119.5,1.12 122.77,2 122.77,2 C122.77,2 123.83,5.26 123.83,5.26 C123.83,5.26 125.77,2.44 125.77,2.44 C125.77,2.44 129.21,2.44 129.21,2.44 C129.21,2.44 127.09,-0.29 127.09,-0.29 C127.09,-0.29 128.15,-3.56 128.15,-3.56 C128.15,-3.56 124.89,-2.41 124.89,-2.41c M77.31 19.91 C77.31,19.91 74.57,17.88 74.57,17.88 C74.57,17.88 74.66,21.32 74.66,21.32 C74.66,21.32 71.92,23.35 71.92,23.35 C71.92,23.35 75.19,24.32 75.19,24.32 C75.19,24.32 76.34,27.58 76.34,27.58 C76.34,27.58 78.19,24.67 78.19,24.67 C78.19,24.67 81.64,24.67 81.64,24.67 C81.64,24.67 79.52,21.94 79.52,21.94 C79.52,21.94 80.58,18.67 80.58,18.67 C80.58,18.67 77.31,19.91 77.31,19.91c M-28.11 7.68 C-28.11,7.68 -30.94,5.65 -30.94,5.65 C-30.94,5.65 -30.76,9.09 -30.76,9.09 C-30.76,9.09 -33.5,11.12 -33.5,11.12 C-33.5,11.12 -30.23,12.09 -30.23,12.09 C-30.23,12.09 -29.17,15.35 -29.17,15.35 C-29.17,15.35 -27.23,12.44 -27.23,12.44 C-27.23,12.44 -23.79,12.44 -23.79,12.44 C-23.79,12.44 -25.91,9.71 -25.91,9.71 C-25.91,9.71 -24.85,6.44 -24.85,6.44 C-24.85,6.44 -28.11,7.68 -28.11,7.68c M-119.43 -20.22 C-119.43,-20.22 -122.26,-22.16 -122.26,-22.16 C-122.26,-22.16 -122.08,-18.72 -122.08,-18.72 C-122.08,-18.72 -124.82,-16.7 -124.82,-16.7 C-124.82,-16.7 -121.55,-15.81 -121.55,-15.81 C-121.55,-15.81 -120.49,-12.55 -120.49,-12.55 C-120.49,-12.55 -118.55,-15.37 -118.55,-15.37 C-118.55,-15.37 -115.11,-15.37 -115.11,-15.37 C-115.11,-15.37 -117.23,-18.11 -117.23,-18.11 C-117.23,-18.11 -116.17,-21.37 -116.17,-21.37 C-116.17,-21.37 -119.43,-20.22 -119.43,-20.22c "/>
- </group>
- </group>
- <group android:name="_R_G_L_4_G_L_2_G">
- <group android:name="_R_G_L_4_G_L_2_G_L_2_G" android:translateX="206" android:translateY="145">
- <path android:name="_R_G_L_4_G_L_2_G_L_2_G_D_0_P_0" android:fillColor="#e8eaed" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -95.63 C206,-95.63 206,42.37 206,42.37 C206,43.47 205.1,44.37 204,44.37 C204,44.37 -204,44.37 -204,44.37 C-205.1,44.37 -206,43.47 -206,42.37 C-206,42.37 -206,-95.63 -206,-95.63 C-206,-96.73 -205.1,-97.63 -204,-97.63 C-204,-97.63 204,-97.63 204,-97.63 C205.1,-97.63 206,-96.73 206,-95.63c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_2_G_L_1_G" android:translateX="206" android:translateY="145">
- <path android:name="_R_G_L_4_G_L_2_G_L_1_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M109 -14 C109,-14 109,14 109,14 C109,15.1 108.1,16 107,16 C107,16 -107,16 -107,16 C-108.1,16 -109,15.1 -109,14 C-109,14 -109,-14 -109,-14 C-109,-15.1 -108.1,-16 -107,-16 C-107,-16 107,-16 107,-16 C108.1,-16 109,-15.1 109,-14c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_2_G_L_0_G" android:translateX="46" android:translateY="145">
- <path android:name="_R_G_L_4_G_L_2_G_L_0_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M22 -14 C22,-14 22,14 22,14 C22,18.42 18.42,22 14,22 C14,22 -14,22 -14,22 C-18.42,22 -22,18.42 -22,14 C-22,14 -22,-14 -22,-14 C-22,-18.42 -18.42,-22 -14,-22 C-14,-22 14,-22 14,-22 C18.42,-22 22,-18.42 22,-14c "/>
- </group>
- </group>
- <group android:name="_R_G_L_4_G_L_1_G" android:translateX="206" android:translateY="877">
- <path android:name="_R_G_L_4_G_L_1_G_D_0_P_0" android:fillColor="#373737" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M40 0 C40,0 40,0 40,0 C40,1.1 39.1,2 38,2 C38,2 -38,2 -38,2 C-39.1,2 -40,1.1 -40,0 C-40,0 -40,0 -40,0 C-40,-1.1 -39.1,-2 -38,-2 C-38,-2 38,-2 38,-2 C39.1,-2 40,-1.1 40,0c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_0_G">
- <group android:name="_R_G_L_4_G_L_0_G_L_2_G" android:translateX="206" android:translateY="50.5">
- <path android:name="_R_G_L_4_G_L_0_G_L_2_G_D_0_P_0" android:fillColor="#202124" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -29.67 C206,-29.67 206,50.33 206,50.33 C206,50.33 -206,50.33 -206,50.33 C-206,50.33 -206,-29.67 -206,-29.67 C-206,-29.67 206,-29.67 206,-29.67c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_0_G_L_1_G" android:translateX="206" android:translateY="50.5">
- <path android:name="_R_G_L_4_G_L_0_G_L_1_G_D_0_P_0" android:fillColor="#202124" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -32.5 C206,-32.5 206,32.5 206,32.5 C206,42.43 197.93,50.5 188,50.5 C188,50.5 -188,50.5 -188,50.5 C-197.93,50.5 -206,42.43 -206,32.5 C-206,32.5 -206,-32.5 -206,-32.5 C-206,-42.43 -197.93,-50.5 -188,-50.5 C-188,-50.5 188,-50.5 188,-50.5 C197.93,-50.5 206,-42.43 206,-32.5c "/>
- </group>
- <group android:name="_R_G_L_4_G_L_0_G_L_0_G" android:translateX="206" android:translateY="66.5">
- <path android:name="_R_G_L_4_G_L_0_G_L_0_G_D_0_P_0" android:fillColor="#3c4043" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M190 0 C190,0 190,0 190,0 C190,10.21 181.71,18.5 171.5,18.5 C171.5,18.5 -171.5,18.5 -171.5,18.5 C-181.71,18.5 -190,10.21 -190,0 C-190,0 -190,0 -190,0 C-190,-10.21 -181.71,-18.5 -171.5,-18.5 C-171.5,-18.5 171.5,-18.5 171.5,-18.5 C181.71,-18.5 190,-10.21 190,0c "/>
- </group>
- </group>
- </group>
- </group>
- <group android:name="_R_G_L_3_G_N_3_T_0" android:translateX="206" android:translateY="395" android:scaleX="0.6" android:scaleY="0">
- <group android:name="_R_G_L_3_G" android:translateX="-206" android:translateY="-446">
- <group android:name="_R_G_L_3_G_L_4_G" android:scaleY="0">
- <group android:name="_R_G_L_3_G_L_4_G_L_11_G" android:translateX="206" android:translateY="467" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_11_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -407 C206,-407 206,407 206,407 C206,416.93 197.93,425 188,425 C188,425 -188,425 -188,425 C-197.93,425 -206,416.93 -206,407 C-206,407 -206,-407 -206,-407 C-206,-416.93 -197.93,-425 -188,-425 C-188,-425 188,-425 188,-425 C197.93,-425 206,-416.93 206,-407c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_10_G" android:translateX="182.5" android:translateY="831" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_10_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_9_G" android:translateX="186" android:translateY="801" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_9_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -7 C162,-7 162,7 162,7 C162,9.21 160.21,11 158,11 C158,11 -158,11 -158,11 C-160.21,11 -162,9.21 -162,7 C-162,7 -162,-7 -162,-7 C-162,-9.21 -160.21,-11 -158,-11 C-158,-11 158,-11 158,-11 C160.21,-11 162,-9.21 162,-7c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_8_G" android:translateX="119" android:translateY="755" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_8_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M95 -7 C95,-7 95,7 95,7 C95,9.21 93.21,11 91,11 C91,11 -91,11 -91,11 C-93.21,11 -95,9.21 -95,7 C-95,7 -95,-7 -95,-7 C-95,-9.21 -93.21,-11 -91,-11 C-91,-11 91,-11 91,-11 C93.21,-11 95,-9.21 95,-7c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_7_G" android:translateX="182.5" android:translateY="725" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_7_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M158.5 -7 C158.5,-7 158.5,7 158.5,7 C158.5,9.21 156.71,11 154.5,11 C154.5,11 -154.5,11 -154.5,11 C-156.71,11 -158.5,9.21 -158.5,7 C-158.5,7 -158.5,-7 -158.5,-7 C-158.5,-9.21 -156.71,-11 -154.5,-11 C-154.5,-11 154.5,-11 154.5,-11 C156.71,-11 158.5,-9.21 158.5,-7c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_6_G" android:translateX="197.5" android:translateY="695" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_6_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M173.5 -7 C173.5,-7 173.5,7 173.5,7 C173.5,9.21 171.71,11 169.5,11 C169.5,11 -169.5,11 -169.5,11 C-171.71,11 -173.5,9.21 -173.5,7 C-173.5,7 -173.5,-7 -173.5,-7 C-173.5,-9.21 -171.71,-11 -169.5,-11 C-169.5,-11 169.5,-11 169.5,-11 C171.71,-11 173.5,-9.21 173.5,-7c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_5_G" android:translateX="192" android:translateY="665" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_5_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M168 -7 C168,-7 168,7 168,7 C168,9.21 166.21,11 164,11 C164,11 -164,11 -164,11 C-166.21,11 -168,9.21 -168,7 C-168,7 -168,-7 -168,-7 C-168,-9.21 -166.21,-11 -164,-11 C-164,-11 164,-11 164,-11 C166.21,-11 168,-9.21 168,-7c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_4_G" android:translateX="105.5" android:translateY="360" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_4_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_3_G" android:translateX="47.5" android:translateY="360" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_3_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_2_G" android:translateX="142.5" android:translateY="328" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_2_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M118.5 -14 C118.5,-14 118.5,14 118.5,14 C118.5,16.21 116.71,18 114.5,18 C114.5,18 -114.5,18 -114.5,18 C-116.71,18 -118.5,16.21 -118.5,14 C-118.5,14 -118.5,-14 -118.5,-14 C-118.5,-16.21 -116.71,-18 -114.5,-18 C-114.5,-18 114.5,-18 114.5,-18 C116.71,-18 118.5,-16.21 118.5,-14c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_1_G" android:translateX="186" android:translateY="284" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_1_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M162 -14 C162,-14 162,14 162,14 C162,16.21 160.21,18 158,18 C158,18 -158,18 -158,18 C-160.21,18 -162,16.21 -162,14 C-162,14 -162,-14 -162,-14 C-162,-16.21 -160.21,-18 -158,-18 C-158,-18 158,-18 158,-18 C160.21,-18 162,-16.21 162,-14c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_4_G_L_0_G" android:translateX="155" android:translateY="240" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_4_G_L_0_G_D_0_P_0" android:fillColor="#bdc1c6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M131 -14 C131,-14 131,14 131,14 C131,16.21 129.21,18 127,18 C127,18 -127,18 -127,18 C-129.21,18 -131,16.21 -131,14 C-131,14 -131,-14 -131,-14 C-131,-16.21 -129.21,-18 -127,-18 C-127,-18 127,-18 127,-18 C129.21,-18 131,-16.21 131,-14c "/>
- </group>
- </group>
- <group android:name="_R_G_L_3_G_L_3_G" android:translateX="24" android:translateY="390" android:scaleY="0">
- <group android:name="_R_G_L_3_G_L_3_G_L_7_G" android:translateX="182" android:translateY="120" android:scaleY="0"/>
- <group android:name="_R_G_L_3_G_L_3_G_L_6_G" android:translateX="182" android:translateY="120" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_3_G_L_6_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M182 -116 C182,-116 182,116 182,116 C182,118.21 180.21,120 178,120 C178,120 -178,120 -178,120 C-180.21,120 -182,118.21 -182,116 C-182,116 -182,-116 -182,-116 C-182,-118.21 -180.21,-120 -178,-120 C-178,-120 178,-120 178,-120 C180.21,-120 182,-118.21 182,-116c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_3_G_L_5_G" android:translateX="77.322" android:translateY="150.552" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_3_G_L_5_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- <path android:name="_R_G_L_3_G_L_3_G_L_5_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 20.61 C0,20.61 -10.39,8.69 -10.39,8.69 M0 -6.11 C0,-6.11 -6.78,-15.61 -6.78,-15.61 M0 33.64 C0,33.64 8.26,17.67 8.26,17.67 M0 7.58 C0,7.58 8.26,-7.73 8.26,-7.73 M0 71.19 C0,71.19 0,-18.04 0,-18.04 M-30.22 37.18 C-30.22,37.18 0,-71.19 0,-71.19 C0,-71.19 30.22,37.18 30.22,37.18 C30.22,37.18 -30.22,37.18 -30.22,37.18c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_3_G_L_4_G" android:translateX="38.772" android:translateY="121.73" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_3_G_L_4_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- <path android:name="_R_G_L_3_G_L_3_G_L_4_G_D_1_P_0" android:strokeColor="#9adcb2" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M0 28.82 C0,28.82 -14.52,12.18 -14.52,12.18 M0 -8.58 C0,-8.58 -9.51,-21.75 -9.51,-21.75 M0 47.01 C0,47.01 11.57,24.7 11.57,24.7 M0 10.64 C0,10.64 11.57,-10.78 11.57,-10.78 M0 99.42 C0,99.42 0,-25.21 0,-25.21 M-31.92 51.94 C-31.92,51.94 0,-99.42 0,-99.42 C0,-99.42 31.92,51.94 31.92,51.94 C31.92,51.94 -31.92,51.94 -31.92,51.94c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_3_G_L_3_G" android:translateX="183" android:translateY="222" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_3_G_L_3_G_D_0_P_0" android:fillColor="#000000" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- <path android:name="_R_G_L_3_G_L_3_G_L_3_G_D_1_P_0" android:strokeColor="#9aa0a6" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="4" android:strokeAlpha="1" android:pathData=" M170 0 C170,0 -170,0 -170,0 "/>
- </group>
- <group android:name="_R_G_L_3_G_L_3_G_L_2_G" android:translateX="265.619" android:translateY="162.331" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_3_G_L_2_G_D_0_P_0" android:fillColor="#5f6368" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- <path android:name="_R_G_L_3_G_L_3_G_L_2_G_D_1_P_0" android:strokeColor="#a8cbfe" android:strokeLineCap="round" android:strokeLineJoin="round" android:strokeWidth="2" android:strokeAlpha="1" android:pathData=" M-34.05 50.06 C-34.05,50.06 -34.05,-49.25 -34.05,-49.25 M-34.05 -49.55 C-34.05,-49.55 17.54,50.06 17.54,50.06 C17.54,50.06 84.62,50.06 84.62,50.06 C84.62,50.06 32.65,-50.06 32.65,-50.06 C32.65,-50.06 -34.05,-50.06 -34.05,-50.06 C-34.05,-50.06 -84.62,50.06 -84.62,50.06 C-84.62,50.06 17.54,50.06 17.54,50.06 "/>
- </group>
- <group android:name="_R_G_L_3_G_L_3_G_L_1_G" android:translateX="319.271" android:translateY="37.945" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_3_G_L_1_G_D_0_P_0" android:fillColor="#feefc3" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M13.42 2.99 C14.95,-4.17 9.93,-11.31 2.21,-12.96 C-0.9,-13.62 -3.97,-13.3 -6.64,-12.2 C-6.58,-12.19 -6.53,-12.18 -6.48,-12.17 C-1.03,-11.01 2.52,-5.97 1.44,-0.92 C0.36,4.13 -4.94,7.28 -10.4,6.12 C-11.6,5.86 -12.7,5.42 -13.69,4.83 C-11.9,8.78 -8.15,11.93 -3.34,12.96 C4.38,14.61 11.88,10.14 13.42,2.99c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_3_G_L_0_G" android:translateX="179.5" android:translateY="73.351" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_3_G_L_0_G_D_0_P_0" android:fillColor="#dadce0" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M51.08 -40.95 C51.08,-40.95 50.55,-42.54 50.55,-42.54 C50.55,-42.54 49.67,-41.13 49.67,-41.13 C49.67,-41.13 48.17,-41.21 48.17,-41.21 C48.17,-41.21 49.05,-39.8 49.05,-39.8 C49.05,-39.8 48.61,-38.22 48.61,-38.22 C48.61,-38.22 50.02,-38.74 50.02,-38.74 C50.02,-38.74 51.35,-37.69 51.35,-37.69 C51.35,-37.69 51.26,-39.45 51.26,-39.45 C51.26,-39.45 52.59,-40.42 52.59,-40.42 C52.59,-40.42 51.08,-40.95 51.08,-40.95c M8.78 30.58 C8.78,30.58 8.25,28.99 8.25,28.99 C8.25,28.99 7.37,30.4 7.37,30.4 C7.37,30.4 5.87,30.31 5.87,30.31 C5.87,30.31 6.75,31.72 6.75,31.72 C6.75,31.72 6.31,33.31 6.31,33.31 C6.31,33.31 7.72,32.78 7.72,32.78 C7.72,32.78 9.05,33.84 9.05,33.84 C9.05,33.84 8.96,32.08 8.96,32.08 C8.96,32.08 10.29,31.11 10.29,31.11 C10.29,31.11 8.78,30.58 8.78,30.58c M19.38 -61.67 C19.38,-61.67 18.94,-63.35 18.94,-63.35 C18.94,-63.35 17.97,-61.94 17.97,-61.94 C17.97,-61.94 16.47,-61.94 16.47,-61.94 C16.47,-61.94 17.35,-60.62 17.35,-60.62 C17.35,-60.62 16.91,-58.94 16.91,-58.94 C16.91,-58.94 18.41,-59.56 18.41,-59.56 C18.41,-59.56 19.65,-58.5 19.65,-58.5 C19.65,-58.5 19.56,-60.18 19.56,-60.18 C19.56,-60.18 20.88,-61.23 20.88,-61.23 C20.88,-61.23 19.38,-61.67 19.38,-61.67c M-32.98 35.08 C-32.98,35.08 -33.51,33.4 -33.51,33.4 C-33.51,33.4 -34.4,34.81 -34.4,34.81 C-34.4,34.81 -35.9,34.81 -35.9,34.81 C-35.9,34.81 -35.01,36.22 -35.01,36.22 C-35.01,36.22 -35.45,37.81 -35.45,37.81 C-35.45,37.81 -34.04,37.28 -34.04,37.28 C-34.04,37.28 -32.72,38.25 -32.72,38.25 C-32.72,38.25 -32.81,36.58 -32.81,36.58 C-32.81,36.58 -31.48,35.6 -31.48,35.6 C-31.48,35.6 -32.98,35.08 -32.98,35.08c M45.34 7.56 C45.34,7.56 44.81,5.97 44.81,5.97 C44.81,5.97 43.93,7.38 43.93,7.38 C43.93,7.38 42.34,7.3 42.34,7.3 C42.34,7.3 43.31,8.71 43.31,8.71 C43.31,8.71 42.87,10.29 42.87,10.29 C42.87,10.29 44.28,9.77 44.28,9.77 C44.28,9.77 45.52,10.82 45.52,10.82 C45.52,10.82 45.52,9.06 45.52,9.06 C45.52,9.06 46.76,8.09 46.76,8.09 C46.76,8.09 45.34,7.56 45.34,7.56c M-9.59 -41.67 C-9.59,-41.67 -10.12,-43.35 -10.12,-43.35 C-10.12,-43.35 -11,-41.94 -11,-41.94 C-11,-41.94 -12.5,-41.94 -12.5,-41.94 C-12.5,-41.94 -11.62,-40.62 -11.62,-40.62 C-11.62,-40.62 -12.06,-38.94 -12.06,-38.94 C-12.06,-38.94 -10.65,-39.56 -10.65,-39.56 C-10.65,-39.56 -9.32,-38.5 -9.32,-38.5 C-9.32,-38.5 -9.41,-40.26 -9.41,-40.26 C-9.41,-40.26 -8.09,-41.23 -8.09,-41.23 C-8.09,-41.23 -9.59,-41.67 -9.59,-41.67c M97.74 -23.97 C97.74,-23.97 97.03,-26.35 97.03,-26.35 C97.03,-26.35 95.8,-24.32 95.8,-24.32 C95.8,-24.32 93.5,-24.32 93.5,-24.32 C93.5,-24.32 94.91,-22.38 94.91,-22.38 C94.91,-22.38 94.21,-20 94.21,-20 C94.21,-20 96.33,-20.88 96.33,-20.88 C96.33,-20.88 98.09,-19.38 98.09,-19.38 C98.09,-19.38 98.09,-21.85 98.09,-21.85 C98.09,-21.85 99.86,-23.26 99.86,-23.26 C99.86,-23.26 97.74,-23.97 97.74,-23.97c M167.29 43.28 C167.29,43.28 166.67,40.9 166.67,40.9 C166.67,40.9 165.35,42.93 165.35,42.93 C165.35,42.93 163.14,42.93 163.14,42.93 C163.14,42.93 164.47,44.87 164.47,44.87 C164.47,44.87 163.76,47.25 163.76,47.25 C163.76,47.25 165.88,46.37 165.88,46.37 C165.88,46.37 167.73,47.87 167.73,47.87 C167.73,47.87 167.65,45.4 167.65,45.4 C167.65,45.4 169.5,43.98 169.5,43.98 C169.5,43.98 167.29,43.28 167.29,43.28c M-1.1 -1.79 C-1.1,-1.79 -1.72,-4.08 -1.72,-4.08 C-1.72,-4.08 -3.05,-2.14 -3.05,-2.14 C-3.05,-2.14 -5.25,-2.14 -5.25,-2.14 C-5.25,-2.14 -3.93,-0.11 -3.93,-0.11 C-3.93,-0.11 -4.64,2.18 -4.64,2.18 C-4.64,2.18 -2.52,1.38 -2.52,1.38 C-2.52,1.38 -0.66,2.8 -0.66,2.8 C-0.66,2.8 -0.75,0.41 -0.75,0.41 C-0.75,0.41 1.1,-1.08 1.1,-1.08 C1.1,-1.08 -1.1,-1.79 -1.1,-1.79c M-60.89 -5.23 C-60.89,-5.23 -61.59,-7.61 -61.59,-7.61 C-61.59,-7.61 -62.83,-5.58 -62.83,-5.58 C-62.83,-5.58 -65.13,-5.58 -65.13,-5.58 C-65.13,-5.58 -63.71,-3.64 -63.71,-3.64 C-63.71,-3.64 -64.42,-1.26 -64.42,-1.26 C-64.42,-1.26 -62.39,-2.14 -62.39,-2.14 C-62.39,-2.14 -60.53,-0.64 -60.53,-0.64 C-60.53,-0.64 -60.62,-3.11 -60.62,-3.11 C-60.62,-3.11 -58.77,-4.52 -58.77,-4.52 C-58.77,-4.52 -60.89,-5.23 -60.89,-5.23c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-51.26 -42.98 C-51.26,-42.98 -54.09,-45.01 -54.09,-45.01 C-54.09,-45.01 -53.91,-41.57 -53.91,-41.57 C-53.91,-41.57 -56.65,-39.54 -56.65,-39.54 C-56.65,-39.54 -53.38,-38.57 -53.38,-38.57 C-53.38,-38.57 -52.32,-35.3 -52.32,-35.3 C-52.32,-35.3 -50.38,-38.13 -50.38,-38.13 C-50.38,-38.13 -46.94,-38.22 -46.94,-38.22 C-46.94,-38.22 -49.05,-40.86 -49.05,-40.86 C-49.05,-40.86 -47.99,-44.21 -47.99,-44.21 C-47.99,-44.21 -51.26,-42.98 -51.26,-42.98c M-92.06 -47.92 C-92.06,-47.92 -92.59,-49.59 -92.59,-49.59 C-92.59,-49.59 -93.47,-48.18 -93.47,-48.18 C-93.47,-48.18 -95.06,-48.18 -95.06,-48.18 C-95.06,-48.18 -94.09,-46.86 -94.09,-46.86 C-94.09,-46.86 -94.53,-45.18 -94.53,-45.18 C-94.53,-45.18 -93.12,-45.8 -93.12,-45.8 C-93.12,-45.8 -91.88,-44.74 -91.88,-44.74 C-91.88,-44.74 -91.88,-46.42 -91.88,-46.42 C-91.88,-46.42 -90.65,-47.47 -90.65,-47.47 C-90.65,-47.47 -92.06,-47.92 -92.06,-47.92c M62.83 -13.34 C62.83,-13.34 62.39,-14.93 62.39,-14.93 C62.39,-14.93 61.5,-13.52 61.5,-13.52 C61.5,-13.52 59.91,-13.52 59.91,-13.52 C59.91,-13.52 60.89,-12.2 60.89,-12.2 C60.89,-12.2 60.36,-10.52 60.36,-10.52 C60.36,-10.52 61.86,-11.14 61.86,-11.14 C61.86,-11.14 63.09,-10.08 63.09,-10.08 C63.09,-10.08 63.09,-11.84 63.09,-11.84 C63.09,-11.84 64.33,-12.81 64.33,-12.81 C64.33,-12.81 62.83,-13.34 62.83,-13.34c M-155.99 -40.95 C-155.99,-40.95 -156.43,-42.54 -156.43,-42.54 C-156.43,-42.54 -157.32,-41.13 -157.32,-41.13 C-157.32,-41.13 -158.91,-41.21 -158.91,-41.21 C-158.91,-41.21 -157.93,-39.8 -157.93,-39.8 C-157.93,-39.8 -158.46,-38.22 -158.46,-38.22 C-158.46,-38.22 -156.96,-38.74 -156.96,-38.74 C-156.96,-38.74 -155.73,-37.69 -155.73,-37.69 C-155.73,-37.69 -155.73,-39.45 -155.73,-39.45 C-155.73,-39.45 -154.49,-40.42 -154.49,-40.42 C-154.49,-40.42 -155.99,-40.95 -155.99,-40.95c M141.24 26.52 C141.24,26.52 140.71,24.85 140.71,24.85 C140.71,24.85 139.83,26.26 139.83,26.26 C139.83,26.26 138.33,26.26 138.33,26.26 C138.33,26.26 139.21,27.67 139.21,27.67 C139.21,27.67 138.77,29.26 138.77,29.26 C138.77,29.26 140.18,28.73 140.18,28.73 C140.18,28.73 141.51,29.7 141.51,29.7 C141.51,29.7 141.42,28.02 141.42,28.02 C141.42,28.02 142.74,27.05 142.74,27.05 C142.74,27.05 141.24,26.52 141.24,26.52c M111.4 -51.27 C111.4,-51.27 110.95,-52.94 110.95,-52.94 C110.95,-52.94 110.07,-51.53 110.07,-51.53 C110.07,-51.53 108.48,-51.53 108.48,-51.53 C108.48,-51.53 109.45,-50.21 109.45,-50.21 C109.45,-50.21 108.92,-48.53 108.92,-48.53 C108.92,-48.53 110.42,-49.15 110.42,-49.15 C110.42,-49.15 111.66,-48.09 111.66,-48.09 C111.66,-48.09 111.66,-49.86 111.66,-49.86 C111.66,-49.86 112.9,-50.83 112.9,-50.83 C112.9,-50.83 111.4,-51.27 111.4,-51.27c M-66.59 53.33 C-66.59,53.33 -67.03,51.65 -67.03,51.65 C-67.03,51.65 -67.91,53.06 -67.91,53.06 C-67.91,53.06 -69.5,53.06 -69.5,53.06 C-69.5,53.06 -68.53,54.47 -68.53,54.47 C-68.53,54.47 -69.06,56.06 -69.06,56.06 C-69.06,56.06 -67.56,55.53 -67.56,55.53 C-67.56,55.53 -66.32,56.5 -66.32,56.5 C-66.32,56.5 -66.32,54.82 -66.32,54.82 C-66.32,54.82 -65.08,53.77 -65.08,53.77 C-65.08,53.77 -66.59,53.33 -66.59,53.33c M-50.59 59.33 C-50.59,59.33 -51.12,57.65 -51.12,57.65 C-51.12,57.65 -52,59.06 -52,59.06 C-52,59.06 -53.5,59.06 -53.5,59.06 C-53.5,59.06 -52.62,60.38 -52.62,60.38 C-52.62,60.38 -53.06,62.06 -53.06,62.06 C-53.06,62.06 -51.65,61.53 -51.65,61.53 C-51.65,61.53 -50.32,62.5 -50.32,62.5 C-50.32,62.5 -50.41,60.82 -50.41,60.82 C-50.41,60.82 -49.08,59.77 -49.08,59.77 C-49.08,59.77 -50.59,59.33 -50.59,59.33c M29.98 -16.08 C29.98,-16.08 29.27,-18.46 29.27,-18.46 C29.27,-18.46 27.95,-16.43 27.95,-16.43 C27.95,-16.43 25.74,-16.43 25.74,-16.43 C25.74,-16.43 27.06,-14.49 27.06,-14.49 C27.06,-14.49 26.36,-12.11 26.36,-12.11 C26.36,-12.11 28.48,-12.9 28.48,-12.9 C28.48,-12.9 30.33,-11.49 30.33,-11.49 C30.33,-11.49 30.24,-13.96 30.24,-13.96 C30.24,-13.96 32.1,-15.37 32.1,-15.37 C32.1,-15.37 29.98,-16.08 29.98,-16.08c M81.28 55.98 C81.28,55.98 80.58,53.6 80.58,53.6 C80.58,53.6 79.25,55.63 79.25,55.63 C79.25,55.63 77.04,55.63 77.04,55.63 C77.04,55.63 78.37,57.57 78.37,57.57 C78.37,57.57 77.66,59.95 77.66,59.95 C77.66,59.95 79.78,59.07 79.78,59.07 C79.78,59.07 81.64,60.56 81.64,60.56 C81.64,60.56 81.55,58.1 81.55,58.1 C81.55,58.1 83.4,56.68 83.4,56.68 C83.4,56.68 81.28,55.98 81.28,55.98c M-165.26 -10.97 C-165.26,-10.97 -165.97,-13.35 -165.97,-13.35 C-165.97,-13.35 -167.29,-11.32 -167.29,-11.32 C-167.29,-11.32 -169.5,-11.32 -169.5,-11.32 C-169.5,-11.32 -168.18,-9.38 -168.18,-9.38 C-168.18,-9.38 -168.88,-7 -168.88,-7 C-168.88,-7 -166.76,-7.79 -166.76,-7.79 C-166.76,-7.79 -164.91,-6.38 -164.91,-6.38 C-164.91,-6.38 -165,-8.85 -165,-8.85 C-165,-8.85 -163.14,-10.26 -163.14,-10.26 C-163.14,-10.26 -165.26,-10.97 -165.26,-10.97c M-74.05 21.76 C-74.05,21.76 -74.66,19.47 -74.66,19.47 C-74.66,19.47 -75.99,21.49 -75.99,21.49 C-75.99,21.49 -78.2,21.41 -78.2,21.41 C-78.2,21.41 -76.87,23.43 -76.87,23.43 C-76.87,23.43 -77.58,25.73 -77.58,25.73 C-77.58,25.73 -75.46,24.93 -75.46,24.93 C-75.46,24.93 -73.6,26.43 -73.6,26.43 C-73.6,26.43 -73.69,23.96 -73.69,23.96 C-73.69,23.96 -71.84,22.46 -71.84,22.46 C-71.84,22.46 -74.05,21.76 -74.05,21.76c M8.98 55.68 C8.98,55.68 6.15,53.65 6.15,53.65 C6.15,53.65 6.24,57.09 6.24,57.09 C6.24,57.09 3.5,59.12 3.5,59.12 C3.5,59.12 6.86,60.09 6.86,60.09 C6.86,60.09 7.92,63.35 7.92,63.35 C7.92,63.35 9.86,60.44 9.86,60.44 C9.86,60.44 13.3,60.44 13.3,60.44 C13.3,60.44 11.18,57.71 11.18,57.71 C11.18,57.71 12.15,54.44 12.15,54.44 C12.15,54.44 8.98,55.68 8.98,55.68c M124.89 -2.41 C124.89,-2.41 122.06,-4.35 122.06,-4.35 C122.06,-4.35 122.24,-0.91 122.24,-0.91 C122.24,-0.91 119.5,1.12 119.5,1.12 C119.5,1.12 122.77,2 122.77,2 C122.77,2 123.83,5.26 123.83,5.26 C123.83,5.26 125.77,2.44 125.77,2.44 C125.77,2.44 129.21,2.44 129.21,2.44 C129.21,2.44 127.09,-0.29 127.09,-0.29 C127.09,-0.29 128.15,-3.56 128.15,-3.56 C128.15,-3.56 124.89,-2.41 124.89,-2.41c M77.31 19.91 C77.31,19.91 74.57,17.88 74.57,17.88 C74.57,17.88 74.66,21.32 74.66,21.32 C74.66,21.32 71.92,23.35 71.92,23.35 C71.92,23.35 75.19,24.32 75.19,24.32 C75.19,24.32 76.34,27.58 76.34,27.58 C76.34,27.58 78.19,24.67 78.19,24.67 C78.19,24.67 81.64,24.67 81.64,24.67 C81.64,24.67 79.52,21.94 79.52,21.94 C79.52,21.94 80.58,18.67 80.58,18.67 C80.58,18.67 77.31,19.91 77.31,19.91c M-28.11 7.68 C-28.11,7.68 -30.94,5.65 -30.94,5.65 C-30.94,5.65 -30.76,9.09 -30.76,9.09 C-30.76,9.09 -33.5,11.12 -33.5,11.12 C-33.5,11.12 -30.23,12.09 -30.23,12.09 C-30.23,12.09 -29.17,15.35 -29.17,15.35 C-29.17,15.35 -27.23,12.44 -27.23,12.44 C-27.23,12.44 -23.79,12.44 -23.79,12.44 C-23.79,12.44 -25.91,9.71 -25.91,9.71 C-25.91,9.71 -24.85,6.44 -24.85,6.44 C-24.85,6.44 -28.11,7.68 -28.11,7.68c M-119.43 -20.22 C-119.43,-20.22 -122.26,-22.16 -122.26,-22.16 C-122.26,-22.16 -122.08,-18.72 -122.08,-18.72 C-122.08,-18.72 -124.82,-16.7 -124.82,-16.7 C-124.82,-16.7 -121.55,-15.81 -121.55,-15.81 C-121.55,-15.81 -120.49,-12.55 -120.49,-12.55 C-120.49,-12.55 -118.55,-15.37 -118.55,-15.37 C-118.55,-15.37 -115.11,-15.37 -115.11,-15.37 C-115.11,-15.37 -117.23,-18.11 -117.23,-18.11 C-117.23,-18.11 -116.17,-21.37 -116.17,-21.37 C-116.17,-21.37 -119.43,-20.22 -119.43,-20.22c "/>
- </group>
- </group>
- <group android:name="_R_G_L_3_G_L_2_G" android:scaleY="0">
- <group android:name="_R_G_L_3_G_L_2_G_L_2_G" android:translateX="206" android:translateY="145" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_2_G_L_2_G_D_0_P_0" android:fillColor="#e8eaed" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -95.63 C206,-95.63 206,42.37 206,42.37 C206,43.47 205.1,44.37 204,44.37 C204,44.37 -204,44.37 -204,44.37 C-205.1,44.37 -206,43.47 -206,42.37 C-206,42.37 -206,-95.63 -206,-95.63 C-206,-96.73 -205.1,-97.63 -204,-97.63 C-204,-97.63 204,-97.63 204,-97.63 C205.1,-97.63 206,-96.73 206,-95.63c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_2_G_L_1_G" android:translateX="206" android:translateY="145" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_2_G_L_1_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M109 -14 C109,-14 109,14 109,14 C109,15.1 108.1,16 107,16 C107,16 -107,16 -107,16 C-108.1,16 -109,15.1 -109,14 C-109,14 -109,-14 -109,-14 C-109,-15.1 -108.1,-16 -107,-16 C-107,-16 107,-16 107,-16 C108.1,-16 109,-15.1 109,-14c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_2_G_L_0_G" android:translateX="46" android:translateY="145" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_2_G_L_0_G_D_0_P_0" android:fillColor="#80868b" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M22 -14 C22,-14 22,14 22,14 C22,18.42 18.42,22 14,22 C14,22 -14,22 -14,22 C-18.42,22 -22,18.42 -22,14 C-22,14 -22,-14 -22,-14 C-22,-18.42 -18.42,-22 -14,-22 C-14,-22 14,-22 14,-22 C18.42,-22 22,-18.42 22,-14c "/>
- </group>
- </group>
- <group android:name="_R_G_L_3_G_L_1_G" android:translateX="206" android:translateY="877" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_1_G_D_0_P_0" android:fillColor="#373737" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M40 0 C40,0 40,0 40,0 C40,1.1 39.1,2 38,2 C38,2 -38,2 -38,2 C-39.1,2 -40,1.1 -40,0 C-40,0 -40,0 -40,0 C-40,-1.1 -39.1,-2 -38,-2 C-38,-2 38,-2 38,-2 C39.1,-2 40,-1.1 40,0c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_0_G" android:scaleY="0">
- <group android:name="_R_G_L_3_G_L_0_G_L_2_G" android:translateX="206" android:translateY="50.5" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_0_G_L_2_G_D_0_P_0" android:fillColor="#202124" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -29.67 C206,-29.67 206,50.33 206,50.33 C206,50.33 -206,50.33 -206,50.33 C-206,50.33 -206,-29.67 -206,-29.67 C-206,-29.67 206,-29.67 206,-29.67c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_0_G_L_1_G" android:translateX="206" android:translateY="50.5" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_0_G_L_1_G_D_0_P_0" android:fillColor="#202124" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M206 -32.5 C206,-32.5 206,32.5 206,32.5 C206,42.43 197.93,50.5 188,50.5 C188,50.5 -188,50.5 -188,50.5 C-197.93,50.5 -206,42.43 -206,32.5 C-206,32.5 -206,-32.5 -206,-32.5 C-206,-42.43 -197.93,-50.5 -188,-50.5 C-188,-50.5 188,-50.5 188,-50.5 C197.93,-50.5 206,-42.43 206,-32.5c "/>
- </group>
- <group android:name="_R_G_L_3_G_L_0_G_L_0_G" android:translateX="206" android:translateY="66.5" android:scaleY="0">
- <path android:name="_R_G_L_3_G_L_0_G_L_0_G_D_0_P_0" android:fillColor="#3c4043" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M190 0 C190,0 190,0 190,0 C190,10.21 181.71,18.5 171.5,18.5 C171.5,18.5 -171.5,18.5 -171.5,18.5 C-181.71,18.5 -190,10.21 -190,0 C-190,0 -190,0 -190,0 C-190,-10.21 -181.71,-18.5 -171.5,-18.5 C-171.5,-18.5 171.5,-18.5 171.5,-18.5 C181.71,-18.5 190,-10.21 190,0c "/>
- </group>
- </group>
- </group>
- </group>
- <group android:name="_R_G_L_2_G_N_3_T_0" android:translateX="206" android:translateY="395" android:scaleX="0.6" android:scaleY="0">
- <group android:name="_R_G_L_2_G" android:translateY="-508.163" android:scaleX="0.68838" android:scaleY="0.68838">
- <path android:name="_R_G_L_2_G_D_0_P_0" android:fillColor="#9aa0a6" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 25 C13.81,25 25,13.81 25,0 C25,-13.81 13.81,-25 0,-25 C-13.81,-25 -25,-13.81 -25,0 C-25,13.81 -13.81,25 0,25c "/>
- </group>
- </group>
- <group android:name="_R_G_L_1_G_N_3_T_0" android:translateX="206" android:translateY="395" android:scaleX="0.6" android:scaleY="0">
- <group android:name="_R_G_L_1_G" android:translateX="-556.176" android:translateY="-7.307" android:scaleX="1.39" android:scaleY="1.39">
- <path android:name="_R_G_L_1_G_D_0_P_0" android:fillColor="#3c4043" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M136.82 -315.36 C136.82,-315.36 -137.18,-315.36 -137.18,-315.36 C-137.18,-315.36 -137.18,326.29 -137.18,326.29 C-137.18,326.29 136.82,326.29 136.82,326.29 C136.82,326.29 136.82,-315.36 136.82,-315.36c "/>
- </group>
- </group>
- <group android:name="_R_G_L_0_G" android:translateX="-30" android:translateY="658.997" android:pivotX="300" android:pivotY="64" android:rotation="-90" android:scaleY="0">
- <group android:name="_R_G_L_0_G_L_2_G" android:translateX="295.995" android:translateY="63.997" android:scaleY="0">
- <path android:name="_R_G_L_0_G_L_2_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="0.3" android:fillType="nonZero" android:pathData=" M-166 64 C-130.65,64 -102,35.35 -102,0 C-102,-35.34 -130.65,-64 -166,-64 C-201.34,-64 -230,-35.34 -230,0 C-230,35.35 -201.34,64 -166,64c "/>
- </group>
- <group android:name="_R_G_L_0_G_L_1_G" android:translateX="192" android:translateY="63.997" android:rotation="90" android:scaleX="-1" android:scaleY="0">
- <path android:name="_R_G_L_0_G_L_1_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="0.3" android:fillType="nonZero" android:pathData=" M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c "/>
- </group>
- <group android:name="_R_G_L_0_G_L_0_G" android:translateX="295.995" android:translateY="63.997" android:scaleY="0">
- <group android:name="_R_G_L_0_G_L_0_G_D_0_P_0_G_0_T_0" android:translateX="-166" android:translateY="0">
- <path android:name="_R_G_L_0_G_L_0_G_D_0_P_0" android:fillColor="#baf29d" android:fillAlpha="1" android:fillType="nonZero" android:pathData=" M0 64 C35.35,64 64,35.35 64,0 C64,-35.34 35.35,-64 0,-64 C-35.34,-64 -64,-35.34 -64,0 C-64,35.35 -35.34,64 0,64c "/>
- </group>
- </group>
- </group>
- </group>
- <group android:name="time_group"/>
- </vector>
- </aapt:attr>
- <target android:name="_R_G_L_4_G_N_7_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="1500" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,446C 206,446 206,446 206,446">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="950" android:startOffset="1500" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,446C 206,446 206,395 206,395">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_4_G_N_7_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="1500" android:startOffset="0" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="1500" android:startOffset="0" android:valueFrom="1" android:valueTo="1" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="950" android:startOffset="1500" android:valueFrom="1" android:valueTo="0.6" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="950" android:startOffset="1500" android:valueFrom="1" android:valueTo="0.6" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_4_G_N_7_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_4_G_N_7_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_11_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_10_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_9_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_8_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_7_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_5_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_4_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_3_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_4_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_3_G_L_7_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_3_G_L_6_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_3_G_L_5_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_3_G_L_4_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_3_G_L_3_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_3_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_3_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_3_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_3_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_2_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_2_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_2_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_0_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_0_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_0_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_N_3_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="3400" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,395C 206,403.5 206,386.5 206,395">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="350" android:startOffset="3400" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,395C 206,403.5 206,437.5 206,446">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_N_3_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="3400" android:startOffset="0" android:valueFrom="0.6" android:valueTo="0.6" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="3400" android:startOffset="0" android:valueFrom="0.6" android:valueTo="0.6" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="350" android:startOffset="3400" android:valueFrom="0.6" android:valueTo="0.72718" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="350" android:startOffset="3400" android:valueFrom="0.6" android:valueTo="0.72718" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="217" android:startOffset="3750" android:valueFrom="0.72718" android:valueTo="0.72" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="217" android:startOffset="3750" android:valueFrom="0.72718" android:valueTo="0.72" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_3_G_N_3_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3400" android:valueFrom="0" android:valueTo="0.6" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="3883" android:startOffset="0" android:valueFrom="0.68838" android:valueTo="0.68838" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="3883" android:startOffset="0" android:valueFrom="0.68838" android:valueTo="0.68838" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="167" android:startOffset="3883" android:valueFrom="0.68838" android:valueTo="1.37677" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="167" android:startOffset="3883" android:valueFrom="0.68838" android:valueTo="1.37677" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_N_3_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="3400" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,395C 206,403.5 206,386.5 206,395">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="350" android:startOffset="3400" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,395C 206,403.5 206,437.5 206,446">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_N_3_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="3400" android:startOffset="0" android:valueFrom="0.6" android:valueTo="0.6" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="3400" android:startOffset="0" android:valueFrom="0.6" android:valueTo="0.6" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="350" android:startOffset="3400" android:valueFrom="0.6" android:valueTo="0.72718" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="350" android:startOffset="3400" android:valueFrom="0.6" android:valueTo="0.72718" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="217" android:startOffset="3750" android:valueFrom="0.72718" android:valueTo="0.72" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="217" android:startOffset="3750" android:valueFrom="0.72718" android:valueTo="0.72" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_2_G_N_3_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3883" android:valueFrom="0" android:valueTo="0.6" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="2667" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -556.176,-7.307C -556.176,-7.307 -556.176,-7.307 -556.176,-7.307">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.272,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="250" android:startOffset="2667" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -556.176,-7.307C -556.176,-7.307 -421.176,-7.307 -421.176,-7.307">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.272,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="417" android:startOffset="2917" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -421.176,-7.307C -421.176,-7.307 -429.51,-7.307 -429.51,-7.307">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G_N_3_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="3400" android:startOffset="0" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,395C 206,403.5 206,386.5 206,395">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="350" android:startOffset="3400" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M 206,395C 206,403.5 206,437.5 206,446">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G_N_3_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleX" android:duration="3400" android:startOffset="0" android:valueFrom="0.6" android:valueTo="0.6" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="3400" android:startOffset="0" android:valueFrom="0.6" android:valueTo="0.6" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="350" android:startOffset="3400" android:valueFrom="0.6" android:valueTo="0.72718" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="350" android:startOffset="3400" android:valueFrom="0.6" android:valueTo="0.72718" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.34,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleX" android:duration="217" android:startOffset="3750" android:valueFrom="0.72718" android:valueTo="0.72" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="scaleY" android:duration="217" android:startOffset="3750" android:valueFrom="0.72718" android:valueTo="0.72" android:valueType="floatType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.167,0 0.51,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_1_G_N_3_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="2667" android:valueFrom="0" android:valueTo="0.6" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1233" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_2_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1400" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G_D_0_P_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="pathData" android:duration="167" android:startOffset="1233" android:valueFrom="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueTo="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueType="pathType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="pathData" android:duration="1050" android:startOffset="1400" android:valueFrom="M0 1.99 C35.34,1.99 64,-26.66 63.99,-62.01 C63.99,-62.01 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64,-62 -64,-62 C-64,-26.66 -35.35,1.99 0,1.99c " android:valueTo="M-0.01 229.99 C35.33,229.99 63.99,201.34 63.99,166 C63.99,166 64.01,-61.87 64.01,-61.87 C64.01,-97.21 35.35,-125.87 0.01,-125.87 C-35.34,-125.87 -63.99,-97.21 -63.99,-61.87 C-63.99,-61.87 -64.01,166 -64.01,166 C-64.01,201.34 -35.36,229.99 -0.01,229.99c " android:valueType="pathType">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1400" android:valueFrom="0" android:valueTo="-1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_1_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3483" android:valueFrom="-1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G_D_0_P_0_G_0_T_0">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateXY" android:duration="167" android:startOffset="1233" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -166,0C -128,0 -204,0 -166,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- <objectAnimator android:propertyName="translateXY" android:duration="1050" android:startOffset="1400" android:propertyXName="translateX" android:propertyYName="translateY" android:pathData="M -166,0C -128,0 24,0 62,0">
- <aapt:attr name="android:interpolator">
- <pathInterpolator android:pathData="M 0.0,0.0 c0.5,0 0.5,1 1.0,1.0"/>
- </aapt:attr>
- </objectAnimator>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1233" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3483" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="1233" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="_R_G_L_0_G">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="scaleY" android:duration="0" android:startOffset="3483" android:valueFrom="1" android:valueTo="0" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
- <target android:name="time_group">
- <aapt:attr name="android:animation">
- <set android:ordering="together">
- <objectAnimator android:propertyName="translateX" android:duration="5133" android:startOffset="0" android:valueFrom="0" android:valueTo="1" android:valueType="floatType"/>
- </set>
- </aapt:attr>
- </target>
-</animated-vector>
diff --git a/quickstep/res/drawable/mock_conversation.xml b/quickstep/res/drawable/mock_conversation.xml
new file mode 100644
index 0000000..272d9ed
--- /dev/null
+++ b/quickstep/res/drawable/mock_conversation.xml
@@ -0,0 +1,212 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="83"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_1_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G"
+ android:pivotX="206"
+ android:pivotY="446"
+ android:scaleX="1"
+ android:scaleY="1">
+ <group android:name="_R_G_L_0_G_L_0_G">
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_14_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_14_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#000000"
+ android:fillType="nonZero"
+ android:pathData=" M206 -422 C206,-422 206,422 206,422 C206,435.25 195.25,446 182,446 C182,446 -182,446 -182,446 C-195.25,446 -206,435.25 -206,422 C-206,422 -206,-422 -206,-422 C-206,-435.25 -195.25,-446 -182,-446 C-182,-446 182,-446 182,-446 C195.25,-446 206,-435.25 206,-422c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_13_G"
+ android:translateX="206"
+ android:translateY="496.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_13_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#f1f3f4"
+ android:fillType="nonZero"
+ android:pathData=" M206 -395.5 C206,-395.5 206,395.5 206,395.5 C206,395.5 -206,395.5 -206,395.5 C-206,395.5 -206,-395.5 -206,-395.5 C-206,-395.5 206,-395.5 206,-395.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_12_G"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_12_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M206 -50.5 C206,-50.5 206,50.5 206,50.5 C206,50.5 -206,50.5 -206,50.5 C-206,50.5 -206,-50.5 -206,-50.5 C-206,-50.5 206,-50.5 206,-50.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_11_G"
+ android:translateX="206"
+ android:translateY="804">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_11_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M177 0 C177,12.15 167.15,22 155,22 C155,22 -155,22 -155,22 C-167.15,22 -177,12.15 -177,0 C-177,-12.15 -167.15,-22 -155,-22 C-155,-22 155,-22 155,-22 C167.15,-22 177,-12.15 177,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_10_G"
+ android:translateX="117.5"
+ android:translateY="61">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_10_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M83.5 -14 C83.5,-14 83.5,14 83.5,14 C83.5,16.21 81.71,18 79.5,18 C79.5,18 -79.5,18 -79.5,18 C-81.71,18 -83.5,16.21 -83.5,14 C-83.5,14 -83.5,-14 -83.5,-14 C-83.5,-16.21 -81.71,-18 -79.5,-18 C-79.5,-18 79.5,-18 79.5,-18 C81.71,-18 83.5,-16.21 83.5,-14c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_9_G"
+ android:translateX="370"
+ android:translateY="61">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_9_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M18 -14 C18,-14 18,14 18,14 C18,16.21 16.21,18 14,18 C14,18 -14,18 -14,18 C-16.21,18 -18,16.21 -18,14 C-18,14 -18,-14 -18,-14 C-18,-16.21 -16.21,-18 -14,-18 C-14,-18 14,-18 14,-18 C16.21,-18 18,-16.21 18,-14c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_8_G"
+ android:translateX="318"
+ android:translateY="61">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_8_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M18 -14 C18,-14 18,14 18,14 C18,16.21 16.21,18 14,18 C14,18 -14,18 -14,18 C-16.21,18 -18,16.21 -18,14 C-18,14 -18,-14 -18,-14 C-18,-16.21 -16.21,-18 -14,-18 C-14,-18 14,-18 14,-18 C16.21,-18 18,-16.21 18,-14c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_7_G"
+ android:translateX="48"
+ android:translateY="618">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_7_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M22 0 C22,12.15 12.15,22 0,22 C-12.15,22 -22,12.15 -22,0 C-22,-12.15 -12.15,-22 0,-22 C12.15,-22 22,-12.15 22,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_6_G"
+ android:translateX="48"
+ android:translateY="396">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_6_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M22 0 C22,12.15 12.15,22 0,22 C-12.15,22 -22,12.15 -22,0 C-22,-12.15 -12.15,-22 0,-22 C12.15,-22 22,-12.15 22,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_5_G"
+ android:translateX="259"
+ android:translateY="286">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_5_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M135 -38 C135,-38 135,38 135,38 C135,47.94 126.94,56 117,56 C117,56 -117,56 -117,56 C-126.94,56 -135,47.94 -135,38 C-135,38 -135,-38 -135,-38 C-135,-47.94 -126.94,-56 -117,-56 C-117,-56 117,-56 117,-56 C126.94,-56 135,-47.94 135,-38c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_4_G"
+ android:translateX="259"
+ android:translateY="468">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_4_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M134.5 4 C134.5,4 134.5,14 134.5,14 C134.5,16.21 132.71,18 130.5,18 C130.5,18 44.5,18 44.5,18 C42.29,18 40.5,16.21 40.5,14 C40.5,14 40.5,4 40.5,4 C40.5,1.79 42.29,0 44.5,0 C44.5,0 130.5,0 130.5,0 C132.71,0 134.5,1.79 134.5,4c M135 0 C135,9.66 127.17,17.5 117.5,17.5 C117.5,17.5 31,17.5 31,17.5 C21.34,17.5 13.5,9.66 13.5,0 C13.5,-9.66 21.34,-17.5 31,-17.5 C31,-17.5 117.5,-17.5 117.5,-17.5 C127.17,-17.5 135,-9.66 135,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_3_G"
+ android:translateX="259"
+ android:translateY="526.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_3_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M135 -32.5 C135,-32.5 135,20.5 135,20.5 C135,22.71 133.21,24.5 131,24.5 C131,24.5 -95,24.5 -95,24.5 C-97.21,24.5 -99,22.71 -99,20.5 C-99,20.5 -99,-32.5 -99,-32.5 C-99,-34.71 -97.21,-36.5 -95,-36.5 C-95,-36.5 131,-36.5 131,-36.5 C133.21,-36.5 135,-34.71 135,-32.5c M135 -18.5 C135,-18.5 135,18.5 135,18.5 C135,28.44 126.94,36.5 117,36.5 C117,36.5 -117,36.5 -117,36.5 C-126.94,36.5 -135,28.44 -135,18.5 C-135,18.5 -135,-18.5 -135,-18.5 C-135,-28.44 -126.94,-36.5 -117,-36.5 C-117,-36.5 117,-36.5 117,-36.5 C126.94,-36.5 135,-28.44 135,-18.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_2_G"
+ android:translateX="259"
+ android:translateY="708.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M135 -18.5 C135,-18.5 135,18.5 135,18.5 C135,28.44 126.94,36.5 117,36.5 C117,36.5 -117,36.5 -117,36.5 C-126.94,36.5 -135,28.44 -135,18.5 C-135,18.5 -135,-18.5 -135,-18.5 C-135,-28.44 -126.94,-36.5 -117,-36.5 C-117,-36.5 117,-36.5 117,-36.5 C126.94,-36.5 135,-28.44 135,-18.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_1_G"
+ android:translateX="222"
+ android:translateY="617">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M45.5 0 C45.5,9.66 37.67,17.5 28,17.5 C28,17.5 -117.5,17.5 -117.5,17.5 C-127.16,17.5 -135,9.66 -135,0 C-135,-9.66 -127.16,-17.5 -117.5,-17.5 C-117.5,-17.5 28,-17.5 28,-17.5 C37.67,-17.5 45.5,-9.66 45.5,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_0_G"
+ android:translateX="222"
+ android:translateY="395.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M77 0 C77,9.66 69.16,17.5 59.5,17.5 C59.5,17.5 -117.5,17.5 -117.5,17.5 C-127.16,17.5 -135,9.66 -135,0 C-135,-9.66 -127.16,-17.5 -117.5,-17.5 C-117.5,-17.5 59.5,-17.5 59.5,-17.5 C69.16,-17.5 77,-9.66 77,0c " />
+ </group>
+ </group>
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/mock_conversations_list.xml b/quickstep/res/drawable/mock_conversations_list.xml
new file mode 100644
index 0000000..2dbc88f
--- /dev/null
+++ b/quickstep/res/drawable/mock_conversations_list.xml
@@ -0,0 +1,361 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="83"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group
+ android:name="_R_G_L_1_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -446 C206,-446 206,446 206,446 C206,446 -206,446 -206,446 C-206,446 -206,-446 -206,-446 C-206,-446 206,-446 206,-446c " />
+ </group>
+ <group android:name="_R_G_L_0_G">
+ <group android:name="_R_G_L_0_G_L_0_G">
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_28_G"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_28_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#000000"
+ android:fillType="nonZero"
+ android:pathData=" M206 -422 C206,-422 206,422 206,422 C206,435.25 195.25,446 182,446 C182,446 -182,446 -182,446 C-195.25,446 -206,435.25 -206,422 C-206,422 -206,-422 -206,-422 C-206,-435.25 -195.25,-446 -182,-446 C-182,-446 182,-446 182,-446 C195.25,-446 206,-435.25 206,-422c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_27_G"
+ android:translateX="206"
+ android:translateY="422.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_27_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -395.5 C206,-395.5 206,395.5 206,395.5 C206,395.5 -206,395.5 -206,395.5 C-206,395.5 -206,-395.5 -206,-395.5 C-206,-395.5 206,-395.5 206,-395.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_26_G"
+ android:translateX="206"
+ android:translateY="496.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_26_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M206 -377.5 C206,-377.5 206,377.5 206,377.5 C206,387.43 197.93,395.5 188,395.5 C188,395.5 -188,395.5 -188,395.5 C-197.93,395.5 -206,387.43 -206,377.5 C-206,377.5 -206,-377.5 -206,-377.5 C-206,-387.43 -197.93,-395.5 -188,-395.5 C-188,-395.5 188,-395.5 188,-395.5 C197.93,-395.5 206,-387.43 206,-377.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_25_G"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_25_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M206 -23.5 C206,-23.5 206,50.5 206,50.5 C206,50.5 -206,50.5 -206,50.5 C-206,50.5 -206,-23.5 -206,-23.5 C-206,-23.5 206,-23.5 206,-23.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_24_G"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_24_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M206 -32.5 C206,-32.5 206,32.5 206,32.5 C206,42.43 197.93,50.5 188,50.5 C188,50.5 -188,50.5 -188,50.5 C-197.93,50.5 -206,42.43 -206,32.5 C-206,32.5 -206,-32.5 -206,-32.5 C-206,-42.43 -197.93,-50.5 -188,-50.5 C-188,-50.5 188,-50.5 188,-50.5 C197.93,-50.5 206,-42.43 206,-32.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_23_G"
+ android:translateX="54"
+ android:translateY="157">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_23_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_22_G"
+ android:translateX="54"
+ android:translateY="157">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_22_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_21_G"
+ android:translateX="148.5"
+ android:translateY="148">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_21_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M46.5 -5 C46.5,-5 46.5,5 46.5,5 C46.5,7.21 44.71,9 42.5,9 C42.5,9 -42.5,9 -42.5,9 C-44.71,9 -46.5,7.21 -46.5,5 C-46.5,5 -46.5,-5 -46.5,-5 C-46.5,-7.21 -44.71,-9 -42.5,-9 C-42.5,-9 42.5,-9 42.5,-9 C44.71,-9 46.5,-7.21 46.5,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_20_G"
+ android:translateX="186"
+ android:translateY="169">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_20_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M84 -4 C84,-4 84,4 84,4 C84,6.21 82.21,8 80,8 C80,8 -80,8 -80,8 C-82.21,8 -84,6.21 -84,4 C-84,4 -84,-4 -84,-4 C-84,-6.21 -82.21,-8 -80,-8 C-80,-8 80,-8 80,-8 C82.21,-8 84,-6.21 84,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_19_G"
+ android:translateX="54"
+ android:translateY="245">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_19_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_18_G"
+ android:translateX="162"
+ android:translateY="236">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_18_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M60 -5 C60,-5 60,5 60,5 C60,7.21 58.21,9 56,9 C56,9 -56,9 -56,9 C-58.21,9 -60,7.21 -60,5 C-60,5 -60,-5 -60,-5 C-60,-7.21 -58.21,-9 -56,-9 C-56,-9 56,-9 56,-9 C58.21,-9 60,-7.21 60,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_17_G"
+ android:translateX="171.5"
+ android:translateY="257">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_17_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M69.5 -4 C69.5,-4 69.5,4 69.5,4 C69.5,6.21 67.71,8 65.5,8 C65.5,8 -65.5,8 -65.5,8 C-67.71,8 -69.5,6.21 -69.5,4 C-69.5,4 -69.5,-4 -69.5,-4 C-69.5,-6.21 -67.71,-8 -65.5,-8 C-65.5,-8 65.5,-8 65.5,-8 C67.71,-8 69.5,-6.21 69.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_16_G"
+ android:translateX="54"
+ android:translateY="333">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_16_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_15_G"
+ android:translateX="158"
+ android:translateY="324">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_15_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M56 -5 C56,-5 56,5 56,5 C56,7.21 54.21,9 52,9 C52,9 -52,9 -52,9 C-54.21,9 -56,7.21 -56,5 C-56,5 -56,-5 -56,-5 C-56,-7.21 -54.21,-9 -52,-9 C-52,-9 52,-9 52,-9 C54.21,-9 56,-7.21 56,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_14_G"
+ android:translateX="217.5"
+ android:translateY="345">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_14_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M115.5 -4 C115.5,-4 115.5,4 115.5,4 C115.5,6.21 113.71,8 111.5,8 C111.5,8 -111.5,8 -111.5,8 C-113.71,8 -115.5,6.21 -115.5,4 C-115.5,4 -115.5,-4 -115.5,-4 C-115.5,-6.21 -113.71,-8 -111.5,-8 C-111.5,-8 111.5,-8 111.5,-8 C113.71,-8 115.5,-6.21 115.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_13_G"
+ android:translateX="54"
+ android:translateY="421">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_13_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_12_G"
+ android:translateX="170"
+ android:translateY="412">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_12_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M68 -5 C68,-5 68,5 68,5 C68,7.21 66.21,9 64,9 C64,9 -64,9 -64,9 C-66.21,9 -68,7.21 -68,5 C-68,5 -68,-5 -68,-5 C-68,-7.21 -66.21,-9 -64,-9 C-64,-9 64,-9 64,-9 C66.21,-9 68,-7.21 68,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_11_G"
+ android:translateX="198.5"
+ android:translateY="433">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_11_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M96.5 -4 C96.5,-4 96.5,4 96.5,4 C96.5,6.21 94.71,8 92.5,8 C92.5,8 -92.5,8 -92.5,8 C-94.71,8 -96.5,6.21 -96.5,4 C-96.5,4 -96.5,-4 -96.5,-4 C-96.5,-6.21 -94.71,-8 -92.5,-8 C-92.5,-8 92.5,-8 92.5,-8 C94.71,-8 96.5,-6.21 96.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_10_G"
+ android:translateX="54"
+ android:translateY="509">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_10_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_9_G"
+ android:translateX="135"
+ android:translateY="500">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_9_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M33 -5 C33,-5 33,5 33,5 C33,7.21 31.21,9 29,9 C29,9 -29,9 -29,9 C-31.21,9 -33,7.21 -33,5 C-33,5 -33,-5 -33,-5 C-33,-7.21 -31.21,-9 -29,-9 C-29,-9 29,-9 29,-9 C31.21,-9 33,-7.21 33,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_8_G"
+ android:translateX="185.5"
+ android:translateY="521">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_8_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M83.5 -4 C83.5,-4 83.5,4 83.5,4 C83.5,6.21 81.71,8 79.5,8 C79.5,8 -79.5,8 -79.5,8 C-81.71,8 -83.5,6.21 -83.5,4 C-83.5,4 -83.5,-4 -83.5,-4 C-83.5,-6.21 -81.71,-8 -79.5,-8 C-79.5,-8 79.5,-8 79.5,-8 C81.71,-8 83.5,-6.21 83.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_7_G"
+ android:translateX="54"
+ android:translateY="597">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_7_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_6_G"
+ android:translateX="168.5"
+ android:translateY="588">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_6_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M66.5 -5 C66.5,-5 66.5,5 66.5,5 C66.5,7.21 64.71,9 62.5,9 C62.5,9 -62.5,9 -62.5,9 C-64.71,9 -66.5,7.21 -66.5,5 C-66.5,5 -66.5,-5 -66.5,-5 C-66.5,-7.21 -64.71,-9 -62.5,-9 C-62.5,-9 62.5,-9 62.5,-9 C64.71,-9 66.5,-7.21 66.5,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_5_G"
+ android:translateX="198.5"
+ android:translateY="609">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_5_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M96.5 -4 C96.5,-4 96.5,4 96.5,4 C96.5,6.21 94.71,8 92.5,8 C92.5,8 -92.5,8 -92.5,8 C-94.71,8 -96.5,6.21 -96.5,4 C-96.5,4 -96.5,-4 -96.5,-4 C-96.5,-6.21 -94.71,-8 -92.5,-8 C-92.5,-8 92.5,-8 92.5,-8 C94.71,-8 96.5,-6.21 96.5,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_4_G"
+ android:translateX="54"
+ android:translateY="685">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_4_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9aa0a6"
+ android:fillType="nonZero"
+ android:pathData=" M28 0 C28,15.46 15.46,28 0,28 C-15.46,28 -28,15.46 -28,0 C-28,-15.46 -15.46,-28 0,-28 C15.46,-28 28,-15.46 28,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_3_G"
+ android:translateX="162.5"
+ android:translateY="676">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_3_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M60.5 -5 C60.5,-5 60.5,5 60.5,5 C60.5,7.21 58.71,9 56.5,9 C56.5,9 -56.5,9 -56.5,9 C-58.71,9 -60.5,7.21 -60.5,5 C-60.5,5 -60.5,-5 -60.5,-5 C-60.5,-7.21 -58.71,-9 -56.5,-9 C-56.5,-9 56.5,-9 56.5,-9 C58.71,-9 60.5,-7.21 60.5,-5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_2_G"
+ android:translateX="174"
+ android:translateY="697">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M72 -4 C72,-4 72,4 72,4 C72,6.21 70.21,8 68,8 C68,8 -68,8 -68,8 C-70.21,8 -72,6.21 -72,4 C-72,4 -72,-4 -72,-4 C-72,-6.21 -70.21,-8 -68,-8 C-68,-8 68,-8 68,-8 C70.21,-8 72,-6.21 72,-4c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_1_G"
+ android:translateX="313.5"
+ android:translateY="798">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M74.5 0 C74.5,0 74.5,0 74.5,0 C74.5,15.45 61.95,28 46.5,28 C46.5,28 -46.5,28 -46.5,28 C-61.95,28 -74.5,15.45 -74.5,0 C-74.5,0 -74.5,0 -74.5,0 C-74.5,-15.45 -61.95,-28 -46.5,-28 C-46.5,-28 46.5,-28 46.5,-28 C61.95,-28 74.5,-15.45 74.5,0c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_0_G"
+ android:translateX="205.5"
+ android:translateY="61">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#f8f9fa"
+ android:fillType="nonZero"
+ android:pathData=" M171.5 -14 C171.5,-14 171.5,14 171.5,14 C171.5,16.21 169.71,18 167.5,18 C167.5,18 -167.5,18 -167.5,18 C-169.71,18 -171.5,16.21 -171.5,14 C-171.5,14 -171.5,-14 -171.5,-14 C-171.5,-16.21 -169.71,-18 -167.5,-18 C-167.5,-18 167.5,-18 167.5,-18 C169.71,-18 171.5,-16.21 171.5,-14c " />
+ </group>
+ </group>
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/mock_webpage.xml b/quickstep/res/drawable/mock_webpage.xml
new file mode 100644
index 0000000..93b22b7
--- /dev/null
+++ b/quickstep/res/drawable/mock_webpage.xml
@@ -0,0 +1,251 @@
+<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
+ xmlns:aapt="http://schemas.android.com/aapt">
+ <target android:name="time_group">
+ <aapt:attr name="android:animation">
+ <set android:ordering="together">
+ <objectAnimator
+ android:duration="83"
+ android:propertyName="translateX"
+ android:startOffset="0"
+ android:valueFrom="0"
+ android:valueTo="1"
+ android:valueType="floatType" />
+ </set>
+ </aapt:attr>
+ </target>
+ <aapt:attr name="android:drawable">
+ <vector
+ android:width="412dp"
+ android:height="892dp"
+ android:viewportHeight="892"
+ android:viewportWidth="412">
+ <group android:name="_R_G">
+ <group android:name="_R_G_L_0_G">
+ <group android:name="_R_G_L_0_G_L_3_G">
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_11_G"
+ android:scaleX="0.87473"
+ android:scaleY="0.98643"
+ android:translateX="206"
+ android:translateY="472.769">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_11_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#dadce0"
+ android:fillType="nonZero"
+ android:pathData=" M235.5 -407 C235.5,-407 235.5,407 235.5,407 C235.5,416.93 227.43,425 217.5,425 C217.5,425 -217.5,425 -217.5,425 C-227.43,425 -235.5,416.93 -235.5,407 C-235.5,407 -235.5,-407 -235.5,-407 C-235.5,-416.93 -227.43,-425 -217.5,-425 C-217.5,-425 217.5,-425 217.5,-425 C227.43,-425 235.5,-416.93 235.5,-407c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_10_G"
+ android:translateX="182.5"
+ android:translateY="831">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_10_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M158.5 -3 C158.5,-3 158.5,3 158.5,3 C158.5,7.42 154.92,11 150.5,11 C150.5,11 -150.5,11 -150.5,11 C-154.92,11 -158.5,7.42 -158.5,3 C-158.5,3 -158.5,-3 -158.5,-3 C-158.5,-7.42 -154.92,-11 -150.5,-11 C-150.5,-11 150.5,-11 150.5,-11 C154.92,-11 158.5,-7.42 158.5,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_9_G"
+ android:translateX="186"
+ android:translateY="801">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_9_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M162 -3 C162,-3 162,3 162,3 C162,7.42 158.42,11 154,11 C154,11 -154,11 -154,11 C-158.42,11 -162,7.42 -162,3 C-162,3 -162,-3 -162,-3 C-162,-7.42 -158.42,-11 -154,-11 C-154,-11 154,-11 154,-11 C158.42,-11 162,-7.42 162,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_8_G"
+ android:translateX="119"
+ android:translateY="755">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_8_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M95 -3 C95,-3 95,3 95,3 C95,7.42 91.42,11 87,11 C87,11 -87,11 -87,11 C-91.42,11 -95,7.42 -95,3 C-95,3 -95,-3 -95,-3 C-95,-7.42 -91.42,-11 -87,-11 C-87,-11 87,-11 87,-11 C91.42,-11 95,-7.42 95,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_7_G"
+ android:translateX="182.5"
+ android:translateY="725">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_7_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M158.5 -3 C158.5,-3 158.5,3 158.5,3 C158.5,7.42 154.92,11 150.5,11 C150.5,11 -150.5,11 -150.5,11 C-154.92,11 -158.5,7.42 -158.5,3 C-158.5,3 -158.5,-3 -158.5,-3 C-158.5,-7.42 -154.92,-11 -150.5,-11 C-150.5,-11 150.5,-11 150.5,-11 C154.92,-11 158.5,-7.42 158.5,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_6_G"
+ android:translateX="197.5"
+ android:translateY="695">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_6_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M173.5 -3 C173.5,-3 173.5,3 173.5,3 C173.5,7.42 169.92,11 165.5,11 C165.5,11 -165.5,11 -165.5,11 C-169.92,11 -173.5,7.42 -173.5,3 C-173.5,3 -173.5,-3 -173.5,-3 C-173.5,-7.42 -169.92,-11 -165.5,-11 C-165.5,-11 165.5,-11 165.5,-11 C169.92,-11 173.5,-7.42 173.5,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_5_G"
+ android:translateX="192"
+ android:translateY="665">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_5_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M168 -3 C168,-3 168,3 168,3 C168,7.42 164.42,11 160,11 C160,11 -160,11 -160,11 C-164.42,11 -168,7.42 -168,3 C-168,3 -168,-3 -168,-3 C-168,-7.42 -164.42,-11 -160,-11 C-160,-11 160,-11 160,-11 C164.42,-11 168,-7.42 168,-3c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_4_G"
+ android:translateX="105.5"
+ android:translateY="360">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_4_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_3_G"
+ android:translateX="47.5"
+ android:translateY="360">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_3_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M23.5 -2 C23.5,-2 23.5,2 23.5,2 C23.5,4.21 21.71,6 19.5,6 C19.5,6 -19.5,6 -19.5,6 C-21.71,6 -23.5,4.21 -23.5,2 C-23.5,2 -23.5,-2 -23.5,-2 C-23.5,-4.21 -21.71,-6 -19.5,-6 C-19.5,-6 19.5,-6 19.5,-6 C21.71,-6 23.5,-4.21 23.5,-2c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_2_G"
+ android:translateX="142.5"
+ android:translateY="328">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M118.5 -10 C118.5,-10 118.5,10 118.5,10 C118.5,14.42 114.92,18 110.5,18 C110.5,18 -110.5,18 -110.5,18 C-114.92,18 -118.5,14.42 -118.5,10 C-118.5,10 -118.5,-10 -118.5,-10 C-118.5,-14.42 -114.92,-18 -110.5,-18 C-110.5,-18 110.5,-18 110.5,-18 C114.92,-18 118.5,-14.42 118.5,-10c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_1_G"
+ android:translateX="186"
+ android:translateY="284">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M162 -10 C162,-10 162,10 162,10 C162,14.42 158.42,18 154,18 C154,18 -154,18 -154,18 C-158.42,18 -162,14.42 -162,10 C-162,10 -162,-10 -162,-10 C-162,-14.42 -158.42,-18 -154,-18 C-154,-18 154,-18 154,-18 C158.42,-18 162,-14.42 162,-10c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_0_G"
+ android:translateX="155"
+ android:translateY="240">
+ <path
+ android:name="_R_G_L_0_G_L_3_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M131 -10 C131,-10 131,10 131,10 C131,14.42 127.42,18 123,18 C123,18 -123,18 -123,18 C-127.42,18 -131,14.42 -131,10 C-131,10 -131,-10 -131,-10 C-131,-14.42 -127.42,-18 -123,-18 C-123,-18 123,-18 123,-18 C127.42,-18 131,-14.42 131,-10c " />
+ </group>
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_2_G"
+ android:translateX="24"
+ android:translateY="390">
+ <group
+ android:name="_R_G_L_0_G_L_2_G_L_0_G"
+ android:translateX="182"
+ android:translateY="120">
+ <path
+ android:name="_R_G_L_0_G_L_2_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#bdc1c6"
+ android:fillType="nonZero"
+ android:pathData=" M182 -98 C182,-98 182,98 182,98 C182,110.14 172.14,120 160,120 C160,120 -160,120 -160,120 C-172.14,120 -182,110.14 -182,98 C-182,98 -182,-98 -182,-98 C-182,-110.14 -172.14,-120 -160,-120 C-160,-120 160,-120 160,-120 C172.14,-120 182,-110.14 182,-98c " />
+ </group>
+ </group>
+ <group android:name="_R_G_L_0_G_L_1_G">
+ <group
+ android:name="_R_G_L_0_G_L_1_G_L_2_G"
+ android:translateX="206"
+ android:translateY="145">
+ <path
+ android:name="_R_G_L_0_G_L_1_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#e8eaed"
+ android:fillType="nonZero"
+ android:pathData=" M206 -95.63 C206,-95.63 206,42.37 206,42.37 C206,43.47 205.1,44.37 204,44.37 C204,44.37 -204,44.37 -204,44.37 C-205.1,44.37 -206,43.47 -206,42.37 C-206,42.37 -206,-95.63 -206,-95.63 C-206,-96.73 -205.1,-97.63 -204,-97.63 C-204,-97.63 204,-97.63 204,-97.63 C205.1,-97.63 206,-96.73 206,-95.63c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_1_G_L_1_G"
+ android:translateX="206"
+ android:translateY="145">
+ <path
+ android:name="_R_G_L_0_G_L_1_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#80868b"
+ android:fillType="nonZero"
+ android:pathData=" M109 -14 C109,-14 109,14 109,14 C109,15.1 108.1,16 107,16 C107,16 -107,16 -107,16 C-108.1,16 -109,15.1 -109,14 C-109,14 -109,-14 -109,-14 C-109,-15.1 -108.1,-16 -107,-16 C-107,-16 107,-16 107,-16 C108.1,-16 109,-15.1 109,-14c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_1_G_L_0_G"
+ android:translateX="46"
+ android:translateY="145">
+ <path
+ android:name="_R_G_L_0_G_L_1_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#80868b"
+ android:fillType="nonZero"
+ android:pathData=" M22 -14 C22,-14 22,14 22,14 C22,18.42 18.42,22 14,22 C14,22 -14,22 -14,22 C-18.42,22 -22,18.42 -22,14 C-22,14 -22,-14 -22,-14 C-22,-18.42 -18.42,-22 -14,-22 C-14,-22 14,-22 14,-22 C18.42,-22 22,-18.42 22,-14c " />
+ </group>
+ </group>
+ <group android:name="_R_G_L_0_G_L_0_G">
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_2_G"
+ android:translateX="206"
+ android:translateY="51">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#202124"
+ android:fillType="nonZero"
+ android:pathData=" M206 -0.27 C206,-0.27 206,49.73 206,49.73 C206,49.73 -206,49.73 -206,49.73 C-206,49.73 -206,-0.27 -206,-0.27 C-206,-0.27 206,-0.27 206,-0.27c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_1_G"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#202124"
+ android:fillType="nonZero"
+ android:pathData=" M206 -32.5 C206,-32.5 206,32.5 206,32.5 C206,42.43 197.93,50.5 188,50.5 C188,50.5 -188,50.5 -188,50.5 C-197.93,50.5 -206,42.43 -206,32.5 C-206,32.5 -206,-32.5 -206,-32.5 C-206,-42.43 -197.93,-50.5 -188,-50.5 C-188,-50.5 188,-50.5 188,-50.5 C197.93,-50.5 206,-42.43 206,-32.5c " />
+ </group>
+ <group
+ android:name="_R_G_L_0_G_L_0_G_L_0_G"
+ android:translateX="206"
+ android:translateY="66.5">
+ <path
+ android:name="_R_G_L_0_G_L_0_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#3c4043"
+ android:fillType="nonZero"
+ android:pathData=" M190 0 C190,0 190,0 190,0 C190,10.21 181.71,18.5 171.5,18.5 C171.5,18.5 -171.5,18.5 -171.5,18.5 C-181.71,18.5 -190,10.21 -190,0 C-190,0 -190,0 -190,0 C-190,-10.21 -181.71,-18.5 -171.5,-18.5 C-171.5,-18.5 171.5,-18.5 171.5,-18.5 C181.71,-18.5 190,-10.21 190,0c " />
+ </group>
+ </group>
+ </group>
+ </group>
+ <group android:name="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/drawable/sandbox_fake_google_search.xml b/quickstep/res/drawable/sandbox_fake_google_search.xml
deleted file mode 100644
index f06b927..0000000
--- a/quickstep/res/drawable/sandbox_fake_google_search.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="412dp"
- android:height="892dp"
- android:viewportWidth="412"
- android:viewportHeight="892">
- <group>
- <clip-path
- android:pathData="M24,0L388,0A24,24 0,0 1,412 24L412,868A24,24 0,0 1,388 892L24,892A24,24 0,0 1,0 868L0,24A24,24 0,0 1,24 0z"/>
- <path
- android:pathData="M24,0L388,0A24,24 0,0 1,412 24L412,868A24,24 0,0 1,388 892L24,892A24,24 0,0 1,0 868L0,24A24,24 0,0 1,24 0z"
- android:fillColor="#000000"/>
- <path
- android:pathData="M183,464L183,464A46,46 0,0 1,137 510L-81,510A46,46 0,0 1,-127 464L-127,464A46,46 0,0 1,-81 418L137,418A46,46 0,0 1,183 464z"
- android:strokeAlpha="0.6"
- android:fillColor="#EA4335"
- android:fillAlpha="0.3"/>
- <path
- android:pathData="M91,464C91,489.405 111.595,510 137,510C162.405,510 183,489.405 183,464C183,438.595 162.405,418 137,418C111.595,418 91,438.595 91,464Z"
- android:strokeAlpha="0.6"
- android:fillColor="#EA4335"
- android:fillAlpha="0.6"/>
- <path
- android:pathData="M100,464C100,484.435 116.565,501 137,501C157.434,501 174,484.435 174,464C174,443.565 157.434,427 137,427C116.565,427 100,443.565 100,464Z"
- android:fillColor="#EA4335"/>
- <path
- android:pathData="M24,0L388,0A24,24 0,0 1,412 24L412,868A24,24 0,0 1,388 892L24,892A24,24 0,0 1,0 868L0,24A24,24 0,0 1,24 0z"
- android:fillColor="#000000"/>
- <path
- android:pathData="M24,0L388,0A24,24 0,0 1,412 24L412,868A24,24 0,0 1,388 892L24,892A24,24 0,0 1,0 868L0,24A24,24 0,0 1,24 0z"
- android:fillColor="#000000"/>
- <path
- android:pathData="M0,101h412v791h-412z"
- android:fillColor="#F1F3F4"/>
- <path
- android:pathData="M0,0h412v101h-412z"
- android:fillColor="#202124"/>
- <path
- android:pathData="M34.5,48L377.5,48A18.5,18.5 0,0 1,396 66.5L396,66.5A18.5,18.5 0,0 1,377.5 85L34.5,85A18.5,18.5 0,0 1,16 66.5L16,66.5A18.5,18.5 0,0 1,34.5 48z"
- android:fillColor="#3C4043"/>
- <path
- android:pathData="M168,875L244,875A2,2 0,0 1,246 877L246,877A2,2 0,0 1,244 879L168,879A2,2 0,0 1,166 877L166,877A2,2 0,0 1,168 875z"
- android:fillColor="#373737"/>
- <path
- android:pathData="M57,355L355,355A25,25 0,0 1,380 380L380,380A25,25 0,0 1,355 405L57,405A25,25 0,0 1,32 380L32,380A25,25 0,0 1,57 355z"
- android:strokeWidth="4"
- android:fillColor="#DADCE0"
- android:strokeColor="#BDC1C6"/>
- <path
- android:pathData="M104,429L192,429A4,4 0,0 1,196 433L196,449A4,4 0,0 1,192 453L104,453A4,4 0,0 1,100 449L100,433A4,4 0,0 1,104 429z"
- android:fillColor="#DADCE0"/>
- <path
- android:pathData="M220,429L308,429A4,4 0,0 1,312 433L312,449A4,4 0,0 1,308 453L220,453A4,4 0,0 1,216 449L216,433A4,4 0,0 1,220 429z"
- android:fillColor="#DADCE0"/>
- <path
- android:pathData="M120,242L120,242A26,26 0,0 1,146 268L146,268A26,26 0,0 1,120 294L120,294A26,26 0,0 1,94 268L94,268A26,26 0,0 1,120 242z"
- android:fillColor="#4285F4"/>
- <path
- android:pathData="M243,261L243,261A17,17 0,0 1,260 278L260,294A17,17 0,0 1,243 311L243,311A17,17 0,0 1,226 294L226,278A17,17 0,0 1,243 261z"
- android:fillColor="#4285F4"/>
- <path
- android:pathData="M272,244L272,244A8,8 0,0 1,280 252L280,286A8,8 0,0 1,272 294L272,294A8,8 0,0 1,264 286L264,252A8,8 0,0 1,272 244z"
- android:fillColor="#34A853"/>
- <path
- android:pathData="M167,261L167,261A17,17 0,0 1,184 278L184,278A17,17 0,0 1,167 295L167,295A17,17 0,0 1,150 278L150,278A17,17 0,0 1,167 261z"
- android:fillColor="#E94235"/>
- <path
- android:pathData="M301,261L301,261A17,17 0,0 1,318 278L318,278A17,17 0,0 1,301 295L301,295A17,17 0,0 1,284 278L284,278A17,17 0,0 1,301 261z"
- android:fillColor="#E94235"/>
- <path
- android:pathData="M205,261L205,261A17,17 0,0 1,222 278L222,278A17,17 0,0 1,205 295L205,295A17,17 0,0 1,188 278L188,278A17,17 0,0 1,205 261z"
- android:fillColor="#FABB05"/>
- <path
- android:pathData="M34,128L50,128A4,4 0,0 1,54 132L54,148A4,4 0,0 1,50 152L34,152A4,4 0,0 1,30 148L30,132A4,4 0,0 1,34 128z"
- android:fillColor="#BDC1C6"/>
- <path
- android:pathData="M68,131L117,131A4,4 0,0 1,121 135L121,145A4,4 0,0 1,117 149L68,149A4,4 0,0 1,64 145L64,135A4,4 0,0 1,68 131z"
- android:fillColor="#BDC1C6"/>
- </group>
-</vector>
diff --git a/quickstep/res/layout/gesture_tutorial_fragment.xml b/quickstep/res/layout/gesture_tutorial_fragment.xml
index 700dd1f..5f82730 100644
--- a/quickstep/res/layout/gesture_tutorial_fragment.xml
+++ b/quickstep/res/layout/gesture_tutorial_fragment.xml
@@ -65,6 +65,17 @@
android:scaleType="fitXY"
android:visibility="gone"/>
+ <ImageView
+ android:id="@+id/gesture_tutorial_gesture_video"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_alignParentTop="true"
+ android:layout_alignParentBottom="true"
+ android:layout_alignParentStart="true"
+ android:layout_alignParentEnd="true"
+ android:scaleType="fitXY"
+ android:visibility="gone"/>
+
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/gesture_tutorial_fragment_feedback_view"
android:layout_width="match_parent"
diff --git a/quickstep/res/values-af/strings.xml b/quickstep/res/values-af/strings.xml
index 815ba04..0a82e04 100644
--- a/quickstep/res/values-af/strings.xml
+++ b/quickstep/res/values-af/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Probeer weer"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Mooi so!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutoriaal <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Gereed!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Swiep op om na die tuisskerm toe te gaan"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Jy is gereed om jou foon te begin gebruik"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Navigasie-instellings vir toeganklikheid"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Deel"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Skermkiekie"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Jou organisasie laat nie hierdie program toe nie"</string>
diff --git a/quickstep/res/values-am/strings.xml b/quickstep/res/values-am/strings.xml
index 5a3df9d..c74819e 100644
--- a/quickstep/res/values-am/strings.xml
+++ b/quickstep/res/values-am/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"እንደገና ሞክር"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"ጥሩ!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"አጋዥ ሥልጠና <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"አጋራ"</string>
<string name="action_screenshot" msgid="8171125848358142917">"ቅጽበታዊ ገጽ እይታ"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ይህ ድርጊት በመተግበሪያው ወይም በእርስዎ ድርጅት አይፈቀድም"</string>
diff --git a/quickstep/res/values-ar/strings.xml b/quickstep/res/values-ar/strings.xml
index 8205f89..cf4407e 100644
--- a/quickstep/res/values-ar/strings.xml
+++ b/quickstep/res/values-ar/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"إعادة المحاولة"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"أحسنت"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"الدليل التوجيهي <xliff:g id="CURRENT">%1$d</xliff:g> من إجمالي <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"مشاركة"</string>
<string name="action_screenshot" msgid="8171125848358142917">"لقطة شاشة"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"لا يسمح التطبيق أو لا تسمح مؤسستك بهذا الإجراء."</string>
diff --git a/quickstep/res/values-as/strings.xml b/quickstep/res/values-as/strings.xml
index 9b22c62..8c11cdd 100644
--- a/quickstep/res/values-as/strings.xml
+++ b/quickstep/res/values-as/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"পুনৰ চেষ্টা কৰক"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"সুন্দৰ!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"টিউট’ৰিয়েল <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"শ্বেয়াৰ কৰক"</string>
<string name="action_screenshot" msgid="8171125848358142917">"স্ক্ৰীনশ্বট"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"এপ্টোৱে অথবা আপোনাৰ প্ৰতিষ্ঠানে এই কাৰ্যটোৰ অনুমতি নিদিয়ে"</string>
diff --git a/quickstep/res/values-az/strings.xml b/quickstep/res/values-az/strings.xml
index bd88392..0d8e5b9 100644
--- a/quickstep/res/values-az/strings.xml
+++ b/quickstep/res/values-az/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Yenə sınayın"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Əla!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Dərslik <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Paylaşın"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Ekran şəkli"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Bu əməliyyata tətbiq və ya təşkilatınız tərəfindən icazə verilmir"</string>
diff --git a/quickstep/res/values-b+sr+Latn/strings.xml b/quickstep/res/values-b+sr+Latn/strings.xml
index 21295fc..8f3a555 100644
--- a/quickstep/res/values-b+sr+Latn/strings.xml
+++ b/quickstep/res/values-b+sr+Latn/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Probajte ponovo"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Svaka čast!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Vodič <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Deli"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Snimak ekrana"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Aplikacija ili organizacija ne dozvoljavaju ovu radnju"</string>
diff --git a/quickstep/res/values-be/strings.xml b/quickstep/res/values-be/strings.xml
index d31468c..0473b5f 100644
--- a/quickstep/res/values-be/strings.xml
+++ b/quickstep/res/values-be/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Паўтарыць спробу"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Выдатна!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Дапаможнік <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Абагуліць"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Здымак экрана"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Гэта дзеянне не дазволена праграмай ці вашай арганізацыяй"</string>
diff --git a/quickstep/res/values-bg/strings.xml b/quickstep/res/values-bg/strings.xml
index d2554d5..f7845e3 100644
--- a/quickstep/res/values-bg/strings.xml
+++ b/quickstep/res/values-bg/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Опитайте отново"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Чудесно!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Урок <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Споделяне"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Екранна снимка"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Това действие не е разрешено от приложението или организацията ви"</string>
diff --git a/quickstep/res/values-bn/strings.xml b/quickstep/res/values-bn/strings.xml
index 48d2690..c99f9b0 100644
--- a/quickstep/res/values-bn/strings.xml
+++ b/quickstep/res/values-bn/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"আবার চেষ্টা করুন"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"সাবাস!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"টিউটোরিয়াল <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"শেয়ার করুন"</string>
<string name="action_screenshot" msgid="8171125848358142917">"স্ক্রিনশট নিন"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"এই অ্যাপ বা আপনার প্রতিষ্ঠান এই অ্যাকশনটি পারফর্ম করার অনুমতি দেয়নি"</string>
diff --git a/quickstep/res/values-bs/strings.xml b/quickstep/res/values-bs/strings.xml
index 18494a9..15979c1 100644
--- a/quickstep/res/values-bs/strings.xml
+++ b/quickstep/res/values-bs/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Pokušaj ponovo"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Lijepo!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Vodič <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Dijeli"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Snimak ekrana"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Ovu radnju ne dozvoljava aplikacija ili vaša organizacija"</string>
diff --git a/quickstep/res/values-ca/strings.xml b/quickstep/res/values-ca/strings.xml
index 7c417ef..795f2e4 100644
--- a/quickstep/res/values-ca/strings.xml
+++ b/quickstep/res/values-ca/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Torna-ho a provar"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Molt bé!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Comparteix"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Captura de pantalla"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"L\'aplicació o la teva organització no permeten aquesta acció"</string>
diff --git a/quickstep/res/values-cs/strings.xml b/quickstep/res/values-cs/strings.xml
index 9d1b94e..b2e222f 100644
--- a/quickstep/res/values-cs/strings.xml
+++ b/quickstep/res/values-cs/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Zkusit znovu"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Skvělé!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Výukový program <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Sdílet"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Snímek obrazovky"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Aplikace nebo organizace zakazuje tuto akci"</string>
diff --git a/quickstep/res/values-da/strings.xml b/quickstep/res/values-da/strings.xml
index 42098dc..f4519b8 100644
--- a/quickstep/res/values-da/strings.xml
+++ b/quickstep/res/values-da/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Prøv igen"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Sådan!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Selvstudie <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Alt er parat!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Stryg opad for at gå til startsiden"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Du er klar til at bruge din telefon"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Navigationsindstillinger for hjælpefunktioner"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Del"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Appen eller din organisation tillader ikke denne handling"</string>
diff --git a/quickstep/res/values-de/strings.xml b/quickstep/res/values-de/strings.xml
index e7d9523..3e63458 100644
--- a/quickstep/res/values-de/strings.xml
+++ b/quickstep/res/values-de/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Wiederholen"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Sehr gut!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Anleitung <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Teilen"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Die App oder deine Organisation lässt diese Aktion nicht zu"</string>
diff --git a/quickstep/res/values-el/strings.xml b/quickstep/res/values-el/strings.xml
index 21c2984..0eb9098 100644
--- a/quickstep/res/values-el/strings.xml
+++ b/quickstep/res/values-el/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Δοκιμάστε ξανά"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Ωραία!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Οδηγός <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Κοινοποίηση"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Στιγμιότυπο οθόνης"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Αυτή η ενέργεια δεν επιτρέπεται από την εφαρμογή ή τον οργανισμό σας."</string>
diff --git a/quickstep/res/values-en-rAU/strings.xml b/quickstep/res/values-en-rAU/strings.xml
index 487d6cc..5aae288 100644
--- a/quickstep/res/values-en-rAU/strings.xml
+++ b/quickstep/res/values-en-rAU/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Try again"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Nice!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Ready!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Swipe up to go home"</string>
+ <string name="allset_description" msgid="6350320429953234580">"You’re ready to start using your phone"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Navigation settings for accessibility"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Share"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"This action isn\'t allowed by the app or your organisation"</string>
diff --git a/quickstep/res/values-en-rCA/strings.xml b/quickstep/res/values-en-rCA/strings.xml
index 487d6cc..5aae288 100644
--- a/quickstep/res/values-en-rCA/strings.xml
+++ b/quickstep/res/values-en-rCA/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Try again"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Nice!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Ready!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Swipe up to go home"</string>
+ <string name="allset_description" msgid="6350320429953234580">"You’re ready to start using your phone"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Navigation settings for accessibility"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Share"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"This action isn\'t allowed by the app or your organisation"</string>
diff --git a/quickstep/res/values-en-rGB/strings.xml b/quickstep/res/values-en-rGB/strings.xml
index 487d6cc..5aae288 100644
--- a/quickstep/res/values-en-rGB/strings.xml
+++ b/quickstep/res/values-en-rGB/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Try again"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Nice!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Ready!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Swipe up to go home"</string>
+ <string name="allset_description" msgid="6350320429953234580">"You’re ready to start using your phone"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Navigation settings for accessibility"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Share"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"This action isn\'t allowed by the app or your organisation"</string>
diff --git a/quickstep/res/values-en-rIN/strings.xml b/quickstep/res/values-en-rIN/strings.xml
index 487d6cc..5aae288 100644
--- a/quickstep/res/values-en-rIN/strings.xml
+++ b/quickstep/res/values-en-rIN/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Try again"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Nice!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Ready!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Swipe up to go home"</string>
+ <string name="allset_description" msgid="6350320429953234580">"You’re ready to start using your phone"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Navigation settings for accessibility"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Share"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"This action isn\'t allowed by the app or your organisation"</string>
diff --git a/quickstep/res/values-en-rXC/strings.xml b/quickstep/res/values-en-rXC/strings.xml
index 36df9d1..4d10fd5 100644
--- a/quickstep/res/values-en-rXC/strings.xml
+++ b/quickstep/res/values-en-rXC/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Try again"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Nice!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"All set!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Swipe up to go home"</string>
+ <string name="allset_description" msgid="6350320429953234580">"You’re ready to start using your phone"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071">""<annotation id="link">"Navigation settings for accessibility"</annotation>""</string>
<string name="action_share" msgid="2648470652637092375">"Share"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"This action isn\'t allowed by the app or your organization"</string>
diff --git a/quickstep/res/values-es-rUS/strings.xml b/quickstep/res/values-es-rUS/strings.xml
index 478d1cd..10f4479 100644
--- a/quickstep/res/values-es-rUS/strings.xml
+++ b/quickstep/res/values-es-rUS/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Reintentar"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"¡Genial!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Instructivo <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Todo listo"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Desliza el dedo hacia arriba para ir a la página principal"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Ya puedes empezar a usar tu teléfono"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Configuración de la navegación para accesibilidad"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Compartir"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Captura de pantalla"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"La app o tu organización no permiten realizar esta acción"</string>
diff --git a/quickstep/res/values-es/strings.xml b/quickstep/res/values-es/strings.xml
index 454bea7..46bd267 100644
--- a/quickstep/res/values-es/strings.xml
+++ b/quickstep/res/values-es/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Reintentar"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"¡Muy bien!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Compartir"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Hacer captura"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"No puedes hacerlo porque la aplicación o tu organización no lo permiten"</string>
diff --git a/quickstep/res/values-et/strings.xml b/quickstep/res/values-et/strings.xml
index b729934..b059585 100644
--- a/quickstep/res/values-et/strings.xml
+++ b/quickstep/res/values-et/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Proovige uuesti"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Tubli töö!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Õpetus <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Jaga"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Ekraanipilt"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Rakendus või teie organisatsioon on selle toimingu keelanud"</string>
diff --git a/quickstep/res/values-eu/strings.xml b/quickstep/res/values-eu/strings.xml
index f6d3f23..10232a4 100644
--- a/quickstep/res/values-eu/strings.xml
+++ b/quickstep/res/values-eu/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Saiatu berriro"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Ederki!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutoriala: <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Partekatu"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Atera pantaila-argazki bat"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Aplikazioak edo erakundeak ez du eman ekintza hori gauzatzeko baimena"</string>
diff --git a/quickstep/res/values-fa/strings.xml b/quickstep/res/values-fa/strings.xml
index 8ca0f95..bd8f3b8 100644
--- a/quickstep/res/values-fa/strings.xml
+++ b/quickstep/res/values-fa/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"امتحان مجدد"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"عالی!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"آموزش گامبهگام <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"همه چیز آماده است!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"برای رفتن به صفحه اصلی، تند بهبالا بکشید"</string>
+ <string name="allset_description" msgid="6350320429953234580">"آمادهاید از تلفنتان استفاده کنید"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"تنظیمات پیمایش برای دسترسپذیری"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"همرسانی"</string>
<string name="action_screenshot" msgid="8171125848358142917">"نماگرفت"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"برنامه یا سازمان شما اجازه نمیدهد این کنش انجام شود."</string>
diff --git a/quickstep/res/values-fi/strings.xml b/quickstep/res/values-fi/strings.xml
index 9ce7e6b..d75d7a3 100644
--- a/quickstep/res/values-fi/strings.xml
+++ b/quickstep/res/values-fi/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Yritä uudelleen"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Hienoa!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Ohje <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Jaa"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Kuvakaappaus"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Sovellus tai organisaatio ei salli tätä toimintoa"</string>
diff --git a/quickstep/res/values-fr-rCA/strings.xml b/quickstep/res/values-fr-rCA/strings.xml
index da73849..59ef61a 100644
--- a/quickstep/res/values-fr-rCA/strings.xml
+++ b/quickstep/res/values-fr-rCA/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Réessayer"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Bien!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Étape <xliff:g id="CURRENT">%1$d</xliff:g> sur <xliff:g id="TOTAL">%2$d</xliff:g> du tutoriel"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Partager"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Capture d\'écran"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"L\'application ou votre organisation n\'autorise pas cette action"</string>
diff --git a/quickstep/res/values-fr/strings.xml b/quickstep/res/values-fr/strings.xml
index b6abea7..394b7cd 100644
--- a/quickstep/res/values-fr/strings.xml
+++ b/quickstep/res/values-fr/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Réessayez"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Bravo !"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutoriel <xliff:g id="CURRENT">%1$d</xliff:g> sur <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Partager"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Capture d\'écran"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Cette action n\'est pas autorisée par l\'application ou par votre organisation"</string>
diff --git a/quickstep/res/values-gl/strings.xml b/quickstep/res/values-gl/strings.xml
index 9310d71..f7e3058 100644
--- a/quickstep/res/values-gl/strings.xml
+++ b/quickstep/res/values-gl/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Téntao de novo"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Excelente!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Titorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Compartir"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Facer captura"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"A aplicación ou a túa organización non permite realizar esta acción"</string>
diff --git a/quickstep/res/values-gu/strings.xml b/quickstep/res/values-gu/strings.xml
index 496d33b..62aa28e 100644
--- a/quickstep/res/values-gu/strings.xml
+++ b/quickstep/res/values-gu/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"ફરી પ્રયાસ કરો"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"સરસ!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ટ્યૂટૉરિઅલ <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"શેર કરો"</string>
<string name="action_screenshot" msgid="8171125848358142917">"સ્ક્રીનશૉટ"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ઍપ કે તમારી સંસ્થા દ્વારા આ ક્રિયા કરવાની મંજૂરી નથી"</string>
diff --git a/quickstep/res/values-hi/strings.xml b/quickstep/res/values-hi/strings.xml
index a7711fe..a39faf0 100644
--- a/quickstep/res/values-hi/strings.xml
+++ b/quickstep/res/values-hi/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"फिर से कोशिश करें"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"बहुत बढ़िया!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ट्यूटोरियल <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"शेयर करें"</string>
<string name="action_screenshot" msgid="8171125848358142917">"स्क्रीनशॉट"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ऐप्लिकेशन या आपका संगठन इस कार्रवाई की अनुमति नहीं देता"</string>
diff --git a/quickstep/res/values-hr/strings.xml b/quickstep/res/values-hr/strings.xml
index d5e4b9d..e3e62bd 100644
--- a/quickstep/res/values-hr/strings.xml
+++ b/quickstep/res/values-hr/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Pokušajte ponovo"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Odlično!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Vodič <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Podijeli"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Snimka zaslona"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Aplikacija ili vaša organizacija ne dopuštaju ovu radnju"</string>
diff --git a/quickstep/res/values-hu/strings.xml b/quickstep/res/values-hu/strings.xml
index 386ef3e..49c0c1b 100644
--- a/quickstep/res/values-hu/strings.xml
+++ b/quickstep/res/values-hu/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Újra"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Remek!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Útmutató (<xliff:g id="TOTAL">%2$d</xliff:g>/<xliff:g id="CURRENT">%1$d</xliff:g>.)"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Megosztás"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Képernyőkép"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Az alkalmazás vagy az Ön szervezete nem engedélyezi ezt a műveletet"</string>
diff --git a/quickstep/res/values-hy/strings.xml b/quickstep/res/values-hy/strings.xml
index 3ff9d0d..9b25392 100644
--- a/quickstep/res/values-hy/strings.xml
+++ b/quickstep/res/values-hy/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Նորից փորձեք"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Գերազանց է"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Ուղեցույց <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Կիսվել"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Սքրինշոթ անել"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Այս գործողությունն արգելված է հավելվածի կամ ձեր կազմակերպության կողմից"</string>
diff --git a/quickstep/res/values-in/strings.xml b/quickstep/res/values-in/strings.xml
index 941bdb7..dc105b5 100644
--- a/quickstep/res/values-in/strings.xml
+++ b/quickstep/res/values-in/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Coba lagi"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Bagus!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Bagikan"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Tindakan ini tidak diizinkan oleh aplikasi atau organisasi Anda"</string>
diff --git a/quickstep/res/values-is/strings.xml b/quickstep/res/values-is/strings.xml
index 6042b47..eb5fc95 100644
--- a/quickstep/res/values-is/strings.xml
+++ b/quickstep/res/values-is/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Reyna aftur"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Flott!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Leiðsögn <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Deila"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Skjámynd"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Forritið eða fyrirtækið leyfir ekki þessa aðgerð"</string>
diff --git a/quickstep/res/values-it/strings.xml b/quickstep/res/values-it/strings.xml
index 6c81d17..a17c188 100644
--- a/quickstep/res/values-it/strings.xml
+++ b/quickstep/res/values-it/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Riprova"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Bene!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Condividi"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Questa azione non è consentita dall\'app o dall\'organizzazione"</string>
diff --git a/quickstep/res/values-iw/strings.xml b/quickstep/res/values-iw/strings.xml
index b77faeb..da2e79a 100644
--- a/quickstep/res/values-iw/strings.xml
+++ b/quickstep/res/values-iw/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"אפשר לנסות שוב"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"איזה יופי!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"מדריך <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"שיתוף"</string>
<string name="action_screenshot" msgid="8171125848358142917">"צילום מסך"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"האפליקציה או הארגון שלך אינם מתירים את הפעולה הזאת"</string>
diff --git a/quickstep/res/values-ja/strings.xml b/quickstep/res/values-ja/strings.xml
index 1cbdf73..960b839 100644
--- a/quickstep/res/values-ja/strings.xml
+++ b/quickstep/res/values-ja/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"再試行"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"成功"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"チュートリアル <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"共有"</string>
<string name="action_screenshot" msgid="8171125848358142917">"スクリーンショット"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"この操作はアプリまたは組織で許可されていません"</string>
diff --git a/quickstep/res/values-ka/strings.xml b/quickstep/res/values-ka/strings.xml
index 5dd818d..8b3b95c 100644
--- a/quickstep/res/values-ka/strings.xml
+++ b/quickstep/res/values-ka/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"ხელახლა ცდა"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"მშვენიერია!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"სახელმძღვანელო <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"გაზიარება"</string>
<string name="action_screenshot" msgid="8171125848358142917">"ეკრანის ანაბეჭდი"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ეს მოქმედება არ არის დაშვებული აპის ან თქვენი ორგანიზაციის მიერ"</string>
diff --git a/quickstep/res/values-kk/strings.xml b/quickstep/res/values-kk/strings.xml
index 554d10d..45618e0 100644
--- a/quickstep/res/values-kk/strings.xml
+++ b/quickstep/res/values-kk/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Қайталау"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Жақсы!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Оқулық: <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Бөлісу"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Скриншот"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Бұл әрекетке қолданба не ұйым рұқсат етпейді."</string>
diff --git a/quickstep/res/values-km/strings.xml b/quickstep/res/values-km/strings.xml
index 62858ba..9e12034 100644
--- a/quickstep/res/values-km/strings.xml
+++ b/quickstep/res/values-km/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"ព្យាយាមម្ដងទៀត"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"ល្អ!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"មេរៀនទី <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"ចែករំលែក"</string>
<string name="action_screenshot" msgid="8171125848358142917">"រូបថតអេក្រង់"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"សកម្មភាពនេះមិនត្រូវបានអនុញ្ញាតដោយកម្មវិធី ឬស្ថាប័នរបស់អ្នកទេ"</string>
diff --git a/quickstep/res/values-kn/strings.xml b/quickstep/res/values-kn/strings.xml
index 8fdba69..3cf37b4 100644
--- a/quickstep/res/values-kn/strings.xml
+++ b/quickstep/res/values-kn/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"ಪುನಃ ಪ್ರಯತ್ನಿಸಿ"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"ಚೆನ್ನಾಗಿದೆ!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ಟ್ಯುಟೋರಿಯಲ್ <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"ಎಲ್ಲವೂ ಸಿದ್ಧವಾಗಿದೆ!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"ಮುಖಪುಟಕ್ಕೆ ಹೋಗಲು ಮೇಲೆ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
+ <string name="allset_description" msgid="6350320429953234580">"ನಿಮ್ಮ ಫೋನ್ ಬಳಸುವುದನ್ನು ಪ್ರಾರಂಭಿಸಲು ನೀವು ಸಿದ್ದರಾಗಿರುವಿರಿ"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"ಅಕ್ಸೆಸಿಬಿಲಿಟಿಗಾಗಿ ನ್ಯಾವಿಗೇಶನ್ ಸೆಟ್ಟಿಂಗ್ಗಳು"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"ಹಂಚಿಕೊಳ್ಳಿ"</string>
<string name="action_screenshot" msgid="8171125848358142917">"ಸ್ಕ್ರೀನ್ಶಾಟ್"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ಆ್ಯಪ್ ಅಥವಾ ನಿಮ್ಮ ಸಂಸ್ಥೆಯು ಈ ಕ್ರಿಯೆಯನ್ನು ಅನುಮತಿಸುವುದಿಲ್ಲ"</string>
diff --git a/quickstep/res/values-ko/strings.xml b/quickstep/res/values-ko/strings.xml
index fbbddd6..63f2d96 100644
--- a/quickstep/res/values-ko/strings.xml
+++ b/quickstep/res/values-ko/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"다시 시도"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"잘하셨습니다"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"튜토리얼 <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"공유"</string>
<string name="action_screenshot" msgid="8171125848358142917">"스크린샷"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"이 작업은 앱 또는 조직에서 허용되지 않습니다."</string>
diff --git a/quickstep/res/values-ky/strings.xml b/quickstep/res/values-ky/strings.xml
index bd50eed..5d2d7e0 100644
--- a/quickstep/res/values-ky/strings.xml
+++ b/quickstep/res/values-ky/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Кайра аракет кылыңыз"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Сонун!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Үйрөткүч: <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Бөлүшүү"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Скриншот"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Бул аракетти аткарууга колдонмо же ишканаңыз тыюу салган"</string>
diff --git a/quickstep/res/values-lo/strings.xml b/quickstep/res/values-lo/strings.xml
index e05b18e..ee09438 100644
--- a/quickstep/res/values-lo/strings.xml
+++ b/quickstep/res/values-lo/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"ລອງໃໝ່"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"ດີ!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ການສອນການນຳໃຊ້ທີ <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"ແບ່ງປັນ"</string>
<string name="action_screenshot" msgid="8171125848358142917">"ຮູບໜ້າຈໍ"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ແອັບ ຫຼື ອົງການຂອງທ່ານບໍ່ອະນຸຍາດໃຫ້ໃຊ້ຄຳສັ່ງນີ້"</string>
diff --git a/quickstep/res/values-lt/strings.xml b/quickstep/res/values-lt/strings.xml
index 2f1db50..d2f217f 100644
--- a/quickstep/res/values-lt/strings.xml
+++ b/quickstep/res/values-lt/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Bandykite dar kartą"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Šaunu!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Mokymo programa: <xliff:g id="CURRENT">%1$d</xliff:g> iš <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Bendrinti"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Ekrano kopija"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Jūsų organizacijoje arba naudojant šią programą neleidžiama atlikti šio veiksmo"</string>
diff --git a/quickstep/res/values-lv/strings.xml b/quickstep/res/values-lv/strings.xml
index ce941bc..702e97a 100644
--- a/quickstep/res/values-lv/strings.xml
+++ b/quickstep/res/values-lv/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Mēģināt vēlreiz"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Lieliski!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"<xliff:g id="CURRENT">%1$d</xliff:g>. mācību darbība no <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Kopīgot"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Veikt ekrānuzņēmumu"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Lietotne vai jūsu organizācija neatļauj veikt šo darbību."</string>
diff --git a/quickstep/res/values-mk/strings.xml b/quickstep/res/values-mk/strings.xml
index f9fd8b3..2da1cec 100644
--- a/quickstep/res/values-mk/strings.xml
+++ b/quickstep/res/values-mk/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Обиди се пак"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Одлично!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Упатство <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Сподели"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Слика од екранот"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Апликацијата или вашата организација не го дозволува дејствово"</string>
diff --git a/quickstep/res/values-ml/strings.xml b/quickstep/res/values-ml/strings.xml
index fc6bc82..ebd804a 100644
--- a/quickstep/res/values-ml/strings.xml
+++ b/quickstep/res/values-ml/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"വീണ്ടും ശ്രമിക്കുക"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"കൊള്ളാം!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ട്യൂട്ടോറിയൽ <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"പങ്കിടുക"</string>
<string name="action_screenshot" msgid="8171125848358142917">"സ്ക്രീൻഷോട്ട്"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ഈ നടപടി എടുക്കുന്നത് ആപ്പോ നിങ്ങളുടെ സ്ഥാപനമോ അനുവദിക്കുന്നില്ല"</string>
diff --git a/quickstep/res/values-mn/strings.xml b/quickstep/res/values-mn/strings.xml
index 48513eb..f7fb0f8 100644
--- a/quickstep/res/values-mn/strings.xml
+++ b/quickstep/res/values-mn/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Дахин оролдох"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Янзтай!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"<xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g> практик хичээл"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Хуваалцах"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Дэлгэцийн агшин дарах"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Энэ үйлдлийг апп эсвэл танай байгууллага зөвшөөрдөггүй"</string>
diff --git a/quickstep/res/values-mr/strings.xml b/quickstep/res/values-mr/strings.xml
index c576cf1..bac7f78 100644
--- a/quickstep/res/values-mr/strings.xml
+++ b/quickstep/res/values-mr/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"पुन्हा प्रयत्न करा"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"छान!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ट्युटोरियल <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"शेअर करा"</string>
<string name="action_screenshot" msgid="8171125848358142917">"स्क्रीनशॉट"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"अॅप किंवा तुमच्या संस्थेद्वारे ही क्रिया करण्याची अनुमती नाही"</string>
diff --git a/quickstep/res/values-ms/strings.xml b/quickstep/res/values-ms/strings.xml
index 74b9d08..d80e6b3 100644
--- a/quickstep/res/values-ms/strings.xml
+++ b/quickstep/res/values-ms/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Cuba lagi"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Bagus!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Siap!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Leret ke atas untuk mencapai laman utama"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Anda sudah sedia untuk mula menggunakan telefon anda"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Tetapan navigasi untuk kebolehaksesan"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Kongsi"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Tangkapan skrin"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Tindakan ini tidak dibenarkan oleh apl atau organisasi anda"</string>
diff --git a/quickstep/res/values-my/strings.xml b/quickstep/res/values-my/strings.xml
index 919ad6e..d61f800 100644
--- a/quickstep/res/values-my/strings.xml
+++ b/quickstep/res/values-my/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"ထပ်စမ်းကြည့်ရန်"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"ကောင်းသည်။"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ရှင်းလင်းပို့ချချက် <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"မျှဝေရန်"</string>
<string name="action_screenshot" msgid="8171125848358142917">"ဖန်သားပြင်ဓာတ်ပုံ"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ဤလုပ်ဆောင်ချက်ကို အက်ပ် သို့မဟုတ် သင်၏အဖွဲ့အစည်းက ခွင့်မပြုပါ"</string>
diff --git a/quickstep/res/values-nb/strings.xml b/quickstep/res/values-nb/strings.xml
index 6e7e4a3..e725ebe 100644
--- a/quickstep/res/values-nb/strings.xml
+++ b/quickstep/res/values-nb/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Prøv igjen"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Bra!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Veiledning <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Del"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Skjermdump"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Appen eller organisasjonen din tillater ikke denne handlingen"</string>
diff --git a/quickstep/res/values-ne/strings.xml b/quickstep/res/values-ne/strings.xml
index f3b1151..369649a 100644
--- a/quickstep/res/values-ne/strings.xml
+++ b/quickstep/res/values-ne/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"फेरि प्रयास गर्नुहोस्"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"राम्रो!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ट्युटोरियल <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"सेयर गर्नुहोस्"</string>
<string name="action_screenshot" msgid="8171125848358142917">"स्क्रिनसट"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"यो एप वा तपाईंको सङ्गठनले यो कारबाही गर्ने अनुमति दिँदैन"</string>
diff --git a/quickstep/res/values-nl/strings.xml b/quickstep/res/values-nl/strings.xml
index be9329f..ebf8485 100644
--- a/quickstep/res/values-nl/strings.xml
+++ b/quickstep/res/values-nl/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Opnieuw"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Dat gaat lekker."</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Klaar!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Swipe omhoog om naar het startscherm te gaan"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Je bent klaar om je telefoon te gebruiken"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Navigatie-instellingen voor toegankelijkheid"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Delen"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Deze actie wordt niet toegestaan door de app of je organisatie"</string>
diff --git a/quickstep/res/values-or/strings.xml b/quickstep/res/values-or/strings.xml
index 8c36972..9cbbd35 100644
--- a/quickstep/res/values-or/strings.xml
+++ b/quickstep/res/values-or/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"ପୁଣି ଚେଷ୍ଟା କରନ୍ତୁ"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"ବଢ଼ିଆ!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ଟ୍ୟୁଟୋରିଆଲ୍ <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"ସେୟାର୍ କରନ୍ତୁ"</string>
<string name="action_screenshot" msgid="8171125848358142917">"ସ୍କ୍ରିନସଟ୍"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ଆପ୍ କିମ୍ବା ଆପଣଙ୍କ ସଂସ୍ଥା ଦ୍ୱାରା ଏହି କାର୍ଯ୍ୟକୁ ଅନୁମତି ଦିଆଯାଇ ନାହିଁ"</string>
diff --git a/quickstep/res/values-pa/strings.xml b/quickstep/res/values-pa/strings.xml
index 227c060..56b66c7 100644
--- a/quickstep/res/values-pa/strings.xml
+++ b/quickstep/res/values-pa/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"ਵਧੀਆ!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ਟਿਊਟੋਰੀਅਲ <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"ਸਾਂਝਾ ਕਰੋ"</string>
<string name="action_screenshot" msgid="8171125848358142917">"ਸਕ੍ਰੀਨਸ਼ਾਟ"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ਐਪ ਜਾਂ ਤੁਹਾਡੀ ਸੰਸਥਾ ਵੱਲੋਂ ਇਸ ਕਾਰਵਾਈ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ"</string>
diff --git a/quickstep/res/values-pl/strings.xml b/quickstep/res/values-pl/strings.xml
index 61d9b93..e01dc08 100644
--- a/quickstep/res/values-pl/strings.xml
+++ b/quickstep/res/values-pl/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Spróbuj ponownie"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Super!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Samouczek <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Wszystko gotowe"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Aby przejść na stronę główną, przesuń w górę"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Teraz możesz zacząć używać telefonu"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Ustawienia nawigacji na potrzeby ułatwień dostępu"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Udostępnij"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Zrzut ekranu"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Nie możesz wykonać tego działania, bo nie zezwala na to aplikacja lub Twoja organizacja"</string>
diff --git a/quickstep/res/values-pt-rPT/strings.xml b/quickstep/res/values-pt-rPT/strings.xml
index 0feead7..5fd560a 100644
--- a/quickstep/res/values-pt-rPT/strings.xml
+++ b/quickstep/res/values-pt-rPT/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Tente novamente"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Boa!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Partilhar"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Fazer captura de ecrã"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Esta ação não é permitida pela app ou a sua entidade."</string>
diff --git a/quickstep/res/values-pt/strings.xml b/quickstep/res/values-pt/strings.xml
index f533bbc..704afb6 100644
--- a/quickstep/res/values-pt/strings.xml
+++ b/quickstep/res/values-pt/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Tentar novamente"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Muito bem!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Tudo pronto!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Deslize para cima para acessar a tela inicial"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Você já pode começar a usar seu smartphone"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Configurações de navegação para acessibilidade"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Compartilhar"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Capturar tela"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Essa ação não é permitida pelo app ou pela organização"</string>
diff --git a/quickstep/res/values-ro/strings.xml b/quickstep/res/values-ro/strings.xml
index 37d2935..ae781fe 100644
--- a/quickstep/res/values-ro/strings.xml
+++ b/quickstep/res/values-ro/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Reîncercați"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Bravo!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorialul <xliff:g id="CURRENT">%1$d</xliff:g> / <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Distribuiți"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Captură de ecran"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Această acțiune nu este permisă de aplicație sau de organizația dvs."</string>
diff --git a/quickstep/res/values-ru/strings.xml b/quickstep/res/values-ru/strings.xml
index 8d4c40a..608ebd4 100644
--- a/quickstep/res/values-ru/strings.xml
+++ b/quickstep/res/values-ru/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Повторите попытку"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Поздравляем!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Руководство (шаг <xliff:g id="CURRENT">%1$d</xliff:g> из <xliff:g id="TOTAL">%2$d</xliff:g>)"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Поделиться"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Скриншот"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Это действие заблокировано приложением или организацией."</string>
diff --git a/quickstep/res/values-si/strings.xml b/quickstep/res/values-si/strings.xml
index d526e13..64cf9cc 100644
--- a/quickstep/res/values-si/strings.xml
+++ b/quickstep/res/values-si/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"නැවත උත්සාහ කරන්න"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"කදිමයි!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"නිබන්ධනය <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"බෙදා ගන්න"</string>
<string name="action_screenshot" msgid="8171125848358142917">"තිර රුව"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"මෙම ක්රියාව යෙදුම හෝ ඔබේ සංවිධානය මගින් ඉඩ නොදේ"</string>
diff --git a/quickstep/res/values-sk/strings.xml b/quickstep/res/values-sk/strings.xml
index 24a4ac9..56f0616 100644
--- a/quickstep/res/values-sk/strings.xml
+++ b/quickstep/res/values-sk/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Skúste to znova"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Výborne!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Návod <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Hotovo"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Potiahnutím nahor prejdete na plochu"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Telefón môžete začať používať"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Nastavenia navigácie pre dostupnosť"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Zdieľať"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Snímka obrazovky"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Aplikácia alebo vaša organizácia túto akciu nepovoľuje"</string>
diff --git a/quickstep/res/values-sl/strings.xml b/quickstep/res/values-sl/strings.xml
index fdc8a6a..55a0fba 100644
--- a/quickstep/res/values-sl/strings.xml
+++ b/quickstep/res/values-sl/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Poskusite znova"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Odlično!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Vadnica <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Deli"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Posnetek zaslona"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Aplikacija ali vaša organizacija ne dovoljuje tega dejanja"</string>
diff --git a/quickstep/res/values-sq/strings.xml b/quickstep/res/values-sq/strings.xml
index 36e0afc..73d983b 100644
--- a/quickstep/res/values-sq/strings.xml
+++ b/quickstep/res/values-sq/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Provo përsëri"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Bukur!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Udhëzuesi <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Ndaj"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Pamja e ekranit"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Ky veprim nuk lejohet nga aplikacioni ose organizata jote"</string>
diff --git a/quickstep/res/values-sr/strings.xml b/quickstep/res/values-sr/strings.xml
index 8a462f9..900950f 100644
--- a/quickstep/res/values-sr/strings.xml
+++ b/quickstep/res/values-sr/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Пробајте поново"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Свака част!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Водич <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Дели"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Снимак екрана"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Апликација или организација не дозвољавају ову радњу"</string>
diff --git a/quickstep/res/values-sv/strings.xml b/quickstep/res/values-sv/strings.xml
index bf69850..ce256db 100644
--- a/quickstep/res/values-sv/strings.xml
+++ b/quickstep/res/values-sv/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Försök igen"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Bra!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Självstudie <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Dela"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Skärmbild"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Appen eller organisationen tillåter inte den här åtgärden"</string>
diff --git a/quickstep/res/values-sw/strings.xml b/quickstep/res/values-sw/strings.xml
index b761cae..92b7839 100644
--- a/quickstep/res/values-sw/strings.xml
+++ b/quickstep/res/values-sw/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Jaribu tena"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Safi!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Mafunzo ya <xliff:g id="CURRENT">%1$d</xliff:g> kati ya <xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Shiriki"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Picha ya skrini"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Kitendo hiki hakiruhusiwi na programu au shirika lako"</string>
diff --git a/quickstep/res/values-ta/strings.xml b/quickstep/res/values-ta/strings.xml
index 089c95d..cd8e3a3 100644
--- a/quickstep/res/values-ta/strings.xml
+++ b/quickstep/res/values-ta/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"மீண்டும் முயல்க"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"அருமை!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"பயிற்சி <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"பகிர்"</string>
<string name="action_screenshot" msgid="8171125848358142917">"ஸ்கிரீன்ஷாட்"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ஆப்ஸோ உங்கள் நிறுவனமோ இந்த செயலை அனுமதிப்பதில்லை"</string>
diff --git a/quickstep/res/values-te/strings.xml b/quickstep/res/values-te/strings.xml
index c73c83e..5e8230c 100644
--- a/quickstep/res/values-te/strings.xml
+++ b/quickstep/res/values-te/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"మళ్లీ ట్రై చేయండి"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"పనితీరు బాగుంది!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ట్యుటోరియల్ <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"షేర్ చేయండి"</string>
<string name="action_screenshot" msgid="8171125848358142917">"స్క్రీన్షాట్"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ఈ చర్యను యాప్ గానీ, మీ సంస్థ గానీ అనుమతించవు"</string>
diff --git a/quickstep/res/values-th/strings.xml b/quickstep/res/values-th/strings.xml
index d706108..ec7c652 100644
--- a/quickstep/res/values-th/strings.xml
+++ b/quickstep/res/values-th/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"ลองอีกครั้ง"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"ดีมาก"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"บทแนะนำ <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"แชร์"</string>
<string name="action_screenshot" msgid="8171125848358142917">"ภาพหน้าจอ"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"แอปหรือองค์กรของคุณไม่อนุญาตการดำเนินการนี้"</string>
diff --git a/quickstep/res/values-tl/strings.xml b/quickstep/res/values-tl/strings.xml
index 5056481..f973042 100644
--- a/quickstep/res/values-tl/strings.xml
+++ b/quickstep/res/values-tl/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Subukan ulit"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Magaling!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Tutorial <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Ibahagi"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Screenshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Hindi pinapayagan ng app o ng iyong organisasyon ang pagkilos na ito"</string>
diff --git a/quickstep/res/values-tr/strings.xml b/quickstep/res/values-tr/strings.xml
index a22247b..dc89f44 100644
--- a/quickstep/res/values-tr/strings.xml
+++ b/quickstep/res/values-tr/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Tekrar deneyin"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Güzel!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Eğitici <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Paylaş"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Ekran görüntüsü"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Uygulamanız veya kuruluşunuz bu işleme izin vermiyor"</string>
diff --git a/quickstep/res/values-uk/strings.xml b/quickstep/res/values-uk/strings.xml
index c63cec4..926c1fb 100644
--- a/quickstep/res/values-uk/strings.xml
+++ b/quickstep/res/values-uk/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Спробуйте ще"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Чудово!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Навчальний посібник <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Поділитися"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Знімок екрана"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Ця дія заборонена додатком або адміністратором організації"</string>
diff --git a/quickstep/res/values-ur/strings.xml b/quickstep/res/values-ur/strings.xml
index 5ce95ad..a04e090 100644
--- a/quickstep/res/values-ur/strings.xml
+++ b/quickstep/res/values-ur/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"پھر کوشش کریں"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"عمدہ!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"ٹیوٹوریل <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"اشتراک کریں"</string>
<string name="action_screenshot" msgid="8171125848358142917">"اسکرین شاٹ"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"ایپ یا آپ کی تنظیم کی جانب سے اس کارروائی کی اجازت نہیں ہے"</string>
diff --git a/quickstep/res/values-uz/strings.xml b/quickstep/res/values-uz/strings.xml
index 7272edd..8ca3898 100644
--- a/quickstep/res/values-uz/strings.xml
+++ b/quickstep/res/values-uz/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Qayta urinish"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Yaxshi!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Darslik: <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Hammasi tayyor!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Boshiga qaytish uchun tepaga suring"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Telefoningiz xizmatga tayyor"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Maxsus imkoniyatlar uchun navigatsiya sozlamalari"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Ulashish"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Skrinshot"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Bu amal ilova yoki tashkilotingiz tomonidan taqiqlangan"</string>
diff --git a/quickstep/res/values-vi/strings.xml b/quickstep/res/values-vi/strings.xml
index fc3ef3f..3034ce7 100644
--- a/quickstep/res/values-vi/strings.xml
+++ b/quickstep/res/values-vi/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Thử lại"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Tuyệt vời!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Hướng dẫn <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"Chia sẻ"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Chụp ảnh màn hình"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Ứng dụng hoặc tổ chức của bạn không cho phép thực hiện hành động này"</string>
diff --git a/quickstep/res/values-zh-rCN/strings.xml b/quickstep/res/values-zh-rCN/strings.xml
index fe5e553d..e60e2a8 100644
--- a/quickstep/res/values-zh-rCN/strings.xml
+++ b/quickstep/res/values-zh-rCN/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"重试"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"很好!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"教程 <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"分享"</string>
<string name="action_screenshot" msgid="8171125848358142917">"屏幕截图"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"该应用或您所在的单位不允许执行此操作"</string>
diff --git a/quickstep/res/values-zh-rHK/strings.xml b/quickstep/res/values-zh-rHK/strings.xml
index 5522a67..b546820 100644
--- a/quickstep/res/values-zh-rHK/strings.xml
+++ b/quickstep/res/values-zh-rHK/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"再試一次"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"很好!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"教學課程 <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"分享"</string>
<string name="action_screenshot" msgid="8171125848358142917">"螢幕截圖"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"應用程式或您的機構不允許此操作"</string>
diff --git a/quickstep/res/values-zh-rTW/strings.xml b/quickstep/res/values-zh-rTW/strings.xml
index 20af2b4..8146ec3 100644
--- a/quickstep/res/values-zh-rTW/strings.xml
+++ b/quickstep/res/values-zh-rTW/strings.xml
@@ -74,6 +74,14 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"重試"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"很好!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"教學課程 <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <!-- no translation found for allset_title (5021126669778966707) -->
+ <skip />
+ <!-- no translation found for allset_hint (459504134589971527) -->
+ <skip />
+ <!-- no translation found for allset_description (6350320429953234580) -->
+ <skip />
+ <!-- no translation found for allset_navigation_settings (417773244979225071) -->
+ <skip />
<string name="action_share" msgid="2648470652637092375">"分享"</string>
<string name="action_screenshot" msgid="8171125848358142917">"擷取螢幕畫面"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"這個應用程式或貴機構不允許執行這個動作"</string>
diff --git a/quickstep/res/values-zu/strings.xml b/quickstep/res/values-zu/strings.xml
index 2ffaecf..7f61e7d 100644
--- a/quickstep/res/values-zu/strings.xml
+++ b/quickstep/res/values-zu/strings.xml
@@ -74,6 +74,10 @@
<string name="gesture_tutorial_try_again" msgid="65962545858556697">"Zama futhi"</string>
<string name="gesture_tutorial_nice" msgid="2936275692616928280">"Kuhle!"</string>
<string name="gesture_tutorial_step" msgid="1279786122817620968">"Okokufundisa <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
+ <string name="allset_title" msgid="5021126669778966707">"Konke kusethiwe!"</string>
+ <string name="allset_hint" msgid="459504134589971527">"Swayiphela phezulu ukuze uye ekhaya"</string>
+ <string name="allset_description" msgid="6350320429953234580">"Usulungele ukuqala ukusebenzisa ifoni yakho"</string>
+ <string name="allset_navigation_settings" msgid="417773244979225071"><annotation id="link">"Amasethingi wokufinyelela ukuzulazula"</annotation></string>
<string name="action_share" msgid="2648470652637092375">"Yabelana"</string>
<string name="action_screenshot" msgid="8171125848358142917">"Isithombe-skrini"</string>
<string name="blocked_by_policy" msgid="2071401072261365546">"Lesi senzo asivunyelwanga uhlelo lokusebenza noma inhlangano yakho"</string>
diff --git a/quickstep/res/values/dimens.xml b/quickstep/res/values/dimens.xml
index 4f9b3eb..c459472 100644
--- a/quickstep/res/values/dimens.xml
+++ b/quickstep/res/values/dimens.xml
@@ -36,7 +36,7 @@
<dimen name="overview_grid_bottom_margin">90dp</dimen>
<dimen name="overview_grid_side_margin">54dp</dimen>
<dimen name="overview_grid_row_spacing">42dp</dimen>
- <dimen name="overview_grid_focus_vertical_margin">130dp</dimen>
+ <dimen name="overview_grid_focus_vertical_margin">90dp</dimen>
<dimen name="split_placeholder_size">110dp</dimen>
<dimen name="recents_page_spacing">16dp</dimen>
diff --git a/quickstep/res/values/strings.xml b/quickstep/res/values/strings.xml
index 7ada496..2c8687c 100644
--- a/quickstep/res/values/strings.xml
+++ b/quickstep/res/values/strings.xml
@@ -95,30 +95,37 @@
<string name="back_gesture_feedback_swipe_too_far_from_left_edge">Make sure you swipe from the far-left edge.</string>
<!-- Feedback shown during interactive parts of Back gesture tutorial for left edge when the gesture is cancelled. [CHAR LIMIT=100] -->
<string name="back_gesture_feedback_cancelled_left_edge">Make sure you swipe from the left edge to the middle of the screen and let go.</string>
- <!-- Feedback shown after completing the left back gesture before continuing on to the right edge. [CHAR LIMIT=60] -->
- <string name="back_gesture_feedback_complete_left_edge">That\'s it! Now try swiping from the right edge.</string>
+ <!-- Feedback title shown after completing the left back gesture before continuing on to the right edge. [CHAR LIMIT=60] -->
+ <string name="back_gesture_feedback_title_complete_left_edge">Nice! Now swipe from the right to go back</string>
+ <!-- Feedback subtitle shown after completing the left back gesture before continuing on to the right edge. [CHAR LIMIT=60] -->
+ <string name="back_gesture_feedback_subtitle_complete_left_edge">You can also go back to the last screen by swiping from the right edge to the middle of the screen.</string>
<!-- Feedback shown during interactive parts of Back gesture tutorial for right edge when the gesture is too far from the edge. [CHAR LIMIT=100] -->
<string name="back_gesture_feedback_swipe_too_far_from_right_edge">Make sure you swipe from the far-right edge.</string>
<!-- Feedback shown during interactive parts of Back gesture tutorial for right edge when the gesture is cancelled. [CHAR LIMIT=100] -->
<string name="back_gesture_feedback_cancelled_right_edge">Make sure you swipe from the right edge to the middle of the screen and let go.</string>
- <!-- Feedback shown during interactive parts of Back gesture tutorial for left edge when the gesture is cancelled. [CHAR LIMIT=100] -->
- <string name="back_gesture_feedback_complete">You completed the go back gesture. Next up, learn how to go Home.</string>
+ <!-- Feedback shown after completing the back gesture step if the user is following the full gesture tutorial flow. [CHAR LIMIT=100] -->
+ <string name="back_gesture_feedback_complete_with_follow_up">You completed the go back gesture. Next up, learn how to switch apps.</string>
+ <!-- Feedback shown after completing the back gesture step if the user started this tutorial individually. [CHAR LIMIT=100] -->
+ <string name="back_gesture_feedback_complete_without_follow_up">You completed the go back gesture.</string>
<!-- Feedback shown during interactive parts of Back gesture tutorial when the gesture is within the nav bar region. [CHAR LIMIT=100] -->
<string name="back_gesture_feedback_swipe_in_nav_bar">Make sure you don\'t swipe too close to the bottom of the screen.</string>
<!-- Subtitle shown on the confirmation screen after successful gesture. [CHAR LIMIT=60] -->
<string name="back_gesture_tutorial_confirm_subtitle">To change the sensitivity of the back gesture, go to Settings</string>
<!-- Feedback shown during interactive parts of Home gesture tutorial when the gesture is started too far from the edge. [CHAR LIMIT=100] -->
<!-- Introduction title for the Back gesture tutorial. [CHAR LIMIT=100] -->
- <string name="back_gesture_intro_title">Swipe to go back</string>
+ <string name="back_gesture_intro_title">Swipe from the left to go back</string>
<!-- Introduction subtitle for the Back gesture tutorial. [CHAR LIMIT=100] -->
- <string name="back_gesture_intro_subtitle">To go back to the last screen, swipe from the left or right edge to the middle of the screen.</string>
+ <string name="back_gesture_intro_subtitle">To go back to the last screen you were on, swipe from the left edge to the middle of the screen.</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge">Make sure you swipe up from the bottom edge of the screen.</string>
<!-- Feedback shown during interactive parts of Home gesture tutorial when the Overview gesture is detected. [CHAR LIMIT=100] -->
<string name="home_gesture_feedback_overview_detected">Make sure you don\'t pause before letting go.</string>
<!-- Feedback shown during interactive parts of Home gesture tutorial when the gesture is horizontal instead of vertical. [CHAR LIMIT=100] -->
<string name="home_gesture_feedback_wrong_swipe_direction">Make sure you swipe straight up.</string>
- <string name="home_gesture_feedback_complete">You completed the go Home gesture. Next up, learn how to switch apps.</string>
+ <!-- Feedback shown after completing the home gesture step if the user is following the full gesture tutorial flow. [CHAR LIMIT=100] -->
+ <string name="home_gesture_feedback_complete_with_follow_up">You completed the go Home gesture. Next up, learn how to go back.</string>
+ <!-- Feedback shown after completing the home gesture step if the user started this tutorial individually. [CHAR LIMIT=100] -->
+ <string name="home_gesture_feedback_complete_without_follow_up">You completed the go Home gesture.</string>
<!-- Introduction title for the Home gesture tutorial. [CHAR LIMIT=100] -->
<string name="home_gesture_intro_title">Swipe to go home</string>
<!-- Introduction subtitle for the Home gesture tutorial. [CHAR LIMIT=100] -->
@@ -130,7 +137,10 @@
<string name="overview_gesture_feedback_home_detected">Try holding the window for longer before releasing.</string>
<!-- Feedback shown during interactive parts of Overview gesture tutorial when the gesture is horizontal instead of vertical. [CHAR LIMIT=100] -->
<string name="overview_gesture_feedback_wrong_swipe_direction">Make sure you swipe straight up, then pause.</string>
- <string name="overview_gesture_feedback_complete">You completed the switch apps gesture. You\'re ready to use your phone!</string>
+ <!-- Feedback shown after completing the overview gesture step if the user is following the full gesture tutorial flow. [CHAR LIMIT=100] -->
+ <string name="overview_gesture_feedback_complete_with_follow_up">You learned how to use gestures. To turn off gestures, go to Settings.</string>
+ <!-- Feedback shown after completing the overview gesture step if the user started this tutorial individually. [CHAR LIMIT=100] -->
+ <string name="overview_gesture_feedback_complete_without_follow_up">You completed the switch apps gesture.</string>
<!-- Introduction title for the Overview gesture tutorial. [CHAR LIMIT=100] -->
<string name="overview_gesture_intro_title">Swipe to switch apps</string>
<!-- Introduction subtitle for the Overview gesture tutorial. [CHAR LIMIT=100] -->
diff --git a/quickstep/res/xml/indexable_launcher_prefs.xml b/quickstep/res/xml/indexable_launcher_prefs.xml
index c7e864f..b4740e5 100644
--- a/quickstep/res/xml/indexable_launcher_prefs.xml
+++ b/quickstep/res/xml/indexable_launcher_prefs.xml
@@ -26,7 +26,7 @@
android:key="pref_allowRotation"
android:title="@string/allow_rotation_title"
android:summary="@string/allow_rotation_desc"
- android:defaultValue="@bool/allow_rotation"
+ android:defaultValue="false"
android:persistent="true" />
</PreferenceScreen>
diff --git a/quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java b/quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java
index 2aac877..6966fb6 100644
--- a/quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java
+++ b/quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java
@@ -23,6 +23,7 @@
import static com.android.launcher3.util.DisplayController.CHANGE_ACTIVE_SCREEN;
import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR;
import static com.android.quickstep.SysUINavigationMode.Mode.TWO_BUTTONS;
+import static com.android.quickstep.util.NavigationModeFeatureFlag.LIVE_TILE;
import static com.android.systemui.shared.system.ActivityManagerWrapper.CLOSE_SYSTEM_WINDOWS_REASON_HOME_KEY;
import android.animation.AnimatorSet;
@@ -190,6 +191,15 @@
}
@Override
+ protected void onScreenOff() {
+ super.onScreenOff();
+ if (LIVE_TILE.get()) {
+ RecentsView recentsView = getOverviewPanel();
+ recentsView.finishRecentsAnimation(true /* toRecents */, null);
+ }
+ }
+
+ @Override
public void startIntentSenderForResult(IntentSender intent, int requestCode,
Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options) {
if (requestCode != -1) {
diff --git a/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java b/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java
index 36764a1..de9b361 100644
--- a/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java
+++ b/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java
@@ -491,7 +491,7 @@
List<View> viewsToAnimate = new ArrayList<>();
Workspace workspace = mLauncher.getWorkspace();
- workspace.getVisiblePages().forEach(
+ workspace.forEachVisiblePage(
view -> viewsToAnimate.add(((CellLayout) view).getShortcutsAndWidgets()));
viewsToAnimate.add(mLauncher.getHotseat());
@@ -783,7 +783,7 @@
final FloatingWidgetView floatingView = FloatingWidgetView.getFloatingWidgetView(mLauncher,
v, widgetBackgroundBounds,
new Size(windowTargetBounds.width(), windowTargetBounds.height()),
- finalWindowRadius);
+ finalWindowRadius, appTargetsAreTranslucent);
final float initialWindowRadius = supportsRoundedCornersOnWindows(mLauncher.getResources())
? floatingView.getInitialCornerRadius() : 0;
@@ -1260,21 +1260,20 @@
if (launchingFromWidget) {
composeWidgetLaunchAnimator(anim, (LauncherAppWidgetHostView) mV, appTargets,
wallpaperTargets, nonAppTargets);
+ // TODO(b/169042867): jank monitoring instrumentation
} else if (launchingFromRecents) {
composeRecentsLaunchAnimator(anim, mV, appTargets, wallpaperTargets, nonAppTargets,
launcherClosing);
+ addCujInstrumentation(
+ anim, InteractionJankMonitorWrapper.CUJ_APP_LAUNCH_FROM_RECENTS);
} else if (launchingFromTaskbar) {
// TODO
} else {
composeIconLaunchAnimator(anim, mV, appTargets, wallpaperTargets, nonAppTargets,
launcherClosing);
+ addCujInstrumentation(anim, InteractionJankMonitorWrapper.CUJ_APP_LAUNCH_FROM_ICON);
}
- addCujInstrumentation(anim,
- launchingFromRecents
- ? InteractionJankMonitorWrapper.CUJ_APP_LAUNCH_FROM_RECENTS
- : InteractionJankMonitorWrapper.CUJ_APP_LAUNCH_FROM_ICON);
-
if (launcherClosing) {
anim.addListener(mForceInvisibleListener);
}
diff --git a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java
index 67ed5fb..5dcf84c 100644
--- a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java
+++ b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java
@@ -17,6 +17,7 @@
import static com.android.launcher3.LauncherAnimUtils.SCALE_PROPERTY;
import static com.android.launcher3.LauncherState.NORMAL;
+import static com.android.launcher3.anim.AnimatorListeners.forSuccessCallback;
import static com.android.launcher3.hybridhotseat.HotseatEduController.getSettingsIntent;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_HOTSEAT_PREDICTION_PINNED;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_HOTSEAT_RANKED;
@@ -150,7 +151,7 @@
* Shows appropriate hotseat education based on prediction enabled and migration states.
*/
public void showEdu() {
- mLauncher.getStateManager().goToState(NORMAL, true, () -> {
+ mLauncher.getStateManager().goToState(NORMAL, true, forSuccessCallback(() -> {
if (mPredictedItems.isEmpty()) {
// launcher has empty predictions set
Snackbar.show(mLauncher, R.string.hotsaet_tip_prediction_disabled,
@@ -165,7 +166,7 @@
.collect(Collectors.toList()));
eduController.showEdu();
}
- });
+ }));
}
/**
@@ -255,8 +256,8 @@
}
}
if (animate) {
- animationSet.addListener(AnimationSuccessListener
- .forRunnable(this::removeOutlineDrawings));
+ animationSet.addListener(
+ forSuccessCallback(this::removeOutlineDrawings));
animationSet.start();
} else {
removeOutlineDrawings();
diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java
index 5513c16..3af51d5 100644
--- a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java
+++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java
@@ -16,12 +16,24 @@
package com.android.launcher3.taskbar;
import android.content.ContextWrapper;
+import android.graphics.Point;
import android.graphics.Rect;
+import android.graphics.drawable.Drawable;
import android.view.LayoutInflater;
+import android.view.View;
+
+import androidx.annotation.Nullable;
import com.android.launcher3.BaseQuickstepLauncher;
import com.android.launcher3.DeviceProfile;
+import com.android.launcher3.DragSource;
+import com.android.launcher3.DropTarget;
import com.android.launcher3.R;
+import com.android.launcher3.dragndrop.DragController;
+import com.android.launcher3.dragndrop.DragOptions;
+import com.android.launcher3.dragndrop.DragView;
+import com.android.launcher3.dragndrop.DraggableView;
+import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.views.ActivityContext;
import com.android.launcher3.views.BaseDragLayer;
@@ -35,6 +47,7 @@
private final DeviceProfile mDeviceProfile;
private final LayoutInflater mLayoutInflater;
private final TaskbarContainerView mTaskbarContainerView;
+ private final MyDragController mDragController;
public TaskbarActivityContext(BaseQuickstepLauncher launcher) {
super(launcher);
@@ -47,6 +60,7 @@
mTaskbarContainerView = (TaskbarContainerView) mLayoutInflater
.inflate(R.layout.taskbar, null, false);
+ mDragController = new MyDragController(this);
}
public TaskbarContainerView getTaskbarContainerView() {
@@ -72,4 +86,31 @@
public Rect getFolderBoundingBox() {
return mTaskbarContainerView.getFolderBoundingBox();
}
+
+ @Override
+ public DragController getDragController() {
+ return mDragController;
+ }
+
+ private static class MyDragController extends DragController<TaskbarActivityContext> {
+ MyDragController(TaskbarActivityContext activity) {
+ super(activity);
+ }
+
+ @Override
+ protected DragView startDrag(@Nullable Drawable drawable, @Nullable View view,
+ DraggableView originalView, int dragLayerX, int dragLayerY, DragSource source,
+ ItemInfo dragInfo, Point dragOffset, Rect dragRegion, float initialDragViewScale,
+ float dragViewScaleOnDrop, DragOptions options) {
+ return null;
+ }
+
+ @Override
+ protected void exitDrag() { }
+
+ @Override
+ protected DropTarget getDefaultDropTarget(int[] dropCoordinates) {
+ return null;
+ }
+ }
}
diff --git a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java
index 0652d48..996d36a 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/RecentsViewStateController.java
@@ -35,7 +35,7 @@
import com.android.launcher3.BaseQuickstepLauncher;
import com.android.launcher3.LauncherState;
-import com.android.launcher3.anim.AnimationSuccessListener;
+import com.android.launcher3.anim.AnimatorListeners;
import com.android.launcher3.anim.PendingAnimation;
import com.android.launcher3.anim.PropertySetter;
import com.android.launcher3.states.StateAnimationConfig;
@@ -78,7 +78,7 @@
mRecentsView.updateEmptyMessage();
} else {
builder.addListener(
- AnimationSuccessListener.forRunnable(mRecentsView::resetTaskVisuals));
+ AnimatorListeners.forSuccessCallback(mRecentsView::resetTaskVisuals));
}
// Create or dismiss split screen select animations
diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java
index b8caf81..19d1b32 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java
@@ -22,6 +22,7 @@
import static com.android.launcher3.LauncherState.ALL_APPS;
import static com.android.launcher3.LauncherState.NORMAL;
import static com.android.launcher3.allapps.AllAppsTransitionController.ALL_APPS_PROGRESS;
+import static com.android.launcher3.anim.AnimatorListeners.forEndCallback;
import static com.android.launcher3.anim.Interpolators.DEACCEL_3;
import static com.android.launcher3.config.FeatureFlags.ENABLE_ALL_APPS_EDU;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_HOME_GESTURE;
@@ -38,7 +39,7 @@
import com.android.launcher3.R;
import com.android.launcher3.Utilities;
import com.android.launcher3.allapps.AllAppsTransitionController;
-import com.android.launcher3.anim.AnimationSuccessListener;
+import com.android.launcher3.anim.AnimatorListeners;
import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.anim.Interpolators;
import com.android.launcher3.anim.PendingAnimation;
@@ -199,7 +200,7 @@
.animateWithVelocity(velocity);
} else {
mLauncher.getStateManager().goToState(mEndState, true,
- () -> onSwipeInteractionCompleted(mEndState));
+ forEndCallback(() -> onSwipeInteractionCompleted(mEndState)));
}
if (mStartState != mEndState) {
logHomeGesture();
@@ -214,7 +215,7 @@
// Quickly return to the state we came from (we didn't move far).
ValueAnimator anim = mCurrentAnimation.getAnimationPlayer();
anim.setFloatValues(progress, 0);
- anim.addListener(AnimationSuccessListener.forRunnable(
+ anim.addListener(AnimatorListeners.forSuccessCallback(
() -> onSwipeInteractionCompleted(mStartState)));
anim.setDuration(80).start();
}
diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java
index 729e2cb..eb62110 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java
@@ -22,6 +22,7 @@
import static com.android.launcher3.LauncherState.NORMAL;
import static com.android.launcher3.LauncherState.OVERVIEW;
import static com.android.launcher3.Utilities.EDGE_NAV_BAR;
+import static com.android.launcher3.anim.AnimatorListeners.forSuccessCallback;
import static com.android.launcher3.anim.Interpolators.ACCEL_DEACCEL;
import static com.android.launcher3.util.VibratorWrapper.OVERVIEW_HAPTIC;
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_OVERVIEW_DISABLED;
@@ -172,13 +173,13 @@
}
mNormalToHintOverviewScrimAnimator = null;
mCurrentAnimation.getTarget().addListener(newCancelListener(() ->
- mLauncher.getStateManager().goToState(OVERVIEW, true, () -> {
+ mLauncher.getStateManager().goToState(OVERVIEW, true, forSuccessCallback(() -> {
mOverviewResistYAnim = AnimatorControllerWithResistance
.createRecentsResistanceFromOverviewAnim(mLauncher, null)
.createPlaybackController();
mReachedOverview = true;
maybeSwipeInteractionToOverviewComplete();
- })));
+ }))));
mCurrentAnimation.getTarget().removeListener(mClearStateOnCancelListener);
mCurrentAnimation.dispatchOnCancel();
diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java
index 0f64abc..62687c5 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonQuickSwitchTouchController.java
@@ -21,6 +21,7 @@
import static com.android.launcher3.LauncherState.OVERVIEW_ACTIONS;
import static com.android.launcher3.LauncherState.QUICK_SWITCH;
import static com.android.launcher3.anim.AlphaUpdateListener.ALPHA_CUTOFF_THRESHOLD;
+import static com.android.launcher3.anim.AnimatorListeners.forEndCallback;
import static com.android.launcher3.anim.Interpolators.ACCEL_0_75;
import static com.android.launcher3.anim.Interpolators.DEACCEL_3;
import static com.android.launcher3.anim.Interpolators.LINEAR;
@@ -418,7 +419,7 @@
targetState.ordinal > mStartState.ordinal
? LAUNCHER_UNKNOWN_SWIPEUP
: LAUNCHER_UNKNOWN_SWIPEDOWN));
- mLauncher.getStateManager().goToState(targetState, false, this::clearState);
+ mLauncher.getStateManager().goToState(targetState, false, forEndCallback(this::clearState));
}
private void cancelAnimations() {
diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TwoButtonNavbarTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TwoButtonNavbarTouchController.java
index b0d0b15..e2747df 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TwoButtonNavbarTouchController.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TwoButtonNavbarTouchController.java
@@ -78,18 +78,9 @@
return true;
}
if (AbstractFloatingView.getTopOpenView(mLauncher) != null) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.TWO_BUTTON_NORMAL_NOT_OVERVIEW,
- "Didn't intercept touch due to top view: "
- + AbstractFloatingView.getTopOpenView(mLauncher));
- }
return false;
}
if ((ev.getEdgeFlags() & EDGE_NAV_BAR) == 0) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.TWO_BUTTON_NORMAL_NOT_OVERVIEW,
- "Didn't intercept touch because event wasn't from nav bar");
- }
return false;
}
if (!mIsTransposed && mLauncher.isInState(OVERVIEW)) {
@@ -101,10 +92,6 @@
@Override
public boolean onControllerInterceptTouchEvent(MotionEvent ev) {
boolean intercept = super.onControllerInterceptTouchEvent(ev);
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.TWO_BUTTON_NORMAL_NOT_OVERVIEW,
- "2 button touch controller intercept touch? " + intercept);
- }
return intercept;
}
@@ -123,10 +110,6 @@
@Override
protected void onReinitToState(LauncherState newToState) {
super.onReinitToState(newToState);
-
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.TWO_BUTTON_NORMAL_NOT_OVERVIEW, "onReinitToState: " + newToState);
- }
}
@Override
@@ -175,9 +158,6 @@
@Override
protected void onSwipeInteractionCompleted(LauncherState targetState) {
super.onSwipeInteractionCompleted(targetState);
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.TWO_BUTTON_NORMAL_NOT_OVERVIEW, "Reached state: " + targetState);
- }
if (!mIsTransposed) {
mContinuousTouchCount++;
}
diff --git a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java
index fe10908..bcf6687 100644
--- a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java
+++ b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java
@@ -63,7 +63,6 @@
import android.graphics.PointF;
import android.graphics.Rect;
import android.os.Build;
-import android.os.Handler;
import android.os.IBinder;
import android.os.SystemClock;
import android.view.MotionEvent;
@@ -136,7 +135,6 @@
protected final BaseActivityInterface<S, T> mActivityInterface;
protected final InputConsumerProxy mInputConsumerProxy;
protected final ActivityInitListener mActivityInitListener;
- private final Handler mHandler = new Handler();
// Callbacks to be made once the recents animation starts
private final ArrayList<Runnable> mRecentsAnimationStartCallbacks = new ArrayList<>();
private final OnScrollChangedListener mOnRecentsScrollListener = this::onRecentsViewScroll;
@@ -148,9 +146,6 @@
protected Runnable mGestureEndCallback;
protected MultiStateCallback mStateCallback;
protected boolean mCanceled;
- // One time flag set when onConsumerAboutToBeSwitched() is called, indicating that certain
- // shared animations should not be canceled when this handler is invalidated
- private boolean mConsumerIsSwitching;
private boolean mRecentsViewScrollLinked = false;
private static int getFlagForIndex(int index, String name) {
@@ -1007,14 +1002,7 @@
animateToProgress(startShift, endShift, duration, interpolator, endTarget, velocity);
}
- private int getLogGestureTaskIndex(@Nullable TaskView targetTask) {
- return mRecentsView == null || targetTask == null
- ? LOG_NO_OP_PAGE_INDEX
- : mRecentsView.indexOfChild(targetTask);
- }
-
- private void doLogGesture(GestureEndTarget endTarget, @Nullable TaskView targetTask,
- int pageIndex) {
+ private void doLogGesture(GestureEndTarget endTarget, @Nullable TaskView targetTask) {
StatsLogManager.EventEnum event;
switch (endTarget) {
case HOME:
@@ -1043,6 +1031,9 @@
// We probably never received an animation controller, skip logging.
return;
}
+ int pageIndex = endTarget == LAST_TASK
+ ? LOG_NO_OP_PAGE_INDEX
+ : mRecentsView.getNextPage();
// TODO: set correct container using the pageIndex
logger.log(event);
}
@@ -1056,7 +1047,7 @@
}
protected abstract HomeAnimationFactory createHomeAnimationFactory(
- ArrayList<IBinder> launchCookies, long duration);
+ ArrayList<IBinder> launchCookies, long duration, boolean isTargetTranslucent);
private final TaskStackChangeListener mActivityRestartListener = new TaskStackChangeListener() {
@Override
@@ -1100,7 +1091,9 @@
final ArrayList<IBinder> cookies = runningTaskTarget != null
? runningTaskTarget.taskInfo.launchCookies
: new ArrayList<>();
- HomeAnimationFactory homeAnimFactory = createHomeAnimationFactory(cookies, duration);
+ boolean isTranslucent = runningTaskTarget != null && runningTaskTarget.isTranslucent;
+ HomeAnimationFactory homeAnimFactory =
+ createHomeAnimationFactory(cookies, duration, isTranslucent);
mIsSwipingPipToHome = homeAnimFactory.supportSwipePipToHome()
&& runningTaskTarget != null
&& runningTaskTarget.taskInfo.pictureInPictureParams != null
@@ -1211,6 +1204,7 @@
TaskInfoCompat.getWindowConfigurationBounds(taskInfo),
startBounds,
destinationBounds,
+ mRecentsView.getPipCornerRadius(),
mRecentsView);
// We would assume home and app window always in the same rotation While homeRotation
// is not ROTATION_0 (which implies the rotation is turned on in launcher settings).
@@ -1293,18 +1287,18 @@
}
public void onConsumerAboutToBeSwitched() {
- mConsumerIsSwitching = true;
if (mActivity != null) {
// In the off chance that the gesture ends before Launcher is started, we should clear
// the callback here so that it doesn't update with the wrong state
mActivity.clearRunOnceOnStartCallback();
+ resetLauncherListeners();
}
if (mGestureState.getEndTarget() != null && !mGestureState.isRunningAnimationToLauncher()) {
cancelCurrentAnimation();
} else {
mStateCallback.setStateOnUiThread(STATE_FINISH_WITH_NO_END);
+ reset();
}
- reset();
}
public boolean isCanceled() {
@@ -1315,14 +1309,13 @@
private void resumeLastTask() {
mRecentsAnimationController.finish(false /* toRecents */, null);
ActiveGestureLog.INSTANCE.addLog("finishRecentsAnimation", false);
- doLogGesture(LAST_TASK, null, getLogGestureTaskIndex(null));
+ doLogGesture(LAST_TASK, null);
reset();
}
@UiThread
private void startNewTask() {
TaskView taskToLaunch = mRecentsView == null ? null : mRecentsView.getNextPageTaskView();
- int taskPageIndex = getLogGestureTaskIndex(taskToLaunch);
startNewTask(success -> {
if (!success) {
reset();
@@ -1331,7 +1324,7 @@
endLauncherTransitionController();
updateSysUiFlags(1 /* windowProgress == overview */);
}
- doLogGesture(NEW_TASK, taskToLaunch, taskPageIndex);
+ doLogGesture(NEW_TASK, taskToLaunch);
});
}
@@ -1365,39 +1358,29 @@
}
private void invalidateHandler() {
- if (!mConsumerIsSwitching) {
- if (!LIVE_TILE.get() || !mActivityInterface.isInLiveTileMode()
- || mGestureState.getEndTarget() != RECENTS) {
- mInputConsumerProxy.destroy();
- mTaskAnimationManager.setLiveTileCleanUpHandler(null);
- }
- endRunningWindowAnim(false /* cancel */);
+ if (!LIVE_TILE.get() || !mActivityInterface.isInLiveTileMode()
+ || mGestureState.getEndTarget() != RECENTS) {
+ mInputConsumerProxy.destroy();
+ mTaskAnimationManager.setLiveTileCleanUpHandler(null);
+ }
+ mInputConsumerProxy.unregisterCallback();
+ endRunningWindowAnim(false /* cancel */);
- if (mGestureEndCallback != null) {
- mGestureEndCallback.run();
- }
+ if (mGestureEndCallback != null) {
+ mGestureEndCallback.run();
}
- mInputConsumerProxy.unregisterCallback();
mActivityInitListener.unregister();
ActivityManagerWrapper.getInstance().unregisterTaskStackListener(mActivityRestartListener);
mTaskSnapshot = null;
}
private void invalidateHandlerWithLauncher() {
- if (!mConsumerIsSwitching) {
- endLauncherTransitionController();
- mRecentsView.onGestureAnimationEnd();
- }
+ endLauncherTransitionController();
mRecentsView.removeOnScrollChangedListener(mOnRecentsScrollListener);
+ mRecentsView.onGestureAnimationEnd();
resetLauncherListeners();
-
- mHandler.post(() -> {
- // Defer clearing the activity since invalidation can happen over multiple callbacks.
- mActivity = null;
- mRecentsView = null;
- });
}
private void endLauncherTransitionController() {
@@ -1515,8 +1498,7 @@
() -> mStateCallback.setStateOnUiThread(STATE_CURRENT_TASK_FINISHED));
}
ActiveGestureLog.INSTANCE.addLog("finishRecentsAnimation", true);
- TaskView taskToLaunch = mRecentsView == null ? null : mRecentsView.getCurrentPageTaskView();
- doLogGesture(HOME, taskToLaunch, getLogGestureTaskIndex(taskToLaunch));
+ doLogGesture(HOME, mRecentsView == null ? null : mRecentsView.getCurrentPageTaskView());
}
/**
@@ -1547,8 +1529,7 @@
}
SystemUiProxy.INSTANCE.get(mContext).onOverviewShown(false, TAG);
- TaskView taskToLaunch = mRecentsView.getCurrentPageTaskView();
- doLogGesture(RECENTS, taskToLaunch, getLogGestureTaskIndex(taskToLaunch));
+ doLogGesture(RECENTS, mRecentsView.getCurrentPageTaskView());
reset();
}
diff --git a/quickstep/src/com/android/quickstep/FallbackSwipeHandler.java b/quickstep/src/com/android/quickstep/FallbackSwipeHandler.java
index 9846ee7..2d81429 100644
--- a/quickstep/src/com/android/quickstep/FallbackSwipeHandler.java
+++ b/quickstep/src/com/android/quickstep/FallbackSwipeHandler.java
@@ -129,7 +129,7 @@
@Override
protected HomeAnimationFactory createHomeAnimationFactory(ArrayList<IBinder> launchCookies,
- long duration) {
+ long duration, boolean isTargetTranslucent) {
mActiveAnimationFactory = new FallbackHomeAnimationFactory(duration);
ActivityOptions options = ActivityOptions.makeCustomAnimation(mContext, 0, 0);
Intent intent = new Intent(mGestureState.getHomeIntent());
diff --git a/quickstep/src/com/android/quickstep/LauncherActivityInterface.java b/quickstep/src/com/android/quickstep/LauncherActivityInterface.java
index dffee7f..c43d3c9 100644
--- a/quickstep/src/com/android/quickstep/LauncherActivityInterface.java
+++ b/quickstep/src/com/android/quickstep/LauncherActivityInterface.java
@@ -19,6 +19,7 @@
import static com.android.launcher3.LauncherState.NORMAL;
import static com.android.launcher3.LauncherState.OVERVIEW;
import static com.android.launcher3.LauncherState.QUICK_SWITCH;
+import static com.android.launcher3.anim.AnimatorListeners.forEndCallback;
import static com.android.launcher3.anim.Interpolators.LINEAR;
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_IME_SHOWING;
@@ -192,7 +193,8 @@
closeOverlay();
launcher.getStateManager().goToState(OVERVIEW,
- launcher.getStateManager().shouldAnimateStateChange(), onCompleteCallback);
+ launcher.getStateManager().shouldAnimateStateChange(),
+ onCompleteCallback == null ? null : forEndCallback(onCompleteCallback));
return true;
}
diff --git a/quickstep/src/com/android/quickstep/LauncherSwipeHandlerV2.java b/quickstep/src/com/android/quickstep/LauncherSwipeHandlerV2.java
index 46cd8a2..267227d 100644
--- a/quickstep/src/com/android/quickstep/LauncherSwipeHandlerV2.java
+++ b/quickstep/src/com/android/quickstep/LauncherSwipeHandlerV2.java
@@ -80,7 +80,7 @@
@Override
protected HomeAnimationFactory createHomeAnimationFactory(ArrayList<IBinder> launchCookies,
- long duration) {
+ long duration, boolean isTargetTranslucent) {
if (mActivity == null) {
mStateCallback.addChangeListener(STATE_LAUNCHER_PRESENT | STATE_HANDLER_INVALIDATED,
isPresent -> mRecentsView.startHome());
@@ -103,7 +103,8 @@
return new LauncherHomeAnimationFactory();
}
if (workspaceView instanceof LauncherAppWidgetHostView) {
- return createWidgetHomeAnimationFactory((LauncherAppWidgetHostView) workspaceView);
+ return createWidgetHomeAnimationFactory((LauncherAppWidgetHostView) workspaceView,
+ isTargetTranslucent);
}
return createIconHomeAnimationFactory(workspaceView);
}
@@ -235,7 +236,7 @@
}
private HomeAnimationFactory createWidgetHomeAnimationFactory(
- LauncherAppWidgetHostView hostView) {
+ LauncherAppWidgetHostView hostView, boolean isTargetTranslucent) {
RectF backgroundLocation = new RectF();
Rect crop = new Rect();
@@ -243,7 +244,7 @@
Size windowSize = new Size(crop.width(), crop.height());
FloatingWidgetView floatingWidgetView = FloatingWidgetView.getFloatingWidgetView(mActivity,
hostView, backgroundLocation, windowSize,
- mTaskViewSimulator.getCurrentCornerRadius());
+ mTaskViewSimulator.getCurrentCornerRadius(), isTargetTranslucent);
return new LauncherHomeAnimationFactory() {
diff --git a/quickstep/src/com/android/quickstep/OrientationTouchTransformer.java b/quickstep/src/com/android/quickstep/OrientationTouchTransformer.java
index 62b821c..35a851a 100644
--- a/quickstep/src/com/android/quickstep/OrientationTouchTransformer.java
+++ b/quickstep/src/com/android/quickstep/OrientationTouchTransformer.java
@@ -35,7 +35,6 @@
import com.android.launcher3.R;
import com.android.launcher3.ResourceUtils;
-import com.android.launcher3.testing.TestProtocol;
import com.android.launcher3.util.DisplayController.Info;
import java.io.PrintWriter;
@@ -92,7 +91,7 @@
};
private static final String TAG = "OrientationTouchTransformer";
- private static final boolean DEBUG = true;
+ private static final boolean DEBUG = false;
private static final int QUICKSTEP_ROTATION_UNINITIALIZED = -1;
@@ -161,11 +160,9 @@
resetSwipeRegions(info);
}
- void setNavigationMode(SysUINavigationMode.Mode newMode, Info info,
- Resources newRes) {
+ void setNavigationMode(SysUINavigationMode.Mode newMode, Info info, Resources newRes) {
if (DEBUG) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "setNavigationMode new: " + newMode
- + " oldMode: " + mMode + " " + this);
+ Log.d(TAG, "setNavigationMode new: " + newMode + " oldMode: " + mMode + " " + this);
}
if (mMode == newMode) {
return;
@@ -258,18 +255,10 @@
mCurrentDisplay = new CurrentDisplay(region.currentSize, region.rotation);
OrientationRectF regionToKeep = mSwipeTouchRegions.get(mCurrentDisplay);
- if (DEBUG) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "cached region: " + regionToKeep
- + " mCurrentDisplay: " + mCurrentDisplay + " " + this);
- }
if (regionToKeep == null) {
regionToKeep = createRegionForDisplay(region);
}
mSwipeTouchRegions.clear();
- if (DEBUG) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "adding region: " + regionToKeep
- + " mCurrentDisplay: " + mCurrentDisplay + " " + this);
- }
mSwipeTouchRegions.put(mCurrentDisplay, regionToKeep);
updateAssistantRegions(regionToKeep);
}
@@ -301,10 +290,6 @@
mAssistantLeftRegion.setEmpty();
mAssistantRightRegion.setEmpty();
int navbarSize = getNavbarSize(ResourceUtils.NAVBAR_LANDSCAPE_LEFT_RIGHT_SIZE);
- if (DEBUG) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "else case mode: " + mMode
- + " getNavbarSize: " + navbarSize + " rotation: " + rotation + " " + this);
- }
switch (rotation) {
case Surface.ROTATION_90:
orientationRectF.left = orientationRectF.right
@@ -355,8 +340,8 @@
}
boolean touchInValidSwipeRegions(float x, float y) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "touchInValidSwipeRegions " + x + "," + y + " in "
+ if (DEBUG) {
+ Log.d(TAG, "touchInValidSwipeRegions " + x + "," + y + " in "
+ mLastRectTouched + " this: " + this);
}
if (mLastRectTouched != null) {
@@ -399,16 +384,10 @@
}
for (OrientationRectF rect : mSwipeTouchRegions.values()) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "transform:DOWN, rect=" + rect);
- }
if (rect == null) {
continue;
}
if (rect.applyTransform(event, false)) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "setting mLastRectTouched");
- }
mLastRectTouched = rect;
mActiveTouchRotation = rect.mRotation;
if (mEnableMultipleRegions
diff --git a/quickstep/src/com/android/quickstep/RecentTasksList.java b/quickstep/src/com/android/quickstep/RecentTasksList.java
index 2f1538b..3302da0 100644
--- a/quickstep/src/com/android/quickstep/RecentTasksList.java
+++ b/quickstep/src/com/android/quickstep/RecentTasksList.java
@@ -93,10 +93,6 @@
* @return The change id of the current task list
*/
public synchronized int getTasks(boolean loadKeysOnly, Consumer<ArrayList<Task>> callback) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "getTasks: keysOnly=" + loadKeysOnly
- + " callback=" + callback);
- }
final int requestLoadId = mChangeId;
if (mResultsUi.isValidForRequest(requestLoadId, loadKeysOnly)) {
// The list is up to date, send the callback on the next frame,
@@ -105,9 +101,6 @@
// Copy synchronously as the changeId might change by next frame
ArrayList<Task> result = copyOf(mResultsUi);
mMainThreadExecutor.post(() -> {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "getTasks: no new tasks");
- }
callback.accept(result);
});
}
@@ -118,24 +111,15 @@
// Kick off task loading in the background
mLoadingTasksInBackground = true;
UI_HELPER_EXECUTOR.execute(() -> {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "getTasks: loading in bg start");
- }
if (!mResultsBg.isValidForRequest(requestLoadId, loadKeysOnly)) {
mResultsBg = loadTasksInBackground(Integer.MAX_VALUE, requestLoadId, loadKeysOnly);
}
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "getTasks: loading in bg end");
- }
TaskLoadResult loadResult = mResultsBg;
mMainThreadExecutor.execute(() -> {
mLoadingTasksInBackground = false;
mResultsUi = loadResult;
if (callback != null) {
ArrayList<Task> result = copyOf(mResultsUi);
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "getTasks: callback w/ bg results");
- }
callback.accept(result);
}
});
diff --git a/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java b/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java
index e271203..e821e06 100644
--- a/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java
+++ b/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java
@@ -31,6 +31,7 @@
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_BUBBLES_EXPANDED;
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_GLOBAL_ACTIONS_SHOWING;
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_HOME_DISABLED;
+import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_MAGNIFICATION_OVERLAP;
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NAV_BAR_HIDDEN;
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED;
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_ONE_HANDED_ACTIVE;
@@ -229,7 +230,6 @@
* Cleans up all the registered listeners and receivers.
*/
public void destroy() {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "destroying RADS", new Throwable());
for (Runnable r : mOnDestroyActions) {
r.run();
}
@@ -405,6 +405,7 @@
return canStartWithNavHidden
&& (mSystemUiStateFlags & SYSUI_STATE_NOTIFICATION_PANEL_EXPANDED) == 0
&& (mSystemUiStateFlags & SYSUI_STATE_QUICK_SETTINGS_EXPANDED) == 0
+ && (mSystemUiStateFlags & SYSUI_STATE_MAGNIFICATION_OVERLAP) == 0
&& ((mSystemUiStateFlags & SYSUI_STATE_HOME_DISABLED) == 0
|| (mSystemUiStateFlags & SYSUI_STATE_OVERVIEW_DISABLED) == 0);
}
diff --git a/quickstep/src/com/android/quickstep/RotationTouchHelper.java b/quickstep/src/com/android/quickstep/RotationTouchHelper.java
index 7629862..070d725 100644
--- a/quickstep/src/com/android/quickstep/RotationTouchHelper.java
+++ b/quickstep/src/com/android/quickstep/RotationTouchHelper.java
@@ -133,8 +133,6 @@
private RotationTouchHelper(Context context) {
mContext = context;
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "RotationTouchHelper ctor init? " + mNeedsInit
- + " " + this);
if (mNeedsInit) {
init();
}
@@ -142,11 +140,8 @@
public void init() {
if (!mNeedsInit) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "Did not need init? " + " " + this);
return;
}
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "RotationTouchHelper init() " + this,
- new Throwable());
mDisplayController = DisplayController.INSTANCE.get(mContext);
Resources resources = mContext.getResources();
mSysUiNavMode = SysUINavigationMode.INSTANCE.get(mContext);
@@ -157,8 +152,6 @@
// Register for navigation mode changes
SysUINavigationMode.Mode newMode = mSysUiNavMode.addModeChangeListener(this);
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "AddedModeChangeListener: " + this +
- " currentMode: " + newMode);
onNavigationModeChanged(newMode);
runOnDestroy(() -> mSysUiNavMode.removeModeChangeListener(this));
@@ -204,7 +197,6 @@
* Cleans up all the registered listeners and receivers.
*/
public void destroy() {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "destroying " + this);
for (Runnable r : mOnDestroyActions) {
r.run();
}
@@ -253,7 +245,6 @@
@Override
public void onNavigationModeChanged(SysUINavigationMode.Mode newMode) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "nav mode changed: " + newMode);
mDisplayController.removeChangeListener(this);
mDisplayController.addChangeListener(this);
onDisplayInfoChanged(mContext, mDisplayController.getInfo(), CHANGE_ALL);
diff --git a/quickstep/src/com/android/quickstep/SystemUiProxy.java b/quickstep/src/com/android/quickstep/SystemUiProxy.java
index f6018d1..39d8888 100644
--- a/quickstep/src/com/android/quickstep/SystemUiProxy.java
+++ b/quickstep/src/com/android/quickstep/SystemUiProxy.java
@@ -68,6 +68,12 @@
MAIN_EXECUTOR.execute(() -> clearProxy());
};
+ // Save the listeners passed into the proxy since when set/register these listeners,
+ // setProxy may not have been called, eg. OverviewProxyService is not connected yet.
+ private IPipAnimationListener mPendingPipAnimationListener;
+ private ISplitScreenListener mPendingSplitScreenListener;
+ private IStartingWindowListener mPendingStartingWindowListener;
+
// Used to dedupe calls to SystemUI
private int mLastShelfHeight;
private boolean mLastShelfVisible;
@@ -116,6 +122,19 @@
mShellTransitions = shellTransitions;
mStartingWindow = startingWindow;
linkToDeath();
+ // re-attach the listeners once missing due to setProxy has not been initialized yet.
+ if (mPendingPipAnimationListener != null && mPip != null) {
+ setPinnedStackAnimationListener(mPendingPipAnimationListener);
+ mPendingPipAnimationListener = null;
+ }
+ if (mPendingSplitScreenListener != null && mSplitScreen != null) {
+ registerSplitScreenListener(mPendingSplitScreenListener);
+ mPendingSplitScreenListener = null;
+ }
+ if (mPendingStartingWindowListener != null && mStartingWindow != null) {
+ setStartingWindowListener(mPendingStartingWindowListener);
+ mPendingStartingWindowListener = null;
+ }
}
public void clearProxy() {
@@ -390,6 +409,8 @@
} catch (RemoteException e) {
Log.w(TAG, "Failed call setPinnedStackAnimationListener", e);
}
+ } else {
+ mPendingPipAnimationListener = listener;
}
}
@@ -427,6 +448,8 @@
} catch (RemoteException e) {
Log.w(TAG, "Failed call registerSplitScreenListener");
}
+ } else {
+ mPendingSplitScreenListener = listener;
}
}
@@ -438,6 +461,7 @@
Log.w(TAG, "Failed call unregisterSplitScreenListener");
}
}
+ mPendingSplitScreenListener = null;
}
public void setSideStageVisibility(boolean visible) {
@@ -590,6 +614,8 @@
} catch (RemoteException e) {
Log.w(TAG, "Failed call setStartingWindowListener", e);
}
+ } else {
+ mPendingStartingWindowListener = listener;
}
}
}
diff --git a/quickstep/src/com/android/quickstep/TaskAnimationManager.java b/quickstep/src/com/android/quickstep/TaskAnimationManager.java
index c87cd17..44a3e95 100644
--- a/quickstep/src/com/android/quickstep/TaskAnimationManager.java
+++ b/quickstep/src/com/android/quickstep/TaskAnimationManager.java
@@ -61,9 +61,11 @@
if (LIVE_TILE.get() && activityInterface.isInLiveTileMode()
&& activityInterface.getCreatedActivity() != null) {
RecentsView recentsView = activityInterface.getCreatedActivity().getOverviewPanel();
- recentsView.launchSideTaskInLiveTileModeForRestartedApp(task.taskId);
- ActivityManagerWrapper.getInstance().unregisterTaskStackListener(
- mLiveTileRestartListener);
+ if (recentsView != null) {
+ recentsView.launchSideTaskInLiveTileModeForRestartedApp(task.taskId);
+ ActivityManagerWrapper.getInstance().unregisterTaskStackListener(
+ mLiveTileRestartListener);
+ }
}
}
};
@@ -135,10 +137,12 @@
&& activityInterface.getCreatedActivity() != null) {
RecentsView recentsView =
activityInterface.getCreatedActivity().getOverviewPanel();
- RemoteAnimationTargetCompat[] apps = new RemoteAnimationTargetCompat[1];
- apps[0] = appearedTaskTarget;
- recentsView.launchSideTaskInLiveTileMode(appearedTaskTarget.taskId, apps);
- return;
+ if (recentsView != null) {
+ RemoteAnimationTargetCompat[] apps = new RemoteAnimationTargetCompat[1];
+ apps[0] = appearedTaskTarget;
+ recentsView.launchSideTaskInLiveTileMode(appearedTaskTarget.taskId, apps);
+ return;
+ }
}
if (mController != null) {
if (mLastAppearedTaskTarget == null
diff --git a/quickstep/src/com/android/quickstep/TaskOverlayFactory.java b/quickstep/src/com/android/quickstep/TaskOverlayFactory.java
index 1ad5f2c..c1c85de 100644
--- a/quickstep/src/com/android/quickstep/TaskOverlayFactory.java
+++ b/quickstep/src/com/android/quickstep/TaskOverlayFactory.java
@@ -190,7 +190,8 @@
if (LIVE_TILE.get()) {
RecentsView recentsView = mThumbnailView.getTaskView().getRecentsView();
recentsView.switchToScreenshot(
- () -> recentsView.finishRecentsAnimation(true /* toRecents */, callback));
+ () -> recentsView.finishRecentsAnimation(true /* toRecents */,
+ false /* shouldPip */, callback));
} else {
callback.run();
}
diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java
index 5fe0fc7..edc7a3c 100644
--- a/quickstep/src/com/android/quickstep/TouchInteractionService.java
+++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java
@@ -165,8 +165,6 @@
@BinderThread
public void onInitialize(Bundle bundle) {
- Log.d(TAG + " b/182478748", "TouchInteractionService.onInitialize: user="
- + getUserId());
ISystemUiProxy proxy = ISystemUiProxy.Stub.asInterface(
bundle.getBinder(KEY_EXTRA_SYSUI_PROXY));
IPip pip = IPip.Stub.asInterface(bundle.getBinder(KEY_EXTRA_SHELL_PIP));
@@ -350,8 +348,6 @@
mMainChoreographer = Choreographer.getInstance();
mAM = ActivityManagerWrapper.getInstance();
mDeviceState = new RecentsAnimationDeviceState(this, true);
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "RADS OTT instance: " +
- mDeviceState.getRotationTouchHelper().getOrientationTouchTransformer());
mRotationTouchHelper = mDeviceState.getRotationTouchHelper();
mDeviceState.addNavigationModeChangedCallback(this::onNavigationModeChanged);
mDeviceState.addOneHandedModeChangedCallback(this::onOneHandedModeOverlayChanged);
@@ -363,8 +359,6 @@
}
private void disposeEventHandlers() {
- Log.d(TAG + " b/182478748", "TouchInteractionService.disposeEventHandlers: user="
- + getUserId());
if (mInputEventReceiver != null) {
mInputEventReceiver.dispose();
mInputEventReceiver = null;
@@ -376,21 +370,12 @@
}
private void initInputMonitor() {
- Log.d(TAG + " b/182478748", "TouchInteractionService.initInputMonitor: user="
- + getUserId());
disposeEventHandlers();
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.TIS_NO_EVENTS, "initInputMonitor: isButtonMode? "
- + mDeviceState.isButtonNavMode());
- }
-
if (mDeviceState.isButtonNavMode()) {
- Log.d(TAG + " b/182478748", "isButtonNav: user=" + getUserId());
return;
}
- Log.d(TAG + " b/182478748", "create swipe-up input monitor: user=" + getUserId());
mInputMonitorCompat = new InputMonitorCompat("swipe-up", mDeviceState.getDisplayId());
mInputEventReceiver = mInputMonitorCompat.getInputReceiver(Looper.getMainLooper(),
mMainChoreographer, this::onInputEvent);
@@ -549,13 +534,6 @@
Point sz = new Point();
display.getRealSize(sz);
if (rotation != Surface.ROTATION_0) {
- if ((rotation % 2) != 0) {
- // via display-manager, the display size is unrotated, so "rotate" its size
- // to match the rotation we are transforming the event into.
- final int tmpX = sz.x;
- sz.x = sz.y;
- sz.y = tmpX;
- }
event.transform(InputChannelCompat.createRotationMatrix(rotation, sz.x, sz.y));
}
}
@@ -572,17 +550,10 @@
final int action = event.getAction();
if (action == ACTION_DOWN) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "TouchInteractionService.onInputEvent:DOWN");
- }
mRotationTouchHelper.setOrientationTransformIfNeeded(event);
if (!mDeviceState.isOneHandedModeActive()
&& mRotationTouchHelper.isInSwipeUpTouchRegion(event)) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME,
- "TouchInteractionService.onInputEvent:isInSwipeUpTouchRegion");
- }
// Clone the previous gesture state since onConsumerAboutToBeSwitched might trigger
// onConsumerInactive and wipe the previous gesture state
GestureState prevGestureState = new GestureState(mGestureState);
@@ -678,9 +649,6 @@
private InputConsumer newConsumer(GestureState previousGestureState,
GestureState newGestureState, MotionEvent event) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "newConsumer");
- }
boolean canStartSystemGesture = mDeviceState.canStartSystemGesture();
if (!mDeviceState.isUserUnlocked()) {
@@ -692,9 +660,6 @@
return mResetGestureInputConsumer;
}
}
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.NO_SWIPE_TO_HOME, "newConsumer:user is unlocked");
- }
// When there is an existing recents animation running, bypass systemState check as this is
// a followup gesture and the first gesture started in a valid system state.
diff --git a/quickstep/src/com/android/quickstep/fallback/FallbackRecentsView.java b/quickstep/src/com/android/quickstep/fallback/FallbackRecentsView.java
index 1bb8e96..ac3fb27 100644
--- a/quickstep/src/com/android/quickstep/fallback/FallbackRecentsView.java
+++ b/quickstep/src/com/android/quickstep/fallback/FallbackRecentsView.java
@@ -140,10 +140,6 @@
// as well. This tile is never shown as we have setCurrentTaskHidden, but allows use to
// track the index of the next task appropriately, as if we are switching on any other app.
if (mHomeTaskInfo != null && mHomeTaskInfo.taskId == mRunningTaskId && !tasks.isEmpty()) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED,
- "FallbackRecentsView.applyLoadPlan: running task is home");
- }
// Check if the task list has running task
boolean found = false;
for (Task t : tasks) {
diff --git a/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java
index fa9e0ec..4af6338 100644
--- a/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java
+++ b/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java
@@ -18,6 +18,8 @@
import static com.android.quickstep.util.NavigationModeFeatureFlag.LIVE_TILE;
import static com.android.systemui.shared.system.ActivityManagerWrapper.CLOSE_SYSTEM_WINDOWS_REASON_RECENTS;
+import android.media.AudioManager;
+import android.media.session.MediaSessionManager;
import android.view.KeyEvent;
import android.view.MotionEvent;
@@ -101,6 +103,17 @@
@Override
public void onKeyEvent(KeyEvent ev) {
if (LIVE_TILE.get()) {
+ switch (ev.getKeyCode()) {
+ case KeyEvent.KEYCODE_VOLUME_DOWN:
+ case KeyEvent.KEYCODE_VOLUME_UP:
+ case KeyEvent.KEYCODE_VOLUME_MUTE:
+ MediaSessionManager mgr = mActivity.getSystemService(MediaSessionManager.class);
+ mgr.dispatchVolumeKeyEventAsSystemService(ev,
+ AudioManager.USE_DEFAULT_STREAM_TYPE);
+ break;
+ default:
+ break;
+ }
mActivity.dispatchKeyEvent(ev);
}
}
diff --git a/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialController.java b/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialController.java
index 14c3a92..a0fb51c 100644
--- a/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialController.java
@@ -47,6 +47,11 @@
}
@Override
+ protected int getMockAppTaskThumbnailResId() {
+ return R.drawable.mock_conversation;
+ }
+
+ @Override
public void onBackGestureAttempted(BackGestureResult result) {
switch (mTutorialType) {
case RIGHT_EDGE_BACK_NAVIGATION:
@@ -67,11 +72,14 @@
private void handleAttemptFromRight(BackGestureResult result) {
switch (result) {
case BACK_COMPLETED_FROM_RIGHT:
+ mTutorialFragment.releaseGestureVideoView();
hideFeedback(true);
mFakeTaskView.setBackground(AppCompatResources.getDrawable(mContext,
- R.drawable.sandbox_fake_google_search));
- showRippleEffect(null);
- showFeedback(R.string.back_gesture_feedback_complete, true);
+ R.drawable.mock_conversations_list));
+ int subtitleResId = mTutorialFragment.getNumSteps() == 1
+ ? R.string.back_gesture_feedback_complete_without_follow_up
+ : R.string.back_gesture_feedback_complete_with_follow_up;
+ showFeedback(subtitleResId, true);
break;
case BACK_CANCELLED_FROM_RIGHT:
showFeedback(R.string.back_gesture_feedback_cancelled_right_edge);
@@ -90,11 +98,13 @@
private void handleAttemptFromLeft(BackGestureResult result) {
switch (result) {
case BACK_COMPLETED_FROM_LEFT:
+ mTutorialFragment.releaseGestureVideoView();
hideFeedback(true);
mFakeTaskView.setBackground(AppCompatResources.getDrawable(mContext,
- R.drawable.sandbox_fake_google_search));
- showRippleEffect(null);
- showFeedback(R.string.back_gesture_feedback_complete_left_edge,
+ R.drawable.mock_conversations_list));
+ showFeedback(
+ R.string.back_gesture_feedback_title_complete_left_edge,
+ R.string.back_gesture_feedback_subtitle_complete_left_edge,
() -> mTutorialFragment.changeController(RIGHT_EDGE_BACK_NAVIGATION));
break;
case BACK_CANCELLED_FROM_LEFT:
diff --git a/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialFragment.java b/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialFragment.java
index 71d00f0..830d0ad 100644
--- a/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialFragment.java
+++ b/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialFragment.java
@@ -29,8 +29,16 @@
@Override
Integer getFeedbackVideoResId() {
return mTutorialType == TutorialType.RIGHT_EDGE_BACK_NAVIGATION
- ? R.drawable.gesture_tutorial_back_right
- : R.drawable.gesture_tutorial_back_left;
+ ? R.drawable.gesture_tutorial_motion_back_right
+ : R.drawable.gesture_tutorial_motion_back_left;
+ }
+
+ @Nullable
+ @Override
+ Integer getGestureVideoResId() {
+ return mTutorialType == TutorialType.RIGHT_EDGE_BACK_NAVIGATION
+ ? R.drawable.gesture_tutorial_loop_back_right
+ : R.drawable.gesture_tutorial_loop_back_left;
}
@Override
diff --git a/quickstep/src/com/android/quickstep/interaction/EdgeBackGestureHandler.java b/quickstep/src/com/android/quickstep/interaction/EdgeBackGestureHandler.java
index 9489bac..c532f8e 100644
--- a/quickstep/src/com/android/quickstep/interaction/EdgeBackGestureHandler.java
+++ b/quickstep/src/com/android/quickstep/interaction/EdgeBackGestureHandler.java
@@ -30,6 +30,7 @@
import androidx.annotation.Nullable;
import com.android.launcher3.ResourceUtils;
+import com.android.launcher3.Utilities;
/**
* Utility class to handle edge swipes for back gestures.
@@ -47,9 +48,9 @@
private final Point mDisplaySize = new Point();
// The edge width where touch down is allowed
- private int mEdgeWidth;
+ private final int mEdgeWidth;
// The bottom gesture area height
- private int mBottomGestureHeight;
+ private final int mBottomGestureHeight;
// The slop to distinguish between horizontal and vertical motion
private final float mTouchSlop;
// Duration after which we consider the event as longpress.
@@ -97,7 +98,9 @@
mBottomGestureHeight =
ResourceUtils.getNavbarSize(ResourceUtils.NAVBAR_BOTTOM_GESTURE_SIZE, res);
- mEdgeWidth = ResourceUtils.getNavbarSize("config_backGestureInset", res);
+ int systemBackRegion = ResourceUtils.getNavbarSize("config_backGestureInset", res);
+ // System back region is 0 if gesture nav is not currently enabled.
+ mEdgeWidth = systemBackRegion == 0 ? Utilities.dpToPx(18) : systemBackRegion;
}
void setViewGroupParent(@Nullable ViewGroup parent) {
diff --git a/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialController.java b/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialController.java
index 2e580af..ff50a0e 100644
--- a/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialController.java
@@ -42,6 +42,11 @@
}
@Override
+ protected int getMockAppTaskThumbnailResId() {
+ return R.drawable.mock_webpage;
+ }
+
+ @Override
public void onBackGestureAttempted(BackGestureResult result) {
switch (mTutorialType) {
case HOME_NAVIGATION:
@@ -72,10 +77,13 @@
case HOME_NAVIGATION:
switch (result) {
case HOME_GESTURE_COMPLETED: {
+ mTutorialFragment.releaseGestureVideoView();
animateFakeTaskViewHome(finalVelocity, null);
showActionButton();
- showFeedback(R.string.home_gesture_feedback_complete,
- true);
+ int subtitleResId = mTutorialFragment.getNumSteps() == 1
+ ? R.string.home_gesture_feedback_complete_without_follow_up
+ : R.string.home_gesture_feedback_complete_with_follow_up;
+ showFeedback(subtitleResId, true);
break;
}
case HOME_NOT_STARTED_TOO_FAR_FROM_EDGE:
diff --git a/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialFragment.java b/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialFragment.java
index ebddc69..47964d2 100644
--- a/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialFragment.java
+++ b/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialFragment.java
@@ -25,7 +25,13 @@
@Nullable
@Override
Integer getFeedbackVideoResId() {
- return R.drawable.gesture_tutorial_home;
+ return R.drawable.gesture_tutorial_motion_home;
+ }
+
+ @Nullable
+ @Override
+ Integer getGestureVideoResId() {
+ return R.drawable.gesture_tutorial_loop_home;
}
@Override
diff --git a/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialController.java b/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialController.java
index 06610e6..7b0961e 100644
--- a/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialController.java
@@ -49,6 +49,11 @@
}
@Override
+ protected int getMockAppTaskThumbnailResId() {
+ return R.drawable.mock_conversations_list;
+ }
+
+ @Override
public void onBackGestureAttempted(BackGestureResult result) {
switch (mTutorialType) {
case OVERVIEW_NAVIGATION:
@@ -90,6 +95,7 @@
showFeedback(R.string.overview_gesture_feedback_swipe_too_far_from_edge);
break;
case OVERVIEW_GESTURE_COMPLETED:
+ mTutorialFragment.releaseGestureVideoView();
PendingAnimation anim = new PendingAnimation(300);
anim.setFloat(mTaskViewSwipeUpAnimation
.getCurrentShift(), AnimatedFloat.VALUE, 1, ACCEL);
@@ -97,7 +103,10 @@
animset.start();
mRunningWindowAnim = SwipeUpAnimationLogic.RunningWindowAnim.wrap(animset);
onMotionPaused(true /*arbitrary value*/);
- showFeedback(R.string.overview_gesture_feedback_complete, true);
+ int subtitleResId = mTutorialFragment.getNumSteps() == 1
+ ? R.string.overview_gesture_feedback_complete_without_follow_up
+ : R.string.overview_gesture_feedback_complete_with_follow_up;
+ showFeedback(subtitleResId, true);
break;
case HOME_OR_OVERVIEW_NOT_STARTED_WRONG_SWIPE_DIRECTION:
case HOME_OR_OVERVIEW_CANCELLED:
diff --git a/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialFragment.java b/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialFragment.java
index 86344ab..c919b96 100644
--- a/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialFragment.java
+++ b/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialFragment.java
@@ -25,7 +25,13 @@
@Nullable
@Override
Integer getFeedbackVideoResId() {
- return R.drawable.gesture_tutorial_overview;
+ return R.drawable.gesture_tutorial_motion_overview;
+ }
+
+ @Nullable
+ @Override
+ Integer getGestureVideoResId() {
+ return R.drawable.gesture_tutorial_loop_overview;
}
@Override
diff --git a/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java b/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java
index 1aa64fa..66e0400 100644
--- a/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java
@@ -43,7 +43,7 @@
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.InvariantDeviceProfile;
import com.android.launcher3.Utilities;
-import com.android.launcher3.anim.AnimationSuccessListener;
+import com.android.launcher3.anim.AnimatorListeners;
import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.anim.PendingAnimation;
import com.android.quickstep.AnimatedFloat;
@@ -156,7 +156,7 @@
fadeAnim.setViewAlpha(mFakePreviousTaskView, 0, ACCEL);
}
if (onEndRunnable != null) {
- fadeAnim.addListener(AnimationSuccessListener.forRunnable(onEndRunnable));
+ fadeAnim.addListener(AnimatorListeners.forSuccessCallback(onEndRunnable));
}
AnimatorSet animset = fadeAnim.buildAnim();
animset.setStartDelay(100);
@@ -174,7 +174,7 @@
anim.setViewAlpha(mFakePreviousTaskView, 0, ACCEL);
}
if (onEndRunnable != null) {
- anim.addListener(AnimationSuccessListener.forRunnable(onEndRunnable));
+ anim.addListener(AnimatorListeners.forSuccessCallback(onEndRunnable));
}
}
AnimatorSet animset = anim.buildAnim();
@@ -205,10 +205,10 @@
PendingAnimation fadeAnim = new PendingAnimation(300);
fadeAnim.setViewAlpha(mFakeIconView, 0, ACCEL);
if (onEndRunnable != null) {
- fadeAnim.addListener(AnimationSuccessListener.forRunnable(onEndRunnable));
+ fadeAnim.addListener(AnimatorListeners.forSuccessCallback(onEndRunnable));
}
AnimatorSet animset = fadeAnim.buildAnim();
- rectAnim.addAnimatorListener(AnimationSuccessListener.forRunnable(animset::start));
+ rectAnim.addAnimatorListener(AnimatorListeners.forSuccessCallback(animset::start));
mRunningWindowAnim = RunningWindowAnim.wrap(rectAnim);
}
diff --git a/quickstep/src/com/android/quickstep/interaction/TutorialController.java b/quickstep/src/com/android/quickstep/interaction/TutorialController.java
index 55972ad..f9d5c94 100644
--- a/quickstep/src/com/android/quickstep/interaction/TutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/TutorialController.java
@@ -38,7 +38,7 @@
import androidx.appcompat.content.res.AppCompatResources;
import com.android.launcher3.R;
-import com.android.launcher3.anim.AnimationSuccessListener;
+import com.android.launcher3.anim.AnimatorListeners;
import com.android.launcher3.views.ClipIconView;
import com.android.quickstep.interaction.EdgeBackGestureHandler.BackGestureAttemptCallback;
import com.android.quickstep.interaction.NavBarGestureHandler.NavBarGestureAttemptCallback;
@@ -62,6 +62,7 @@
final ImageButton mCloseButton;
final ViewGroup mFeedbackView;
final ImageView mFeedbackVideoView;
+ final ImageView mGestureVideoView;
final ImageView mFakeLauncherView;
final ClipIconView mFakeIconView;
final View mFakeTaskView;
@@ -84,6 +85,7 @@
mCloseButton.setOnClickListener(button -> showSkipTutorialDialog());
mFeedbackView = rootView.findViewById(R.id.gesture_tutorial_fragment_feedback_view);
mFeedbackVideoView = rootView.findViewById(R.id.gesture_tutorial_feedback_video);
+ mGestureVideoView = rootView.findViewById(R.id.gesture_tutorial_gesture_video);
mFakeLauncherView = rootView.findViewById(R.id.gesture_tutorial_fake_launcher_view);
mFakeIconView = rootView.findViewById(R.id.gesture_tutorial_fake_icon_view);
mFakeTaskView = rootView.findViewById(R.id.gesture_tutorial_fake_task_view);
@@ -139,7 +141,7 @@
}
void fadeTaskViewAndRun(Runnable r) {
- mFakeTaskView.animate().alpha(0).setListener(AnimationSuccessListener.forRunnable(r));
+ mFakeTaskView.animate().alpha(0).setListener(AnimatorListeners.forSuccessCallback(r));
}
@StringRes
@@ -173,8 +175,8 @@
/**
* Show feedback reflecting a failed gesture attempt.
**/
- void showFeedback(int subtitleResId, @Nullable Runnable successEndAction) {
- showFeedback(subtitleResId, successEndAction, false);
+ void showFeedback(int titleResId, int subtitleResId, @Nullable Runnable successEndAction) {
+ showFeedback(titleResId, subtitleResId, successEndAction, false);
}
/**
@@ -212,7 +214,8 @@
mHideFeedbackEndAction = successEndAction;
AnimatedVectorDrawable tutorialAnimation = mTutorialFragment.getTutorialAnimation();
- if (tutorialAnimation != null) {
+ AnimatedVectorDrawable gestureAnimation = mTutorialFragment.getGestureAnimation();
+ if (tutorialAnimation != null && gestureAnimation != null) {
if (successEndAction == null) {
if (tutorialAnimation.isRunning()) {
tutorialAnimation.reset();
@@ -223,6 +226,11 @@
public void onAnimationStart(Drawable drawable) {
super.onAnimationStart(drawable);
+ mGestureVideoView.setVisibility(View.GONE);
+ if (gestureAnimation.isRunning()) {
+ gestureAnimation.stop();
+ }
+
mFeedbackView.setTranslationY(
-mFeedbackView.getHeight() - mFeedbackView.getTop());
mFeedbackView.setVisibility(View.VISIBLE);
@@ -236,6 +244,9 @@
public void onAnimationEnd(Drawable drawable) {
super.onAnimationEnd(drawable);
+ mGestureVideoView.setVisibility(View.VISIBLE);
+ gestureAnimation.start();
+
mFeedbackView.removeCallbacks(mHideFeedbackRunnable);
mFeedbackView.post(mHideFeedbackRunnable);
@@ -348,8 +359,8 @@
mContext, getMockLauncherResId()));
mFakeTaskView.setBackground(AppCompatResources.getDrawable(
mContext, getMockAppTaskThumbnailResId()));
- mFakeTaskView.animate().alpha(1).setListener(AnimationSuccessListener.forRunnable(
- () -> mFakeTaskView.animate().cancel()));
+ mFakeTaskView.animate().alpha(1).setListener(
+ AnimatorListeners.forSuccessCallback(() -> mFakeTaskView.animate().cancel()));
mFakePreviousTaskView.setBackground(AppCompatResources.getDrawable(
mContext, getMockPreviousAppTaskThumbnailResId()));
mFakeIconView.setBackground(AppCompatResources.getDrawable(
diff --git a/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java b/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java
index b6663b8..0220f2d 100644
--- a/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java
+++ b/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java
@@ -51,8 +51,10 @@
EdgeBackGestureHandler mEdgeBackGestureHandler;
NavBarGestureHandler mNavBarGestureHandler;
private ImageView mFeedbackVideoView;
+ private ImageView mGestureVideoView;
@Nullable private AnimatedVectorDrawable mTutorialAnimation = null;
+ @Nullable private AnimatedVectorDrawable mGestureAnimation = null;
private boolean mIntroductionShown = false;
public static TutorialFragment newInstance(TutorialType tutorialType) {
@@ -96,11 +98,20 @@
return null;
}
+ @Nullable Integer getGestureVideoResId() {
+ return null;
+ }
+
@Nullable
AnimatedVectorDrawable getTutorialAnimation() {
return mTutorialAnimation;
}
+ @Nullable
+ AnimatedVectorDrawable getGestureAnimation() {
+ return mGestureAnimation;
+ }
+
abstract TutorialController createController(TutorialType type);
abstract Class<? extends TutorialController> getControllerClass();
@@ -135,6 +146,7 @@
});
mRootView.setOnTouchListener(this);
mFeedbackVideoView = mRootView.findViewById(R.id.gesture_tutorial_feedback_video);
+ mGestureVideoView = mRootView.findViewById(R.id.gesture_tutorial_gesture_video);
return mRootView;
}
@@ -162,7 +174,7 @@
boolean updateFeedbackVideo() {
Integer feedbackVideoResId = getFeedbackVideoResId();
- if (feedbackVideoResId == null || getContext() == null) {
+ if (feedbackVideoResId == null || getContext() == null || !updateGestureVideo()) {
return false;
}
mTutorialAnimation = (AnimatedVectorDrawable) getContext().getDrawable(feedbackVideoResId);
@@ -190,6 +202,29 @@
return true;
}
+ boolean updateGestureVideo() {
+ Integer gestureVideoResId = getGestureVideoResId();
+ if (gestureVideoResId == null || getContext() == null) {
+ return false;
+ }
+ mGestureAnimation = (AnimatedVectorDrawable) getContext().getDrawable(gestureVideoResId);
+
+ if (mGestureAnimation != null) {
+ mGestureAnimation.registerAnimationCallback(new Animatable2.AnimationCallback() {
+
+ @Override
+ public void onAnimationEnd(Drawable drawable) {
+ super.onAnimationEnd(drawable);
+
+ mGestureAnimation.start();
+ }
+ });
+ }
+ mGestureVideoView.setImageDrawable(mGestureAnimation);
+
+ return true;
+ }
+
void releaseFeedbackVideoView() {
if (mTutorialAnimation != null && mTutorialAnimation.isRunning()) {
mTutorialAnimation.stop();
@@ -198,6 +233,14 @@
mFeedbackVideoView.setVisibility(View.GONE);
}
+ void releaseGestureVideoView() {
+ if (mGestureAnimation != null && mGestureAnimation.isRunning()) {
+ mGestureAnimation.stop();
+ }
+
+ mGestureVideoView.setVisibility(View.GONE);
+ }
+
@Override
public void onResume() {
super.onResume();
diff --git a/quickstep/src/com/android/quickstep/util/RecentsOrientedState.java b/quickstep/src/com/android/quickstep/util/RecentsOrientedState.java
index d164c8c..e983f46 100644
--- a/quickstep/src/com/android/quickstep/util/RecentsOrientedState.java
+++ b/quickstep/src/com/android/quickstep/util/RecentsOrientedState.java
@@ -16,7 +16,6 @@
package com.android.quickstep.util;
-import static android.util.DisplayMetrics.DENSITY_DEVICE_STABLE;
import static android.view.OrientationEventListener.ORIENTATION_UNKNOWN;
import static android.view.Surface.ROTATION_0;
import static android.view.Surface.ROTATION_180;
@@ -31,7 +30,6 @@
import android.content.Context;
import android.content.SharedPreferences;
-import android.content.res.Resources;
import android.graphics.Matrix;
import android.graphics.Point;
import android.graphics.PointF;
@@ -46,7 +44,6 @@
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.InvariantDeviceProfile;
-import com.android.launcher3.R;
import com.android.launcher3.Utilities;
import com.android.launcher3.testing.TestProtocol;
import com.android.launcher3.touch.PagedOrientationHandler;
@@ -67,7 +64,8 @@
* This class has initial default state assuming the device and foreground app have
* no ({@link Surface#ROTATION_0} rotation.
*/
-public final class RecentsOrientedState implements SharedPreferences.OnSharedPreferenceChangeListener {
+public final class RecentsOrientedState implements
+ SharedPreferences.OnSharedPreferenceChangeListener {
private static final String TAG = "RecentsOrientedState";
private static final boolean DEBUG = false;
@@ -125,6 +123,7 @@
private int mFlags;
private int mPreviousRotation = ROTATION_0;
+ private boolean mListenersInitialized = false;
// Combined int which encodes the full state.
private int mStateId = 0;
@@ -152,19 +151,32 @@
mFlags = sizeStrategy.rotationSupportedByActivity
? FLAG_MULTIPLE_ORIENTATION_SUPPORTED_BY_ACTIVITY : 0;
- Resources res = context.getResources();
- int originalSmallestWidth = res.getConfiguration().smallestScreenWidthDp
- * res.getDisplayMetrics().densityDpi / DENSITY_DEVICE_STABLE;
- if (originalSmallestWidth < 600 && !mContext.getResources().getBoolean(
- R.bool.allow_rotation)) {
- mFlags |= FLAG_MULTIPLE_ORIENTATION_SUPPORTED_BY_DENSITY;
- }
mFlags |= FLAG_SWIPE_UP_NOT_RUNNING;
mSettingsCache = SettingsCache.INSTANCE.get(mContext);
initFlags();
}
/**
+ * Sets the device profile for the current state.
+ */
+ public void setDeviceProfile(DeviceProfile deviceProfile) {
+ boolean oldMultipleOrientationsSupported = isMultipleOrientationSupportedByDevice();
+ setFlag(FLAG_MULTIPLE_ORIENTATION_SUPPORTED_BY_DENSITY, !deviceProfile.allowRotation);
+ if (mListenersInitialized) {
+ boolean newMultipleOrientationsSupported = isMultipleOrientationSupportedByDevice();
+ // If isMultipleOrientationSupportedByDevice is changed, init or destroy listeners
+ // accordingly.
+ if (newMultipleOrientationsSupported != oldMultipleOrientationsSupported) {
+ if (newMultipleOrientationsSupported) {
+ initMultipleOrientationListeners();
+ } else {
+ destroyMultipleOrientationListeners();
+ }
+ }
+ }
+ }
+
+ /**
* Sets the rotation for the recents activity, which could affect the appearance of task view.
* @see #update(int, int)
*/
@@ -287,14 +299,24 @@
updateHomeRotationSetting();
}
+ private void initMultipleOrientationListeners() {
+ mSharedPrefs.registerOnSharedPreferenceChangeListener(this);
+ mSettingsCache.register(ROTATION_SETTING_URI, mRotationChangeListener);
+ }
+
+ private void destroyMultipleOrientationListeners() {
+ mSharedPrefs.unregisterOnSharedPreferenceChangeListener(this);
+ mSettingsCache.unregister(ROTATION_SETTING_URI, mRotationChangeListener);
+ }
+
/**
* Initializes any system values and registers corresponding change listeners. It must be
* paired with {@link #destroyListeners()} call
*/
public void initListeners() {
+ mListenersInitialized = true;
if (isMultipleOrientationSupportedByDevice()) {
- mSharedPrefs.registerOnSharedPreferenceChangeListener(this);
- mSettingsCache.register(ROTATION_SETTING_URI, mRotationChangeListener);
+ initMultipleOrientationListeners();
}
initFlags();
}
@@ -303,9 +325,9 @@
* Unregisters any previously registered listeners.
*/
public void destroyListeners() {
+ mListenersInitialized = false;
if (isMultipleOrientationSupportedByDevice()) {
- mSharedPrefs.unregisterOnSharedPreferenceChangeListener(this);
- mSettingsCache.unregister(ROTATION_SETTING_URI, mRotationChangeListener);
+ destroyMultipleOrientationListeners();
}
setRotationWatcherEnabled(false);
}
diff --git a/quickstep/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java b/quickstep/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java
index ab95138..0ea1fca 100644
--- a/quickstep/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java
+++ b/quickstep/src/com/android/quickstep/util/StaggeredWorkspaceAnim.java
@@ -89,8 +89,7 @@
int totalRows = grid.inv.numRows + (grid.isVerticalBarLayout() ? 0 : 2);
// Add animation for all the visible workspace pages
- workspace.getVisiblePages()
- .forEach(page -> addAnimationForPage((CellLayout) page, totalRows));
+ workspace.forEachVisiblePage(page -> addAnimationForPage((CellLayout) page, totalRows));
boolean workspaceClipChildren = workspace.getClipChildren();
boolean workspaceClipToPadding = workspace.getClipToPadding();
diff --git a/quickstep/src/com/android/quickstep/util/SwipePipToHomeAnimator.java b/quickstep/src/com/android/quickstep/util/SwipePipToHomeAnimator.java
index a1240e0..b5570a7 100644
--- a/quickstep/src/com/android/quickstep/util/SwipePipToHomeAnimator.java
+++ b/quickstep/src/com/android/quickstep/util/SwipePipToHomeAnimator.java
@@ -89,6 +89,7 @@
* different from the appBounds if user has swiped a certain distance and
* Launcher has performed transform on the leash.
* @param destinationBounds Bounds of the destination this animator ends to
+ * @param cornerRadius Corner radius in pixel value for PiP window
*/
public SwipePipToHomeAnimator(int taskId,
@NonNull ComponentName componentName,
@@ -97,6 +98,7 @@
@NonNull Rect appBounds,
@NonNull Rect startBounds,
@NonNull Rect destinationBounds,
+ int cornerRadius,
@NonNull View view) {
mTaskId = taskId;
mComponentName = componentName;
@@ -106,7 +108,7 @@
mDestinationBounds.set(destinationBounds);
mDestinationBoundsTransformed.set(mDestinationBounds);
mDestinationBoundsAnimation.set(mDestinationBounds);
- mSurfaceTransactionHelper = new PipSurfaceTransactionHelper();
+ mSurfaceTransactionHelper = new PipSurfaceTransactionHelper(cornerRadius);
if (sourceRectHint == null) {
mSourceHintRectInsets = null;
diff --git a/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java b/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java
index f578ad1..b15bbf3 100644
--- a/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java
+++ b/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java
@@ -112,6 +112,7 @@
public void setDp(DeviceProfile dp) {
mDp = dp;
mLayoutValid = false;
+ mOrientationState.setDeviceProfile(dp);
}
/**
diff --git a/quickstep/src/com/android/quickstep/views/FloatingWidgetView.java b/quickstep/src/com/android/quickstep/views/FloatingWidgetView.java
index ed54f10..121e094 100644
--- a/quickstep/src/com/android/quickstep/views/FloatingWidgetView.java
+++ b/quickstep/src/com/android/quickstep/views/FloatingWidgetView.java
@@ -57,6 +57,7 @@
private Runnable mEndRunnable;
private Runnable mFastFinishRunnable;
private Runnable mOnTargetChangeRunnable;
+ private boolean mAppTargetIsTranslucent;
public FloatingWidgetView(Context context) {
this(context, null);
@@ -142,10 +143,12 @@
}
private void init(DragLayer dragLayer, LauncherAppWidgetHostView originalView,
- RectF widgetBackgroundPosition, Size windowSize, float windowCornerRadius) {
+ RectF widgetBackgroundPosition, Size windowSize, float windowCornerRadius,
+ boolean appTargetIsTranslucent) {
mAppWidgetView = originalView;
mAppWidgetView.beginDeferringUpdates();
mBackgroundPosition = widgetBackgroundPosition;
+ mAppTargetIsTranslucent = appTargetIsTranslucent;
mEndRunnable = () -> finish(dragLayer);
mAppWidgetBackgroundView = RoundedCornerEnforcement.findBackground(mAppWidgetView);
@@ -155,11 +158,13 @@
getRelativePosition(mAppWidgetBackgroundView, dragLayer, mBackgroundPosition);
getRelativePosition(mAppWidgetBackgroundView, mAppWidgetView, mBackgroundOffset);
- mBackgroundView.init(mAppWidgetView, mAppWidgetBackgroundView, windowCornerRadius);
- // Layout call before GhostView creation so that the overlaid view isn't clipped
- layout(0, 0, windowSize.getWidth(), windowSize.getHeight());
- mForegroundOverlayView = GhostView.addGhost(mAppWidgetView, this);
- positionViews();
+ if (!mAppTargetIsTranslucent) {
+ mBackgroundView.init(mAppWidgetView, mAppWidgetBackgroundView, windowCornerRadius);
+ // Layout call before GhostView creation so that the overlaid view isn't clipped
+ layout(0, 0, windowSize.getWidth(), windowSize.getHeight());
+ mForegroundOverlayView = GhostView.addGhost(mAppWidgetView, this);
+ positionViews();
+ }
mListenerView.setListener(this::fastFinish);
dragLayer.addView(mListenerView);
@@ -179,7 +184,7 @@
*/
public void update(RectF backgroundPosition, float floatingWidgetAlpha, float foregroundAlpha,
float fallbackBackgroundAlpha, float cornerRadiusProgress) {
- if (isUninitialized()) return;
+ if (isUninitialized() || mAppTargetIsTranslucent) return;
setAlpha(floatingWidgetAlpha);
mBackgroundView.update(cornerRadiusProgress, fallbackBackgroundAlpha);
mAppWidgetView.setAlpha(foregroundAlpha);
@@ -203,13 +208,16 @@
backgroundParams.height = (int) mBackgroundPosition.height();
mBackgroundView.setLayoutParams(backgroundParams);
- sTmpMatrix.reset();
- float foregroundScale = mBackgroundPosition.width() / mAppWidgetBackgroundView.getWidth();
- sTmpMatrix.setTranslate(-mBackgroundOffset.left - mAppWidgetView.getLeft(),
- -mBackgroundOffset.top - mAppWidgetView.getTop());
- sTmpMatrix.postScale(foregroundScale, foregroundScale);
- sTmpMatrix.postTranslate(mBackgroundPosition.left, mBackgroundPosition.top);
- mForegroundOverlayView.setMatrix(sTmpMatrix);
+ if (mForegroundOverlayView != null) {
+ sTmpMatrix.reset();
+ float foregroundScale =
+ mBackgroundPosition.width() / mAppWidgetBackgroundView.getWidth();
+ sTmpMatrix.setTranslate(-mBackgroundOffset.left - mAppWidgetView.getLeft(),
+ -mBackgroundOffset.top - mAppWidgetView.getTop());
+ sTmpMatrix.postScale(foregroundScale, foregroundScale);
+ sTmpMatrix.postTranslate(mBackgroundPosition.left, mBackgroundPosition.top);
+ mForegroundOverlayView.setMatrix(sTmpMatrix);
+ }
}
private void finish(DragLayer dragLayer) {
@@ -254,7 +262,7 @@
*/
public static FloatingWidgetView getFloatingWidgetView(Launcher launcher,
LauncherAppWidgetHostView originalView, RectF widgetBackgroundPosition,
- Size windowSize, float windowCornerRadius) {
+ Size windowSize, float windowCornerRadius, boolean appTargetsAreTranslucent) {
final DragLayer dragLayer = launcher.getDragLayer();
ViewGroup parent = (ViewGroup) dragLayer.getParent();
FloatingWidgetView floatingView =
@@ -262,7 +270,7 @@
floatingView.recycle();
floatingView.init(dragLayer, originalView, widgetBackgroundPosition, windowSize,
- windowCornerRadius);
+ windowCornerRadius, appTargetsAreTranslucent);
parent.addView(floatingView);
return floatingView;
}
diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java
index cf94d68..7d19f6c 100644
--- a/quickstep/src/com/android/quickstep/views/RecentsView.java
+++ b/quickstep/src/com/android/quickstep/views/RecentsView.java
@@ -63,7 +63,9 @@
import android.app.ActivityManager.RunningTaskInfo;
import android.content.Context;
import android.content.res.Configuration;
+import android.graphics.BlendMode;
import android.graphics.Canvas;
+import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Point;
import android.graphics.PointF;
@@ -98,6 +100,7 @@
import androidx.annotation.Nullable;
import androidx.annotation.UiThread;
+import androidx.core.graphics.ColorUtils;
import com.android.launcher3.BaseActivity;
import com.android.launcher3.BaseActivity.MultiWindowModeChangedListener;
@@ -108,6 +111,7 @@
import com.android.launcher3.R;
import com.android.launcher3.Utilities;
import com.android.launcher3.anim.AnimationSuccessListener;
+import com.android.launcher3.anim.AnimatorListeners;
import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.anim.PendingAnimation;
import com.android.launcher3.anim.SpringProperty;
@@ -117,7 +121,6 @@
import com.android.launcher3.statehandlers.DepthController;
import com.android.launcher3.statemanager.BaseState;
import com.android.launcher3.statemanager.StatefulActivity;
-import com.android.launcher3.testing.TestProtocol;
import com.android.launcher3.touch.OverScroll;
import com.android.launcher3.touch.PagedOrientationHandler;
import com.android.launcher3.util.DynamicResource;
@@ -245,6 +248,24 @@
};
/**
+ * Can be used to tint the color of the RecentsView to simulate a scrim that can views
+ * excluded from. Really should be a proper scrim.
+ * TODO(b/187528071): Remove this and replace with a real scrim.
+ */
+ private static final FloatProperty<RecentsView> COLOR_TINT =
+ new FloatProperty<RecentsView>("colorTint") {
+ @Override
+ public void setValue(RecentsView recentsView, float v) {
+ recentsView.setColorTint(v);
+ }
+
+ @Override
+ public Float get(RecentsView recentsView) {
+ return recentsView.getColorTint();
+ }
+ };
+
+ /**
* Even though {@link TaskView} has distinct offsetTranslationX/Y and resistance property, they
* are currently both used to apply secondary translation. Should their use cases change to be
* more specific, we'd want to create a similar FloatProperty just for a TaskView's
@@ -405,6 +426,10 @@
// The GestureEndTarget that is still in progress.
protected GestureState.GestureEndTarget mCurrentGestureEndTarget;
+ // TODO(b/187528071): Remove these and replace with a real scrim.
+ private float mColorTint;
+ private final int mTintingColor;
+
private int mOverScrollShift = 0;
/**
@@ -470,6 +495,7 @@
private final PinnedStackAnimationListener mIPipAnimationListener =
new PinnedStackAnimationListener();
+ private int mPipCornerRadius;
// Used to keep track of the last requested task list id, so that we do not request to load the
// tasks again if we have already requested it and the task list has not changed
@@ -617,6 +643,8 @@
mLiveTileTaskViewSimulator.recentsViewScale.value = 1;
mLiveTileTaskViewSimulator.setOrientationState(mOrientationState);
mLiveTileTaskViewSimulator.setDrawsBelowRecents(true);
+
+ mTintingColor = getForegroundScrimDimColor(context);
}
public OverScroller getScroller() {
@@ -769,7 +797,7 @@
mSyncTransactionApplier = new SurfaceTransactionApplier(this);
mLiveTileParams.setSyncTransactionApplier(mSyncTransactionApplier);
RecentsModel.INSTANCE.get(getContext()).addThumbnailChangeListener(this);
- mIPipAnimationListener.setActivity(mActivity);
+ mIPipAnimationListener.setActivityAndRecentsView(mActivity, this);
SystemUiProxy.INSTANCE.get(getContext()).setPinnedStackAnimationListener(
mIPipAnimationListener);
mOrientationState.initListeners();
@@ -789,7 +817,7 @@
RecentsModel.INSTANCE.get(getContext()).removeThumbnailChangeListener(this);
SystemUiProxy.INSTANCE.get(getContext()).setPinnedStackAnimationListener(null);
SplitScreenBounds.INSTANCE.removeOnChangeListener(this);
- mIPipAnimationListener.setActivity(null);
+ mIPipAnimationListener.setActivityAndRecentsView(null, null);
mOrientationState.destroyListeners();
mTaskOverlayFactory.removeListeners();
}
@@ -1061,12 +1089,6 @@
}
protected void applyLoadPlan(ArrayList<Task> tasks) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "applyLoadPlan: taskCount=" + tasks.size());
- for (Task t : tasks) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "\t" + t);
- }
- }
if (mPendingAnimation != null) {
mPendingAnimation.addEndListener(success -> applyLoadPlan(tasks));
return;
@@ -1128,11 +1150,6 @@
resetTaskVisuals();
onTaskStackUpdated();
updateEnabledOverlays();
-
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "applyLoadPlan: taskViewCount="
- + getTaskViewCount());
- }
}
private boolean isModal() {
@@ -1153,12 +1170,6 @@
}
public int getTaskViewCount() {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "getTaskViewCount:"
- + " numChildren=" + getChildCount()
- + " start=" + mTaskViewStartIndex
- + " clearAll=" + indexOfChild(mClearAllButton));
- }
int taskViewCount = getChildCount() - mTaskViewStartIndex;
if (indexOfChild(mClearAllButton) != -1) {
taskViewCount--;
@@ -1204,6 +1215,7 @@
loadVisibleTaskData(TaskView.FLAG_UPDATE_ALL);
setTaskModalness(0);
updateVerticalPageOffsets();
+ setColorTint(0);
}
public void setFullscreenProgress(float fullscreenProgress) {
@@ -1233,13 +1245,51 @@
@Override
public void setInsets(Rect insets) {
mInsets.set(insets);
- resetPaddingFromTaskSize();
+
+ // Update DeviceProfile dependant state.
DeviceProfile dp = mActivity.getDeviceProfile();
+ setOverviewGridEnabled(
+ mActivity.getStateManager().getState().displayOverviewTasksAsGrid(dp));
+
+ // Propagate DeviceProfile change event.
mLiveTileTaskViewSimulator.setDp(dp);
mActionsView.setDp(dp);
+ mOrientationState.setDeviceProfile(dp);
+
+ // Update RecentsView adn TaskView's DeviceProfile dependent layout.
+ updateOrientationHandler();
}
- private void resetPaddingFromTaskSize() {
+ private void updateOrientationHandler() {
+ // Handle orientation changes.
+ mOrientationHandler = mOrientationState.getOrientationHandler();
+ mIsRtl = mOrientationHandler.getRecentsRtlSetting(getResources());
+ setLayoutDirection(mIsRtl
+ ? View.LAYOUT_DIRECTION_RTL
+ : View.LAYOUT_DIRECTION_LTR);
+ mClearAllButton.setLayoutDirection(mIsRtl
+ ? View.LAYOUT_DIRECTION_LTR
+ : View.LAYOUT_DIRECTION_RTL);
+ mClearAllButton.setRotation(mOrientationHandler.getDegreesRotated());
+ mActivity.getDragLayer().recreateControllers();
+ boolean isInLandscape = mOrientationState.getTouchRotation() != ROTATION_0
+ || mOrientationState.getRecentsActivityRotation() != ROTATION_0;
+ mActionsView.updateHiddenFlags(HIDDEN_NON_ZERO_ROTATION,
+ !mOrientationState.canRecentsActivityRotate() && isInLandscape);
+
+ // Update TaskView's DeviceProfile dependent layout.
+ updateChildTaskOrientations();
+
+ // Recalculate DeviceProfile dependent layout.
+ updateSizeAndPadding();
+
+ requestLayout();
+ // Reapply the current page to update page scrolls.
+ setCurrentPage(mCurrentPage);
+ }
+
+ // Update task size and padding that are dependent on DeviceProfile and insets.
+ private void updateSizeAndPadding() {
DeviceProfile dp = mActivity.getDeviceProfile();
getTaskSize(mTempRect);
mTaskWidth = mTempRect.width();
@@ -1623,7 +1673,7 @@
return;
}
AnimatorSet pa = setRecentsChangedOrientation(true);
- pa.addListener(AnimationSuccessListener.forRunnable(() -> {
+ pa.addListener(AnimatorListeners.forSuccessCallback(() -> {
setLayoutRotation(newRotation, mOrientationState.getDisplayRotation());
mActivity.getDragLayer().recreateControllers();
updateChildTaskOrientations();
@@ -2596,28 +2646,6 @@
}
}
- private void updateOrientationHandler() {
- mOrientationHandler = mOrientationState.getOrientationHandler();
- mIsRtl = mOrientationHandler.getRecentsRtlSetting(getResources());
- setLayoutDirection(mIsRtl
- ? View.LAYOUT_DIRECTION_RTL
- : View.LAYOUT_DIRECTION_LTR);
- mClearAllButton.setLayoutDirection(mIsRtl
- ? View.LAYOUT_DIRECTION_LTR
- : View.LAYOUT_DIRECTION_RTL);
- mClearAllButton.setRotation(mOrientationHandler.getDegreesRotated());
- mActivity.getDragLayer().recreateControllers();
- boolean isInLandscape = mOrientationState.getTouchRotation() != ROTATION_0
- || mOrientationState.getRecentsActivityRotation() != ROTATION_0;
- mActionsView.updateHiddenFlags(HIDDEN_NON_ZERO_ROTATION,
- !mOrientationState.canRecentsActivityRotate() && isInLandscape);
- updateChildTaskOrientations();
- resetPaddingFromTaskSize();
- requestLayout();
- // Reapply the current page to update page scrolls.
- setCurrentPage(mCurrentPage);
- }
-
public RecentsOrientedState getPagedViewOrientedState() {
return mOrientationState;
}
@@ -3384,6 +3412,11 @@
}
public void finishRecentsAnimation(boolean toRecents, Runnable onFinishComplete) {
+ finishRecentsAnimation(toRecents, true /* shouldPip */, onFinishComplete);
+ }
+
+ public void finishRecentsAnimation(boolean toRecents, boolean shouldPip,
+ Runnable onFinishComplete) {
if (!toRecents && LIVE_TILE.get()) {
// Reset the minimized state since we force-toggled the minimized state when entering
// overview, but never actually finished the recents animation. This is a catch all for
@@ -3401,6 +3434,13 @@
return;
}
+ final boolean sendUserLeaveHint = toRecents && shouldPip;
+ if (sendUserLeaveHint) {
+ // Notify the SysUI to use fade-in animation when entering PiP from live tile.
+ final SystemUiProxy systemUiProxy = SystemUiProxy.INSTANCE.get(getContext());
+ systemUiProxy.notifySwipeToHomeFinished();
+ systemUiProxy.setShelfHeight(true, mActivity.getDeviceProfile().hotseatBarSizePx);
+ }
mRecentsAnimationController.finish(toRecents, () -> {
if (onFinishComplete != null) {
onFinishComplete.run();
@@ -3412,7 +3452,7 @@
// taps on QSB (3) user goes back to Overview and launch the most recent task.
setCurrentTask(-1);
mRecentsAnimationController = null;
- });
+ }, sendUserLeaveHint);
}
public void setDisallowScrollToClearAll(boolean disallowScrollToClearAll) {
@@ -3642,6 +3682,12 @@
* capturing the snapshot at the same time.
*/
public void switchToScreenshot(Runnable onFinishRunnable) {
+ if (mRecentsAnimationController == null) {
+ if (onFinishRunnable != null) {
+ onFinishRunnable.run();
+ }
+ return;
+ }
switchToScreenshot(mRunningTaskId == -1 ? null
: mRecentsAnimationController.screenshotTask(mRunningTaskId), onFinishRunnable);
}
@@ -3691,7 +3737,6 @@
public void onSecondaryWindowBoundsChanged() {
// Invalidate the task view size
setInsets(mInsets);
- requestLayout();
}
/**
@@ -3713,9 +3758,34 @@
* tasks to be dimmed while other elements in the recents view are left alone.
*/
public void showForegroundScrim(boolean show) {
+ ObjectAnimator anim = ObjectAnimator.ofFloat(this, COLOR_TINT, show ? 0.5f : 0f);
+ anim.setAutoCancel(true);
+ anim.start();
+ }
+
+ /** Tint the RecentsView and TaskViews in to simulate a scrim. */
+ // TODO(b/187528071): Replace this tinting with a scrim on top of RecentsView
+ private void setColorTint(float tintAmount) {
+ mColorTint = tintAmount;
+
for (int i = 0; i < getTaskViewCount(); i++) {
- getTaskViewAt(i).showColorTint(show);
+ getTaskViewAt(i).setColorTint(mColorTint, mTintingColor);
}
+
+ Drawable scrimBg = mActivity.getScrimView().getBackground();
+ if (scrimBg != null) {
+ if (tintAmount == 0f) {
+ scrimBg.setTintList(null);
+ } else {
+ scrimBg.setTintBlendMode(BlendMode.SRC_OVER);
+ scrimBg.setTint(
+ ColorUtils.setAlphaComponent(mTintingColor, (int) (255 * tintAmount)));
+ }
+ }
+ }
+
+ private float getColorTint() {
+ return mColorTint;
}
private boolean showAsGrid() {
@@ -3759,6 +3829,14 @@
mScrollListeners.remove(listener);
}
+ /**
+ * @return Corner radius in pixel value for PiP window, which is updated via
+ * {@link #mIPipAnimationListener}
+ */
+ public int getPipCornerRadius() {
+ return mPipCornerRadius;
+ }
+
@Override
protected void onScrollChanged(int l, int t, int oldl, int oldt) {
super.onScrollChanged(l, t, oldl, oldt);
@@ -3775,9 +3853,11 @@
private static class PinnedStackAnimationListener<T extends BaseActivity> extends
IPipAnimationListener.Stub {
private T mActivity;
+ private RecentsView mRecentsView;
- public void setActivity(T activity) {
+ public void setActivityAndRecentsView(T activity, RecentsView recentsView) {
mActivity = activity;
+ mRecentsView = recentsView;
}
@Override
@@ -3790,5 +3870,19 @@
}
});
}
+
+ @Override
+ public void onPipCornerRadiusChanged(int cornerRadius) {
+ if (mRecentsView != null) {
+ mRecentsView.mPipCornerRadius = cornerRadius;
+ }
+ }
+ }
+
+ /** Get the color used for foreground scrimming the RecentsView for sharing. */
+ public static int getForegroundScrimDimColor(Context context) {
+ int baseColor = Themes.getAttrColor(context, R.attr.overviewScrimColor);
+ // The Black blending is temporary until we have the proper color token.
+ return ColorUtils.blendARGB(Color.BLACK, baseColor, 0.25f);
}
}
diff --git a/quickstep/src/com/android/quickstep/views/TaskThumbnailView.java b/quickstep/src/com/android/quickstep/views/TaskThumbnailView.java
index 685f725..5b8d4ce 100644
--- a/quickstep/src/com/android/quickstep/views/TaskThumbnailView.java
+++ b/quickstep/src/com/android/quickstep/views/TaskThumbnailView.java
@@ -53,7 +53,6 @@
import com.android.launcher3.uioverrides.plugins.PluginManagerWrapper;
import com.android.launcher3.util.MainThreadInitializedObject;
import com.android.launcher3.util.SystemUiController;
-import com.android.launcher3.util.Themes;
import com.android.quickstep.TaskOverlayFactory.TaskOverlay;
import com.android.quickstep.views.TaskView.FullscreenDrawParams;
import com.android.systemui.plugins.OverviewScreenshotActions;
@@ -121,7 +120,7 @@
// Initialize with placeholder value. It is overridden later by TaskView
mFullscreenParams = TEMP_PARAMS.get(context);
- mDimColor = Themes.getColorBackgroundFloating(context);
+ mDimColor = RecentsView.getForegroundScrimDimColor(context);
mDimmingPaintAfterClearing.setColor(mDimColor);
}
diff --git a/quickstep/src/com/android/quickstep/views/TaskView.java b/quickstep/src/com/android/quickstep/views/TaskView.java
index 6f3aade..f8be5b6 100644
--- a/quickstep/src/com/android/quickstep/views/TaskView.java
+++ b/quickstep/src/com/android/quickstep/views/TaskView.java
@@ -32,7 +32,6 @@
import static com.android.launcher3.Utilities.comp;
import static com.android.launcher3.Utilities.getDescendantCoordRelativeToAncestor;
import static com.android.launcher3.anim.Interpolators.ACCEL_DEACCEL;
-import static com.android.launcher3.anim.Interpolators.EXAGGERATED_EASE;
import static com.android.launcher3.anim.Interpolators.FAST_OUT_SLOW_IN;
import static com.android.launcher3.anim.Interpolators.LINEAR;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASK_ICON_TAP_OR_LONGPRESS;
@@ -65,6 +64,7 @@
import android.view.ViewGroup;
import android.view.ViewOutlineProvider;
import android.view.accessibility.AccessibilityNodeInfo;
+import android.view.animation.Interpolator;
import android.widget.FrameLayout;
import android.widget.Toast;
@@ -88,7 +88,6 @@
import com.android.launcher3.util.ComponentKey;
import com.android.launcher3.util.RunnableList;
import com.android.launcher3.util.SplitConfigurationOptions.SplitPositionOption;
-import com.android.launcher3.util.Themes;
import com.android.launcher3.util.TransformingTouchDelegate;
import com.android.launcher3.util.ViewPool.Reusable;
import com.android.quickstep.RecentsModel;
@@ -147,6 +146,9 @@
public static final long SCALE_ICON_DURATION = 120;
private static final long DIM_ANIM_DURATION = 700;
+
+ private static final Interpolator FULLSCREEN_INTERPOLATOR = ACCEL_DEACCEL;
+
/**
* This technically can be a vanilla {@link TouchDelegate} class, however that class requires
* setting the touch bounds at construction, so we'd repeatedly be created many instances
@@ -328,19 +330,6 @@
}
};
- private static final FloatProperty<TaskView> COLOR_TINT =
- new FloatProperty<TaskView>("colorTint") {
- @Override
- public void setValue(TaskView taskView, float v) {
- taskView.setColorTint(v);
- }
-
- @Override
- public Float get(TaskView taskView) {
- return taskView.getColorTint();
- }
- };
-
private final TaskOutlineProvider mOutlineProvider;
private Task mTask;
@@ -393,11 +382,6 @@
private final float[] mIconCenterCoords = new float[2];
private final float[] mChipCenterCoords = new float[2];
- // Colored tint for the task view and all its supplementary views (like the task icon and well
- // being banner.
- private final int mTintingColor;
- private float mTintAmount;
-
private boolean mIsClickableAsLiveTile = true;
public TaskView(Context context) {
@@ -419,8 +403,6 @@
mOutlineProvider = new TaskOutlineProvider(getContext(), mCurrentFullscreenParams,
mActivity.getDeviceProfile().overviewTaskThumbnailTopMarginPx);
setOutlineProvider(mOutlineProvider);
-
- mTintingColor = Themes.getColorBackgroundFloating(context);
}
/**
@@ -864,7 +846,7 @@
setTranslationZ(0);
setAlpha(mStableAlpha);
setIconScaleAndDim(1);
- setColorTint(0);
+ setColorTint(0, 0);
}
public void setStableAlpha(float parentAlpha) {
@@ -982,7 +964,7 @@
private void applyScale() {
float scale = 1;
- float fullScreenProgress = EXAGGERATED_EASE.getInterpolation(mFullscreenProgress);
+ float fullScreenProgress = FULLSCREEN_INTERPOLATOR.getInterpolation(mFullscreenProgress);
scale *= Utilities.mapRange(fullScreenProgress, 1f, mFullscreenScale);
setScaleX(scale);
setScaleY(scale);
@@ -1425,7 +1407,7 @@
}
private float getFullscreenTrans(float endTranslation) {
- float progress = ACCEL_DEACCEL.getInterpolation(mFullscreenProgress);
+ float progress = FULLSCREEN_INTERPOLATOR.getInterpolation(mFullscreenProgress);
return Utilities.mapRange(progress, 0, endTranslation);
}
@@ -1472,25 +1454,13 @@
getRecentsView().initiateSplitSelect(this, splitPositionOption);
}
- private void setColorTint(float amount) {
- mTintAmount = amount;
- mSnapshotView.setDimAlpha(mTintAmount);
- mIconView.setIconColorTint(mTintingColor, mTintAmount);
- mDigitalWellBeingToast.setBannerColorTint(mTintingColor, mTintAmount);
- }
-
- private float getColorTint() {
- return mTintAmount;
- }
-
/**
- * Show the task view with a color tint (animates value).
+ * Set a color tint on the snapshot and supporting views.
*/
- public void showColorTint(boolean enable) {
- ObjectAnimator tintAnimator = ObjectAnimator.ofFloat(
- this, COLOR_TINT, enable ? MAX_PAGE_SCRIM_ALPHA : 0);
- tintAnimator.setAutoCancel(true);
- tintAnimator.start();
+ public void setColorTint(float amount, int tintColor) {
+ mSnapshotView.setDimAlpha(amount);
+ mIconView.setIconColorTint(tintColor, amount);
+ mDigitalWellBeingToast.setBannerColorTint(tintColor, amount);
}
/**
diff --git a/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java b/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java
index f93d87c..9630d27 100644
--- a/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java
+++ b/quickstep/tests/src/com/android/quickstep/FallbackRecentsTest.java
@@ -62,6 +62,7 @@
import com.android.quickstep.views.RecentsView;
import org.junit.After;
+import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
@@ -142,10 +143,19 @@
}
}
+ @Before
+ public void setUp() {
+ mLauncher.onTestStart();
+ }
+
@After
- public void verifyLauncherState() {
- // Limits UI tests affecting tests running after them.
- AbstractQuickStepTest.checkDetectedLeaks(mLauncher);
+ public void tearDown() {
+ try {
+ // Limits UI tests affecting tests running after them.
+ AbstractQuickStepTest.checkDetectedLeaks(mLauncher);
+ } finally {
+ mLauncher.onTestFinish();
+ }
}
// b/143488140
@@ -178,13 +188,13 @@
protected <T> T getFromRecents(Function<RecentsActivity, T> f) {
if (!TestHelpers.isInLauncherProcess()) return null;
if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "getFromRecents");
+ Log.d(TestProtocol.FALLBACK_ACTIVITY_NO_SET, "getFromRecents");
}
Object[] result = new Object[1];
Wait.atMost("Failed to get from recents", () -> MAIN_EXECUTOR.submit(() -> {
RecentsActivity activity = RecentsActivity.ACTIVITY_TRACKER.getCreatedActivity();
if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "activity=" + activity);
+ Log.d(TestProtocol.FALLBACK_ACTIVITY_NO_SET, "activity=" + activity);
}
if (activity == null) {
return false;
@@ -212,10 +222,6 @@
BaseOverview overview = mLauncher.getBackground().switchToOverview();
executeOnRecents(recents -> {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.GET_RECENTS_FAILED, "isLoading=" +
- recents.<RecentsView>getOverviewPanel().isLoadingTasks());
- }
assertTrue("Don't have at least 3 tasks", getTaskCount(recents) >= 3);
});
diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java b/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java
index a700e16..a5038a1 100644
--- a/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java
+++ b/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java
@@ -189,12 +189,10 @@
@NavigationModeSwitch
@PortraitLandscape
public void testSwitchToOverview() throws Exception {
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "testSwitchToOverview");
assertNotNull("Workspace.switchToOverview() returned null",
mLauncher.pressHome().switchToOverview());
assertTrue("Launcher internal state didn't switch to Overview",
isInState(() -> LauncherState.OVERVIEW));
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "testSwitchToOverview finished");
}
@Test
diff --git a/res/color/all_apps_tab_text.xml b/res/color/all_apps_tab_text.xml
index 0c9acf9..4ddb277 100644
--- a/res/color/all_apps_tab_text.xml
+++ b/res/color/all_apps_tab_text.xml
@@ -14,6 +14,6 @@
limitations under the License.
-->
<selector xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:color="@android:color/white" android:state_selected="true"/>
+ <item android:color="?android:attr/textColorPrimaryInverse" android:state_selected="true"/>
<item android:color="?android:attr/textColorTertiary"/>
</selector>
\ No newline at end of file
diff --git a/res/drawable/add_item_dialog_background.xml b/res/drawable/add_item_dialog_background.xml
index 04bde8f..16a0767 100644
--- a/res/drawable/add_item_dialog_background.xml
+++ b/res/drawable/add_item_dialog_background.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
- <solid android:color="?android:attr/colorBackground" />
+ <solid android:color="@color/widgets_picker_surface" />
<corners
android:topLeftRadius="?android:attr/dialogCornerRadius"
android:topRightRadius="?android:attr/dialogCornerRadius" />
diff --git a/res/drawable/deep_shortcuts_text_placeholder.xml b/res/drawable/deep_shortcuts_text_placeholder.xml
index 99da50f..5820d6b 100644
--- a/res/drawable/deep_shortcuts_text_placeholder.xml
+++ b/res/drawable/deep_shortcuts_text_placeholder.xml
@@ -15,7 +15,7 @@
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
- <solid android:color="?attr/popupColorSecondary" />
+ <solid android:color="?attr/popupColorPrimary" />
<corners android:radius="8dp" />
<size android:height="16dp" />
</shape>
diff --git a/res/drawable/ic_deepshortcut_placeholder.xml b/res/drawable/ic_deepshortcut_placeholder.xml
index 3fa8506..16e7cf3 100644
--- a/res/drawable/ic_deepshortcut_placeholder.xml
+++ b/res/drawable/ic_deepshortcut_placeholder.xml
@@ -15,6 +15,6 @@
limitations under the License.
-->
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
- <background android:drawable="?attr/popupColorSecondary"/>
- <foreground android:drawable="?attr/popupColorSecondary"/>
+ <background android:drawable="?attr/popupColorPrimary"/>
+ <foreground android:drawable="?attr/popupColorPrimary"/>
</adaptive-icon>
diff --git a/res/layout/add_item_confirmation_activity.xml b/res/layout/add_item_confirmation_activity.xml
index 7c2f25b..00d148f 100644
--- a/res/layout/add_item_confirmation_activity.xml
+++ b/res/layout/add_item_confirmation_activity.xml
@@ -21,6 +21,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="24dp"
+ android:theme="?attr/widgetsTheme"
android:orientation="vertical">
<TextView
@@ -43,6 +44,8 @@
android:paddingVertical="8dp"
android:text="@string/add_item_request_drag_hint"
android:textSize="14sp"
+ android:textColor="?android:attr/textColorSecondary"
+ android:alpha="0.7"
android:importantForAccessibility="no"/>
<include layout="@layout/widget_cell"
diff --git a/res/layout/all_apps_personal_work_tabs.xml b/res/layout/all_apps_personal_work_tabs.xml
index cefd0ab..750e101 100644
--- a/res/layout/all_apps_personal_work_tabs.xml
+++ b/res/layout/all_apps_personal_work_tabs.xml
@@ -35,7 +35,7 @@
android:background="?android:attr/selectableItemBackground"
android:text="@string/all_apps_personal_tab"
android:textColor="@color/all_apps_tab_text"
- android:textSize="14sp" />
+ android:textSize="16sp" />
<Button
android:id="@+id/tab_work"
@@ -45,5 +45,5 @@
android:background="?android:attr/selectableItemBackground"
android:text="@string/all_apps_work_tab"
android:textColor="@color/all_apps_tab_text"
- android:textSize="14sp" />
+ android:textSize="16sp" />
</com.android.launcher3.workprofile.PersonalWorkSlidingTabStrip>
\ No newline at end of file
diff --git a/res/layout/deep_shortcut.xml b/res/layout/deep_shortcut.xml
index 0d11b50..b175d17 100644
--- a/res/layout/deep_shortcut.xml
+++ b/res/layout/deep_shortcut.xml
@@ -19,6 +19,7 @@
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:layout_width="@dimen/bg_popup_item_width"
android:layout_height="@dimen/bg_popup_item_height"
+ android:elevation="@dimen/deep_shortcuts_elevation"
android:background="@drawable/middle_item_primary"
android:theme="@style/PopupItem" >
diff --git a/res/layout/longpress_options_menu.xml b/res/layout/longpress_options_menu.xml
index 3898365..d2f7a66 100644
--- a/res/layout/longpress_options_menu.xml
+++ b/res/layout/longpress_options_menu.xml
@@ -20,6 +20,5 @@
android:layout_height="wrap_content"
android:clipToPadding="false"
android:clipChildren="false"
- android:elevation="@dimen/deep_shortcuts_elevation"
android:importantForAccessibility="yes"
android:orientation="vertical" />
diff --git a/res/layout/popup_container.xml b/res/layout/popup_container.xml
index 04822fd..7c78e44 100644
--- a/res/layout/popup_container.xml
+++ b/res/layout/popup_container.xml
@@ -21,7 +21,6 @@
android:layout_height="wrap_content"
android:clipToPadding="false"
android:clipChildren="false"
- android:elevation="@dimen/deep_shortcuts_elevation"
android:orientation="vertical">
<LinearLayout
android:id="@+id/notification_container"
@@ -29,5 +28,6 @@
android:layout_height="wrap_content"
android:visibility="gone"
android:background="?attr/popupColorPrimary"
+ android:elevation="@dimen/deep_shortcuts_elevation"
android:orientation="vertical"/>
</com.android.launcher3.popup.PopupContainerWithArrow>
\ No newline at end of file
diff --git a/res/layout/system_shortcut.xml b/res/layout/system_shortcut.xml
index 9f45f30..6337fae 100644
--- a/res/layout/system_shortcut.xml
+++ b/res/layout/system_shortcut.xml
@@ -19,6 +19,7 @@
xmlns:launcher="http://schemas.android.com/apk/res-auto"
android:layout_width="@dimen/bg_popup_item_width"
android:layout_height="@dimen/bg_popup_item_height"
+ android:elevation="@dimen/deep_shortcuts_elevation"
android:background="@drawable/middle_item_primary"
android:theme="@style/PopupItem" >
diff --git a/res/layout/system_shortcut_icons.xml b/res/layout/system_shortcut_icons.xml
index f992248..775a45f 100644
--- a/res/layout/system_shortcut_icons.xml
+++ b/res/layout/system_shortcut_icons.xml
@@ -21,7 +21,8 @@
android:layout_height="@dimen/system_shortcut_header_height"
android:orientation="horizontal"
android:gravity="end|center_vertical"
- android:background="@drawable/single_item_secondary"
+ android:background="@drawable/single_item_primary"
+ android:elevation="@dimen/deep_shortcuts_elevation"
android:clipToPadding="true">
<Space android:layout_width="0dp"
diff --git a/res/layout/widgets_full_sheet_paged_view.xml b/res/layout/widgets_full_sheet_paged_view.xml
index e3d34f6..580ca49 100644
--- a/res/layout/widgets_full_sheet_paged_view.xml
+++ b/res/layout/widgets_full_sheet_paged_view.xml
@@ -38,8 +38,5 @@
</com.android.launcher3.workprofile.PersonalWorkPagedView>
- <include layout="@layout/widgets_personal_work_tabs"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginHorizontal="16dp" />
+ <include layout="@layout/widgets_personal_work_tabs"/>
</merge>
\ No newline at end of file
diff --git a/res/layout/widgets_personal_work_tabs.xml b/res/layout/widgets_personal_work_tabs.xml
index 3402415..f835b52 100644
--- a/res/layout/widgets_personal_work_tabs.xml
+++ b/res/layout/widgets_personal_work_tabs.xml
@@ -20,8 +20,7 @@
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="@dimen/all_apps_header_pill_height"
- android:layout_marginLeft="@dimen/all_apps_tabs_side_padding"
- android:layout_marginRight="@dimen/all_apps_tabs_side_padding"
+ android:layout_marginHorizontal="16dp"
android:orientation="horizontal"
android:elevation="2dp"
style="@style/TextHeadline">
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index c6d372a..b3b0d2b 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Vouer: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> items"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Vouer: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> of meer items"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Muurpapiere"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Style en muurpapiere"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Muurpapier en styl"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Tuis-instellings"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Gedeaktiveer deur jou administrateur"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Laat toe dat tuisskerm gedraai word"</string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 7123a8b..af30fa5 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"አቃፊ፦ <xliff:g id="NAME">%1$s</xliff:g>፣ <xliff:g id="SIZE">%2$d</xliff:g> ንጥሎች"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"አቃፊ፦ <xliff:g id="NAME">%1$s</xliff:g>፣ <xliff:g id="SIZE">%2$d</xliff:g> ወይም ተጨማሪ ንጥሎች"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"የግድግዳ ወረቀቶች"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"ቅጦች እና ልጣፎች"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"የመነሻ ቅንብሮች"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"በእርስዎ አስተዳዳሪ የተሰናከለ"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"የመነሻ ማያ ገጽ ማሽከርከርን ይፍቀዱ"</string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index c6ab52a..92295db 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -109,7 +109,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"المجلد: <xliff:g id="NAME">%1$s</xliff:g>، <xliff:g id="SIZE">%2$d</xliff:g> عنصر"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"المجلد: <xliff:g id="NAME">%1$s</xliff:g>، <xliff:g id="SIZE">%2$d</xliff:g> عنصر أو أكثر"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"الخلفيات"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"الأنماط والخلفيات"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"إعدادات الشاشة الرئيسية"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"أوقف المشرف هذه الميزة"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"السماح بتدوير الشاشة الرئيسية"</string>
diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml
index 5e80e65..8e55585 100644
--- a/res/values-as/strings.xml
+++ b/res/values-as/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ফ’ল্ডাৰ: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> টা বস্তু"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ফ’ল্ডাৰ: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> টা অথবা তাতকৈ অধিক বস্তু"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"ৱালপেপাৰসমূহ"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"শৈলী আৰু ৱালপেপাৰ"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"গৃহ ছেটিং"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"আপোনাৰ প্ৰশাসকে অক্ষম কৰি ৰাখিছে"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"গৃহ স্ক্ৰীণ ঘূৰোৱাৰ অনুমতি দিয়ক"</string>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index 17f600c..62581b8 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Qovluq: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> element"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Qovluq: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> və ya daha çox element"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Divar kağızları"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Üslub və divar kağızları"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Home ayarları"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Admininiz tərəfindən deaktiv edilib"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Əsas ekranın firlanmağına icazə verin"</string>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index dc04fed..ce69fd9 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -100,7 +100,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> stavke"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ili više stavki"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Pozadine"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stilovi i pozadine"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Podešavanja početnog ekrana"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Administrator je onemogućio"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Dozvoli rotaciju početnog ekrana"</string>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index 9bb2c00..2efdad4 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -103,7 +103,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Папка: <xliff:g id="NAME">%1$s</xliff:g>, элементы: <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Папка: <xliff:g id="NAME">%1$s</xliff:g>, элементы: <xliff:g id="SIZE">%2$d</xliff:g> ці больш"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Шпалеры"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Стылі і шпалеры"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Налады галоўнага экрана"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Адключаная адміністратарам"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Дазволіць паварот галоўнага экрана"</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 0d398ee..9484a75 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Папка: „<xliff:g id="NAME">%1$s</xliff:g>“ – <xliff:g id="SIZE">%2$d</xliff:g> елемента"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Папка: „<xliff:g id="NAME">%1$s</xliff:g>“ – <xliff:g id="SIZE">%2$d</xliff:g> или повече елементи"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Тапети"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Стилове и тапети"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Настройки за началния екран"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Деактивирано от администратора ви"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Разрешаване на завъртането на началния екран"</string>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index 283ac70..95b0b8d 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"একটি উইজেট সরাতে বা কাস্টম অ্যাকশন ব্যবহার করতে ডবল ট্যাপ করে ধরে রাখুন।"</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%2$d উচ্চতা অনুযায়ী %1$d প্রস্থ"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"হোম স্ক্রিনের যেকোনও জায়গায় উইজেটটি নিয়ে যেতে, টাচ করে ধরে থাকুন"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"হোম স্ক্রিনে যোগ করুন"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="one"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g>টি উইজেট</item>
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g>টি উইজেট</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ফোল্ডার: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g>টি আইটেম"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ফোল্ডার: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g>টি বা তার বেশি আইটেম"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"ওয়ালপেপারগুলি"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"স্টাইল এবং ওয়ালপেপার"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"হোম সেটিংস"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"আপনার প্রশাসক দ্বারা অক্ষম করা হয়েছে"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"হোম স্ক্রিন ঘোরানোর অনুমতি দিন"</string>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index 50aff80..f79b99c 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -100,7 +100,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, br. stavki: <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ili više stavki"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Pozadinske slike"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stilovi i pozadinske slike"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Postavke početnog ekrana"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Onemogućio vaš administrator"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Dozvoli rotiranje početnog ekrana"</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 9ea5fc7..ecfaebe 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Carpeta: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elements"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Carpeta: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> o més elements"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Fons de pantalla"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Estils i fons de pantalla"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Config. pantalla d\'inici"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Desactivada per l\'administrador"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Permet la rotació de la pantalla d\'inici"</string>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 9ae37cc..4cfadc1 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -103,7 +103,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Složka: <xliff:g id="NAME">%1$s</xliff:g>, počet položek: <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Složka: <xliff:g id="NAME">%1$s</xliff:g>, počet položek: <xliff:g id="SIZE">%2$d</xliff:g> nebo více"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Tapety"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Styly a tapety"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Nastavení plochy"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Zakázáno administrátorem"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Povolit otáčení plochy"</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 3b4e07b..502d5eb 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Mappe: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elementer"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Mappe: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> eller flere elementer"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Baggrunde"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Layout og baggrunde"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Baggrund og stil"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Indstillinger for startskærm"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Deaktiveret af din administrator"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Tillad rotation af startskærmen"</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 31b9b20..f040310 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Doppeltippen und halten, um ein Widget zu bewegen oder benutzerdefinierte Aktionen zu nutzen."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d breit und %2$d hoch"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Wenn du das Widget auf dem Startbildschirm verschieben möchtest, halte es gedrückt"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"Zum Startbildschirm hinzufügen"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> Widgets</item>
<item quantity="one"><xliff:g id="WIDGETS_COUNT_0">%1$d</xliff:g> Widget</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Ordner: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> Elemente"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Ordner: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> oder mehr Elemente"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Hintergründe"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Designs und Hintergründe"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Startbildschirm-Einstellungen"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Von deinem Administrator deaktiviert"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Drehen des Startbildschirms zulassen"</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 1d93bfc..8d00829 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Φάκελος: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> στοιχεία"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Φάκελος: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ή περισσότερα στοιχεία"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Ταπετσαρίες"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Στιλ και ταπετσαρίες"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Ρυθμίσεις Αρχ. Οθ."</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Απενεργοποιήθηκε από τον διαχειριστή σας"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Να επιτρέπεται η περιστροφή της αρχικής οθόνης"</string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index d6b9296..5af3e7d 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> items"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> or more items"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Wallpapers"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Styles & wallpapers"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Wallpaper & style"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Home settings"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Disabled by your admin"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Allow Home screen rotation"</string>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index d6b9296..5af3e7d 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> items"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> or more items"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Wallpapers"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Styles & wallpapers"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Wallpaper & style"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Home settings"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Disabled by your admin"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Allow Home screen rotation"</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index d6b9296..5af3e7d 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> items"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> or more items"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Wallpapers"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Styles & wallpapers"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Wallpaper & style"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Home settings"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Disabled by your admin"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Allow Home screen rotation"</string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index d6b9296..5af3e7d 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> items"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> or more items"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Wallpapers"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Styles & wallpapers"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Wallpaper & style"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Home settings"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Disabled by your admin"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Allow Home screen rotation"</string>
diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml
index 9fff023..b82f0c9 100644
--- a/res/values-en-rXC/strings.xml
+++ b/res/values-en-rXC/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> items"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> or more items"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Wallpapers"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Styles & wallpapers"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Wallpaper & style"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Home settings"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Disabled by your admin"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Allow Home screen rotation"</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 79d33fd..56f31bf 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Carpeta: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elementos"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Carpeta: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> o más elementos"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Fondos de pantalla"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Estilos y fondos de pantalla"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Fondo de pantalla y estilo"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Configuración de pantalla principal"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"El administrador inhabilitó esta función"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Permitir la rotación de la pantalla principal"</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 1bc4c60..d34ff32 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Carpeta: <xliff:g id="NAME">%1$s</xliff:g> (<xliff:g id="SIZE">%2$d</xliff:g> elementos)"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Carpeta: <xliff:g id="NAME">%1$s</xliff:g> (<xliff:g id="SIZE">%2$d</xliff:g> o más elementos)"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Fondos de pantalla"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Estilos y fondos de pantalla"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Ajustes de la pantalla de inicio"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Inhabilitado por el administrador"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Permitir rotación de la pantalla de inicio"</string>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index 916aafc..06cac34 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Vidina teisaldamiseks või kohandatud toimingute kasutamiseks topeltpuudutage ja hoidke all."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d lai ja %2$d kõrge"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Vidina avakuval liigutamiseks puudutage vidinat ja hoidke all"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Vidina teisaldamiseks avakuval puudutage vidinat ja hoidke seda all"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Lisa avakuvale"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> vidinat</item>
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Kaust: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> üksust"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Kaust: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> või rohkem üksust"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Taustapildid"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stiilid ja taustapildid"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Avakuva seaded"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Keelas administraator"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Luba avakuva pööramine"</string>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index 901d3cb..ad61cb6 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"<xliff:g id="NAME">%1$s</xliff:g> karpeta (<xliff:g id="SIZE">%2$d</xliff:g> elementu)"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"<xliff:g id="NAME">%1$s</xliff:g> karpeta (<xliff:g id="SIZE">%2$d</xliff:g> elementu edo gehiago)"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Horma-paperak"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Estiloak eta horma-paperak"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Hasierako pantailaren ezarpenak"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Administratzaileak desgaitu du"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Eman hasierako pantaila biratzeko baimena"</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 194ea0d..f1ae4d5 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"برای جابهجا کردن ابزارک یا استفاده از کنشهای سفارشی، دوضربه بزنید و نگه دارید."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d عرض در %2$d طول"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"ابزارک را لمس و کنید و نگه دارید تا آن را در صفحه اصلی حرکت دهید"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"ابزارک را لمس کنید و نگه دارید تا آن را در صفحه اصلی حرکت دهید"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"افزودن به صفحه اصلی"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="one"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> ابزارک</item>
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"پوشه: <xliff:g id="NAME">%1$s</xliff:g>، <xliff:g id="SIZE">%2$d</xliff:g> مورد"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"پوشه: <xliff:g id="NAME">%1$s</xliff:g>، <xliff:g id="SIZE">%2$d</xliff:g> مورد یا بیشتر"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"کاغذدیواریها"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"سبک و کاغذدیواری"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"کاغذدیواری و سبک"</string>
<string name="settings_button_text" msgid="8873672322605444408">"تنظیمات صفحه اصلی"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"توسط سرپرست سیستم غیرفعال شده است"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"قابلچرخش بودن صفحه اصلی"</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 6cffafc..1e1b1e3 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Kansio: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> kohdetta"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Kansio: <xliff:g id="NAME">%1$s</xliff:g>, ainakin <xliff:g id="SIZE">%2$d</xliff:g> kohdetta"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Taustakuvat"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Tyylit ja taustakuvat"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Aloitusnäyttö"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Järjestelmänvalvoja on poistanut toiminnon käytöstä."</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Salli aloitusnäytön kiertäminen"</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 3ebd61a..1867a5d 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Dossier : <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> élément(s)"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Dossier : <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> éléments ou plus"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Fonds d\'écran"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Styles et fonds d\'écran"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Paramètres d\'accueil"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Cette fonction est désactivée par votre administrateur"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Autoriser la rotation de l\'écran d\'accueil"</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index bb56bac..d8b666b 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Dossier : <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> éléments"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Dossier : <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> éléments ou plus"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Fonds d\'écran"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Styles et fonds d\'écran"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Paramètres de l\'accueil"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Désactivé par votre administrateur"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Autoriser la rotation de l\'écran d\'accueil"</string>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index d3f3f0b..3609b17 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Cartafol: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elementos"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Cartafol: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elementos ou máis"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Fondos de pantalla"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Estilos/fondos de pantalla"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Axustes de Inicio"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Función desactivada polo administrador"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Permitir xirar a pantalla de inicio"</string>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index 0882d64..55eceee 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"વિજેટ ખસેડવા બે વાર ટૅપ કરીને દબાવી રાખો અથવા કસ્ટમ ક્રિયાઓનો ઉપયોગ કરો."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d પહોળાઈ X %2$d ઊંચાઈ"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"વિજેટને હોમ સ્ક્રીનની આજુબાજુ ખસેડવા માટે, તેને ટચ કરીને થોડીવાર દબાવી રાખો"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"હોમ સ્ક્રીન પર ઉમેરો"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="one"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> વિજેટ</item>
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> વિજેટ</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ફોલ્ડર: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> આઇટમ"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ફોલ્ડર: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> કે વધુ આઇટમ"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"વૉલપેપર"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"શૈલીઓ અને વૉલપેપર"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"હોમ સેટિંગ"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"તમારા વ્યવસ્થાપક દ્વારા અક્ષમ કરેલ"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"હોમ સ્ક્રીનને ફેરવવાની મંજૂરી આપો"</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 9a3c56c..4c17b16 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"फ़ोल्डर: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> आइटम"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"फ़ोल्डर: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> या इससे ज़्यादा आइटम"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"वॉलपेपर"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"स्टाइल और वॉलपेपर"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"होम पेज की सेटिंग"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"आपके एडमिन ने बंद किया हुआ है"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"होमस्क्रीन घुमाने की अनुमति दें"</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index d1cb5bf..a165fd7 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -100,7 +100,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Mapa: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> stavke"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Mapa: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ili više stavki"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Pozadine"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stilovi i pozadine"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Postavke početnog zaslona"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Onemogućio administrator"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Dopusti zakretanje početnog zaslona"</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 9e2c358..c89b55b 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Mappa: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elem"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Mappa: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> vagy több elem"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Háttérképek"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stílusok és háttérképek"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Kezdőképernyő beállításai"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"A rendszergazda letiltotta"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"A kezdőképernyő elforgatásának engedélyezése"</string>
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
index ff8b895..522aa65 100644
--- a/res/values-hy/strings.xml
+++ b/res/values-hy/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Կրկնակի հպեք և պահեք՝ վիջեթ տեղափոխելու համար, կամ օգտվեք հատուկ գործողություններից։"</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"Լայնությունը՝ %1$d, բարձրությունը՝ %2$d"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Հպեք վիջեթին և պահեք՝ հիմնական էկրանին տեղափոխելու համար"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"Ավելացնել հիմնական էկրանին"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="one"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> վիջեթ</item>
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> վիջեթ</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Պանակ՝ <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> տարր"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Պանակ՝ <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> կամ ավելի տարրեր"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Պաստառներ"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Ոճեր և պաստառներ"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Գլխավոր էջի կարգավորումներ"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Անջատվել է ձեր ադմինիստրատորի կողմից"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Թույլ տալ հիմնական էկրանի պտտումը"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index d42e4f9..e7a2ee6 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> item"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> item atau lebih"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Wallpaper"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Gaya & wallpaper"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Setelan layar utama"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Dinonaktifkan oleh admin"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Izinkan Layar utama diputar"</string>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index 30e73b4..5dcdb52 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Mappa: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> atriði"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Mappa: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> eða fleiri atriði"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Veggfóður"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stílar og veggfóður"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Heimastillingar"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Gert óvirkt af kerfisstjóra"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Leyfa snúning á heimaskjá"</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 1d420a9..c527a2e 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Cartella: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elementi"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Cartella: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> o più elementi"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Sfondi"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stili e sfondi"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Impostazioni schermata Home"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Disattivata dall\'amministratore"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Consenti rotazione della schermata Home"</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 7cd53fa..1264738 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -103,7 +103,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"תיקייה: <xliff:g id="NAME">%1$s</xliff:g>, מספר הפריטים: <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"תיקייה: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> פריטים או יותר"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"טפטים"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"סגנונות וטפטים"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"הגדרות של מסך הבית"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"הושבת על ידי מנהל המערכת שלך"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"סיבוב של מסך הבית"</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index c1136a4..af588b8 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"ウィジェットをダブルタップして長押ししながら移動するか、カスタム操作を使用してください。"</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$dx%2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"幅 %1$d、高さ %2$d"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"ウィジェットを押し続けた状態で、ホーム画面上に移動させます。"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"ウィジェットを押し続けると、ホーム画面上に移動できます。"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"ホーム画面に追加"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> 件のウィジェット</item>
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"フォルダ: <xliff:g id="NAME">%1$s</xliff:g>、<xliff:g id="SIZE">%2$d</xliff:g> 件のアイテム"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"フォルダ: <xliff:g id="NAME">%1$s</xliff:g>、<xliff:g id="SIZE">%2$d</xliff:g> 件以上のアイテム"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"壁紙"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"スタイルと壁紙"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"ホームの設定"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"管理者により無効にされています"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"ホーム画面の回転を許可"</string>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index c701795..03e0bbb 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"საქაღალდე: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ერთეული"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"საქაღალდე: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ან მეტი ერთეული"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"ფონები"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"სტილები და ფონები"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"მთავარი გვერდის პარამეტრები"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"გათიშულია თქვენი ადმინისტრატორის მიერ"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"მთავარი ეკრანის შეტრიალების დაშვება"</string>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index 8f92db0..f0a8f80 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Қалта: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> элемент бар"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Қалта: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> не одан көп элемент бар"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Тұсқағаздар"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Стильдер мен тұсқағаздар"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Негізгі экран параметрлері"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Әкімші өшірді"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Негізгі экранның бұрылуына рұқсат ету"</string>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index 8a82bda..e0332b9 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ថត៖ <xliff:g id="NAME">%1$s</xliff:g>, ធាតុ <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ថត៖ <xliff:g id="NAME">%1$s</xliff:g>, ធាតុ <xliff:g id="SIZE">%2$d</xliff:g> ឬច្រើនជាងនេះ"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"ផ្ទាំងរូបភាព"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"រចនាប័ទ្ម និងផ្ទាំងរូបភាព"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"ការកំណត់ទំព័រដើម"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"បានបិទដំណើរការដោយអ្នកគ្រប់គ្រងរបស់អ្នក"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"អនុញ្ញាតការបងិ្វលអេក្រង់ដើម"</string>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index 73e2255..27f045e 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"ವಿಜೆಟ್ ಸರಿಸಲು ಅಥವಾ ಕಸ್ಟಮ್ ಕ್ರಿಯೆಗಳನ್ನು ಬಳಸಲು ಡಬಲ್-ಟ್ಯಾಪ್ ಮಾಡಿ ಮತ್ತು ಹಿಡಿದುಕೊಳ್ಳಿ."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d ಅಗಲ ಮತ್ತು %2$d ಎತ್ತರ"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"ಮುಖಪುಟದ ಪರದೆ ಸುತ್ತ ವಿಜೆಟ್ ಅನ್ನು ಸರಿಸಲು, ಸ್ಪರ್ಶಿಸಿ ಮತ್ತು ಒತ್ತಿ ಹಿಡಿದುಕೊಳ್ಳಿ"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"ಮುಖಪುಟಕ್ಕೆ ಸೇರಿಸಿ"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="one"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> ವಿಜೆಟ್ಗಳು</item>
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> ವಿಜೆಟ್ಗಳು</item>
@@ -99,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ಫೋಲ್ಡರ್: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ಐಟಂಗಳು"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ಫೋಲ್ಡರ್: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ಅಥವಾ ಹೆಚ್ಚಿನ ಐಟಂಗಳು"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"ವಾಲ್ಪೇಪರ್ಗಳು"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"ಶೈಲಿಗಳು & ವಾಲ್ಪೇಪರ್ಗಳು"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"ವಾಲ್ಪೇಪರ್ ಮತ್ತು ಶೈಲಿ"</string>
<string name="settings_button_text" msgid="8873672322605444408">"ಮುಖಪುಟ ಸೆಟ್ಟಿಂಗ್ಗಳು"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"ನಿಮ್ಮ ನಿರ್ವಾಹಕರು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿದ್ದಾರೆ"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"ಮುಖಪುಟ ತಿರುಗುವಿಕೆಯನ್ನು ಅನುಮತಿಸಿ"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index b98ee5c..a240ac3 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"폴더: <xliff:g id="NAME">%1$s</xliff:g>, 항목 <xliff:g id="SIZE">%2$d</xliff:g>개"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"폴더: <xliff:g id="NAME">%1$s</xliff:g>, 항목 <xliff:g id="SIZE">%2$d</xliff:g>개 이상"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"배경화면"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"스타일 및 배경화면"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"홈 설정"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"관리자가 사용 중지함"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"홈 화면 회전 허용"</string>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index 62fb75c..f848940 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"<xliff:g id="NAME">%1$s</xliff:g> папкасындагы объекттер: <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"<xliff:g id="NAME">%1$s</xliff:g> папкасындагы объекттер: <xliff:g id="SIZE">%2$d</xliff:g> же андан көбүрөөк"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Тушкагаздар"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Стилдер жана тушкагаздар"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Башкы бет жөндөөлөрү"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Администраторуңуз өчүрүп койгон"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Башкы экранды бурууга уруксат берүү"</string>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index a7c2f68..1f3f6b7 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ໂຟນເດີ: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ລາຍການ"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ໂຟນເດີ: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ຫຼື ລາຍການເພີ່ມເຕີມ"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"ພາບພື້ນຫຼັງ"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"ຮູບແບບ ແລະ ຮູບພື້ນຫຼັງ"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"ການຕັ້ງຄ່າໜ້າຫຼັກ"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"ຖືກປິດການນຳໃຊ້ໂດຍຜູ້ເບິ່ງແຍງລະບົບຂອງທ່ານ"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"ອະນຸຍາດໃຫ້ໝຸນໜ້າຈໍຢູ່ໜ້າຫຼັກໄດ້"</string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 0677e88..2d76f92 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -103,7 +103,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Aplankas: „<xliff:g id="NAME">%1$s</xliff:g>“, elementų: <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Aplankas: „<xliff:g id="NAME">%1$s</xliff:g>“, elementų: <xliff:g id="SIZE">%2$d</xliff:g> ar daugiau"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Ekrano fonai"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stiliai ir ekrano fonai"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"„Home“ nustatymai"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Išjungė administratorius"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Leisti pasukti pagrindinį ekraną"</string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 6310375..ada97fb 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -100,7 +100,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Mape <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> vienumi"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Mape <xliff:g id="NAME">%1$s</xliff:g>, vienumu skaits mapē: vismaz <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Fona tapetes"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stili un fona tapetes"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Sākumlapas iestatījumi"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Atspējojis administrators"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Atļaut sākuma ekrāna pagriešanu"</string>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index c4349e6..128b87d 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Допрете двапати и задржете за да преместите виџет или користете приспособени дејства."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d широк на %2$d висок"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Допрете го и задржете го виџетот за да го движите наоколу на почетниот екран"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"Додај на почетниот екран"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="one"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> виџет</item>
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> виџети</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Папка: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ставки"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Папка: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> или повеќе ставки"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Тапети"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Стилови и тапети"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Поставки за почетен екран"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Оневозможено од администраторот"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Дозволи ротација на почетниот екран"</string>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index c0cb36b..b64bb99 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"വിജറ്റ് നീക്കാൻ ഡബിൾ ടാപ്പ് ചെയ്യൂ, ഹോൾഡ് ചെയ്യൂ അല്ലെങ്കിൽ ഇഷ്ടാനുസൃത പ്രവർത്തനങ്ങൾ ഉപയോഗിക്കൂ."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d വീതിയും %2$d ഉയരവും"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"ഹോം സ്ക്രീനിന് ചുറ്റും വിജറ്റ് നീക്കാൻ അതിൽ സ്പർശിച്ച് പിടിക്കുക"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"ഹോം സ്ക്രീനിലേക്ക് ചേർക്കുക"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> വിജറ്റുകൾ</item>
<item quantity="one"><xliff:g id="WIDGETS_COUNT_0">%1$d</xliff:g> വിജറ്റ്</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ഫോൾഡർ: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ഇനങ്ങൾ"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ഫോൾഡർ: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> അല്ലെങ്കിൽ അതിലധികം ഇനങ്ങൾ"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"വാൾപേപ്പർ"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"സ്റ്റൈലുകളും വാൾപേപ്പറുകളും"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"ഹോം ക്രമീകരണം"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"അഡ്മിൻ പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നു"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"ഹോം സ്ക്രീൻ തിരിക്കൽ അനുവദിക്കുക"</string>
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index 3e99d67..4d9acc2 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Фолдер: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> зүйл"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Фолдер: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> эсвэл үүнээс олон зүйл"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Дэлгэцийн зураг"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Загвар ба дэлгэцийн зураг"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Нүүр хуудасны тохиргоо"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Таны админ идэвхгүй болгосон"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Нүүр дэлгэцийг эргүүлэхийг зөвшөөрөх"</string>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index 7bf6c6c..01c132f 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"विजेट हलवण्यासाठी किंवा कस्टम कृती वापरण्यासाठी दोनदा टॅप करा आणि धरून ठेवा."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d रूंद बाय %2$d उंच"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"होम स्क्रीनवर ते हलवण्यासाठी विजेटला स्पर्श करा आणि धरून ठेवा"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"होम स्क्रीनवर जोडा"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> विजेट</item>
<item quantity="one"><xliff:g id="WIDGETS_COUNT_0">%1$d</xliff:g> विजेट</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"फोल्डर: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> आयटम"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"फोल्डर: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> किंवा त्याहून अधिक आयटम"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"वॉलपेपर"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"शैली आणि वॉलपेपर"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"होम सेटिंग्ज"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"आपल्या प्रशासकाने अक्षम केले"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"मुख्य स्क्रीन फिरविण्यास अनुमती द्या"</string>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index 9401040..9465be5 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> item"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> atau lebih banyak item"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Kertas dinding"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Gaya & kertas dinding"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Kertas dinding & gaya"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Tetapan laman utama"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Dilumpuhkan oleh pentadbir anda"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Benarkan putaran Skrin Utama"</string>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index 4dcd6c1..063f791 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ဖိုင်တွဲ - <xliff:g id="NAME">%1$s</xliff:g>၊ <xliff:g id="SIZE">%2$d</xliff:g> ဖိုင်များ"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ဖိုင်တွဲ - <xliff:g id="NAME">%1$s</xliff:g>၊ <xliff:g id="SIZE">%2$d</xliff:g> သို့မဟုတ် နောက်ထပ်ဖိုင်များ"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"နောက်ခံများ"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"ပုံစံနှင့် နောက်ခံပုံများ"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"ပင်မဆက်တင်များ"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"သင့်စီမံခန့်ခွဲသူက ပိတ်လိုက်ပါသည်"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"ပင်မစာမျက်နှာလှည့်ခြင်းကို ခွင့်ပြုပါ"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index ad5affb..52ff878 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Mappe: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elementer"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Mappe: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> eller flere elementer"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Bakgrunner"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stiler og bakgrunner"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Startsideinnstillinger"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Administratoren har slått av funksjonen"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Tillat rotasjon av startskjermen"</string>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index 0cdeae0..cecc3ab 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"कुनै विजेट सार्न वा आफ्नो रोजाइका कारबाही प्रयोग गर्न डबल ट्याप गरेर छोइराख्नुहोस्।"</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d चौडाइ गुणा %2$d उचाइ"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"विजेटलाई होम स्क्रिनमा यताउता सार्न त्यसमा टच एन्ड होल्ड गर्नुहोस्"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"होम स्क्रिनमा हाल्नुहोस्"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> वटा विजेट</item>
<item quantity="one"><xliff:g id="WIDGETS_COUNT_0">%1$d</xliff:g> वटा विजेट</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"फोल्डर: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> वस्तुहरू"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"फोल्डर: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> वा सोभन्दा बढी वस्तुहरू"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"वालपेपरहरु"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"शैली तथा वालपेपरहरू"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"गृहपृष्ठका सेटिङहरू"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"तपाईँको प्रशासकद्वारा असक्षम गरिएको"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"गृह स्क्रिनलाई रोटेट हुन दिइयोस्"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index cc16a89..58d1d98 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Map: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> items"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Map: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> of meer items"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Achtergrond"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stijl en achtergrond"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Achtergrond en stijl"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Instellingen start"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Uitgezet door je beheerder"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Draaien van startscherm toestaan"</string>
diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml
index 7f3495a..ffbc690 100644
--- a/res/values-or/strings.xml
+++ b/res/values-or/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ଫୋଲ୍ଡର୍: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ଆଇଟମଗୁଡ଼ିକ"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ଫୋଲ୍ଡର୍: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> କିମ୍ବା ଅଧିକ ଆଇଟମ୍"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"ୱାଲପେପର୍"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"ଷ୍ଟାଇଲ୍ ଏବଂ ୱାଲ୍ପେପର୍"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"ହୋମ୍ ସେଟିଂସ୍"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"ଆପଣଙ୍କ ଆଡମିନଙ୍କ ଦ୍ୱାରା ଅକ୍ଷମ କରାଯାଇଛି"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"ହୋମ୍ ସ୍କ୍ରିନ୍ ବୁଲାଇବାକୁ ଅନୁମତି ଦିଅନ୍ତୁ"</string>
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
index 355e303..869d854 100644
--- a/res/values-pa/strings.xml
+++ b/res/values-pa/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"ਵਿਜੇਟ ਲਿਜਾਉਣ ਲਈ ਜਾਂ ਵਿਉਂਂਤੀਆਂ ਕਾਰਵਾਈਆਂ ਵਰਤਣ ਲਈ ਦੋ ਵਾਰ ਟੈਪ ਕਰਕੇ ਦਬਾ ਕੇ ਰੱਖੋ।"</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d ਚੌੜਾਈ ਅਤੇ %2$d ਲੰਬਾਈ"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"ਵਿਜੇਟ ਨੂੰ ਹੋਮ ਸਕ੍ਰੀਨ \'ਤੇ ਇੱਧਰ-ਉੱਧਰ ਲਿਜਾਉਣ ਲਈ ਸਪਰਸ਼ ਕਰਕੇ ਦਬਾਈ ਰੱਖੋ"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"ਹੋਮ ਸਕ੍ਰੀਨ \'ਤੇ ਸ਼ਾਮਲ ਕਰੋ"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="one"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> ਵਿਜੇਟ</item>
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> ਵਿਜੇਟ</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ਫੋਲਡਰ: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ਆਈਟਮਾਂ"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ਫੋਲਡਰ: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ਜਾਂ ਹੋਰ ਆਈਟਮਾਂ"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"ਵਾਲਪੇਪਰ"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"ਸ਼ੈਲੀਆਂ ਅਤੇ ਵਾਲਪੇਪਰ"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"ਹੋਮ ਸੈਟਿੰਗਾਂ"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"ਤੁਹਾਡੇ ਪ੍ਰਸ਼ਾਸਕ ਦੁਆਰਾ ਅਯੋਗ ਬਣਾਈ ਗਈ"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"ਹੋਮ ਸਕ੍ਰੀਨ ਨੂੰ ਘੁਮਾਉਣ ਦੀ ਆਗਿਆ ਦਿਓ"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index ceb8046..acce00a 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -103,7 +103,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elementy"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, liczba elementów: <xliff:g id="SIZE">%2$d</xliff:g> lub więcej"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Tapety"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Style i tapety"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Tapeta i styl"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Ustawienia ekranu głównego"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Funkcja wyłączona przez administratora"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Zezwalaj na obrót ekranu głównego"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index e40accf..283529d 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Pasta: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> itens"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Pasta: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ou mais itens"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Imagens de fundo"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Estilos e fundo"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Definições de início"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Desativada pelo gestor"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Permitir rotação do ecrã principal"</string>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 8b18329..fd793d4 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Pasta: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> itens"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Pasta: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ou mais itens"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Planos de fundo"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Estilos e planos de fundo"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Plano de fundo e estilo"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Configurações da tela inicial"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Desativado pelo administrador"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Permitir rotação da tela inicial"</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index a71f999..4faa6e1 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -100,7 +100,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Dosar: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> elemente"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Dosar: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> sau mai multe elemente"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Imagini de fundal"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stiluri și imagini de fundal"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Setări ecran de pornire"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Dezactivată de administrator"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Permite rotirea ecranului de pornire"</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 0c1acbc..6b1cc6b 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -103,7 +103,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Папка \"<xliff:g id="NAME">%1$s</xliff:g>\" (объектов: <xliff:g id="SIZE">%2$d</xliff:g>)"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Папка \"<xliff:g id="NAME">%1$s</xliff:g>\" (объектов: <xliff:g id="SIZE">%2$d</xliff:g> или больше)"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Обои"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Стили и обои"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Главный экран"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Функция отключена администратором"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Разрешить поворачивать главный экран"</string>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index 6b27168..4826639 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ෆෝල්ඩරය: <xliff:g id="NAME">%1$s</xliff:g>, අයිතම <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ෆෝල්ඩර: <xliff:g id="NAME">%1$s</xliff:g>, අයිතම <xliff:g id="SIZE">%2$d</xliff:g>ක් හෝ වැඩි ගණනක්"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"වෝල්පේපර"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"විලාස සහ වෝල්පේපර"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"නිවසේ සැකසීම්"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"ඔබගේ පරිපාලක විසින් අබල කරන ලදී"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"මුල් පිටු තිරය කරකැවීමට ඉඩ දෙන්න"</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 7ea59d6..e23e7a9 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -103,7 +103,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Priečinok: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> položky"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Priečinok: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> alebo viac položiek"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Tapety"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Štýly a tapety"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Tapeta a štýl"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Nastavenia plochy"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Zakázané vaším správcom"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Povoliť otáčanie plochy"</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index f74bdcc..40e202f 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -103,7 +103,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Mapa: <xliff:g id="NAME">%1$s</xliff:g>, št. elementov: <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Mapa: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ali več elementov"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Ozadja"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Slogi in ozadja"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Domače nastavitve"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Onemogočil skrbnik."</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Omogoči sukanje začetnega zaslona"</string>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index 9a53936..68ffed6 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Trokit dy herë dhe mbaje shtypur një miniapliikacion për ta zhvendosur atë ose për të përdorur veprimet e personalizuara."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d i gjerë me %2$d i lartë"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Prek dhe mbaj miniaplikacionin për ta lëvizur nëpër \"Ekranin bazë\""</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Prek dhe mbaj të shtypur miniaplikacionin për ta lëvizur nëpër \"Ekranin bazë\""</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Shto në \"Ekranin bazë\""</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> miniaplikacione</item>
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Dosja: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> artikuj"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Dosja: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ose më shumë artikuj"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Imazhet e sfondit"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stilet dhe imazhet e sfondit"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Cilësimet e ekranit bazë"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Çaktivizuar nga administratori"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Lejo rrotullimin e ekranit bazë"</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 4f67b23..bd90dad 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -100,7 +100,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Фолдер: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ставке"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Фолдер: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> или више ставки"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Позадине"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Стилови и позадине"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Подешавања почетног екрана"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Администратор је онемогућио"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Дозволи ротацију почетног екрана"</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 91b9b88..cbbd497 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Mapp: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> objekt"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Mapp: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> eller fler objekt"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Bakgrunder"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Format och bakgrunder"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Startinställningar"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Inaktiverat av administratören"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Tillåt rotering av startskärmen"</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 6227239..353d74a 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folda: <xliff:g id="NAME">%1$s</xliff:g>, vipengee <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folda: <xliff:g id="NAME">%1$s</xliff:g>, vipengee <xliff:g id="SIZE">%2$d</xliff:g> au zaidi"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Mandhari"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Mitindo na mandhari"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Mipangilio ya mwanzo"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Imezimwa na msimamizi wako"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Ruhusu kuzungusha skrini ya Kwanza"</string>
diff --git a/res/values-sw600dp/config.xml b/res/values-sw600dp/config.xml
deleted file mode 100644
index 09bdaaf..0000000
--- a/res/values-sw600dp/config.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-<resources>
- <bool name="allow_rotation">true</bool>
-</resources>
diff --git a/res/values-sw600dp/dimens.xml b/res/values-sw600dp/dimens.xml
index ead666c..47a88f2 100644
--- a/res/values-sw600dp/dimens.xml
+++ b/res/values-sw600dp/dimens.xml
@@ -3,7 +3,7 @@
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
+ You may obtain a copy of the License at`
http://www.apache.org/licenses/LICENSE-2.0
@@ -15,13 +15,6 @@
-->
<resources>
-<!-- All Apps -->
- <dimen name="all_apps_background_canvas_width">850dp</dimen>
- <dimen name="all_apps_background_canvas_height">525dp</dimen>
-
-<!-- Widget tray -->
- <dimen name="widget_section_indent">56dp</dimen>
-
<!-- DragController -->
<dimen name="drag_flingToDeleteMinVelocity">-1000dp</dimen>
</resources>
diff --git a/res/values-sw720dp/config.xml b/res/values-sw720dp/config.xml
deleted file mode 100644
index 33fc553..0000000
--- a/res/values-sw720dp/config.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-<resources>
-
-<!-- All Apps & Widgets -->
- <!-- Out of 100, the percent to shrink the workspace during spring loaded mode. -->
- <integer name="config_workspaceSpringLoadShrinkPercentage">90</integer>
-</resources>
diff --git a/res/values-sw720dp/dimens.xml b/res/values-sw720dp/dimens.xml
deleted file mode 100644
index 691219a..0000000
--- a/res/values-sw720dp/dimens.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2011 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<resources>
- <!-- All Apps -->
- <dimen name="all_apps_empty_search_message_top_offset">64dp</dimen>
- <dimen name="all_apps_empty_search_bg_top_offset">180dp</dimen>
-
- <!-- Fast scroll -->
- <dimen name="fastscroll_popup_width">75dp</dimen>
- <dimen name="fastscroll_popup_height">62dp</dimen>
- <dimen name="fastscroll_popup_padding">13dp</dimen>
- <dimen name="fastscroll_popup_text_size">32dp</dimen>
-
-</resources>
diff --git a/res/values-sw720dp/styles.xml b/res/values-sw720dp/styles.xml
deleted file mode 100644
index c1e6eca..0000000
--- a/res/values-sw720dp/styles.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-* Copyright (C) 2008 The Android Open Source Project
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
--->
-
-<resources>
- <!-- Workspace -->
- <style name="DropTargetButton" parent="DropTargetButtonBase">
- <item name="android:paddingLeft">60dp</item>
- <item name="android:paddingRight">60dp</item>
- <item name="android:shadowDx">0.0</item>
- <item name="android:shadowDy">0.0</item>
- <item name="android:shadowRadius">2.0</item>
- </style>
-</resources>
\ No newline at end of file
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index cae7e24..2badf10 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"கோப்புறை: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> கோப்புகள்"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"கோப்புறை: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> அல்லது அதற்கு அதிகமான கோப்புகள்"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"வால்பேப்பர்கள்"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"ஸ்டைல்கள் & வால்பேப்பர்கள்"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"முகப்பு அமைப்புகள்"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"உங்கள் நிர்வாகி முடக்கியுள்ளார்"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"முகப்புத் திரை சுழற்சியை அனுமதி"</string>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index 478bd02..6b4094d 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"విడ్జెట్ను తరలించడానికి లేదా అనుకూల చర్యలను ఉపయోగించడానికి రెండుసార్లు నొక్కండి & హోల్డ్ చేయి."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d వెడల్పు X %2$d ఎత్తు"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"విడ్జెట్ను మొదటి స్క్రీన్ చుట్టూ తిప్పడానికి దాన్ని తాకి, & నొక్కి ఉంచండి"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"మొదటి స్క్రీన్కు జోడించు"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> విడ్జెట్లు</item>
<item quantity="one"><xliff:g id="WIDGETS_COUNT_0">%1$d</xliff:g> విడ్జెట్</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"ఫోల్డర్: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> ఐటెమ్లు"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"ఫోల్డర్: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> లేదా అంతకంటే ఎక్కువ ఐటెమ్లు"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"వాల్పేపర్లు"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"స్టయిల్స్ & వాల్పేపర్లు"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"హోమ్ సెట్టింగ్లు"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"మీ నిర్వాహకులు నిలిపివేసారు"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"హోమ్ స్క్రీన్ రొటేషన్ను అనుమతించండి"</string>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 4f98cd2..905d5a1 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"โฟลเดอร์: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> รายการ"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"โฟลเดอร์: <xliff:g id="NAME">%1$s</xliff:g>, อย่างน้อย <xliff:g id="SIZE">%2$d</xliff:g> รายการ"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"วอลเปเปอร์"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"รูปแบบและวอลเปเปอร์"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"การตั้งค่าหน้าแรก"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"ปิดใช้โดยผู้ดูแลระบบ"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"อนุญาตให้หมุนหน้าจอหลัก"</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index a3504fe..a3dc55d 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> (na) item"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Folder: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> o higit pang item"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Mga Wallpaper"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Mga istilo at wallpaper"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Mga setting ng Home"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Na-disable ng iyong admin"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Payagan ang pag-rotate ng Home screen"</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 8029aeb..94b5574 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Klasör: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> öğe"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Klasör: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> veya daha fazla öğe"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Duvar Kağıtları"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Stiller ve duvar kağıtları"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Ana ekran ayarları"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Yöneticiniz tarafından devre dışı bırakıldı"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Ana ekranı döndürmeye izin ver"</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index 5e179aa..371a583 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -103,7 +103,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Папка \"<xliff:g id="NAME">%1$s</xliff:g>\", елементів: <xliff:g id="SIZE">%2$d</xliff:g>"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Папка \"<xliff:g id="NAME">%1$s</xliff:g>\", елементів: <xliff:g id="SIZE">%2$d</xliff:g> або більше"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Фонові малюнки"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Стиль і фон"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Налаштування головного екрана"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Вимкнув адміністратор"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Дозволити обертання головного екрана"</string>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index 8cc578c..890bc68 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"ویجیٹ کو منتقل کرنے یا حسب ضرورت کارروائیاں استعمال کرنے کے لیے دوبار تھپتھپائیں اور پکڑ کر رکھیں۔"</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d چوڑا اور %2$d اونچا"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"ویجیٹ کو ہوم اسکرین کے چاروں طرف منتقل کرنے کیلئے اسے ٹچ کریں اور دبائے رکھیں"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"ہوم اسکرین میں شامل کریں"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> ویجیٹس</item>
<item quantity="one"><xliff:g id="WIDGETS_COUNT_0">%1$d</xliff:g> ویجیٹ</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"فولڈر: <xliff:g id="NAME">%1$s</xliff:g>، <xliff:g id="SIZE">%2$d</xliff:g> آئٹمز"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"فولڈر: <xliff:g id="NAME">%1$s</xliff:g>، <xliff:g id="SIZE">%2$d</xliff:g> یا مزید آئٹمز"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"وال پیپرز"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"طرزیں اور وال پیپر"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"ہوم ترتیبات"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"آپ کے منتظم کی طرف سے غیر فعال کر دیا گیا"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"ہوم اسکرین گھمانے کی اجازت دیں"</string>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 9c8f7ed..7f0ced4 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Jild: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> fayllar"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Jild: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> va undan ortiq fayllar"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Fon rasmlari"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Mavzu va fon rasmlari"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Fon rasmi va stili"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Bosh ekran sozlamalari"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Administrator tomonidan o‘chirilgan"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Bosh ekranni burishga ruxsat"</string>
diff --git a/res/values-v29/styles.xml b/res/values-v29/styles.xml
index 7590594..8254d48 100644
--- a/res/values-v29/styles.xml
+++ b/res/values-v29/styles.xml
@@ -27,6 +27,7 @@
<item name="android:windowNoTitle">true</item>
<item name="android:windowShowWallpaper">true</item>
<item name="folderTextColor">?attr/workspaceTextColor</item>
+ <item name="isFolderDarkText">?attr/isWorkspaceDarkText</item>
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
<item name="android:enforceStatusBarContrast">false</item>
<item name="android:enforceNavigationBarContrast">false</item>
diff --git a/res/values-v30/styles.xml b/res/values-v30/styles.xml
index 71740a9..a144363 100644
--- a/res/values-v30/styles.xml
+++ b/res/values-v30/styles.xml
@@ -27,6 +27,7 @@
<item name="android:windowNoTitle">true</item>
<item name="android:windowShowWallpaper">true</item>
<item name="folderTextColor">?attr/workspaceTextColor</item>
+ <item name="isFolderDarkText">?attr/isWorkspaceDarkText</item>
<item name="android:windowLayoutInDisplayCutoutMode">always</item>
<item name="android:enforceStatusBarContrast">false</item>
<item name="android:enforceNavigationBarContrast">false</item>
diff --git a/res/values-v31/colors.xml b/res/values-v31/colors.xml
index 7f27bf8..5ade64c 100644
--- a/res/values-v31/colors.xml
+++ b/res/values-v31/colors.xml
@@ -17,8 +17,7 @@
*/
-->
<resources>
- <color name="popup_color_neutral_light">@android:color/system_neutral1_0</color>
- <color name="popup_color_primary_light">@android:color/system_neutral1_50</color>
+ <color name="popup_color_primary_light">@android:color/system_neutral1_0</color>
<color name="popup_color_secondary_light">@android:color/system_neutral2_100</color>
<color name="popup_color_tertiary_light">@android:color/system_neutral2_300</color>
<color name="popup_color_neutral_dark">@android:color/system_neutral1_1000</color>
@@ -26,8 +25,8 @@
<color name="popup_color_secondary_dark">@android:color/system_neutral1_900</color>
<color name="popup_color_tertiary_dark">@android:color/system_neutral2_700</color>
- <color name="workspace_text_color_light">@android:color/system_neutral1_50</color>
- <color name="workspace_text_color_dark">@android:color/system_neutral1_900</color>
+ <color name="workspace_text_color_light">@android:color/system_neutral1_0</color>
+ <color name="workspace_text_color_dark">@android:color/system_neutral1_1000</color>
<color name="text_color_primary_dark">@android:color/system_neutral1_50</color>
<color name="text_color_secondary_dark">@android:color/system_neutral2_200</color>
@@ -35,4 +34,4 @@
<color name="wallpaper_popup_scrim">@android:color/system_neutral1_900</color>
-</resources>
\ No newline at end of file
+</resources>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index a026dbc..495b4e4 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Thư mục: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> mục"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Thư mục: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> mục trở lên"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Hình nền"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Kiểu và hình nền"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"Cài đặt màn hình chính"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Bị tắt bởi quản trị viên của bạn"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Cho phép xoay Màn hình chính"</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index d79f181..86685b5 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -32,10 +32,8 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"点按两次并按住微件即可移动该微件或使用自定义操作。"</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"宽 %1$d,高 %2$d"</string>
- <!-- no translation found for add_item_request_drag_hint (5653291305078645405) -->
- <skip />
- <!-- no translation found for add_to_home_screen (8631549138215492708) -->
- <skip />
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"轻触并按住该微件即可将其在主屏幕上四处移动"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"添加到主屏幕"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> 个微件</item>
<item quantity="one"><xliff:g id="WIDGETS_COUNT_0">%1$d</xliff:g> 个微件</item>
@@ -99,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"文件夹:<xliff:g id="NAME">%1$s</xliff:g>,<xliff:g id="SIZE">%2$d</xliff:g> 个项目"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"文件夹:<xliff:g id="NAME">%1$s</xliff:g>,<xliff:g id="SIZE">%2$d</xliff:g> 个或更多项目"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"壁纸"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"样式和壁纸"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"主屏幕设置"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"已被您的管理员停用"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"允许旋转主屏幕"</string>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index d32611d..9334b8e 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"資料夾:<xliff:g id="NAME">%1$s</xliff:g>,<xliff:g id="SIZE">%2$d</xliff:g> 個項目"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"資料夾:<xliff:g id="NAME">%1$s</xliff:g>,<xliff:g id="SIZE">%2$d</xliff:g> 個或以上的項目"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"桌布"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"樣式和桌布"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"主畫面設定"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"已由您的管理員停用"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"允許主畫面旋轉"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 58e8f19..da1743f 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -97,7 +97,8 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"資料夾:<xliff:g id="NAME">%1$s</xliff:g>,<xliff:g id="SIZE">%2$d</xliff:g> 個項目"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"資料夾:<xliff:g id="NAME">%1$s</xliff:g>,<xliff:g id="SIZE">%2$d</xliff:g> 個以上的項目"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"桌布"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"樣式和桌布"</string>
+ <!-- no translation found for styles_wallpaper_button_text (8216961355289236794) -->
+ <skip />
<string name="settings_button_text" msgid="8873672322605444408">"主畫面設定"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"已由你的管理員停用"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"允許旋轉主畫面"</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 3892f6b..dbdcf17 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -97,7 +97,7 @@
<string name="folder_name_format_exact" msgid="8626242716117004803">"Ifolda: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> izinto"</string>
<string name="folder_name_format_overflow" msgid="4270108890534995199">"Ifolda: <xliff:g id="NAME">%1$s</xliff:g>, <xliff:g id="SIZE">%2$d</xliff:g> noma izinto eziningi"</string>
<string name="wallpaper_button_text" msgid="8404103075899945851">"Izithombe zangemuva"</string>
- <string name="styles_wallpaper_button_text" msgid="4342122323125579619">"Izitayela nezithombe zangemuva"</string>
+ <string name="styles_wallpaper_button_text" msgid="8216961355289236794">"Isithombe sangemuva nesitayela"</string>
<string name="settings_button_text" msgid="8873672322605444408">"Izilungiselelo zasekhaya"</string>
<string name="msg_disabled_by_admin" msgid="6898038085516271325">"Kukhutshazwe umlawuli wakho"</string>
<string name="allow_rotation_title" msgid="7728578836261442095">"Vumela ukuphendukiswa kwesikrini sasekhaya"</string>
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
index a81802d..e605ca8 100644
--- a/res/values/attrs.xml
+++ b/res/values/attrs.xml
@@ -21,7 +21,6 @@
<attr name="allAppsScrimColor" format="color" />
<attr name="allAppsNavBarScrimColor" format="color" />
<attr name="allAppsTheme" format="reference" />
- <attr name="popupColorNeutral" format="color" />
<attr name="popupColorPrimary" format="color" />
<attr name="popupColorSecondary" format="color" />
<attr name="popupColorTertiary" format="color" />
@@ -43,6 +42,7 @@
<attr name="folderIconBorderColor" format="color" />
<attr name="folderTextColor" format="color" />
<attr name="folderHintColor" format="color" />
+ <attr name="isFolderDarkText" format="boolean" />
<attr name="workProfileOverlayTextColor" format="color" />
<attr name="gridColor" format="color" />
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 83d2deb..e6553a2 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -41,7 +41,6 @@
<color name="gesture_tutorial_action_button_label_color">#FF000000</color>
<color name="gesture_tutorial_primary_color">#B7F29F</color> <!-- Light Green -->
- <color name="popup_color_neutral_light">#FFF</color>
<color name="popup_color_primary_light">#FFF</color>
<color name="popup_color_secondary_light">#F1F3F4</color>
<color name="popup_color_tertiary_light">#E0E0E0</color> <!-- Gray 300 -->
@@ -51,12 +50,13 @@
<color name="popup_color_tertiary_dark">#757575</color> <!-- Gray 600 -->
<color name="workspace_text_color_light">#FFF</color>
- <color name="workspace_text_color_dark">#FF212121</color>
+ <color name="workspace_text_color_dark">#FF000000</color>
<color name="text_color_primary_dark">#FFFFFFFF</color>
<color name="text_color_secondary_dark">#FFFFFFFF</color>
<color name="text_color_tertiary_dark">#CCFFFFFF</color>
<color name="wallpaper_popup_scrim">?android:attr/colorAccent</color>
+ <color name="wallpaper_scrim_color">#0D878787</color>
</resources>
diff --git a/res/values/config.xml b/res/values/config.xml
index 9ad1224..e65c652 100644
--- a/res/values/config.xml
+++ b/res/values/config.xml
@@ -1,7 +1,6 @@
<resources>
<!-- Miscellaneous -->
<bool name="config_largeHeap">false</bool>
- <bool name="allow_rotation">false</bool>
<integer name="extracted_color_gradient_alpha">153</integer>
@@ -77,11 +76,6 @@
<!-- Menu id for feature flags -->
<item type="id" name="menu_apply_flags" />
- <!-- Popup items -->
- <integer name="config_popupOpenCloseDuration">150</integer>
- <integer name="config_popupArrowOpenCloseDuration">40</integer>
- <integer name="config_removeNotificationViewDuration">300</integer>
-
<!-- Default packages -->
<string name="wallpaper_picker_package" translatable="false"></string>
<string name="local_colors_extraction_class" translatable="false"></string>
@@ -142,7 +136,7 @@
<item name="swipe_up_trans_y_stiffness" type="dimen" format="float">200</item>
<item name="swipe_up_rect_xy_damping_ratio" type="dimen" format="float">0.8</item>
- <item name="swipe_up_rect_xy_stiffness" type="dimen" format="float">100</item>
+ <item name="swipe_up_rect_xy_stiffness" type="dimen" format="float">200</item>
<item name="swipe_up_rect_2_x_damping_ratio" type="dimen" format="float">1</item>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index fe0b11b..26587d8 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -84,7 +84,7 @@
<dimen name="fastscroll_end_margin">-26dp</dimen>
<!-- All Apps -->
- <dimen name="all_apps_open_vertical_translate">300dp</dimen>
+ <dimen name="all_apps_open_vertical_translate">320dp</dimen>
<dimen name="all_apps_search_bar_field_height">48dp</dimen>
<dimen name="all_apps_search_bar_bottom_padding">30dp</dimen>
<dimen name="all_apps_empty_search_message_top_offset">40dp</dimen>
@@ -92,7 +92,8 @@
<dimen name="all_apps_background_canvas_width">700dp</dimen>
<dimen name="all_apps_background_canvas_height">475dp</dimen>
<dimen name="all_apps_header_pill_height">50dp</dimen>
- <dimen name="all_apps_header_pill_corner_radius">50dp</dimen>
+ <dimen name="all_apps_header_pill_corner_radius">48dp</dimen>
+ <dimen name="all_apps_header_tab_height">48dp</dimen>
<dimen name="all_apps_tabs_indicator_height">2dp</dimen>
<dimen name="all_apps_header_top_padding">36dp</dimen>
<dimen name="all_apps_work_profile_tab_footer_top_padding">16dp</dimen>
@@ -137,7 +138,6 @@
<dimen name="widget_section_icon_size">40dp</dimen>
<dimen name="widget_section_vertical_padding">8dp</dimen>
<dimen name="widget_section_horizontal_padding">16dp</dimen>
- <dimen name="widget_section_indent">0dp</dimen>
<dimen name="widget_row_padding">8dp</dimen>
<dimen name="widget_row_divider">2dp</dimen>
@@ -202,7 +202,8 @@
<dimen name="pending_widget_elevation">2dp</dimen>
<!-- Deep shortcuts -->
- <dimen name="deep_shortcuts_elevation">0dp</dimen>
+ <dimen name="deep_shortcuts_elevation">2dp</dimen>
+ <dimen name="bg_popup_padding">2dp</dimen>
<dimen name="bg_popup_item_width">216dp</dimen>
<dimen name="bg_popup_item_height">56dp</dimen>
<dimen name="pre_drag_view_scale">6dp</dimen>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index 97a5760..fa41b1a 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -27,6 +27,7 @@
<item name="android:windowNoTitle">true</item>
<item name="android:windowShowWallpaper">true</item>
<item name="folderTextColor">?attr/workspaceTextColor</item>
+ <item name="isFolderDarkText">?attr/isWorkspaceDarkText</item>
</style>
<style name="LauncherTheme" parent="@style/BaseLauncherTheme">
@@ -34,7 +35,6 @@
<item name="allAppsScrimColor">?android:attr/colorBackgroundFloating</item>
<item name="allAppsNavBarScrimColor">#66FFFFFF</item>
<item name="allAppsTheme">@style/AllAppsTheme</item>
- <item name="popupColorNeutral">@color/popup_color_neutral_light</item>
<item name="popupColorPrimary">@color/popup_color_primary_light</item>
<item name="popupColorSecondary">@color/popup_color_secondary_light</item>
<item name="popupColorTertiary">@color/popup_color_tertiary_light</item>
@@ -42,7 +42,7 @@
<item name="isWorkspaceDarkText">false</item>
<item name="workspaceTextColor">@color/workspace_text_color_light</item>
<item name="workspaceShadowColor">#B0000000</item>
- <item name="workspaceAmbientShadowColor">#00000000</item>
+ <item name="workspaceAmbientShadowColor">#40000000</item>
<item name="workspaceKeyShadowColor">#89000000</item>
<item name="workspaceStatusBarScrim">@drawable/workspace_bg</item>
<item name="widgetsTheme">@style/WidgetContainerTheme</item>
@@ -50,6 +50,7 @@
<item name="folderFillColor">?android:attr/colorBackground</item>
<item name="folderIconBorderColor">?android:attr/colorPrimary</item>
<item name="folderTextColor">?android:attr/textColorPrimary</item>
+ <item name="isFolderDarkText">true</item>
<item name="folderHintColor">#89616161</item>
<item name="loadingIconColor">#CCFFFFFF</item>
<item name="iconOnlyShortcutColor">?android:attr/textColorSecondary</item>
@@ -71,6 +72,7 @@
<style name="LauncherTheme.DarkMainColor" parent="@style/LauncherTheme">
<item name="folderFillColor">#FF3C4043</item> <!-- 100% GM2 800 -->
<item name="folderTextColor">?attr/workspaceTextColor</item>
+ <item name="isFolderDarkText">?attr/isWorkspaceDarkText</item>
<item name="disabledIconAlpha">.254</item>
</style>
@@ -86,6 +88,7 @@
<item name="folderFillColor">#CDFFFFFF</item>
<item name="folderIconBorderColor">#FF80868B</item>
<item name="folderTextColor">?attr/workspaceTextColor</item>
+ <item name="isFolderDarkText">true</item>
</style>
<style name="LauncherTheme.Dark" parent="@style/LauncherTheme">
@@ -93,12 +96,11 @@
<item name="android:textColorSecondary">@color/text_color_secondary_dark</item>
<item name="android:textColorTertiary">@color/text_color_tertiary_dark</item>
<item name="android:textColorHint">#A0FFFFFF</item>
- <item name="android:colorControlHighlight">#A0FFFFFF</item>
+ <item name="android:colorControlHighlight">#19FFFFFF</item>
<item name="android:colorPrimary">#FF212121</item>
<item name="allAppsScrimColor">?android:attr/colorBackgroundFloating</item>
<item name="allAppsNavBarScrimColor">#80000000</item>
<item name="allAppsTheme">@style/AllAppsTheme.Dark</item>
- <item name="popupColorNeutral">@color/popup_color_neutral_dark</item>
<item name="popupColorPrimary">@color/popup_color_primary_dark</item>
<item name="popupColorSecondary">@color/popup_color_secondary_dark</item>
<item name="popupColorTertiary">@color/popup_color_tertiary_dark</item>
@@ -107,6 +109,7 @@
<item name="folderFillColor">?android:attr/colorBackground</item>
<item name="folderIconBorderColor">?android:attr/colorPrimary</item>
<item name="folderTextColor">?android:attr/textColorPrimary</item>
+ <item name="isFolderDarkText">false</item>
<item name="folderHintColor">#89CCCCCC</item>
<item name="isMainColorDark">true</item>
<item name="loadingIconColor">#99FFFFFF</item>
@@ -119,13 +122,15 @@
<style name="LauncherTheme.Dark.DarkMainColor" parent="@style/LauncherTheme.Dark">
<item name="folderFillColor">#FF3C4043</item> <!-- 100% GM2 800 -->
<item name="folderTextColor">@android:color/white</item>
+ <item name="isFolderDarkText">false</item>
<item name="disabledIconAlpha">.54</item>
</style>
<style name="LauncherTheme.Dark.DarkText" parent="@style/LauncherTheme.Dark">
- <item name="android:colorControlHighlight">#75212121</item>
+ <item name="android:colorControlHighlight">#19212121</item>
<item name="folderFillColor">#CDFFFFFF</item>
<item name="folderTextColor">?attr/workspaceTextColor</item>
+ <item name="isFolderDarkText">?attr/isWorkspaceDarkText</item>
<item name="workspaceTextColor">@color/workspace_text_color_dark</item>
<item name="workspaceShadowColor">@android:color/transparent</item>
<item name="workspaceAmbientShadowColor">@android:color/transparent</item>
@@ -195,7 +200,7 @@
<item name="android:alpha">0</item>
<item name="android:elevation">3dp</item>
<item name="android:saveEnabled">false</item>
- <item name="android:textColor">@android:color/white</item>
+ <item name="android:textColor">?android:attr/textColorPrimaryInverse</item>
<item name="android:includeFontPadding">false</item>
<item name="android:importantForAccessibility">no</item>
</style>
@@ -241,7 +246,7 @@
<item name="android:shadowRadius">2.0</item>
<item name="android:shadowColor">?attr/workspaceShadowColor</item>
<item name="ambientShadowColor">?attr/workspaceAmbientShadowColor</item>
- <item name="ambientShadowBlur">2.5dp</item>
+ <item name="ambientShadowBlur">1.5dp</item>
<item name="keyShadowColor">?attr/workspaceKeyShadowColor</item>
<item name="keyShadowBlur">.5dp</item>
<item name="keyShadowOffsetX">.5dp</item>
@@ -274,12 +279,12 @@
<style name="AllAppsEmptySearchBackground">
<item name="android:colorPrimary">#E0E0E0</item>
- <item name="android:colorControlHighlight">#BDBDBD</item>
+ <item name="android:colorControlHighlight">#19BDBDBD</item>
<item name="android:colorForeground">@color/all_apps_bg_hand_fill</item>
</style>
<style name="AllAppsEmptySearchBackground.Dark">
<item name="android:colorPrimary">#9AA0A6</item>
- <item name="android:colorControlHighlight">#DFE1E5</item>
+ <item name="android:colorControlHighlight">#19DFE1E5</item>
<item name="android:colorForeground">@color/all_apps_bg_hand_fill_dark</item>
</style>
diff --git a/res/xml/dynamic_resources.xml b/res/xml/dynamic_resources.xml
index f5d2628..3a3e239 100644
--- a/res/xml/dynamic_resources.xml
+++ b/res/xml/dynamic_resources.xml
@@ -4,6 +4,6 @@
<entry id="@color/delete_target_hover_tint" />
<entry id="@color/delete_target_hover_tint" />
<entry id="@color/delete_target_hover_tint" />
+ <entry id="@color/wallpaper_scrim_color" />
-
-</DynamicResources>
\ No newline at end of file
+</DynamicResources>
diff --git a/res/xml/launcher_preferences.xml b/res/xml/launcher_preferences.xml
index 8195cc1..90de498 100644
--- a/res/xml/launcher_preferences.xml
+++ b/res/xml/launcher_preferences.xml
@@ -45,7 +45,7 @@
android:key="pref_allowRotation"
android:title="@string/allow_rotation_title"
android:summary="@string/allow_rotation_desc"
- android:defaultValue="@bool/allow_rotation"
+ android:defaultValue="false"
android:persistent="true"
launcher:logIdOn="615"
launcher:logIdOff="616" />
diff --git a/src/com/android/launcher3/AbstractFloatingView.java b/src/com/android/launcher3/AbstractFloatingView.java
index 95cdbdd..32b2c9a 100644
--- a/src/com/android/launcher3/AbstractFloatingView.java
+++ b/src/com/android/launcher3/AbstractFloatingView.java
@@ -39,6 +39,7 @@
import com.android.launcher3.util.TouchController;
import com.android.launcher3.views.ActivityContext;
import com.android.launcher3.views.BaseDragLayer;
+import com.android.launcher3.widget.LocalColorExtractor;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -108,12 +109,21 @@
protected boolean mIsOpen;
+ // Index used to get background color when using local wallpaper color extraction.
+ protected int mColorExtractionIndex;
+
public AbstractFloatingView(Context context, AttributeSet attrs) {
super(context, attrs);
+ init(context);
}
public AbstractFloatingView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
+ init(context);
+ }
+
+ private void init(Context context) {
+ mColorExtractionIndex = LocalColorExtractor.getColorIndex(context);
}
/**
diff --git a/src/com/android/launcher3/BaseActivity.java b/src/com/android/launcher3/BaseActivity.java
index f64ce5c..9778b61 100644
--- a/src/com/android/launcher3/BaseActivity.java
+++ b/src/com/android/launcher3/BaseActivity.java
@@ -132,6 +132,7 @@
private final ViewCache mViewCache = new ViewCache();
+ @Override
public ViewCache getViewCache() {
return mViewCache;
}
diff --git a/src/com/android/launcher3/ButtonDropTarget.java b/src/com/android/launcher3/ButtonDropTarget.java
index 00317f7..af77bf8 100644
--- a/src/com/android/launcher3/ButtonDropTarget.java
+++ b/src/com/android/launcher3/ButtonDropTarget.java
@@ -74,7 +74,6 @@
protected final Launcher mLauncher;
- private int mBottomDragPadding;
protected DropTargetBar mDropTargetBar;
/** Whether this drop target is active for the current drag */
@@ -103,7 +102,6 @@
mLauncher = Launcher.getLauncher(context);
Resources resources = getResources();
- mBottomDragPadding = resources.getDimensionPixelSize(R.dimen.drop_target_drag_padding);
mDragDistanceThreshold = resources.getDimensionPixelSize(R.dimen.drag_distanceThreshold);
}
@@ -276,7 +274,7 @@
@Override
public void getHitRectRelativeToDragLayer(android.graphics.Rect outRect) {
super.getHitRect(outRect);
- outRect.bottom += mBottomDragPadding;
+ outRect.bottom += mLauncher.getDeviceProfile().dropTargetDragPaddingPx;
sTempCords[0] = sTempCords[1] = 0;
mLauncher.getDragLayer().getDescendantCoordRelativeToSelf(this, sTempCords);
diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java
index d5860dc..8126673 100644
--- a/src/com/android/launcher3/DeviceProfile.java
+++ b/src/com/android/launcher3/DeviceProfile.java
@@ -16,10 +16,13 @@
package com.android.launcher3;
+import static android.util.DisplayMetrics.DENSITY_DEVICE_STABLE;
import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION;
import static com.android.launcher3.ResourceUtils.pxFromDp;
import static com.android.launcher3.Utilities.dpiFromPx;
+import static com.android.launcher3.Utilities.pxFromSp;
+import static com.android.launcher3.util.WindowManagerCompat.MIN_TABLET_WIDTH;
import android.annotation.SuppressLint;
import android.content.Context;
@@ -61,6 +64,7 @@
public final boolean isPhone;
public final boolean transposeLayoutWithOrientation;
public final boolean isTwoPanels;
+ public final boolean allowRotation;
// Device properties in current orientation
public final boolean isLandscape;
@@ -172,6 +176,8 @@
// Drop Target
public int dropTargetBarSizePx;
+ public int dropTargetDragPaddingPx;
+ public int dropTargetTextSizePx;
// Insets
private final Rect mInsets = new Rect();
@@ -190,6 +196,9 @@
// How much of the bottom inset is due to Taskbar rather than other system elements.
public int nonOverlappingTaskbarInset;
+ // DragController
+ public int flingToDeleteThresholdVelocity;
+
DeviceProfile(Context context, InvariantDeviceProfile inv, Info info, WindowBounds windowBounds,
boolean isMultiWindowMode, boolean transposeLayoutWithOrientation,
boolean useTwoPanels) {
@@ -210,7 +219,12 @@
int nonFinalAvailableHeightPx = windowBounds.availableSize.y;
mInfo = info;
- isTablet = info.isTablet(windowBounds);
+ // If the device's pixel density was scaled (usually via settings for A11y), use the
+ // original dimensions to determine if rotation is allowed of not.
+ float originalSmallestWidth = dpiFromPx(Math.min(widthPx, heightPx), DENSITY_DEVICE_STABLE);
+ allowRotation = originalSmallestWidth >= MIN_TABLET_WIDTH;
+ // Tablet UI does not support emulated landscape.
+ isTablet = allowRotation && info.isTablet(windowBounds);
isPhone = !isTablet;
isTwoPanels = isTablet && useTwoPanels;
@@ -287,7 +301,11 @@
iconDrawablePaddingOriginalPx =
res.getDimensionPixelSize(R.dimen.dynamic_grid_icon_drawable_padding);
+
dropTargetBarSizePx = res.getDimensionPixelSize(R.dimen.dynamic_grid_drop_target_size);
+ dropTargetDragPaddingPx = res.getDimensionPixelSize(R.dimen.drop_target_drag_padding);
+ dropTargetTextSizePx = res.getDimensionPixelSize(R.dimen.drop_target_text_size);
+
workspaceSpringLoadedBottomSpace =
res.getDimensionPixelSize(R.dimen.dynamic_grid_min_spring_loaded_space);
@@ -354,6 +372,9 @@
}
updateWorkspacePadding();
+ flingToDeleteThresholdVelocity = res.getDimensionPixelSize(
+ R.dimen.drag_flingToDeleteMinVelocity);
+
// This is done last, after iconSizePx is calculated above.
Path dotPath = GraphicsUtils.getShapePath(DEFAULT_DOT_SIZE);
mDotRendererWorkSpace = new DotRenderer(iconSizePx, dotPath, DEFAULT_DOT_SIZE);
@@ -498,7 +519,7 @@
float invIconSizeDp = isLandscape ? inv.landscapeIconSize : inv.iconSize;
iconSizePx = Math.max(1, pxFromDp(invIconSizeDp, mMetrics, scale));
float invIconTextSizeSp = isLandscape ? inv.landscapeIconTextSize : inv.iconTextSize;
- iconTextSizePx = (int) (Utilities.pxFromSp(invIconTextSizeSp, mMetrics) * scale);
+ iconTextSizePx = (int) (pxFromSp(invIconTextSizeSp, mMetrics) * scale);
iconDrawablePaddingPx = (int) (iconDrawablePaddingOriginalPx * scale);
setCellLayoutBorderSpacing((int) (cellLayoutBorderSpacingOriginalPx * scale));
@@ -528,7 +549,7 @@
// All apps
if (numShownAllAppsColumns != inv.numColumns) {
allAppsIconSizePx = pxFromDp(inv.allAppsIconSize, mMetrics);
- allAppsIconTextSizePx = Utilities.pxFromSp(inv.allAppsIconTextSize, mMetrics);
+ allAppsIconTextSizePx = pxFromSp(inv.allAppsIconTextSize, mMetrics);
allAppsIconDrawablePaddingPx = iconDrawablePaddingOriginalPx;
autoResizeAllAppsCells();
} else {
@@ -599,7 +620,7 @@
private void updateFolderCellSize(float scale, Resources res) {
float invIconSizeDp = isVerticalBarLayout() ? inv.landscapeIconSize : inv.iconSize;
folderChildIconSizePx = Math.max(1, pxFromDp(invIconSizeDp, mMetrics, scale));
- folderChildTextSizePx = pxFromDp(inv.iconTextSize, mMetrics, scale);
+ folderChildTextSizePx = pxFromSp(inv.iconTextSize, mMetrics, scale);
folderLabelTextSizePx = (int) (folderChildTextSizePx * folderLabelTextScale);
int textHeight = Utilities.calculateTextHeight(folderChildTextSizePx);
@@ -821,6 +842,7 @@
writer.println(prefix + "DeviceProfile:");
writer.println(prefix + "\t1 dp = " + mMetrics.density + " px");
+ writer.println(prefix + "\tallowRotation:" + allowRotation);
writer.println(prefix + "\tisTablet:" + isTablet);
writer.println(prefix + "\tisPhone:" + isPhone);
writer.println(prefix + "\ttransposeLayoutWithOrientation:"
diff --git a/src/com/android/launcher3/DropTargetBar.java b/src/com/android/launcher3/DropTargetBar.java
index c768493..4a1b084 100644
--- a/src/com/android/launcher3/DropTargetBar.java
+++ b/src/com/android/launcher3/DropTargetBar.java
@@ -25,6 +25,7 @@
import android.content.Context;
import android.graphics.Rect;
import android.util.AttributeSet;
+import android.util.TypedValue;
import android.view.Gravity;
import android.view.View;
import android.view.ViewDebug;
@@ -114,6 +115,7 @@
}
setLayoutParams(lp);
for (ButtonDropTarget button : mDropTargets) {
+ button.setTextSize(TypedValue.COMPLEX_UNIT_PX, grid.dropTargetTextSizePx);
button.setToolTipLocation(tooltipLocation);
}
}
diff --git a/src/com/android/launcher3/ExtendedEditText.java b/src/com/android/launcher3/ExtendedEditText.java
index 4312939..20c6938 100644
--- a/src/com/android/launcher3/ExtendedEditText.java
+++ b/src/com/android/launcher3/ExtendedEditText.java
@@ -15,6 +15,8 @@
*/
package com.android.launcher3;
+import static com.android.launcher3.util.UiThreadHelper.hideKeyboardAsync;
+
import android.content.Context;
import android.text.TextUtils;
import android.util.AttributeSet;
@@ -25,7 +27,7 @@
import android.widget.EditText;
import com.android.launcher3.config.FeatureFlags;
-import com.android.launcher3.util.UiThreadHelper;
+import com.android.launcher3.views.ActivityContext;
/**
@@ -99,7 +101,7 @@
}
public void hideKeyboard() {
- UiThreadHelper.hideKeyboardAsync(Launcher.getLauncher(getContext()), getWindowToken());
+ hideKeyboardAsync(ActivityContext.lookupContext(getContext()), getWindowToken());
}
private boolean showSoftInput() {
diff --git a/src/com/android/launcher3/InvariantDeviceProfile.java b/src/com/android/launcher3/InvariantDeviceProfile.java
index 7836fa3..318dde1 100644
--- a/src/com/android/launcher3/InvariantDeviceProfile.java
+++ b/src/com/android/launcher3/InvariantDeviceProfile.java
@@ -369,10 +369,6 @@
}
private void onConfigChanged(Context context) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "IDP.onConfigChanged");
- }
-
// Re-init grid
String gridName = getCurrentGridName(context);
initGrid(context, gridName);
@@ -527,11 +523,6 @@
float availableWidth = config.screenWidthDp * res.getDisplayMetrics().density;
float availableHeight = config.screenHeightDp * res.getDisplayMetrics().density;
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED,
- "getDeviceProfile: orientation=" + config.orientation
- + " size=" + availableWidth + "x" + availableHeight);
- }
DeviceProfile bestMatch = supportedProfiles.get(0);
float minDiff = Float.MAX_VALUE;
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index deb1147..7b67807 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -124,6 +124,7 @@
import com.android.launcher3.dragndrop.DragLayer;
import com.android.launcher3.dragndrop.DragOptions;
import com.android.launcher3.dragndrop.DragView;
+import com.android.launcher3.dragndrop.LauncherDragController;
import com.android.launcher3.folder.FolderGridOrganizer;
import com.android.launcher3.folder.FolderIcon;
import com.android.launcher3.icons.BitmapRenderer;
@@ -428,7 +429,7 @@
mIconCache = app.getIconCache();
mAccessibilityDelegate = createAccessibilityDelegate();
- mDragController = new DragController(this);
+ mDragController = new LauncherDragController(this);
mAllAppsController = new AllAppsTransitionController(this);
mStateManager = new StateManager<>(this, NORMAL);
@@ -554,21 +555,12 @@
onIdpChanged(mDeviceProfile.inv);
}
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "onConfigurationChanged: diff=" + diff);
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "newConfig=" + newConfig);
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "oldConfig=" + mOldConfig);
- }
-
mOldConfig.setTo(newConfig);
super.onConfigurationChanged(newConfig);
}
@Override
public void onIdpChanged(InvariantDeviceProfile idp) {
- if (TestProtocol.sDebugTracing) {
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "onIdpChanged");
- }
initDeviceProfile(idp);
dispatchDeviceProfileChanged();
reapplyUi();
@@ -913,7 +905,7 @@
} else {
mOverlayManager.onActivityStopped(this);
}
-
+ hideKeyboard();
logStopAndResume(false /* isResume */);
mAppWidgetHost.setActivityStarted(false);
NotificationListener.removeNotificationsChangedListener();
@@ -1192,7 +1184,7 @@
// Setup the drag controller (drop targets have to be added in reverse order in priority)
mDropTargetBar.setup(mDragController);
- mAllAppsController.setupViews(mAppsView);
+ mAllAppsController.setupViews(mScrimView, mAppsView);
}
/**
@@ -1346,14 +1338,7 @@
private final BroadcastReceiver mScreenOffReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
- // Reset AllApps to its initial state only if we are not in the middle of
- // processing a multi-step drop
- if (mPendingRequestArgs == null) {
- if (!isInState(NORMAL)) {
- onUiChangedWhileSleeping();
- }
- mStateManager.goToState(NORMAL);
- }
+ onScreenOff();
}
};
@@ -1474,7 +1459,7 @@
&& AbstractFloatingView.getTopOpenView(this) == null;
boolean isActionMain = Intent.ACTION_MAIN.equals(intent.getAction());
boolean internalStateHandled = ACTIVITY_TRACKER.handleNewIntent(this, intent);
-
+ hideKeyboard();
if (isActionMain) {
if (!internalStateHandled) {
// In all these cases, only animate if we're already on home
@@ -1496,9 +1481,6 @@
}
}
- // Handle HOME_INTENT
- hideKeyboard();
-
if (mLauncherCallbacks != null) {
mLauncherCallbacks.onHomeIntent(internalStateHandled);
}
@@ -1923,6 +1905,17 @@
}
}
+ protected void onScreenOff() {
+ // Reset AllApps to its initial state only if we are not in the middle of
+ // processing a multi-step drop
+ if (mPendingRequestArgs == null) {
+ if (!isInState(NORMAL)) {
+ onUiChangedWhileSleeping();
+ }
+ mStateManager.goToState(NORMAL);
+ }
+ }
+
@TargetApi(Build.VERSION_CODES.M)
@Override
protected boolean onErrorStartingShortcut(Intent intent, ItemInfo info) {
@@ -2159,12 +2152,29 @@
*/
@Override
public void bindItems(final List<ItemInfo> items, final boolean forceAnimateIcons) {
+ bindItems(items, forceAnimateIcons, /* focusFirstItemForAccessibility= */ false);
+ }
+
+
+ /**
+ * Bind the items start-end from the list.
+ *
+ * Implementation of the method from LauncherModel.Callbacks.
+ *
+ * @param focusFirstItemForAccessibility true iff the first item to be added to the workspace
+ * should be focused for accessibility.
+ */
+ public void bindItems(
+ final List<ItemInfo> items,
+ final boolean forceAnimateIcons,
+ final boolean focusFirstItemForAccessibility) {
// Get the list of added items and intersect them with the set of items here
final Collection<Animator> bounceAnims = new ArrayList<>();
final boolean animateIcons = forceAnimateIcons && canRunNewAppsAnimation();
Workspace workspace = mWorkspace;
int newItemsScreenId = -1;
int end = items.size();
+ View newView = null;
for (int i = 0; i < end; i++) {
final ItemInfo item = items.get(i);
@@ -2229,12 +2239,25 @@
bounceAnims.add(createNewAppBounceAnimation(view, i));
newItemsScreenId = item.screenId;
}
+
+ if (newView == null) {
+ newView = view;
+ }
}
- // Animate to the correct page
+ View viewToFocus = newView;
+ // Animate to the correct pager
if (animateIcons && newItemsScreenId > -1) {
AnimatorSet anim = new AnimatorSet();
anim.playTogether(bounceAnims);
+ if (focusFirstItemForAccessibility && viewToFocus != null) {
+ anim.addListener(new AnimatorListenerAdapter() {
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ viewToFocus.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);
+ }
+ });
+ }
int currentScreenId = mWorkspace.getScreenIdForPageIndex(mWorkspace.getNextPage());
final int newScreenIndex = mWorkspace.getPageIndexForScreenId(newItemsScreenId);
@@ -2257,6 +2280,8 @@
} else {
mWorkspace.postDelayed(startBounceAnimRunnable, NEW_APPS_ANIMATION_DELAY);
}
+ } else if (focusFirstItemForAccessibility && viewToFocus != null) {
+ viewToFocus.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_FOCUSED);
}
workspace.requestLayout();
}
diff --git a/src/com/android/launcher3/PagedView.java b/src/com/android/launcher3/PagedView.java
index fb21698..b26a7ea 100644
--- a/src/com/android/launcher3/PagedView.java
+++ b/src/com/android/launcher3/PagedView.java
@@ -59,7 +59,7 @@
import com.android.launcher3.views.ActivityContext;
import java.util.ArrayList;
-import java.util.List;
+import java.util.function.Consumer;
/**
* An abstraction of the original Workspace which supports browsing through a
@@ -295,18 +295,16 @@
}
/**
- * Returns the currently visible pages.
+ * Executes the callback against each visible page
*/
- public Iterable<View> getVisiblePages() {
+ public void forEachVisiblePage(Consumer<View> callback) {
int panelCount = getPanelCount();
- List<View> visiblePages = new ArrayList<>(panelCount);
for (int i = mCurrentPage; i < mCurrentPage + panelCount; i++) {
View page = getPageAt(i);
if (page != null) {
- visiblePages.add(page);
+ callback.accept(page);
}
}
- return visiblePages;
}
/**
@@ -461,11 +459,6 @@
}
}
- // we moved this functionality to a helper function so SmoothPagedView can reuse it
- protected boolean computeScrollHelper() {
- return computeScrollHelper(true);
- }
-
protected void announcePageForAccessibility() {
if (isAccessibilityEnabled(getContext())) {
// Notify the user when the page changes
@@ -473,7 +466,7 @@
}
}
- protected boolean computeScrollHelper(boolean shouldInvalidate) {
+ protected boolean computeScrollHelper() {
if (mScroller.computeScrollOffset()) {
// Don't bother scrolling if the page does not need to be moved
int oldPos = mOrientationHandler.getPrimaryScroll(this);
@@ -481,23 +474,29 @@
if (oldPos != newPos) {
mOrientationHandler.set(this, VIEW_SCROLL_TO, mScroller.getCurrX());
}
- if (shouldInvalidate) {
- if (mAllowOverScroll) {
- if (newPos < mMinScroll && oldPos >= mMinScroll) {
- mEdgeGlowLeft.onAbsorb((int) mScroller.getCurrVelocity());
- mScroller.abortAnimation();
- } else if (newPos > mMaxScroll && oldPos <= mMaxScroll) {
- mEdgeGlowRight.onAbsorb((int) mScroller.getCurrVelocity());
- mScroller.abortAnimation();
- }
+
+ if (mAllowOverScroll) {
+ if (newPos < mMinScroll && oldPos >= mMinScroll) {
+ mEdgeGlowLeft.onAbsorb((int) mScroller.getCurrVelocity());
+ mScroller.abortAnimation();
+ } else if (newPos > mMaxScroll && oldPos <= mMaxScroll) {
+ mEdgeGlowRight.onAbsorb((int) mScroller.getCurrVelocity());
+ mScroller.abortAnimation();
}
-
- invalidate();
}
- return true;
- } else if (mNextPage != INVALID_PAGE && shouldInvalidate) {
- sendScrollAccessibilityEvent();
+ // If the scroller has scrolled to the final position and there is no edge effect, then
+ // finish the scroller to skip waiting for additional settling
+ int finalPos = mOrientationHandler.getPrimaryValue(mScroller.getFinalX(),
+ mScroller.getFinalY());
+ if (newPos == finalPos && mEdgeGlowLeft.isFinished() && mEdgeGlowRight.isFinished()) {
+ mScroller.abortAnimation();
+ }
+
+ invalidate();
+ return true;
+ } else if (mNextPage != INVALID_PAGE) {
+ sendScrollAccessibilityEvent();
int prevPage = mCurrentPage;
mCurrentPage = validateNewPage(mNextPage);
mNextPage = INVALID_PAGE;
@@ -835,18 +834,25 @@
return;
}
+ // Add the current page's views as focusable and the next possible page's too. If the
+ // last focus change action was left then the left neighbour's views will be added, and
+ // if it was right then the right neighbour's views will be added.
+ // Unfortunately mCurrentPage can be outdated if there were multiple control actions in a
+ // short period of time, but mNextPage is up to date because it is always updated by
+ // method snapToPage.
+ int nextPage = getNextPage();
// XXX-RTL: This will be fixed in a future CL
- if (mCurrentPage >= 0 && mCurrentPage < getPageCount()) {
- getPageAt(mCurrentPage).addFocusables(views, direction, focusableMode);
+ if (nextPage >= 0 && nextPage < getPageCount()) {
+ getPageAt(nextPage).addFocusables(views, direction, focusableMode);
}
if (direction == View.FOCUS_LEFT) {
- if (mCurrentPage > 0) {
- int nextPage = validateNewPage(mCurrentPage - 1);
+ if (nextPage > 0) {
+ nextPage = validateNewPage(nextPage - 1);
getPageAt(nextPage).addFocusables(views, direction, focusableMode);
}
} else if (direction == View.FOCUS_RIGHT) {
- if (mCurrentPage < getPageCount() - 1) {
- int nextPage = validateNewPage(mCurrentPage + 1);
+ if (nextPage < getPageCount() - 1) {
+ nextPage = validateNewPage(nextPage + 1);
getPageAt(nextPage).addFocusables(views, direction, focusableMode);
}
}
@@ -1034,7 +1040,7 @@
// Try canceling the long press. It could also have been scheduled
// by a distant descendant, so use the mAllowLongPress flag to block
// everything
- getVisiblePages().forEach(View::cancelLongPress);
+ forEachVisiblePage(View::cancelLongPress);
}
protected float getScrollProgress(int screenCenter, View v, int page) {
@@ -1416,6 +1422,14 @@
@Override
public void requestChildFocus(View child, View focused) {
super.requestChildFocus(child, focused);
+
+ // In case the device is controlled by a controller, mCurrentPage isn't updated properly
+ // which results in incorrect navigation
+ int nextPage = getNextPage();
+ if (nextPage != mCurrentPage) {
+ setCurrentPage(nextPage);
+ }
+
int page = indexToPage(indexOfChild(child));
if (page >= 0 && page != getCurrentPage() && !isInTouchMode()) {
snapToPage(page);
diff --git a/src/com/android/launcher3/SessionCommitReceiver.java b/src/com/android/launcher3/SessionCommitReceiver.java
index fe58da9..558538c 100644
--- a/src/com/android/launcher3/SessionCommitReceiver.java
+++ b/src/com/android/launcher3/SessionCommitReceiver.java
@@ -24,10 +24,10 @@
import android.content.pm.PackageManager;
import android.os.UserHandle;
import android.text.TextUtils;
-import android.util.Log;
import androidx.annotation.WorkerThread;
+import com.android.launcher3.logging.FileLog;
import com.android.launcher3.model.ItemInstallQueue;
import com.android.launcher3.pm.InstallSessionHelper;
import com.android.launcher3.util.Executors;
@@ -71,7 +71,7 @@
return;
}
- Log.d(LOG,
+ FileLog.d(LOG,
"Adding package name to install queue. Package name: " + info.getAppPackageName()
+ ", has app icon: " + (info.getAppIcon() != null)
+ ", has app label: " + !TextUtils.isEmpty(info.getAppLabel()));
diff --git a/src/com/android/launcher3/Utilities.java b/src/com/android/launcher3/Utilities.java
index 7c00362..7ae729a 100644
--- a/src/com/android/launcher3/Utilities.java
+++ b/src/com/android/launcher3/Utilities.java
@@ -465,9 +465,14 @@
return (int) (dp * Resources.getSystem().getDisplayMetrics().density);
}
+
public static int pxFromSp(float size, DisplayMetrics metrics) {
- return (int) Math.round(TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP,
- size, metrics));
+ return pxFromSp(size, metrics, 1f);
+ }
+
+ public static int pxFromSp(float size, DisplayMetrics metrics, float scale) {
+ return Math.round(TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP,
+ size, metrics) * scale);
}
public static String createDbSelectionQuery(String columnName, IntArray values) {
diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java
index 7c5f99e..5ba7623 100644
--- a/src/com/android/launcher3/Workspace.java
+++ b/src/com/android/launcher3/Workspace.java
@@ -25,6 +25,7 @@
import static com.android.launcher3.LauncherState.HINT_STATE;
import static com.android.launcher3.LauncherState.NORMAL;
import static com.android.launcher3.LauncherState.SPRING_LOADED;
+import static com.android.launcher3.anim.AnimatorListeners.forSuccessCallback;
import static com.android.launcher3.config.FeatureFlags.ADAPTIVE_ICON_WINDOW_ANIM;
import static com.android.launcher3.dragndrop.DragLayer.ALPHA_INDEX_OVERLAY;
import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_HOME;
@@ -1163,10 +1164,6 @@
mWallpaperOffset.syncWithScroll();
}
- public void computeScrollWithoutInvalidation() {
- computeScrollHelper(false);
- }
-
@Override
public void announceForAccessibility(CharSequence text) {
// Don't announce if apps is on top of us.
@@ -1950,8 +1947,8 @@
}
parent.onDropChild(cell);
- mLauncher.getStateManager().goToState(
- NORMAL, SPRING_LOADED_EXIT_DELAY, onCompleteRunnable);
+ mLauncher.getStateManager().goToState(NORMAL, SPRING_LOADED_EXIT_DELAY,
+ onCompleteRunnable == null ? null : forSuccessCallback(onCompleteRunnable));
mStatsLogManager.logger().withItemInfo(d.dragInfo).withInstanceId(d.logInstanceId)
.log(LauncherEvent.LAUNCHER_ITEM_DROP_COMPLETED);
}
@@ -2974,7 +2971,7 @@
List<CellLayout> cellLayouts = new ArrayList<>(getPanelCount() + 1);
cellLayouts.add(getHotseat());
- getVisiblePages().forEach(page -> cellLayouts.add((CellLayout) page));
+ forEachVisiblePage(page -> cellLayouts.add((CellLayout) page));
// Order: App icons, app in folder. Items in hotseat get returned first.
if (ADAPTIVE_ICON_WINDOW_ANIM.get()) {
diff --git a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java
index dbdfb2b..2b36f19 100644
--- a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java
+++ b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java
@@ -3,6 +3,7 @@
import static android.view.accessibility.AccessibilityNodeInfo.ACTION_LONG_CLICK;
import static com.android.launcher3.LauncherState.NORMAL;
+import static com.android.launcher3.anim.AnimatorListeners.forSuccessCallback;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.IGNORE;
import android.appwidget.AppWidgetProviderInfo;
@@ -220,27 +221,26 @@
} else if (action == ADD_TO_WORKSPACE) {
final int[] coordinates = new int[2];
final int screenId = findSpaceOnWorkspace(item, coordinates);
- mLauncher.getStateManager().goToState(NORMAL, true, new Runnable() {
+ mLauncher.getStateManager().goToState(NORMAL, true, forSuccessCallback(() -> {
+ if (item instanceof AppInfo) {
+ WorkspaceItemInfo info = ((AppInfo) item).makeWorkspaceItem();
+ mLauncher.getModelWriter().addItemToDatabase(info,
+ Favorites.CONTAINER_DESKTOP,
+ screenId, coordinates[0], coordinates[1]);
- @Override
- public void run() {
- if (item instanceof AppInfo) {
- WorkspaceItemInfo info = ((AppInfo) item).makeWorkspaceItem();
- mLauncher.getModelWriter().addItemToDatabase(info,
- Favorites.CONTAINER_DESKTOP,
- screenId, coordinates[0], coordinates[1]);
-
- mLauncher.bindItems(Collections.singletonList(info), true);
- announceConfirmation(R.string.item_added_to_workspace);
- } else if (item instanceof PendingAddItemInfo) {
- PendingAddItemInfo info = (PendingAddItemInfo) item;
- Workspace workspace = mLauncher.getWorkspace();
- workspace.snapToPage(workspace.getPageIndexForScreenId(screenId));
- mLauncher.addPendingItem(info, Favorites.CONTAINER_DESKTOP,
- screenId, coordinates, info.spanX, info.spanY);
- }
+ mLauncher.bindItems(
+ Collections.singletonList(info),
+ /* forceAnimateIcons= */ true,
+ /* focusFirstItemForAccessibility= */ true);
+ announceConfirmation(R.string.item_added_to_workspace);
+ } else if (item instanceof PendingAddItemInfo) {
+ PendingAddItemInfo info = (PendingAddItemInfo) item;
+ Workspace workspace = mLauncher.getWorkspace();
+ workspace.snapToPage(workspace.getPageIndexForScreenId(screenId));
+ mLauncher.addPendingItem(info, Favorites.CONTAINER_DESKTOP,
+ screenId, coordinates, info.spanX, info.spanY);
}
- });
+ }));
return true;
} else if (action == MOVE_TO_WORKSPACE) {
Folder folder = Folder.getOpen(mLauncher);
diff --git a/src/com/android/launcher3/accessibility/ShortcutMenuAccessibilityDelegate.java b/src/com/android/launcher3/accessibility/ShortcutMenuAccessibilityDelegate.java
index 1733e5d..f96afa8 100644
--- a/src/com/android/launcher3/accessibility/ShortcutMenuAccessibilityDelegate.java
+++ b/src/com/android/launcher3/accessibility/ShortcutMenuAccessibilityDelegate.java
@@ -17,6 +17,7 @@
package com.android.launcher3.accessibility;
import static com.android.launcher3.LauncherState.NORMAL;
+import static com.android.launcher3.anim.AnimatorListeners.forSuccessCallback;
import android.view.KeyEvent;
import android.view.View;
@@ -67,19 +68,14 @@
final WorkspaceItemInfo info = ((DeepShortcutView) host.getParent()).getFinalInfo();
final int[] coordinates = new int[2];
final int screenId = findSpaceOnWorkspace(item, coordinates);
- Runnable onComplete = new Runnable() {
- @Override
- public void run() {
- mLauncher.getModelWriter().addItemToDatabase(info,
- LauncherSettings.Favorites.CONTAINER_DESKTOP,
- screenId, coordinates[0], coordinates[1]);
- mLauncher.bindItems(Collections.singletonList(info), true);
- AbstractFloatingView.closeAllOpenViews(mLauncher);
- announceConfirmation(R.string.item_added_to_workspace);
- }
- };
-
- mLauncher.getStateManager().goToState(NORMAL, true, onComplete);
+ mLauncher.getStateManager().goToState(NORMAL, true, forSuccessCallback(() -> {
+ mLauncher.getModelWriter().addItemToDatabase(info,
+ LauncherSettings.Favorites.CONTAINER_DESKTOP,
+ screenId, coordinates[0], coordinates[1]);
+ mLauncher.bindItems(Collections.singletonList(info), true);
+ AbstractFloatingView.closeAllOpenViews(mLauncher);
+ announceConfirmation(R.string.item_added_to_workspace);
+ }));
return true;
} else if (action == DISMISS_NOTIFICATION) {
if (!(host instanceof NotificationMainView)) {
diff --git a/src/com/android/launcher3/allapps/AllAppsContainerView.java b/src/com/android/launcher3/allapps/AllAppsContainerView.java
index b11b63e..d9c8c96 100644
--- a/src/com/android/launcher3/allapps/AllAppsContainerView.java
+++ b/src/com/android/launcher3/allapps/AllAppsContainerView.java
@@ -26,6 +26,7 @@
import android.content.res.Configuration;
import android.content.res.Resources;
import android.graphics.Canvas;
+import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Point;
import android.graphics.Rect;
@@ -44,6 +45,8 @@
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
+import androidx.annotation.VisibleForTesting;
+import androidx.core.graphics.ColorUtils;
import androidx.core.os.BuildCompat;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.LinearLayoutManager;
@@ -66,6 +69,7 @@
import com.android.launcher3.util.ItemInfoMatcher;
import com.android.launcher3.util.Themes;
import com.android.launcher3.views.RecyclerViewFastScroller;
+import com.android.launcher3.views.ScrimView;
import com.android.launcher3.views.SpringRelativeLayout;
import com.android.launcher3.workprofile.PersonalWorkSlidingTabStrip.OnActivePageChangedListener;
@@ -73,12 +77,16 @@
* The all apps view container.
*/
public class AllAppsContainerView extends SpringRelativeLayout implements DragSource,
- Insettable, OnDeviceProfileChangeListener, OnActivePageChangedListener {
+ Insettable, OnDeviceProfileChangeListener, OnActivePageChangedListener,
+ ScrimView.ScrimDrawingController {
- private static final float FLING_VELOCITY_MULTIPLIER = 1000f;
+ public static final float PULL_MULTIPLIER = .02f;
+ public static final float FLING_VELOCITY_MULTIPLIER = 2000f;
// Starts the springs after at least 25% of the animation has passed.
- private static final float FLING_ANIMATION_THRESHOLD = 0.25f;
+ public static final float FLING_ANIMATION_THRESHOLD = 0.25f;
+
+ private final Paint mHeaderPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
protected final BaseDraggingActivity mLauncher;
protected final AdapterHolder[] mAH;
@@ -93,7 +101,8 @@
private View mSearchContainer;
private AllAppsPagedView mViewPager;
- private FloatingHeaderView mHeader;
+ protected FloatingHeaderView mHeader;
+ private float mHeaderTop;
private WorkModeSwitch mWorkModeSwitch;
@@ -107,7 +116,14 @@
private Rect mInsets = new Rect();
- SearchAdapterProvider mSearchAdapterProvider;
+ private SearchAdapterProvider mSearchAdapterProvider;
+ private final int mHeaderTopPadding;
+ private final int mScrimColor;
+ private final int mHeaderProtectionColor;
+ private final float mHeaderThreshold;
+ private ScrimView mScrimView;
+ private int mHeaderColor;
+
public AllAppsContainerView(Context context) {
this(context, null);
@@ -121,8 +137,19 @@
super(context, attrs, defStyleAttr);
mLauncher = BaseDraggingActivity.fromContext(context);
+
+ mScrimColor = Themes.getAttrColor(context, R.attr.allAppsScrimColor);
+ mHeaderThreshold = getResources().getDimensionPixelSize(
+ R.dimen.dynamic_grid_cell_border_spacing);
+ mHeaderTopPadding = context.getResources()
+ .getDimensionPixelSize(R.dimen.all_apps_header_top_padding);
+ int accentColor = Themes.getColorAccent(getContext());
+ mHeaderProtectionColor = ColorUtils.blendARGB(mScrimColor, accentColor, .3f);
+
mLauncher.addOnDeviceProfileChangeListener(this);
+
+
mSearchAdapterProvider = mLauncher.createSearchAdapterProvider(this);
mSearchQueryBuilder = new SpannableStringBuilder();
Selection.setSelection(mSearchQueryBuilder, 0);
@@ -300,6 +327,7 @@
}
// Reset the search bar and base recycler view after transitioning home
mSearchUiManager.resetSearch();
+ updateHeaderScroll(0);
}
@Override
@@ -505,7 +533,7 @@
return view.getGlobalVisibleRect(new Rect());
}
- // Used by tests only
+ @VisibleForTesting
public boolean isPersonalTabVisible() {
return isDescendantViewVisible(R.id.tab_personal);
}
@@ -557,6 +585,7 @@
mAH[i].padding.top = padding;
mAH[i].applyPadding();
}
+ mHeaderTop = mHeader.getTop();
}
public void setLastSearchQuery(String query) {
@@ -611,20 +640,68 @@
public void onAnimationUpdate(ValueAnimator valueAnimator) {
if (shouldSpring
&& valueAnimator.getAnimatedFraction() >= FLING_ANIMATION_THRESHOLD) {
- absorbSwipeUpVelocity(Math.abs(
- Math.round(velocity * FLING_VELOCITY_MULTIPLIER)));
+ absorbSwipeUpVelocity(Math.max(100, Math.abs(
+ Math.round(velocity * FLING_VELOCITY_MULTIPLIER))));
+ // calculate the velocity of using the not user controlled interpolator
+ // of when the container reach the end.
shouldSpring = false;
}
}
});
}
+ public void onPull(float deltaDistance, float displacement) {
+ absorbPullDeltaDistance(PULL_MULTIPLIER * deltaDistance,
+ PULL_MULTIPLIER * displacement);
+ // ideally, this should be done using EdgeEffect.onPush to create squish effect.
+ // However, until such method is available, launcher to simulate the onPush method.
+ mHeader.setTranslationY(-.5f * mHeaderTop * deltaDistance);
+ getRecyclerViewContainer().setTranslationY(-mHeaderTop * deltaDistance);
+ }
+
+ public void onRelease() {
+ ValueAnimator anim1 = ValueAnimator.ofFloat(1f, 0f);
+ final float floatingHeaderHeight = getFloatingHeaderView().getTranslationY();
+ final float recyclerViewHeight = getRecyclerViewContainer().getTranslationY();
+ anim1.setDuration(200);
+ anim1.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
+ @Override
+ public void onAnimationUpdate(ValueAnimator valueAnimator) {
+ getFloatingHeaderView().setTranslationY(
+ ((float) valueAnimator.getAnimatedValue()) * floatingHeaderHeight);
+ getRecyclerViewContainer().setTranslationY(
+ ((float) valueAnimator.getAnimatedValue()) * recyclerViewHeight);
+ }
+ });
+ anim1.start();
+ super.onRelease();
+ }
@Override
public void getDrawingRect(Rect outRect) {
super.getDrawingRect(outRect);
outRect.offset(0, (int) getTranslationY());
}
+ @Override
+ public void setTranslationY(float translationY) {
+ super.setTranslationY(translationY);
+ invalidateHeader();
+ }
+
+ public void setScrimView(ScrimView scrimView) {
+ mScrimView = scrimView;
+ }
+
+ @Override
+ public void drawOnScrim(Canvas canvas) {
+ mHeaderPaint.setColor(mHeaderColor);
+ mHeaderPaint.setAlpha((int) (getAlpha() * Color.alpha(mHeaderColor)));
+ if (mHeaderPaint.getColor() != mScrimColor && mHeaderPaint.getColor() != 0) {
+ canvas.drawRect(0, 0, getWidth(), mHeaderTopPadding + getTranslationY(),
+ mHeaderPaint);
+ }
+ }
+
public class AdapterHolder {
public static final int MAIN = 0;
public static final int WORK = 1;
@@ -725,4 +802,24 @@
return mOverlay;
}
}
+
+
+ protected void updateHeaderScroll(int scrolledOffset) {
+ float prog = Math.max(0, Math.min(1, (float) scrolledOffset / mHeaderThreshold));
+ int headerColor = ColorUtils.setAlphaComponent(mHeaderProtectionColor, (int) (prog * 255));
+ if (headerColor != mHeaderColor) {
+ mHeaderColor = headerColor;
+ getSearchView().setBackgroundColor(mHeaderColor);
+ invalidateHeader();
+ }
+ }
+
+ /**
+ * redraws header protection
+ */
+ public void invalidateHeader() {
+ if (mScrimView != null) {
+ mScrimView.invalidate();
+ }
+ }
}
diff --git a/src/com/android/launcher3/allapps/AllAppsRecyclerView.java b/src/com/android/launcher3/allapps/AllAppsRecyclerView.java
index b1c764c..197d74c 100644
--- a/src/com/android/launcher3/allapps/AllAppsRecyclerView.java
+++ b/src/com/android/launcher3/allapps/AllAppsRecyclerView.java
@@ -38,6 +38,7 @@
import com.android.launcher3.BaseDraggingActivity;
import com.android.launcher3.BaseRecyclerView;
import com.android.launcher3.DeviceProfile;
+import com.android.launcher3.Launcher;
import com.android.launcher3.LauncherAppState;
import com.android.launcher3.R;
import com.android.launcher3.logging.StatsLogManager;
@@ -52,6 +53,7 @@
public class AllAppsRecyclerView extends BaseRecyclerView {
private static final String TAG = "AllAppsContainerView";
private static final boolean DEBUG = false;
+ private final Launcher mLauncher;
private AlphabeticalAppsList mApps;
private final int mNumAppsPerRow;
@@ -87,6 +89,7 @@
R.dimen.all_apps_empty_search_bg_top_offset);
mNumAppsPerRow = LauncherAppState.getIDP(context).numColumns;
mFastScrollHelper = new AllAppsFastScrollHelper(this);
+ mLauncher = Launcher.getLauncher(context);
}
/**
@@ -200,6 +203,12 @@
}
@Override
+ public void onScrolled(int dx, int dy) {
+ super.onScrolled(dx, dy);
+ mLauncher.getAppsView().updateHeaderScroll(getCurrentScrollY());
+ }
+
+ @Override
public boolean onInterceptTouchEvent(MotionEvent e) {
boolean result = super.onInterceptTouchEvent(e);
if (!result && e.getAction() == MotionEvent.ACTION_DOWN
@@ -410,7 +419,7 @@
/**
* Returns the available scroll height:
- * AvailableScrollHeight = Total height of the all items - last page height
+ * AvailableScrollHeight = Total height of the all items - last page height
*/
@Override
protected int getAvailableScrollHeight() {
diff --git a/src/com/android/launcher3/allapps/AllAppsTransitionController.java b/src/com/android/launcher3/allapps/AllAppsTransitionController.java
index c4c7891..3a61609 100644
--- a/src/com/android/launcher3/allapps/AllAppsTransitionController.java
+++ b/src/com/android/launcher3/allapps/AllAppsTransitionController.java
@@ -17,10 +17,7 @@
import static com.android.launcher3.LauncherState.ALL_APPS;
import static com.android.launcher3.LauncherState.ALL_APPS_CONTENT;
-import static com.android.launcher3.anim.Interpolators.ACCEL_0_75;
-import static com.android.launcher3.anim.Interpolators.ACCEL_2;
-import static com.android.launcher3.anim.Interpolators.DEACCEL;
-import static com.android.launcher3.anim.Interpolators.DEACCEL_2;
+import static com.android.launcher3.anim.Interpolators.DEACCEL_1_7;
import static com.android.launcher3.anim.Interpolators.LINEAR;
import static com.android.launcher3.anim.PropertySetter.NO_ANIM_PROPERTY_SETTER;
import static com.android.launcher3.states.StateAnimationConfig.ANIM_ALL_APPS_FADE;
@@ -28,7 +25,7 @@
import static com.android.launcher3.util.SystemUiController.UI_STATE_ALLAPPS;
import android.animation.Animator;
-import android.animation.AnimatorListenerAdapter;
+import android.animation.Animator.AnimatorListener;
import android.animation.ObjectAnimator;
import android.util.FloatProperty;
import android.view.View;
@@ -39,12 +36,13 @@
import com.android.launcher3.Launcher;
import com.android.launcher3.LauncherState;
import com.android.launcher3.Utilities;
-import com.android.launcher3.anim.AnimationSuccessListener;
+import com.android.launcher3.anim.AnimatorListeners;
import com.android.launcher3.anim.PendingAnimation;
import com.android.launcher3.anim.PropertySetter;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.statemanager.StateManager.StateHandler;
import com.android.launcher3.states.StateAnimationConfig;
+import com.android.launcher3.views.ScrimView;
/**
* Handles AllApps view transition.
@@ -88,6 +86,7 @@
private float mProgress; // [0, 1], mShiftRange * mProgress = shiftCurrent
private float mScrollRangeDelta = 0;
+ private ScrimView mScrimView;
public AllAppsTransitionController(Launcher l) {
mLauncher = l;
@@ -156,9 +155,8 @@
return;
}
- Interpolator interpolator = toState.equals(ALL_APPS)
- ? (config.userControlled ? ACCEL_2 : ACCEL_0_75) :
- (config.userControlled ? DEACCEL_2 : DEACCEL);
+ // need to decide depending on the release velocity
+ Interpolator interpolator = (config.userControlled ? LINEAR : DEACCEL_1_7);
Animator anim = createSpringAnimation(mProgress, targetProgress);
anim.setInterpolator(config.getInterpolator(ANIM_VERTICAL_PROGRESS, interpolator));
@@ -181,19 +179,28 @@
Interpolator allAppsFade = config.getInterpolator(ANIM_ALL_APPS_FADE, LINEAR);
setter.setViewAlpha(mAppsView, hasAllAppsContent ? 1 : 0, allAppsFade);
+
+ boolean shouldProtectHeader =
+ ALL_APPS == state || mLauncher.getStateManager().getState() == ALL_APPS;
+ mScrimView.setDrawingController(shouldProtectHeader ? mAppsView : null);
}
- public AnimatorListenerAdapter getProgressAnimatorListener() {
- return AnimationSuccessListener.forRunnable(this::onProgressAnimationEnd);
+ public AnimatorListener getProgressAnimatorListener() {
+ return AnimatorListeners.forSuccessCallback(this::onProgressAnimationEnd);
}
- public void setupViews(AllAppsContainerView appsView) {
+ /**
+ * see Launcher#setupViews
+ */
+ public void setupViews(ScrimView scrimView, AllAppsContainerView appsView) {
+ mScrimView = scrimView;
mAppsView = appsView;
if (FeatureFlags.ENABLE_DEVICE_SEARCH.get() && Utilities.ATLEAST_R) {
mLauncher.getSystemUiController().updateUiState(UI_STATE_ALLAPPS,
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
}
+ mAppsView.setScrimView(scrimView);
}
/**
diff --git a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
index 6957850..88d95fa 100644
--- a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
+++ b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
@@ -30,6 +30,7 @@
import java.util.List;
import java.util.Locale;
import java.util.Map;
+import java.util.Objects;
import java.util.TreeMap;
/**
@@ -181,11 +182,10 @@
* Sets results list for search
*/
public boolean setSearchResults(ArrayList<AdapterItem> results) {
- if (results == null || mSearchResults != results) {
- boolean same = mSearchResults != null && mSearchResults.equals(results);
+ if (!Objects.equals(results, mSearchResults)) {
mSearchResults = results;
updateAdapterItems();
- return !same;
+ return true;
}
return false;
}
diff --git a/src/com/android/launcher3/anim/AnimationSuccessListener.java b/src/com/android/launcher3/anim/AnimationSuccessListener.java
index 9905e81..a312070 100644
--- a/src/com/android/launcher3/anim/AnimationSuccessListener.java
+++ b/src/com/android/launcher3/anim/AnimationSuccessListener.java
@@ -40,24 +40,4 @@
public abstract void onAnimationSuccess(Animator animator);
- /**
- * Returns an AnimationSuccessListener which runs the provided action on success
- */
- public static AnimationSuccessListener forRunnable(Runnable r) {
- return new RunnableSuccessListener(r);
- }
-
- private static class RunnableSuccessListener extends AnimationSuccessListener {
-
- private final Runnable mRunnable;
-
- private RunnableSuccessListener(Runnable r) {
- mRunnable = r;
- }
-
- @Override
- public void onAnimationSuccess(Animator animator) {
- mRunnable.run();
- }
- }
}
diff --git a/src/com/android/launcher3/anim/AnimatorListeners.java b/src/com/android/launcher3/anim/AnimatorListeners.java
new file mode 100644
index 0000000..3799700
--- /dev/null
+++ b/src/com/android/launcher3/anim/AnimatorListeners.java
@@ -0,0 +1,98 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.launcher3.anim;
+
+import static com.android.launcher3.LauncherAnimUtils.SUCCESS_TRANSITION_PROGRESS;
+
+import android.animation.Animator;
+import android.animation.Animator.AnimatorListener;
+import android.animation.AnimatorListenerAdapter;
+import android.animation.ValueAnimator;
+
+import java.util.function.Consumer;
+
+/**
+ * Utility class for creating common {@link AnimatorListener}
+ */
+public class AnimatorListeners {
+
+ /**
+ * Returns an AnimatorListener which executes the callback on successful animation completion
+ */
+ public static AnimatorListener forSuccessCallback(Runnable callback) {
+ return new RunnableSuccessListener(callback);
+ }
+
+ /**
+ * Returns an AnimatorListener which executes the callback on animation completion,
+ * with the boolean representing success
+ */
+ public static AnimatorListener forEndCallback(Consumer<Boolean> callback) {
+ return new EndStateCallbackWrapper(callback);
+ }
+
+ /**
+ * Returns an AnimatorListener which executes the callback on animation completion
+ */
+ public static AnimatorListener forEndCallback(Runnable callback) {
+ return new AnimatorListenerAdapter() {
+ @Override
+ public void onAnimationEnd(Animator animation, boolean isReverse) {
+ callback.run();
+ }
+ };
+ }
+
+ private static class EndStateCallbackWrapper extends AnimatorListenerAdapter {
+
+ private final Consumer<Boolean> mListener;
+ private boolean mListenerCalled = false;
+
+ EndStateCallbackWrapper(Consumer<Boolean> listener) {
+ mListener = listener;
+ }
+
+ @Override
+ public void onAnimationCancel(Animator animation) {
+ if (!mListenerCalled) {
+ mListenerCalled = true;
+ mListener.accept(false);
+ }
+ }
+
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ if (!mListenerCalled) {
+ ValueAnimator anim = (ValueAnimator) animation;
+ mListener.accept(anim.getAnimatedFraction() > SUCCESS_TRANSITION_PROGRESS);
+ }
+ }
+ }
+
+ private static class RunnableSuccessListener extends AnimationSuccessListener {
+
+ private final Runnable mRunnable;
+
+ private RunnableSuccessListener(Runnable r) {
+ mRunnable = r;
+ }
+
+ @Override
+ public void onAnimationSuccess(Animator animator) {
+ mRunnable.run();
+ }
+ }
+}
diff --git a/src/com/android/launcher3/anim/Interpolators.java b/src/com/android/launcher3/anim/Interpolators.java
index 11e831e..9d73bba 100644
--- a/src/com/android/launcher3/anim/Interpolators.java
+++ b/src/com/android/launcher3/anim/Interpolators.java
@@ -53,6 +53,9 @@
public static final Interpolator AGGRESSIVE_EASE = new PathInterpolator(0.2f, 0f, 0f, 1f);
public static final Interpolator AGGRESSIVE_EASE_IN_OUT = new PathInterpolator(0.6f,0, 0.4f, 1);
+ public static final Interpolator DECELERATED_EASE = new PathInterpolator(0, 0, .2f, 1f);
+ public static final Interpolator ACCELERATED_EASE = new PathInterpolator(0.4f, 0, 1f, 1f);
+
public static final Interpolator EXAGGERATED_EASE;
public static final Interpolator INSTANT = t -> 1;
diff --git a/src/com/android/launcher3/anim/PendingAnimation.java b/src/com/android/launcher3/anim/PendingAnimation.java
index 8057475..01f7de6 100644
--- a/src/com/android/launcher3/anim/PendingAnimation.java
+++ b/src/com/android/launcher3/anim/PendingAnimation.java
@@ -15,13 +15,11 @@
*/
package com.android.launcher3.anim;
-import static com.android.launcher3.LauncherAnimUtils.SUCCESS_TRANSITION_PROGRESS;
import static com.android.launcher3.LauncherAnimUtils.VIEW_BACKGROUND_COLOR;
import static com.android.launcher3.anim.AnimatorPlaybackController.addAnimationHoldersRecur;
import android.animation.Animator;
import android.animation.Animator.AnimatorListener;
-import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.animation.TimeInterpolator;
@@ -182,32 +180,6 @@
if (mProgressAnimator == null) {
mProgressAnimator = ValueAnimator.ofFloat(0, 1);
}
- mProgressAnimator.addListener(new EndStateCallbackWrapper(listener));
- }
-
- private static class EndStateCallbackWrapper extends AnimatorListenerAdapter {
-
- private final Consumer<Boolean> mListener;
- private boolean mCalled = false;
-
- EndStateCallbackWrapper(Consumer<Boolean> listener) {
- mListener = listener;
- }
-
- @Override
- public void onAnimationCancel(Animator animation) {
- if (!mCalled) {
- mCalled = true;
- mListener.accept(false);
- }
- }
-
- @Override
- public void onAnimationEnd(Animator animation) {
- if (!mCalled) {
- ValueAnimator anim = (ValueAnimator) animation;
- mListener.accept(anim.getAnimatedFraction() > SUCCESS_TRANSITION_PROGRESS);
- }
- }
+ mProgressAnimator.addListener(AnimatorListeners.forEndCallback(listener));
}
}
diff --git a/src/com/android/launcher3/config/FeatureFlags.java b/src/com/android/launcher3/config/FeatureFlags.java
index 3b88a0b..7ef43ed 100644
--- a/src/com/android/launcher3/config/FeatureFlags.java
+++ b/src/com/android/launcher3/config/FeatureFlags.java
@@ -88,7 +88,7 @@
"ENABLE_QUICKSTEP_LIVE_TILE", true, "Enable live tile in Quickstep overview");
public static final BooleanFlag ENABLE_QUICKSTEP_WIDGET_APP_START = getDebugFlag(
- "ENABLE_QUICKSTEP_WIDGET_APP_START", false,
+ "ENABLE_QUICKSTEP_WIDGET_APP_START", true,
"Enable Quickstep animation when launching activities from an app widget");
// Keep as DeviceFlag to allow remote disable in emergency.
@@ -174,12 +174,12 @@
"Replace Smartspace with the enhanced version. "
+ "Ignored if ENABLE_SMARTSPACE_UNIVERSAL is enabled.");
- public static final BooleanFlag ENABLE_SMARTSPACE_FEEDBACK = new DeviceFlag(
+ public static final BooleanFlag ENABLE_SMARTSPACE_FEEDBACK = getDebugFlag(
"ENABLE_SMARTSPACE_FEEDBACK", true,
"Adds a menu option to send feedback for Enhanced Smartspace.");
- public static final BooleanFlag ENABLE_SMARTSPACE_DISMISS = new DeviceFlag(
- "ENABLE_SMARTSPACE_DISMISS", false,
+ public static final BooleanFlag ENABLE_SMARTSPACE_DISMISS = getDebugFlag(
+ "ENABLE_SMARTSPACE_DISMISS", true,
"Adds a menu option to dismiss the current Enhanced Smartspace card.");
public static final BooleanFlag ALWAYS_USE_HARDWARE_OPTIMIZATION_FOR_FOLDER_ANIMATIONS =
@@ -240,6 +240,10 @@
public static final BooleanFlag PROTOTYPE_APP_CLOSE = getDebugFlag(
"PROTOTYPE_APP_CLOSE", false, "Enables new app close");
+ public static final BooleanFlag ENABLE_WALLPAPER_SCRIM = getDebugFlag(
+ "ENABLE_WALLPAPER_SCRIM", false,
+ "Enables scrim over wallpaper for text protection.");
+
public static void initialize(Context context) {
synchronized (sDebugFlags) {
for (DebugFlag flag : sDebugFlags) {
diff --git a/src/com/android/launcher3/dragndrop/DragController.java b/src/com/android/launcher3/dragndrop/DragController.java
index 575b8fd..5731db4 100644
--- a/src/com/android/launcher3/dragndrop/DragController.java
+++ b/src/com/android/launcher3/dragndrop/DragController.java
@@ -16,45 +16,37 @@
package com.android.launcher3.dragndrop;
-import static com.android.launcher3.AbstractFloatingView.TYPE_DISCOVERY_BOUNCE;
-import static com.android.launcher3.LauncherAnimUtils.SPRING_LOADED_EXIT_DELAY;
-import static com.android.launcher3.LauncherState.NORMAL;
import static com.android.launcher3.Utilities.ATLEAST_Q;
-import static com.android.launcher3.util.Executors.MAIN_EXECUTOR;
import android.content.ComponentName;
-import android.content.res.Resources;
import android.graphics.Point;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.view.DragEvent;
-import android.view.HapticFeedbackConstants;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import androidx.annotation.Nullable;
-import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.DragSource;
import com.android.launcher3.DropTarget;
-import com.android.launcher3.Launcher;
-import com.android.launcher3.R;
-import com.android.launcher3.accessibility.DragViewStateAnnouncer;
import com.android.launcher3.logging.InstanceId;
import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.model.data.WorkspaceItemInfo;
import com.android.launcher3.util.ItemInfoMatcher;
import com.android.launcher3.util.TouchController;
+import com.android.launcher3.views.ActivityContext;
import java.util.ArrayList;
import java.util.Optional;
/**
* Class for initiating a drag within a view or across multiple views.
+ * @param <T>
*/
-public class DragController implements DragDriver.EventListener, TouchController {
- private static final boolean PROFILE_DRAWING_DURING_DRAG = false;
+public abstract class DragController<T extends ActivityContext>
+ implements DragDriver.EventListener, TouchController {
/**
* When a drag is started from a deep press, you need to drag this much farther than normal to
@@ -62,8 +54,7 @@
*/
private static final int DEEP_PRESS_DISTANCE_FACTOR = 3;
- private final Launcher mLauncher;
- private final FlingToDeleteHelper mFlingToDeleteHelper;
+ protected final T mActivity;
// temporaries to avoid gc thrash
private final Rect mRectTemp = new Rect();
@@ -73,30 +64,30 @@
* Drag driver for the current drag/drop operation, or null if there is no active DND operation.
* It's null during accessible drag operations.
*/
- private DragDriver mDragDriver = null;
+ protected DragDriver mDragDriver = null;
/** Options controlling the drag behavior. */
- private DragOptions mOptions;
+ protected DragOptions mOptions;
/** Coordinate for motion down event */
- private final Point mMotionDown = new Point();
+ protected final Point mMotionDown = new Point();
/** Coordinate for last touch event **/
- private final Point mLastTouch = new Point();
+ protected final Point mLastTouch = new Point();
private final Point mTmpPoint = new Point();
- private DropTarget.DragObject mDragObject;
+ protected DropTarget.DragObject mDragObject;
/** Who can receive drop events */
private final ArrayList<DropTarget> mDropTargets = new ArrayList<>();
private final ArrayList<DragListener> mListeners = new ArrayList<>();
- private DropTarget mLastDropTarget;
+ protected DropTarget mLastDropTarget;
private int mLastTouchClassification;
- private int mDistanceSinceScroll = 0;
+ protected int mDistanceSinceScroll = 0;
- private boolean mIsInPreDrag;
+ protected boolean mIsInPreDrag;
/**
* Interface to receive notifications when a drag starts or stops
@@ -119,9 +110,8 @@
/**
* Used to create a new DragLayer from XML.
*/
- public DragController(Launcher launcher) {
- mLauncher = launcher;
- mFlingToDeleteHelper = new FlingToDeleteHelper(launcher);
+ public DragController(T activity) {
+ mActivity = activity;
}
/**
@@ -198,7 +188,7 @@
options);
}
- private DragView startDrag(
+ protected abstract DragView startDrag(
@Nullable Drawable drawable,
@Nullable View view,
DraggableView originalView,
@@ -210,98 +200,9 @@
Rect dragRegion,
float initialDragViewScale,
float dragViewScaleOnDrop,
- DragOptions options) {
- if (PROFILE_DRAWING_DURING_DRAG) {
- android.os.Debug.startMethodTracing("Launcher");
- }
+ DragOptions options);
- mLauncher.hideKeyboard();
- AbstractFloatingView.closeOpenViews(mLauncher, false, TYPE_DISCOVERY_BOUNCE);
-
- mOptions = options;
- if (mOptions.simulatedDndStartPoint != null) {
- mLastTouch.x = mMotionDown.x = mOptions.simulatedDndStartPoint.x;
- mLastTouch.y = mMotionDown.y = mOptions.simulatedDndStartPoint.y;
- }
-
- final int registrationX = mMotionDown.x - dragLayerX;
- final int registrationY = mMotionDown.y - dragLayerY;
-
- final int dragRegionLeft = dragRegion == null ? 0 : dragRegion.left;
- final int dragRegionTop = dragRegion == null ? 0 : dragRegion.top;
-
- mLastDropTarget = null;
-
- mDragObject = new DropTarget.DragObject(mLauncher.getApplicationContext());
- mDragObject.originalView = originalView;
-
- mIsInPreDrag = mOptions.preDragCondition != null
- && !mOptions.preDragCondition.shouldStartDrag(0);
-
- final Resources res = mLauncher.getResources();
- final float scaleDps = mIsInPreDrag
- ? res.getDimensionPixelSize(R.dimen.pre_drag_view_scale) : 0f;
- final DragView dragView = mDragObject.dragView = drawable != null
- ? new DragView(
- mLauncher,
- drawable,
- registrationX,
- registrationY,
- initialDragViewScale,
- dragViewScaleOnDrop,
- scaleDps)
- : new DragView(
- mLauncher,
- view,
- view.getMeasuredWidth(),
- view.getMeasuredHeight(),
- registrationX,
- registrationY,
- initialDragViewScale,
- dragViewScaleOnDrop,
- scaleDps);
- dragView.setItemInfo(dragInfo);
- mDragObject.dragComplete = false;
-
- mDragObject.xOffset = mMotionDown.x - (dragLayerX + dragRegionLeft);
- mDragObject.yOffset = mMotionDown.y - (dragLayerY + dragRegionTop);
-
- mDragDriver = DragDriver.create(this, mOptions, mFlingToDeleteHelper::recordMotionEvent);
- if (!mOptions.isAccessibleDrag) {
- mDragObject.stateAnnouncer = DragViewStateAnnouncer.createFor(dragView);
- }
-
- mDragObject.dragSource = source;
- mDragObject.dragInfo = dragInfo;
- mDragObject.originalDragInfo = mDragObject.dragInfo.makeShallowCopy();
-
- if (dragOffset != null) {
- dragView.setDragVisualizeOffset(new Point(dragOffset));
- }
- if (dragRegion != null) {
- dragView.setDragRegion(new Rect(dragRegion));
- }
-
- mLauncher.getDragLayer().performHapticFeedback(HapticFeedbackConstants.LONG_PRESS);
- dragView.show(mLastTouch.x, mLastTouch.y);
- mDistanceSinceScroll = 0;
-
- if (!mIsInPreDrag) {
- callOnDragStart();
- } else if (mOptions.preDragCondition != null) {
- mOptions.preDragCondition.onPreDragStart(mDragObject);
- }
-
- handleMoveEvent(mLastTouch.x, mLastTouch.y);
-
- if (!mLauncher.isTouchInProgress() && options.simulatedDndStartPoint == null) {
- // If it is an internal drag and the touch is already complete, cancel immediately
- MAIN_EXECUTOR.submit(this::cancelDrag);
- }
- return dragView;
- }
-
- private void callOnDragStart() {
+ protected void callOnDragStart() {
if (mOptions.preDragCondition != null) {
mOptions.preDragCondition.onPreDragEnd(mDragObject, true /* dragStarted*/);
}
@@ -357,13 +258,15 @@
if (!accepted) {
// If it was not accepted, cleanup the state. If it was accepted, it is the
// responsibility of the drop target to cleanup the state.
- mLauncher.getStateManager().goToState(NORMAL, SPRING_LOADED_EXIT_DELAY);
+ exitDrag();
mDragObject.deferDragViewCleanupPostAnimation = false;
}
mDragObject.dragSource.onDropCompleted(dropTarget, mDragObject, accepted);
}
+ protected abstract void exitDrag();
+
public void onAppsRemoved(ItemInfoMatcher matcher) {
// Cancel the current drag if we are removing an app that we are dragging
if (mDragObject != null) {
@@ -377,7 +280,7 @@
}
}
- private void endDrag() {
+ protected void endDrag() {
if (isDragging()) {
mDragDriver = null;
boolean isDeferred = false;
@@ -396,8 +299,6 @@
callOnDragEnd();
}
}
-
- mFlingToDeleteHelper.releaseVelocityTracker();
}
public void animateDragViewToOriginalPosition(final Runnable onComplete,
@@ -443,7 +344,7 @@
* Clamps the position to the drag layer bounds.
*/
private Point getClampedDragLayerPos(float x, float y) {
- mLauncher.getDragLayer().getLocalVisibleRect(mRectTemp);
+ mActivity.getDragLayer().getLocalVisibleRect(mRectTemp);
mTmpPoint.x = (int) Math.max(mRectTemp.left, Math.min(x, mRectTemp.right - 1));
mTmpPoint.y = (int) Math.max(mRectTemp.top, Math.min(y, mRectTemp.bottom - 1));
return mTmpPoint;
@@ -465,19 +366,16 @@
@Override
public void onDriverDragEnd(float x, float y) {
- DropTarget dropTarget;
- Runnable flingAnimation = mFlingToDeleteHelper.getFlingAnimation(mDragObject, mOptions);
- if (flingAnimation != null) {
- dropTarget = mFlingToDeleteHelper.getDropTarget();
- } else {
- dropTarget = findDropTarget((int) x, (int) y, mCoordinatesTemp);
+ if (!endWithFlingAnimation()) {
+ drop(findDropTarget((int) x, (int) y, mCoordinatesTemp), null);
}
-
- drop(dropTarget, flingAnimation);
-
endDrag();
}
+ protected boolean endWithFlingAnimation() {
+ return false;
+ }
+
@Override
public void onDriverDragCancel() {
cancelDrag();
@@ -520,7 +418,7 @@
return mDragDriver != null && mDragDriver.onDragEvent(event);
}
- private void handleMoveEvent(int x, int y) {
+ protected void handleMoveEvent(int x, int y) {
mDragObject.dragView.move(x, y);
// Drop on someone?
@@ -592,7 +490,7 @@
endDrag();
}
- private void drop(DropTarget dropTarget, Runnable flingAnimation) {
+ protected void drop(DropTarget dropTarget, Runnable flingAnimation) {
final int[] coordinates = mCoordinatesTemp;
mDragObject.x = coordinates[0];
mDragObject.y = coordinates[1];
@@ -649,7 +547,7 @@
if (r.contains(x, y)) {
dropCoordinates[0] = x;
dropCoordinates[1] = y;
- mLauncher.getDragLayer().mapCoordInSelfToDescendant((View) target, dropCoordinates);
+ mActivity.getDragLayer().mapCoordInSelfToDescendant((View) target, dropCoordinates);
return target;
}
}
@@ -657,11 +555,11 @@
// cell layout to drop to in the existing drag/drop logic.
dropCoordinates[0] = x;
dropCoordinates[1] = y;
- mLauncher.getDragLayer().mapCoordInSelfToDescendant(mLauncher.getWorkspace(),
- dropCoordinates);
- return mLauncher.getWorkspace();
+ return getDefaultDropTarget(dropCoordinates);
}
+ protected abstract DropTarget getDefaultDropTarget(int[] dropCoordinates);
+
/**
* Sets the drag listener which will be notified when a drag starts or ends.
*/
diff --git a/src/com/android/launcher3/dragndrop/FlingToDeleteHelper.java b/src/com/android/launcher3/dragndrop/FlingToDeleteHelper.java
index 0a1aba1..336fced 100644
--- a/src/com/android/launcher3/dragndrop/FlingToDeleteHelper.java
+++ b/src/com/android/launcher3/dragndrop/FlingToDeleteHelper.java
@@ -22,6 +22,7 @@
import android.view.ViewConfiguration;
import com.android.launcher3.ButtonDropTarget;
+import com.android.launcher3.DeviceProfile;
import com.android.launcher3.DropTarget;
import com.android.launcher3.Launcher;
import com.android.launcher3.R;
@@ -35,15 +36,12 @@
private static final float MAX_FLING_DEGREES = 35f;
private final Launcher mLauncher;
- private final int mFlingToDeleteThresholdVelocity;
private ButtonDropTarget mDropTarget;
private VelocityTracker mVelocityTracker;
public FlingToDeleteHelper(Launcher launcher) {
mLauncher = launcher;
- mFlingToDeleteThresholdVelocity = launcher.getResources()
- .getDimensionPixelSize(R.dimen.drag_flingToDeleteMinVelocity);
}
public void recordMotionEvent(MotionEvent ev) {
@@ -91,12 +89,13 @@
mVelocityTracker.computeCurrentVelocity(1000, config.getScaledMaximumFlingVelocity());
PointF vel = new PointF(mVelocityTracker.getXVelocity(), mVelocityTracker.getYVelocity());
float theta = MAX_FLING_DEGREES + 1;
- if (mVelocityTracker.getYVelocity() < mFlingToDeleteThresholdVelocity) {
+ DeviceProfile deviceProfile = mLauncher.getDeviceProfile();
+ if (mVelocityTracker.getYVelocity() < deviceProfile.flingToDeleteThresholdVelocity) {
// Do a quick dot product test to ensure that we are flinging upwards
PointF upVec = new PointF(0f, -1f);
theta = getAngleBetweenVectors(vel, upVec);
} else if (mLauncher.getDeviceProfile().isVerticalBarLayout() &&
- mVelocityTracker.getXVelocity() < mFlingToDeleteThresholdVelocity) {
+ mVelocityTracker.getXVelocity() < deviceProfile.flingToDeleteThresholdVelocity) {
// Remove icon is on left side instead of top, so check if we are flinging to the left.
PointF leftVec = new PointF(-1f, 0f);
theta = getAngleBetweenVectors(vel, leftVec);
diff --git a/src/com/android/launcher3/dragndrop/LauncherDragController.java b/src/com/android/launcher3/dragndrop/LauncherDragController.java
new file mode 100644
index 0000000..a98d70c
--- /dev/null
+++ b/src/com/android/launcher3/dragndrop/LauncherDragController.java
@@ -0,0 +1,185 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.launcher3.dragndrop;
+
+import static com.android.launcher3.AbstractFloatingView.TYPE_DISCOVERY_BOUNCE;
+import static com.android.launcher3.LauncherAnimUtils.SPRING_LOADED_EXIT_DELAY;
+import static com.android.launcher3.LauncherState.NORMAL;
+import static com.android.launcher3.util.Executors.MAIN_EXECUTOR;
+
+import android.content.res.Resources;
+import android.graphics.Point;
+import android.graphics.Rect;
+import android.graphics.drawable.Drawable;
+import android.view.HapticFeedbackConstants;
+import android.view.View;
+
+import androidx.annotation.Nullable;
+
+import com.android.launcher3.AbstractFloatingView;
+import com.android.launcher3.DragSource;
+import com.android.launcher3.DropTarget;
+import com.android.launcher3.Launcher;
+import com.android.launcher3.R;
+import com.android.launcher3.accessibility.DragViewStateAnnouncer;
+import com.android.launcher3.model.data.ItemInfo;
+
+/**
+ * Drag controller for Launcher activity
+ */
+public class LauncherDragController extends DragController<Launcher> {
+
+ private static final boolean PROFILE_DRAWING_DURING_DRAG = false;
+
+ private final FlingToDeleteHelper mFlingToDeleteHelper;
+
+ public LauncherDragController(Launcher launcher) {
+ super(launcher);
+ mFlingToDeleteHelper = new FlingToDeleteHelper(launcher);
+ }
+
+ @Override
+ protected DragView startDrag(
+ @Nullable Drawable drawable,
+ @Nullable View view,
+ DraggableView originalView,
+ int dragLayerX,
+ int dragLayerY,
+ DragSource source,
+ ItemInfo dragInfo,
+ Point dragOffset,
+ Rect dragRegion,
+ float initialDragViewScale,
+ float dragViewScaleOnDrop,
+ DragOptions options) {
+ if (PROFILE_DRAWING_DURING_DRAG) {
+ android.os.Debug.startMethodTracing("Launcher");
+ }
+
+ mActivity.hideKeyboard();
+ AbstractFloatingView.closeOpenViews(mActivity, false, TYPE_DISCOVERY_BOUNCE);
+
+ mOptions = options;
+ if (mOptions.simulatedDndStartPoint != null) {
+ mLastTouch.x = mMotionDown.x = mOptions.simulatedDndStartPoint.x;
+ mLastTouch.y = mMotionDown.y = mOptions.simulatedDndStartPoint.y;
+ }
+
+ final int registrationX = mMotionDown.x - dragLayerX;
+ final int registrationY = mMotionDown.y - dragLayerY;
+
+ final int dragRegionLeft = dragRegion == null ? 0 : dragRegion.left;
+ final int dragRegionTop = dragRegion == null ? 0 : dragRegion.top;
+
+ mLastDropTarget = null;
+
+ mDragObject = new DropTarget.DragObject(mActivity.getApplicationContext());
+ mDragObject.originalView = originalView;
+
+ mIsInPreDrag = mOptions.preDragCondition != null
+ && !mOptions.preDragCondition.shouldStartDrag(0);
+
+ final Resources res = mActivity.getResources();
+ final float scaleDps = mIsInPreDrag
+ ? res.getDimensionPixelSize(R.dimen.pre_drag_view_scale) : 0f;
+ final DragView dragView = mDragObject.dragView = drawable != null
+ ? new DragView(
+ mActivity,
+ drawable,
+ registrationX,
+ registrationY,
+ initialDragViewScale,
+ dragViewScaleOnDrop,
+ scaleDps)
+ : new DragView(
+ mActivity,
+ view,
+ view.getMeasuredWidth(),
+ view.getMeasuredHeight(),
+ registrationX,
+ registrationY,
+ initialDragViewScale,
+ dragViewScaleOnDrop,
+ scaleDps);
+ dragView.setItemInfo(dragInfo);
+ mDragObject.dragComplete = false;
+
+ mDragObject.xOffset = mMotionDown.x - (dragLayerX + dragRegionLeft);
+ mDragObject.yOffset = mMotionDown.y - (dragLayerY + dragRegionTop);
+
+ mDragDriver = DragDriver.create(this, mOptions, mFlingToDeleteHelper::recordMotionEvent);
+ if (!mOptions.isAccessibleDrag) {
+ mDragObject.stateAnnouncer = DragViewStateAnnouncer.createFor(dragView);
+ }
+
+ mDragObject.dragSource = source;
+ mDragObject.dragInfo = dragInfo;
+ mDragObject.originalDragInfo = mDragObject.dragInfo.makeShallowCopy();
+
+ if (dragOffset != null) {
+ dragView.setDragVisualizeOffset(new Point(dragOffset));
+ }
+ if (dragRegion != null) {
+ dragView.setDragRegion(new Rect(dragRegion));
+ }
+
+ mActivity.getDragLayer().performHapticFeedback(HapticFeedbackConstants.LONG_PRESS);
+ dragView.show(mLastTouch.x, mLastTouch.y);
+ mDistanceSinceScroll = 0;
+
+ if (!mIsInPreDrag) {
+ callOnDragStart();
+ } else if (mOptions.preDragCondition != null) {
+ mOptions.preDragCondition.onPreDragStart(mDragObject);
+ }
+
+ handleMoveEvent(mLastTouch.x, mLastTouch.y);
+
+ if (!mActivity.isTouchInProgress() && options.simulatedDndStartPoint == null) {
+ // If it is an internal drag and the touch is already complete, cancel immediately
+ MAIN_EXECUTOR.submit(this::cancelDrag);
+ }
+ return dragView;
+ }
+
+ @Override
+ protected void exitDrag() {
+ mActivity.getStateManager().goToState(NORMAL, SPRING_LOADED_EXIT_DELAY);
+ }
+
+ @Override
+ protected boolean endWithFlingAnimation() {
+ Runnable flingAnimation = mFlingToDeleteHelper.getFlingAnimation(mDragObject, mOptions);
+ if (flingAnimation != null) {
+ drop(mFlingToDeleteHelper.getDropTarget(), flingAnimation);
+ return true;
+ }
+ return super.endWithFlingAnimation();
+ }
+
+ @Override
+ protected void endDrag() {
+ super.endDrag();
+ mFlingToDeleteHelper.releaseVelocityTracker();
+ }
+
+ @Override
+ protected DropTarget getDefaultDropTarget(int[] dropCoordinates) {
+ mActivity.getDragLayer().mapCoordInSelfToDescendant(mActivity.getWorkspace(),
+ dropCoordinates);
+ return mActivity.getWorkspace();
+ }
+}
diff --git a/src/com/android/launcher3/folder/Folder.java b/src/com/android/launcher3/folder/Folder.java
index cf1cb45..f5a8ef6 100644
--- a/src/com/android/launcher3/folder/Folder.java
+++ b/src/com/android/launcher3/folder/Folder.java
@@ -23,7 +23,6 @@
import static com.android.launcher3.LauncherState.NORMAL;
import static com.android.launcher3.compat.AccessibilityManagerCompat.sendCustomAccessibilityEvent;
import static com.android.launcher3.config.FeatureFlags.ALWAYS_USE_HARDWARE_OPTIMIZATION_FOR_FOLDER_ANIMATIONS;
-import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_FOLDER_CONVERTED_TO_ICON;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_FOLDER_LABEL_UPDATED;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ITEM_DROP_COMPLETED;
import static com.android.launcher3.util.DisplayController.getSingleFrameMs;
@@ -31,6 +30,7 @@
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
+import android.animation.ObjectAnimator;
import android.annotation.SuppressLint;
import android.appwidget.AppWidgetHostView;
import android.content.Context;
@@ -38,6 +38,8 @@
import android.graphics.Insets;
import android.graphics.Path;
import android.graphics.Rect;
+import android.graphics.RectF;
+import android.graphics.drawable.GradientDrawable;
import android.os.Build;
import android.text.InputType;
import android.text.Selection;
@@ -45,6 +47,7 @@
import android.util.AttributeSet;
import android.util.Log;
import android.util.Pair;
+import android.util.SparseIntArray;
import android.util.TypedValue;
import android.view.FocusFinder;
import android.view.KeyEvent;
@@ -96,10 +99,12 @@
import com.android.launcher3.model.data.WorkspaceItemInfo;
import com.android.launcher3.pageindicators.PageIndicatorDots;
import com.android.launcher3.util.Executors;
+import com.android.launcher3.util.Themes;
import com.android.launcher3.util.Thunk;
import com.android.launcher3.views.ActivityContext;
import com.android.launcher3.views.BaseDragLayer;
import com.android.launcher3.views.ClipPathView;
+import com.android.launcher3.widget.LocalColorExtractor;
import com.android.launcher3.widget.PendingAddShortcutInfo;
import java.util.ArrayList;
@@ -152,6 +157,7 @@
private static final float ICON_OVERSCROLL_WIDTH_FACTOR = 0.45f;
private static final int FOLDER_NAME_ANIMATION_DURATION = 633;
+ private static final int FOLDER_COLOR_ANIMATION_DURATION = 150;
private static final int REORDER_DELAY = 250;
private static final int ON_EXIT_CLOSE_DELAY = 400;
@@ -169,8 +175,9 @@
private boolean mIsAnimatingClosed = false;
// Folder can be displayed in Launcher's activity or a separate window (e.g. Taskbar).
- // Anything specific to Launcher should use mLauncher, otherwise should use mActivityContext.
- protected final Launcher mLauncher;
+ // Anything specific to Launcher should use mLauncherDelegate, otherwise should
+ // use mActivityContext.
+ protected final LauncherDelegate mLauncherDelegate;
protected final ActivityContext mActivityContext;
protected DragController mDragController;
@@ -224,6 +231,17 @@
@Nullable private FolderWindowInsetsAnimationCallback mFolderWindowInsetsAnimationCallback;
+ // Wallpaper local color extraction
+ @Nullable private LocalColorExtractor mColorExtractor;
+ @Nullable private LocalColorExtractor.Listener mColorListener;
+
+ // For simplicity, we start the color change only after the open animation has started.
+ private Runnable mColorChangeRunnable;
+ private Animator mColorChangeAnimator;
+ // The background color animator used in the folder open animation. We keep a reference to this,
+ // so that we can cancel it when starting mColorChangeAnimator.
+ private ObjectAnimator mOpenAnimationColorChangeAnimator;
+
/**
* Used to inflate the Workspace from XML.
*
@@ -234,20 +252,20 @@
super(context, attrs);
setAlwaysDrawnWithCacheEnabled(false);
- mLauncher = Launcher.getLauncher(context);
mActivityContext = ActivityContext.lookupContext(context);
+ mLauncherDelegate = LauncherDelegate.from(mActivityContext);
+
mStatsLogManager = StatsLogManager.newInstance(context);
// We need this view to be focusable in touch mode so that when text editing of the folder
// name is complete, we have something to focus on, thus hiding the cursor and giving
// reliable behavior when clicking the text field (since it will always gain focus on click).
setFocusableInTouchMode(true);
-
}
@Override
protected void onFinishInflate() {
super.onFinishInflate();
- final DeviceProfile dp = mLauncher.getDeviceProfile();
+ final DeviceProfile dp = mActivityContext.getDeviceProfile();
final int paddingLeftRight = dp.folderContentPaddingLeftRight;
mContent = findViewById(R.id.folder_content);
@@ -276,11 +294,52 @@
setWindowInsetsAnimationCallback(mFolderWindowInsetsAnimationCallback);
}
+
+ if (Utilities.ATLEAST_S) {
+ mColorExtractionIndex = LocalColorExtractor.getColorIndex(
+ !Themes.getAttrBoolean(getContext(), R.attr.isFolderDarkText));
+ mColorExtractor = LocalColorExtractor.newInstance(getContext());
+ mColorListener = (RectF rect, SparseIntArray extractedColors) -> {
+ mColorChangeRunnable = () -> {
+ mColorChangeRunnable = null;
+ int duration = FOLDER_COLOR_ANIMATION_DURATION;
+
+ // Cancel the open animation color change animator.
+ ObjectAnimator existingAnim = mOpenAnimationColorChangeAnimator;
+ if (existingAnim != null && existingAnim.isRunning()) {
+ duration = (int) Math.max(FOLDER_COLOR_ANIMATION_DURATION,
+ existingAnim.getDuration() * (1f - existingAnim.getDuration()));
+ existingAnim.cancel();
+ mOpenAnimationColorChangeAnimator = null;
+ }
+
+ // Start a new animator to the extracted color.
+ int newColor = extractedColors.get(mColorExtractionIndex);
+ GradientDrawable bg = (GradientDrawable) getBackground();
+ mColorChangeAnimator = ObjectAnimator.ofArgb(bg, "color",
+ bg.getColor().getDefaultColor(), newColor).setDuration(duration);
+ mColorChangeAnimator.addListener(new AnimatorListenerAdapter() {
+ @Override
+ public void onAnimationEnd(Animator animation) {
+ mColorChangeAnimator = null;
+ }
+ });
+ mColorChangeAnimator.start();
+ };
+
+ // If the folder open animation has started, we can start the color change now.
+ // Otherwise we wait for it to start.
+ if (mOpenAnimationColorChangeAnimator != null
+ && mOpenAnimationColorChangeAnimator.isStarted()) {
+ post(mColorChangeRunnable);
+ }
+ };
+ }
}
public boolean onLongClick(View v) {
// Return if global dragging is not enabled
- if (!mLauncher.isDraggingEnabled()) return true;
+ if (!mLauncherDelegate.isDraggingEnabled()) return true;
return startDrag(v, new DragOptions());
}
@@ -306,7 +365,7 @@
});
}
- mLauncher.getWorkspace().beginDragShared(v, this, options);
+ mLauncherDelegate.beginDragShared(v, this, options);
}
return true;
}
@@ -362,7 +421,7 @@
if (DEBUG) {
Log.d(TAG, "onBackKey newTitle=" + newTitle);
}
- mInfo.setTitle(newTitle, mLauncher.getModelWriter());
+ mInfo.setTitle(newTitle, mLauncherDelegate.getModelWriter());
mFolderIcon.onTitleChanged(newTitle);
if (TextUtils.isEmpty(mInfo.title)) {
@@ -427,6 +486,7 @@
public void setFolderIcon(FolderIcon icon) {
mFolderIcon = icon;
+ mLauncherDelegate.init(this, icon);
}
@Override
@@ -533,8 +593,8 @@
}
private void startAnimation(final AnimatorSet a) {
- mLauncher.getWorkspace().getVisiblePages()
- .forEach(visiblePage -> addAnimatorListenerForPage(a, (CellLayout) visiblePage));
+ mLauncherDelegate.forEachVisibleWorkspacePage(
+ visiblePage -> addAnimatorListenerForPage(a, (CellLayout) visiblePage));
a.addListener(new AnimatorListenerAdapter() {
@Override
@@ -652,15 +712,18 @@
// dropping. One resulting issue is that replaceFolderWithFinalItem() can be called twice.
mDeleteFolderOnDropCompleted = false;
- if (mCurrentAnimator != null && mCurrentAnimator.isRunning()) {
- mCurrentAnimator.cancel();
- }
- AnimatorSet anim = new FolderAnimationManager(this, true /* isOpening */).getAnimator();
+ cancelRunningAnimations();
+ FolderAnimationManager fam = new FolderAnimationManager(this, true /* isOpening */);
+ AnimatorSet anim = fam.getAnimator();
+ mOpenAnimationColorChangeAnimator = fam.getBgColorAnimator();
anim.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationStart(Animator animation) {
mFolderIcon.setIconVisible(false);
mFolderIcon.drawLeaveBehindIfExists();
+ if (mColorChangeRunnable != null) {
+ mColorChangeRunnable.run();
+ }
}
@Override
public void onAnimationEnd(Animator animation) {
@@ -692,12 +755,12 @@
mFolderName.animate().setDuration(FOLDER_NAME_ANIMATION_DURATION)
.translationX(0)
.setInterpolator(AnimationUtils.loadInterpolator(
- mLauncher, android.R.interpolator.fast_out_slow_in));
+ getContext(), android.R.interpolator.fast_out_slow_in));
mPageIndicator.playEntryAnimation();
if (updateAnimationFlag) {
mInfo.setOption(FolderInfo.FLAG_MULTI_PAGE_ANIMATION, true,
- mLauncher.getModelWriter());
+ mLauncherDelegate.getModelWriter());
}
}
});
@@ -752,6 +815,15 @@
AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED);
}
+ private void cancelRunningAnimations() {
+ if (mCurrentAnimator != null && mCurrentAnimator.isRunning()) {
+ mCurrentAnimator.cancel();
+ }
+ if (mColorChangeAnimator != null && mColorChangeAnimator.isRunning()) {
+ mColorChangeAnimator.cancel();
+ }
+ }
+
private void animateClosed() {
if (mIsAnimatingClosed) {
return;
@@ -760,9 +832,7 @@
mContent.completePendingPageChanges();
mContent.snapToPageImmediately(mContent.getDestinationPage());
- if (mCurrentAnimator != null && mCurrentAnimator.isRunning()) {
- mCurrentAnimator.cancel();
- }
+ cancelRunningAnimations();
AnimatorSet a = new FolderAnimationManager(this, false /* isOpening */).getAnimator();
a.addListener(new AnimatorListenerAdapter() {
@Override
@@ -837,6 +907,19 @@
clearDragInfo();
mState = STATE_SMALL;
mContent.setCurrentPage(0);
+
+ mOpenAnimationColorChangeAnimator = null;
+ mColorChangeRunnable = null;
+ if (mColorChangeAnimator != null) {
+ mColorChangeAnimator.cancel();
+ mColorChangeAnimator = null;
+ }
+ if (mColorExtractor != null) {
+ mColorExtractor.removeLocations();
+ mColorExtractor.setListener(null);
+ }
+ GradientDrawable bg = (GradientDrawable) getBackground();
+ bg.setColor(Themes.getAttrColor(getContext(), R.attr.folderFillColor));
}
@Override
@@ -1033,7 +1116,7 @@
if (getItemCount() <= mContent.itemsPerPage()) {
// Show the animation, next time something is added to the folder.
mInfo.setOption(FolderInfo.FLAG_MULTI_PAGE_ANIMATION, false,
- mLauncher.getModelWriter());
+ mLauncherDelegate.getModelWriter());
}
}
@@ -1051,7 +1134,7 @@
}
if (!items.isEmpty()) {
- mLauncher.getModelWriter().moveItemsInDatabase(items, mInfo.id, 0);
+ mLauncherDelegate.getModelWriter().moveItemsInDatabase(items, mInfo.id, 0);
}
if (FeatureFlags.FOLDER_NAME_SUGGEST.get() && !isBind
&& total > 1 /* no need to update if there's one icon */) {
@@ -1104,6 +1187,12 @@
lp.height = height;
lp.x = left;
lp.y = top;
+
+ if (mColorExtractor != null) {
+ mColorExtractor.removeLocations();
+ mColorExtractor.setListener(mColorListener);
+ mLauncherDelegate.addRectForColorExtraction(lp, mColorExtractor);
+ }
}
protected int getContentAreaHeight() {
@@ -1143,7 +1232,7 @@
if (mContent.getChildCount() > 0) {
int cellIconGap = (mContent.getPageAt(0).getCellWidth()
- - mLauncher.getDeviceProfile().iconSizePx) / 2;
+ - mActivityContext.getDeviceProfile().iconSizePx) / 2;
mFooter.setPadding(mContent.getPaddingLeft() + cellIconGap,
mFooter.getPaddingTop(),
mContent.getPaddingRight() + cellIconGap,
@@ -1173,56 +1262,7 @@
}
@Thunk void replaceFolderWithFinalItem() {
- // Add the last remaining child to the workspace in place of the folder
- Runnable onCompleteRunnable = new Runnable() {
- @Override
- public void run() {
- int itemCount = getItemCount();
- if (itemCount <= 1) {
- View newIcon = null;
- WorkspaceItemInfo finalItem = null;
-
- if (itemCount == 1) {
- // Move the item from the folder to the workspace, in the position of the
- // folder
- CellLayout cellLayout = mLauncher.getCellLayout(mInfo.container,
- mInfo.screenId);
- finalItem = mInfo.contents.remove(0);
- newIcon = mLauncher.createShortcut(cellLayout, finalItem);
- mLauncher.getModelWriter().addOrMoveItemInDatabase(finalItem,
- mInfo.container, mInfo.screenId, mInfo.cellX, mInfo.cellY);
- }
-
- // Remove the folder
- mLauncher.removeItem(mFolderIcon, mInfo, true /* deleteFromDb */);
- if (mFolderIcon instanceof DropTarget) {
- mDragController.removeDropTarget((DropTarget) mFolderIcon);
- }
-
- if (newIcon != null) {
- // We add the child after removing the folder to prevent both from existing
- // at the same time in the CellLayout. We need to add the new item with
- // addInScreenFromBind() to ensure that hotseat items are placed correctly.
- mLauncher.getWorkspace().addInScreenFromBind(newIcon, mInfo);
-
- // Focus the newly created child
- newIcon.requestFocus();
- }
- if (finalItem != null) {
- StatsLogger logger = mStatsLogManager.logger().withItemInfo(finalItem);
- mDragController.getLogInstanceId().map(logger::withInstanceId)
- .orElse(logger)
- .log(LAUNCHER_FOLDER_CONVERTED_TO_ICON);
- }
- }
- }
- };
- View finalChild = mContent.getLastItem();
- if (finalChild != null) {
- mFolderIcon.performDestroyAnimation(onCompleteRunnable);
- } else {
- onCompleteRunnable.run();
- }
+ mLauncherDelegate.replaceFolderWithFinalItem(this);
mDestroyed = true;
}
@@ -1281,6 +1321,10 @@
mScrollPauseAlarm.cancelAlarm();
}
mContent.completePendingPageChanges();
+ Launcher launcher = mLauncherDelegate.getLauncher();
+ if (launcher == null) {
+ return;
+ }
PendingAddShortcutInfo pasi = d.dragInfo instanceof PendingAddShortcutInfo
? (PendingAddShortcutInfo) d.dragInfo : null;
@@ -1290,7 +1334,7 @@
pasi.container = mInfo.id;
pasi.rank = mEmptyCellRank;
- mLauncher.addPendingItem(pasi, pasi.container, pasi.screenId, null, pasi.spanX,
+ launcher.addPendingItem(pasi, pasi.container, pasi.screenId, null, pasi.spanX,
pasi.spanY);
d.deferDragViewCleanupPostAnimation = false;
mRearrangeOnClose = true;
@@ -1312,7 +1356,7 @@
// Actually move the item in the database if it was an external drag. Call this
// before creating the view, so that WorkspaceItemInfo is updated appropriately.
- mLauncher.getModelWriter().addOrMoveItemInDatabase(
+ mLauncherDelegate.getModelWriter().addOrMoveItemInDatabase(
si, mInfo.id, 0, si.cellX, si.cellY);
mIsExternalDrag = false;
} else {
@@ -1327,7 +1371,7 @@
float scaleY = getScaleY();
setScaleX(1.0f);
setScaleY(1.0f);
- mLauncher.getDragLayer().animateViewIntoPosition(d.dragView, currentDragView, null);
+ launcher.getDragLayer().animateViewIntoPosition(d.dragView, currentDragView, null);
setScaleX(scaleX);
setScaleY(scaleY);
} else {
@@ -1355,10 +1399,11 @@
if (mContent.getPageCount() > 1) {
// The animation has already been shown while opening the folder.
- mInfo.setOption(FolderInfo.FLAG_MULTI_PAGE_ANIMATION, true, mLauncher.getModelWriter());
+ mInfo.setOption(FolderInfo.FLAG_MULTI_PAGE_ANIMATION, true,
+ mLauncherDelegate.getModelWriter());
}
- mLauncher.getStateManager().goToState(NORMAL, SPRING_LOADED_EXIT_DELAY);
+ launcher.getStateManager().goToState(NORMAL, SPRING_LOADED_EXIT_DELAY);
if (d.stateAnnouncer != null) {
d.stateAnnouncer.completeAction(R.string.item_moved);
}
@@ -1387,7 +1432,7 @@
FolderGridOrganizer verifier = new FolderGridOrganizer(
mActivityContext.getDeviceProfile().inv).setFolderInfo(mInfo);
verifier.updateRankAndPos(item, rank);
- mLauncher.getModelWriter().addOrMoveItemInDatabase(item, mInfo.id, 0, item.cellX,
+ mLauncherDelegate.getModelWriter().addOrMoveItemInDatabase(item, mInfo.id, 0, item.cellX,
item.cellY);
updateItemLocationsInDatabaseBatch(false);
@@ -1620,17 +1665,9 @@
return true;
}
return false;
- } else if (!dl.isEventOverView(this, ev)) {
- if (mLauncher.getAccessibilityDelegate().isInAccessibleDrag()) {
- // Do not close the container if in drag and drop.
- if (!dl.isEventOverView(mLauncher.getDropTargetBar(), ev)) {
- return true;
- }
- } else {
- // TODO: add ww log if need to gather tap outside to close folder
- close(true);
- return true;
- }
+ } else if (!dl.isEventOverView(this, ev)
+ && mLauncherDelegate.interceptOutsideTouch(ev, dl, this)) {
+ return true;
}
}
return false;
diff --git a/src/com/android/launcher3/folder/FolderAnimationManager.java b/src/com/android/launcher3/folder/FolderAnimationManager.java
index ee6ea99..7fbfb89 100644
--- a/src/com/android/launcher3/folder/FolderAnimationManager.java
+++ b/src/com/android/launcher3/folder/FolderAnimationManager.java
@@ -35,8 +35,6 @@
import android.view.View;
import android.view.animation.AnimationUtils;
-import androidx.core.graphics.ColorUtils;
-
import com.android.launcher3.BubbleTextView;
import com.android.launcher3.CellLayout;
import com.android.launcher3.R;
@@ -80,6 +78,8 @@
private final PreviewItemDrawingParams mTmpParams = new PreviewItemDrawingParams(0, 0, 0, 0);
private final FolderGridOrganizer mPreviewVerifier;
+ private ObjectAnimator mBgColorAnimator;
+
public FolderAnimationManager(Folder folder, boolean isOpening) {
mFolder = folder;
mContent = folder.mContent;
@@ -105,6 +105,12 @@
R.interpolator.large_folder_preview_item_close_interpolator);
}
+ /**
+ * Returns the animator that changes the background color.
+ */
+ public ObjectAnimator getBgColorAnimator() {
+ return mBgColorAnimator;
+ }
/**
* Prepares the Folder for animating between open / closed states.
@@ -162,10 +168,15 @@
final float yDistance = initialY - lp.y;
// Set up the Folder background.
- final int finalColor = ColorUtils.setAlphaComponent(
- Themes.getAttrColor(mContext, R.attr.folderFillColor), 255);
+ final int finalColor;
+ int folderFillColor = Themes.getAttrColor(mContext, R.attr.folderFillColor);
+ if (mIsOpening) {
+ finalColor = folderFillColor;
+ } else {
+ finalColor = mFolderBackground.getColor().getDefaultColor();
+ }
final int initialColor = setColorAlphaBound(
- finalColor, mPreviewBackground.getBackgroundAlpha());
+ folderFillColor, mPreviewBackground.getBackgroundAlpha());
mFolderBackground.mutate();
mFolderBackground.setColor(mIsOpening ? initialColor : finalColor);
@@ -193,11 +204,12 @@
play(a, anim);
}
+ mBgColorAnimator = getAnimator(mFolderBackground, "color", initialColor, finalColor);
+ play(a, mBgColorAnimator);
play(a, getAnimator(mFolder, View.TRANSLATION_X, xDistance, 0f));
play(a, getAnimator(mFolder, View.TRANSLATION_Y, yDistance, 0f));
play(a, getAnimator(mFolder.mContent, SCALE_PROPERTY, initialScale, finalScale));
play(a, getAnimator(mFolder.mFooter, SCALE_PROPERTY, initialScale, finalScale));
- play(a, getAnimator(mFolderBackground, "color", initialColor, finalColor));
play(a, mFolderIcon.mFolderName.createTextAlphaAnimator(!mIsOpening));
play(a, getShape().createRevealAnimator(
mFolder, startRect, endRect, finalRadius, !mIsOpening));
@@ -409,7 +421,7 @@
: ObjectAnimator.ofFloat(view, property, v2, v1);
}
- private Animator getAnimator(GradientDrawable drawable, String property, int v1, int v2) {
+ private ObjectAnimator getAnimator(GradientDrawable drawable, String property, int v1, int v2) {
return mIsOpening
? ObjectAnimator.ofArgb(drawable, property, v1, v2)
: ObjectAnimator.ofArgb(drawable, property, v2, v1);
diff --git a/src/com/android/launcher3/folder/FolderIcon.java b/src/com/android/launcher3/folder/FolderIcon.java
index 6b02021..279c445 100644
--- a/src/com/android/launcher3/folder/FolderIcon.java
+++ b/src/com/android/launcher3/folder/FolderIcon.java
@@ -169,14 +169,11 @@
public static <T extends Context & ActivityContext> FolderIcon inflateFolderAndIcon(int resId,
T activityContext, ViewGroup group, FolderInfo folderInfo) {
Folder folder = Folder.fromXml(activityContext);
- folder.setDragController(folder.mLauncher.getDragController());
FolderIcon icon = inflateIcon(resId, activityContext, group, folderInfo);
folder.setFolderIcon(icon);
folder.bind(folderInfo);
icon.setFolder(folder);
-
- icon.setOnFocusChangeListener(folder.mLauncher.getFocusHandler());
icon.mBackground.paddingY = icon.isInHotseat()
? 0 : activityContext.getDeviceProfile().cellYPaddingPx;
return icon;
@@ -467,7 +464,7 @@
CharSequence newTitle = nameInfos.getLabels()[0];
FromState fromState = mInfo.getFromLabelState();
- mInfo.setTitle(newTitle, mFolder.mLauncher.getModelWriter());
+ mInfo.setTitle(newTitle, mFolder.mLauncherDelegate.getModelWriter());
onTitleChanged(mInfo.title);
mFolder.mFolderName.setText(mInfo.title);
diff --git a/src/com/android/launcher3/folder/FolderPagedView.java b/src/com/android/launcher3/folder/FolderPagedView.java
index a4e8be6..7fc3740 100644
--- a/src/com/android/launcher3/folder/FolderPagedView.java
+++ b/src/com/android/launcher3/folder/FolderPagedView.java
@@ -31,7 +31,6 @@
import android.view.ViewDebug;
import com.android.launcher3.AbstractFloatingView;
-import com.android.launcher3.BaseActivity;
import com.android.launcher3.BubbleTextView;
import com.android.launcher3.CellLayout;
import com.android.launcher3.DeviceProfile;
@@ -49,6 +48,7 @@
import com.android.launcher3.touch.ItemClickHandler;
import com.android.launcher3.util.Thunk;
import com.android.launcher3.util.ViewCache;
+import com.android.launcher3.views.ActivityContext;
import java.util.ArrayList;
import java.util.Iterator;
@@ -102,7 +102,7 @@
setImportantForAccessibility(IMPORTANT_FOR_ACCESSIBILITY_YES);
mFocusIndicatorHelper = new ViewGroupFocusHelper(this);
- mViewCache = BaseActivity.fromContext(context).getViewCache();
+ mViewCache = ActivityContext.lookupContext(context).getViewCache();
}
public void setFolder(Folder folder) {
diff --git a/src/com/android/launcher3/folder/LauncherDelegate.java b/src/com/android/launcher3/folder/LauncherDelegate.java
new file mode 100644
index 0000000..f7d8e8c
--- /dev/null
+++ b/src/com/android/launcher3/folder/LauncherDelegate.java
@@ -0,0 +1,225 @@
+/*
+ * Copyright (C) 2021 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.launcher3.folder;
+
+import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_FOLDER_CONVERTED_TO_ICON;
+
+import android.content.Context;
+import android.graphics.Rect;
+import android.graphics.RectF;
+import android.view.MotionEvent;
+import android.view.View;
+
+import androidx.annotation.Nullable;
+
+import com.android.launcher3.CellLayout;
+import com.android.launcher3.DragSource;
+import com.android.launcher3.DropTarget;
+import com.android.launcher3.Launcher;
+import com.android.launcher3.LauncherAppState;
+import com.android.launcher3.dragndrop.DragOptions;
+import com.android.launcher3.logging.InstanceId;
+import com.android.launcher3.logging.StatsLogManager.StatsLogger;
+import com.android.launcher3.model.ModelWriter;
+import com.android.launcher3.model.data.FolderInfo;
+import com.android.launcher3.model.data.WorkspaceItemInfo;
+import com.android.launcher3.views.ActivityContext;
+import com.android.launcher3.views.BaseDragLayer;
+import com.android.launcher3.views.BaseDragLayer.LayoutParams;
+import com.android.launcher3.widget.LocalColorExtractor;
+
+import java.util.Arrays;
+import java.util.Optional;
+import java.util.function.Consumer;
+
+/**
+ * Wrapper around Launcher methods to allow folders in non-launcher context
+ */
+public class LauncherDelegate {
+
+ private final Launcher mLauncher;
+ private final Rect mTempRect = new Rect();
+ private final RectF mTempRectF = new RectF();
+
+ private LauncherDelegate(Launcher launcher) {
+ mLauncher = launcher;
+ }
+
+ void init(Folder folder, FolderIcon icon) {
+ folder.setDragController(mLauncher.getDragController());
+ icon.setOnFocusChangeListener(mLauncher.getFocusHandler());
+ }
+
+ boolean isDraggingEnabled() {
+ return mLauncher.isDraggingEnabled();
+ }
+
+ void beginDragShared(View child, DragSource source, DragOptions options) {
+ mLauncher.getWorkspace().beginDragShared(child, source, options);
+ }
+
+ ModelWriter getModelWriter() {
+ return mLauncher.getModelWriter();
+ }
+
+ void forEachVisibleWorkspacePage(Consumer<View> callback) {
+ mLauncher.getWorkspace().forEachVisiblePage(callback);
+ }
+
+ @Nullable
+ Launcher getLauncher() {
+ return mLauncher;
+ }
+
+ void addRectForColorExtraction(BaseDragLayer.LayoutParams lp, LocalColorExtractor target) {
+ mTempRect.set(lp.x, lp.y, lp.x + lp.width, lp.y + lp.height);
+ target.getExtractedRectForViewRect(mLauncher,
+ mLauncher.getWorkspace().getCurrentPage(), mTempRect, mTempRectF);
+ if (!mTempRectF.isEmpty()) {
+ target.addLocation(Arrays.asList(mTempRectF));
+ }
+ }
+
+ void replaceFolderWithFinalItem(Folder folder) {
+ // Add the last remaining child to the workspace in place of the folder
+ Runnable onCompleteRunnable = new Runnable() {
+ @Override
+ public void run() {
+ int itemCount = folder.getItemCount();
+ FolderInfo info = folder.mInfo;
+ if (itemCount <= 1) {
+ View newIcon = null;
+ WorkspaceItemInfo finalItem = null;
+
+ if (itemCount == 1) {
+ // Move the item from the folder to the workspace, in the position of the
+ // folder
+ CellLayout cellLayout = mLauncher.getCellLayout(info.container,
+ info.screenId);
+ finalItem = info.contents.remove(0);
+ newIcon = mLauncher.createShortcut(cellLayout, finalItem);
+ mLauncher.getModelWriter().addOrMoveItemInDatabase(finalItem,
+ info.container, info.screenId, info.cellX, info.cellY);
+ }
+
+ // Remove the folder
+ mLauncher.removeItem(folder.mFolderIcon, info, true /* deleteFromDb */);
+ if (folder.mFolderIcon instanceof DropTarget) {
+ folder.mDragController.removeDropTarget((DropTarget) folder.mFolderIcon);
+ }
+
+ if (newIcon != null) {
+ // We add the child after removing the folder to prevent both from existing
+ // at the same time in the CellLayout. We need to add the new item with
+ // addInScreenFromBind() to ensure that hotseat items are placed correctly.
+ mLauncher.getWorkspace().addInScreenFromBind(newIcon, info);
+
+ // Focus the newly created child
+ newIcon.requestFocus();
+ }
+ if (finalItem != null) {
+ StatsLogger logger = mLauncher.getStatsLogManager().logger()
+ .withItemInfo(finalItem);
+ ((Optional<InstanceId>) folder.mDragController.getLogInstanceId())
+ .map(logger::withInstanceId)
+ .orElse(logger)
+ .log(LAUNCHER_FOLDER_CONVERTED_TO_ICON);
+ }
+ }
+ }
+ };
+ View finalChild = folder.mContent.getLastItem();
+ if (finalChild != null) {
+ folder.mFolderIcon.performDestroyAnimation(onCompleteRunnable);
+ } else {
+ onCompleteRunnable.run();
+ }
+ }
+
+
+ boolean interceptOutsideTouch(MotionEvent ev, BaseDragLayer dl, Folder folder) {
+ if (mLauncher.getAccessibilityDelegate().isInAccessibleDrag()) {
+ // Do not close the container if in drag and drop.
+ if (!dl.isEventOverView(mLauncher.getDropTargetBar(), ev)) {
+ return true;
+ }
+ } else {
+ // TODO: add ww log if need to gather tap outside to close folder
+ folder.close(true);
+ return true;
+ }
+ return false;
+ }
+
+ private static class FallbackDelegate extends LauncherDelegate {
+
+ private final ActivityContext mContext;
+ private ModelWriter mWriter;
+
+ FallbackDelegate(ActivityContext context) {
+ super(null);
+ mContext = context;
+ }
+
+ @Override
+ void init(Folder folder, FolderIcon icon) {
+ folder.setDragController(mContext.getDragController());
+ }
+
+ @Override
+ boolean isDraggingEnabled() {
+ return false;
+ }
+
+ @Override
+ void beginDragShared(View child, DragSource source, DragOptions options) { }
+
+ @Override
+ ModelWriter getModelWriter() {
+ if (mWriter == null) {
+ mWriter = LauncherAppState.getInstance((Context) mContext).getModel()
+ .getWriter(false, false);
+ }
+ return mWriter;
+ }
+
+ @Override
+ void forEachVisibleWorkspacePage(Consumer<View> callback) { }
+
+ @Override
+ Launcher getLauncher() {
+ return null;
+ }
+
+ @Override
+ void replaceFolderWithFinalItem(Folder folder) { }
+
+ @Override
+ boolean interceptOutsideTouch(MotionEvent ev, BaseDragLayer dl, Folder folder) {
+ folder.close(true);
+ return true;
+ }
+
+ @Override
+ void addRectForColorExtraction(LayoutParams lp, LocalColorExtractor target) { }
+ }
+
+ static LauncherDelegate from(ActivityContext context) {
+ return context instanceof Launcher
+ ? new LauncherDelegate((Launcher) context)
+ : new FallbackDelegate(context);
+ }
+}
diff --git a/src/com/android/launcher3/graphics/SysUiScrim.java b/src/com/android/launcher3/graphics/SysUiScrim.java
index c09dac8..f0766c5 100644
--- a/src/com/android/launcher3/graphics/SysUiScrim.java
+++ b/src/com/android/launcher3/graphics/SysUiScrim.java
@@ -45,7 +45,10 @@
import com.android.launcher3.R;
import com.android.launcher3.ResourceUtils;
import com.android.launcher3.Utilities;
+import com.android.launcher3.config.FeatureFlags;
+import com.android.launcher3.util.DynamicResource;
import com.android.launcher3.util.Themes;
+import com.android.systemui.plugins.ResourceProvider;
/**
* View scrim which draws behind hotseat and workspace
@@ -101,8 +104,10 @@
private static final int ALPHA_MASK_BITMAP_DP = 200;
private static final int ALPHA_MASK_WIDTH_DP = 2;
- private boolean mDrawTopScrim, mDrawBottomScrim;
+ private boolean mDrawTopScrim, mDrawBottomScrim, mDrawWallpaperScrim;
+ private final RectF mWallpaperScrimRect = new RectF();
+ private final Paint mWallpaperScrimPaint = new Paint();
private final RectF mFinalMaskRect = new RectF();
private final Paint mBottomMaskPaint = new Paint(Paint.FILTER_BITMAP_FLAG);
private final Bitmap mBottomMask;
@@ -117,6 +122,7 @@
private boolean mAnimateScrimOnNextDraw = false;
private float mSysUiAnimMultiplier = 1;
+ private int mWallpaperScrimMaxAlpha;
public SysUiScrim(View view) {
mRoot = view;
@@ -127,6 +133,14 @@
mBottomMask = mTopScrim == null ? null : createDitheredAlphaMask();
mHideSysUiScrim = mTopScrim == null;
+ mDrawWallpaperScrim = FeatureFlags.ENABLE_WALLPAPER_SCRIM.get()
+ && !Themes.getAttrBoolean(view.getContext(), R.attr.isMainColorDark)
+ && !Themes.getAttrBoolean(view.getContext(), R.attr.isWorkspaceDarkText);
+ ResourceProvider rp = DynamicResource.provider(view.getContext());
+ int wallpaperScrimColor = rp.getColor(R.color.wallpaper_scrim_color);
+ mWallpaperScrimMaxAlpha = Color.alpha(wallpaperScrimColor);
+ mWallpaperScrimPaint.setColor(wallpaperScrimColor);
+
view.addOnAttachStateChangeListener(this);
}
@@ -151,6 +165,9 @@
mAnimateScrimOnNextDraw = false;
}
+ if (mDrawWallpaperScrim) {
+ canvas.drawRect(mWallpaperScrimRect, mWallpaperScrimPaint);
+ }
if (mDrawTopScrim) {
mTopScrim.draw(canvas);
}
@@ -214,6 +231,7 @@
mTopScrim.setBounds(0, 0, w, h);
mFinalMaskRect.set(0, h - mMaskHeight, w, h);
}
+ mWallpaperScrimRect.set(0, 0, w, h);
}
private void setSysUiProgress(float progress) {
@@ -236,6 +254,7 @@
if (mTopScrim != null) {
mTopScrim.setAlpha(Math.round(255 * factor));
}
+ mWallpaperScrimPaint.setAlpha(Math.round(mWallpaperScrimMaxAlpha * factor));
}
private Bitmap createDitheredAlphaMask() {
diff --git a/src/com/android/launcher3/model/AddWorkspaceItemsTask.java b/src/com/android/launcher3/model/AddWorkspaceItemsTask.java
index 29287d9..3be2c3a 100644
--- a/src/com/android/launcher3/model/AddWorkspaceItemsTask.java
+++ b/src/com/android/launcher3/model/AddWorkspaceItemsTask.java
@@ -20,7 +20,6 @@
import android.content.pm.LauncherApps;
import android.content.pm.PackageInstaller.SessionInfo;
import android.os.UserHandle;
-import android.util.Log;
import android.util.LongSparseArray;
import android.util.Pair;
@@ -28,6 +27,7 @@
import com.android.launcher3.LauncherAppState;
import com.android.launcher3.LauncherModel.CallbackTask;
import com.android.launcher3.LauncherSettings;
+import com.android.launcher3.logging.FileLog;
import com.android.launcher3.model.BgDataModel.Callbacks;
import com.android.launcher3.model.data.AppInfo;
import com.android.launcher3.model.data.FolderInfo;
@@ -130,7 +130,7 @@
packageName);
if (!packageInstaller.verifySessionInfo(sessionInfo)) {
- Log.d(LOG, "Item info failed session info verification: "
+ FileLog.d(LOG, "Item info failed session info verification: "
+ workspaceInfo);
}
@@ -180,11 +180,11 @@
addedItemsFinal.add(itemInfo);
// log bitmap and label
- Log.d(LOG, "Adding item info to workspace: " + itemInfo);
+ FileLog.d(LOG, "Adding item info to workspace: " + itemInfo);
if (itemInfo instanceof ItemInfoWithIcon) {
ItemInfoWithIcon infoWithIcon = (ItemInfoWithIcon) itemInfo;
- Log.d(LOG, "Item info icon base 64 string: "
+ FileLog.d(LOG, "Item info icon base 64 string: "
+ infoWithIcon.bitmap.icon == null
? "null" : IOUtils.toBase64String(infoWithIcon.bitmap.icon));
}
diff --git a/src/com/android/launcher3/model/ItemInstallQueue.java b/src/com/android/launcher3/model/ItemInstallQueue.java
index 22cb46b..217f523 100644
--- a/src/com/android/launcher3/model/ItemInstallQueue.java
+++ b/src/com/android/launcher3/model/ItemInstallQueue.java
@@ -43,6 +43,7 @@
import com.android.launcher3.Launcher;
import com.android.launcher3.LauncherAppState;
import com.android.launcher3.LauncherSettings.Favorites;
+import com.android.launcher3.logging.FileLog;
import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.model.data.LauncherAppWidgetInfo;
import com.android.launcher3.model.data.WorkspaceItemInfo;
@@ -191,11 +192,11 @@
MODEL_EXECUTOR.post(() -> {
Pair<ItemInfo, Object> itemInfo = info.getItemInfo(mContext);
if (itemInfo == null) {
- Log.d(LOG,
+ FileLog.d(LOG,
"Adding PendingInstallShortcutInfo with no attached info to queue.",
stackTrace);
} else {
- Log.d(LOG,
+ FileLog.d(LOG,
"Adding PendingInstallShortcutInfo to queue. Attached info: "
+ itemInfo.first,
stackTrace);
diff --git a/src/com/android/launcher3/model/LoaderCursor.java b/src/com/android/launcher3/model/LoaderCursor.java
index 897b02e..7e3bcee 100644
--- a/src/com/android/launcher3/model/LoaderCursor.java
+++ b/src/com/android/launcher3/model/LoaderCursor.java
@@ -52,6 +52,7 @@
import com.android.launcher3.model.data.AppInfo;
import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.model.data.WorkspaceItemInfo;
+import com.android.launcher3.shortcuts.ShortcutKey;
import com.android.launcher3.util.ContentWriter;
import com.android.launcher3.util.GridOccupancy;
import com.android.launcher3.util.IntArray;
@@ -394,6 +395,11 @@
* otherwise marks it for deletion.
*/
public void checkAndAddItem(ItemInfo info, BgDataModel dataModel) {
+ if (info.itemType == LauncherSettings.Favorites.ITEM_TYPE_DEEP_SHORTCUT) {
+ // Ensure that it is a valid intent. An exception here will
+ // cause the item loading to get skipped
+ ShortcutKey.fromItemInfo(info);
+ }
if (checkItemPlacement(info)) {
dataModel.addItem(mContext, info, false);
} else {
diff --git a/src/com/android/launcher3/model/data/SearchActionItemInfo.java b/src/com/android/launcher3/model/data/SearchActionItemInfo.java
index 0eea92c..b3057d5 100644
--- a/src/com/android/launcher3/model/data/SearchActionItemInfo.java
+++ b/src/com/android/launcher3/model/data/SearchActionItemInfo.java
@@ -94,11 +94,6 @@
"SearchActionItemInfo can only have either an Intent or a PendingIntent");
}
mIntent = intent;
- // bandage fix for just one week
- if (intent != null && "com.android.server.telecom".equals(intent.getPackage())) {
- intent.setAction(Intent.ACTION_DIAL);
- intent.setPackage(null);
- }
}
public PendingIntent getPendingIntent() {
diff --git a/src/com/android/launcher3/notification/NotificationItemView.java b/src/com/android/launcher3/notification/NotificationItemView.java
index e954480..d44d158 100644
--- a/src/com/android/launcher3/notification/NotificationItemView.java
+++ b/src/com/android/launcher3/notification/NotificationItemView.java
@@ -92,10 +92,6 @@
});
}
- public void updateBackgroundColor(int color) {
- mMainView.updateBackgroundColor(color);
- }
-
public void addGutter() {
if (mGutter == null) {
mGutter = mPopupContainer.inflateAndAdd(R.layout.notification_gutter, mRootView);
diff --git a/src/com/android/launcher3/pm/InstallSessionHelper.java b/src/com/android/launcher3/pm/InstallSessionHelper.java
index 88db430..5255490 100644
--- a/src/com/android/launcher3/pm/InstallSessionHelper.java
+++ b/src/com/android/launcher3/pm/InstallSessionHelper.java
@@ -30,7 +30,6 @@
import android.os.Process;
import android.os.UserHandle;
import android.text.TextUtils;
-import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.RequiresApi;
@@ -40,6 +39,7 @@
import com.android.launcher3.SessionCommitReceiver;
import com.android.launcher3.Utilities;
import com.android.launcher3.config.FeatureFlags;
+import com.android.launcher3.logging.FileLog;
import com.android.launcher3.model.ItemInstallQueue;
import com.android.launcher3.util.IOUtils;
import com.android.launcher3.util.IntArray;
@@ -218,7 +218,7 @@
if (FeatureFlags.PROMISE_APPS_NEW_INSTALLS.get()
&& SessionCommitReceiver.isEnabled(mAppContext)
&& verifySessionInfo(sessionInfo)) {
- Log.d(LOG, "Adding package name to install queue: "
+ FileLog.d(LOG, "Adding package name to install queue: "
+ sessionInfo.getAppPackageName());
ItemInstallQueue.INSTANCE.get(mAppContext)
@@ -241,7 +241,7 @@
if (sessionInfo != null) {
Bitmap appIcon = sessionInfo.getAppIcon();
- Log.d(LOG, String.format(
+ FileLog.d(LOG, String.format(
"Verifying session info. Valid: %b, Session verified: %b, Install reason valid:"
+ " %b, App icon: %s, App label: %s, Promise icon added: %b, "
+ "App installed: %b.",
@@ -254,7 +254,7 @@
new PackageManagerHelper(mAppContext).isAppInstalled(
sessionInfo.getAppPackageName(), getUserHandle(sessionInfo))));
} else {
- Log.d(LOG, "Verifying session info failed: session info null.");
+ FileLog.d(LOG, "Verifying session info failed: session info null.");
}
return validSessionInfo;
diff --git a/src/com/android/launcher3/popup/ArrowPopup.java b/src/com/android/launcher3/popup/ArrowPopup.java
index c63d69d..8dea14a 100644
--- a/src/com/android/launcher3/popup/ArrowPopup.java
+++ b/src/com/android/launcher3/popup/ArrowPopup.java
@@ -16,23 +16,18 @@
package com.android.launcher3.popup;
-import static com.android.launcher3.anim.Interpolators.ACCEL_DEACCEL;
-import static com.android.launcher3.popup.PopupPopulator.MAX_SHORTCUTS;
+import static com.android.launcher3.anim.Interpolators.ACCELERATED_EASE;
+import static com.android.launcher3.anim.Interpolators.DECELERATED_EASE;
+import static com.android.launcher3.anim.Interpolators.LINEAR;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.AnimatorSet;
-import android.animation.ArgbEvaluator;
import android.animation.ObjectAnimator;
-import android.animation.TimeInterpolator;
import android.animation.ValueAnimator;
import android.content.Context;
import android.content.res.Resources;
-import android.graphics.Outline;
import android.graphics.Rect;
-import android.graphics.RectF;
-import android.graphics.drawable.ColorDrawable;
-import android.graphics.drawable.Drawable;
import android.graphics.drawable.GradientDrawable;
import android.util.AttributeSet;
import android.util.Pair;
@@ -40,34 +35,25 @@
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import android.view.ViewOutlineProvider;
-import android.view.ViewTreeObserver;
+import android.view.animation.Interpolator;
import android.widget.FrameLayout;
import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
import com.android.launcher3.AbstractFloatingView;
import com.android.launcher3.BaseDraggingActivity;
import com.android.launcher3.InsettableFrameLayout;
-import com.android.launcher3.Launcher;
-import com.android.launcher3.LauncherAnimUtils;
import com.android.launcher3.LauncherState;
import com.android.launcher3.R;
import com.android.launcher3.Utilities;
-import com.android.launcher3.Workspace;
-import com.android.launcher3.anim.RevealOutlineAnimation;
-import com.android.launcher3.anim.RoundedRectRevealOutlineProvider;
import com.android.launcher3.dragndrop.DragLayer;
import com.android.launcher3.shortcuts.DeepShortcutView;
import com.android.launcher3.statemanager.StatefulActivity;
import com.android.launcher3.util.Themes;
import com.android.launcher3.views.BaseDragLayer;
-import com.android.launcher3.widget.LocalColorExtractor;
import java.util.ArrayList;
import java.util.Collections;
-import java.util.HashMap;
/**
* A container for shortcuts to deep links and notifications associated with an app.
@@ -77,11 +63,18 @@
public abstract class ArrowPopup<T extends StatefulActivity<LauncherState>>
extends AbstractFloatingView {
- // +1 for system shortcut view
- private static final int MAX_NUM_CHILDREN = MAX_SHORTCUTS + 1;
- // Index used to get background color when using local wallpaper color extraction,
- private static final int LIGHT_COLOR_EXTRACTION_INDEX = android.R.color.system_accent2_50;
- private static final int DARK_COLOR_EXTRACTION_INDEX = android.R.color.system_accent2_800;
+ // Duration values (ms) for popup open and close animations.
+ private static final int OPEN_DURATION = 276;
+ private static final int OPEN_FADE_START_DELAY = 0;
+ private static final int OPEN_FADE_DURATION = 38;
+ private static final int OPEN_CHILD_FADE_START_DELAY = 38;
+ private static final int OPEN_CHILD_FADE_DURATION = 76;
+
+ private static final int CLOSE_DURATION = 200;
+ private static final int CLOSE_FADE_START_DELAY = 140;
+ private static final int CLOSE_FADE_DURATION = 50;
+ private static final int CLOSE_CHILD_FADE_START_DELAY = 0;
+ private static final int CLOSE_CHILD_FADE_DURATION = 140;
private final Rect mTempRect = new Rect();
@@ -103,24 +96,16 @@
protected boolean mIsAboveIcon;
private int mGravity;
- protected Animator mOpenCloseAnimator;
+ protected AnimatorSet mOpenCloseAnimator;
protected boolean mDeferContainerRemoval;
- private final Rect mStartRect = new Rect();
- private final Rect mEndRect = new Rect();
private final GradientDrawable mRoundedTop;
private final GradientDrawable mRoundedBottom;
private Runnable mOnCloseCallback = () -> { };
- // The rect string of the view that the arrow is attached to, in screen reference frame.
- private String mArrowColorRectString;
- private int mArrowColor;
- private final int[] mColors;
- private final HashMap<String, View> mViewForRect = new HashMap<>();
-
- private final int mColorExtractionIndex;
- @Nullable private LocalColorExtractor mColorExtractor;
+ private final float mElevation;
+ private final int mBackgroundColor;
public ArrowPopup(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
@@ -128,16 +113,9 @@
mOutlineRadius = Themes.getDialogCornerRadius(context);
mLauncher = BaseDraggingActivity.fromContext(context);
mIsRtl = Utilities.isRtl(getResources());
- mColorExtractionIndex = Utilities.isDarkTheme(context)
- ? DARK_COLOR_EXTRACTION_INDEX
- : LIGHT_COLOR_EXTRACTION_INDEX;
- setClipToOutline(true);
- setOutlineProvider(new ViewOutlineProvider() {
- @Override
- public void getOutline(View view, Outline outline) {
- outline.setRoundRect(0, 0, view.getWidth(), view.getHeight(), mOutlineRadius);
- }
- });
+
+ mBackgroundColor = Themes.getAttrColor(context, R.attr.popupColorPrimary);
+ mElevation = getResources().getDimension(R.dimen.deep_shortcuts_elevation);
// Initialize arrow view
final Resources resources = getResources();
@@ -153,33 +131,14 @@
int smallerRadius = resources.getDimensionPixelSize(R.dimen.popup_smaller_radius);
mRoundedTop = new GradientDrawable();
+ mRoundedTop.setColor(mBackgroundColor);
mRoundedTop.setCornerRadii(new float[] { mOutlineRadius, mOutlineRadius, mOutlineRadius,
mOutlineRadius, smallerRadius, smallerRadius, smallerRadius, smallerRadius});
mRoundedBottom = new GradientDrawable();
+ mRoundedBottom.setColor(mBackgroundColor);
mRoundedBottom.setCornerRadii(new float[] { smallerRadius, smallerRadius, smallerRadius,
smallerRadius, mOutlineRadius, mOutlineRadius, mOutlineRadius, mOutlineRadius});
-
- boolean isAboveAnotherSurface = getTopOpenViewWithType(mLauncher, TYPE_FOLDER) != null
- || mLauncher.getStateManager().getState() == LauncherState.ALL_APPS;
- if (isAboveAnotherSurface) {
- mColors = new int[] { Themes.getAttrColor(context, R.attr.popupColorNeutral) };
- } else {
- int primaryColor = Themes.getAttrColor(context, R.attr.popupColorPrimary);
- int secondaryColor = Themes.getAttrColor(context, R.attr.popupColorSecondary);
- ArgbEvaluator argb = new ArgbEvaluator();
- mColors = new int[MAX_NUM_CHILDREN];
- // Interpolate between the two colors, exclusive.
- float step = 1f / (MAX_NUM_CHILDREN + 1);
- for (int i = 0; i < mColors.length; ++i) {
- mColors[i] =
- (int) argb.evaluate((i + 1) * step, primaryColor, secondaryColor);
- }
-
- if (Utilities.ATLEAST_S) {
- setupColorExtraction();
- }
- }
}
public ArrowPopup(Context context, AttributeSet attrs) {
@@ -237,7 +196,6 @@
int numVisibleShortcut = 0;
View lastView = null;
- int numVisibleChild = 0;
for (int i = 0; i < count; i++) {
View view = getChildAt(i);
boolean isShortcut = view instanceof DeepShortcutView;
@@ -264,36 +222,12 @@
numVisibleShortcut++;
}
}
-
- int color = mColors[numVisibleChild % mColors.length];
- setChildColor(view, color);
-
- // Arrow color matches the first child or the last child.
- if (!mIsAboveIcon && numVisibleChild == 0) {
- mArrowColor = color;
- } else if (mIsAboveIcon) {
- mArrowColor = color;
- }
-
- numVisibleChild++;
}
}
measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED);
}
/**
- * Sets the background color of the child.
- */
- protected void setChildColor(View view, int color) {
- Drawable bg = view.getBackground();
- if (bg instanceof GradientDrawable) {
- ((GradientDrawable) bg.mutate()).setColor(color);
- } else if (bg instanceof ColorDrawable) {
- ((ColorDrawable) bg.mutate()).setColor(color);
- }
- }
-
- /**
* Shows the popup at the desired location, optionally reversing the children.
* @param viewsToFlip number of views from the top to to flip in case of reverse order
*/
@@ -363,23 +297,18 @@
// so we centered it instead. In that case we don't want to showDefaultOptions the arrow.
mArrow.setVisibility(INVISIBLE);
} else {
- updateArrowColor();
- }
-
- mArrow.setPivotX(mArrowWidth / 2.0f);
- mArrow.setPivotY(mIsAboveIcon ? mArrowHeight : 0);
- }
-
- private void updateArrowColor() {
- if (!Gravity.isVertical(mGravity)) {
mArrow.setBackground(new RoundedArrowDrawable(
mArrowWidth, mArrowHeight, mArrowPointRadius,
mOutlineRadius, getMeasuredWidth(), getMeasuredHeight(),
mArrowOffsetHorizontal, -mArrowOffsetVertical,
!mIsAboveIcon, mIsLeftAligned,
- mArrowColor));
- mArrow.setElevation(getElevation());
+ mBackgroundColor));
+ // TODO: Remove elevation when arrow is above as it casts a shadow on the container
+ mArrow.setElevation(mIsAboveIcon ? mElevation : 0);
}
+
+ mArrow.setPivotX(mArrowWidth / 2.0f);
+ mArrow.setPivotY(mIsAboveIcon ? mArrowHeight : 0);
}
/**
@@ -431,7 +360,7 @@
}
int childMargins = (numVisibleChildren - 1) * mMargin;
int height = getMeasuredHeight() + extraVerticalSpace + childMargins;
- int width = getMeasuredWidth();
+ int width = getMeasuredWidth() + getPaddingLeft() + getPaddingRight();
getTargetObjectLocation(mTempRect);
InsettableFrameLayout dragLayer = getPopupContainer();
@@ -557,48 +486,13 @@
return getChildCount() > 0 ? getChildAt(0) : this;
}
- private int getArrowDuration() {
- return shouldAddArrow()
- ? getResources().getInteger(R.integer.config_popupArrowOpenCloseDuration)
- : 0;
- }
-
private void animateOpen() {
setVisibility(View.VISIBLE);
- final AnimatorSet openAnim = new AnimatorSet();
- final Resources res = getResources();
- final long revealDuration = (long) res.getInteger(R.integer.config_popupOpenCloseDuration);
- final long arrowDuration = getArrowDuration();
- final TimeInterpolator revealInterpolator = ACCEL_DEACCEL;
-
- // Rectangular reveal.
- mEndRect.set(0, 0, getMeasuredWidth(), getMeasuredHeight());
- final ValueAnimator revealAnim = createOpenCloseOutlineProvider()
- .createRevealAnimator(this, false);
- revealAnim.setDuration(revealDuration);
- revealAnim.setInterpolator(revealInterpolator);
- // Clip the popup to the initial outline while the notification dot and arrow animate.
- revealAnim.start();
- revealAnim.pause();
-
- ValueAnimator fadeIn = ValueAnimator.ofFloat(0, 1);
- fadeIn.setDuration(revealDuration + arrowDuration);
- fadeIn.setInterpolator(revealInterpolator);
- fadeIn.addUpdateListener(anim -> {
- float alpha = (float) anim.getAnimatedValue();
- mArrow.setAlpha(alpha);
- setAlpha(revealAnim.isStarted() ? alpha : 0);
- });
- openAnim.play(fadeIn);
-
- // Animate the arrow.
- mArrow.setScaleX(0);
- mArrow.setScaleY(0);
- Animator arrowScale = ObjectAnimator.ofFloat(mArrow, LauncherAnimUtils.SCALE_PROPERTY, 1)
- .setDuration(arrowDuration);
-
- openAnim.addListener(new AnimatorListenerAdapter() {
+ mOpenCloseAnimator = getOpenCloseAnimator(true, OPEN_DURATION, OPEN_FADE_START_DELAY,
+ OPEN_FADE_DURATION, OPEN_CHILD_FADE_START_DELAY, OPEN_CHILD_FADE_DURATION,
+ DECELERATED_EASE);
+ mOpenCloseAnimator.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
setAlpha(1f);
@@ -606,56 +500,68 @@
mOpenCloseAnimator = null;
}
});
-
- mOpenCloseAnimator = openAnim;
- openAnim.playSequentially(arrowScale, revealAnim);
- openAnim.start();
+ mOpenCloseAnimator.start();
}
+ private AnimatorSet getOpenCloseAnimator(boolean isOpening, int totalDuration,
+ int fadeStartDelay, int fadeDuration, int childFadeStartDelay,
+ int childFadeDuration, Interpolator interpolator) {
+ final AnimatorSet openAnim = new AnimatorSet();
+ float[] alphaValues = isOpening ? new float[] {0, 1} : new float[] {1, 0};
+ float[] scaleValues = isOpening ? new float[] {0.5f, 1} : new float[] {1, 0.5f};
+
+ ValueAnimator fade = ValueAnimator.ofFloat(alphaValues);
+ fade.setStartDelay(fadeStartDelay);
+ fade.setDuration(fadeDuration);
+ fade.setInterpolator(LINEAR);
+ fade.addUpdateListener(anim -> {
+ float alpha = (float) anim.getAnimatedValue();
+ mArrow.setAlpha(alpha);
+ setAlpha(alpha);
+ });
+ openAnim.play(fade);
+
+ setPivotX(mIsLeftAligned ? 0 : getMeasuredWidth());
+ setPivotY(mIsAboveIcon ? getMeasuredHeight() : 0);
+ Animator scale = ObjectAnimator.ofFloat(this, View.SCALE_Y, scaleValues);
+ scale.setDuration(totalDuration);
+ scale.setInterpolator(interpolator);
+ openAnim.play(scale);
+
+ for (int i = getChildCount() - 1; i >= 0; --i) {
+ View view = getChildAt(i);
+ if (view.getVisibility() == VISIBLE && view instanceof ViewGroup) {
+ for (int j = ((ViewGroup) view).getChildCount() - 1; j >= 0; --j) {
+ View childView = ((ViewGroup) view).getChildAt(j);
+
+ childView.setAlpha(alphaValues[0]);
+ ValueAnimator childFade = ObjectAnimator.ofFloat(childView, ALPHA, alphaValues);
+ childFade.setStartDelay(childFadeStartDelay);
+ childFade.setDuration(childFadeDuration);
+ childFade.setInterpolator(LINEAR);
+
+ openAnim.play(childFade);
+ }
+ }
+ }
+ return openAnim;
+ }
+
+
protected void animateClose() {
if (!mIsOpen) {
return;
}
- if (getOutlineProvider() instanceof RevealOutlineAnimation) {
- ((RevealOutlineAnimation) getOutlineProvider()).getOutline(mEndRect);
- } else {
- mEndRect.set(0, 0, getMeasuredWidth(), getMeasuredHeight());
- }
if (mOpenCloseAnimator != null) {
mOpenCloseAnimator.cancel();
}
mIsOpen = false;
-
- final AnimatorSet closeAnim = new AnimatorSet();
- final Resources res = getResources();
- final TimeInterpolator revealInterpolator = ACCEL_DEACCEL;
- final long revealDuration = res.getInteger(R.integer.config_popupOpenCloseDuration);
- final long arrowDuration = getArrowDuration();
-
- // Hide the arrow
- Animator scaleArrow = ObjectAnimator.ofFloat(mArrow, LauncherAnimUtils.SCALE_PROPERTY, 0)
- .setDuration(arrowDuration);
-
- // Rectangular reveal (reversed).
- final ValueAnimator revealAnim = createOpenCloseOutlineProvider()
- .createRevealAnimator(this, true);
- revealAnim.setDuration(revealDuration);
- revealAnim.setInterpolator(revealInterpolator);
- closeAnim.playSequentially(revealAnim, scaleArrow);
-
- ValueAnimator fadeOut = ValueAnimator.ofFloat(getAlpha(), 0);
- fadeOut.setDuration(revealDuration + arrowDuration);
- fadeOut.setInterpolator(revealInterpolator);
- fadeOut.addUpdateListener(anim -> {
- float alpha = (float) anim.getAnimatedValue();
- mArrow.setAlpha(alpha);
- setAlpha(scaleArrow.isStarted() ? 0 : alpha);
- });
- closeAnim.play(fadeOut);
-
- onCreateCloseAnimation(closeAnim);
- closeAnim.addListener(new AnimatorListenerAdapter() {
+ mOpenCloseAnimator = getOpenCloseAnimator(false, CLOSE_DURATION, CLOSE_FADE_START_DELAY,
+ CLOSE_FADE_DURATION, CLOSE_CHILD_FADE_START_DELAY, CLOSE_CHILD_FADE_DURATION,
+ ACCELERATED_EASE);
+ onCreateCloseAnimation(mOpenCloseAnimator);
+ mOpenCloseAnimator.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
mOpenCloseAnimator = null;
@@ -666,8 +572,7 @@
}
}
});
- mOpenCloseAnimator = closeAnim;
- closeAnim.start();
+ mOpenCloseAnimator.start();
}
/**
@@ -675,16 +580,6 @@
*/
protected void onCreateCloseAnimation(AnimatorSet anim) { }
- private RoundedRectRevealOutlineProvider createOpenCloseOutlineProvider() {
- int arrowLeft = getArrowLeft();
- int arrowCenterY = mIsAboveIcon ? getMeasuredHeight() : 0;
-
- mStartRect.set(arrowLeft, arrowCenterY, arrowLeft + mArrowWidth, arrowCenterY);
-
- return new RoundedRectRevealOutlineProvider(
- mArrowPointRadius, mOutlineRadius, mStartRect, mEndRect);
- }
-
/**
* Closes the popup without animation.
*/
@@ -698,12 +593,6 @@
getPopupContainer().removeView(this);
getPopupContainer().removeView(mArrow);
mOnCloseCallback.run();
- mArrowColorRectString = null;
- mViewForRect.clear();
- if (mColorExtractor != null) {
- mColorExtractor.removeLocations();
- mColorExtractor.setListener(null);
- }
}
/**
@@ -713,68 +602,6 @@
mOnCloseCallback = callback;
}
- private void setupColorExtraction() {
- Workspace workspace = mLauncher.findViewById(R.id.workspace);
- if (workspace == null) {
- return;
- }
-
- mColorExtractor = LocalColorExtractor.newInstance(mLauncher);
- mColorExtractor.setListener((rect, extractedColors) -> {
- String rectString = rect.toShortString();
- View v = mViewForRect.get(rectString);
- if (v != null) {
- int newColor = extractedColors.get(mColorExtractionIndex);
- setChildColor(v, newColor);
- if (rectString.equals(mArrowColorRectString)) {
- mArrowColor = newColor;
- updateArrowColor();
- }
- }
- });
-
- getViewTreeObserver().addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
- @Override
- public boolean onPreDraw() {
- getViewTreeObserver().removeOnPreDrawListener(this);
-
- ArrayList<RectF> locations = new ArrayList<>();
- Rect r = new Rect();
-
- int count = getChildCount();
- int numVisibleChild = 0;
- for (int i = 0; i < count; i++) {
- View view = getChildAt(i);
- if (view.getVisibility() == VISIBLE) {
- RectF rf = new RectF();
- mColorExtractor.getExtractedRectForView(Launcher.getLauncher(getContext()),
- workspace.getCurrentPage(), view, rf);
- if (rf.isEmpty()) {
- numVisibleChild++;
- continue;
- }
-
- locations.add(rf);
- String rectString = rf.toShortString();
- mViewForRect.put(rectString, view);
-
- // Arrow color matches the first child or the last child.
- if (!mIsAboveIcon && numVisibleChild == 0) {
- mArrowColorRectString = rectString;
- } else if (mIsAboveIcon) {
- mArrowColorRectString = rectString;
- }
-
- numVisibleChild++;
- }
- }
-
- mColorExtractor.addLocation(locations);
- return false;
- }
- });
- }
-
protected BaseDragLayer getPopupContainer() {
return mLauncher.getDragLayer();
}
diff --git a/src/com/android/launcher3/popup/PopupContainerWithArrow.java b/src/com/android/launcher3/popup/PopupContainerWithArrow.java
index 1659e6d..b115678 100644
--- a/src/com/android/launcher3/popup/PopupContainerWithArrow.java
+++ b/src/com/android/launcher3/popup/PopupContainerWithArrow.java
@@ -172,14 +172,6 @@
return false;
}
- @Override
- protected void setChildColor(View v, int color) {
- super.setChildColor(v, color);
- if (v.getId() == R.id.notification_container && mNotificationItemView != null) {
- mNotificationItemView.updateBackgroundColor(color);
- }
- }
-
/**
* Returns true if we can show the container.
*/
diff --git a/src/com/android/launcher3/settings/DeveloperOptionsFragment.java b/src/com/android/launcher3/settings/DeveloperOptionsFragment.java
index 217453f..d0a8c71 100644
--- a/src/com/android/launcher3/settings/DeveloperOptionsFragment.java
+++ b/src/com/android/launcher3/settings/DeveloperOptionsFragment.java
@@ -277,8 +277,8 @@
startActivity(launchSandboxIntent.putExtra(
"tutorial_steps",
new String[] {
- "LEFT_EDGE_BACK_NAVIGATION",
"HOME_NAVIGATION",
+ "LEFT_EDGE_BACK_NAVIGATION",
"OVERVIEW_NAVIGATION"}));
return true;
});
diff --git a/src/com/android/launcher3/settings/SettingsActivity.java b/src/com/android/launcher3/settings/SettingsActivity.java
index 216510b..883ff75 100644
--- a/src/com/android/launcher3/settings/SettingsActivity.java
+++ b/src/com/android/launcher3/settings/SettingsActivity.java
@@ -19,7 +19,6 @@
import static androidx.core.view.accessibility.AccessibilityNodeInfoCompat.ACTION_ACCESSIBILITY_FOCUS;
import static com.android.launcher3.states.RotationHelper.ALLOW_ROTATION_PREFERENCE_KEY;
-import static com.android.launcher3.states.RotationHelper.getAllowRotationDefaultValue;
import android.content.SharedPreferences;
import android.os.Bundle;
@@ -38,6 +37,8 @@
import androidx.preference.PreferenceScreen;
import androidx.recyclerview.widget.RecyclerView;
+import com.android.launcher3.DeviceProfile;
+import com.android.launcher3.InvariantDeviceProfile;
import com.android.launcher3.LauncherFiles;
import com.android.launcher3.R;
import com.android.launcher3.Utilities;
@@ -169,12 +170,14 @@
return !WidgetsModel.GO_DISABLE_NOTIFICATION_DOTS;
case ALLOW_ROTATION_PREFERENCE_KEY:
- if (getResources().getBoolean(R.bool.allow_rotation)) {
+ DeviceProfile deviceProfile = InvariantDeviceProfile.INSTANCE.get(
+ getContext()).getDeviceProfile(getContext());
+ if (deviceProfile.allowRotation) {
// Launcher supports rotation by default. No need to show this setting.
return false;
}
// Initialize the UI once
- preference.setDefaultValue(getAllowRotationDefaultValue());
+ preference.setDefaultValue(false);
return true;
case FLAGS_PREFERENCE_KEY:
diff --git a/src/com/android/launcher3/statemanager/StateManager.java b/src/com/android/launcher3/statemanager/StateManager.java
index 14ef2dc..03b6853 100644
--- a/src/com/android/launcher3/statemanager/StateManager.java
+++ b/src/com/android/launcher3/statemanager/StateManager.java
@@ -129,14 +129,14 @@
}
/**
- * @see #goToState(STATE_TYPE, boolean, Runnable)
+ * @see #goToState(STATE_TYPE, boolean, AnimatorListener)
*/
public void goToState(STATE_TYPE state) {
goToState(state, shouldAnimateStateChange());
}
/**
- * @see #goToState(STATE_TYPE, boolean, Runnable)
+ * @see #goToState(STATE_TYPE, boolean, AnimatorListener)
*/
public void goToState(STATE_TYPE state, boolean animated) {
goToState(state, animated, 0, null);
@@ -149,15 +149,15 @@
* true otherwise
* @paras onCompleteRunnable any action to perform at the end of the transition, of null.
*/
- public void goToState(STATE_TYPE state, boolean animated, Runnable onCompleteRunnable) {
- goToState(state, animated, 0, onCompleteRunnable);
+ public void goToState(STATE_TYPE state, boolean animated, AnimatorListener listener) {
+ goToState(state, animated, 0, listener);
}
/**
* Changes the Launcher state to the provided state after the given delay.
*/
- public void goToState(STATE_TYPE state, long delay, Runnable onCompleteRunnable) {
- goToState(state, true, delay, onCompleteRunnable);
+ public void goToState(STATE_TYPE state, long delay, AnimatorListener listener) {
+ goToState(state, true, delay, listener);
}
/**
@@ -187,21 +187,20 @@
}
}
- private void goToState(STATE_TYPE state, boolean animated, long delay,
- final Runnable onCompleteRunnable) {
+ private void goToState(
+ STATE_TYPE state, boolean animated, long delay, AnimatorListener listener) {
animated &= areAnimatorsEnabled();
if (mActivity.isInState(state)) {
if (mConfig.currentAnimation == null) {
// Run any queued runnable
- if (onCompleteRunnable != null) {
- onCompleteRunnable.run();
+ if (listener != null) {
+ listener.onAnimationEnd(null);
}
return;
} else if (!mConfig.userControlled && animated && mConfig.targetState == state) {
// We are running the same animation as requested
- if (onCompleteRunnable != null) {
- mConfig.currentAnimation.addListener(
- AnimationSuccessListener.forRunnable(onCompleteRunnable));
+ if (listener != null) {
+ mConfig.currentAnimation.addListener(listener);
}
return;
}
@@ -221,8 +220,8 @@
onStateTransitionEnd(state);
// Run any queued runnable
- if (onCompleteRunnable != null) {
- onCompleteRunnable.run();
+ if (listener != null) {
+ listener.onAnimationEnd(null);
}
return;
}
@@ -233,16 +232,16 @@
int startChangeId = mConfig.changeId;
mUiHandler.postDelayed(() -> {
if (mConfig.changeId == startChangeId) {
- goToStateAnimated(state, fromState, onCompleteRunnable);
+ goToStateAnimated(state, fromState, listener);
}
}, delay);
} else {
- goToStateAnimated(state, fromState, onCompleteRunnable);
+ goToStateAnimated(state, fromState, listener);
}
}
private void goToStateAnimated(STATE_TYPE state, STATE_TYPE fromState,
- Runnable onCompleteRunnable) {
+ AnimatorListener listener) {
// Since state mBaseState can be reached from multiple states, just assume that the
// transition plays in reverse and use the same duration as previous state.
mConfig.duration = state == mBaseState
@@ -250,8 +249,8 @@
: state.getTransitionDuration(mActivity);
prepareForAtomicAnimation(fromState, state, mConfig);
AnimatorSet animation = createAnimationToNewWorkspaceInternal(state).buildAnim();
- if (onCompleteRunnable != null) {
- animation.addListener(AnimationSuccessListener.forRunnable(onCompleteRunnable));
+ if (listener != null) {
+ animation.addListener(listener);
}
mUiHandler.post(new StartAnimRunnable(animation));
}
diff --git a/src/com/android/launcher3/states/RotationHelper.java b/src/com/android/launcher3/states/RotationHelper.java
index 2da06e9..5832711 100644
--- a/src/com/android/launcher3/states/RotationHelper.java
+++ b/src/com/android/launcher3/states/RotationHelper.java
@@ -18,43 +18,34 @@
import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_LOCKED;
import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_NOSENSOR;
import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED;
-import static android.util.DisplayMetrics.DENSITY_DEVICE_STABLE;
-import android.app.Activity;
import android.content.SharedPreferences;
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
-import android.content.res.Resources;
-import com.android.launcher3.R;
+import com.android.launcher3.BaseActivity;
+import com.android.launcher3.DeviceProfile;
import com.android.launcher3.Utilities;
import com.android.launcher3.util.UiThreadHelper;
/**
* Utility class to manage launcher rotation
*/
-public class RotationHelper implements OnSharedPreferenceChangeListener {
+public class RotationHelper implements OnSharedPreferenceChangeListener,
+ DeviceProfile.OnDeviceProfileChangeListener {
private static final String TAG = "RotationHelper";
public static final String ALLOW_ROTATION_PREFERENCE_KEY = "pref_allowRotation";
- public static boolean getAllowRotationDefaultValue() {
- // If the device's pixel density was scaled (usually via settings for A11y), use the
- // original dimensions to determine if rotation is allowed of not.
- Resources res = Resources.getSystem();
- int originalSmallestWidth = res.getConfiguration().smallestScreenWidthDp
- * res.getDisplayMetrics().densityDpi / DENSITY_DEVICE_STABLE;
- return originalSmallestWidth >= 600;
- }
-
public static final int REQUEST_NONE = 0;
public static final int REQUEST_ROTATE = 1;
public static final int REQUEST_LOCK = 2;
- private Activity mActivity;
- private final SharedPreferences mSharedPrefs;
+ private BaseActivity mActivity;
+ private SharedPreferences mSharedPrefs = null;
private boolean mIgnoreAutoRotateSettings;
+ private boolean mForceAllowRotationForTesting;
private boolean mHomeRotationEnabled;
/**
@@ -79,18 +70,25 @@
// Initialize mLastActivityFlags to a value not used by SCREEN_ORIENTATION flags
private int mLastActivityFlags = -999;
- public RotationHelper(Activity activity) {
+ public RotationHelper(BaseActivity activity) {
mActivity = activity;
+ }
+ private void setIgnoreAutoRotateSettings(boolean ignoreAutoRotateSettings) {
// On large devices we do not handle auto-rotate differently.
- mIgnoreAutoRotateSettings = mActivity.getResources().getBoolean(R.bool.allow_rotation);
+ mIgnoreAutoRotateSettings = ignoreAutoRotateSettings;
if (!mIgnoreAutoRotateSettings) {
- mSharedPrefs = Utilities.getPrefs(mActivity);
- mSharedPrefs.registerOnSharedPreferenceChangeListener(this);
+ if (mSharedPrefs == null) {
+ mSharedPrefs = Utilities.getPrefs(mActivity);
+ mSharedPrefs.registerOnSharedPreferenceChangeListener(this);
+ }
mHomeRotationEnabled = mSharedPrefs.getBoolean(ALLOW_ROTATION_PREFERENCE_KEY,
- getAllowRotationDefaultValue());
+ mActivity.getDeviceProfile().allowRotation);
} else {
- mSharedPrefs = null;
+ if (mSharedPrefs != null) {
+ mSharedPrefs.unregisterOnSharedPreferenceChangeListener(this);
+ mSharedPrefs = null;
+ }
}
}
@@ -99,12 +97,21 @@
if (mDestroyed) return;
boolean wasRotationEnabled = mHomeRotationEnabled;
mHomeRotationEnabled = mSharedPrefs.getBoolean(ALLOW_ROTATION_PREFERENCE_KEY,
- getAllowRotationDefaultValue());
+ mActivity.getDeviceProfile().allowRotation);
if (mHomeRotationEnabled != wasRotationEnabled) {
notifyChange();
}
}
+ @Override
+ public void onDeviceProfileChanged(DeviceProfile dp) {
+ boolean ignoreAutoRotateSettings = dp.allowRotation;
+ if (mIgnoreAutoRotateSettings != ignoreAutoRotateSettings) {
+ setIgnoreAutoRotateSettings(ignoreAutoRotateSettings);
+ notifyChange();
+ }
+ }
+
public void setStateHandlerRequest(int request) {
if (mStateHandlerRequest != request) {
mStateHandlerRequest = request;
@@ -128,14 +135,15 @@
// Used by tests only.
public void forceAllowRotationForTesting(boolean allowRotation) {
- mIgnoreAutoRotateSettings =
- allowRotation || mActivity.getResources().getBoolean(R.bool.allow_rotation);
+ mForceAllowRotationForTesting = allowRotation;
notifyChange();
}
public void initialize() {
if (!mInitialized) {
mInitialized = true;
+ setIgnoreAutoRotateSettings(mActivity.getDeviceProfile().allowRotation);
+ mActivity.addOnDeviceProfileChangeListener(this);
notifyChange();
}
}
@@ -143,6 +151,7 @@
public void destroy() {
if (!mDestroyed) {
mDestroyed = true;
+ mActivity.removeOnDeviceProfileChangeListener(this);
mActivity = null;
if (mSharedPrefs != null) {
mSharedPrefs.unregisterOnSharedPreferenceChangeListener(this);
@@ -165,7 +174,7 @@
} else if (mCurrentStateRequest == REQUEST_LOCK) {
activityFlags = SCREEN_ORIENTATION_LOCKED;
} else if (mIgnoreAutoRotateSettings || mCurrentStateRequest == REQUEST_ROTATE
- || mHomeRotationEnabled) {
+ || mHomeRotationEnabled || mForceAllowRotationForTesting) {
activityFlags = SCREEN_ORIENTATION_UNSPECIFIED;
} else {
// If auto rotation is off, allow rotation on the activity, in case the user is using
@@ -191,9 +200,10 @@
@Override
public String toString() {
- return String.format("[mStateHandlerRequest=%d, mCurrentStateRequest=%d,"
- + " mLastActivityFlags=%d, mIgnoreAutoRotateSettings=%b, mHomeRotationEnabled=%b]",
+ return String.format("[mStateHandlerRequest=%d, mCurrentStateRequest=%d, "
+ + "mLastActivityFlags=%d, mIgnoreAutoRotateSettings=%b, "
+ + "mHomeRotationEnabled=%b, mForceAllowRotationForTesting=%b]",
mStateHandlerRequest, mCurrentStateRequest, mLastActivityFlags,
- mIgnoreAutoRotateSettings, mHomeRotationEnabled);
+ mIgnoreAutoRotateSettings, mHomeRotationEnabled, mForceAllowRotationForTesting);
}
}
diff --git a/src/com/android/launcher3/testing/TestProtocol.java b/src/com/android/launcher3/testing/TestProtocol.java
index 3296ea5..4012e89 100644
--- a/src/com/android/launcher3/testing/TestProtocol.java
+++ b/src/com/android/launcher3/testing/TestProtocol.java
@@ -109,10 +109,6 @@
public static final String REQUEST_MOCK_SENSOR_ROTATION = "mock-sensor-rotation";
public static final String PERMANENT_DIAG_TAG = "TaplTarget";
- public static final String LAUNCHER_NOT_TRANSPOSED = "b/185820525";
- public static final String NO_SWIPE_TO_HOME = "b/158017601";
public static final String WORK_PROFILE_REMOVED = "b/159671700";
- public static final String TIS_NO_EVENTS = "b/180915942";
- public static final String GET_RECENTS_FAILED = "b/177472267";
- public static final String TWO_BUTTON_NORMAL_NOT_OVERVIEW = "b/177316094";
+ public static final String FALLBACK_ACTIVITY_NO_SET = "b/181019015";
}
diff --git a/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java b/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java
index d092f11..a086635 100644
--- a/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java
+++ b/src/com/android/launcher3/touch/AbstractStateChangeTouchController.java
@@ -56,9 +56,8 @@
protected final AnimatorListener mClearStateOnCancelListener =
newCancelListener(this::clearState);
+ private final FlingBlockCheck mFlingBlockCheck = new FlingBlockCheck();
- private boolean mNoIntercept;
- private boolean mIsLogContainerSet;
protected int mStartContainerType;
protected LauncherState mStartState;
@@ -67,12 +66,14 @@
protected AnimatorPlaybackController mCurrentAnimation;
protected boolean mGoingBetweenStates = true;
+ private boolean mNoIntercept;
+ private boolean mIsLogContainerSet;
private float mStartProgress;
// Ratio of transition process [0, 1] to drag displacement (px)
private float mProgressMultiplier;
private float mDisplacementShift;
private boolean mCanBlockFling;
- private final FlingBlockCheck mFlingBlockCheck = new FlingBlockCheck();
+ private boolean mAllAppsOvershootStarted;
public AbstractStateChangeTouchController(Launcher l, SingleAxisSwipeDetector.Direction dir) {
mLauncher = l;
@@ -216,8 +217,15 @@
mFlingBlockCheck.blockFling();
}
}
+ if (mToState == LauncherState.ALL_APPS && !UNSTABLE_SPRINGS.get()) {
+ mAllAppsOvershootStarted = true;
+ // 1f, value when all apps container hit the top
+ mLauncher.getAppsView().onPull(progress - 1f, progress - 1f);
+ }
+
} else {
mFlingBlockCheck.onEvent();
+
}
return true;
@@ -325,8 +333,15 @@
anim.setFloatValues(startProgress, endProgress);
updateSwipeCompleteAnimation(anim, duration, targetState, velocity, fling);
mCurrentAnimation.dispatchOnStart();
- if (fling && targetState == LauncherState.ALL_APPS && !UNSTABLE_SPRINGS.get()) {
- mLauncher.getAppsView().addSpringFromFlingUpdateListener(anim, velocity);
+ if (targetState == LauncherState.ALL_APPS && !UNSTABLE_SPRINGS.get()) {
+ if (mAllAppsOvershootStarted) {
+
+ mLauncher.getAppsView().onRelease();
+ mAllAppsOvershootStarted = false;
+
+ } else {
+ mLauncher.getAppsView().addSpringFromFlingUpdateListener(anim, velocity);
+ }
}
anim.start();
}
diff --git a/src/com/android/launcher3/touch/PagedOrientationHandler.java b/src/com/android/launcher3/touch/PagedOrientationHandler.java
index d8e5a48..6811438 100644
--- a/src/com/android/launcher3/touch/PagedOrientationHandler.java
+++ b/src/com/android/launcher3/touch/PagedOrientationHandler.java
@@ -105,7 +105,7 @@
int getPrimaryValue(int x, int y);
int getSecondaryValue(int x, int y);
- float getPrimaryValue(float x, float y);
+ float getPrimaryValue(float x, float y);
float getSecondaryValue(float x, float y);
boolean isLayoutNaturalToLauncher();
diff --git a/src/com/android/launcher3/util/DisplayController.java b/src/com/android/launcher3/util/DisplayController.java
index b751207..e2c0a32 100644
--- a/src/com/android/launcher3/util/DisplayController.java
+++ b/src/com/android/launcher3/util/DisplayController.java
@@ -106,12 +106,7 @@
extraInternalDisplays.add(new PortraitSize(size.x, size.y));
}
}
-
- if (extraInternalDisplays.isEmpty() || !Utilities.ATLEAST_S) {
- mInfo = new Info(createDisplayInfoContext(display), display, Collections.emptySet());
- } else {
- mInfo = new Info(mWindowContext, display, extraInternalDisplays);
- }
+ mInfo = new Info(getDisplayInfoContext(display), display, extraInternalDisplays);
mDM.registerDisplayListener(this, UI_HELPER_EXECUTOR.getHandler());
}
@@ -201,10 +196,8 @@
return mInfo;
}
- private Context createDisplayInfoContext(Display display) {
- return Utilities.ATLEAST_S
- ? mContext.createWindowContext(display, TYPE_APPLICATION, null)
- : mContext.createDisplayContext(display);
+ private Context getDisplayInfoContext(Display display) {
+ return Utilities.ATLEAST_S ? mWindowContext : mContext.createDisplayContext(display);
}
@AnyThread
@@ -213,7 +206,7 @@
Set<PortraitSize> extraDisplaysSizes = oldInfo.mAllSizes.size() > 1
? oldInfo.mAllSizes : Collections.emptySet();
- Context displayContext = createDisplayInfoContext(display);
+ Context displayContext = getDisplayInfoContext(display);
Info newInfo = new Info(displayContext, display, extraDisplaysSizes);
int change = 0;
if (!newInfo.mScreenSizeDp.equals(oldInfo.mScreenSizeDp)) {
diff --git a/src/com/android/launcher3/util/UiThreadHelper.java b/src/com/android/launcher3/util/UiThreadHelper.java
index f5e1234..523f3d6 100644
--- a/src/com/android/launcher3/util/UiThreadHelper.java
+++ b/src/com/android/launcher3/util/UiThreadHelper.java
@@ -23,11 +23,12 @@
import android.os.Handler;
import android.os.IBinder;
import android.os.Message;
+import android.view.View;
import android.view.WindowInsets;
import android.view.inputmethod.InputMethodManager;
-import com.android.launcher3.Launcher;
import com.android.launcher3.Utilities;
+import com.android.launcher3.views.ActivityContext;
/**
* Utility class for offloading some class from UI thread
@@ -43,21 +44,21 @@
private static final int MSG_RUN_COMMAND = 3;
@SuppressLint("NewApi")
- public static void hideKeyboardAsync(Launcher launcher, IBinder token) {
+ public static void hideKeyboardAsync(ActivityContext activityContext, IBinder token) {
+ View root = activityContext.getDragLayer();
if (Utilities.ATLEAST_R) {
- WindowInsets rootInsets = launcher.getRootView().getRootWindowInsets();
+ WindowInsets rootInsets = root.getRootWindowInsets();
boolean isImeShown = rootInsets != null && rootInsets.isVisible(
WindowInsets.Type.ime());
if (isImeShown) {
// this call is already asynchronous
- launcher.getAppsView().getWindowInsetsController().hide(
- WindowInsets.Type.ime()
- );
+ root.getWindowInsetsController().hide(WindowInsets.Type.ime());
}
return;
}
- Message.obtain(HANDLER.get(launcher), MSG_HIDE_KEYBOARD, token).sendToTarget();
+ Message.obtain(HANDLER.get(root.getContext()),
+ MSG_HIDE_KEYBOARD, token).sendToTarget();
}
public static void setOrientationAsync(Activity activity, int orientation) {
diff --git a/src/com/android/launcher3/views/ActivityContext.java b/src/com/android/launcher3/views/ActivityContext.java
index 71aa4ac..646b669 100644
--- a/src/com/android/launcher3/views/ActivityContext.java
+++ b/src/com/android/launcher3/views/ActivityContext.java
@@ -23,7 +23,9 @@
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.dot.DotInfo;
+import com.android.launcher3.dragndrop.DragController;
import com.android.launcher3.model.data.ItemInfo;
+import com.android.launcher3.util.ViewCache;
/**
* An interface to be used along with a context for various activities in Launcher. This allows a
@@ -86,6 +88,17 @@
DeviceProfile getDeviceProfile();
+ default ViewCache getViewCache() {
+ return new ViewCache();
+ }
+
+ /**
+ * Controller for supporting item drag-and-drop
+ */
+ default <T extends DragController> T getDragController() {
+ return null;
+ }
+
/**
* Returns the ActivityContext associated with the given Context.
*/
diff --git a/src/com/android/launcher3/views/RecyclerViewFastScroller.java b/src/com/android/launcher3/views/RecyclerViewFastScroller.java
index ae34257..9d0913a 100644
--- a/src/com/android/launcher3/views/RecyclerViewFastScroller.java
+++ b/src/com/android/launcher3/views/RecyclerViewFastScroller.java
@@ -106,6 +106,7 @@
// prevent jumping, this offset is applied as the user scrolls.
protected int mTouchOffsetY;
protected int mThumbOffsetY;
+ protected int mRvOffsetY;
// Fast scroller popup
private TextView mPopupView;
@@ -186,14 +187,18 @@
public void setThumbOffsetY(int y) {
if (mThumbOffsetY == y) {
+ int rvCurrentOffsetY = mRv.getCurrentScrollY();
+ if (mRvOffsetY != rvCurrentOffsetY) {
+ mRvOffsetY = mRv.getCurrentScrollY();
+ notifyScrollChanged();
+ }
return;
}
updatePopupY(y);
mThumbOffsetY = y;
invalidate();
- if (mOnFastScrollChangeListener != null) {
- mOnFastScrollChangeListener.onThumbOffsetYChanged(mThumbOffsetY);
- }
+ mRvOffsetY = mRv.getCurrentScrollY();
+ notifyScrollChanged();
}
public int getThumbOffsetY() {
@@ -422,13 +427,17 @@
mOnFastScrollChangeListener = onFastScrollChangeListener;
}
+ private void notifyScrollChanged() {
+ if (mOnFastScrollChangeListener != null) {
+ mOnFastScrollChangeListener.onScrollChanged();
+ }
+ }
+
/**
* A callback that is invoked when there is a scroll change in {@link RecyclerViewFastScroller}.
*/
public interface OnFastScrollChangeListener {
- /**
- * Called when the thumb offset vertical position, in pixels, has changed to {@code y}.
- */
- void onThumbOffsetYChanged(int y);
+ /** Called when the recycler view scroll has changed. */
+ void onScrollChanged();
}
}
diff --git a/src/com/android/launcher3/views/ScrimView.java b/src/com/android/launcher3/views/ScrimView.java
index 5387a3e..0ba94ab 100644
--- a/src/com/android/launcher3/views/ScrimView.java
+++ b/src/com/android/launcher3/views/ScrimView.java
@@ -18,6 +18,7 @@
import static com.android.launcher3.util.SystemUiController.UI_STATE_SCRIM_VIEW;
import android.content.Context;
+import android.graphics.Canvas;
import android.graphics.Rect;
import android.graphics.drawable.ColorDrawable;
import android.util.AttributeSet;
@@ -37,13 +38,16 @@
private SystemUiController mSystemUiController;
+ private ScrimDrawingController mDrawingController;
+
public ScrimView(Context context, AttributeSet attrs) {
super(context, attrs);
setFocusable(false);
}
@Override
- public void setInsets(Rect insets) { }
+ public void setInsets(Rect insets) {
+ }
@Override
public boolean hasOverlappingRendering() {
@@ -63,6 +67,14 @@
}
@Override
+ protected void onDraw(Canvas canvas) {
+ super.onDraw(canvas);
+ if (mDrawingController != null) {
+ mDrawingController.drawOnScrim(canvas);
+ }
+ }
+
+ @Override
protected void onVisibilityChanged(View changedView, int visibility) {
super.onVisibilityChanged(changedView, visibility);
updateSysUiColors();
@@ -96,4 +108,24 @@
return ColorUtils.calculateLuminance(
((ColorDrawable) getBackground()).getColor()) < 0.5f;
}
+
+ /**
+ * Sets drawing controller. Invalidates ScrimView if drawerController has changed.
+ */
+ public void setDrawingController(ScrimDrawingController drawingController) {
+ if (mDrawingController != drawingController) {
+ mDrawingController = drawingController;
+ invalidate();
+ }
+ }
+
+ /**
+ * A Utility interface allowing for other surfaces to draw on ScrimView
+ */
+ public interface ScrimDrawingController {
+ /**
+ * Called inside ScrimView#OnDraw
+ */
+ void drawOnScrim(Canvas canvas);
+ }
}
diff --git a/src/com/android/launcher3/views/SpringRelativeLayout.java b/src/com/android/launcher3/views/SpringRelativeLayout.java
index 9701389..8342d3e 100644
--- a/src/com/android/launcher3/views/SpringRelativeLayout.java
+++ b/src/com/android/launcher3/views/SpringRelativeLayout.java
@@ -32,6 +32,7 @@
*/
public class SpringRelativeLayout extends RelativeLayout {
+ // fixed edge at the time force is applied
private final EdgeEffect mEdgeGlowTop;
private final EdgeEffect mEdgeGlowBottom;
@@ -87,6 +88,15 @@
invalidate();
}
+ protected void absorbPullDeltaDistance(float deltaDistance, float displacement) {
+ mEdgeGlowBottom.onPull(deltaDistance, displacement);
+ invalidate();
+ }
+
+ protected void onRelease() {
+ mEdgeGlowBottom.onRelease();
+ }
+
public EdgeEffectFactory createEdgeEffectFactory() {
return new ProxyEdgeEffectFactory();
}
diff --git a/src/com/android/launcher3/widget/LocalColorExtractor.java b/src/com/android/launcher3/widget/LocalColorExtractor.java
index 8ae6b2e..e479b7d 100644
--- a/src/com/android/launcher3/widget/LocalColorExtractor.java
+++ b/src/com/android/launcher3/widget/LocalColorExtractor.java
@@ -28,6 +28,7 @@
import com.android.launcher3.Launcher;
import com.android.launcher3.R;
+import com.android.launcher3.Utilities;
import com.android.launcher3.util.ResourceBasedOverride;
import java.util.List;
@@ -35,6 +36,10 @@
/** Extracts the colors we need from the wallpaper at given locations. */
public class LocalColorExtractor implements ResourceBasedOverride {
+ // Index used to get background color when using local wallpaper color extraction,
+ private static final int LIGHT_COLOR_EXTRACTION_INDEX = android.R.color.system_accent2_50;
+ private static final int DARK_COLOR_EXTRACTION_INDEX = android.R.color.system_accent2_800;
+
/** Listener for color changes on a screen location. */
public interface Listener {
/**
@@ -103,4 +108,19 @@
RectF colorExtractionRectOut) {
// no-op
}
+
+ /**
+ * Returns an index used to query the color of interest from the list of extracted colors.
+ */
+ public static int getColorIndex(Context context) {
+ return getColorIndex(Utilities.isDarkTheme(context));
+ }
+
+ /**
+ * Returns an index used to query the color of interest from the list of extracted colors.
+ * @param getDarkIndex True when dark index is wanted, False when light index is wanted.
+ */
+ public static int getColorIndex(boolean getDarkIndex) {
+ return getDarkIndex ? DARK_COLOR_EXTRACTION_INDEX : LIGHT_COLOR_EXTRACTION_INDEX;
+ }
}
diff --git a/src/com/android/launcher3/widget/picker/SearchAndRecommendationsScrollController.java b/src/com/android/launcher3/widget/picker/SearchAndRecommendationsScrollController.java
index d09cb8a..317fd03 100644
--- a/src/com/android/launcher3/widget/picker/SearchAndRecommendationsScrollController.java
+++ b/src/com/android/launcher3/widget/picker/SearchAndRecommendationsScrollController.java
@@ -48,6 +48,8 @@
private WidgetsRecyclerView mCurrentRecyclerView;
+ private OnContentChangeListener mOnContentChangeListener = () -> applyVerticalTransition();
+
/**
* The vertical distance, in pixels, until the search is pinned at the top of the screen when
* the user scrolls down the recycler view.
@@ -82,19 +84,21 @@
mViewHolder.mContainer.setSearchAndRecommendationScrollController(this);
mSearchAndRecommendationViewParent = (View) mViewHolder.mContainer.getParent();
mPrimaryRecyclerView = primaryRecyclerView;
- mCurrentRecyclerView = mPrimaryRecyclerView;
mWorkRecyclerView = workRecyclerView;
mSearchRecyclerView = searchRecyclerView;
mPrimaryWorkTabsView = personalWorkTabsView;
mPrimaryWorkViewPager = primaryWorkViewPager;
- mCurrentRecyclerView = mPrimaryRecyclerView;
mTabsHeight = tabsHeight;
+ setCurrentRecyclerView(mPrimaryRecyclerView);
}
/** Sets the current active {@link WidgetsRecyclerView}. */
public void setCurrentRecyclerView(WidgetsRecyclerView currentRecyclerView) {
+ if (mCurrentRecyclerView != null) {
+ mCurrentRecyclerView.setOnContentChangeListener(null);
+ }
mCurrentRecyclerView = currentRecyclerView;
- mCurrentRecyclerView = currentRecyclerView;
+ mCurrentRecyclerView.setOnContentChangeListener(mOnContentChangeListener);
mViewHolder.mHeaderTitle.setTranslationY(0);
mViewHolder.mRecommendedWidgetsTable.setTranslationY(0);
mViewHolder.mSearchBar.setTranslationY(0);
@@ -216,12 +220,16 @@
return hasMarginOrPaddingUpdated;
}
+ @Override
+ public void onScrollChanged() {
+ applyVerticalTransition();
+ }
+
/**
* Changes the displacement of collapsible views (e.g. title & widget recommendations) and fixed
- * views (e.g. recycler views, tabs) upon scrolling.
+ * views (e.g. recycler views, tabs) upon scrolling / content changes in the recycler view.
*/
- @Override
- public void onThumbOffsetYChanged(int unused) {
+ private void applyVerticalTransition() {
// Always use the recycler view offset because fast scroller offset has a different scale.
int recyclerViewYOffset = mCurrentRecyclerView.getCurrentScrollY();
if (recyclerViewYOffset < 0) return;
@@ -299,4 +307,13 @@
return view.getMeasuredHeight() + marginLayoutParams.bottomMargin
+ marginLayoutParams.topMargin;
}
+
+ /**
+ * A listener to be notified when there is a content change in the recycler view that may affect
+ * the relative position of the search and recommendation container.
+ */
+ public interface OnContentChangeListener {
+ /** Notifies a content change in the recycler view. */
+ void onContentChanged();
+ }
}
diff --git a/src/com/android/launcher3/widget/picker/WidgetsListTableViewHolderBinder.java b/src/com/android/launcher3/widget/picker/WidgetsListTableViewHolderBinder.java
index 1524ab3..c3eda13 100644
--- a/src/com/android/launcher3/widget/picker/WidgetsListTableViewHolderBinder.java
+++ b/src/com/android/launcher3/widget/picker/WidgetsListTableViewHolderBinder.java
@@ -47,7 +47,6 @@
private int mMaxSpansPerRow = 4;
private final LayoutInflater mLayoutInflater;
- private final int mIndent;
private final OnClickListener mIconClickListener;
private final OnLongClickListener mIconLongClickListener;
private final WidgetPreviewLoader mWidgetPreviewLoader;
@@ -62,7 +61,6 @@
WidgetPreviewLoader widgetPreviewLoader,
WidgetsListAdapter listAdapter) {
mLayoutInflater = layoutInflater;
- mIndent = context.getResources().getDimensionPixelSize(R.dimen.widget_section_indent);
mIconClickListener = iconClickListener;
mIconLongClickListener = iconLongClickListener;
mWidgetPreviewLoader = widgetPreviewLoader;
@@ -90,11 +88,6 @@
ViewGroup container = (ViewGroup) mLayoutInflater.inflate(
R.layout.widgets_table_container, parent, false);
-
- // if the end padding is 0, then container view (horizontal scroll view) doesn't respect
- // the end of the linear layout width + the start padding and doesn't allow scrolling.
- container.findViewById(R.id.widgets_table).setPaddingRelative(mIndent, 0, 1, 0);
-
return new WidgetsRowViewHolder(container);
}
diff --git a/src/com/android/launcher3/widget/picker/WidgetsRecyclerView.java b/src/com/android/launcher3/widget/picker/WidgetsRecyclerView.java
index eb821d4..e981906 100644
--- a/src/com/android/launcher3/widget/picker/WidgetsRecyclerView.java
+++ b/src/com/android/launcher3/widget/picker/WidgetsRecyclerView.java
@@ -23,6 +23,8 @@
import android.view.View;
import android.widget.TableLayout;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.RecyclerView.OnItemTouchListener;
@@ -35,6 +37,7 @@
import com.android.launcher3.widget.model.WidgetsListContentEntry;
import com.android.launcher3.widget.model.WidgetsListHeaderEntry;
import com.android.launcher3.widget.model.WidgetsListSearchHeaderEntry;
+import com.android.launcher3.widget.picker.SearchAndRecommendationsScrollController.OnContentChangeListener;
/**
* The widgets recycler view.
@@ -50,6 +53,7 @@
private boolean mTouchDownOnScroller;
private HeaderViewDimensionsProvider mHeaderViewDimensionsProvider;
private int mLastVisibleWidgetContentTableHeight = 0;
+ @Nullable private OnContentChangeListener mOnContentChangeListener;
public WidgetsRecyclerView(Context context) {
this(context, null);
@@ -86,6 +90,22 @@
mAdapter = (WidgetsListAdapter) adapter;
}
+ @Override
+ public void onChildAttachedToWindow(@NonNull View child) {
+ super.onChildAttachedToWindow(child);
+ if (mOnContentChangeListener != null) {
+ mOnContentChangeListener.onContentChanged();
+ }
+ }
+
+ @Override
+ public void onChildDetachedFromWindow(@NonNull View child) {
+ super.onChildDetachedFromWindow(child);
+ if (mOnContentChangeListener != null) {
+ mOnContentChangeListener.onContentChanged();
+ }
+ }
+
/**
* Maps the touch (from 0..1) to the adapter position that should be visible.
*/
@@ -207,6 +227,25 @@
mHeaderViewDimensionsProvider = headerViewDimensionsProvider;
}
+ @Override
+ public void scrollToTop() {
+ if (mScrollbar != null) {
+ mScrollbar.reattachThumbToScroll();
+ }
+
+ if (getLayoutManager() instanceof LinearLayoutManager) {
+ if (getCurrentScrollY() == 0) {
+ // We are at the top, so don't scrollToPosition (would cause unnecessary relayout).
+ return;
+ }
+ }
+ scrollToPosition(0);
+ }
+
+ public void setOnContentChangeListener(@Nullable OnContentChangeListener listener) {
+ mOnContentChangeListener = listener;
+ }
+
/**
* Returns the sum of the height, in pixels, of this list adapter's items from index 0 until
* {@code untilIndex}.
@@ -244,19 +283,4 @@
*/
int getHeaderViewHeight();
}
-
- @Override
- public void scrollToTop() {
- if (mScrollbar != null) {
- mScrollbar.reattachThumbToScroll();
- }
-
- if (getLayoutManager() instanceof LinearLayoutManager) {
- if (getCurrentScrollY() == 0) {
- // We are at the top, so don't scrollToPosition (would cause unnecessary relayout).
- return;
- }
- }
- scrollToPosition(0);
- }
}
diff --git a/tests/AndroidManifest-common.xml b/tests/AndroidManifest-common.xml
index 7f6c8f8..918ec4a 100644
--- a/tests/AndroidManifest-common.xml
+++ b/tests/AndroidManifest-common.xml
@@ -109,7 +109,7 @@
<activity
android:name="com.android.launcher3.testcomponent.TestLauncherActivity"
android:clearTaskOnLaunch="true"
- android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout"
+ android:configChanges="keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenSize|screenLayout|smallestScreenSize|density"
android:enabled="false"
android:label="Test launcher"
android:launchMode="singleTask"
diff --git a/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java b/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java
index 2a0f7bb..8936f39 100644
--- a/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java
+++ b/tests/src/com/android/launcher3/ui/AbstractLauncherUiTest.java
@@ -249,6 +249,7 @@
@Before
public void setUp() throws Exception {
+ mLauncher.onTestStart();
Assert.assertTrue("Keyguard is visible, which is likely caused by a crash in SysUI",
TestHelpers.wait(
Until.gone(By.res(SYSTEMUI_PACKAGE, "keyguard_status_view")), 60000));
@@ -288,13 +289,17 @@
@After
public void verifyLauncherState() {
- // Limits UI tests affecting tests running after them.
- mLauncher.waitForLauncherInitialized();
- if (mLauncherPid != 0) {
- assertEquals("Launcher crashed, pid mismatch:",
- mLauncherPid, mLauncher.getPid().intValue());
+ try {
+ // Limits UI tests affecting tests running after them.
+ mLauncher.waitForLauncherInitialized();
+ if (mLauncherPid != 0) {
+ assertEquals("Launcher crashed, pid mismatch:",
+ mLauncherPid, mLauncher.getPid().intValue());
+ }
+ checkDetectedLeaks(mLauncher);
+ } finally {
+ mLauncher.onTestFinish();
}
- checkDetectedLeaks(mLauncher);
}
protected void clearLauncherData() {
diff --git a/tests/src/com/android/launcher3/ui/PortraitLandscapeRunner.java b/tests/src/com/android/launcher3/ui/PortraitLandscapeRunner.java
index 6c68daa..8f2d528 100644
--- a/tests/src/com/android/launcher3/ui/PortraitLandscapeRunner.java
+++ b/tests/src/com/android/launcher3/ui/PortraitLandscapeRunner.java
@@ -55,23 +55,19 @@
}
private void evaluateInPortrait() throws Throwable {
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "evaluateInPortrait");
mTest.mDevice.setOrientationNatural();
mTest.mLauncher.setExpectedRotation(Surface.ROTATION_0);
AbstractLauncherUiTest.checkDetectedLeaks(mTest.mLauncher);
base.evaluate();
mTest.getDevice().pressHome();
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "evaluateInPortrait finished");
}
private void evaluateInLandscape() throws Throwable {
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "evaluateInLandscape");
mTest.mDevice.setOrientationLeft();
mTest.mLauncher.setExpectedRotation(Surface.ROTATION_90);
AbstractLauncherUiTest.checkDetectedLeaks(mTest.mLauncher);
base.evaluate();
mTest.getDevice().pressHome();
- Log.d(TestProtocol.LAUNCHER_NOT_TRANSPOSED, "evaluateInLandscape finished");
}
};
}
diff --git a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java
index e5b93b1..c77583c 100644
--- a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java
+++ b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java
@@ -95,7 +95,6 @@
private static final String TAG = "Tapl";
private static final int ZERO_BUTTON_STEPS_FROM_BACKGROUND_TO_HOME = 20;
private static final int GESTURE_STEP_MS = 16;
- private static long START_TIME = System.currentTimeMillis();
private static final Pattern EVENT_TOUCH_DOWN = getTouchEventPattern("ACTION_DOWN");
private static final Pattern EVENT_TOUCH_UP = getTouchEventPattern("ACTION_UP");
@@ -107,6 +106,7 @@
static final Pattern EVENT_TOUCH_UP_TIS = getTouchEventPatternTIS("ACTION_UP");
private final String mLauncherPackage;
private final boolean mIsLauncher3;
+ private long mTestStartTime = -1;
// Types for launcher containers that the user is interacting with. "Background" is a
// pseudo-container corresponding to inactive launcher covered by another app.
@@ -422,6 +422,14 @@
mOnSettledStateAction = onSettledStateAction;
}
+ public void onTestStart() {
+ mTestStartTime = System.currentTimeMillis();
+ }
+
+ public void onTestFinish() {
+ mTestStartTime = -1;
+ }
+
private String formatSystemHealthMessage(String message) {
final String testPackage = getContext().getPackageName();
@@ -430,14 +438,16 @@
mInstrumentation.getUiAutomation().grantRuntimePermission(
testPackage, "android.permission.PACKAGE_USAGE_STATS");
- final String systemHealth = mSystemHealthSupplier != null
- ? mSystemHealthSupplier.apply(START_TIME)
- : TestHelpers.getSystemHealthMessage(getContext(), START_TIME);
+ if (mTestStartTime > 0) {
+ final String systemHealth = mSystemHealthSupplier != null
+ ? mSystemHealthSupplier.apply(mTestStartTime)
+ : TestHelpers.getSystemHealthMessage(getContext(), mTestStartTime);
- if (systemHealth != null) {
- return message
- + ",\nperhaps linked to system health problems:\n<<<<<<<<<<<<<<<<<<\n"
- + systemHealth + "\n>>>>>>>>>>>>>>>>>>";
+ if (systemHealth != null) {
+ return message
+ + ",\nperhaps linked to system health problems:\n<<<<<<<<<<<<<<<<<<\n"
+ + systemHealth + "\n>>>>>>>>>>>>>>>>>>";
+ }
}
return message;
@@ -1349,6 +1359,8 @@
}
public int getTotalPssKb() {
+ // GC the system & sysui first before gc'ing launcher
+ logShellCommand("cmd statusbar run-gc");
return getTestInfo(TestProtocol.REQUEST_TOTAL_PSS_KB).
getInt(TestProtocol.TEST_INFO_RESPONSE_FIELD);
}