Merge "Postponing CUJ_QUICK_SWITCH and CUJ_APP_CLOSE_TO_HOME" into sc-dev
diff --git a/go/quickstep/res/layout/overview_actions_container.xml b/go/quickstep/res/layout/overview_actions_container.xml
index b36214b..e7da196 100644
--- a/go/quickstep/res/layout/overview_actions_container.xml
+++ b/go/quickstep/res/layout/overview_actions_container.xml
@@ -29,10 +29,6 @@
android:orientation="horizontal">
<Space
- android:layout_width="@dimen/go_overview_button_width"
- android:layout_height="1dp" />
-
- <Space
android:layout_width="0dp"
android:layout_height="1dp"
android:layout_weight="1" />
@@ -50,9 +46,8 @@
</LinearLayout>
<Space
- android:layout_width="0dp"
- android:layout_height="1dp"
- android:layout_weight="1" />
+ android:layout_width="@dimen/go_overview_button_container_margin"
+ android:layout_height="1dp" />
<LinearLayout
style="@style/GoOverviewActionButtonContainer">
@@ -68,9 +63,8 @@
</LinearLayout>
<Space
- android:layout_width="0dp"
- android:layout_height="1dp"
- android:layout_weight="1" />
+ android:layout_width="@dimen/go_overview_button_container_margin"
+ android:layout_height="1dp" />
<LinearLayout
style="@style/GoOverviewActionButtonContainer">
@@ -90,10 +84,6 @@
android:layout_height="1dp"
android:layout_weight="1" />
- <Space
- android:layout_width="@dimen/go_overview_button_width"
- android:layout_height="1dp" />
-
<!-- Will be enabled in a future version. -->
<LinearLayout
style="@style/GoOverviewActionButtonContainer"
diff --git a/go/quickstep/res/layout/overview_panel.xml b/go/quickstep/res/layout/overview_panel.xml
new file mode 100644
index 0000000..241b63d
--- /dev/null
+++ b/go/quickstep/res/layout/overview_panel.xml
@@ -0,0 +1,39 @@
+<?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.
+-->
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+
+ <com.android.quickstep.views.LauncherRecentsView
+ android:id="@+id/overview_panel"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:accessibilityPaneTitle="@string/accessibility_recent_apps"
+ android:clipChildren="false"
+ android:clipToPadding="false"
+ android:background="?attr/overviewBackgroundColor"
+ android:visibility="invisible" />
+
+ <com.android.quickstep.views.SplitPlaceholderView
+ android:id="@+id/split_placeholder"
+ android:layout_width="match_parent"
+ android:layout_height="@dimen/split_placeholder_size"
+ android:background="@android:color/darker_gray"
+ android:visibility="gone" />
+
+ <include
+ android:id="@+id/overview_actions_view"
+ layout="@layout/overview_actions_container" />
+
+</merge>
diff --git a/go/quickstep/res/values/attrs.xml b/go/quickstep/res/values/attrs.xml
new file mode 100644
index 0000000..3adf462
--- /dev/null
+++ b/go/quickstep/res/values/attrs.xml
@@ -0,0 +1,23 @@
+<?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>
+ <!-- Attributes used for Overview theming -->
+ <attr name="overviewBackgroundColor" format="color" />
+ <attr name="overviewButtonTextColor" format="color" />
+ <attr name="overviewButtonIconColor" format="color" />
+ <attr name="overviewButtonBackgroundColor" format="color" />
+</resources>
\ No newline at end of file
diff --git a/go/quickstep/res/values/colors.xml b/go/quickstep/res/values/colors.xml
index 9383770..f815f54 100644
--- a/go/quickstep/res/values/colors.xml
+++ b/go/quickstep/res/values/colors.xml
@@ -16,6 +16,10 @@
-->
<resources>
<!-- Overview -->
- <color name="go_overview_button_icon_color">#3C4043</color>
+ <color name="go_overview_background_color">#DADADA</color>
+ <color name="go_overview_background_color_dark">#000000</color>
+ <color name="go_overview_text_color">#3C4043</color>
+ <color name="go_overview_text_color_dark">#F8F9FA</color>
<color name="go_overview_button_color">#70FFFFFF</color>
+ <color name="go_overview_button_color_dark">#303030</color>
</resources>
diff --git a/go/quickstep/res/values/dimens.xml b/go/quickstep/res/values/dimens.xml
index da684fa..55cd138 100644
--- a/go/quickstep/res/values/dimens.xml
+++ b/go/quickstep/res/values/dimens.xml
@@ -22,6 +22,7 @@
<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_container_margin">16dp</dimen>
<dimen name="go_overview_button_caption_margin">8dp</dimen>
<dimen name="overview_actions_height">96dp</dimen>
<dimen name="overview_proactive_row_height">0dp</dimen>
diff --git a/go/quickstep/res/values/styles.xml b/go/quickstep/res/values/styles.xml
index 9b3fe67..59f7377 100644
--- a/go/quickstep/res/values/styles.xml
+++ b/go/quickstep/res/values/styles.xml
@@ -15,9 +15,25 @@
limitations under the License.
-->
<resources>
+ <!-- App themes -->
+ <style name="AppTheme" parent="@style/LauncherTheme">
+ <item name="overviewBackgroundColor">@color/go_overview_background_color</item>
+ <item name="overviewButtonTextColor">@color/go_overview_text_color</item>
+ <item name="overviewButtonIconColor">@color/go_overview_text_color</item>
+ <item name="overviewButtonBackgroundColor">@color/go_overview_button_color</item>
+ </style>
+
+ <style name="AppTheme.Dark" parent="@style/LauncherTheme.Dark">
+ <item name="overviewBackgroundColor">@color/go_overview_background_color_dark</item>
+ <item name="overviewButtonTextColor">@color/go_overview_text_color_dark</item>
+ <item name="overviewButtonIconColor">@color/go_overview_text_color_dark</item>
+ <item name="overviewButtonBackgroundColor">@color/go_overview_button_color_dark</item>
+ </style>
+
+ <!-- Overview -->
<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:tint">?attr/overviewButtonIconColor</item>
+ <item name="android:backgroundTint">?attr/overviewButtonBackgroundColor</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>
@@ -27,7 +43,7 @@
<style name="GoOverviewActionButtonCaption">
<item name="android:fontFamily">sans-serif-medium</item>
<item name="android:textSize">14dp</item>
- <item name="android:textColor">@color/go_overview_button_icon_color</item>
+ <item name="android:textColor">?attr/overviewButtonTextColor</item>
<item name="android:lineHeight">20dp</item>
<item name="android:textAlignment">center</item>
<item name="android:importantForAccessibility">no</item>
diff --git a/go/quickstep/src/com/android/quickstep/TaskOverlayFactoryGo.java b/go/quickstep/src/com/android/quickstep/TaskOverlayFactoryGo.java
index 117b8e6..65cdcf0 100644
--- a/go/quickstep/src/com/android/quickstep/TaskOverlayFactoryGo.java
+++ b/go/quickstep/src/com/android/quickstep/TaskOverlayFactoryGo.java
@@ -25,7 +25,6 @@
import android.content.Context;
import android.content.Intent;
import android.graphics.Matrix;
-import android.net.Uri;
import android.os.SystemClock;
import android.os.UserManager;
import android.provider.Settings;
@@ -33,7 +32,6 @@
import androidx.annotation.VisibleForTesting;
-import com.android.launcher3.BuildConfig;
import com.android.launcher3.R;
import com.android.quickstep.util.AssistContentRequester;
import com.android.quickstep.views.OverviewActionsView;
@@ -54,18 +52,18 @@
public static final String ACTIONS_ERROR_CODE = "niu_actions_app_error_code";
public static final int ERROR_PERMISSIONS = 1;
private static final String TAG = "TaskOverlayFactoryGo";
- private static final String URI_AUTHORITY =
- BuildConfig.APPLICATION_ID + ".overview.fileprovider";
- private static final String FAKE_FILEPATH = "shared_images/null.png";
- // Empty constructor required for ResourceBasedOverride
- public TaskOverlayFactoryGo(Context context) {}
+ private AssistContentRequester mContentRequester;
+
+ public TaskOverlayFactoryGo(Context context) {
+ mContentRequester = new AssistContentRequester(context);
+ }
/**
* Create a new overlay instance for the given View
*/
public TaskOverlayGo createOverlay(TaskThumbnailView thumbnailView) {
- return new TaskOverlayGo(thumbnailView);
+ return new TaskOverlayGo(thumbnailView, mContentRequester);
}
/**
@@ -77,9 +75,12 @@
private String mTaskPackageName;
private String mWebUrl;
private boolean mAssistPermissionsEnabled;
+ private AssistContentRequester mFactoryContentRequester;
- private TaskOverlayGo(TaskThumbnailView taskThumbnailView) {
+ private TaskOverlayGo(TaskThumbnailView taskThumbnailView,
+ AssistContentRequester assistContentRequester) {
super(taskThumbnailView);
+ mFactoryContentRequester = assistContentRequester;
}
/**
@@ -110,9 +111,7 @@
}
int taskId = task.key.id;
- AssistContentRequester contentRequester =
- new AssistContentRequester(mApplicationContext);
- contentRequester.requestAssistContent(taskId, this::onAssistContentReceived);
+ mFactoryContentRequester.requestAssistContent(taskId, this::onAssistContentReceived);
}
/** Provide Assist Content to the overlay. */
@@ -138,15 +137,6 @@
mImageApi.shareAsDataWithExplicitIntent(/* crop */ null, intent);
} else {
intent.putExtra(ACTIONS_ERROR_CODE, ERROR_PERMISSIONS);
- // The Intent recipient expects an image URI, and omitting one or using a
- // completely invalid URI will cause the Intent parsing to crash.
- // So we construct a URI for a nonexistent image.
- Uri uri = new Uri.Builder()
- .scheme(ContentResolver.SCHEME_CONTENT)
- .authority(URI_AUTHORITY)
- .path(FAKE_FILEPATH)
- .build();
- intent.setData(uri);
mApplicationContext.startActivity(intent);
}
}
diff --git a/quickstep/res/drawable/gesture_tutorial_action_button_background.xml b/quickstep/res/drawable/gesture_tutorial_action_button_background.xml
index 6fc2b76..ac6a52a 100644
--- a/quickstep/res/drawable/gesture_tutorial_action_button_background.xml
+++ b/quickstep/res/drawable/gesture_tutorial_action_button_background.xml
@@ -13,8 +13,19 @@
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">
- <corners android:radius="50dp"/>
- <solid android:color="@color/gesture_tutorial_primary_color"/>
-</shape>
\ No newline at end of file
+<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
+ <item>
+ <shape
+ android:id="@android:id/mask"
+ android:shape="rectangle">
+ <corners android:radius="50dp"/>
+ </shape>
+ </item>
+ <item>
+ <shape
+ android:shape="rectangle">
+ <corners android:radius="50dp"/>
+ <solid android:color="@color/gesture_tutorial_primary_color"/>
+ </shape>
+ </item>
+</layer-list>
\ 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_dark_mode.xml
similarity index 100%
rename from quickstep/res/drawable/gesture_tutorial_motion_back_left.xml
rename to quickstep/res/drawable/gesture_tutorial_motion_back_left_dark_mode.xml
diff --git a/quickstep/res/drawable/gesture_tutorial_motion_back_left_light_mode.xml b/quickstep/res/drawable/gesture_tutorial_motion_back_left_light_mode.xml
new file mode 100644
index 0000000..c0eafda
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_motion_back_left_light_mode.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="#ffffff"
+ 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="#3c3e40"
+ 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_dark_mode.xml
similarity index 100%
rename from quickstep/res/drawable/gesture_tutorial_motion_back_right.xml
rename to quickstep/res/drawable/gesture_tutorial_motion_back_right_dark_mode.xml
diff --git a/quickstep/res/drawable/gesture_tutorial_motion_back_right_light_mode.xml b/quickstep/res/drawable/gesture_tutorial_motion_back_right_light_mode.xml
new file mode 100644
index 0000000..c24e5a5
--- /dev/null
+++ b/quickstep/res/drawable/gesture_tutorial_motion_back_right_light_mode.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="#ffffff"
+ 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="#3c3e40"
+ 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_dark_mode.xml
similarity index 99%
rename from quickstep/res/drawable/gesture_tutorial_motion_home.xml
rename to quickstep/res/drawable/gesture_tutorial_motion_home_dark_mode.xml
index 87b8857..aff35c1 100644
--- a/quickstep/res/drawable/gesture_tutorial_motion_home.xml
+++ b/quickstep/res/drawable/gesture_tutorial_motion_home_dark_mode.xml
@@ -922,7 +922,7 @@
<path
android:name="_R_G_L_3_G_D_0_P_0"
android:fillAlpha="1"
- android:fillColor="#000000"
+ android:fillColor="@color/fake_wallpaper_color_dark_mode"
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>
diff --git a/quickstep/res/drawable/gesture_tutorial_motion_home.xml b/quickstep/res/drawable/gesture_tutorial_motion_home_light_mode.xml
similarity index 98%
copy from quickstep/res/drawable/gesture_tutorial_motion_home.xml
copy to quickstep/res/drawable/gesture_tutorial_motion_home_light_mode.xml
index 87b8857..98d97ad 100644
--- a/quickstep/res/drawable/gesture_tutorial_motion_home.xml
+++ b/quickstep/res/drawable/gesture_tutorial_motion_home_light_mode.xml
@@ -588,11 +588,11 @@
android:duration="150"
android:propertyName="fillColor"
android:startOffset="350"
- android:valueFrom="#202124"
+ android:valueFrom="#6e7175"
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" />
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.674 1.0,1.0" />
</aapt:attr>
</objectAnimator>
</set>
@@ -605,11 +605,11 @@
android:duration="150"
android:propertyName="fillColor"
android:startOffset="350"
- android:valueFrom="#202124"
+ android:valueFrom="#6e7175"
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" />
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.676 1.0,1.0" />
</aapt:attr>
</objectAnimator>
</set>
@@ -622,11 +622,11 @@
android:duration="150"
android:propertyName="fillColor"
android:startOffset="350"
- android:valueFrom="#3c4043"
+ android:valueFrom="#9a9a9a"
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" />
+ <pathInterpolator android:pathData="M 0.0,0.0 c0.333,0 0.833,0.584 1.0,1.0" />
</aapt:attr>
</objectAnimator>
</set>
@@ -922,7 +922,7 @@
<path
android:name="_R_G_L_3_G_D_0_P_0"
android:fillAlpha="1"
- android:fillColor="#000000"
+ android:fillColor="@color/fake_wallpaper_color_light_mode"
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>
@@ -937,7 +937,7 @@
<path
android:name="_R_G_L_2_G_L_4_G_D_0_P_0"
android:fillAlpha="0"
- android:fillColor="#3c4043"
+ android:fillColor="#d9d9da"
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>
@@ -1195,7 +1195,7 @@
<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:fillColor="#6e7175"
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>
@@ -1206,7 +1206,7 @@
<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:fillColor="#6e7175"
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>
@@ -1217,7 +1217,7 @@
<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:fillColor="#9a9a9a"
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>
@@ -1243,7 +1243,7 @@
<path
android:name="_R_G_L_0_G_D_0_P_0"
android:fillAlpha="0"
- android:fillColor="@color/gesture_tutorial_primary_color"
+ 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>
diff --git a/quickstep/res/drawable/gesture_tutorial_motion_overview.xml b/quickstep/res/drawable/gesture_tutorial_motion_overview_dark_mode.xml
similarity index 99%
rename from quickstep/res/drawable/gesture_tutorial_motion_overview.xml
rename to quickstep/res/drawable/gesture_tutorial_motion_overview_dark_mode.xml
index 058bee2..b007d20 100644
--- a/quickstep/res/drawable/gesture_tutorial_motion_overview.xml
+++ b/quickstep/res/drawable/gesture_tutorial_motion_overview_dark_mode.xml
@@ -860,7 +860,7 @@
<path
android:name="_R_G_L_5_G_D_0_P_0"
android:fillAlpha="1"
- android:fillColor="#000000"
+ android:fillColor="@color/fake_wallpaper_color_dark_mode"
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>
@@ -1600,7 +1600,7 @@
<path
android:name="_R_G_L_1_G_D_0_P_0"
android:fillAlpha="1"
- android:fillColor="#3c4043"
+ android:fillColor="@color/gesture_tutorial_fake_previous_task_view_color"
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>
diff --git a/quickstep/res/drawable/mock_webpage.xml b/quickstep/res/drawable/mock_webpage_dark_mode.xml
similarity index 100%
rename from quickstep/res/drawable/mock_webpage.xml
rename to quickstep/res/drawable/mock_webpage_dark_mode.xml
diff --git a/quickstep/res/drawable/mock_webpage_light_mode.xml b/quickstep/res/drawable/mock_webpage_light_mode.xml
new file mode 100644
index 0000000..98abb92
--- /dev/null
+++ b/quickstep/res/drawable/mock_webpage_light_mode.xml
@@ -0,0 +1,263 @@
+<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_4_G">
+ <group
+ android:name="_R_G_L_0_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_0_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_0_G_L_4_G_L_10_G"
+ android:translateX="182.5"
+ android:translateY="831">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_9_G"
+ android:translateX="186"
+ android:translateY="801">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_8_G"
+ android:translateX="119"
+ android:translateY="755">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_7_G"
+ android:translateX="182.5"
+ android:translateY="725">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_6_G"
+ android:translateX="197.5"
+ android:translateY="695">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_5_G"
+ android:translateX="192"
+ android:translateY="665">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_4_G"
+ android:translateX="105.5"
+ android:translateY="360">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_3_G"
+ android:translateX="47.5"
+ android:translateY="360">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_2_G"
+ android:translateX="142.5"
+ android:translateY="328">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_1_G"
+ android:translateX="186"
+ android:translateY="284">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_4_G_L_0_G"
+ android:translateX="155"
+ android:translateY="240">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_3_G"
+ android:translateX="24"
+ android:translateY="390">
+ <group
+ android:name="_R_G_L_0_G_L_3_G_L_0_G"
+ android:translateX="182"
+ android:translateY="120">
+ <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=" 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_2_G">
+ <group
+ android:name="_R_G_L_0_G_L_2_G_L_2_G"
+ android:translateX="206"
+ android:translateY="145">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_2_G_L_1_G"
+ android:translateX="206"
+ android:translateY="145">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_2_G_L_0_G"
+ android:translateX="46"
+ android:translateY="145">
+ <path
+ android:name="_R_G_L_0_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_0_G_L_1_G">
+ <group
+ android:name="_R_G_L_0_G_L_1_G_L_2_G"
+ android:translateX="206"
+ android:translateY="51">
+ <path
+ android:name="_R_G_L_0_G_L_1_G_L_2_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#6e7175"
+ 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_1_G_L_1_G"
+ android:translateX="206"
+ android:translateY="50.5">
+ <path
+ android:name="_R_G_L_0_G_L_1_G_L_1_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#6e7175"
+ 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_1_G_L_0_G"
+ android:translateX="206"
+ android:translateY="66.5">
+ <path
+ android:name="_R_G_L_0_G_L_1_G_L_0_G_D_0_P_0"
+ android:fillAlpha="1"
+ android:fillColor="#9a9a9a"
+ 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_0_G_L_0_G"
+ android:scaleY="0"
+ android:translateX="206"
+ android:translateY="446">
+ <path
+ android:name="_R_G_L_0_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="time_group" />
+ </vector>
+ </aapt:attr>
+</animated-vector>
\ No newline at end of file
diff --git a/quickstep/res/layout/gesture_tutorial_fragment.xml b/quickstep/res/layout/gesture_tutorial_fragment.xml
index a884e74..1e8d0e0 100644
--- a/quickstep/res/layout/gesture_tutorial_fragment.xml
+++ b/quickstep/res/layout/gesture_tutorial_fragment.xml
@@ -20,13 +20,20 @@
android:layout_height="match_parent"
android:clipChildren="false">
- <ImageView
+ <RelativeLayout
android:id="@+id/gesture_tutorial_fake_launcher_view"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerHorizontal="true"
- android:layout_alignParentBottom="true"
- android:layout_marginBottom="70dp" />
+ android:layout_width="match_parent"
+ android:layout_height="match_parent">
+
+ <ImageView
+ android:id="@+id/gesture_tutorial_fake_hotseat_view"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerHorizontal="true"
+ android:layout_alignParentBottom="true"
+ android:layout_marginBottom="70dp"/>
+
+ </RelativeLayout>
<com.android.launcher3.views.ClipIconView
android:id="@+id/gesture_tutorial_fake_icon_view"
@@ -119,8 +126,6 @@
app:layout_constraintTop_toTopOf="@id/gesture_tutorial_fragment_action_button"
app:layout_constraintBottom_toBottomOf="@id/gesture_tutorial_fragment_action_button"/>
- <!-- android:stateListAnimator="@null" removes shadow and normal on click behavior (increase
- of elevation and shadow) which is replaced by ripple effect in android:foreground -->
<Button
android:id="@+id/gesture_tutorial_fragment_action_button"
style="@style/TextAppearance.GestureTutorial.ButtonLabel"
@@ -133,7 +138,6 @@
android:paddingEnd="16dp"
android:text="@string/gesture_tutorial_action_button_label_next"
android:background="@drawable/gesture_tutorial_action_button_background"
- android:foreground="?android:attr/selectableItemBackgroundBorderless"
android:stateListAnimator="@null"
android:visibility="invisible"
diff --git a/quickstep/res/layout/task_menu.xml b/quickstep/res/layout/task_menu.xml
index 96a94ba..763e45e 100644
--- a/quickstep/res/layout/task_menu.xml
+++ b/quickstep/res/layout/task_menu.xml
@@ -25,15 +25,15 @@
<TextView
android:id="@+id/task_name"
- android:background="?android:attr/textColorPrimary"
- android:textColor="?android:attr/textColorPrimaryInverse"
+ android:background="?android:attr/colorPrimary"
+ android:textColor="?android:attr/textColorPrimary"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:layout_marginBottom="2dp"
- android:paddingTop="@dimen/task_card_menu_option_vertical_padding"
- android:paddingBottom="@dimen/task_card_menu_option_vertical_padding"
- android:textSize="24sp"/>
+ android:paddingTop="@dimen/task_menu_vertical_padding"
+ android:paddingBottom="@dimen/task_menu_vertical_padding"
+ android:textSize="16sp"/>
<LinearLayout
android:id="@+id/menu_option_layout"
diff --git a/quickstep/res/layout/task_view_menu_option.xml b/quickstep/res/layout/task_view_menu_option.xml
index 59c7263..19ca3e3 100644
--- a/quickstep/res/layout/task_view_menu_option.xml
+++ b/quickstep/res/layout/task_view_menu_option.xml
@@ -21,7 +21,7 @@
android:orientation="vertical"
android:paddingTop="@dimen/task_card_menu_option_vertical_padding"
android:paddingBottom="@dimen/task_card_menu_option_vertical_padding"
- android:background="?android:attr/textColorPrimary"
+ android:background="?android:attr/colorPrimary"
android:theme="@style/PopupItem" >
<View
@@ -30,7 +30,7 @@
android:layout_height="@dimen/system_shortcut_icon_size"
android:layout_marginStart="@dimen/task_menu_option_start_margin"
android:layout_gravity="center_horizontal"
- android:backgroundTint="?android:attr/textColorPrimaryInverse"/>
+ android:backgroundTint="?android:attr/textColorPrimary"/>
<TextView
style="@style/BaseIcon"
@@ -39,7 +39,7 @@
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/task_menu_option_start_margin"
android:textSize="14sp"
- android:textColor="?android:attr/textColorPrimaryInverse"
+ android:textColor="?android:attr/textColorPrimary"
android:focusable="false" />
</LinearLayout>
diff --git a/quickstep/res/values-af/strings.xml b/quickstep/res/values-af/strings.xml
index 2cef1e5..468628e 100644
--- a/quickstep/res/values-af/strings.xml
+++ b/quickstep/res/values-af/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Voorspelde program: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Maak seker dat jy van die rand heel links af swiep."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Maak seker dat jy van die linkerrand na die middel van die skerm swiep en laat los."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Swiep van regs na middel van skerm om terug te gaan na laaste skerm."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Maak seker dat jy van die rand heel regs af swiep."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Maak seker dat jy van die regterrand na die middel van die skerm swiep en laat los."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Jy het die \"gaan terug\"-gebaar voltooi. Nou kan jy leer hoe om tussen programme te wissel."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Jy het geleer hoe om van links af te swiep om terug te gaan."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Jy het geleer hoe om van regs af te swiep om terug te gaan. Nou kan jy leer hoe om tussen programme te wissel."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Jy het die \"gaan terug\"-gebaar voltooi."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Maak seker dat jy nie te naby aan die onderkant van die skerm swiep nie."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Gaan na Instellings om sensitiwiteit van teruggebaar te verander"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Swiep van links af om terug te gaan"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Swiep van linkerkant na middel van skerm om terug te gaan na laaste skerm waarop jy was."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Swiep van links af om terug te gaan"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Swiep van regs af om terug te gaan"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Swiep van links af na middel van skerm om terug te gaan na laaste skerm waarop jy was."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Swiep van regs af na middel van skerm om terug te gaan na laaste skerm. Probeer dit nou."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Maak seker dat jy van die onderrand van die skerm af opswiep."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Maak seker jy onderbreek nie voordat jy laat los nie."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Maak seker jy swiep reguit op."</string>
diff --git a/quickstep/res/values-am/strings.xml b/quickstep/res/values-am/strings.xml
index 253cb6c..3b3366d 100644
--- a/quickstep/res/values-am/strings.xml
+++ b/quickstep/res/values-am/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"የተገመተው መተግበሪያ፦ <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ከግራ ጠርዝ ጥግ ጀምሮ ማንሸራተትዎን ያረጋግጡ።"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ከግራ ጠርዝ ወደ ማያ ገጹ መሃል ማንሸራተትዎን እና መልቀቅዎን ያረጋግጡ።"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"እንዲሁም ከቀኝ ጠርዝ ወደ ማያ ገጹ መሃል በማንሸራተት ወደ መጨረሻው ማያ ገጽ መመለስ ይችላሉ።"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ከቀኝ ጠርዝ ጥግ ጀምሮ ማንሸራተትዎን ያረጋግጡ።"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ከቀኝ ጠርዝ ወደ ማያ ገጹ መሃል ማንሸራተትዎን እና መልቀቅዎን ያረጋግጡ።"</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"ወደኋላ የመመለስ ምልክትን አጠናቀዋል። ቀጥሎም መተግበሪያዎችን እንዴት መቀየር እንደሚችሉ ይወቁ።"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"ወደ ኋላ ለመመለስ ከግራ ጀምሮ እንዴት ማንሸራተት እንደሚችሉ አውቀዋል።"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"ወደ ኋላ ለመመለስ ከቀኝ ጀምሮ እንዴት ማንሸራተት እንደሚችሉ አውቀዋል። ቀጥለው መተግበሪያዎችን እንዴት መቀየር እንደሚችሉ ይወቁ።"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"ወደኋላ የመመለስ ምልክትን አጠናቀዋል።"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ከማያ ገጹ ታችኛው ክፍል ጋር በጣም ጠጋ ብለው አለማንሸራተትዎን ያረጋግጡ።"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"ከኋላ ስሜት ሰጭነት ደረጃ ለመለወጥ ወደ ቅንብሮች ይመለሱ"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"ወደ ኋላ ለመመለስ ከግራ ጀምረው ያንሸራትቱ"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"ወደነበሩበት የመጨረሻው ማያ ገጽ ለመመለስ ከግራ ጠርዝ ወደ ማያ ገጹ መሃል ያንሸራትቱ።"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"ወደ ኋላ ለመመለስ ከግራ ጀምረው ያንሸራትቱ"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"ወደ ኋላ ለመመለስ ከቀኝ ጀምረው ያንሸራቱ"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"ወደነበሩበት የመጨረሻው ማያ ገጽ ለመመለስ ከግራ ጠርዝ ወደ ማያ ገጹ መሃል ያንሸራትቱ።"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"እንዲሁም ከቀኝ ጠርዝ ወደ ማያ ገጹ መሃል በማንሸራተት ወደ መጨረሻው ማያ ገጽ መመለስ ይችላሉ። አሁኑኑ ይሞክሩት።"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ከማያ ገጹ የታችኛው ጫፍ ወደ ላይ ማንሸራተትዎን ያረጋግጡ።"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"ከመልቀቅዎ በፊት ለአፍታ እንዳልቆሙ ያረጋግጡ።"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"በቀጥታ ወደ ላይ ማንሸራተትዎን ያረጋግጡ።"</string>
diff --git a/quickstep/res/values-ar/strings.xml b/quickstep/res/values-ar/strings.xml
index 002eb7e..1a6597d 100644
--- a/quickstep/res/values-ar/strings.xml
+++ b/quickstep/res/values-ar/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"التطبيق المتوقع: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"تأكّد من التمرير سريعًا من أقصى الحافة اليمنى."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"تأكّد من التمرير سريعًا من الحافة اليمنى إلى وسط الشاشة ثم ارفع إصبعك."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"يمكنك أيضًا الرجوع إلى الشاشة السابقة عن طريق التمرير سريعًا من الحافة اليسرى إلى وسط الشاشة"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"تأكّد من التمرير سريعًا من أقصى الحافة اليسرى."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"تأكّد من التمرير سريعًا من الحافة اليسرى إلى وسط الشاشة ثم ارفع إصبعك."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"لقد أكملت التدريب على إيماءة الرجوع. تعرّف بعد ذلك على كيفية التبديل بين التطبيقات."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"لقد تعلمت كيفية التمرير سريعًا من اليمين للرجوع."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"لقد تعلمت كيفية التمرير سريعًا من اليسار للرجوع. تعرّف بعد ذلك على كيفية التبديل بين التطبيقات."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"لقد أكملت التدريب على إيماءة الرجوع."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"تأكّد من عدم التمرير بالقرب من أسفل الشاشة."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"لتغيير مستوى حساسية إيماءة الرجوع، انتقِل إلى \"الإعدادات\""</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"مرِّر سريعًا من اليسار للرجوع."</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"للرجوع إلى الشاشة السابقة، مرِّر سريعًا من الحافة اليمنى إلى وسط الشاشة"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"مرِّر سريعًا من اليمين للرجوع."</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"مرِّر سريعًا من اليسار للرجوع."</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"للرجوع إلى الشاشة السابقة، مرِّر سريعًا من الحافة اليمنى إلى وسط الشاشة"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"يمكنك أيضًا الرجوع للشاشة السابقة بالتمرير سريعًا من الحافة اليسرى إلى وسط الشاشة. جرِّب ذلك الآن."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"تأكّد من التمرير سريعًا من الحافة السفلى للشاشة إلى أعلاها."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"تأكّد من عدم التوقّف قليلاً قبل رفع إصبعك."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"تأكّد من التمرير إلى الأعلى مباشرةً."</string>
diff --git a/quickstep/res/values-as/strings.xml b/quickstep/res/values-as/strings.xml
index 699565f..bf61006 100644
--- a/quickstep/res/values-as/strings.xml
+++ b/quickstep/res/values-as/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"পূৰ্বানুমান কৰা এপ্: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"আপুনি বাওঁ প্ৰান্তৰৰ একেবাৰে সীমাৰ পৰা ছোৱাইপ কৰাটো নিশ্চিত কৰক।"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"আপুনি স্ক্ৰীনৰ বাওঁ প্ৰান্তৰৰ পৰা সোঁ প্ৰান্তৰৰ ফালে মধ্যভাগলৈকে ছোৱাইপ কৰি এৰি দিয়াটো নিশ্চিত কৰক।"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"আপুনি স্ক্ৰীনখনৰ সোঁ প্ৰান্তৰৰ পৰা মাজলৈ ছোৱাইপ কৰিও অন্তিম স্ক্ৰীনখনলৈ উভতি যাব পাৰে।"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"আপুনি সোঁ প্ৰান্তৰৰ একেবাৰে সীমাৰ পৰা ছোৱাইপ কৰাটো নিশ্চিত কৰক।"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"আপুনি স্ক্ৰীনৰ সোঁ প্ৰান্তৰৰ পৰা মধ্যভাগলৈকে ছোৱাইপ কৰি এৰি দিয়াটো নিশ্চিত কৰক।"</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"আপুনি উভতি যাওক নিৰ্দেশটো সম্পূৰ্ণ কৰিলে। ইয়াৰ পাছত, এপ্ কেনেকৈ সলনি কৰিব সেয়া জানক।"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"বাওঁফালৰ পৰা ছোৱাইপ কৰি কেনেকৈ উভতি যাব লাগে, সেইটো আপুনি জানিলে।"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"সোঁফালৰ পৰা ছোৱাইপ কৰি কেনেকৈ উভতি যাব লাগে, সেইটো আপুনি জানিলে। ইয়াৰ পাছত, এপ্ কেনেকৈ সলনি কৰিব সেয়া জানক।"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"আপুনি উভতি যাওক নিৰ্দেশটো সম্পূৰ্ণ কৰিলে।"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"আপুনি স্ক্ৰীনৰ তলৰ অংশৰ বেছি ওচৰলৈ ছোৱাইপ নকৰাটো নিশ্চিত কৰক।"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"উভতি যোৱাৰ নির্দেশটোৰ সংবেদনশীলতা সলনি কৰিবলৈ ছেটিঙলৈ যাওক"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"উভতি যাবলৈ বাওঁ প্ৰান্তৰৰ পৰা ছোৱাইপ কৰক"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"আপুনি পূৰ্বে থকা অন্তিম স্ক্ৰীনখনলৈ উভতি যাবলৈ স্ক্ৰীনখনৰ বাওঁ প্ৰান্তৰৰ পৰা মাজলৈ ছোৱাইপ কৰক।"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"উভতি যাবলৈ বাওঁফালৰ পৰা ছোৱাইপ কৰক"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"উভতি যাবলৈ সোঁফালৰ পৰা ছোৱাইপ কৰক"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"আপুনি পূৰ্বে থকা অন্তিম স্ক্ৰীনখনলৈ উভতি যাবলৈ স্ক্ৰীনখনৰ বাওঁ প্ৰান্তৰৰ পৰা মাজলৈ ছোৱাইপ কৰক।"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"আপুনি স্ক্ৰীনখনৰ সোঁ প্ৰান্তৰৰ পৰা মাজলৈ ছোৱাইপ কৰিও অন্তিম স্ক্ৰীনখনলৈ উভতি যাব পাৰে। এতিয়াই চেষ্টা কৰি চাওক।"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"আপুনি স্ক্ৰীনৰ তলৰ প্ৰান্তৰ পৰা ওপৰলৈ ছোৱাইপ কৰাটো নিশ্চিত কৰক।"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"আপুনি এৰি দিয়াৰ পূৰ্বে অলপো নোৰোৱাটো নিশ্চিত কৰক।"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"আপুনি পোনকৈ ওপৰলৈ ছোৱাইপ কৰাটো নিশ্চিত কৰক।"</string>
diff --git a/quickstep/res/values-az/strings.xml b/quickstep/res/values-az/strings.xml
index 2d03b4e..dceab09 100644
--- a/quickstep/res/values-az/strings.xml
+++ b/quickstep/res/values-az/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Proqnozlaşdırılan tətbiq: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Ən sol tərəfdən sürüşdürdüyünüzə əmin olun."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Ekranın sol kənarından ortasına sürüşdürüb buraxın."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Həmçinin ekranın sağ kənarından ortasına sürüşdürərək son ekrana qayıda bilərsiniz."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Ən sağ tərəfdən sürüşdürdüyünüzə əmin olun."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Ekranın sağ kənarından ortasına sürüşdürüb buraxın."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Geri getmə jestini tamamladınız. Sonra tətbiqləri keçirməyi öyrənin."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Geri qayıtmaq üçün soldan sürüşdürmək qaydasını öyrəndiniz."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Geri qayıtmaq üçün sağdan sürüşdürmək qaydasını öyrəndiniz. Sonra tətbiqləri keçirməyi öyrənin."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Geri getmə jestini tamamladınız."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Ekranın altına çox yaxın sürüşdürmədiyinizə əmin olun."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Geri qayıtma jestinin həssaslığını dəyişmək üçün Ayarlara keçin"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Geri qayıtmaq üçün soldan sürüşdürün"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Son ekrana qayıtmaq üçün ekranın sol kənarından ortasına doğru sürüşdürün."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Geri qayıtmaq üçün soldan sürüşdürün"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Geri qayıtmaq üçün sağdan sürüşdürün"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Son ekrana qayıtmaq üçün ekranın sol kənarından ortasına doğru sürüşdürün."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Həmçinin ekranın sağ kənarından ortasına sürüşdürərək son ekrana qayıda bilərsiniz. İndi sınayın."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Ekranın aşağı kənarından yuxarı sürüşdürdüyünüzə əmin olun."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Buraxmazdan əvvəl durdurmadığınıza əmin olun."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Birbaşa yuxarı sürüşdürdüyünüzə əmin olun."</string>
diff --git a/quickstep/res/values-b+sr+Latn/strings.xml b/quickstep/res/values-b+sr+Latn/strings.xml
index e9c52c2..d37a640 100644
--- a/quickstep/res/values-b+sr+Latn/strings.xml
+++ b/quickstep/res/values-b+sr+Latn/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predviđamo aplikaciju: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Obavezno prevucite od same leve ivice."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Obavezno prevucite od leve ivice do sredine ekrana i otpustite."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Vratite se na poslednji ekran prevlačenjem zdesna ka sredini."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Obavezno prevucite od same desne ivice."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Obavezno prevucite od desne ivice do sredine ekrana i otpustite."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Dovršili ste pokret za povratak. Sada saznajte kako da promenite aplikacije."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Naučili ste kako da prevlačite sleva da biste se vratili."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Naučili ste kako da prevlačite zdesna da biste se vratili. Sada naučite da menjate aplikacije."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Dovršili ste pokret za povratak."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Nikako ne prevlačite previše blizu dna ekrana."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Osetljivost pok. za nazad možete da promenite u Podešavanjima"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Prevucite sa leve strane da biste se vratili"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Da biste se vratili na poslednji ekran, prevucite od leve ivice ka sredini ekrana."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Prevucite sleva da biste se vratili"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Prevucite zdesna da biste se vratili"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Da biste se vratili na poslednji ekran, prevucite od leve ivice ka sredini ekrana."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Možete da se vratite na poslednji ekran i prevlačenjem od desne ivice ka sredini ekrana. Isprobajte."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Obavezno prevucite nagore od donje ivice ekrana."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Nikako ne stajte pre otpuštanja."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Obavezno prevucite pravo nagore."</string>
diff --git a/quickstep/res/values-be/strings.xml b/quickstep/res/values-be/strings.xml
index d0774cb..e0ae63b 100644
--- a/quickstep/res/values-be/strings.xml
+++ b/quickstep/res/values-be/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Праграма з падказкі: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Пераканайцеся, што вы не праводзіце пальцам занадта далёка ад левага вугла экрана."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Пераканайцеся, што праводзіце пальцам з левага вугла ў цэнтр экрана, а потым адпускаеце."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Каб вярнуцца, правядзіце ад правага краю ў цэнтр экрана."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Пераканайцеся, што вы не праводзіце пальцам занадта далёка ад правага вугла экрана."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Пераканайцеся, што праводзіце пальцам з правага вугла ў цэнтр экрана, а потым адпускаеце."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Вы навучыліся рабіць жэст вяртання. А зараз даведайцеся, як пераключацца паміж праграмамі."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Вы даведаліся, як праводзіць пальцам злева ўправа для вяртання."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Вы даведаліся, як гартаць справа для вяртання. Цяпер даведайцеся, як пераключацца паміж праграмамі."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Вы навучыліся рабіць жэст вяртання."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Пераканайцеся, што вы не праводзіце пальцам занадта блізка да ніжняга краю экрана."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Каб змяніць адчувальнасць жэста вяртання, адкрыйце налады"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Каб вярнуцца назад, правядзіце пальцам ад левага краю"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Каб вярнуцца на папярэдні экран, правядзіце пальцам ад левага краю ў цэнтр экрана."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Каб вярнуцца назад, правядзіце пальцам ад левага краю"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Каб вярнуцца назад, правядзіце пальцам ад правага краю"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Каб вярнуцца на папярэдні экран, правядзіце пальцам ад левага краю ў цэнтр экрана."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Для вяртання на папярэдні экран таксама можна правесці ад правага краю ў цэнтр экрана. Паспрабуйце."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Пераканайцеся, што праводзіце пальцам па экране знізу ўверх."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Пераканайцеся, што не затрымліваецеся перад адпусканнем."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Пераканайцеся, што праводзіце пальцам вертыкальна."</string>
diff --git a/quickstep/res/values-bg/strings.xml b/quickstep/res/values-bg/strings.xml
index d9d5b4a..47317a7 100644
--- a/quickstep/res/values-bg/strings.xml
+++ b/quickstep/res/values-bg/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Предвидено приложение: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Трябва да прекарате пръст от най-лявата част на екрана."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Трябва да прекарате пръст от левия край на екрана до средата, след което да вдигнете пръста си."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Можете да се върнете на последния екран, като прекарате пръст от десния край на екрана до средата."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Трябва да прекарате пръст от най-дясната част на екрана."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Трябва да прекарате пръст от десния край на екрана до средата, след което да вдигнете пръста си."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Изпълнихте жеста за връщане назад. В следващия урок ще научите как се превключва между приложения."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Научихте как да се връщате назад с прекарване на пръст от левия край на екрана."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Научихте жеста за връщане с плъзгане от дясно. Сега научете как се превключва между приложения."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Изпълнихте жеста за връщане назад."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Не прекарвайте пръст твърде близо до долната част на екрана."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Променете чувств. на жеста за връщане назад от настройките"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Прекарайте пръст от ляво, за да се върнете назад"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"За да се върнете на последния активен екран, прекарайте пръст от левия край на екрана до средата."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Връщане назад с прекарване на пръст от левия край"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Връщане назад с прекарване на пръст от десния край"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"За да се върнете на последния активен екран, прекарайте пръст от левия край на екрана до средата."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Прекарайте пръст от десния край до средата за връщане към последния екран. Изпробвайте сега."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Трябва да прекарате пръст нагоре от долния край на екрана."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Не задържайте, преди да вдигнете пръста си."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Трябва да прекарате пръст право нагоре."</string>
diff --git a/quickstep/res/values-bn/strings.xml b/quickstep/res/values-bn/strings.xml
index dde010f..d41edcc 100644
--- a/quickstep/res/values-bn/strings.xml
+++ b/quickstep/res/values-bn/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"আপনার প্রয়োজন হতে পারে এমন অ্যাপ: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"একদম বাঁ প্রান্ত থেকে সোয়াইপ করছেন কিনা ভাল করে দেখে নিন।"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"আপনি বাঁ প্রান্ত থেকে স্ক্রিনের মাঝখান পর্যন্ত সোয়াইপ করছেন ও পরে আঙুল তুলে নিন। এটির খেয়াল রাখুন।"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"ডান প্রান্ত থেকে স্ক্রিনের মাঝখান পর্যন্ত সোয়াইপ করে আপনি আগের ক্রিনেও ফিরে যেতে পারেন।"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"একদম ডান প্রান্ত থেকে সোয়াইপ করছেন কিনা ভাল করে দেখে নিন।"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"আপনি ডান প্রান্ত থেকে স্ক্রিনের মাঝখান পর্যন্ত সোয়াইপ করছেন ও পরে আঙুল তুলে নিন। এটি খেয়াল রাখুন।"</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"আপনি ফিরে যাওয়ার জেসচার সম্পর্কে জেনেছেন। এরপর, একটি অ্যাপ থেকে অন্য অ্যাপে কীভাবে যাবেন জেনে নিন।"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"ফিরে যেতে, কীভাবে বাঁদিক থেকে সোয়াইপ করতে হয় তা আপনি শিখেছেন।"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"ফিরে যেতে, কীভাবে ডান দিক থেকে সোয়াইপ করতে হয় তা আপনি শিখেছেন। এরপর, একটি অ্যাপ থেকে অন্য অ্যাপে কীভাবে যাবেন জেনে নিন।"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"আপনি ফিরে যাওয়ার জেসচার সম্পর্কে জেনেছেন।"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"স্ক্রিনের নিচের প্রান্তের খুব কাছে পর্যন্ত যাতে সোয়াইপ না করেন সেটি ভাল করে দেখে নিন।"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"ফিরে যাওয়ার জেসচারের সেন্সিটিভিটি পরিবর্তন করতে, সেটিংসে যান"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"ফিরে যেতে আপনার স্ক্রিনের বাম প্রান্ত থেকে সোয়াইপ করুন"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"আপনার থাকা আগের স্ক্রিনে ফিরে যেতে, বাঁ প্রান্ত থেকে স্ক্রিনের মাঝখান পর্যন্ত সোয়াইপ করুন।"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"ফিরে যেতে স্ক্রিনের বাঁদিক থেকে সোয়াইপ করুন"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"ফিরে যেতে স্ক্রিনের ডানদিক থেকে সোয়াইপ করুন"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"শেষের যে স্ক্রিনে ছিলেন সেখানে ফিরে যেতে, বাঁদিকের প্রান্ত থেকে স্ক্রিনের মাঝখান পর্যন্ত সোয়াইপ করুন।"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"ডানদিকের প্রান্ত থেকে মাঝখান অবধি সোয়াইপ করেও, শেষের যে স্ক্রিনে ছিলেন সেখানে ফিরে যেতে পারেন। এখনই করে দেখুন।"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"স্ক্রিনের নিচের প্রান্ত থেকে আপনি সোয়াইপ করেছেন কিনা ভাল করে দেখে নিন।"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"আঙুল তুলে নেওয়ার আগে আপনি যাতে পজ না করেন সেটি ভাল করে দেখে নিন।"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"আপনি উপরের দিকে সোজাসুজি সোয়াইপ করেছেন কিনা ভাল করে দেখে নিন।"</string>
diff --git a/quickstep/res/values-bs/strings.xml b/quickstep/res/values-bs/strings.xml
index 07268cc..4ec2e06 100644
--- a/quickstep/res/values-bs/strings.xml
+++ b/quickstep/res/values-bs/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predviđena aplikacija: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Obratite pažnju da prevučete s krajnjeg lijevog ruba."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Obratite pažnju da prevučete s lijevog ruba prema sredini ekrana, a zatim pustite."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Na posljednji ekran se možete vratiti i prevlačenjem od desnog ruba do sredine ekrana."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Obratite pažnju da prevučete s krajnjeg desnog ruba."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Obratite pažnju da prevučete s desnog ruba prema sredini ekrana, a zatim pustite."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Završili ste pokret za vraćanje. Sljedeće naučite kako prebacivati između aplikacija."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Naučili ste kako prevući slijeva nadesno da se vratite."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Naučili ste kako prevući zdesna da se vratite. Sljedeće naučite kako prebacivati između aplikacija."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Završili ste pokret za vraćanje."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Obratite pažnju da ne prevučete preblizu donjem dijelu ekrana."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Promijenite osjetljivost pokreta za povratak u Postavkama"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Prevucite slijeva nadesno da se vratite"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Da se vratite na posljednji ekran na kojem ste bili, prevucite od lijevog ruba do sredine ekrana."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Prevucite slijeva nadesno da se vratite"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Prevucite prstom zdesna ulijevo da se vratite"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Da se vratite na posljednji ekran na kojem ste bili, prevucite od lijevog ruba do sredine ekrana."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Na posljednji ekran se možete vratiti i prevlačenjem od desnog ruba do sredine ekrana. Isprobajte."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Obratite pažnju da prevučete prema gore s donjeg ruba ekrana."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Obratite pažnju da ne zastanete prije puštanja."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Obratite pažnju da prevučete ravno prema gore."</string>
diff --git a/quickstep/res/values-ca/strings.xml b/quickstep/res/values-ca/strings.xml
index 47a4916..f93051a 100644
--- a/quickstep/res/values-ca/strings.xml
+++ b/quickstep/res/values-ca/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predicció d\'aplicació: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Assegura\'t de lliscar des de l\'extrem esquerre de la pantalla."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Assegura\'t de lliscar des de la vora esquerra cap al centre de la pantalla i deixa anar."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"També pots tornar a la darrera pantalla lliscant des de l\'extrem dret cap al centre."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Assegura\'t de lliscar des de l\'extrem dret de la pantalla."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Assegura\'t de lliscar des de la vora dreta cap al centre de la pantalla i deixa anar."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Has completat el gest per tornar enrere. Ara, descobreix com pots canviar d\'aplicació."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Has après com pots lliscar des de l\'esquerra per tornar enrere."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Has après com pots lliscar des de la dreta per tornar enrere. Ara, descobreix com pots canviar d\'app."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Has completat el gest per tornar enrere."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Assegura\'t de no lliscar massa a prop de la part inferior de la pantalla."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Per canviar la sensibilitat del gest, ves a Configuració"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Llisca des de l\'esquerra per tornar enrere"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Per tornar a la darrera pantalla, llisca des de l\'extrem esquerre cap al centre de la pantalla."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Llisca des de l\'esquerra per tornar enrere"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Llisca des de la dreta per tornar enrere"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Per tornar a la darrera pantalla, llisca des de l\'extrem esquerre cap al centre de la pantalla."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"També pots tornar a la darrera pantalla lliscant des de l\'extrem dret cap al centre. Prova-ho ara."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Assegura\'t de lliscar des de la vora inferior de la pantalla."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Assegura\'t de no aturar-te abans de deixar anar."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Assegura\'t de lliscar directament cap amunt."</string>
diff --git a/quickstep/res/values-cs/strings.xml b/quickstep/res/values-cs/strings.xml
index de78092..b8d24cf 100644
--- a/quickstep/res/values-cs/strings.xml
+++ b/quickstep/res/values-cs/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Předpokládaná aplikace: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Přejeďte prstem z úplného levého okraje obrazovky."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Přejeďte prstem z levého okraje doprostřed obrazovky a zdvihněte prst."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Přejetím prstem z pravého okraje doprostřed obrazovky se také můžete vrátit zpět na poslední obrazovku."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Přejeďte prstem z úplného pravého okraje obrazovky."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Přejeďte prstem z pravého okraje doprostřed obrazovky a zdvihněte prst."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Dokončili jste gesto pro přechod zpět. Teď se naučíte přepínat aplikace."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Naučili jste se, jak se vrátit zpět přejetím prstem zleva."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Naučili jste se, jak se vrátit zpět přejetím prstem zprava. Teď se naučíte přepínat aplikace."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Dokončili jste gesto pro přechod zpět."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Dejte pozor, abyste prstem nepřejížděli moc blízko ke spodnímu okraji obrazovky."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Citlivost gesta pro přechod zpět můžete změnit v Nastavení"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Pokud se chcete vrátit, přejeďte prstem zleva"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Na poslední obrazovku se můžete vrátit přejetím prstem z levého okraje doprostřed obrazovky."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Pokud se chcete vrátit, přejeďte prstem zleva"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Přejetím prstem zprava se vrátíte zpět"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Na poslední obrazovku se můžete vrátit přejetím prstem z levého okraje doprostřed obrazovky."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Přejetím prstem z pravého okraje doprostřed obrazovky se také můžete vrátit zpět na poslední obrazovku. Zkuste to."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Přejeďte prstem nahoru z dolního okraje obrazovky."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Před zdvihnutím prstu nedělejte pauzu."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Přejeďte prstem přímo nahoru."</string>
diff --git a/quickstep/res/values-da/strings.xml b/quickstep/res/values-da/strings.xml
index aea76a2..9c9d624 100644
--- a/quickstep/res/values-da/strings.xml
+++ b/quickstep/res/values-da/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"App, du forventes at skulle bruge: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Stryg fra kanten yderst til venstre."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Stryg fra venstre kant mod midten af skærmen, og løft fingeren."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Du kan også gå tilbage til den seneste skærm ved at stryge mod midten af skærmen fra højre kant."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Stryg fra kanten yderst til højre."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Stryg fra højre kant mod midten af skærmen, og løft fingeren."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Du har fuldført bevægelsen for Gå tilbage. Som det næste kan du se, hvordan du skifter app."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Du har lært, hvordan du stryger fra venstre for at gå tilbage."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Du har lært, hvordan du stryger fra højre for at gå tilbage. Nu skal du se, hvordan du skifter app."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Du har fuldført bevægelsen for Gå tilbage."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Undgå at stryge for tæt på bunden af skærmen."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Juster følsomheden for bevægelsen Gå tilbage i Indstillinger"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Stryg fra venstre for at gå tilbage"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Stryg mod midten af skærmen fra venstre kant for at gå tilbage til den seneste skærm, du var på."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Stryg fra venstre for at gå tilbage"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Stryg fra højre for at gå tilbage"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Stryg mod midten af skærmen fra venstre kant for at gå tilbage til den seneste skærm, du var på."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Du kan også gå tilbage til den seneste skærm ved at stryge mod midten af skærmen fra højre kant. Prøv det nu."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Stryg opad fra bunden af skærmen."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Undlad at holde fingeren stille, indtil du løfter fingeren."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Stryg lige opad."</string>
diff --git a/quickstep/res/values-de/strings.xml b/quickstep/res/values-de/strings.xml
index 6ea539c..1e0cd3d 100644
--- a/quickstep/res/values-de/strings.xml
+++ b/quickstep/res/values-de/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Vorgeschlagene App: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Wische vom äußersten linken Bildschirmrand."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Wische vom linken Bildschirmrand zur Bildschirmmitte und lass los."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Du kannst auch zum letzten Bildschirm zurückgehen, indem du vom rechten Bildschirmrand zur Mitte wischst."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Wische vom äußersten rechten Bildschirmrand."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Wische vom rechten Bildschirmrand zur Bildschirmmitte und lass los."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Du hast die „Zurück“-Touch-Geste abgeschlossen. Gleich lernst du, wie man zwischen Apps wechselt."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Du kannst jetzt vom linken Bildschirmrand aus wischen, um zurückzugehen."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Du kannst jetzt vom rechten Bildschirmrand aus wischen, um zurückzugehen. Gleich erfährst du, wie man zwischen Apps wechselt."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Du hast die „Zurück“-Touch-Geste abgeschlossen."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Wische nicht zu nah am unteren Bildschirmrand."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Du kannst die Empfindlichkeit von „Zurück“ in den Einstellungen ändern"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Von links nach rechts wischen, um zurückzugehen"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Wenn du zum letzten Bildschirm zurückgehen möchtest, wische vom linken Bildschirmrand zur Mitte."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Wische vom linken Bildschirmrand aus, um zurückzugehen"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Wische vom rechten Bildschirmrand aus, um zurückzugehen"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Wenn du zum letzten Bildschirm zurückgehen möchtest, wische vom linken Bildschirmrand zur Mitte."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Du kannst vom rechten Bildschirmrand zur Mitte wischen, um zum letzten Bildschirm zurückzugehen. Probier es aus."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Wische vom unteren Bildschirmrand nach oben."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Achte darauf, nicht innezuhalten, bevor du loslässt."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Wische gerade nach oben."</string>
diff --git a/quickstep/res/values-el/strings.xml b/quickstep/res/values-el/strings.xml
index 3908929..67209b6 100644
--- a/quickstep/res/values-el/strings.xml
+++ b/quickstep/res/values-el/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Εφαρμογή από πρόβλεψη: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Φροντίστε να σύρετε από το άκρο της αριστερής πλευράς."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Φροντίστε να σύρετε από το αριστερό άκρο προς το μέσο της οθόνης και απομακρύνετε το δάχτυλό σας."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Μπορείτε να επιστρέψετε στην τελευταία οθόνη με σάρωση από το δεξί άκρο προς το κέντρο της οθόνης."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Φροντίστε να σύρετε από το άκρο της δεξιάς πλευράς."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Φροντίστε να σύρετε από το δεξί άκρο προς το μέσο της οθόνης και απομακρύνετε το δάχτυλό σας."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Ολοκληρώσατε την κίνηση επιστροφής. Στη συνέχεια, μάθετε πώς να κάνετε εναλλαγή εφαρμογών."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Μάθατε πώς να σύρετε από τα αριστερά για επιστροφή."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Μάθατε πώς να σύρετε από τα δεξιά για επιστροφή. Στη συνέχεια, μάθετε πώς να κάνετε εναλλαγή εφαρμ."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Ολοκληρώσατε την κίνηση επιστροφής."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Φροντίστε να μην σύρετε υπερβολικά κοντά στο κάτω μέρος της οθόνης."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Μεταβείτε στις Ρυθμίσεις για αλλαγή ευαισθ. κίνησης επιστρ."</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Για να επιστρέψετε, σύρετε από τα αριστερά"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Για να επιστρέψετε στην τελευταία οθόνη, σύρετε από το αριστερό άκρο προς το κέντρο της οθόνης."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Για να επιστρέψετε, σύρετε από τα αριστερά"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Για να επιστρέψετε, σύρετε από τα δεξιά"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Για να επιστρέψετε στην τελευταία οθόνη, σύρετε από το αριστερό άκρο προς το κέντρο της οθόνης."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Επιστρέψτε στην τελευταία οθόνη σύροντας από τα δεξιά προς το κέντρο της οθόνης. Δοκιμάστε το τώρα."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Φροντίστε να σύρετε προς τα επάνω από το κάτω άκρο της οθόνης."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Φροντίστε να μην κάνετε παύση προτού απομακρύνετε τα δάχτυλά σας."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Φροντίστε να σύρετε απευθείας προς τα επάνω."</string>
diff --git a/quickstep/res/values-en-rAU/strings.xml b/quickstep/res/values-en-rAU/strings.xml
index 2bd4e21..86ae07f 100644
--- a/quickstep/res/values-en-rAU/strings.xml
+++ b/quickstep/res/values-en-rAU/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predicted app: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Make sure that you swipe from the far-left edge."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Make sure that you swipe from the left edge to the middle of the screen and let go."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"You can also go back to the last screen by swiping from the right edge to the middle of the screen."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Make sure that you swipe from the far-right edge."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Make sure that you swipe from the right edge to the middle of the screen and let go."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"You completed the go back gesture. Next, learn how to switch apps."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"You learned how to swipe from the left to go back."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"You learned how to swipe from the right to go back. Next, learn how to switch apps."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"You completed the go back gesture."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Make sure that you don\'t swipe too close to the bottom of the screen."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"To change sensitivity of the back gesture, go to Settings"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Swipe from the left to go back"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Swipe from the left to go back"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Swipe from the right to go back"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"You can also go back to the last screen by swiping from the right edge to the middle of the screen. Try it now."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Make sure that you swipe up from the bottom edge of the screen."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Make sure that you don\'t pause before letting go."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Make sure that you swipe straight up."</string>
diff --git a/quickstep/res/values-en-rCA/strings.xml b/quickstep/res/values-en-rCA/strings.xml
index 2bd4e21..86ae07f 100644
--- a/quickstep/res/values-en-rCA/strings.xml
+++ b/quickstep/res/values-en-rCA/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predicted app: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Make sure that you swipe from the far-left edge."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Make sure that you swipe from the left edge to the middle of the screen and let go."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"You can also go back to the last screen by swiping from the right edge to the middle of the screen."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Make sure that you swipe from the far-right edge."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Make sure that you swipe from the right edge to the middle of the screen and let go."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"You completed the go back gesture. Next, learn how to switch apps."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"You learned how to swipe from the left to go back."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"You learned how to swipe from the right to go back. Next, learn how to switch apps."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"You completed the go back gesture."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Make sure that you don\'t swipe too close to the bottom of the screen."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"To change sensitivity of the back gesture, go to Settings"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Swipe from the left to go back"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Swipe from the left to go back"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Swipe from the right to go back"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"You can also go back to the last screen by swiping from the right edge to the middle of the screen. Try it now."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Make sure that you swipe up from the bottom edge of the screen."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Make sure that you don\'t pause before letting go."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Make sure that you swipe straight up."</string>
diff --git a/quickstep/res/values-en-rGB/strings.xml b/quickstep/res/values-en-rGB/strings.xml
index 2bd4e21..86ae07f 100644
--- a/quickstep/res/values-en-rGB/strings.xml
+++ b/quickstep/res/values-en-rGB/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predicted app: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Make sure that you swipe from the far-left edge."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Make sure that you swipe from the left edge to the middle of the screen and let go."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"You can also go back to the last screen by swiping from the right edge to the middle of the screen."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Make sure that you swipe from the far-right edge."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Make sure that you swipe from the right edge to the middle of the screen and let go."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"You completed the go back gesture. Next, learn how to switch apps."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"You learned how to swipe from the left to go back."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"You learned how to swipe from the right to go back. Next, learn how to switch apps."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"You completed the go back gesture."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Make sure that you don\'t swipe too close to the bottom of the screen."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"To change sensitivity of the back gesture, go to Settings"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Swipe from the left to go back"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Swipe from the left to go back"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Swipe from the right to go back"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"You can also go back to the last screen by swiping from the right edge to the middle of the screen. Try it now."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Make sure that you swipe up from the bottom edge of the screen."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Make sure that you don\'t pause before letting go."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Make sure that you swipe straight up."</string>
diff --git a/quickstep/res/values-en-rIN/strings.xml b/quickstep/res/values-en-rIN/strings.xml
index 2bd4e21..86ae07f 100644
--- a/quickstep/res/values-en-rIN/strings.xml
+++ b/quickstep/res/values-en-rIN/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predicted app: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Make sure that you swipe from the far-left edge."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Make sure that you swipe from the left edge to the middle of the screen and let go."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"You can also go back to the last screen by swiping from the right edge to the middle of the screen."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Make sure that you swipe from the far-right edge."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Make sure that you swipe from the right edge to the middle of the screen and let go."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"You completed the go back gesture. Next, learn how to switch apps."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"You learned how to swipe from the left to go back."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"You learned how to swipe from the right to go back. Next, learn how to switch apps."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"You completed the go back gesture."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Make sure that you don\'t swipe too close to the bottom of the screen."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"To change sensitivity of the back gesture, go to Settings"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Swipe from the left to go back"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Swipe from the left to go back"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Swipe from the right to go back"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"You can also go back to the last screen by swiping from the right edge to the middle of the screen. Try it now."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Make sure that you swipe up from the bottom edge of the screen."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Make sure that you don\'t pause before letting go."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Make sure that you swipe straight up."</string>
diff --git a/quickstep/res/values-en-rXC/strings.xml b/quickstep/res/values-en-rXC/strings.xml
index 8c91887..f7663dc 100644
--- a/quickstep/res/values-en-rXC/strings.xml
+++ b/quickstep/res/values-en-rXC/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predicted app: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Make sure you swipe from the far-left edge."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Make sure you swipe from the left edge to the middle of the screen and let go."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"You can also go back to the last screen by swiping from the right edge to the middle of the screen."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Make sure you swipe from the far-right edge."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Make sure you swipe from the right edge to the middle of the screen and let go."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"You completed the go back gesture. Next up, learn how to switch apps."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"You learned how to swipe from the left to go back."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"You learned how to swipe from the right to go back. Next up, learn how to switch apps."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"You completed the go back gesture."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Make sure you don\'t swipe too close to the bottom of the screen."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"To change the sensitivity of the back gesture, go to Settings"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Swipe from the left to go back"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Swipe from the left to go back"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Swipe from the right to go back"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"To go back to the last screen you were on, swipe from the left edge to the middle of the screen."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"You can also go back to the last screen by swiping from the right edge to the middle of the screen. Try it now."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Make sure you swipe up from the bottom edge of the screen."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Make sure you don\'t pause before letting go."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Make sure you swipe straight up."</string>
diff --git a/quickstep/res/values-es-rUS/strings.xml b/quickstep/res/values-es-rUS/strings.xml
index 4edbfeb..34d43d6 100644
--- a/quickstep/res/values-es-rUS/strings.xml
+++ b/quickstep/res/values-es-rUS/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predicción de app: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Asegúrate de deslizar el dedo bien desde el borde izquierdo."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Asegúrate de deslizar el dedo del borde izquierdo hacia el centro de la pantalla y, luego, suéltalo."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Desliza de derecha al centro para volver a última pantalla."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Asegúrate de deslizar el dedo bien desde el borde derecho."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Asegúrate de deslizar el dedo del borde derecho hacia el centro de la pantalla y, luego, suéltalo."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Completaste el gesto \"Atrás\". A continuación, obtén información para cambiar de app."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Aprendiste cómo deslizar el dedo desde la izquierda para volver."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Aprendiste a deslizar el dedo desde la derecha para volver. Ahora, descubre cómo cambiar de app."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Completaste el gesto \"Atrás\"."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Asegúrate de no hacerlo muy cerca de la parte inferior de la pantalla."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Cambia sensibilidad de gesto \"Atrás\" en Configuración"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Para volver, desliza el dedo desde la izquierda"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Para volver a la última pantalla, desliza el dedo del borde izquierdo al centro de la pantalla."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Para volver, desliza el dedo desde la izquierda"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Para volver, desliza el dedo desde la derecha"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Para volver a la última pantalla, desliza el dedo del borde izquierdo al centro de la pantalla."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Desliza de derecha al centro para volver a última pantalla. Pruébalo ahora."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Asegúrate de deslizar el dedo hacia arriba desde la borde inferior de la pantalla."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Asegúrate de no detenerte antes de soltarlo."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Asegúrate de deslizar el dedo derecho hacia arriba."</string>
diff --git a/quickstep/res/values-es/strings.xml b/quickstep/res/values-es/strings.xml
index 5abec85..c2cb08e 100644
--- a/quickstep/res/values-es/strings.xml
+++ b/quickstep/res/values-es/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Aplicación sugerida: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Desliza el dedo desde el extremo izquierdo."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Desliza el dedo desde el borde izquierdo de la pantalla hasta el centro y levántalo."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"También puedes deslizar el dedo del borde derecho al centro para volver a la pantalla anterior."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Desliza el dedo desde el extremo derecho."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Desliza el dedo desde el borde derecho de la pantalla hasta el centro y levántalo."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Has completado el gesto para volver. Ahora, descubre cómo cambiar de aplicación."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Ya sabes deslizar el dedo desde la izquierda para ir atrás."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Ya sabes deslizar el dedo desde la derecha para ir atrás. Descubre ahora cómo cambiar de aplicación."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Has completado el gesto para volver."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"No deslices el dedo demasiado cerca de la parte inferior de la pantalla."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Para cambiar la sensibilidad del gesto, ve a Ajustes"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Desliza el dedo desde la izquierda para volver"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Si quieres volver a la pantalla anterior, desliza el dedo del borde izquierdo al centro."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Desliza el dedo desde la izquierda para ir atrás"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Desliza el dedo desde la derecha para ir atrás"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Para volver a la pantalla anterior, desliza el dedo desde el borde izquierdo al centro."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"También puedes ir atrás deslizando el dedo del borde derecho al centro. Pruébalo ahora."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Desliza el dedo hacia arriba desde el borde inferior de la pantalla."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"No hagas ninguna pausa antes de levantar el dedo."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Desliza el dedo directamente hacia arriba."</string>
diff --git a/quickstep/res/values-et/strings.xml b/quickstep/res/values-et/strings.xml
index 08e18c9..88f11cd 100644
--- a/quickstep/res/values-et/strings.xml
+++ b/quickstep/res/values-et/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Ennustatud rakendus: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Pühkige kindlasti vasakpoolsest servast."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Pühkige ekraanikuva vasakust servast keskele ja eemaldage sõrm."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Eelmisele ekraanikuvale naasmiseks võite ka ekraanikuva paremast servast keskele pühkida."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Pühkige kindlasti parempoolsest servast."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Pühkige ekraanikuva paremast servast keskele ja eemaldage sõrm."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Tegite tagasiliikumise liigutuse. Järgmisena vaadake, kuidas rakenduste vahel vahetada."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Õppisite, kuidas tagasiliikumiseks vasakult pühkida."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Õppisite, kuidas tagasiliikumiseks paremalt pühkida. Nüüd vaadake, kuidas rakenduste vahel vahetada."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Tegite tagasiliikumise liigutuse."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Veenduge, et te ei pühiks liiga ekraanikuva allosa lähedalt."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Tagasiliigutuse tundlikkuse muutmiseks avage menüü Seaded"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Tagasiliikumiseks pühkige vasakult paremale"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Eelmisele ekraanikuvale naasmiseks pühkige vasakust servast ekraanikuva keskele."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Tagasiliikumiseks pühkige vasakult paremale"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Tagasiliikumiseks pühkige paremalt vasakule"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Eelmisele ekraanikuvale naasmiseks pühkige vasakust servast ekraanikuva keskele."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Eelmisele ekraanikuvale naasmiseks võite ka kuva paremast servast keskele pühkida. Proovige kohe."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Pühkige kindlasti ekraanikuva alumisest servast üles."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Veenduge, et te enne vabastamist liigutust ei peataks."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Pühkige kindlasti otse üles."</string>
diff --git a/quickstep/res/values-eu/strings.xml b/quickstep/res/values-eu/strings.xml
index aca7132..19ad2f0 100644
--- a/quickstep/res/values-eu/strings.xml
+++ b/quickstep/res/values-eu/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Iragarritako aplikazioa: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Ziurtatu hatza ezkerreko ertzetik pasatzen duzula."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Ziurtatu hatza pantailaren ezkerreko ertzetik erdialdera pasatzen eta askatzen duzula."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Aurreko pantailara itzultzeko beste modu bat: pasatu hatza pantailaren eskuineko ertzetik erdialdera."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Ziurtatu hatza eskuineko ertzetik pasatzen duzula."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Ziurtatu hatza pantailaren eskuineko ertzetik erdialdera pasatzen eta askatzen duzula."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Ikasi duzu atzera egiteko keinua. Jarraian, ikasi aplikazioa aldatzen."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Hatza ezkerretik pasatuta atzera egiten ikasi duzu."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Hatza eskuinetik pasatuta atzera egiten ikasi duzu. Jarraian, ikasi aplikazioa aldatzen."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Ikasi duzu atzera egiteko keinua."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Ziurtatu hatza ez duzula pantailaren behealdetik gertuegi pasatzen."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Keinuaren sentikortasuna aldatzeko, joan ezarpenetara"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Atzera egiteko, pasatu hatza ezkerretik"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Aurreko pantailara itzultzeko, pasatu hatza pantailaren ezkerreko ertzetik erdialdera."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Atzera egiteko, pasatu hatza ezkerretik"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Atzera egiteko, pasatu hatza eskuinetik"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Aurreko pantailara itzultzeko, pasatu hatza pantailaren ezkerreko ertzetik erdialdera"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Aurreko pantailara itzultzeko beste modu bat: pasatu hatza pantailaren eskuineko ertzetik erdialdera. Proba ezazu."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Ziurtatu hatza pantailaren beheko ertzetik gora pasatzen duzula."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Ziurtatu askatu aurretik ez duzula hatza gelditzen."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Ziurtatu hatza zuzen gora pasatzen duzula."</string>
diff --git a/quickstep/res/values-fa/strings.xml b/quickstep/res/values-fa/strings.xml
index b5acf4e..721b968 100644
--- a/quickstep/res/values-fa/strings.xml
+++ b/quickstep/res/values-fa/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"برنامه پیشبینیشده: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"دقت کنید که از ابتدای لبه سمت چپ تند بکشید."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"دقت کنید که از لبه سمت چپ تند به وسط صفحه بکشید و رها کنید."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"با تند کشیدن از لبه سمت راست به وسط صفحه هم میتوانید به عقب بروید."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"دقت کنید که از ابتدای لبه سمت راست تند بکشید."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"دقت کنید که از لبه سمت راست تند به وسط صفحه بکشید و رها کنید."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"اشاره برگشتن را تکمیل کردید. مورد بعدی، با نحوه جابهجا شدن بین برنامهها آشنا شوید."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"یاد گرفتید چگونه برای رفتن به عقب از سمت چپ تند بکشید."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"یاد گرفتید چگونه برای رفتن به عقب از سمت راست تند بکشید. مورد بعدی، با نحوه جابهجا شدن بین برنامهها آشنا شوید."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"اشاره برگشتن را تکمیل کردید."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"دقت کنید که موقع تند کشیدن بیشاز حد به پایین صفحه نزدیک نشوید."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"برای تغییر حساسیت اشاره برگشت، به «تنظیمات» بروید"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"برای برگشتن به عقب، از سمت چپ تند بکشید"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"برای برگشتن به آخرین صفحهای که در آن بودید، از لبه سمت چپ تند به وسط صفحه بکشید."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"برای برگشتن به عقب، از سمت چپ تند بکشید"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"برای رفتن به عقب، از سمت راست تند بکشید"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"برای برگشتن به آخرین صفحهای که در آن بودید، از لبه سمت چپ تند بهوسط صفحه بکشید."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"با تند کشیدن از لبه سمت راست به وسط صفحه هم میتوانید به عقب بروید. امتحان کنید."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"دقت کنید که از لبه پایینی صفحه تند به بالا بکشید."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"دقت کنید که تا قبلاز رها کردن، کشیدن را متوقف نکنید."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"دقت کنید که مستقیماً تند به بالا بکشید."</string>
diff --git a/quickstep/res/values-fi/strings.xml b/quickstep/res/values-fi/strings.xml
index ae28267..5c19b23 100644
--- a/quickstep/res/values-fi/strings.xml
+++ b/quickstep/res/values-fi/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Ennakoitu sovellus: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Muista pyyhkäistä aivan vasemmasta reunasta."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Pyyhkäise näytön vasemmasta reunasta keskelle ja päästä irti."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Voit myös palata edelliseen näkymään pyyhkäisemällä näytön oikeasta reunasta keskelle."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Muista pyyhkäistä aivan oikeasta reunasta."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Pyyhkäise näytön oikeasta reunasta keskelle ja päästä irti."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Olet oppinut Takaisin-eleen. Opettele seuraavaksi vaihtamaan sovellusta."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Nyt osaat palata takaisin pyyhkäisemällä vasemmasta reunasta."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Osaat palata takaisin pyyhkäisemällä oikeasta reunasta. Opettele seuraavaksi vaihtamaan sovellusta."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Olet oppinut Takaisin-eleen."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Varo, ettet pyyhkäise liian lähellä alareunaa."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Voit muuttaa Takaisin-eleen herkkyyttä asetuksista"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Palaa takaisin pyyhkäisemällä vasemmasta reunasta"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Voit palata edelliseen näkymään pyyhkäisemällä näytön vasemmasta reunasta keskelle."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Palaa takaisin pyyhkäisemällä vasemmasta reunasta"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Palaa takaisin pyyhkäisemällä oikeasta reunasta"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Voit palata edelliseen näkymään pyyhkäisemällä näytön vasemmasta reunasta keskelle."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Voit myös palata edelliseen näkymään pyyhkäisemällä näytön oikeasta reunasta keskelle. Kokeile nyt."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Pyyhkäise ylös näytön alareunasta."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Varo keskeyttämästä ennen kuin päästät irti."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Muista pyyhkäistä suoraan ylöspäin."</string>
diff --git a/quickstep/res/values-fr-rCA/strings.xml b/quickstep/res/values-fr-rCA/strings.xml
index bf3fa40..e9b5fed 100644
--- a/quickstep/res/values-fr-rCA/strings.xml
+++ b/quickstep/res/values-fr-rCA/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Application prédite : <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Assurez-vous de balayer l\'écran à partir de l\'extrémité gauche."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Assurez-vous de balayer l\'écran de l\'extrémité gauche jusqu\'au centre, puis de lever le doigt."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Vous pouvez aussi revenir à l\'écran précédent en balayant l\'écran du côté droit jusqu\'au centre."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Assurez-vous de balayer l\'écran à partir de l\'extrémité droite."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Assurez-vous de balayer l\'écran de l\'extrémité droite jusqu\'au centre, puis de lever le doigt."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Vous avez appris le geste de retour en arrière. Maintenant, apprenez comment changer d\'application."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Vous avez appris comment balayer l\'écran à partir de la gauche pour revenir en arrière."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Vous avez appris à balayer de la droite pour revenir en arrière. Apprenez comment changer d\'appli."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Vous avez appris le geste de retour en arrière."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Assurez-vous de ne pas balayer trop près du bas de l\'écran."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Modifiez la sensibilité du geste de retour dans Paramètres"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Balayez l\'écran à partir de la gauche pour revenir en arrière."</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Pour revenir à l\'écran précédent, balayez l\'écran du côté gauche jusqu\'au centre."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Balayez l\'écran à partir de la gauche pour revenir en arrière"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Balayer l\'écran à partir de la droite pour revenir en arrière"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Pour revenir à l\'écran précédent, balayez l\'écran du côté gauche jusqu\'au centre."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Vous pouvez revenir à l\'écran précédent en balayant l\'écran du côté droit vers le centre. Essayez-le."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Assurez-vous de balayer l\'écran à partir de l\'extrémité inférieure vers le haut."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Assurez-vous de ne pas interrompre le geste avant de lever le doigt."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Assurez-vous de balayer l\'écran en ligne droite vers le haut."</string>
diff --git a/quickstep/res/values-fr/strings.xml b/quickstep/res/values-fr/strings.xml
index e7676ae..2b3b6bb 100644
--- a/quickstep/res/values-fr/strings.xml
+++ b/quickstep/res/values-fr/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Application prédite : <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Veillez à balayer l\'écran depuis le bord gauche."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Veillez à bien balayer l\'écran depuis le bord gauche jusqu\'au centre avant de relever le doigt."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Pour revenir à l\'écran précédent, balayez l\'écran depuis le bord droit jusqu\'au centre."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Veillez à balayer l\'écran depuis le bord droit."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Veillez à bien balayer l\'écran depuis le bord droit jusqu\'au centre avant de relever le doigt."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Vous avez appris le geste pour revenir en arrière. Apprenez ensuite à passer d\'une appli à l\'autre."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Vous avez appris comment balayer l\'écran depuis la gauche pour revenir en arrière."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Vous avez appris à balayer depuis droite pour revenir en arrière. Apprenez à passer d\'une appli à l\'autre."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Vous avez appris le geste pour revenir en arrière."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Veillez à ne pas balayer l\'écran trop près du bas."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Modifiez la sensibilité du geste retour dans les paramètres"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Balayez l\'écran depuis le bord gauche pour revenir en arrière"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Pour revenir à l\'écran précédent, balayez l\'écran depuis le bord gauche jusqu\'au centre."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Balayez l\'écran depuis la gauche pour revenir en arrière"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Balayez l\'écran depuis la droite pour revenir en arrière"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Pour revenir à l\'écran précédent, balayez l\'écran depuis le bord gauche jusqu\'au centre."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Pour revenir à l\'écran précédent, balayez l\'écran depuis le bord droit jusqu\'au centre. Essayez."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Veillez à balayer l\'écran du bas vers le haut."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Veillez à ne pas marquer de pause dans votre geste avant de relever le doigt."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Veillez à balayer l\'écran vers le haut."</string>
diff --git a/quickstep/res/values-gl/strings.xml b/quickstep/res/values-gl/strings.xml
index 5841c83..dca7bb6 100644
--- a/quickstep/res/values-gl/strings.xml
+++ b/quickstep/res/values-gl/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Aplicación predita: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Asegúrate de pasar o dedo desde o bordo esquerdo máis afastado."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Asegúrate de pasar o dedo desde o bordo esquerdo ata o medio da pantalla e avanza."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Podes volver á última pantalla pasando o dedo desde o bordo dereito ata a metade da pantalla."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Asegúrate de pasar o dedo desde o bordo dereito máis afastado."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Asegúrate de pasar o dedo desde o bordo dereito ata o medio da pantalla e avanza."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Completaches o xesto de volver á última pantalla. O próximo é aprender a cambiar de aplicación."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Aprendiches a pasar o dedo desde a esquerda para volver á pantalla anterior."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Aprendiches a pasar o dedo desde a dereita para volver. Agora, aprende a cambiar de aplicación."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Completaches o xesto de volver á última pantalla."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Asegúrate de non pasar o dedo demasiado preto da parte inferior da pantalla."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Podes cambiar a sensibilidade do xesto en Configuración"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Pasa o dedo desde a esquerda para volver"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Para volver á última pantalla, pasa o dedo desde o bordo esquerdo ata a metade da pantalla."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Pasa o dedo desde a esquerda para volver"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Pasar o dedo desde a dereita para volver á pantalla anterior"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Para volver á última pantalla, pasa o dedo desde o bordo esquerdo ata a metade da pantalla."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Tamén podes volver pasando o dedo desde o bordo dereito ata a metade da pantalla. Próbao agora."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Asegúrate de pasar o dedo cara arriba desde o bordo inferior da pantalla."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Asegúrate de non facer unha pausa antes de avanzar."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Asegúrate de pasar o dedo cara arriba cun movemento vertical."</string>
diff --git a/quickstep/res/values-gu/strings.xml b/quickstep/res/values-gu/strings.xml
index 8169eed..c1375f9 100644
--- a/quickstep/res/values-gu/strings.xml
+++ b/quickstep/res/values-gu/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"પૂર્વાનુમાનિત ઍપ: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ખાતરી કરો કે તમે એકદમ દૂરની ડાબી કિનારીએથી સ્વાઇપ કરો છો."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ખાતરી કરો કે તમે ડાબી કિનારીએથી સ્ક્રીનના મધ્ય ભાગ સુધી સ્વાઇપ કરો છે અને આંગળી ઊંચકી લો છો."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"તમે જમણી કિનારીએથી સ્ક્રીનના મધ્ય ભાગ સુધી સ્વાઇપ કરીને પણ છેલ્લી સ્ક્રીન પર પાછા જઈ શકો છો."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ખાતરી કરો કે તમે એકદમ દૂરની જમણી કિનારીએથી સ્વાઇપ કરો છો."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ખાતરી કરો કે તમે જમણી કિનારીએથી સ્ક્રીનના મધ્ય ભાગ સુધી સ્વાઇપ કરો છે અને આંગળી ઊંચકી લો છો."</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"તમે પાછા જવાનો સંકેત પૂર્ણ કર્યો છે. હવે પછી, ઍપ સ્વિચ કરવાની રીત વિશે જાણો."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"પાછળ જવા ડાબેથી કેવી રીતે સ્વાઇપ કરવું એ તમે શીખી લીધું છે."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"પાછળ જવા જમણેથી કેવી રીતે સ્વાઇપ કરવું એ તમે શીખી લીધું છે. હવે પછી, ઍપ સ્વિચ કરવાની રીત જાણો."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"તમે પાછા જવાનો સંકેત પૂર્ણ કર્યો છે."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ખાતરી કરો કે તમારાથી સ્ક્રીનની એકદમ નીચેની કિનારીની ખૂબ નજીક સુધી સ્વાઇપ ન થઈ જાય."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"પાછા જવાના સંકેતની સંવેદિતા બદલવા માટે, સેટિંગમાં જાઓ"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"પાછળ જવા ડાબેથી સ્વાઇપ કરો"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"તમે જે છેલ્લી સ્ક્રીન પર હતા તેની પર પાછા જવા, ડાબી કિનારીએથી સ્ક્રીનના મધ્ય ભાગ સુધી સ્વાઇપ કરો."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"પાછળ જવા ડાબેથી સ્વાઇપ કરો"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"પાછળ જવા માટે, જમણેથી સ્વાઇપ કરો"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"તમે જે છેલ્લી સ્ક્રીન પર હતા તેના પર પાછા જવા, ડાબી કિનારીએથી સ્ક્રીનના મધ્ય ભાગ સુધી સ્વાઇપ કરો."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"તમે જમણી કિનારીથી સ્ક્રીનની વચ્ચે સુધી સ્વાઇપ કરીને પણ છેલ્લી સ્ક્રીન પર પાછા જઈ શકો છો. અજમાવી જુઓ."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ખાતરી કરો કે તમે સ્ક્રીનની નીચેની કિનારીએથી ઉપરની તરફ સ્વાઇપ કરો છો."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"ખાતરી કરો કે તમે આંગળી ઊંચકી લેતા પહેલાં સ્વાઇપ કરવાનું થોભાવતા નથી."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"ખાતરી કરો કે તમે સીધું ઉપરની તરફ સ્વાઇપ કરો છો."</string>
diff --git a/quickstep/res/values-hi/strings.xml b/quickstep/res/values-hi/strings.xml
index ff6ec89..b48dee9 100644
--- a/quickstep/res/values-hi/strings.xml
+++ b/quickstep/res/values-hi/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"सुझाया गया ऐप्लिकेशन: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"देख लें कि आप स्क्रीन की बाईं तरफ़ के बिल्कुल किनारे से स्वाइप कर रहे हों."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"देख लें कि आप स्क्रीन के बाएं किनारे से बीचों-बीच तक स्वाइप कर रहे हों और फिर अपनी उंगली उठा लें."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"आप दाएं किनारे से स्क्रीन के बीच तक स्वाइप करके भी पिछली स्क्रीन पर जा सकते हैं."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"देख लें कि आप स्क्रीन की दाईं तरफ़ के बिल्कुल किनारे से स्वाइप कर रहे हों."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"देख लें कि आप स्क्रीन के दाएं किनारे से बीचों-बीच तक स्वाइप कर रहे हों और फिर अपनी उंगली उठा लें."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"आपने पीछे ले जाने वाले हाथ के जेस्चर के बारे में जान लिया है. एक ऐप से दूसरे पर जाने का तरीका जानें."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"आपने स्क्रीन के बाएं किनारे से स्वाइप करके, पिछली स्क्रीन पर वापस जाने का तरीका सीख लिया है."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"आपने स्क्रीन के दाएं किनारे से स्वाइप करके, पिछली स्क्रीन पर वापस जाने का तरीका सीख लिया है. अब, एक ऐप से दूसरे ऐप पर जाने का तरीका सीखें."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"आपने पेज पर पीछे ले जाने वाले हाथ के जेस्चर (हाव-भाव) के बारे में जान लिया है."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"देखे लें कि आप स्क्रीन पर बिल्कुल नीचे तक स्वाइप न कर रहे हों."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"\'सेटिंग\' में जाकर, पीछे जाने के लिए इस्तेमाल होने वाले हाथ के जेस्चर (हाव-भाव) की संवेदनशीलता बदलें"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"वापस जाने के लिए, स्क्रीन के बाएं किनारे से स्वाइप करें"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"पिछली स्क्रीन पर वापस जाने के लिए, बाएं किनारे से स्क्रीन के बीच तक स्वाइप करें."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"वापस जाने के लिए, स्क्रीन के बाएं किनारे से स्वाइप करें"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"वापस जाने के लिए, स्क्रीन के दाएं किनारे से स्वाइप करें"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"पिछली स्क्रीन पर वापस जाने के लिए, स्क्रीन के बाएं किनारे से बीच तक स्वाइप करें."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"आप स्क्रीन के दाएं किनारे से बीच तक स्वाइप करके भी पिछली स्क्रीन पर जा सकते हैं. इसे अभी आज़माएं."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"देख लें कि आप स्क्रीन के निचले किनारे से ऊपर की ओर स्वाइप कर रहे हों."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"देख लें कि आप स्क्रीन से अपनी उंगली उठाने से पहले, इसे कहीं न रोक रहे हों."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"देख लें कि आप ऊपर की ओर बिल्कुल सीधे स्वाइप कर रहे हों."</string>
diff --git a/quickstep/res/values-hr/strings.xml b/quickstep/res/values-hr/strings.xml
index 0d61c2c..0e3444a 100644
--- a/quickstep/res/values-hr/strings.xml
+++ b/quickstep/res/values-hr/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predviđena aplikacija: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Pazite da prijeđete prstom od krajnjeg lijevog ruba."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Pazite da prijeđete prstom od lijevog ruba do sredine zaslona i podignite prst."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Na posljednji se zaslon možete vratiti i prelaskom od desnog ruba do sredine zaslona."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Pazite da prijeđete prstom od krajnjeg desnog ruba."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Pazite da prijeđete prstom od desnog ruba do sredine zaslona i podignite prst."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Izvršili ste pokret za povratak. Sad saznajte kako promijeniti aplikaciju."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Naučili ste kako prijeći prstom slijeva udesno da biste se vratili."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Naučili ste kako prijeći prstom zdesna ulijevo da biste se vratili. Sad saznajte kako promijeniti aplikaciju."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Izvršili ste pokret za povratak."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Pazite da ne prijeđete prstom preblizu dnu zaslona."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Osjetljivost pokreta povratka promijenite u postavkama"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Prijeđite prstom slijeva udesno da biste se vratili"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Da biste se vratili na posljednji posjećeni zaslon, prijeđite od lijevog ruba do sredine zaslona."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Prijeđite prstom slijeva udesno da biste se vratili"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Prijeđite prstom zdesna ulijevo da biste se vratili"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Da biste se vratili na posljednji posjećeni zaslon, prijeđite od lijevog ruba do sredine zaslona."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Na posljednji se zaslon možete vratiti i prelaskom od desnog ruba do sredine zaslona. Isprobajte odmah."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Pazite da prijeđete prstom prema gore od donjeg ruba zaslona."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Pazite da ne zastanete prije podizanja prsta."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Pazite da prijeđete prstom ravno prema gore."</string>
diff --git a/quickstep/res/values-hu/strings.xml b/quickstep/res/values-hu/strings.xml
index 354e999..5289af1 100644
--- a/quickstep/res/values-hu/strings.xml
+++ b/quickstep/res/values-hu/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Várható alkalmazás: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Csúsztasson a képernyő bal széléről."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Csúsztasson a képernyő bal széléről a képernyő közepéig, és engedje el a képernyőt."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"A képernyő jobb széléről a képernyő közepéig csúsztatva is visszatérhet a legutóbbi képernyőre."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Csúsztasson a képernyő jobb széléről."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Csúsztasson a képernyő jobb széléről a képernyő közepéig, és engedje el a képernyőt."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Teljesítette a visszalépési kézmozdulatot. Most megtanulhatja, hogyan válthat az appok között."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Megtanulta, hogyan léphet vissza balról csúsztatva."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Megtanulta, hogyan léphet vissza jobbról csúsztatva. A következő az appok közötti váltás."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Teljesítette a visszalépési kézmozdulatot."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Ne csúsztasson túl közel a képernyő aljához."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"A vissza mozdulat érzékenysége a Beállításokban módosítható"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"A visszalépéshez csúsztasson balról jobbra"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Ha visszatérne a legutóbbi képernyőre, csúsztasson a képernyő közepére a bal szélétől."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"A visszalépéshez csúsztasson balról jobbra"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"A visszalépéshez csúsztasson jobbról balra"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Ha visszatérne a legutóbbi képernyőre, csúsztasson a képernyő közepére a bal szélétől."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"A képernyő jobb széléről a közepéig csúsztatva is visszatérhet a legutóbbi képernyőre. Próbálja ki."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Csúsztasson felfelé a képernyő aljától."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Ne álljon meg, mielőtt elengedi a képernyőt."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Csúsztasson egyenesen felfelé."</string>
diff --git a/quickstep/res/values-hy/strings.xml b/quickstep/res/values-hy/strings.xml
index 9f112df..e4d9991 100644
--- a/quickstep/res/values-hy/strings.xml
+++ b/quickstep/res/values-hy/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Առաջարկվող հավելված՝ <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Համոզվեք, որ մատը սահեցնում եք էկրանի ձախ եզրից։"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Սահեցրեք մատն էկրանի ձախ եզրից դեպի կենտրոն և բաց թողեք։"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Անցեք վերջին էկրան՝ էկրանի աջ եզրից մատը սահեցնելով դեպի կենտրոն։"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Համոզվեք, որ մատը սահեցնում եք էկրանի աջ եզրից։"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Սահեցրեք մատն էկրանի աջ եզրից դեպի կենտրոն և բաց թողեք։"</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Դուք սովորեցիք հետ գնալու ժեստը։ Այժմ սովորենք՝ ինչպես անցնել մի հավելվածից մյուսը։"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Դուք սովորեցիք՝ ինչպես մատը ձախից սահեցնելով հետ գնալ"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Դուք սովորեցիք՝ ինչպես մատը աջից սահեցնելով հետ գնալ։ Այժմ սովորենք՝ ինչպես անցնել մի հավելվածից մյուսը։"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Դուք սովորեցիք հետ գնալու ժեստը։"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Համոզվեք, որ մատը չափազանց մոտ չեք սահեցնում էկրանին ներքևի հատվածին։"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Հետ գնալու ժեստի զգայունությունը փոփոխեք կարգավորումներում"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Սահեցրեք մատը ձախից՝ հետ գնալու համար"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Վերջին էկրան վերադառնալու համար էկրանի եզրից մատը սահեցրեք դեպի կենտրոն։"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Սահեցրեք մատը ձախից՝ հետ գնալու համար"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Սահեցրեք մատը աջից՝ հետ գնալու համար"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Վերջին էկրան վերադառնալու համար էկրանի եզրից մատը սահեցրեք դեպի կենտրոն։"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Անցեք վերջին էկրան՝ էկրանի աջ եզրից մատը սահեցնելով դեպի կենտրոն։ Փորձեք հիմա։"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Համոզվեք, որ մատն էկրանի ներքևի եզրից վերև եք սահեցնում։"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Համոզվեք, որ դադար չեք տալիս նախքան բաց թողնելը։"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Համոզվեք, որ մատն ուղիղ վերև եք սահեցնում։"</string>
diff --git a/quickstep/res/values-in/strings.xml b/quickstep/res/values-in/strings.xml
index b7adc5f..d6802d4 100644
--- a/quickstep/res/values-in/strings.xml
+++ b/quickstep/res/values-in/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Aplikasi yang diprediksi: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Pastikan Anda menggeser dari tepi ujung kiri."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Pastikan Anda menggeser dari tepi kiri ke tengah layar, lalu lepaskan."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Geser dari tepi kanan ke tengah layar menuju layar terakhir."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Pastikan Anda menggeser dari tepi ujung kanan."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Pastikan Anda menggeser dari tepi kanan ke tengah layar, lalu lepaskan."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Anda telah menyelesaikan gestur kembali. Selanjutnya, pelajari cara beralih aplikasi."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Anda telah belajar cara geser dari kiri untuk kembali."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Anda telah belajar cara geser dari kanan untuk kembali. Berikutnya, pelajari cara beralih aplikasi."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Anda telah menyelesaikan gestur kembali."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Pastikan Anda tidak menggeser terlalu dekat ke bagian bawah layar."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Untuk mengubah sensitivitas gestur kembali, buka Setelan"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Geser dari kiri untuk kembali"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Untuk kembali ke layar terakhir, geser dari tepi kiri ke tengah layar."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Geser dari kiri untuk kembali"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Geser dari kanan untuk kembali"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Untuk kembali ke layar terakhir yang Anda buka, geser dari tepi kiri ke tengah layar."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Geser dari tepi kanan ke tengah layar untuk kembali ke layar terakhir. Coba sekarang."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Pastikan Anda menggeser ke atas dari tepi bawah layar."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Pastikan Anda tidak menjeda sebelum melepaskan."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Pastikan Anda menggeser lurus ke atas."</string>
diff --git a/quickstep/res/values-is/strings.xml b/quickstep/res/values-is/strings.xml
index abb5298..5928bdf 100644
--- a/quickstep/res/values-is/strings.xml
+++ b/quickstep/res/values-is/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Tillaga að forriti: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Passaðu að strjúka frá jaðri vinstri brúnar."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Passaðu að strjúka frá vinstri brún skjásins að miðju hans og sleppa svo."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Þú getur einnig farið til baka á síðasta skjá með því að strjúka frá hægri brún að miðju skjásins."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Passaðu að strjúka frá jaðri hægri brúnar."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Passaðu að strjúka frá hægri brún skjásins að miðju hans og sleppa svo."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Þú laukst við að kynna þér bendinguna „til baka“. Næst skaltu læra hvernig þú skiptir á milli forrita."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Þú lærðir að strjúka frá vinstri til að bakka."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Þú lærðir að strjúka frá hægri til að bakka. Næst skaltu læra hvernig þú skiptir á milli forrita."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Þú laukst við að kynna þér bendinguna „til baka“."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Passaðu að strjúka ekki of nálægt neðri brún skjásins."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Til að breyta næmi til baka-bendingar ferðu í stillingar"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Strjúktu frá vinstri til að fara til baka"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Strjúktu frá vinstri brún að miðju skjásins til að fara aftur til baka í síðasta skjá sem var opinn."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Strjúktu frá vinstri til að fara til baka"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Strjúktu frá hægri til að fara til baka"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Strjúktu frá vinstri brún að miðju skjásins til að fara aftur á síðasta skjá sem var opinn."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Þú getur líka farið á síðasta skjá með því að strjúka frá hægri brún að miðju skjásins. Prófa núna."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Passaðu að strjúka upp frá neðri brún skjásins."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Passaðu að stoppa ekki áður en þú sleppir."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Passaðu að strjúka beint upp."</string>
diff --git a/quickstep/res/values-it/strings.xml b/quickstep/res/values-it/strings.xml
index 9d6d1f3..ea7454a 100644
--- a/quickstep/res/values-it/strings.xml
+++ b/quickstep/res/values-it/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"App prevista: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Assicurati di scorrere dall\'estremità del bordo sinistro."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Assicurati di scorrere dal bordo sinistro verso il centro dello schermo e solleva il dito."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Puoi anche tornare all\'ultima schermata scorrendo dal bordo destro verso il centro dello schermo."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Assicurati di scorrere dall\'estremità del bordo destro."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Assicurati di scorrere dal bordo destro verso il centro dello schermo e solleva il dito."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Hai completato il gesto Indietro. Ora, impara come passare da un\'app all\'altra."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Hai imparato a scorrere da sinistra per tornare indietro."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Hai imparato a scorrere da destra per tornare indietro. Ora impara come passare da un\'app all\'altra."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Hai completato il gesto Indietro."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Assicurati di non scorrere troppo vicino alla parte inferiore dello schermo."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Usa Impostazioni per cambiare sensibilità del gesto Indietro"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Scorri da sinistra per tornare indietro"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Per tornare all\'ultima schermata mostrata, scorri dal bordo sinistro verso il centro dello schermo."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Scorri da sinistra per tornare indietro"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Scorri da destra per tornare indietro"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Per tornare all\'ultima schermata mostrata, scorri dal bordo sinistro verso il centro dello schermo."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Puoi anche tornare all\'ultima schermata scorrendo da bordo destro verso centro dello schermo. Prova."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Assicurati di scorrere verso l\'alto dal bordo inferiore dello schermo."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Assicurati di non fare pause prima di sollevare il dito."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Assicurati di scorrere verso l\'alto senza fermarti."</string>
diff --git a/quickstep/res/values-iw/strings.xml b/quickstep/res/values-iw/strings.xml
index 4173f18..5b89d2c 100644
--- a/quickstep/res/values-iw/strings.xml
+++ b/quickstep/res/values-iw/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"האפליקציות החזויות: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"חשוב להקפיד להחליק מהקצה הימני."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"חשוב להקפיד להחליק מהקצה הימני למרכז המסך ואז לשחרר."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"אפשר לחזור למסך הקודם בהחלקה מהקצה הימני של המסך אל המרכז."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"חשוב להקפיד להחליק מהקצה השמאלי."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"חשוב להקפיד להחליק מהקצה השמאלי למרכז המסך ואז לשחרר."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"השלמת את תנועת \'הקודם\'. בשלב הבא לומדים איך לעבור בין אפליקציות."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"למדת איך להחליק מצד שמאל כדי לחזור אחורה."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"למדת איך להחליק מצד ימין כדי לחזור אחורה. בשלב הבא לומדים איך לעבור בין אפליקציות."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"השלמת את תנועת \'הקודם\'."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"חשוב להקפיד שלא להחליק קרוב מדי לתחתית המסך."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"כדי לשנות את מידת הרגישות של תנועת החזרה, יש לעבור להגדרות"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"יש להחליק מצד שמאל כדי לחזור למסך הקודם"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"כדי לחזור למסך הקודם, יש להחליק מהקצה השמאלי של המסך אל המרכז."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"יש להחליק מצד שמאל כדי לחזור למסך הקודם"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"יש להחליק מצד ימין כדי לחזור אחורה"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"כדי לחזור למסך הקודם, יש להחליק מהקצה השמאלי של המסך אל המרכז."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"בנוסף, אפשר לחזור למסך הקודם בהחלקה מהקצה הימני של המסך אל המרכז. רוצה לנסות עכשיו?"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"חשוב להקפיד להחליק למעלה מהקצה התחתון של המסך."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"חשוב לוודא שלא מחכים לפני שמשחררים."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"חשוב להקפיד להחליק ישר למעלה."</string>
diff --git a/quickstep/res/values-ja/strings.xml b/quickstep/res/values-ja/strings.xml
index 27f81b7..0c2a03b 100644
--- a/quickstep/res/values-ja/strings.xml
+++ b/quickstep/res/values-ja/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"予測されたアプリ: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"一番左端からスワイプしてください。"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"画面の左端から中央に向かってスワイプし、指を離してください。"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"画面の右端から中央に向かってスワイプして直前の画面に戻ることもできます。"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"一番右端からスワイプしてください。"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"画面の右端から中央に向かってスワイプし、指を離してください。"</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"「戻る」操作を完了しました。次は、アプリを切り替える方法を覚えましょう。"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"左側からスワイプして前の画面に戻る方法を学習しました。"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"右側からスワイプして前の画面に戻る方法を学習しました。次は、アプリを切り替える方法を覚えましょう。"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"「戻る」操作を完了しました。"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"スワイプする際は画面の下部に近づきすぎないようにしましょう。"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"「戻る」操作の感度を変更するには [設定] に移動します"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"左端からスワイプすると前の画面に戻ります"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"直前の画面に戻るには、画面の左端から中央に向かってスワイプします。"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"左端からスワイプすると前の画面に戻ります"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"右側からスワイプすると前の画面に戻ります"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"直前の画面に戻るには、画面の左端から中央に向かってスワイプします。"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"画面の右端から中央に向かってスワイプして直前の画面に戻ることもできます。では、やってみましょう。"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"画面の下端から上にスワイプしてください。"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"指を離す前にいったん止めないでください。"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"まっすぐ上にスワイプしてください。"</string>
diff --git a/quickstep/res/values-ka/strings.xml b/quickstep/res/values-ka/strings.xml
index c532589..15c86b4 100644
--- a/quickstep/res/values-ka/strings.xml
+++ b/quickstep/res/values-ka/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"ნაწინასწარმეტყველები აპი: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"არ გადაფურცლოთ მარცხენა კიდის ბოლოდან."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"გადაფურცლეთ მარცხენა კიდიდან ეკრანის ცენტრისკენ და თითი აუშვით."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"ასევე, შეგიძლიათ, დაბრუნდეთ ბოლო ეკრანზე მარჯვენა კიდიდან ეკრანის შუისკენ გადაფურცვლით."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"არ გადაფურცლოთ მარჯვენა კიდის ბოლოდან."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"გადაფურცლეთ მარჯვენა კიდიდან ეკრანის ცენტრისკენ და თითი აუშვით."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"თქვენ შეასრულეთ უკან დაბრუნების ჟესტი. ახლა კი შევიტყოთ, როგორ გადავრთოთ აპები."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"თქვენ ისწავლეთ მარცხნიდან გადაფურცვლა უკან დასაბრუნებლად."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"თქვენ ისწავლეთ მარჯვნიდან გადაფურცვლა უკან დასაბრუნებლად. ახლა კი შეიტყვეთ, როგორ გადართოთ აპები."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"თქვენ შეასრულეთ უკან დაბრუნების ჟესტი."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"არ გადაფურცლოთ ეკრანის ბოლოსთან ახლოს."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"დაბრუნების ჟესტის მგრძნობელობის შესაცვლელად გადადით პარამეტრებზე"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"უკან დასაბრუნებლად გადაფურცლეთ მარცხნიდან"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"ბოლო ნანახ ეკრანზე დასაბრუნებლად გადაფურცლეთ მარცხენა კიდიდან ეკრანის ცენტრისკენ."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"უკან დასაბრუნებლად გადაფურცლეთ მარცხნიდან"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"უკან დასაბრუნებლად გადაფურცლეთ მარჯვნიდან"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"ბოლო ნანახ ეკრანზე დასაბრუნებლად გადაფურცლეთ მარცხენა კიდიდან ეკრანის ცენტრისკენ."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"ასევე შეგიძლიათ, დაბრუნდეთ ბოლო ეკრანზე მარჯვენა კიდიდან ეკრანის შუისკენ გადაფურცვლით. ცადეთ ახლავე."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"გადაფურცლეთ ეკრანის ქვედა კიდიდან ზემოთ."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"არ დააპაუზოთ თითის აშვებამდე."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"გადაფურცლეთ ზემოთ."</string>
diff --git a/quickstep/res/values-kk/strings.xml b/quickstep/res/values-kk/strings.xml
index 4cf0d2b..292f4cb 100644
--- a/quickstep/res/values-kk/strings.xml
+++ b/quickstep/res/values-kk/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Болжалды қолданба: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Сол жақтағы ең шеткі нүктеден бастап сырғытыңыз."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Экранның сол жақ шетінен ортасына қарай сырғытыңыз да, жіберіңіз."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Экранның оң жақ шетінен ортасына қарай сырғыту арқылы соңғы ашылған экранға орала аласыз."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Оң жақтағы ең шеткі нүктеден бастап сырғытыңыз."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Экранның оң жақ шетінен ортасына қарай сырғытыңыз да, жіберіңіз."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Артқа қайту қимылын аяқтадыңыз. Енді қолданбаларды ауыстыруды үйреніңіз."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Солдан оңға сырғыту арқылы артқа қайтуды үйрендіңіз."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Оңнан солға сырғыту арқылы артқа қайтуды үйрендіңіз. Енді қолданбаларды ауыстыруды үйреніңіз."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Артқа қайту қимылын аяқтадыңыз."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Саусағыңызбен сырғыту кезінде экранның төменгі жағына тым жақындамаңыз."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Артқа қайту қимылы сезгіштігін параметрлерден өзгертіңіз."</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Артқа қайту үшін сол жақтан сырғытыңыз"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Соңғы ашылған экранға оралу үшін экранның сол жақ шетінен ортасына қарай сырғытыңыз."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Артқа қайту үшін солдан оңға сырғытыңыз."</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Артқа қайту үшін оңнан солға сырғытыңыз"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Соңғы ашылған экранға оралу үшін экранның сол жағынан ортасына сырғытыңыз."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Экранның оң жағынан ортасына сырғыту арқылы соңғы ашылған экранға орала аласыз. Қазір істеп көріңіз."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Экранның төменгі шетінен жоғары қарай сырғытыңыз."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Жіберер алдында кідіріс жасамаңыз."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Тігінен жоғары қарай сырғытыңыз."</string>
diff --git a/quickstep/res/values-km/strings.xml b/quickstep/res/values-km/strings.xml
index 1e46ded..2e8a5c4 100644
--- a/quickstep/res/values-km/strings.xml
+++ b/quickstep/res/values-km/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"កម្មវិធីដែលបានព្យាករ៖ <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ត្រូវប្រាកដថាអ្នកអូសពីចុងគែមខាងឆ្វេង។"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ត្រូវប្រាកដថាអ្នកអូសពីគែមខាងឆ្វេងទៅផ្នែកកណ្ដាលនៃអេក្រង់ រួចដកដៃ។"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"អ្នកក៏អាចត្រឡប់ទៅអេក្រង់ចុងក្រោយបានផងដែរ ដោយអូសពីគែមខាងស្ដាំទៅផ្នែកកណ្ដាលនៃអេក្រង់។"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ត្រូវប្រាកដថាអ្នកអូសពីចុងគែមខាងស្ដាំ។"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ត្រូវប្រាកដថាអ្នកអូសពីគែមខាងស្ដាំទៅផ្នែកកណ្ដាលនៃអេក្រង់ រួចដកដៃ។"</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"អ្នកបានបញ្ចប់ចលនាថយក្រោយហើយ។ បន្ទាប់មកទៀត សូមស្វែងយល់ពីរបៀបប្ដូរកម្មវិធី។"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"អ្នកបានស្វែងយល់ពីរបៀបអូសពីខាងឆ្វេង ដើម្បីថយក្រោយ។"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"អ្នកបានស្វែងយល់ពីរបៀបអូសពីខាងស្ដាំ ដើម្បីថយក្រោយ។ បន្ទាប់ទៀត សូមស្វែងយល់ពីរបៀបប្ដូរកម្មវិធី។"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"អ្នកបានបញ្ចប់ចលនាថយក្រោយហើយ។"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ត្រូវប្រាកដថាអ្នកមិនអូសទៅជិតផ្នែកខាងក្រោមនៃអេក្រង់ពេក។"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"ដើម្បីប្ដូរកម្រិតរំញោចនឹងចលនាថយក្រោយ សូមចូលទៅកាន់ការកំណត់"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"អូសពីឆ្វេងដើម្បីថយក្រោយ"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"ដើម្បីត្រឡប់ទៅអេក្រង់ចុងក្រោយដែលអ្នកបានចូល សូមអូសពីគែមខាងឆ្វេងទៅផ្នែកកណ្ដាលនៃអេក្រង់។"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"អូសពីខាងឆ្វេងដើម្បីថយក្រោយ"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"អូសពីខាងស្ដាំដើម្បីថយក្រោយ"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"ដើម្បីត្រឡប់ទៅអេក្រង់ចុងក្រោយដែលអ្នកបានចូល សូមអូសពីគែមខាងឆ្វេងទៅផ្នែកកណ្ដាលនៃអេក្រង់។"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"អ្នកក៏អាចត្រឡប់ទៅអេក្រង់ចុងក្រោយបានផងដែរ ដោយអូសពីគែមខាងស្ដាំទៅផ្នែកកណ្ដាលនៃអេក្រង់។ សាកល្បងឥឡូវនេះ។"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ត្រូវប្រាកដថាអ្នកអូសឡើងលើពីគែមខាងក្រោមនៃអេក្រង់។"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"ត្រូវប្រាកដថាអ្នកមិនផ្អាក មុនពេលដកដៃ។"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"ត្រូវប្រាកដថាអ្នកអូសត្រង់ឡើងលើ។"</string>
diff --git a/quickstep/res/values-kn/strings.xml b/quickstep/res/values-kn/strings.xml
index e057b76..437fdba 100644
--- a/quickstep/res/values-kn/strings.xml
+++ b/quickstep/res/values-kn/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"ಶಿಫಾರಸು ಮಾಡಿದ ಆ್ಯಪ್: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ನೀವು ದೂರದ ಎಡ ಅಂಚಿನಿಂದ ಸ್ವೈಪ್ ಮಾಡುತ್ತಿದ್ದೀರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ಎಡ ಅಂಚಿನಿಂದ ಸ್ಕ್ರೀನ್ ಮಧ್ಯಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿದ್ದೀರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ ಹಾಗೂ ನಿಮ್ಮ ಬೆರಳನ್ನು ಮೇಲೆತ್ತಿ."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"ಬಲ ಅಂಚಿನಿಂದ ಸ್ಕ್ರೀನ್ ಮಧ್ಯಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ ಕೊನೆಯ ಸ್ಕ್ರೀನ್ಗೆ ಹೋಗಿ."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ನೀವು ದೂರದ ಬಲ ಅಂಚಿನಿಂದ ಸ್ವೈಪ್ ಮಾಡುತ್ತಿದ್ದೀರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ಬಲ ಅಂಚಿನಿಂದ ಸ್ಕ್ರೀನ್ ಮಧ್ಯಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿದ್ದೀರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ ಹಾಗೂ ನಿಮ್ಮ ಬೆರಳನ್ನು ಮೇಲೆತ್ತಿ."</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"ನೀವು ಗೋ ಬ್ಯಾಕ್ ಗೆಸ್ಚರ್ ಅನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದ್ದೀರಿ. ಮುಂದೆ, ಆ್ಯಪ್ಗಳನ್ನು ಬದಲಾಯಿಸುವುದು ಹೇಗೆ ಎಂದು ತಿಳಿಯಿರಿ."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"ಹಿಂದಕ್ಕೆ ಹೋಗಲು ಎಡದಿಂದ ಸ್ವೈಪ್ ಮಾಡುವುದು ಹೇಗೆಂದು ನೀವು ಕಲಿತಿರಿ."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"ಹಿಂದೆ ಹೋಗಲು ಬಲದಿಂದ ಸ್ವೈಪ್ ಮಾಡುವುದು ಹೇಗೆಂದು ಕಲಿತಿರಿ. ಮುಂದೆ, ಆ್ಯಪ್ಗಳನ್ನು ಬದಲಿಸುವುದು ಹೇಗೆಂದು ತಿಳಿಯಿರಿ."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"ನೀವು ಗೋ ಬ್ಯಾಕ್ ಗೆಸ್ಚರ್ ಅನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದ್ದೀರಿ."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ನೀವು ಸ್ಕ್ರೀನ್ನ ಕೆಳಭಾಗಕ್ಕೆ ಹೆಚ್ಚು ಹತ್ತಿರ ಸ್ವೈಪ್ ಮಾಡದಂತೆ ನೋಡಿಕೊಳ್ಳಿ."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"ಬ್ಯಾಕ್ ಗೆಸ್ಚರ್ನ ಸೂಕ್ಷ್ಮತೆ ಬದಲಾಯಿಸಲು, ಸೆಟ್ಟಿಂಗ್ಗಳಿಗೆ ಹೋಗಿ"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"ಹಿಂದಕ್ಕೆ ಹೋಗಲು, ಎಡದಿಂದ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"ಈ ಮೊದಲು ನೀವಿದ್ದ ಕೊನೆಯ ಸ್ಕ್ರೀನ್ಗೆ ಹಿಂತಿರುಗಲು, ಬಲ ಅಂಚಿನಿಂದ ಸ್ಕ್ರೀನ್ ಮಧ್ಯಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"ಹಿಂದಕ್ಕೆ ಹೋಗಲು ಎಡದಿಂದ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"ಹಿಂದಕ್ಕೆ ಹೋಗಲು ಬಲದಿಂದ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"ಈ ಮೊದಲು ನೀವಿದ್ದ ಕೊನೆಯ ಸ್ಕ್ರೀನ್ಗೆ ಹಿಂತಿರುಗಲು, ಎಡ ಅಂಚಿನಿಂದ ಸ್ಕ್ರೀನ್ ಮಧ್ಯಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"ಬಲ ಅಂಚಿನಿಂದ ಸ್ಕ್ರೀನ್ ಮಧ್ಯಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿಯೂ ನೀವು ಕೊನೆಯ ಸ್ಕ್ರೀನ್ಗೆ ಹೋಗಬಹುದು. ಇದನ್ನು ಈಗಲೇ ಪ್ರಯತ್ನಿಸಿ."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ಸ್ಕ್ರೀನ್ನ ಕೆಳಗಿನ ಅಂಚಿನಿಂದ ನೀವು ಸ್ವೈಪ್ ಮಾಡುತ್ತಿದ್ದೀರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"ವಿರಾಮಗೊಳಿಸದೆ ನಿಮ್ಮ ಬೆರಳನ್ನು ಸ್ಕ್ರೀನ್ನಿಂದ ಮೇಲೆತ್ತಿ."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"ನೀವು ನೇರವಾಗಿ ಸ್ವೈಪ್ ಮಾಡುತ್ತಿದ್ದೀರಿ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ."</string>
diff --git a/quickstep/res/values-ko/strings.xml b/quickstep/res/values-ko/strings.xml
index a0c7882..b31dba9 100644
--- a/quickstep/res/values-ko/strings.xml
+++ b/quickstep/res/values-ko/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"예상 앱: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"왼쪽 가장자리 끝에서 스와이프하세요."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"왼쪽 가장자리에서 화면 중앙으로 스와이프한 후 손가락을 떼세요."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"오른쪽 가장자리에서 화면 중앙으로 스와이프하여 마지막 화면으로 돌아갈 수도 있습니다"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"오른쪽 가장자리 끝에서 스와이프하세요."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"오른쪽 가장자리에서 화면 중앙으로 스와이프한 후 손가락을 떼세요."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"돌아가기 동작을 완료했습니다. 이번에는 앱 전환 방법을 알아보겠습니다."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"왼쪽에서 스와이프하여 뒤로 돌아가는 방법을 배웠습니다."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"오른쪽에서 스와이프하여 뒤로 돌아가는 방법을 배웠습니다. 이번에는 앱 전환 방법을 알아보겠습니다."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"돌아가기 동작을 완료했습니다."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"화면 하단에 지나치게 가까운 곳에서 스와이프하면 안 됩니다."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"돌아가기 동작의 민감도를 변경하려면 설정으로 이동하세요"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"왼쪽에서 스와이프하여 뒤로 돌아가세요"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"마지막 화면으로 돌아가려면 왼쪽 가장자리에서 화면 중앙으로 스와이프하세요"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"왼쪽에서 스와이프하여 뒤로 돌아가세요"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"돌아가려면 오른쪽에서 스와이프하세요"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"마지막 화면으로 돌아가려면 왼쪽 가장자리에서 화면 중앙으로 스와이프하세요"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"오른쪽 가장자리에서 화면 중앙으로 스와이프해도 마지막 화면으로 돌아갈 수도 있습니다. 지금 동작을 취해 보세요"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"화면 하단 가장자리에서 위로 스와이프하세요."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"손가락을 떼기 전에 멈추지 않아야 합니다."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"위로 똑바르게 스와이프하세요."</string>
diff --git a/quickstep/res/values-ky/strings.xml b/quickstep/res/values-ky/strings.xml
index 4c89553..eb19e13 100644
--- a/quickstep/res/values-ky/strings.xml
+++ b/quickstep/res/values-ky/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Божомолдонгон колдонмо: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Экранды эң четинен солдон оңго карай сүрүңүз."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Экранды сол жагынан ортосуна карай сүрүп, манжаңызды алыңыз."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Акыркы экранга кайтуу үчүн экранды оң жагынан ортосуна карай сүрүңүз."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Экранды эң четинен оңдой солго карай сүрүңүз."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Экранды оң жагынан ортосуна карай сүрүп, манжаңызды алыңыз."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"\"Артка\" жаңсоосу боюнча үйрөткүчтү бүтүрдүңүз. Эми колдонмолорду которуштурганды үйрөнүп алыңыз."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Артка кайтуу үчүн экранды солдон оңго карай сүрүүнү үйрөндүңүз."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Артка кайтуу үчүн экранды оңдон солго карай сүрүүнү үйрөндүңүз. Эми колдонмолорду которуштурганды үйрөнүп алыңыз."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"\"Артка\" жаңсоосу боюнча үйрөткүчтү бүтүрдүңүз."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Манжаңызды экрандын ылдый жагына өтө жакындатпай сүрүңүз."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"\"Артка\" жаң-нун сезгичтигин өзгөртүү үчүн Жөндөөлөргө өтүңүз"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Артка кайтуу үчүн экраныңыздын сол четинен сүрүп коюңуз"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Акыркы экранга кайтуу үчүн экранды сол жагынан ортосуна карай сүрүңүз."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Артка кайтуу үчүн экранды солдон оңго карай сүрүңүз"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Артка кайтуу үчүн экранды оңдон солго карай сүрүңүз"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Акыркы экранга кайтуу үчүн экранды сол жагынан ортосуна карай сүрүңүз."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Акыркы экранга кайтуу үчүн экранды оң жагынан ортосуна карай сүрүңүз. Азыр байкап көрүңүз."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Экранды ылдыйдан өйдө карай сүрүңүз."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Манжаңызды алганга чейин токтотпоңуз."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Экранды өйдө карай сүрүңүз."</string>
diff --git a/quickstep/res/values-lo/strings.xml b/quickstep/res/values-lo/strings.xml
index 714d38c..b6944eb 100644
--- a/quickstep/res/values-lo/strings.xml
+++ b/quickstep/res/values-lo/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"ແອັບທີ່ຄາດເດົາໄວ້: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ກະລຸນາກວດສອບວ່າທ່ານປັດຈາກຂອບຊ້າຍສຸດ."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ກະລຸນາກວດສອບວ່າທ່ານປັດຈາກຂອບຊ້າຍໄປຫາທາງກາງຂອງຈໍແລ້ວປ່ອຍ."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"ທ່ານສາມາດກັບໄປຫາໜ້າຈໍຫຼ້າສຸດໄດ້ໂດຍການປັດຈາກຂອບຂວາໄປຫາກາງຈໍ."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ກະລຸນາກວດສອບວ່າທ່ານປັດຈາກຂອບຂວາສຸດ."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ກະລຸນາກວດສອບວ່າທ່ານປັດຈາກຂອບຂວາໄປຫາທາງກາງຂອງຈໍແລ້ວປ່ອຍ."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"ທ່ານໃຊ້ທ່າທາງກັບຄືນສຳເລັດແລ້ວ. ຕໍ່ໄປ, ມາສຶກສາວິທີສະຫຼັບແອັບ."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"ທ່ານຮຽນຮູ້ວິທີປັດຈາກຊ້າຍເພື່ອກັບຄືນແລ້ວ."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"ທ່ານຮຽນຮູ້ວິທີປັດຈາກຂວາເພື່ອກັບຄືນແລ້ວ. ຕໍ່ໄປ, ມາສຶກສາວິທີສະຫຼັບແອັບ."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"ທ່ານໃຊ້ທ່າທາງກັບຄືນສຳເລັດແລ້ວ."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ກະລຸນາກວດສອບວ່າທ່ານບໍ່ໄດ້ປັດໃກ້ກັບທາງລຸ່ມຂອງໜ້າຈໍເກີນໄປ."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"ເພື່ອປ່ຽນຄວາມລະອຽດອ່ອນຂອງທ່າທາງກັບຄືນ, ໃຫ້ໄປຫາການຕັ້ງຄ່າ"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"ປັດຈາກຊ້າຍເພື່ອກັບຄືນ"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"ເພື່ອກັບຄືນໄປໜ້າຈໍຫຼ້າສຸດທີ່ທ່ານໃຊ້, ໃຫ້ປັດຈາກຂອບຊ້າຍໄປຫາກາງຈໍ."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"ປັດຈາກຊ້າຍເພື່ອກັບຄືນ"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"ປັດຈາກຂວາເພື່ອກັບຄືນ"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"ເພື່ອກັບຄືນໄປໜ້າຈໍຫຼ້າສຸດທີ່ທ່ານໃຊ້, ໃຫ້ປັດຈາກຂອບຊ້າຍໄປຫາກາງຈໍ."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"ທ່ານສາມາດກັບໄປຫາໜ້າຈໍຫຼ້າສຸດໄດ້ໂດຍການປັດຈາກຂອບຂວາໄປຫາກາງຈໍ. ລອງໃຊ້ມັນດຽວນີ້."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ກະລຸນາກວດສອບວ່າທ່ານປັດຂຶ້ນຈາກຂອບລຸ່ມສຸດຂອງໜ້າຈໍ."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"ກະລຸນາກວດສອບວ່າທ່ານບໍ່ຢຸດຊົ່ວຄາວກ່ອນປ່ອຍນິ້ວ."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"ກະລຸນາກວດສອບວ່າທ່ານປັດຂຶ້ນໄປຊື່ໆ."</string>
diff --git a/quickstep/res/values-lt/strings.xml b/quickstep/res/values-lt/strings.xml
index 55e46e7..d1c08f9 100644
--- a/quickstep/res/values-lt/strings.xml
+++ b/quickstep/res/values-lt/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Numatoma programa: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Turite perbraukti nuo kairiojo krašto."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Turite perbraukti nuo kairiojo krašto link ekrano vidurio ir pakelti pirštą."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Į ankstesnį ekraną taip pat galite grįžti, perbraukdami nuo dešiniojo krašto link ekrano vidurio."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Turite perbraukti nuo dešiniojo krašto."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Turite perbraukti nuo dešiniojo krašto link ekrano vidurio ir pakelti pirštą."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Atlikote grįžimo atgal gestą. Toliau sužinosite, kaip perjungti programas."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Išmokote, kaip sugrįžti perbraukiant iš kairės."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Išmokote, kaip sugrįžti perbraukiant iš dešinės. Toliau sužinosite, kaip perjungti programas."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Atlikote grįžimo atgal gestą."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Nebraukite per arti ekrano apačios."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Norėd. pak. grįžimo gesto jautr., eikite į sk. „Nustatymai“"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Perbraukite iš kairės, kad grįžtumėte"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Norėdami grįžti į ankstesnį ekraną, kuriame lankėtės, perbraukite nuo kairiojo krašto link ekrano vidurio."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Perbraukite iš kairės, kad grįžtumėte"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Perbraukite iš dešinės, kad grįžtumėte"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Norėdami grįžti į ankstesnį ekraną, kuriame lankėtės, perbraukite nuo kairiojo krašto link ekrano vidurio."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Į ankst. ekr. taip pat galite grįžti, perbraukdami nuo dešiniojo kr. link ekr. vidurio. Išb. dabar."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Turite perbraukti aukštyn nuo apatinio ekrano krašto."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Nepristabdykite prieš pakeldami pirštą."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Turite tiesiai perbraukti aukštyn."</string>
diff --git a/quickstep/res/values-lv/strings.xml b/quickstep/res/values-lv/strings.xml
index 216d1ce..e825a4e 100644
--- a/quickstep/res/values-lv/strings.xml
+++ b/quickstep/res/values-lv/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Prognozētā lietotne: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Jāvelk no pašas kreisās malas."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Jāvelk no ekrāna kreisās malas uz vidu un jāatlaiž."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Varat arī pāriet atpakaļ uz pēdējo ekrānu, velkot no labās malas uz ekrāna vidu."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Jāvelk no pašas labās malas."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Jāvelk no ekrāna labās malas uz vidu un jāatlaiž."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Jūs sekmīgi veicāt atgriešanās žestu. Tagad varat iemācīties, kā pārslēgt lietotnes."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Jūs esat apguvis, kā vilkt no kreisās malas, lai pārietu atpakaļ."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Jūs esat apguvis, kā vilkt no labās malas, lai pārietu atpakaļ. Tagad mācieties pārslēgt lietotnes."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Jūs sekmīgi veicāt atgriešanās žestu."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Nevelciet pārāk tuvu ekrāna apakšdaļai."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Atgriešanās žesta jutīguma līmeni varat mainīt iestatījumos."</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Lai pārietu atpakaļ, velciet no kreisās malas."</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Lai pārietu atpakaļ uz pēdējo izmantoto ekrānu, velciet no kreisās malas uz ekrāna vidu."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Lai pārietu atpakaļ, velciet no kreisās malas."</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Lai atgrieztos, velciet no labās malas"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Lai pārietu atpakaļ uz pēdējo izmantoto ekrānu, velciet no kreisās malas uz ekrāna vidu."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Varat arī pāriet atpakaļ uz pēdējo ekrānu, velkot no labās malas uz ekrāna vidu. Izmēģiniet tūlīt!"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Jāvelk augšup no ekrāna apakšmalas."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Pirms atlaišanas nepārtrauciet kustību."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Jāvelk tieši uz augšu."</string>
diff --git a/quickstep/res/values-mk/strings.xml b/quickstep/res/values-mk/strings.xml
index a39933f..1b92413 100644
--- a/quickstep/res/values-mk/strings.xml
+++ b/quickstep/res/values-mk/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Предвидена апликација: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Повлечете од подалечниот лев агол."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Повлечете од левиот раб кон средината на екранот и пуштете."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Може да се вратите на последниот екран и со повлекување од десниот раб кон средината на екранот."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Повлечете од подалечниот десен агол."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Повлечете од десниот раб кон средината на екранот и пуштете."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Завршивте со упатството за враќање назад. Следно, дознајте како да се префрлате помеѓу апликации."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Научивте како да повлекувате одлево за да одите назад."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Научивте како да повлекувате оддесно за да одите назад. Следно, дознајте како да се префрлате помеѓу апликации."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Завршивте со упатството за враќање назад."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Не повлекувајте преблиску до долниот раб на екранот."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"За да ја промените чувствителноста, одете во „Поставки“"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Повлечете одлево за да се вратите назад"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"За да се вратите на последниот екран на кој бевте, повлечете од левиот раб кон средината на екранот."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Повлечете одлево за да се вратите назад"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Повлечете оддесно за да се вратите назад"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"За да се вратите на последниот екран на кој бевте, повлечете од левиот раб кон средината на екранот."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Може да се вратите на последниот екран и со повлекување од десниот раб кон средината. Пробајте."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Повлечете нагоре од долниот раб на екранот."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Не правете пауза пред да пуштите."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Повлечете право нагоре."</string>
diff --git a/quickstep/res/values-ml/strings.xml b/quickstep/res/values-ml/strings.xml
index c2edf3e..3d90317 100644
--- a/quickstep/res/values-ml/strings.xml
+++ b/quickstep/res/values-ml/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"പ്രവചിച്ച ആപ്പ്: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ഇടത്തേയറ്റത്തെ അരികിൽ നിന്ന് സ്വെെപ്പ് ചെയ്യുന്നുണ്ടെന്ന് ഉറപ്പാക്കുക."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ഇടത്തേ അരികിൽ നിന്ന് സ്ക്രീനിന്റെ മധ്യഭാഗത്തേക്ക് സ്വെെപ്പ് ചെയ്ത് വിടുക."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"സ്ക്രീനിന്റെ വലത് അരികിൽ നിന്ന് നടുവിലേക്ക് സ്വൈപ്പ് ചെയ്തും മുൻ സ്ക്രീനിലേക്ക് പോകാം."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"വലത്തേയറ്റത്തെ അരികിൽ നിന്ന് സ്വെെപ്പ് ചെയ്യുന്നുണ്ടെന്ന് ഉറപ്പാക്കുക."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"വലത്തേ അരികിൽ നിന്ന് സ്ക്രീനിന്റെ മധ്യഭാഗത്തേക്ക് സ്വെെപ്പ് ചെയ്ത് വിടുക."</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"മടങ്ങുക ജെസ്ച്ചർ നിങ്ങൾ പൂർത്തിയാക്കി. അടുത്തത്, എങ്ങനെ ആപ്പുകൾ തമ്മിൽ മാറാമെന്ന് മനസ്സിലാക്കുക."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"മടങ്ങാൻ ഇടതുഭാഗത്ത് നിന്ന് സ്വൈപ്പ് ചെയ്യുന്ന രീതി നിങ്ങൾക്ക് മനസ്സിലായി."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"മടങ്ങാൻ വലതുഭാഗത്ത് നിന്ന് സ്വൈപ്പ് ചെയ്യുന്ന രീതി മനസ്സിലായി. ഇനി, ആപ്പുകൾ മാറുന്ന രീതി അറിയുക."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"മടങ്ങുക ജെസ്ച്ചർ നിങ്ങൾ പൂർത്തിയാക്കി."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"സ്ക്രീനിന്റെ ഏറ്റവും അടിഭാഗത്തേക്ക് സ്വെെപ്പ് ചെയ്യുന്നില്ലെന്ന് ഉറപ്പാക്കുക."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"ബാക്ക്ജെസ്റ്ററിന്റെ സെൻസിറ്റിവിറ്റി മാറ്റാൻ ക്രമീകരണത്തിൽ പോകൂ"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"പുറകോട്ട് പോകാൻ ഇടതുഭാഗത്ത് നിന്ന് സ്വൈപ്പ് ചെയ്യുക"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"മുമ്പത്തെ സ്ക്രീനിലേക്ക് പോകാൻ, സ്ക്രീനിന്റെ ഇടത് അരികിൽ നിന്ന് നടുവിലേക്ക് സ്വൈപ്പ് ചെയ്യുക."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"മടങ്ങാൻ ഇടതുഭാഗത്ത് നിന്ന് സ്വൈപ്പ് ചെയ്യുക"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"മടങ്ങാൻ വലതുഭാഗത്ത് നിന്ന് സ്വൈപ്പ് ചെയ്യുക"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"നിങ്ങളുടെ മുമ്പത്തെ സ്ക്രീനിലേക്ക് മടങ്ങാൻ, സ്ക്രീനിന്റെ ഇടത്തേ അരികിൽ നിന്ന് നടുവിലേക്ക് സ്വൈപ്പ് ചെയ്യുക."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"സ്ക്രീനിന്റെ വലത്തേ അരികിൽ നിന്ന് നടുവിലേക്ക് സ്വൈപ്പ് ചെയ്തും മുൻ സ്ക്രീനിലെത്താം. ഇതിന് ശ്രമിക്കൂ."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"സ്ക്രീനിന്റെ താഴത്തെ അരികിൽ നിന്ന് മുകളിലേക്ക് സ്വെെപ്പ് ചെയ്യുന്നുണ്ടെന്ന് ഉറപ്പാക്കുക."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"വിടുന്നതിന് മുമ്പ് നിങ്ങൾ താൽക്കാലികമായി നിർത്തുന്നില്ലെന്ന് ഉറപ്പാക്കുക."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"നേരെ മുകളിലേക്ക് സ്വെെപ്പ് ചെയ്യുന്നുണ്ടെന്ന് ഉറപ്പിക്കുക."</string>
diff --git a/quickstep/res/values-mn/strings.xml b/quickstep/res/values-mn/strings.xml
index d378c7b..43d9a27 100644
--- a/quickstep/res/values-mn/strings.xml
+++ b/quickstep/res/values-mn/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Таамаглаж буй апп: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Та зүүн захын булангаас шударна уу."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Та дэлгэцийн зүүн булангаас дунд хэсэг хүртэл шударч, суллаарай."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Та мөн дэлгэцийн баруун булангаас дунд хэсэг рүү шударснаар сүүлийн дэлгэц рүү буцах боломжтой."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Та баруун захын булангаас шударна уу."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Та дэлгэцийн баруун булангаас дунд хэсэг хүртэл шударч, суллаарай."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Та буцах зангааг гүйцэтгэлээ. Дараа нь аппуудыг хэрхэн сэлгэх талаар мэдэж авна уу."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Та буцахын тулд зүүнээс хэрхэн шудрахыг мэдэж авлаа."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Та буцахын тулд баруунаас хэрхэн шудрахыг мэдэж авлаа Дараа нь аппыг хэрхэн сэлгэхийг мэдэж аваарай."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Та буцах зангааг гүйцэтгэлээ."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Та дэлгэцийн доод хэсэгтэй хэт ойр бүү шудраарай."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Буцах зангааны мэдрэгшлийг өөрчлөх бол Тохиргоо руу очно уу"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Буцахын тулд зүүн талаас шударна уу"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Та байсан сүүлийн дэлгэц рүүгээ буцахын тулд дэлгэцийн баруун булангаас дунд хэсэг рүү шударна уу"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Буцахын тулд зүүн талаас шударна уу"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Буцахын тулд баруун талаас шударна уу"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Та байсан сүүлийн дэлгэц рүүгээ буцахын тулд дэлгэцийн зүүн булангаас дунд хэсэг рүү шударна уу."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Та мөн дэлгэцийн баруунаас дунд хэсэг рүү шударснаар сүүлийн дэлгэц рүү буцаж болно. Одоо туршина уу"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Та дэлгэцийн доод булангаас дээш шударна уу."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Та суллахаасаа өмнө түр зогсоож болохгүй."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Та чигээрээ шударна уу."</string>
diff --git a/quickstep/res/values-mr/strings.xml b/quickstep/res/values-mr/strings.xml
index 373d204..d5bcc8a 100644
--- a/quickstep/res/values-mr/strings.xml
+++ b/quickstep/res/values-mr/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"पूर्वानुमान केलेले अॅप: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"तुम्ही स्क्रीनच्या अगदी डाव्या कडेपासून स्वाइप करत आहात याची खात्री करा."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"तुम्ही स्क्रीनच्या डाव्या कडेपासून मध्यावर स्वाइप करून बोट उचलत आहात याची खात्री करा."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"तुम्ही स्क्रीनच्या उजव्या कडेपासून मध्याभागी स्वाइप करून मागील स्क्रीनवर परतदेखील जाऊ शकता."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"तुम्ही स्क्रीनच्या अगदी उजव्या कडेपासून स्वाइप करत आहात याची खात्री करा."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"तुम्ही स्क्रीनच्या उजव्या कडेपासून मध्यावर स्वाइप करून बोट उचलत आहात याची खात्री करा."</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"तुम्ही गो बॅक जेश्चर पूर्ण केले. आता, ॲप्स कशी स्विच करायची ते जाणून घ्या."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"तुम्ही मागे जाण्यासाठी डावीकडून कसे स्वाइप करायचे ते जाणून घेतले."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"मागे जाण्यासाठी उजवीकडून कसे स्वाइप करावे ते शिकलात. आता पुढे, ॲप्स कशी स्विच करायची ते जाणून घ्या."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"तुम्ही गो बॅक जेश्चर पूर्ण केले."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"तुम्ही स्क्रीनच्या तळाच्या अगदी जवळून स्वाइप करत नाही याची खात्री करा."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"बॅक जेश्चरची संवेदनशीलता बदलण्यासाठी, सेटिंग्ज वर जा"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"मागे जाण्यासाठी डावीकडून स्वाइप करा"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"तुम्ही होतात त्या मागील स्क्रीनवर परत जाण्यासाठी, स्क्रीनच्या डाव्या कडेपासून मध्याभागी स्वाइप करा."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"मागे जाण्यासाठी डावीकडून स्वाइप करा"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"मागे जाण्यासाठी उजवीकडून स्वाइप करा"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"तुम्ही होतात त्या मागील स्क्रीनवर परत जाण्यासाठी, स्क्रीनच्या डाव्या कडेपासून मध्याभागी स्वाइप करा."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"स्क्रीनच्या उजव्या कडेपासून मध्याभागी स्वाइप करून मागील स्क्रीनवर परतदेखील जाऊ शकता. आता करून पहा."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"तुम्ही स्क्रीनच्या तळाच्या कडेपासून वर स्वाइप करत आहात याची खात्री करा."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"तुम्ही स्क्रीनवरून बोट उचलण्यापूर्वी ते थांबवत नाही याची खात्री करा."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"तुम्ही सरळ वर स्वाइप करत आहात याची खात्री करा."</string>
diff --git a/quickstep/res/values-ms/strings.xml b/quickstep/res/values-ms/strings.xml
index 507fb43..aa81471 100644
--- a/quickstep/res/values-ms/strings.xml
+++ b/quickstep/res/values-ms/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Apl yang diramalkan: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Pastikan anda meleret dari hujung sebelah kiri."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Pastikan anda meleret dari tepi sebelah kiri ke tengah skrin dan lepaskan."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Anda juga boleh kembali ke skrin terakhir dengan meleret dari tepi sebelah kanan ke tengah skrin."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Pastikan anda meleret dari hujung sebelah kanan."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Pastikan anda meleret dari tepi sebelah kanan ke tengah skrin dan lepaskan."</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"Anda telah melengkapkan gerak isyarat undur. Seterusnya, ketahui cara menukar apl."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Anda belajar cara meleret dari kiri untuk kembali."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Anda belajar cara meleret dari kanan untuk kembali. Seterusnya, ketahui cara menukar apl."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Anda telah melengkapkan gerak isyarat undur."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Pastikan anda tidak meleret terlalu dekat dengan bahagian bawah skrin."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Utk mengubah kepekaan gerak isyarat undur, pergi ke Tetapan"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"Leret dari kiri untuk kembali"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Untuk kembali ke skrin terakhir yang anda berada, leret dari tepi sebelah kiri ke tengah skrin."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Leret dari kiri untuk kembali"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Leret dari kanan untuk kembali"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Untuk kembali ke skrin terakhir yang anda berada, leret dari tepi sebelah kiri ke tengah skrin."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Anda juga boleh kembali ke skrin terakhir dengan meleret dari tepi sebelah kanan ke tengah skrin. Cubalah sekarang."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Pastikan anda meleret ke atas dari tepi sebelah bawah skrin."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Pastikan anda tidak menjeda sebelum melepaskan gerak isyarat tersebut."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Pastikan anda meleret terus ke atas."</string>
diff --git a/quickstep/res/values-my/strings.xml b/quickstep/res/values-my/strings.xml
index 02042b4..92eb25b 100644
--- a/quickstep/res/values-my/strings.xml
+++ b/quickstep/res/values-my/strings.xml
@@ -23,7 +23,7 @@
<string name="recent_task_option_freeform" msgid="48863056265284071">"အလွတ်ပုံစံ"</string>
<string name="recents_empty_message" msgid="7040467240571714191">"မကြာမီကဖွင့်ထားသည်များ မရှိပါ"</string>
<string name="accessibility_app_usage_settings" msgid="6312864233673544149">"အက်ပ်အသုံးပြုမှု ဆက်တင်များ"</string>
- <string name="recents_clear_all" msgid="5328176793634888831">"အားလုံးကို ရှင်းရန်"</string>
+ <string name="recents_clear_all" msgid="5328176793634888831">"အားလုံးထုတ်ပစ်ရန်"</string>
<string name="accessibility_recent_apps" msgid="4058661986695117371">"လတ်တလောသုံး အက်ပ်များ"</string>
<string name="task_contents_description_with_remaining_time" msgid="4479688746574672685">"<xliff:g id="TASK_DESCRIPTION">%1$s</xliff:g>၊ <xliff:g id="REMAINING_TIME">%2$s</xliff:g>"</string>
<string name="shorter_duration_less_than_one_minute" msgid="4722015666335015336">"< ၁ မိနစ်"</string>
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"ကြိုတင်မှန်းဆထားသော အက်ပ်− <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ဘယ်ဘက်အစွန် ခပ်လှမ်းလှမ်းမှ ပွတ်ဆွဲကြောင်း သေချာပါစေ။"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ဘယ်ဘက်အစွန်မှ ဖန်သားပြင်အလယ်သို့ ပွတ်ဆွဲပြီး လွှတ်လိုက်ကြောင်း သေချာပါစေ။"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"ဖန်သားပြင်၏ညာအစွန်းမှ အလယ်သို့ပွတ်ဆွဲ၍ ပြီးခဲ့သောဖန်သားပြင်သို့လည်း ပြန်သွားနိုင်သည်။"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ညာဘက်အစွန် ခပ်လှမ်းလှမ်းမှ ပွတ်ဆွဲကြောင်း သေချာပါစေ။"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ညာဘက်အစွန်မှ ဖန်သားပြင်အလယ်သို့ ပွတ်ဆွဲပြီး လွှတ်လိုက်ကြောင်း သေချာပါစေ။"</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"နောက်ဆုတ်လက်ဟန် ရှင်းလင်းပို့ချချက် ပြီးပါပြီ။ နောက်အဆင့်တွင် အက်ပ်များပြောင်းနည်းကို လေ့လာပါ။"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"နောက်ပြန်သွားရန် ဘယ်ဘက်မှပွတ်ဆွဲနည်းကို သိသွားပါပြီ။"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"နောက်ပြန်သွားရန် ညာဘက်မှပွတ်ဆွဲနည်းကို သိသွားပါပြီ။ နောက်အဆင့်တွင် အက်ပ်များပြောင်းနည်းကို လေ့လာပါ။"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"နောက်ဆုတ်လက်ဟန် ရှင်းလင်းပို့ချချက် ပြီးပါပြီ။"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ဖန်သားပြင် အောက်ခြေနှင့် အလွန်နီးကပ်စွာ ပွတ်ဆွဲခြင်းမရှိကြောင်း သေချာပါစေ။"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"နောက်ဆုတ်လက်ဟန်၏ အာရုံခံစွမ်းကိုပြောင်းရန် ‘ဆက်တင်များ’ သို့ သွားပါ"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"နောက်သို့ပြန်သွားရန် ဘယ်ဘက်မှ ပွတ်ဆွဲပါ"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"သင်ရှိခဲ့သည့် ပြီးခဲ့သောဖန်သားပြင်သို့ ပြန်သွားရန် ဖန်သားပြင်၏ဘယ်အစွန်းမှ အလယ်သို့ပွတ်ဆွဲပါ။"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"နောက်သို့ပြန်သွားရန် ဘယ်ဘက်မှ ပွတ်ဆွဲပါ"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"နောက်သို့ပြန်သွားရန် ညာဘက်မှ ပွတ်ဆွဲပါ"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"သင်ရှိခဲ့သည့် ပြီးခဲ့သောဖန်သားပြင်သို့ ပြန်သွားရန် ဖန်သားပြင်၏ဘယ်အစွန်းမှ အလယ်သို့ပွတ်ဆွဲပါ။"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"ဖန်သားပြင်၏ညာအစွန်းမှ အလယ်သို့ပွတ်ဆွဲ၍ ပြီးခဲ့သောဖန်သားပြင်သို့လည်း ပြန်သွားနိုင်သည်။ ယခုပဲ စမ်းကြည့်လိုက်ပါ။"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ဖန်သားပြင် အောက်ခြေအစွန်မှ အပေါ်သို့ ပွတ်ဆွဲကြောင်း သေချာပါစေ။"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"လက်မလွှတ်ခင် ခဏရပ်ခြင်းမရှိကြောင်း သေချာပါစေ။"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"အပေါ်တည့်တည့်သို့ ပွတ်ဆွဲကြောင်း သေချာပါစေ။"</string>
diff --git a/quickstep/res/values-nb/strings.xml b/quickstep/res/values-nb/strings.xml
index 6276c45..fd85ab1 100644
--- a/quickstep/res/values-nb/strings.xml
+++ b/quickstep/res/values-nb/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Foreslått app: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Sørg for at du sveiper fra kanten helt til venstre."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Sørg for at du sveiper fra den venstre kanten til midten av skjermen og slipper."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Du kan også gå tilbake til forrige skjerm ved å sveipe fra høyre kant til midten av skjermen."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Sørg for at du sveiper fra kanten helt til høyre."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Sørg for at du sveiper fra den høyre kanten til midten av skjermen og slipper."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Du har fullført bevegelsen for å gå tilbake. I neste trinn lærer du hvordan du bytter app."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Du har lært hvordan du sveiper fra venstre for å gå tilbake."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Du har lært hvordan du sveiper fra høyre for å gå tilbake. I neste trinn lærer du å bytte app."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Du har fullført bevegelsen for å gå tilbake."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Sørg for at du ikke sveiper for nær bunnen av skjermen."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Gå til Innstillinger for å endre tilbakebevegelsefølsomheten"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Sveip fra venstre for å gå tilbake"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"For å gå tilbake til den forrige skjermen du var på, sveip fra venstre kant til midten av skjermen."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Sveip fra venstre for å gå tilbake"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Sveip fra høyre for å gå tilbake"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"For å gå tilbake til den forrige skjermen du var på, sveip fra venstre kant til midten av skjermen."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Du kan også gå tilbake til forrige skjerm ved å sveipe fra høyre kant til midten. Prøv nå."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Sørg for at du sveiper opp fra den nederste kanten av skjermen."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Sørg for at du ikke setter på pause før du slipper."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Sørg for at du sveiper rett opp."</string>
diff --git a/quickstep/res/values-ne/strings.xml b/quickstep/res/values-ne/strings.xml
index 1c53c2f..f1351f1 100644
--- a/quickstep/res/values-ne/strings.xml
+++ b/quickstep/res/values-ne/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"पूर्वानुमान गरिएको एप: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"स्क्रिनको सबैभन्दा बायाँ किनाराबाट स्वाइप गर्नुहोस्।"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"स्क्रिनको बायाँ किनाराबाट मध्य भागसम्म स्वाइप गर्नुहोस् अनि औँला उठाउनुहोस्।"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"तपाईं स्क्रिनको दायाँ किनाराबाट मध्य भागसम्म स्वाइप गरेर पनि यसअघिको स्क्रिनमा फर्कन सक्नुहुन्छ।"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"स्क्रिनको सबैभन्दा दायाँ किनाराबाट स्वाइप गर्नुहोस्।"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"स्क्रिनको दायाँ किनाराबाट मध्य भागसम्म स्वाइप गर्नुहोस् अनि औँला उठाउनुहोस्।"</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"तपाईंले \'पछाडि जानुहोस्\' नामक इसारा प्रयोग गर्ने तरिका सिक्नुभयो। अब एउटा एपबाट अर्को एपमा जाने तरिका सिक्नुहोस्।"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"तपाईंले स्क्रिनको बायाँ किनाराबाट स्वाइप गरेर अघिल्लो स्क्रिनमा फर्कने तरिका सिक्नुभयो।"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"तपाईंले स्क्रिनको दायाँ किनाराबाट स्वाइप गरेर अघिल्लो स्क्रिनमा फर्कने तरिका सिक्नुभयो। अब एउटा एपबाट अर्को एपमा जाने तरिका सिक्नुहोस्।"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"तपाईंले \'पछाडि जानुहोस्\' नामक इसारा प्रयोग गर्ने तरिका सिक्नुभयो।"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"स्क्रिनको फेदको धेरै नजिकसम्म स्वाइप नगर्नुहोस्।"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"\'पछाडि\' नामक इसाराको संवेदनशीलता बदल्न सेटिङमा जानुहोस्"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"पछाडि जान बायाँ किनाराबाट स्वाइप गर्नुहोस्"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"तपाईं यसअघि जुन स्क्रिनमा हुनुहुन्थ्यो त्यो फर्कन स्क्रिनको बायाँ किनाराबाट मध्य भागसम्म स्वाइप गर्नुहोस्।"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"पछाडि जान बायाँ किनाराबाट स्वाइप गर्नुहोस्"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"पछाडि जान दायाँतिरबाट स्वाइप गर्नुहोस्"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"यसअघिको स्क्रिनमा फर्कन स्क्रिनको बायाँ किनाराबाट मध्य भागसम्म स्वाइप गर्नुहोस्।"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"तपाईं स्क्रिनको दायाँ किनाराबाट मध्य भागसम्म स्वाइप गरेर पनि यसअघिको स्क्रिनमा फर्कन सक्नुहुन्छ। अहिले नै यसो गरी हेर्नुहोस्।"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"स्क्रिनको फेदबाट माथितिर स्वाइप गर्नुहोस्।"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"औँला उठाउनुअघि नरोकिनुहोस्।"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"सीधै माथितिर स्वाइप गर्नुहोस्।"</string>
diff --git a/quickstep/res/values-nl/strings.xml b/quickstep/res/values-nl/strings.xml
index ca732e9..d97c82b 100644
--- a/quickstep/res/values-nl/strings.xml
+++ b/quickstep/res/values-nl/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Voorspelde app: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Swipe helemaal vanaf de linkerrand."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Swipe vanaf de linkerrand naar het midden van het scherm en laat los."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Je kunt ook teruggaan naar het laatste scherm door vanaf de rechterkant naar het midden van het scherm te swipen."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Swipe helemaal vanaf de rechterrand."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Swipe vanaf de rechterrand naar het midden van het scherm en laat los."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Je weet nu hoe je het gebaar Terug maakt. Ontdek als volgende hoe je tussen apps schakelt."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Je weet nu hoe je vanaf links kunt swipen om terug te gaan."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Je weet nu hoe je vanaf rechts kunt swipen om terug te gaan. Ontdek nu hoe je tussen apps schakelt."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Je weet nu hoe je het gebaar Terug maakt."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Swipe niet te dicht bij de onderkant van het scherm."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Open Instellingen om de gevoeligheid van Terug te wijzigen"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Swipe vanaf de linkerkant om terug te gaan"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Swipe vanaf de linkerkant naar het midden van het scherm om terug te gaan naar het vorige scherm."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Swipe vanaf de linkerkant om terug te gaan"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Swipe vanaf de rechterkant om terug te gaan"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Swipe vanaf de linkerkant naar het midden van het scherm om terug te gaan naar het vorige scherm."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Je kunt ook teruggaan naar het laatste scherm door vanaf de rechterkant naar het midden van het scherm te swipen. Probeer het nu."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Swipe vanaf de onderrand van het scherm omhoog."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Pauzeer niet voordat je loslaat."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Swipe recht omhoog."</string>
diff --git a/quickstep/res/values-or/strings.xml b/quickstep/res/values-or/strings.xml
index 3159871..24c8f74 100644
--- a/quickstep/res/values-or/strings.xml
+++ b/quickstep/res/values-or/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"ପୂର୍ବାନୁମାନ କରାଯାଇଥିବା ଆପ୍: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ଆପଣ ଦୂର-ବାମ ଧାରରୁ ସ୍ୱାଇପ୍ କରୁଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ।"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ଆପଣ ସ୍କ୍ରିନର ବାମ ଧାରରୁ ମଝିକୁ ସ୍ୱାଇପ୍ କରି ଛାଡ଼ି ଦେଉଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ।"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"ଆପଣ ସ୍କ୍ରିନର ଡାହାଣ ଧାରରୁ ମଝିକୁ ସ୍ୱାଇପ୍ କରି ପୂର୍ବ ସ୍କ୍ରିନକୁ ମଧ୍ୟ ଫେରିପାରିବେ।"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ଆପଣ ଦୂର-ଡାହାଣ ଧାରରୁ ସ୍ୱାଇପ୍ କରୁଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ।"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ଆପଣ ସ୍କ୍ରିନର ଡାହାଣ ଧାରରୁ ମଝିକୁ ସ୍ୱାଇପ୍ କରି ଛାଡ଼ି ଦେଉଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ।"</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"ଆପଣ \'ପଛକୁ ଫେରନ୍ତୁ\' ଜେଶ୍ଚର୍ ସମ୍ପୂର୍ଣ୍ଣ କରିଛନ୍ତି। ତା\'ପରେ, ଆପଗୁଡ଼ିକୁ କିପରି ସ୍ୱିଚ୍ କରିବେ ତାହା ଜାଣନ୍ତୁ।"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"ପଛକୁ ଫେରିବା ପାଇଁ କିପରି ବାମ ଧାରରୁ ସ୍ୱାଇପ୍ କରିବେ ତାହା ଆପଣ ଜାଣିଲେ।"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"ଆପଣ ଡାହାଣ ଧାରରୁ ସ୍ୱାଇପ୍ କରି ପଛକୁ ଫେରିବା ଜାଣିଲେ। ତା\'ପରେ, ଆପଗୁଡ଼ିକୁ କିପରି ସ୍ୱିଚ୍ କରିବେ ତାହା ଜାଣନ୍ତୁ।"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"ଆପଣ \'ପଛକୁ ଫେରନ୍ତୁ\' ଜେଶ୍ଚର୍ ସମ୍ପୂର୍ଣ୍ଣ କରିଛନ୍ତି।"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ଆପଣ ସ୍କ୍ରିନର ତଳଭାଗର ଅତି ନିକଟରୁ ସ୍ୱାଇପ୍ କରୁନଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ।"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"ପଛକୁ ଫେରିବା ଜେଶ୍ଚରର ସମ୍ବେଦନଶୀଳତା ବଦଳାଇବାକୁ ସେଟିଂସକୁ ଯାଆନ୍ତୁ"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"ପଛକୁ ଫେରିବା ପାଇଁ ବାମ ଧାରରୁ ସ୍ୱାଇପ୍ କରନ୍ତୁ"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"ଆପଣ ଯେଉଁ ପୂର୍ବ ସ୍କ୍ରିନରେ ଥିଲେ ସେହି ସ୍କ୍ରିନକୁ ଫେରିବା ପାଇଁ, ସ୍କ୍ରିନର ବାମ ଧାରରୁ ମଝିକୁ ସ୍ୱାଇପ୍ କରନ୍ତୁ।"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"ପଛକୁ ଫେରିବା ପାଇଁ ବାମ ଧାରରୁ ସ୍ୱାଇପ୍ କରନ୍ତୁ"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"ପଛକୁ ଫେରିବା ପାଇଁ ଡାହାଣ ଧାରରୁ ସ୍ୱାଇପ୍ କରନ୍ତୁ"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"ଆପଣ ଯେଉଁ ପୂର୍ବ ସ୍କ୍ରିନରେ ଥିଲେ ସେହି ସ୍କ୍ରିନକୁ ଫେରିବା ପାଇଁ, ସ୍କ୍ରିନର ବାମ ଧାରରୁ ମଝିକୁ ସ୍ୱାଇପ୍ କରନ୍ତୁ।"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"ଆପଣ ସ୍କ୍ରିନର ଡାହାଣ ଧାରରୁ ମଝିକୁ ସ୍ୱାଇପ୍ କରି ପୂର୍ବ ସ୍କ୍ରିନକୁ ବି ଫେରିପାରିବେ। ଏବେ ଏହାକୁ ବ୍ୟବହାର କରନ୍ତୁ।"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ଆପଣ ସ୍କ୍ରିନର ତଳ ଧାରରୁ ଉପରକୁ ସ୍ୱାଇପ୍ କରୁଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ।"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"ଆପଣ ଛାଡ଼ିବା ପୂର୍ବରୁ ବିରତ କରୁନଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ।"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"ଆପଣ ସିଧା ଉପରକୁ ସ୍ୱାଇପ୍ କରୁଥିବା ସୁନିଶ୍ଚିତ କରନ୍ତୁ।"</string>
diff --git a/quickstep/res/values-pa/strings.xml b/quickstep/res/values-pa/strings.xml
index 801beb7..0dc125a 100644
--- a/quickstep/res/values-pa/strings.xml
+++ b/quickstep/res/values-pa/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"ਪੂਰਵ ਅਨੁਮਾਨਿਤ ਐਪ: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ਇਹ ਪੱਕਾ ਕਰੋ ਕਿ ਤੁਸੀਂ ਦੂਰ-ਖੱਬੇ ਕਿਨਾਰੇ ਤੋਂ ਸਵਾਈਪ ਕਰਦੇ ਹੋ।"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ਇਹ ਪੱਕਾ ਕਰੋ ਕਿ ਤੁਸੀਂ ਖੱਬੇ ਕਿਨਾਰੇ ਤੋਂ ਸਕ੍ਰੀਨ ਦੇ ਵਿਚਕਾਰ ਤੱਕ ਸਵਾਈਪ ਕਰਦੇ ਹੋ ਅਤੇ ਛੱਡ ਦਿੰਦੇ ਹੋ।"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"ਤੁਸੀਂ ਸੱਜੇ ਕਿਨਾਰੇ ਤੋਂ ਸਕ੍ਰੀਨ ਦੇ ਵਿਚਕਾਰ ਤੱਕ ਸਵਾਈਪ ਕਰਕੇ ਪਿਛਲੀ ਸਕ੍ਰੀਨ \'ਤੇ ਵਾਪਸ ਜਾ ਸਕਦੇ ਹੋ।"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ਇਹ ਪੱਕਾ ਕਰੋ ਕਿ ਤੁਸੀਂ ਦੂਰ-ਸੱਜੇ ਕਿਨਾਰੇ ਤੋਂ ਸਵਾਈਪ ਕਰਦੇ ਹੋ।"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ਇਹ ਪੱਕਾ ਕਰੋ ਕਿ ਤੁਸੀਂ ਸੱਜੇ ਕਿਨਾਰੇ ਤੋਂ ਸਕ੍ਰੀਨ ਦੇ ਵਿਚਕਾਰ ਤੱਕ ਸਵਾਈਪ ਕਰਦੇ ਹੋ ਅਤੇ ਛੱਡ ਦਿੰਦੇ ਹੋ।"</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"ਤੁਸੀਂ \'ਵਾਪਸ ਜਾਓ\' ਦਾ ਇਸ਼ਾਰਾ ਪੂਰਾ ਕੀਤਾ। ਅੱਗੇ, ਜਾਣੋ ਕਿ ਐਪਾਂ ਵਿਚਾਲੇ ਅਦਲਾ-ਬਦਲੀ ਕਿਵੇਂ ਕਰਨੀ ਹੈ।"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"ਤੁਸੀਂ ਪਿੱਛੇ ਜਾਣ ਲਈ ਖੱਬੇ ਪਾਸੇ ਤੋਂ ਸਵਾਈਪ ਕਰਨ ਦਾ ਤਰੀਕਾ ਜਾਣਿਆ।"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"ਤੁਸੀਂ ਪਿੱਛੇ ਜਾਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਤੋਂ ਸਵਾਈਪ ਕਰਨ ਦਾ ਤਰੀਕਾ ਜਾਣਿਆ। ਅੱਗੇ, ਐਪਾਂ ਵਿਚਾਲੇ ਅਦਲਾ-ਬਦਲੀ ਕਰਨ ਦਾ ਤਰੀਕਾ ਜਾਣੋ।"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"ਤੁਸੀਂ \'ਵਾਪਸ ਜਾਓ\' ਦਾ ਇਸ਼ਾਰਾ ਪੂਰਾ ਕੀਤਾ।"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ਇਹ ਪੱਕਾ ਕਰੋ ਕਿ ਤੁਸੀਂ ਸਕ੍ਰੀਨ ਦੇ ਹੇਠਲੇ ਹਿੱਸੇ ਦੇ ਬਹੁਤ ਨੇੜੇ ਸਵਾਈਪ ਨਾ ਕਰੋ।"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"ਪਿੱਛੇ ਜਾਣ ਦੇ ਸੰਕੇਤ ਦੀ ਸੰਵੇਦਨਸ਼ੀਲਤਾ ਬਦਲਣ ਲਈ, ਸੈਟਿੰਗਾਂ \'ਤੇ ਜਾਓ"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"ਪਿੱਛੇ ਜਾਣ ਲਈ ਖੱਬੇ ਪਾਸੇ ਤੋਂ ਸਵਾਈਪ ਕਰੋ"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"ਜਿੱਥੇ ਤੁਸੀਂ ਸੀ ਉਸ ਸਕ੍ਰੀਨ \'ਤੇ ਵਾਪਸ ਜਾਣ ਲਈ, ਖੱਬੇ ਕਿਨਾਰੇ ਤੋਂ ਸਕ੍ਰੀਨ ਦੇ ਵਿਚਕਾਰ ਤੱਕ ਸਵਾਈਪ ਕਰੋ।"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"ਪਿੱਛੇ ਜਾਣ ਲਈ ਖੱਬੇ ਪਾਸੇ ਤੋਂ ਸਵਾਈਪ ਕਰੋ"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"ਪਿੱਛੇ ਜਾਣ ਲਈ ਸੱਜੇ ਪਾਸੇ ਤੋਂ ਸਵਾਈਪ ਕਰੋ"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"ਜਿੱਥੇ ਤੁਸੀਂ ਸੀ ਉਸ ਪਿਛਲੀ ਸਕ੍ਰੀਨ \'ਤੇ ਵਾਪਸ ਜਾਣ ਲਈ, ਖੱਬੇ ਕਿਨਾਰੇ ਤੋਂ ਸਕ੍ਰੀਨ ਦੇ ਵਿਚਕਾਰ ਤੱਕ ਸਵਾਈਪ ਕਰੋ।"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"ਤੁਸੀਂ ਸੱਜੇ ਕਿਨਾਰੇ ਤੋਂ ਸਕ੍ਰੀਨ ਦੇ ਵਿਚਕਾਰ ਤੱਕ ਸਵਾਈਪ ਕਰਕੇ ਪਿਛਲੀ ਸਕ੍ਰੀਨ \'ਤੇ ਵਾਪਸ ਜਾ ਸਕਦੇ ਹੋ। ਹੁਣੇ ਵਰਤ ਕੇ ਦੇਖੋ।"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ਇਹ ਪੱਕਾ ਕਰੋ ਕਿ ਤੁਸੀਂ ਸਕ੍ਰੀਨ ਦੇ ਹੇਠਲੇ ਕਿਨਾਰੇ ਤੋਂ ਉੱਪਰ ਵੱਲ ਸਵਾਈਪ ਕਰਦੇ ਹੋ।"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"ਪੱਕਾ ਕਰੋ ਕਿ ਸਕ੍ਰੀਨ ਨੂੰ ਛੱਡਣ ਤੋਂ ਪਹਿਲਾਂ ਰੁਕੋ ਨਾ।"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"ਇਹ ਪੱਕਾ ਕਰੋ ਕਿ ਤੁਸੀਂ ਸਿੱਧੇ ਉੱਪਰ ਵੱਲ ਸਵਾਈਪ ਕਰਦੇ ਹੋ।"</string>
diff --git a/quickstep/res/values-pl/strings.xml b/quickstep/res/values-pl/strings.xml
index cb0953b..db1d5ed 100644
--- a/quickstep/res/values-pl/strings.xml
+++ b/quickstep/res/values-pl/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Przewidywana aplikacja: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Pamiętaj, aby przesuwać palcem od samej lewej krawędzi."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Pamiętaj, aby przesuwać palcem od lewej krawędzi do środka ekranu, a potem podnieść palec."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Możesz także wrócić do ostatniego ekranu, przesuwając palcem od prawej krawędzi do środka ekranu."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Pamiętaj, aby przesuwać palcem od samej prawej krawędzi."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Pamiętaj, aby przesuwać palcem od prawej krawędzi do środka ekranu, a potem podnieść palec."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Gest przejścia wstecz został opanowany. Poćwicz teraz przełączanie aplikacji."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Wiesz już, jak przesuwać palcem od lewej strony, aby wrócić."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Wiesz już, jak przesuwać palcem od prawej strony, aby wrócić. Poćwicz teraz przełączanie aplikacji."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Gest przejścia wstecz został opanowany."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Pamiętaj, aby nie przesuwać palcem zbyt blisko dolnej części ekranu."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Czułość gestu cofania możesz zmienić w Ustawieniach"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Aby wrócić, przesuń palcem od lewej strony"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Aby wrócić do ostatniego ekranu, przesuń palcem od lewej krawędzi do środka ekranu."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Aby wrócić, przesuń palcem od lewej strony"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Aby wrócić, przesuń palcem od prawej strony"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Aby wrócić do ostatniego ekranu, przesuń palcem od lewej krawędzi do środka ekranu."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Możesz także wrócić do ostatniego ekranu, przesuwając palcem od prawej krawędzi do środka ekranu. Spróbuj to zrobić teraz."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Pamiętaj, aby przesuwać palcem od dolnej krawędzi ekranu."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Pamiętaj, aby przed podniesieniem palca nie było przerwy."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Pamiętaj, aby przesuwać palcem prosto do góry."</string>
diff --git a/quickstep/res/values-pt-rPT/strings.xml b/quickstep/res/values-pt-rPT/strings.xml
index 16f6349..0163602 100644
--- a/quickstep/res/values-pt-rPT/strings.xml
+++ b/quickstep/res/values-pt-rPT/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"App prevista: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Garanta que desliza rapidamente com o dedo a partir da extremidade esquerda."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Garanta que desliza rapidamente com o dedo do limite esquerdo até ao centro do ecrã e solta."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Também pode voltar ao último ecrã ao deslizar rapidamente da direita para o centro do ecrã."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Garanta que desliza rapidamente com o dedo a partir da extremidade direita."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Garanta que desliza rapidamente com o dedo do limite direito até ao centro do ecrã e solta."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Concluiu o gesto para retroceder. A seguir, saiba como alternar entre apps."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Aprendeu a deslizar rapidamente a partir da esquerda para retroceder."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Aprendeu a deslizar a partir da direita para retroceder. A seguir, saiba como alternar entre apps."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Concluiu o gesto para retroceder."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Garanta que não desliza rapidamente com o dedo demasiado perto da parte inferior do ecrã."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Altere a sensibilidade do gesto para voltar nas Definições."</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Deslize rapidamente a partir da esquerda para retroceder"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Para voltar ao último ecrã, deslize rapidamente a partir do limite esquerdo para o centro do ecrã."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Deslize rapidamente a partir da esquerda para retroceder"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Deslize rapidamente a partir da direita para retroceder"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Para voltar ao último ecrã, deslize rapidamente a partir do limite esquerdo para o centro do ecrã."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Também pode voltar ao último ecrã ao deslizar da direita para o centro do ecrã. Experimente agora."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Garanta que desliza rapidamente com o dedo a partir do limite inferior do ecrã."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Garanta que não faz uma pausa antes de soltar."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Garanta que desliza rapidamente com o dedo para cima."</string>
diff --git a/quickstep/res/values-pt/strings.xml b/quickstep/res/values-pt/strings.xml
index cbea6d9..fa43bcb 100644
--- a/quickstep/res/values-pt/strings.xml
+++ b/quickstep/res/values-pt/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"App previsto: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Deslize da borda esquerda."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Deslize da borda esquerda até o meio da tela e solte."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Para voltar à tela anterior, deslize da borda direita até o meio da tela."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Deslize da borda direita."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Deslize da borda direita até o meio da tela e solte."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Você concluiu o gesto para voltar. A seguir, aprenda a trocar de app."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Você aprendeu a deslizar da esquerda para voltar."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Você aprendeu a deslizar da direita para voltar. A seguir, aprenda a trocar de app."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Você concluiu o gesto para voltar."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Não deslize perto demais da parte inferior da tela."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Mude a sensibilidade do gesto de voltar nas configurações"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Deslize da esquerda para voltar"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Para voltar à tela anterior, deslize da borda esquerda até o meio da tela."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Deslize da esquerda para voltar"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Deslizar da direita para voltar"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Para voltar à tela anterior, deslize da borda esquerda até o meio da tela."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Para voltar à tela anterior, deslize da borda direita até o meio da tela. Faça um teste."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Deslize da borda inferior da tela para cima."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Não pare antes de soltar."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Deslize para cima."</string>
diff --git a/quickstep/res/values-ro/strings.xml b/quickstep/res/values-ro/strings.xml
index 2b78e8b..1e75cb5 100644
--- a/quickstep/res/values-ro/strings.xml
+++ b/quickstep/res/values-ro/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Aplicația estimată: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Glisați dinspre marginea stângă îndepărtată."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Glisați dinspre marginea stângă spre mijlocul ecranului și eliberați."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Reveniți la ultimul ecran glisând de la marginea dreaptă spre mijlocul ecranului."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Glisați dinspre marginea dreaptă îndepărtată."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Glisați dinspre marginea dreaptă spre mijlocul ecranului și eliberați."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Ați finalizat gestul „înapoi”. În continuare, aflați cum să comutați între aplicații."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Ați învățat cum să glisați dinspre stânga pentru a reveni."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Ați învățat cum să glisați dinspre dreapta pentru a reveni. În continuare, aflați cum să comutați aplicațiile."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Ați finalizat gestul „înapoi”."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Nu glisați prea aproape de partea de jos a ecranului."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Schimbați sensibilitatea gestului „Înapoi” accesând Setările"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Glisați dinspre stânga pentru a reveni"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Pentru a reveni la ultimul ecran accesat, glisați de la marginea stângă spre mijlocul ecranului."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Glisați dinspre stânga pentru a reveni"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Glisați dinspre dreapta pentru a reveni"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Pentru a reveni la ultimul ecran accesat, glisați de la marginea stângă spre mijlocul ecranului."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Reveniți la ultimul ecran glisând de la marginea dreaptă spre mijlocul ecranului. Încercați acum."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Glisați în sus dinspre marginea de jos a ecranului."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Nu întrerupeți gestul înainte de a elibera."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Glisați direct în sus."</string>
diff --git a/quickstep/res/values-ru/strings.xml b/quickstep/res/values-ru/strings.xml
index ea513bc..6d28815 100644
--- a/quickstep/res/values-ru/strings.xml
+++ b/quickstep/res/values-ru/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Рекомендуемое приложение: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Проведите слева направо от самого края экрана."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Проведите от левого края экрана до середины дисплея и отпустите палец."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Вернуться назад можно, проведя от правого края к центру."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Проведите справа налево от самого края экрана."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Проведите от правого края экрана до середины дисплея и отпустите палец."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Вы выполнили жест для перехода назад. Теперь мы расскажем, как переключаться между приложениями."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Теперь вы знаете, как вернуться, проведя слева направо."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Теперь вы знаете, как вернуться, проведя справа налево. Далее мы расскажем, как переключаться между приложениями."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Вы выполнили жест для перехода назад."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Проведите пальцем не слишком близко к нижнему краю экрана."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Уровень чувствительности можно изменить в настройках."</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Чтобы вернуться, проведите слева направо."</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Чтобы вернуться к предыдущему экрану, проведите от левого края к центру."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Чтобы вернуться, проведите слева направо."</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Чтобы вернуться, проведите справа налево."</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Чтобы вернуться к предыдущему экрану, проведите от левого края к центру."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Вернуться назад можно, проведя от правого края к центру. Потренируйтесь на этом экране."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Проведите снизу вверх от самого края экрана."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Не приостанавливайтесь перед тем, как отпустить палец."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Проведите по экрану ровно вверх."</string>
diff --git a/quickstep/res/values-si/strings.xml b/quickstep/res/values-si/strings.xml
index 52e9ace..6e453ce 100644
--- a/quickstep/res/values-si/strings.xml
+++ b/quickstep/res/values-si/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"පුරෝකථනය කළ යෙදුම: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ඔබ ඈත වම් දාරයෙන් ස්වයිප් කරන බවට සහතික කර ගන්න."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ඔබ වම් දාරයේ සිට තිරයේ මැදට ස්වයිප් කර අත හරින බව සහතික කර ගන්න."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"දකුණු මායිමේ සිට තිරයේ මැදට ස්වයිප් කර අවසාන තිරයට යා හැකිය."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ඔබ ඈත දකුණු දාරයෙන් ස්වයිප් කරන බවට සහතික කර ගන්න."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ඔබ දකුණු දාරයේ සිට තිරයේ මැදට ස්වයිප් කර අත හරින බව සහතික කර ගන්න."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"ඔබ ආපසු යාමේ ඉංගිතය සම්පූර්ණ කරන ලදි. ඊළඟට, යෙදුම් මාරු කරන ආකාරය දැන ගන්න."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"ආපසු යාමට වමේ සිට ස්වයිප් කරන්නේ කෙසේදැයි ඔබ දැන ගත්තේය."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"ආපසු යාමට දකුණේ සිට ස්වයිප් කරන්නේ කෙසේදැයි ඔබ දැන ගත්තේය. ඊළඟට, යෙදුම් මාරු කරන ආකාරය දැන ගන්න."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"ඔබ ආපසු යාමේ ඉංගිතය සම්පූර්ණ කරන ලදි."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ඔබ තිරයේ පහළට ඉතාම සමීපව ස්වයිප් නොකරන බවට සහතික කර ගන්න."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"ආපසු ඉංගිතයෙහි සංවේදීතාව වෙනස් කිරීමට, සැකසීම් වෙත යන්න"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"ආපසු යාමට වමේ සිට ස්වයිප් කරන්න"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"ඔබ සිටි අවසාන තිරයට ආපසු යාමට, වම් මායිමෙන් තිරයේ මැදට ස්වයිප් කරන්න."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"ආපසු යාමට වමේ සිට ස්වයිප් කරන්න"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"ආපසු යාමට දකුණින් ස්වයිප් කරන්න"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"ඔබ සිටි අවසාන තිරයට ආපසු යාමට, වම් මායිමෙන් තිරයේ මැදට ස්වයිප් කරන්න."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"දකුණු මායිමේ සිට තිරයේ මැදට ස්වයිප් කර අවසාන තිරයට යා හැකිය. දැන් එය උත්සාහ කරන්න."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ඔබ තිරයේ පහළ දාරයේ සිට ඉහළට ස්වයිප් කරන බව සහතික කර ගන්න."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"යාමට ඉඩ හැරීමට පෙර ඔබ විරාමයක් නොගන්නා බව සහතික කර ගන්න."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"ඔබ කෙලින්ම ඉහළට ස්වයිප් කරන බව සහතික කර ගන්න."</string>
diff --git a/quickstep/res/values-sk/strings.xml b/quickstep/res/values-sk/strings.xml
index fb50f2f..704ee61 100644
--- a/quickstep/res/values-sk/strings.xml
+++ b/quickstep/res/values-sk/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predpovedaná aplikácia: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Musite potiahnuť z úplne krajného ľavého okraja."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Musíte potiahnuť z ľavého okraja do stredu obrazovky a uvoľniť."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Na poslednú obrazovku sa môžete tiež vrátiť potiahnutím z pravého okraja do stredu obrazovky."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Musite potiahnuť z úplne krajného pravého okraja."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Musíte potiahnuť z pravého okraja do stredu obrazovky a uvoľniť."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Dokončili ste gesto na prechod späť. V ďalšom kroku sa naučíte, ako prepínať aplikácie."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Naučili ste sa prejsť späť potiahnutím zľava."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Naučili ste sa prejsť späť potiahnutím sprava. V ďalšom kroku sa naučíte prepínať aplikácie."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Dokončili ste gesto na prechod späť."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Nesmiete potiahnuť príliš blízko dolnej časti obrazovky."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Ak chcete zmeniť citlivosť gesta Späť, prejdite do Nastavení"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Vrátite sa potiahnutím zľava"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Na poslednú obrazovku prejdete potiahnutím z ľavého okraja do stredu obrazovky."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Späť prejdete potiahnutím zľava"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Späť prejdete potiahnutím sprava"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Na poslednú obrazovku prejdete potiahnutím z ľavého okraja do stredu obrazovky."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Na poslednú obrazovku tiež prejdete potiahnutím z pravého okraja do stredu obrazovky. Vyskúšajte to."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Musíte potiahnuť nahor z dolného okraja obrazovky."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Pred uvoľnením nesmiete zastať."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Musíte potiahnuť priamo hore."</string>
diff --git a/quickstep/res/values-sl/strings.xml b/quickstep/res/values-sl/strings.xml
index df93eb2..19982df 100644
--- a/quickstep/res/values-sl/strings.xml
+++ b/quickstep/res/values-sl/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Predvidena aplikacija: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Pazite, da ne povlečete s skrajno levega roba."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Pazite, da povlečete z levega roba do sredine zaslona in dvignete prst."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Na zadnji zaslon se lahko vrnete tudi tako, da z desnega roba povlečete do sredine zaslona."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Pazite, da ne povlečete s skrajno desnega roba."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Pazite, da povlečete z desnega roba do sredine zaslona in dvignete prst."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Izvedli ste potezo za pomik nazaj. Zdaj se naučite preklapljanja med aplikacijami."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Naučili ste se, kako povlečete z leve za vrnitev."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Naučili ste se, kako povlečete z desne za vrnitev. Zdaj se naučite preklapljanja med aplikacijami."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Izvedli ste potezo za pomik nazaj."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Pazite, da ne povlečete preblizu dna zaslona."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Občutljivost poteze za nazaj lahko spremenite v nastavitvah."</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Povlecite z leve za pomik nazaj."</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Če se želite vrniti na zadnji prikazani zaslon, povlecite z levega roba do sredine zaslona."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Povlecite z leve za vrnitev."</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Povlecite z desne za vrnitev"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Če se želite vrniti na zadnji prikazani zaslon, povlecite z levega roba do sredine zaslona."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Na zadnji zaslon se lahko vrnete tudi, če z desnega roba povlečete do sredine zaslona. Preizkusite."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Pazite, da povlečete s spodnjega roba zaslona navzgor."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Pazite, da ne zaustavite prsta, preden ga dvignete."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Pazite, da povlečete naravnost navzgor."</string>
diff --git a/quickstep/res/values-sq/strings.xml b/quickstep/res/values-sq/strings.xml
index 3582082..2ff94a1 100644
--- a/quickstep/res/values-sq/strings.xml
+++ b/quickstep/res/values-sq/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Aplikacioni i parashikuar: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Sigurohu që të rrëshqasësh shpejt nga skaji sa më majtas."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Sigurohu që të rrëshqasësh shpejt nga skaji i majtë drejt mesit të ekranit dhe lëshoje."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Mund dhe të kthehesh në ekranin e fundit duke rrëshqitur shpejt nga skaji i djathtë në mes të ekranit."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Sigurohu që të rrëshqasësh shpejt nga skaji sa më djathtas."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Sigurohu që të rrëshqasësh shpejt nga skaji i djathtë drejt mesit të ekranit dhe lëshoje."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"E ke përfunduar gjestin e kthimit prapa. Në vijim do të mësosh se si t\'i ndërrosh aplikacionet."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Ke mësuar si të rrëshqasësh shpejt nga e majta për t\'u kthyer prapa."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Ke mësuar si të rrëshqasësh shpejt nga e djathta për t\'u kthyer prapa. Në vijim do të mësosh se si t\'i ndërrosh aplikacionet."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"E ke përfunduar gjestin e kthimit prapa."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Sigurohu që të mos rrëshqasësh shumë afër fundit të ekranit."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Për të ndryshuar ndjeshmërinë e gjestit të kthimit prapa, shko te \"Cilësimet\""</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Rrëshqit shpejt nga e majta për t\'u kthyer prapa"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Për t\'u kthyer në ekranin e fundit ku ishe, rrëshqit shpejt nga skaji i majtë në mes të ekranit."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Rrëshqit shpejt nga e majta për t\'u kthyer prapa"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Rrëshqit shpejt nga e djathta për t\'u kthyer prapa"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Për t\'u kthyer në ekranin e fundit ku ishe, rrëshqit shpejt nga skaji i majtë në mes të ekranit."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Mund dhe të kthehesh në ekranin e fundit duke rrëshqitur shpejt nga skaji i djathtë në mes të ekranit. Provoje tani."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Sigurohu që të rrëshqasësh shpejt lart nga skaji i poshtëm i ekranit."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Sigurohu që të mos ndalosh para se ta lëshosh."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Sigurohu që të rrëshqasësh shpejt drejt lart."</string>
diff --git a/quickstep/res/values-sr/strings.xml b/quickstep/res/values-sr/strings.xml
index 6a18169..28754b5 100644
--- a/quickstep/res/values-sr/strings.xml
+++ b/quickstep/res/values-sr/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Предвиђамо апликацију: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Обавезно превуците од саме леве ивице."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Обавезно превуците од леве ивице до средине екрана и отпустите."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Вратите се на последњи екран превлачењем здесна ка средини."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Обавезно превуците од саме десне ивице."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Обавезно превуците од десне ивице до средине екрана и отпустите."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Довршили сте покрет за повратак. Сада сазнајте како да промените апликације."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Научили сте како да превлачите слева да бисте се вратили."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Научили сте како да превлачите здесна да бисте се вратили. Сада научите да мењате апликације."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Довршили сте покрет за повратак."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Никако не превлачите превише близу дна екрана."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Осетљивост пок. за назад можете да промените у Подешавањима"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Превуците са леве стране да бисте се вратили"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Да бисте се вратили на последњи екран, превуците од леве ивице ка средини екрана."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Превуците слева да бисте се вратили"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Превуците здесна да бисте се вратили"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Да бисте се вратили на последњи екран, превуците од леве ивице ка средини екрана."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Можете да се вратите на последњи екран и превлачењем од десне ивице ка средини екрана. Испробајте."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Обавезно превуците нагоре од доње ивице екрана."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Никако не стајте пре отпуштања."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Обавезно превуците право нагоре."</string>
diff --git a/quickstep/res/values-sv/strings.xml b/quickstep/res/values-sv/strings.xml
index d9b5648..4b4407b 100644
--- a/quickstep/res/values-sv/strings.xml
+++ b/quickstep/res/values-sv/strings.xml
@@ -47,20 +47,18 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Appförslag: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Se till att du sveper ända från vänsterkanten."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Se till att du sveper från den vänstra kanten till mitten av skärmen och sedan släpper."</string>
- <skip />
- <skip />
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Se till att du sveper ända från högerkanten."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Se till att du sveper från den högra kanten till mitten av skärmen och sedan släpper."</string>
- <!-- no translation found for back_gesture_feedback_complete_with_follow_up (8653374779579748392) -->
- <skip />
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Nu kan du svepa från vänster för att gå tillbaka."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Nu kan du svepa från höger för att gå tillbaka. Nu ska du få lära dig hur du byter mellan appar."</string>
<!-- no translation found for back_gesture_feedback_complete_without_follow_up (6405649621667113830) -->
<skip />
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Se till att du inte sveper för nära skärmens nederkant."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Öppna inställningarna om du vill ändra rörelsens känslighet"</string>
- <!-- no translation found for back_gesture_intro_title (5538727561353262952) -->
- <skip />
- <!-- no translation found for back_gesture_intro_subtitle (8139048712004626940) -->
- <skip />
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Återgå genom att svepa från vänster"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Svep från höger för att gå tillbaka"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Återgå till den senaste skärmen du var på genom att svepa från skärmens vänstra kant till mitten."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Du kan återgå till föregående skärm genom att svepa från den högra kanten till mitten. Testa nu."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Se till att du sveper från nederkanten på skärmen."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Se till att du sveper i en jämn rörelse innan du släpper."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Se till att du sveper rakt uppåt."</string>
diff --git a/quickstep/res/values-sw/strings.xml b/quickstep/res/values-sw/strings.xml
index 8670339..79e6483 100644
--- a/quickstep/res/values-sw/strings.xml
+++ b/quickstep/res/values-sw/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Programu iliyotabiriwa: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Hakikisha unatelezesha kidole kuanzia ukingo wa mbali wa kushoto."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Hakikisha unatelezesha kidole kuanzia ukingo wa kushoto kuelekea katikati ya skrini na uachilie."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Unaweza pia kurudi kwenye skrini iliyotangulia kwa kutelezesha kidole kuanzia ukingo wa kulia kuelekea katikati ya skrini."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Hakikisha unatelezesha kidole kuanzia ukingo wa mbali wa kulia."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Hakikisha unatelezesha kidole kuanzia ukingo wa kulia kuelekea katikati ya skrini na uachilie."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Umekamilisha ishara ya kurudi nyuma. Hatua inayofuata, jifunze jinsi ya kubadilisha programu."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Umejifunza jinsi ya kutelezesha kidole kuanzia kushoto ili kurudi nyuma."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Umejifunza jinsi ya kutelezesha kidole kuanzia kulia ili kurudi nyuma. Hatua inayofuata, jifunze jinsi ya kubadilisha programu."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Umekamilisha ishara ya kurudi nyuma."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Hakikisha hutelezeshi kidole karibu sana na sehemu ya chini ya skrini."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Kubadilisha hisi ya ishara ya nyuma, nenda kwenye Mipangilio"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Telezesha kidole kutoka kushoto ili urudi nyuma"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Ili urudi kwenye skrini iliyotangulia, telezesha kidole kuanzia ukingo wa kushoto kuelekea katikati ya skrini."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Telezesha kidole kuanzia kushoto ili urudi nyuma"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Telezesha kidole kuanzia kulia ili urudi nyuma"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Ili urudi kwenye skrini iliyotangulia, telezesha kidole kuanzia ukingo wa kushoto kuelekea katikati ya skrini."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Unaweza pia kurudi kwenye skrini iliyotangulia kwa kutelezesha kidole kuanzia ukingo wa kulia kuelekea katikati ya skrini. Ijaribu sasa."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Hakikisha unatelezesha kidole juu kuanzia ukingo wa chini wa skrini."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Hakikisha kuwa husimamishi kabla ya kuachilia."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Hakikisha unatelezesha kidole kuelekea juu."</string>
diff --git a/quickstep/res/values-ta/strings.xml b/quickstep/res/values-ta/strings.xml
index 8867c00..788f525 100644
--- a/quickstep/res/values-ta/strings.xml
+++ b/quickstep/res/values-ta/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"கணித்த ஆப்ஸ்: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"இடது ஓரத்தின் விளிம்பிலிருந்து ஸ்வைப் செய்கிறீர்கள் என்பதை உறுதிசெய்துகொள்ளுங்கள்."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"இடது ஓரத்திலிருந்து திரையின் மையப் பகுதிக்கு ஸ்வைப் செய்தபிறகு விடுவிப்பதை உறுதிசெய்துகொள்ளுங்கள்."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"வலது ஓரத்திலிருந்து திரையின் மையப் பகுதிக்கு ஸ்வைப் செய்தும் முந்தைய திரைக்கு மீண்டும் செல்லலாம்."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"வலது ஓரத்தின் விளிம்பிலிருந்து ஸ்வைப் செய்கிறீர்கள் என்பதை உறுதிசெய்துகொள்ளுங்கள்."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"வலது ஓரத்திலிருந்து திரையின் மையப் பகுதிக்கு ஸ்வைப் செய்தபிறகு விடுவிப்பதை உறுதிசெய்துகொள்ளுங்கள்."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"பின்செல் சைகைப் பயிற்சியை முடித்துவிட்டீர்கள். அடுத்து, ஆப்ஸுக்கிடையே மாறுவது எப்படி என்பதை அறிக."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"பின்செல்வதற்கு எப்படி இடதுபுறத்திலிருந்து ஸ்வைப் செய்வதென்று கற்றுக்கொண்டீர்கள்."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"பின்செல்வதற்கு எப்படி வலதுபுறத்திலிருந்து ஸ்வைப் செய்வதென்று கற்றுக்கொண்டீர்கள். அடுத்து ஆப்ஸுக்கிடையே எப்படி மாறுவது என்பதை அறிக."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"பின்செல் சைகைப் பயிற்சியை முடித்துவிட்டீர்கள்."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"திரையின் கீழ்பகுதிக்கு மிக நெருக்கமாக ஸ்வைப் செய்யவில்லை என்பதை உறுதிசெய்துகொள்ளுங்கள்."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"பின்செல் சைகையின் உணர்திறனை மாற்ற அமைப்புகளுக்குச் செல்க"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"பின்செல்வதற்கு இடதுபுறத்திலிருந்து ஸ்வைப் செய்யுங்கள்"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"முந்தைய திரைக்கு மீண்டும் செல்ல, இடது ஓரத்திலிருந்து திரையின் மையப் பகுதிக்கு ஸ்வைப் செய்யுங்கள்."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"பின்செல்வதற்கு இடதுபுறத்திலிருந்து ஸ்வைப் செய்யுங்கள்"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"பின்செல்வதற்கு வலதுபுறத்திலிருந்து ஸ்வைப் செய்யுங்கள்"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"முந்தைய திரைக்கு மீண்டும் செல்ல, இடது ஓரத்திலிருந்து திரையின் மையப் பகுதிக்கு ஸ்வைப் செய்யுங்கள்."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"வலது ஓரத்திலிருந்து திரையின் மையப் பகுதிக்கு ஸ்வைப் செய்தும் முந்தைய திரைக்குச் செல்லலாம். இப்போதே முயலுங்கள்."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"திரையின் கீழ் ஓரத்திலிருந்து மேல்நோக்கி ஸ்வைப் செய்வதை உறுதிசெய்துகொள்ளுங்கள்."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"விடுவிப்பதற்கு முன்பாக இடைநிறுத்தவில்லை என்பதை உறுதிசெய்துகொள்ளுங்கள்."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"மேல்நோக்கி நேராக ஸ்வைப் செய்வதை உறுதிசெய்துகொள்ளுங்கள்."</string>
diff --git a/quickstep/res/values-te/strings.xml b/quickstep/res/values-te/strings.xml
index be50c9c..a0351a7 100644
--- a/quickstep/res/values-te/strings.xml
+++ b/quickstep/res/values-te/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"సూచించబడిన యాప్: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"మీరు చాలా-ఎడమ అంచు నుండి స్వైప్ చేశారని నిర్ధారించుకోండి."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"మీరు ఎడమ అంచు నుండి స్క్రీన్ మధ్యలోకి స్వైప్ చేశారని నిర్ధారించుకోని, ఆపై మీ వేలిని ఎత్తండి."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"కుడి అంచు నుండి స్క్రీన్ మధ్యలోకి స్వైప్ చేయడం ద్వారా మీరు చివరి స్క్రీన్కు తిరిగి వెళ్ళవచ్చు."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"మీరు చాలా-కుడి అంచు నుండి స్వైప్ చేశారని నిర్ధారించుకోండి."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"మీరు కుడి అంచు నుండి స్క్రీన్ మధ్యలోకి స్వైప్ చేశారని నిర్ధారించుకోని, ఆపై మీ వేలిని ఎత్తండి."</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"మీరు తిరిగి వెనక్కు వెళ్లే సంజ్ఞను పూర్తి చేశారు. తర్వాత, యాప్ల మధ్య ఎలా మారాలో తెలుసుకోండి."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"వెనుకకు వెళ్లడానికి ఎడమ నుండి ఎలా స్వైప్ చేయాలో మీరు నేర్చుకున్నారు."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"వెనుకకు వెళ్లడానికి కుడి నుండి స్వైప్ ఎలానో మీకు తెలుసు. తర్వాత, యాప్ల మధ్య ఎలా మారాలో తెలుసుకోండి."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"మీరు తిరిగి వెనక్కు వెళ్లే సంజ్ఞను పూర్తి చేశారు."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"మీరు స్క్రీన్ దిగువకు చాలా దగ్గరగా స్వైప్ చేయలేదని నిర్ధారించుకోండి."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"వెనుక సంజ్ఞ సున్నితత్వం మార్చడానికి, సెట్టింగ్లకు వెళ్లండి"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"వెనుకకు వెళ్లడానికి ఎడమ వైపు నుండి స్వైప్ చేయండి"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"మీరు ఉన్న చివరి స్క్రీన్కు తిరిగి వెళ్లడానికి, ఎడమ అంచు నుండి స్క్రీన్ మధ్యలోకి స్వైప్ చేయండి."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"వెనుకకు వెళ్లడానికి ఎడమ వైపు నుండి స్వైప్ చేయండి"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"వెనుకకు వెళ్లడానికి కుడి వైపు నుండి స్వైప్ చేయండి"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"మీరు ఉన్న చివరి స్క్రీన్కు తిరిగి వెళ్లడానికి, ఎడమ అంచు నుండి స్క్రీన్ మధ్యలోకి స్వైప్ చేయండి."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"కుడి అంచు నుండి స్క్రీన్ మధ్యలోకి స్వైప్ చేయడం ద్వారా మీరు చివరి స్క్రీన్కు తిరిగి వెళ్లవచ్చు. దీన్ని ఇప్పుడే ట్రై చేయండి."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"మీరు స్క్రీన్ దిగువ అంచు నుండి పైకి స్వైప్ చేశారని నిర్ధారించుకోండి."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"బయలుదేరే ముందు మీరు పాజ్ చేయకుండా చూసుకోండి."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"మీరు నేరుగా పైకి స్వైప్ చేశారని నిర్ధారించుకోండి."</string>
diff --git a/quickstep/res/values-th/strings.xml b/quickstep/res/values-th/strings.xml
index c413e4e..a13b43b 100644
--- a/quickstep/res/values-th/strings.xml
+++ b/quickstep/res/values-th/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"แอปที่คาดว่าจะใช้: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"ตรวจสอบว่าปัดจากขอบด้านซ้ายสุด"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"ตรวจสอบว่าปัดจากขอบด้านซ้ายไปตรงกลางหน้าจอ แล้วยกนิ้วขึ้น"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"หรือจะกลับไปหน้าจอล่าสุดโดยปัดจากขอบขวาไปตรงกลางหน้าจอก็ได้"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"ตรวจสอบว่าปัดจากขอบด้านขวาสุด"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"ตรวจสอบว่าปัดจากขอบด้านขวาไปตรงกลางหน้าจอ แล้วยกนิ้วขึ้น"</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"คุณทำท่าทางสัมผัสเพื่อย้อนกลับเสร็จแล้ว ต่อไปดูวิธีสลับแอป"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"คุณรู้วิธีปัดจากด้านซ้ายเพื่อย้อนกลับแล้ว"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"คุณรู้วิธีปัดจากด้านขวาเพื่อย้อนกลับแล้ว ต่อไปดูวิธีสลับแอป"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"คุณทำท่าทางสัมผัสเพื่อย้อนกลับเสร็จแล้ว"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"ตรวจสอบว่าไม่ได้ปัดใกล้กับด้านล่างของหน้าจอมากเกินไป"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"เปลี่ยนความไวของท่าทางสัมผัสเพื่อย้อนกลับได้ที่การตั้งค่า"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"ปัดจากด้านซ้ายเพื่อย้อนกลับ"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"หากต้องการย้อนกลับไปที่หน้าจอล่าสุดที่เปิด ให้ปัดจากขอบด้านซ้ายไปตรงกลางหน้าจอ"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"ปัดจากด้านซ้ายเพื่อย้อนกลับ"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"ปัดจากด้านขวาเพื่อย้อนกลับ"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"หากต้องการย้อนกลับไปที่หน้าจอล่าสุดที่เปิด ให้ปัดจากขอบด้านซ้ายไปตรงกลางหน้าจอ"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"หรือจะกลับไปหน้าจอล่าสุดโดยปัดจากขอบขวาไปตรงกลางหน้าจอก็ได้ ลองเลย"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"ตรวจสอบว่าปัดขึ้นจากขอบด้านล่างของหน้าจอ"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"ตรวจสอบว่าไม่มีการหยุดชั่วคราวก่อนยกนิ้วขึ้น"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"ตรวจสอบว่าปัดขึ้นในแนวตรง"</string>
diff --git a/quickstep/res/values-tl/strings.xml b/quickstep/res/values-tl/strings.xml
index b9260dc..eade324 100644
--- a/quickstep/res/values-tl/strings.xml
+++ b/quickstep/res/values-tl/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Hinulaang app: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Tiyaking magsa-swipe ka mula sa pinakadulo sa kaliwa."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Tiyaking mag-swipe mula sa kaliwang gilid papunta sa gitna ng screen, saka iangat ang iyong daliri."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Puwede ka ring mag-swipe mula sa kanan papunta sa gitna para bumalik sa nakaraang screen."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Tiyaking magsa-swipe ka mula sa pinakadulo sa kanan."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Tiyaking mag-swipe mula sa kanang gilid papunta sa gitna ng screen, saka iangat ang iyong daliri."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Nakumpleto mo na ang galaw para bumalik. Susunod, alamin kung paano magpalipat-lipat sa mga app."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Natutunan mong mag-swipe mula sa kaliwa para bumalik."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Natuto kang mag-swipe mula sa kanan para bumalik. Sunod, alamin kung paano magpalipat-lipat ng app."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Nakumpleto mo na ang galaw para bumalik."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Tiyaking hindi ka magsa-swipe nang masyadong malapit sa ibaba ng screen."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Pumunta sa Settings para baguhin ang sensitivity ng pagbalik"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Mag-swipe mula sa kaliwa para bumalik"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Mag-swipe mula sa kaliwang gilid papunta sa gitna para bumalik sa nakaraang screen na pinuntahan mo."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Mag-swipe mula sa kaliwa para bumalik"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Mag-swipe mula sa kanan para bumalik"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Mag-swipe mula sa kaliwang gilid papunta sa gitna para bumalik sa nakaraang screen na pinuntahan mo."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Puwede ka ring mag-swipe mula kanan papuntang gitna para bumalik sa naunang screen. Subukan na ito."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Tiyaking magsa-swipe ka pataas mula sa pinakaibaba ng screen."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Tiyaking hindi ka magpo-pause bago iangat ang iyong daliri."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Tiyaking magsa-swipe ka nang diretso pataas."</string>
diff --git a/quickstep/res/values-tr/strings.xml b/quickstep/res/values-tr/strings.xml
index 9db5e4a..9a8c467 100644
--- a/quickstep/res/values-tr/strings.xml
+++ b/quickstep/res/values-tr/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Tahmin edilen uygulama: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Ekranın en solundan kaydırdığınızdan emin olun."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Sol kenardan ekranın ortasına doğru kaydırıp bıraktığınızdan emin olun."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"İsterseniz sağ kenardan ekranın ortasına kaydırarak son ekrana dönebilirsiniz."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Ekranın en sağından kaydırdığınızdan emin olun."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Sağ kenardan ekranın ortasına doğru kaydırıp bıraktığınızdan emin olun."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Geri dön hareketini tamamladınız. Sırada, uygulamalar arasında geçiş yapmayı öğrenmek var."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Geri dönmek için soldan kaydırmayı öğrendiniz."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Geri dönmek için sağdan kaydırmayı öğrendiniz. Sırada uygulamalar arasında geçiş yapma var."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Geri dön hareketini tamamladınız."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Ekranın alt kısmına çok yakın bir şekilde kaydırmadığınızdan emin olun."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Geri hareketinin hassasiyetini değiştirmek için Ayarlar\'a gidin"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Geri gitmek için soldan kaydırın"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Görüntülediğiniz son ekrana dönmek için sol kenardan ekranın ortasına kaydırın."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Geri gitmek için soldan kaydırın"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Geri gitmek için sağdan kaydırın"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Görüntülediğiniz son ekrana dönmek için sol kenardan ekranın ortasına doğru kaydırın."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"İsterseniz sağ kenardan ekranın ortasına doğru kaydırarak son ekrana dönebilirsiniz. Şimdi deneyin."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Ekranın alt kenarından yukarı kaydırdığınızdan emin olun."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Bırakmadan önce parmağınızı duraklatmadığınızdan emin olun."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Düz bir şekilde yukarı kaydırdığınızdan emin olun."</string>
@@ -75,7 +77,7 @@
<string name="gesture_tutorial_action_button_label_settings" msgid="2923621047916486604">"Ayarlar"</string>
<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>
+ <string name="gesture_tutorial_step" msgid="1279786122817620968">"Eğitim <xliff:g id="CURRENT">%1$d</xliff:g>/<xliff:g id="TOTAL">%2$d</xliff:g>"</string>
<string name="allset_title" msgid="5021126669778966707">"İşlem tamam!"</string>
<string name="allset_hint" msgid="459504134589971527">"Ana ekrana gitmek için yukarı kaydırın"</string>
<string name="allset_description" msgid="6350320429953234580">"Telefonunuzu kullanmaya hazırsınız"</string>
@@ -83,7 +85,7 @@
<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>
- <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Gezinme eğitici içeriği atlansın mı?"</string>
+ <string name="skip_tutorial_dialog_title" msgid="2725643161260038458">"Gezinme eğitimi atlansın mı?"</string>
<string name="skip_tutorial_dialog_subtitle" msgid="544063326241955662">"Bunu daha sonra <xliff:g id="NAME">%1$s</xliff:g> uygulamasında bulabilirsiniz"</string>
<string name="gesture_tutorial_action_button_label_cancel" msgid="3809842569351264108">"İptal"</string>
<string name="gesture_tutorial_action_button_label_skip" msgid="394452764989751960">"Atla"</string>
diff --git a/quickstep/res/values-uk/strings.xml b/quickstep/res/values-uk/strings.xml
index 37c8802..c1ab0d8 100644
--- a/quickstep/res/values-uk/strings.xml
+++ b/quickstep/res/values-uk/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Передбачений додаток: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Проведіть пальцем саме від лівого краю екрана."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Проведіть пальцем від лівого краю до середини екрана й підніміть палець."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Щоб повернутися, проведіть пальцем справа до середини."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Проведіть пальцем саме від правого краю екрана."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Проведіть пальцем від правого краю до середини екрана й підніміть палець."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Ви виконали жест \"Назад\". Тепер дізнайтеся, як переходити між додатками."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Ви навчилися проводити пальцем зліва направо, щоб повертатися."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Ви вмієте проводити пальцем справа наліво, щоб повертатися. Дізнайтеся, як переходити між додатками."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Ви виконали жест \"Назад\"."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Не проводьте пальцем надто близько до нижнього краю екрана."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Щоб змінити чутливість жесту \"Назад\", відкрийте налаштування"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Щоб повернутися, проведіть пальцем зліва направо"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Щоб перейти на попередній екран, проведіть пальцем від лівого краю до середини екрана."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Щоб повернутися, проведіть пальцем зліва направо"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Щоб повернутися, проведіть пальцем справа наліво"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Щоб перейти на попередній екран, проведіть пальцем від лівого краю до середини екрана."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Щоб повернутися, проведіть пальцем від правого краю до середини екрана. Спробуйте зараз."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Проведіть пальцем угору від нижнього краю екрана."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Не робіть паузу перед тим, як відірвати палець від екрана."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Проводьте пальцем вертикально вгору."</string>
diff --git a/quickstep/res/values-ur/strings.xml b/quickstep/res/values-ur/strings.xml
index 425f498..7c01ed6 100644
--- a/quickstep/res/values-ur/strings.xml
+++ b/quickstep/res/values-ur/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"پیشن گوئی کردہ ایپ: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"اس بات کو یقینی بنائیں کہ آپ بائیں کنارے سے دور سے سوائپ کریں۔"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"یقینی طور پر بائیں کنارے سے اسکرین کے وسط تک سوائپ کریں اور پھر اپنی انگلی اٹھا لیں۔"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"آپ دائیں کنارے سے اسکرین کے وسط تک سوائپ کر کے پچھلی اسکرین پر واپس بھی جا سکتے ہیں۔"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"اس بات کو یقینی بنائیں کہ آپ دائیں کنارے سے دور سے سوائپ کریں۔"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"یقینی طور پر دائیں کنارے سے اسکرین کے وسط تک سوائپ کریں اور پھر اپنی انگلی اٹھا لیں۔"</string>
- <string name="back_gesture_feedback_complete_with_follow_up" msgid="8653374779579748392">"آپ نے واپس جائیں اشارے کو مکمل کر لیا۔ اس کے بعد ایپس سوئچ کرنے کا طریقہ جانیں۔"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"آپ نے واپس جانے کے لیے بائیں کنارے سے سوائپ کرنے کا طریقہ سیکھ لیا۔"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"آپ نے واپس جانے کے لیے دائیں کنارے سے سوائپ کرنے کا طریقہ سیکھ لیا۔ اس کے بعد ایپس سوئچ کرنے کا طریقہ جانیں۔"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"آپ نے واپس جائیں اشارے کو مکمل کر لیا۔"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"اس بات کو یقینی بنائیں کہ آپ اسکرین کے نچلے حصے سے زیادہ قریب سے سوائپ نہ کریں۔"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"پچھلے اشارے کی حساسیت تبدیل کرنے کے لیے ترتیبات پر جائیں"</string>
- <string name="back_gesture_intro_title" msgid="5538727561353262952">"واپس جانے کے لیے بائیں کنارے سے سوائپ کریں"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"پچھلی اسکرین جس پر آپ تھے اس پر واپس جانے کے لیے بائیں کنارے سے اسکرین کے وسط تک سوائپ کریں۔"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"واپس جانے کے لیے بائیں کنارے سے سوائپ کریں"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"واپس جانے کے لیے دائیں کنارے سے سوائپ کریں"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"پچھلی اسکرین جس پر آپ تھے اس پر واپس جانے کے لیے بائیں کنارے سے اسکرین کے وسط تک سوائپ کریں۔"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"آپ دائیں کنارے سے اسکرین کے وسط تک سوائپ کر کے پچھلی اسکرین پر واپس بھی جا سکتے ہیں۔ اسے ابھی آزمائیں۔"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"اس بات کو یقینی بنائیں کہ آپ اسکرین کے نچلے کنارے سے اوپر کی طرف سوائپ کریں۔"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"اس بات کو یقینی بنائیں کہ آپ اپنی انگلی اوپر اٹھانے سے پہلے موقوف نہ کریں۔"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"اس بات کو یقینی بنائیں کہ آپ سیدھا اوپر کی طرف سوائپ کریں۔"</string>
diff --git a/quickstep/res/values-uz/strings.xml b/quickstep/res/values-uz/strings.xml
index d046eb2..156730d 100644
--- a/quickstep/res/values-uz/strings.xml
+++ b/quickstep/res/values-uz/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Taklif etilgan ilova: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Barmoqni chapdagi eng chekkadan suring."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Barmoqni ekranning chap chetidan oʻrtasigacha suring va ekrandan uzing."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Shuningdek, oʻng chetdan ekran oʻrtasiga surish orqali ham oxirgi ekranga qaytish mumkin."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Barmoqni oʻngdagi eng chekkadan suring."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Barmoqni ekranning oʻng chetidan oʻrtasigacha suring va ekrandan uzing."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Ortga qaytish ishorasi darsini tamomladingiz. Endi ilovalarni almashtirishni oʻrganamiz."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Ortga qaytish uchun chapdan surishni oʻrgandingiz."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Ortga qaytish uchun oʻngdan surishni oʻrgandingiz. Endi ilovalarni almashtirishni oʻrganamiz."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Ortga qaytish ishorasi darsini tamomladingiz."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Barmoqni ekran pastiga yaqin surmaslikka harakat qiling."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Orqaga ishorasi sezuvchanligi Sozlamalardan oʻzgartiriladi"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Orqaga qaytish uchun chapdan suring"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Oxirgi ekranga qaytish uchun barmoqni ekranning chap chekkasidan oʻrtasigacha suring."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Orqaga qaytish uchun chapdan suring"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Orqaga qaytish uchun oʻngdan suring"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Oxirgi ekranga qaytish uchun barmoqni ekranning chap chekkasidan oʻrtasigacha suring."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Shuningdek, oʻng chetdan ekran oʻrtasiga surish orqali ham oxirgi ekranga qaytish mumkin. Hoziroq sinang."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Barmoqni ekranning pastki chetidan yuqoriga suring."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Barmoqni ekrandan pauzasiz qoʻyib uzing."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Barmoqni tik tepaga suring."</string>
diff --git a/quickstep/res/values-vi/strings.xml b/quickstep/res/values-vi/strings.xml
index 9f6eff9..13f1a10 100644
--- a/quickstep/res/values-vi/strings.xml
+++ b/quickstep/res/values-vi/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Ứng dụng dự đoán: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Hãy vuốt từ mép ngoài cùng bên trái."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Hãy vuốt từ mép trái tới chính giữa màn hình rồi nhấc ngón tay."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Bạn cũng có thể vuốt từ mép phải tới chính giữa màn hình để quay lại màn hình gần đây nhất."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Hãy vuốt từ mép ngoài cùng bên phải."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Hãy vuốt từ mép phải tới chính giữa màn hình rồi nhấc ngón tay."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Bạn đã thực hiện xong cử chỉ quay lại. Tiếp theo, hãy tìm hiểu cách chuyển đổi ứng dụng."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Bạn đã tìm hiểu cách vuốt từ mép trái để quay lại."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Bạn đã tìm hiểu cách vuốt từ mép phải để quay lại. Tiếp theo, hãy tìm hiểu cách chuyển đổi ứng dụng."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Bạn đã thực hiện xong cử chỉ quay lại."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Hãy nhớ không được vuốt quá gần phần cuối màn hình."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Để thay đổi độ nhạy của cử chỉ quay lại, hãy vào mục Cài đặt"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Vuốt từ mép trái để quay lại"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Để quay lại màn hình gần đây nhất mà bạn xem, hãy vuốt từ mép trái tới chính giữa màn hình."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Vuốt từ mép trái để quay lại"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Vuốt từ mép phải để quay lại"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Để quay lại màn hình gần đây nhất mà bạn xem, hãy vuốt từ mép trái tới giữa màn hình."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Bạn cũng có thể vuốt từ mép phải tới giữa màn hình để quay lại màn hình gần đây nhất. Hãy thử ngay."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Hãy vuốt lên từ mép dưới cùng của màn hình."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Hãy nhớ không được tạm dừng trước khi nhấc ngón tay."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Hãy vuốt thẳng lên."</string>
diff --git a/quickstep/res/values-zh-rCN/strings.xml b/quickstep/res/values-zh-rCN/strings.xml
index e117c0a..f026baf 100644
--- a/quickstep/res/values-zh-rCN/strings.xml
+++ b/quickstep/res/values-zh-rCN/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"预测的应用:<xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"请从最左侧边缘开始滑动。"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"请从左侧边缘滑动到屏幕中间位置后再松开手指。"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"如要返回上一个屏幕,您也可以从右侧边缘滑动到屏幕中间位置。"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"请从最右侧边缘开始滑动。"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"请从右侧边缘滑动到屏幕中间位置后再松开手指。"</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"您完成了“返回”手势教程。接下来了解如何切换应用。"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"您已了解如何使用“从左侧向右滑动”手势返回。"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"您已了解如何使用“从右侧向左滑动”手势返回。接下来了解如何切换应用。"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"您完成了“返回”手势教程。"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"滑动时,手的位置不要太靠近屏幕底部。"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"如要调节“返回”手势的灵敏度,请转到“设置”"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"从左侧向右滑动手指即可返回"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"如要返回您查看过的上一个屏幕,请从左侧边缘滑动到屏幕中间位置。"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"从左侧向右滑动手指即可返回"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"从右侧向左滑动手指即可返回"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"如要返回您查看过的上一个屏幕,请从左侧边缘滑动到屏幕中间位置。"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"如要返回上一个屏幕,您也可以从右侧边缘滑动到屏幕中间位置。现在就试试看吧。"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"请从屏幕底部边缘向上滑动。"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"在松开手指前请勿停下来。"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"请向上滑动。"</string>
diff --git a/quickstep/res/values-zh-rHK/strings.xml b/quickstep/res/values-zh-rHK/strings.xml
index 01d5748..5b03b02 100644
--- a/quickstep/res/values-zh-rHK/strings.xml
+++ b/quickstep/res/values-zh-rHK/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"預測應用程式:<xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"請從螢幕左側邊緣滑動。"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"請從螢幕左側邊緣往中央滑動,然後放開手指。"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"從螢幕右側往中央滑動亦可返回上一個畫面。"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"請從螢幕右側邊緣滑動。"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"請從螢幕右側邊緣往中央滑動,然後放開手指"</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"您已完成「返回」手勢的教學課程。接下來一起瞭解如何切換應用程式。"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"您已瞭解如何使用「由左向右滑動」手勢返回。"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"您已瞭解如何透過「由右向左滑動」手勢返回。接下來一起瞭解如何切換應用程式。"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"您已完成「返回」手勢的教學課程。"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"滑動時,手的位置不要太接近螢幕底部。"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"如要變更「返回」手勢的敏感度,請前往「設定」"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"從螢幕左側往右滑動即可返回"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"如要返回上一個畫面,請從螢幕左側往中央滑動。"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"從螢幕左側往右滑動即可返回"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"由右向左滑動即可返回"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"如要返回上一個畫面,請從螢幕左側往中央滑動。"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"從螢幕右側往中央滑動亦可返回上一個畫面。立即試試吧。"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"請從螢幕底部邊緣向上滑動。"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"放開手指前請勿停下來。"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"請向上滑動。"</string>
diff --git a/quickstep/res/values-zh-rTW/strings.xml b/quickstep/res/values-zh-rTW/strings.xml
index b21cacd..f3cb458 100644
--- a/quickstep/res/values-zh-rTW/strings.xml
+++ b/quickstep/res/values-zh-rTW/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"預測的應用程式:<xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"請從螢幕左側邊緣滑動。"</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"請從螢幕左側邊緣往中央滑動,然後放開手指。"</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"從螢幕右側往中央滑動也可返回上一個畫面。"</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"請從螢幕右側邊緣滑動。"</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"請從螢幕右側邊緣往中央滑動,然後放開手指。"</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"你已完成「返回」手勢的教學課程。接著,一起來瞭解如何切換應用程式。"</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"你已瞭解如何使用「由左向右滑動」手勢返回。"</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"你已瞭解如何透過「由右向左滑動」手勢返回。接著,一起來瞭解如何切換應用程式。"</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"你已完成「返回」手勢的教學課程。"</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"滑動時,手的位置不要太接近螢幕底部。"</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"如要變更「返回」手勢的敏感度,請前往「設定」"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"從螢幕左側往右滑動即可返回"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"如要返回先前的畫面,請從螢幕左側往中央滑動。"</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"從螢幕左側往右滑動即可返回"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"由右向左滑動即可返回"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"如要返回先前的畫面,請從螢幕左側往中央滑動。"</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"從螢幕右側往中央滑動也可返回上一個畫面。現在就試試看吧!"</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"請從螢幕底部邊緣向上滑動。"</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"放開手指前請勿停下來。"</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"請向上滑動。"</string>
diff --git a/quickstep/res/values-zu/strings.xml b/quickstep/res/values-zu/strings.xml
index 469a424..1cfcb93 100644
--- a/quickstep/res/values-zu/strings.xml
+++ b/quickstep/res/values-zu/strings.xml
@@ -47,15 +47,17 @@
<string name="hotseat_prediction_content_description" msgid="4582028296938078419">"Uhlelo lokusebenza olubikezelwe: <xliff:g id="TITLE">%1$s</xliff:g>"</string>
<string name="back_gesture_feedback_swipe_too_far_from_left_edge" msgid="340972404868601012">"Qiniseka ukuthi uswayiphela ekudeni emngceleni ongakwesobunxele."</string>
<string name="back_gesture_feedback_cancelled_left_edge" msgid="6671316150388702530">"Qiniseka ukuthi uswayipha kusuka emngceleni okwesobunxele kuya phakathi kwesikrini bese uyadedela."</string>
- <string name="back_right_gesture_intro_subtitle" msgid="8106594510099968430">"Futhi ungabuyela emuva esikrinini sangaphambilini ngokuswayipha kusuka kunqenqema langakwesokudla ukuya maphakathi nesikrini."</string>
<string name="back_gesture_feedback_swipe_too_far_from_right_edge" msgid="4306700023773832353">"Qiniseka ukuthi uswayiphela ekudeni emngceleni ongakwesokudla."</string>
<string name="back_gesture_feedback_cancelled_right_edge" msgid="4951916546256902552">"Qiniseka ukuthi uswayipha kusuka emngceleni okwesokudla kuya phakathi kwesikrini bese uyadedela."</string>
- <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="8653374779579748392">"Ukuqedile ukuthinta kokubuyela emuva. Ngokulandelayo, funda indlela yokushintsha ama-app."</string>
+ <string name="back_gesture_feedback_complete_with_back_right_follow_up" msgid="2100639504811809267">"Ufunde indlela yokuswayipha kusuka kwesokunxele ukuze ubuyele emuva."</string>
+ <string name="back_gesture_feedback_complete_with_overview_follow_up" msgid="9176400654037014471">"Ufunde indlela yokuswayipha kusuka kwesokudla ukuze ubuyele emuva. Ngokulandelayo, funda indlela yokushintsha ama-app."</string>
<string name="back_gesture_feedback_complete_without_follow_up" msgid="6405649621667113830">"Ukuqedile ukuthinta kokubuyela emuva."</string>
<string name="back_gesture_feedback_swipe_in_nav_bar" msgid="1148198467090405643">"Qiniseka ukuba awuswayipheli eduze kakhulu naphansi kwesikrini."</string>
<string name="back_gesture_tutorial_confirm_subtitle" msgid="5181305411668713250">"Ukuze ushintshe ukuzwela kokuthinta emuva, iya Kumasethingi"</string>
- <string name="back_left_gesture_intro_title" msgid="5538727561353262952">"Swayipha kusuka kwesobunxele ukuze ubuyele emuva"</string>
- <string name="back_left_gesture_intro_subtitle" msgid="8139048712004626940">"Ukuze ubuyele esikrinini sangaphambilini lapho ubukade ukhona, swayipha kusuka kunqenqema lwesokunxele ukuya maphakathi nesikrini."</string>
+ <string name="back_left_gesture_intro_title" msgid="5197184481779330065">"Swayipha kusuka kwesobunxele ukuze ubuyele emuva"</string>
+ <string name="back_right_gesture_intro_title" msgid="7431951986971898074">"Swayipha kusuka kwesokudla ukubuyela emuva"</string>
+ <string name="back_left_gesture_intro_subtitle" msgid="7672761376577628602">"Ukuze ubuyele esikrinini sangaphambilini lapho ubukade ukhona, swayipha kusuka kunqenqema lwesokunxele ukuya maphakathi nesikrini."</string>
+ <string name="back_right_gesture_intro_subtitle" msgid="2735828029197816509">"Futhi ungabuyela emuva esikrinini sangaphambilini ngokuswayipha kusuka kunqenqema langakwesokudla ukuya maphakathi nesikrini. Izame manje."</string>
<string name="home_gesture_feedback_swipe_too_far_from_edge" msgid="1446774096007065298">"Qiniseka ukuthi uswayiphela phezulu kusuka emngceleni ophansi wesikrini."</string>
<string name="home_gesture_feedback_overview_detected" msgid="1557523944897393013">"Qiniseka ukuthi awumisi ngaphambi kokudedela."</string>
<string name="home_gesture_feedback_wrong_swipe_direction" msgid="6993979358080825438">"Qiniseka ukuthi uswayiphela ngqo phezulu."</string>
diff --git a/quickstep/res/values/dimens.xml b/quickstep/res/values/dimens.xml
index ffd83b1..60eeaff 100644
--- a/quickstep/res/values/dimens.xml
+++ b/quickstep/res/values/dimens.xml
@@ -45,8 +45,9 @@
<!-- These speeds are in dp/s -->
<dimen name="max_task_dismiss_drag_velocity">2.25dp</dimen>
- <dimen name="default_task_dismiss_drag_velocity">1.75dp</dimen>
- <dimen name="default_task_dismiss_drag_velocity_grid">0.75dp</dimen>
+ <dimen name="default_task_dismiss_drag_velocity">1.5dp</dimen>
+ <dimen name="default_task_dismiss_drag_velocity_grid">1dp</dimen>
+ <dimen name="default_task_dismiss_drag_velocity_grid_focus_task">5dp</dimen>
<dimen name="recents_page_spacing">16dp</dimen>
<dimen name="recents_clear_all_deadzone_vertical_margin">70dp</dimen>
@@ -64,7 +65,7 @@
<dimen name="quickstep_fling_threshold_speed">0.5dp</dimen>
<!-- Launcher app transition -->
- <dimen name="content_trans_y">50dp</dimen>
+ <item name="content_scale" format="float" type="dimen">0.97</item>
<dimen name="closing_window_trans_y">115dp</dimen>
<dimen name="recents_empty_message_text_size">16sp</dimen>
@@ -74,7 +75,8 @@
<!-- Total space (start + end) between the task card and the edge of the screen
in various configurations -->
- <dimen name="task_card_menu_option_vertical_padding">8dp</dimen>
+ <dimen name="task_card_menu_option_vertical_padding">16dp</dimen>
+ <dimen name="task_menu_vertical_padding">8dp</dimen>
<dimen name="task_card_margin">8dp</dimen>
<dimen name="task_card_menu_shadow_height">3dp</dimen>
<dimen name="task_menu_option_start_margin">12dp</dimen>
diff --git a/quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java b/quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java
index 4720f55..c13225a 100644
--- a/quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java
+++ b/quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java
@@ -171,7 +171,7 @@
}
@Override
- protected void onUiChangedWhileSleeping() {
+ public void onUiChangedWhileSleeping() {
// Remove the snapshot because the content view may have obvious changes.
UI_HELPER_EXECUTOR.execute(
() -> ActivityManagerWrapper.getInstance().invalidateHomeTaskSnapshot(this));
diff --git a/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java b/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java
index 3aa758f..36322ce 100644
--- a/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java
+++ b/quickstep/src/com/android/launcher3/QuickstepTransitionManager.java
@@ -23,11 +23,14 @@
import static com.android.launcher3.BaseActivity.INVISIBLE_BY_APP_TRANSITIONS;
import static com.android.launcher3.BaseActivity.INVISIBLE_BY_PENDING_FLAGS;
import static com.android.launcher3.BaseActivity.PENDING_INVISIBLE_BY_WALLPAPER_ANIMATION;
+import static com.android.launcher3.LauncherAnimUtils.SCALE_PROPERTY;
+import static com.android.launcher3.LauncherAnimUtils.VIEW_BACKGROUND_COLOR;
import static com.android.launcher3.LauncherState.ALL_APPS;
import static com.android.launcher3.LauncherState.BACKGROUND_APP;
import static com.android.launcher3.LauncherState.OVERVIEW;
import static com.android.launcher3.Utilities.postAsyncCallback;
import static com.android.launcher3.anim.Interpolators.AGGRESSIVE_EASE;
+import static com.android.launcher3.anim.Interpolators.DEACCEL_1_5;
import static com.android.launcher3.anim.Interpolators.DEACCEL_1_7;
import static com.android.launcher3.anim.Interpolators.EXAGGERATED_EASE;
import static com.android.launcher3.anim.Interpolators.LINEAR;
@@ -50,10 +53,12 @@
import android.content.Context;
import android.content.pm.PackageManager;
import android.content.res.Resources;
+import android.graphics.Color;
import android.graphics.Matrix;
import android.graphics.Point;
import android.graphics.Rect;
import android.graphics.RectF;
+import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.os.CancellationSignal;
import android.os.Handler;
@@ -61,12 +66,15 @@
import android.os.SystemProperties;
import android.util.Pair;
import android.util.Size;
+import android.view.SurfaceControl;
import android.view.View;
+import android.view.ViewRootImpl;
import android.view.animation.Interpolator;
import android.view.animation.PathInterpolator;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.core.graphics.ColorUtils;
import com.android.launcher3.DeviceProfile.OnDeviceProfileChangeListener;
import com.android.launcher3.anim.AnimationSuccessListener;
@@ -75,10 +83,11 @@
import com.android.launcher3.shortcuts.DeepShortcutView;
import com.android.launcher3.statehandlers.DepthController;
import com.android.launcher3.util.ActivityOptionsWrapper;
-import com.android.launcher3.util.MultiValueAlpha;
import com.android.launcher3.util.MultiValueAlpha.AlphaProperty;
import com.android.launcher3.util.RunnableList;
+import com.android.launcher3.util.Themes;
import com.android.launcher3.views.FloatingIconView;
+import com.android.launcher3.views.ScrimView;
import com.android.launcher3.widget.LauncherAppWidgetHostView;
import com.android.quickstep.RemoteAnimationTargets;
import com.android.quickstep.SystemUiProxy;
@@ -91,6 +100,7 @@
import com.android.quickstep.views.RecentsView;
import com.android.systemui.shared.system.ActivityCompat;
import com.android.systemui.shared.system.ActivityOptionsCompat;
+import com.android.systemui.shared.system.BlurUtils;
import com.android.systemui.shared.system.InteractionJankMonitorWrapper;
import com.android.systemui.shared.system.QuickStepContract;
import com.android.systemui.shared.system.RemoteAnimationAdapterCompat;
@@ -160,7 +170,8 @@
private static final int CLOSING_TRANSITION_DURATION_MS = 250;
public static final int CONTENT_ALPHA_DURATION = 217;
- protected static final int CONTENT_TRANSLATION_DURATION = 350;
+ protected static final int CONTENT_SCALE_DURATION = 350;
+ protected static final int CONTENT_SCRIM_DURATION = 350;
private static final int MAX_NUM_TASKS = 5;
@@ -173,9 +184,8 @@
private final AlphaProperty mDragLayerAlpha;
final Handler mHandler;
- private final boolean mIsRtl;
- private final float mContentTransY;
+ private final float mContentScale;
private final float mClosingWindowTransY;
private final float mMaxShadowRadius;
@@ -212,11 +222,10 @@
mDragLayer = mLauncher.getDragLayer();
mDragLayerAlpha = mDragLayer.getAlphaProperty(ALPHA_INDEX_TRANSITIONS);
mHandler = new Handler(Looper.getMainLooper());
- mIsRtl = Utilities.isRtl(mLauncher.getResources());
mDeviceProfile = mLauncher.getDeviceProfile();
Resources res = mLauncher.getResources();
- mContentTransY = res.getDimensionPixelSize(R.dimen.content_trans_y);
+ mContentScale = res.getFloat(R.dimen.content_scale);
mClosingWindowTransY = res.getDimensionPixelSize(R.dimen.closing_window_trans_y);
mMaxShadowRadius = res.getDimensionPixelSize(R.dimen.max_shadow_radius);
@@ -335,8 +344,7 @@
windowTargetBounds, areAllTargetsTranslucent(appTargets), rotationChange));
if (launcherClosing) {
Pair<AnimatorSet, Runnable> launcherContentAnimator =
- getLauncherContentAnimator(true /* isAppOpening */,
- new float[] {0, -mContentTransY});
+ getLauncherContentAnimator(true /* isAppOpening */);
anim.play(launcherContentAnimator.first);
anim.addListener(new AnimatorListenerAdapter() {
@Override
@@ -436,10 +444,8 @@
*
* @param isAppOpening True when this is called when an app is opening.
* False when this is called when an app is closing.
- * @param trans Array that contains the start and end translation values for the content.
*/
- private Pair<AnimatorSet, Runnable> getLauncherContentAnimator(boolean isAppOpening,
- float[] trans) {
+ private Pair<AnimatorSet, Runnable> getLauncherContentAnimator(boolean isAppOpening) {
AnimatorSet launcherAnimator = new AnimatorSet();
Runnable endListener;
@@ -447,13 +453,17 @@
? new float[] {1, 0}
: new float[] {0, 1};
+ float[] scales = isAppOpening
+ ? new float[] {1, mContentScale}
+ : new float[] {mContentScale, 1};
+
if (mLauncher.isInState(ALL_APPS)) {
// All Apps in portrait mode is full screen, so we only animate AllAppsContainerView.
final View appsView = mLauncher.getAppsView();
final float startAlpha = appsView.getAlpha();
- final float startY = appsView.getTranslationY();
+ final float startScale = SCALE_PROPERTY.get(appsView);
appsView.setAlpha(alphas[0]);
- appsView.setTranslationY(trans[0]);
+ SCALE_PROPERTY.set(appsView, scales[0]);
ObjectAnimator alpha = ObjectAnimator.ofFloat(appsView, View.ALPHA, alphas);
alpha.setDuration(CONTENT_ALPHA_DURATION);
@@ -465,30 +475,22 @@
appsView.setLayerType(View.LAYER_TYPE_NONE, null);
}
});
- ObjectAnimator transY = ObjectAnimator.ofFloat(appsView, View.TRANSLATION_Y, trans);
- transY.setInterpolator(AGGRESSIVE_EASE);
- transY.setDuration(CONTENT_TRANSLATION_DURATION);
+ ObjectAnimator scale = ObjectAnimator.ofFloat(appsView, SCALE_PROPERTY, scales);
+ scale.setInterpolator(AGGRESSIVE_EASE);
+ scale.setDuration(CONTENT_SCALE_DURATION);
launcherAnimator.play(alpha);
- launcherAnimator.play(transY);
+ launcherAnimator.play(scale);
endListener = () -> {
appsView.setAlpha(startAlpha);
- appsView.setTranslationY(startY);
+ SCALE_PROPERTY.set(appsView, startScale);
appsView.setLayerType(View.LAYER_TYPE_NONE, null);
};
} else if (mLauncher.isInState(OVERVIEW)) {
- endListener = composeViewContentAnimator(launcherAnimator, alphas, trans);
+ endListener = composeViewContentAnimator(launcherAnimator, alphas, scales);
} else {
- mDragLayerAlpha.setValue(alphas[0]);
- ObjectAnimator alpha =
- ObjectAnimator.ofFloat(mDragLayerAlpha, MultiValueAlpha.VALUE, alphas);
- alpha.setDuration(CONTENT_ALPHA_DURATION);
- alpha.setInterpolator(LINEAR);
- launcherAnimator.play(alpha);
-
List<View> viewsToAnimate = new ArrayList<>();
-
Workspace workspace = mLauncher.getWorkspace();
workspace.forEachVisiblePage(
view -> viewsToAnimate.add(((CellLayout) view).getShortcutsAndWidgets()));
@@ -499,18 +501,38 @@
viewsToAnimate.forEach(view -> {
view.setLayerType(View.LAYER_TYPE_HARDWARE, null);
- launcherAnimator.play(ObjectAnimator.ofFloat(view, View.TRANSLATION_Y, trans));
+
+ ObjectAnimator scaleAnim = ObjectAnimator.ofFloat(view, SCALE_PROPERTY, scales)
+ .setDuration(CONTENT_SCALE_DURATION);
+ scaleAnim.setInterpolator(DEACCEL_1_5);
+ launcherAnimator.play(scaleAnim);
});
+ int scrimColor = Themes.getAttrColor(mLauncher, R.attr.overviewScrimColor);
+ int scrimColorTrans = ColorUtils.setAlphaComponent(scrimColor, 0);
+ int[] colors = isAppOpening
+ ? new int[] {scrimColorTrans, scrimColor}
+ : new int[] {scrimColor, scrimColorTrans};
+ ScrimView scrimView = mLauncher.getScrimView();
+ if (scrimView.getBackground() instanceof ColorDrawable) {
+ scrimView.setBackgroundColor(colors[0]);
+
+ ObjectAnimator scrim = ObjectAnimator.ofArgb(scrimView, VIEW_BACKGROUND_COLOR,
+ colors);
+ scrim.setDuration(CONTENT_SCRIM_DURATION);
+ scrim.setInterpolator(DEACCEL_1_5);
+ launcherAnimator.play(scrim);
+ }
+
// Pause page indicator animations as they lead to layer trashing.
mLauncher.getWorkspace().getPageIndicator().pauseAnimations();
endListener = () -> {
viewsToAnimate.forEach(view -> {
- view.setTranslationY(0);
+ SCALE_PROPERTY.set(view, 1f);
view.setLayerType(View.LAYER_TYPE_NONE, null);
});
- mDragLayerAlpha.setValue(1f);
+ scrimView.setBackgroundColor(Color.TRANSPARENT);
mLauncher.getWorkspace().getPageIndicator().skipAnimationsToEnd();
};
}
@@ -522,11 +544,11 @@
*
* @param anim the animator set to add to
* @param alphas the alphas to animate to over time
- * @param trans the translation Y values to animator to over time
+ * @param scales the scale values to animator to over time
* @return listener to run when the animation ends
*/
protected Runnable composeViewContentAnimator(@NonNull AnimatorSet anim,
- float[] alphas, float[] trans) {
+ float[] alphas, float[] scales) {
RecentsView overview = mLauncher.getOverviewPanel();
ObjectAnimator alpha = ObjectAnimator.ofFloat(overview,
RecentsView.CONTENT_ALPHA, alphas);
@@ -535,14 +557,14 @@
anim.play(alpha);
overview.setFreezeViewVisibility(true);
- ObjectAnimator transY = ObjectAnimator.ofFloat(overview, View.TRANSLATION_Y, trans);
- transY.setInterpolator(AGGRESSIVE_EASE);
- transY.setDuration(CONTENT_TRANSLATION_DURATION);
- anim.play(transY);
+ ObjectAnimator scaleAnim = ObjectAnimator.ofFloat(overview, SCALE_PROPERTY, scales);
+ scaleAnim.setInterpolator(AGGRESSIVE_EASE);
+ scaleAnim.setDuration(CONTENT_SCALE_DURATION);
+ anim.play(scaleAnim);
return () -> {
overview.setFreezeViewVisibility(false);
- overview.setTranslationY(0);
+ SCALE_PROPERTY.set(overview, 1f);
mLauncher.getStateManager().reapplyState();
};
}
@@ -902,12 +924,39 @@
BACKGROUND_APP.getDepth(mLauncher))
.setDuration(APP_LAUNCH_DURATION);
if (allowBlurringLauncher) {
- depthController.setSurfaceToApp(RemoteAnimationProvider.findLowestOpaqueLayerTarget(
- appTargets, MODE_OPENING));
+ final SurfaceControl dimLayer;
+ if (BlurUtils.supportsBlursOnWindows()) {
+ // Create a temporary effect layer, that lives on top of launcher, so we can apply
+ // the blur to it. The EffectLayer will be fullscreen, which will help with caching
+ // optimizations on the SurfaceFlinger side:
+ // - Results would be able to be cached as a texture
+ // - There won't be texture allocation overhead, because EffectLayers don't have
+ // buffers
+ ViewRootImpl viewRootImpl = mLauncher.getDragLayer().getViewRootImpl();
+ SurfaceControl parent = viewRootImpl != null
+ ? viewRootImpl.getSurfaceControl()
+ : null;
+ dimLayer = new SurfaceControl.Builder()
+ .setName("Blur layer")
+ .setParent(parent)
+ .setOpaque(false)
+ .setHidden(false)
+ .setEffectLayer()
+ .build();
+ } else {
+ dimLayer = null;
+ }
+
+ depthController.setSurface(dimLayer);
backgroundRadiusAnim.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
- depthController.setSurfaceToApp(null);
+ depthController.setSurface(null);
+ if (dimLayer != null) {
+ new SurfaceControl.Transaction()
+ .remove(dimLayer)
+ .apply();
+ }
}
});
}
@@ -1223,8 +1272,7 @@
if (mLauncher.isInState(LauncherState.ALL_APPS)) {
Pair<AnimatorSet, Runnable> contentAnimator =
- getLauncherContentAnimator(false /* isAppOpening */,
- new float[] {-mContentTransY, 0});
+ getLauncherContentAnimator(false /* isAppOpening */);
contentAnimator.first.setStartDelay(LAUNCHER_RESUME_START_DELAY);
anim.play(contentAnimator.first);
anim.addListener(new AnimatorListenerAdapter() {
@@ -1361,14 +1409,14 @@
: APP_LAUNCH_ALPHA_DOWN_DURATION;
iconAlphaStart = hasSplashScreen && !hasDifferentAppIcon ? 0 : 1f;
- // TOOD: Share value from shell when available.
- final float windowIconSize = Utilities.pxFromSp(108, r.getDisplayMetrics());
+ final int windowIconSize = ResourceUtils.getDimenByName("starting_surface_icon_size",
+ r, 108);
cropCenterXStart = windowTargetBounds.centerX();
cropCenterYStart = windowTargetBounds.centerY();
- cropWidthStart = (int) windowIconSize;
- cropHeightStart = (int) windowIconSize;
+ cropWidthStart = windowIconSize;
+ cropHeightStart = windowIconSize;
cropWidthEnd = windowTargetBounds.width();
cropHeightEnd = windowTargetBounds.height();
diff --git a/quickstep/src/com/android/launcher3/appprediction/AllAppsTipView.java b/quickstep/src/com/android/launcher3/appprediction/AllAppsTipView.java
deleted file mode 100644
index 98bf483..0000000
--- a/quickstep/src/com/android/launcher3/appprediction/AllAppsTipView.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/**
- * Copyright (C) 2019 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.appprediction;
-
-import static com.android.launcher3.AbstractFloatingView.TYPE_DISCOVERY_BOUNCE;
-import static com.android.launcher3.AbstractFloatingView.TYPE_ON_BOARD_POPUP;
-import static com.android.launcher3.LauncherState.ALL_APPS;
-
-import android.os.UserManager;
-
-import com.android.launcher3.AbstractFloatingView;
-import com.android.launcher3.Launcher;
-import com.android.launcher3.LauncherState;
-import com.android.launcher3.R;
-import com.android.launcher3.Utilities;
-import com.android.launcher3.allapps.FloatingHeaderView;
-import com.android.launcher3.statemanager.StateManager.StateListener;
-import com.android.launcher3.views.ArrowTipView;
-
-/**
- * ArrowTip helper aligned just above prediction apps, shown to users that enter all apps for the
- * first time.
- */
-public class AllAppsTipView {
-
- private static final String ALL_APPS_TIP_SEEN = "launcher.all_apps_tip_seen";
-
- private static boolean showAllAppsTipIfNecessary(Launcher launcher) {
- FloatingHeaderView floatingHeaderView = launcher.getAppsView().getFloatingHeaderView();
- if (!floatingHeaderView.hasVisibleContent()
- || AbstractFloatingView.getOpenView(launcher,
- TYPE_ON_BOARD_POPUP | TYPE_DISCOVERY_BOUNCE) != null
- || !launcher.isInState(ALL_APPS)
- || hasSeenAllAppsTip(launcher)
- || launcher.getSystemService(UserManager.class).isDemoUser()
- || Utilities.IS_RUNNING_IN_TEST_HARNESS) {
- return false;
- }
-
- int[] coords = new int[2];
- floatingHeaderView.findFixedRowByType(PredictionRowView.class).getLocationOnScreen(coords);
- ArrowTipView arrowTipView = new ArrowTipView(launcher).setOnClosedCallback(() -> {
- launcher.getSharedPrefs().edit().putBoolean(ALL_APPS_TIP_SEEN, true).apply();
- // TODO: add log to WW
- });
- arrowTipView.show(launcher.getString(R.string.all_apps_prediction_tip), coords[1]);
-
- return true;
- }
-
- private static boolean hasSeenAllAppsTip(Launcher launcher) {
- return launcher.getSharedPrefs().getBoolean(ALL_APPS_TIP_SEEN, false);
- }
-
- public static void scheduleShowIfNeeded(Launcher launcher) {
- if (!hasSeenAllAppsTip(launcher)) {
- launcher.getStateManager().addStateListener(new StateListener<LauncherState>() {
- @Override
- public void onStateTransitionComplete(LauncherState finalState) {
- if (finalState == ALL_APPS) {
- if (showAllAppsTipIfNecessary(launcher)) {
- launcher.getStateManager().removeStateListener(this);
- }
- }
- }
- });
- }
- }
-}
diff --git a/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java b/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java
index 6d5975f..de04082 100644
--- a/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java
+++ b/quickstep/src/com/android/launcher3/appprediction/PredictionRowView.java
@@ -88,7 +88,6 @@
@Override
protected void onAttachedToWindow() {
super.onAttachedToWindow();
- AllAppsTipView.scheduleShowIfNeeded(mLauncher);
}
public void setup(FloatingHeaderView parent, FloatingHeaderRow[] rows, boolean tabsHidden) {
diff --git a/quickstep/src/com/android/launcher3/model/WellbeingModel.java b/quickstep/src/com/android/launcher3/model/WellbeingModel.java
index 995c4b0..154b78b 100644
--- a/quickstep/src/com/android/launcher3/model/WellbeingModel.java
+++ b/quickstep/src/com/android/launcher3/model/WellbeingModel.java
@@ -319,12 +319,17 @@
@WorkerThread
private void updateActionsWithRetry(int retryCount, @Nullable String packageName) {
+ if (DEBUG || mIsInTest) {
+ Log.i(TAG,
+ "updateActionsWithRetry(); retryCount: " + retryCount + ", package: "
+ + packageName);
+ }
String[] packageNames = TextUtils.isEmpty(packageName)
- ? mContext.getSystemService(LauncherApps.class)
+ ? mContext.getSystemService(LauncherApps.class)
.getActivityList(null, Process.myUserHandle()).stream()
.map(li -> li.getApplicationInfo().packageName).distinct()
.toArray(String[]::new)
- : new String[] { packageName };
+ : new String[]{packageName};
mWorkerHandler.removeCallbacksAndMessages(packageName);
if (updateActions(packageNames)) {
@@ -335,12 +340,16 @@
return;
}
mWorkerHandler.postDelayed(
- () -> updateActionsWithRetry(retryCount + 1, packageName),
+ () -> {
+ if (DEBUG || mIsInTest) Log.i(TAG, "Retrying; attempt " + (retryCount + 1));
+ updateActionsWithRetry(retryCount + 1, packageName);
+ },
packageName, RETRY_TIMES_MS[retryCount]);
}
@WorkerThread
private void updateAllPackages() {
+ if (DEBUG || mIsInTest) Log.i(TAG, "updateAllPackages");
updateActionsWithRetry(0, null);
}
diff --git a/quickstep/src/com/android/launcher3/statehandlers/DepthController.java b/quickstep/src/com/android/launcher3/statehandlers/DepthController.java
index e608885..46ef698 100644
--- a/quickstep/src/com/android/launcher3/statehandlers/DepthController.java
+++ b/quickstep/src/com/android/launcher3/statehandlers/DepthController.java
@@ -25,7 +25,9 @@
import android.animation.ObjectAnimator;
import android.os.IBinder;
import android.util.FloatProperty;
+import android.view.SurfaceControl;
import android.view.View;
+import android.view.ViewRootImpl;
import android.view.ViewTreeObserver;
import com.android.launcher3.BaseActivity;
@@ -37,9 +39,6 @@
import com.android.launcher3.statemanager.StateManager.StateHandler;
import com.android.launcher3.states.StateAnimationConfig;
import com.android.systemui.shared.system.BlurUtils;
-import com.android.systemui.shared.system.RemoteAnimationTargetCompat;
-import com.android.systemui.shared.system.SurfaceControlCompat;
-import com.android.systemui.shared.system.TransactionCompat;
import com.android.systemui.shared.system.WallpaperManagerCompat;
/**
@@ -91,7 +90,8 @@
@Override
public void onDraw() {
View view = mLauncher.getDragLayer();
- setSurface(new SurfaceControlCompat(view));
+ ViewRootImpl viewRootImpl = view.getViewRootImpl();
+ setSurface(viewRootImpl != null ? viewRootImpl.getSurfaceControl() : null);
view.post(() -> view.getViewTreeObserver().removeOnDrawListener(this));
}
};
@@ -102,7 +102,7 @@
*/
private int mMaxBlurRadius;
private WallpaperManagerCompat mWallpaperManager;
- private SurfaceControlCompat mSurface;
+ private SurfaceControl mSurface;
/**
* Ratio from 0 to 1, where 0 is fully zoomed out, and 1 is zoomed in.
* @see android.service.wallpaper.WallpaperService.Engine#onZoomChanged(float)
@@ -157,11 +157,7 @@
/**
* Sets the specified app target surface to apply the blur to.
*/
- public void setSurfaceToApp(RemoteAnimationTargetCompat target) {
- setSurface(target == null ? null : target.leash);
- }
-
- private void setSurface(SurfaceControlCompat surface) {
+ public void setSurface(SurfaceControl surface) {
if (mSurface != surface) {
mSurface = surface;
if (surface != null) {
@@ -219,7 +215,7 @@
if (supportsBlur) {
boolean isOpaque = mLauncher.getScrimView().isFullyOpaque();
int blur = isOpaque ? 0 : (int) (mDepth * mMaxBlurRadius);
- new TransactionCompat()
+ new SurfaceControl.Transaction()
.setBackgroundBlurRadius(mSurface, blur)
.setOpaque(mSurface, isOpaque)
.apply();
diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java
index 8c3d453..4ba0ee0 100644
--- a/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java
+++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarActivityContext.java
@@ -271,9 +271,7 @@
});
} else if (tag instanceof WorkspaceItemInfo) {
WorkspaceItemInfo info = (WorkspaceItemInfo) tag;
- if (info.isDisabled()) {
- ItemClickHandler.handleDisabledItemClicked(info, this);
- } else {
+ if (!(info.isDisabled() && ItemClickHandler.handleDisabledItemClicked(info, this))) {
Intent intent = new Intent(info.getIntent())
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
try {
diff --git a/quickstep/src/com/android/launcher3/uioverrides/QuickstepInteractionHandler.java b/quickstep/src/com/android/launcher3/uioverrides/QuickstepInteractionHandler.java
index 1304033..d151131 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/QuickstepInteractionHandler.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/QuickstepInteractionHandler.java
@@ -15,6 +15,8 @@
*/
package com.android.launcher3.uioverrides;
+import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_APP_LAUNCH_TAP;
+
import android.app.ActivityOptions;
import android.app.ActivityTaskManager;
import android.app.PendingIntent;
@@ -26,6 +28,7 @@
import android.widget.RemoteViews;
import com.android.launcher3.Utilities;
+import com.android.launcher3.logging.StatsLogManager;
import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.util.ActivityOptionsWrapper;
import com.android.launcher3.widget.LauncherAppWidgetHostView;
@@ -72,9 +75,24 @@
mLauncher.addLaunchCookie((ItemInfo) itemInfo, activityOptions.options);
}
options = Pair.create(options.first, activityOptions.options);
+ if (pendingIntent.isActivity()) {
+ logAppLaunch(itemInfo);
+ }
return RemoteViews.startPendingIntent(hostView, pendingIntent, options);
}
+ /**
+ * Logs that the app was launched from the widget.
+ * @param itemInfo the widget info.
+ */
+ private void logAppLaunch(Object itemInfo) {
+ StatsLogManager.StatsLogger logger = mLauncher.getStatsLogManager().logger();
+ if (itemInfo instanceof ItemInfo) {
+ logger.withItemInfo((ItemInfo) itemInfo);
+ }
+ logger.log(LAUNCHER_APP_LAUNCH_TAP);
+ }
+
private LauncherAppWidgetHostView findHostViewAncestor(View v) {
while (v != null) {
if (v instanceof LauncherAppWidgetHostView) return (LauncherAppWidgetHostView) v;
diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java
index eb62110..283743d 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NoButtonNavbarToOverviewTouchController.java
@@ -51,7 +51,7 @@
* first home screen instead of to Overview.
*/
public class NoButtonNavbarToOverviewTouchController extends PortraitStatesTouchController {
-
+ private static final float ONE_HANDED_ACTIVATED_SLOP_MULTIPLIER = 2.5f;
// How much of the movement to use for translating overview after swipe and hold.
private static final float OVERVIEW_MOVEMENT_FACTOR = 0.25f;
@@ -260,4 +260,14 @@
private float dpiFromPx(float pixels) {
return Utilities.dpiFromPx(pixels, mLauncher.getResources().getDisplayMetrics().densityDpi);
}
+
+ @Override
+ public void onOneHandedModeStateChanged(boolean activated) {
+ if (activated) {
+ mDetector.setTouchSlopMultiplier(ONE_HANDED_ACTIVATED_SLOP_MULTIPLIER);
+ } else {
+ // Reset touch slop multiplier to default 1.0f
+ mDetector.setTouchSlopMultiplier(1f /* default */);
+ }
+ }
}
diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java
index c6ea953..180af0b 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/TaskViewTouchController.java
@@ -21,6 +21,7 @@
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
+import android.os.SystemClock;
import android.view.MotionEvent;
import android.view.View;
import android.view.animation.Interpolator;
@@ -72,6 +73,7 @@
private float mProgressMultiplier;
private float mEndDisplacement;
private FlingBlockCheck mFlingBlockCheck = new FlingBlockCheck();
+ private Float mOverrideVelocity = null;
private TaskView mTaskBeingDragged;
@@ -268,6 +270,7 @@
mCurrentAnimation.pause();
}
mFlingBlockCheck.unblockFling();
+ mOverrideVelocity = null;
}
@Override
@@ -283,19 +286,36 @@
mFlingBlockCheck.onEvent();
}
- // Once halfway through task dismissal interpolation, switch from reversible dragging-task
- // animation to playing the remaining task translation animations
- if (mCurrentAnimation.getProgressFraction() < ANIMATION_PROGRESS_FRACTION_MIDPOINT) {
- // Halve the value as we are animating the drag across the full length for only the
- // first half of the progress
- mCurrentAnimation.setPlayFraction(
- Utilities.boundToRange(totalDisplacement * mProgressMultiplier / 2, 0, 1));
+ if (isGoingUp) {
+ if (mCurrentAnimation.getProgressFraction() < ANIMATION_PROGRESS_FRACTION_MIDPOINT) {
+ // Halve the value when dismissing, as we are animating the drag across the full
+ // length for only the first half of the progress
+ mCurrentAnimation.setPlayFraction(
+ Utilities.boundToRange(totalDisplacement * mProgressMultiplier / 2, 0, 1));
+ } else {
+ // Set mOverrideVelocity to control task dismiss velocity in onDragEnd
+ int velocityDimenId = R.dimen.default_task_dismiss_drag_velocity;
+ if (mRecentsView.showAsGrid()) {
+ if (mTaskBeingDragged.isFocusedTask()) {
+ velocityDimenId =
+ R.dimen.default_task_dismiss_drag_velocity_grid_focus_task;
+ } else {
+ velocityDimenId = R.dimen.default_task_dismiss_drag_velocity_grid;
+ }
+ }
+ mOverrideVelocity = -mTaskBeingDragged.getResources().getDimension(velocityDimenId);
+
+ // Once halfway through task dismissal interpolation, switch from reversible
+ // dragging-task animation to playing the remaining task translation animations
+ final long now = SystemClock.uptimeMillis();
+ MotionEvent upAction = MotionEvent.obtain(now, now,
+ MotionEvent.ACTION_UP, 0.0f, 0.0f, 0);
+ mDetector.onTouchEvent(upAction);
+ upAction.recycle();
+ }
} else {
- float dragVelocity = -mTaskBeingDragged.getResources().getDimension(
- mRecentsView.showAsGrid() ? R.dimen.default_task_dismiss_drag_velocity_grid
- : R.dimen.default_task_dismiss_drag_velocity);
- onDragEnd(dragVelocity);
- return true;
+ mCurrentAnimation.setPlayFraction(
+ Utilities.boundToRange(totalDisplacement * mProgressMultiplier, 0, 1));
}
return true;
@@ -303,6 +323,10 @@
@Override
public void onDragEnd(float velocity) {
+ if (mOverrideVelocity != null) {
+ velocity = mOverrideVelocity;
+ mOverrideVelocity = null;
+ }
// Limit velocity, as very large scalar values make animations play too quickly
float maxTaskDismissDragVelocity = mTaskBeingDragged.getResources().getDimension(
R.dimen.max_task_dismiss_drag_velocity);
diff --git a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java
index c05fb3f..88db274 100644
--- a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java
+++ b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java
@@ -82,6 +82,7 @@
import com.android.launcher3.R;
import com.android.launcher3.Utilities;
import com.android.launcher3.anim.AnimationSuccessListener;
+import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.logging.StatsLogManager;
import com.android.launcher3.logging.StatsLogManager.StatsLogger;
import com.android.launcher3.statemanager.BaseState;
@@ -102,10 +103,10 @@
import com.android.quickstep.util.ProtoTracer;
import com.android.quickstep.util.RecentsOrientedState;
import com.android.quickstep.util.RectFSpringAnim;
+import com.android.quickstep.util.StaggeredWorkspaceAnim;
import com.android.quickstep.util.SurfaceTransactionApplier;
import com.android.quickstep.util.SwipePipToHomeAnimator;
import com.android.quickstep.util.TransformParams;
-import com.android.quickstep.util.WorkspaceRevealAnim;
import com.android.quickstep.views.RecentsView;
import com.android.quickstep.views.TaskView;
import com.android.systemui.shared.recents.model.ThumbnailData;
@@ -201,7 +202,7 @@
STATE_LAUNCHER_PRESENT | STATE_LAUNCHER_DRAWN | STATE_LAUNCHER_STARTED;
public static final long MAX_SWIPE_DURATION = 350;
- public static final long HOME_DURATION = WorkspaceRevealAnim.DURATION_MS;
+ public static final long HOME_DURATION = StaggeredWorkspaceAnim.DURATION_MS;
public static final float MIN_PROGRESS_FOR_OVERVIEW = 0.7f;
private static final float SWIPE_DURATION_MULTIPLIER =
@@ -393,6 +394,9 @@
if (mStateCallback.hasStates(STATE_HANDLER_INVALIDATED)) {
return;
}
+ // RecentsView never updates the display rotation until swipe-up, force update
+ // RecentsOrientedState before passing to TaskViewSimulator.
+ mRecentsView.updateRecentsRotation();
mTaskViewSimulator.setOrientationState(mRecentsView.getPagedViewOrientedState());
// If we've already ended the gesture and are going home, don't prepare recents UI,
@@ -983,6 +987,10 @@
}
if (endTarget == HOME) {
duration = HOME_DURATION;
+ // Early detach the nav bar once the endTarget is determined as HOME
+ if (mRecentsAnimationController != null) {
+ mRecentsAnimationController.detachNavigationBarFromApp(true);
+ }
} else if (endTarget == RECENTS) {
if (mRecentsView != null) {
int nearestPage = mRecentsView.getDestinationPage();
@@ -1229,20 +1237,22 @@
&& (windowRotation == ROTATION_90 || windowRotation == ROTATION_270)) {
swipePipToHomeAnimator.setFromRotation(mTaskViewSimulator, windowRotation);
}
+ AnimatorPlaybackController activityAnimationToHome =
+ homeAnimFactory.createActivityAnimationToHome();
swipePipToHomeAnimator.addListener(new AnimatorListenerAdapter() {
private boolean mHasAnimationEnded;
@Override
public void onAnimationStart(Animator animation) {
if (mHasAnimationEnded) return;
- // Ensure Launcher ends in NORMAL state, we intentionally skip other callbacks
- // since they are not relevant in this swipe-pip-to-home case.
- homeAnimFactory.createActivityAnimationToHome().dispatchOnStart();
+ // Ensure Launcher ends in NORMAL state
+ activityAnimationToHome.dispatchOnStart();
}
@Override
public void onAnimationEnd(Animator animation) {
if (mHasAnimationEnded) return;
mHasAnimationEnded = true;
+ activityAnimationToHome.getAnimationPlayer().end();
if (mRecentsAnimationController == null) {
// If the recents animation is interrupted, we still end the running
// animation (not canceled) so this is still called. In that case, we can
@@ -1407,6 +1417,10 @@
mLauncherTransitionController.getNormalController().getAnimationPlayer().end();
mLauncherTransitionController = null;
}
+
+ if (mRecentsView != null) {
+ mRecentsView.abortScrollerAnimation();
+ }
}
/**
@@ -1425,7 +1439,7 @@
private void resetStateForAnimationCancel() {
boolean wasVisible = mWasLauncherAlreadyVisible || mGestureStarted;
- mActivityInterface.onTransitionCancelled(wasVisible);
+ mActivityInterface.onTransitionCancelled(wasVisible, mGestureState.getEndTarget());
// Leave the pending invisible flag, as it may be used by wallpaper open animation.
if (mActivity != null) {
@@ -1501,7 +1515,7 @@
if (LIVE_TILE.get()) {
mStateCallback.setStateOnUiThread(STATE_CURRENT_TASK_FINISHED);
if (mRecentsAnimationController != null) {
- mRecentsAnimationController.getController().detachNavigationBarFromApp(true);
+ mRecentsAnimationController.detachNavigationBarFromApp(true);
}
} else if (!hasTargets() || mRecentsAnimationController == null) {
// If there are no targets or the animation not started, then there is nothing to finish
diff --git a/quickstep/src/com/android/quickstep/BaseActivityInterface.java b/quickstep/src/com/android/quickstep/BaseActivityInterface.java
index 2696cbe..7ab371b 100644
--- a/quickstep/src/com/android/quickstep/BaseActivityInterface.java
+++ b/quickstep/src/com/android/quickstep/BaseActivityInterface.java
@@ -86,12 +86,22 @@
mBackgroundState = backgroundState;
}
- public void onTransitionCancelled(boolean activityVisible) {
+ /**
+ * Called when the current gesture transition is cancelled.
+ * @param activityVisible Whether the user can see the changes we make here, so try to animate.
+ * @param endTarget If the gesture ended before we got cancelled, where we were headed.
+ */
+ public void onTransitionCancelled(boolean activityVisible,
+ @Nullable GestureState.GestureEndTarget endTarget) {
ACTIVITY_TYPE activity = getCreatedActivity();
if (activity == null) {
return;
}
STATE_TYPE startState = activity.getStateManager().getRestState();
+ if (endTarget != null) {
+ // We were on our way to this state when we got canceled, end there instead.
+ startState = stateFromGestureEndTarget(endTarget);
+ }
activity.getStateManager().goToState(startState, activityVisible);
}
@@ -104,6 +114,9 @@
public abstract void onAssistantVisibilityChanged(float visibility);
+ /** Called when one handed mode activated or deactivated. */
+ public abstract void onOneHandedModeStateChanged(boolean activated);
+
public abstract AnimationFactory prepareRecentsUI(RecentsAnimationDeviceState deviceState,
boolean activityVisible, Consumer<AnimatorControllerWithResistance> callback);
diff --git a/quickstep/src/com/android/quickstep/FallbackActivityInterface.java b/quickstep/src/com/android/quickstep/FallbackActivityInterface.java
index 4ee4398..906599f 100644
--- a/quickstep/src/com/android/quickstep/FallbackActivityInterface.java
+++ b/quickstep/src/com/android/quickstep/FallbackActivityInterface.java
@@ -73,6 +73,11 @@
// set to zero prior to this class becoming active.
}
+ @Override
+ public void onOneHandedModeStateChanged(boolean activated) {
+ // Do nothing for FallbackActivityInterface
+ }
+
/** 6 */
@Override
public AnimationFactory prepareRecentsUI(RecentsAnimationDeviceState deviceState,
diff --git a/quickstep/src/com/android/quickstep/LauncherActivityInterface.java b/quickstep/src/com/android/quickstep/LauncherActivityInterface.java
index 9014774..30abfbb 100644
--- a/quickstep/src/com/android/quickstep/LauncherActivityInterface.java
+++ b/quickstep/src/com/android/quickstep/LauncherActivityInterface.java
@@ -105,6 +105,15 @@
}
@Override
+ public void onOneHandedModeStateChanged(boolean activated) {
+ Launcher launcher = getCreatedActivity();
+ if (launcher == null) {
+ return;
+ }
+ launcher.onOneHandedStateChanged(activated);
+ }
+
+ @Override
public AnimationFactory prepareRecentsUI(RecentsAnimationDeviceState deviceState,
boolean activityVisible, Consumer<AnimatorControllerWithResistance> callback) {
notifyRecentsOfOrientation(deviceState.getRotationTouchHelper());
diff --git a/quickstep/src/com/android/quickstep/OverviewComponentObserver.java b/quickstep/src/com/android/quickstep/OverviewComponentObserver.java
index fb8f9fe..0efe666 100644
--- a/quickstep/src/com/android/quickstep/OverviewComponentObserver.java
+++ b/quickstep/src/com/android/quickstep/OverviewComponentObserver.java
@@ -111,6 +111,11 @@
if (mDeviceState.isHomeDisabled() != mIsHomeDisabled) {
updateOverviewTargets();
}
+
+ // Notify ALL_APPS touch controller when one handed mode state activated or deactivated
+ if (mDeviceState.isOneHandedModeEnabled()) {
+ mActivityInterface.onOneHandedModeStateChanged(mDeviceState.isOneHandedModeActive());
+ }
}
private void updateOverviewTargets(Intent unused) {
diff --git a/quickstep/src/com/android/quickstep/RecentsAnimationController.java b/quickstep/src/com/android/quickstep/RecentsAnimationController.java
index 462f714..50d0569 100644
--- a/quickstep/src/com/android/quickstep/RecentsAnimationController.java
+++ b/quickstep/src/com/android/quickstep/RecentsAnimationController.java
@@ -155,6 +155,14 @@
}
/**
+ * @see RecentsAnimationControllerCompat#detachNavigationBarFromApp
+ */
+ @UiThread
+ public void detachNavigationBarFromApp(boolean moveHomeToTop) {
+ UI_HELPER_EXECUTOR.execute(() -> mController.detachNavigationBarFromApp(moveHomeToTop));
+ }
+
+ /**
* Sets the final surface transaction on a Task. This is used by Launcher to notify the system
* that animating Activity to PiP has completed and the associated task surface should be
* updated accordingly. This should be called before `finish`
diff --git a/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java b/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java
index e821e06..fa37901 100644
--- a/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java
+++ b/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java
@@ -561,7 +561,7 @@
return false;
}
- if (mIsOneHandedModeEnabled || mIsSwipeToNotificationEnabled) {
+ if (mIsOneHandedModeEnabled) {
final Info displayInfo = mDisplayController.getInfo();
return (mRotationTouchHelper.touchInOneHandedModeRegion(ev)
&& displayInfo.rotation != Surface.ROTATION_90
diff --git a/quickstep/src/com/android/quickstep/RotationTouchHelper.java b/quickstep/src/com/android/quickstep/RotationTouchHelper.java
index 66929d0..fc7a3df 100644
--- a/quickstep/src/com/android/quickstep/RotationTouchHelper.java
+++ b/quickstep/src/com/android/quickstep/RotationTouchHelper.java
@@ -152,7 +152,7 @@
// Register for navigation mode changes
SysUINavigationMode.Mode newMode = mSysUiNavMode.addModeChangeListener(this);
- onNavigationModeChanged(newMode);
+ onNavModeChangedInternal(newMode, newMode.hasGestures);
runOnDestroy(() -> mSysUiNavMode.removeModeChangeListener(this));
mOrientationListener = new OrientationEventListener(mContext) {
@@ -245,13 +245,22 @@
@Override
public void onNavigationModeChanged(SysUINavigationMode.Mode newMode) {
+ onNavModeChangedInternal(newMode, false);
+ }
+
+ /**
+ * @param forceRegister if {@code true}, this will register {@link #mFrozenTaskListener} via
+ * {@link #setupOrientationSwipeHandler()}
+ */
+ private void onNavModeChangedInternal(SysUINavigationMode.Mode newMode, boolean forceRegister) {
mDisplayController.removeChangeListener(this);
mDisplayController.addChangeListener(this);
onDisplayInfoChanged(mContext, mDisplayController.getInfo(), CHANGE_ALL);
mOrientationTouchTransformer.setNavigationMode(newMode, mDisplayController.getInfo(),
- mContext.getResources());
- if (!mMode.hasGestures && newMode.hasGestures) {
+ mContext.getResources());
+
+ if (forceRegister || (!mMode.hasGestures && newMode.hasGestures)) {
setupOrientationSwipeHandler();
} else if (mMode.hasGestures && !newMode.hasGestures){
destroyOrientationSwipeHandlerCallback();
diff --git a/quickstep/src/com/android/quickstep/SystemUiProxy.java b/quickstep/src/com/android/quickstep/SystemUiProxy.java
index 7ef6a4a..d040904 100644
--- a/quickstep/src/com/android/quickstep/SystemUiProxy.java
+++ b/quickstep/src/com/android/quickstep/SystemUiProxy.java
@@ -40,6 +40,8 @@
import com.android.systemui.shared.recents.ISystemUiProxy;
import com.android.systemui.shared.recents.model.Task;
import com.android.systemui.shared.system.RemoteTransitionCompat;
+import com.android.systemui.shared.system.smartspace.ISmartspaceCallback;
+import com.android.systemui.shared.system.smartspace.ISmartspaceTransitionController;
import com.android.wm.shell.onehanded.IOneHanded;
import com.android.wm.shell.pip.IPip;
import com.android.wm.shell.pip.IPipAnimationListener;
@@ -61,6 +63,7 @@
private ISystemUiProxy mSystemUiProxy;
private IPip mPip;
+ private ISmartspaceTransitionController mSmartspaceTransitionController;
private ISplitScreen mSplitScreen;
private IOneHanded mOneHanded;
private IShellTransitions mShellTransitions;
@@ -74,6 +77,7 @@
private IPipAnimationListener mPendingPipAnimationListener;
private ISplitScreenListener mPendingSplitScreenListener;
private IStartingWindowListener mPendingStartingWindowListener;
+ private ISmartspaceCallback mPendingSmartspaceCallback;
// Used to dedupe calls to SystemUI
private int mLastShelfHeight;
@@ -125,7 +129,8 @@
public void setProxy(ISystemUiProxy proxy, IPip pip, ISplitScreen splitScreen,
IOneHanded oneHanded, IShellTransitions shellTransitions,
- IStartingWindow startingWindow) {
+ IStartingWindow startingWindow,
+ ISmartspaceTransitionController smartSpaceTransitionController) {
unlinkToDeath();
mSystemUiProxy = proxy;
mPip = pip;
@@ -133,6 +138,7 @@
mOneHanded = oneHanded;
mShellTransitions = shellTransitions;
mStartingWindow = startingWindow;
+ mSmartspaceTransitionController = smartSpaceTransitionController;
linkToDeath();
// re-attach the listeners once missing due to setProxy has not been initialized yet.
if (mPendingPipAnimationListener != null && mPip != null) {
@@ -147,10 +153,14 @@
setStartingWindowListener(mPendingStartingWindowListener);
mPendingStartingWindowListener = null;
}
+ if (mPendingSmartspaceCallback != null && mSmartspaceTransitionController != null) {
+ setSmartspaceCallback(mPendingSmartspaceCallback);
+ mPendingSmartspaceCallback = null;
+ }
}
public void clearProxy() {
- setProxy(null, null, null, null, null, null);
+ setProxy(null, null, null, null, null, null, null);
}
// TODO(141886704): Find a way to remove this
@@ -642,4 +652,21 @@
mPendingStartingWindowListener = listener;
}
}
+
+
+ //
+ // SmartSpace transitions
+ //
+
+ public void setSmartspaceCallback(ISmartspaceCallback callback) {
+ if (mSmartspaceTransitionController != null) {
+ try {
+ mSmartspaceTransitionController.setSmartspace(callback);
+ } catch (RemoteException e) {
+ Log.w(TAG, "Failed call setStartingWindowListener", e);
+ }
+ } else {
+ mPendingSmartspaceCallback = callback;
+ }
+ }
}
diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java
index 7956fcc..e52405b 100644
--- a/quickstep/src/com/android/quickstep/TouchInteractionService.java
+++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java
@@ -30,6 +30,7 @@
import static com.android.systemui.shared.system.QuickStepContract.KEY_EXTRA_SHELL_SHELL_TRANSITIONS;
import static com.android.systemui.shared.system.QuickStepContract.KEY_EXTRA_SHELL_SPLIT_SCREEN;
import static com.android.systemui.shared.system.QuickStepContract.KEY_EXTRA_SHELL_STARTING_WINDOW;
+import static com.android.systemui.shared.system.QuickStepContract.KEY_EXTRA_SMARTSPACE_TRANSITION_CONTROLLER;
import static com.android.systemui.shared.system.QuickStepContract.KEY_EXTRA_SYSUI_PROXY;
import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_TRACING_ENABLED;
@@ -107,6 +108,7 @@
import com.android.systemui.shared.system.InputChannelCompat.InputEventReceiver;
import com.android.systemui.shared.system.InputConsumerController;
import com.android.systemui.shared.system.InputMonitorCompat;
+import com.android.systemui.shared.system.smartspace.ISmartspaceTransitionController;
import com.android.systemui.shared.tracing.ProtoTraceable;
import com.android.wm.shell.onehanded.IOneHanded;
import com.android.wm.shell.pip.IPip;
@@ -164,9 +166,13 @@
bundle.getBinder(KEY_EXTRA_SHELL_SHELL_TRANSITIONS));
IStartingWindow startingWindow = IStartingWindow.Stub.asInterface(
bundle.getBinder(KEY_EXTRA_SHELL_STARTING_WINDOW));
+ ISmartspaceTransitionController smartspaceTransitionController =
+ ISmartspaceTransitionController.Stub.asInterface(
+ bundle.getBinder(KEY_EXTRA_SMARTSPACE_TRANSITION_CONTROLLER));
MAIN_EXECUTOR.execute(() -> {
SystemUiProxy.INSTANCE.get(TouchInteractionService.this).setProxy(proxy, pip,
- splitscreen, onehanded, shellTransitions, startingWindow);
+ splitscreen, onehanded, shellTransitions, startingWindow,
+ smartspaceTransitionController);
TouchInteractionService.this.initInputMonitor();
preloadOverview(true /* fromInit */);
mDeviceState.runOnUserUnlocked(() -> {
diff --git a/quickstep/src/com/android/quickstep/inputconsumers/OneHandedModeInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/OneHandedModeInputConsumer.java
index 8d9c524..bc20902 100644
--- a/quickstep/src/com/android/quickstep/inputconsumers/OneHandedModeInputConsumer.java
+++ b/quickstep/src/com/android/quickstep/inputconsumers/OneHandedModeInputConsumer.java
@@ -147,12 +147,10 @@
}
private void onStartGestureDetected() {
- if (mDeviceState.isOneHandedModeEnabled()) {
- if (!mDeviceState.isOneHandedModeActive()) {
- SystemUiProxy.INSTANCE.get(mContext).startOneHandedMode();
- }
- } else if (mDeviceState.isSwipeToNotificationEnabled()) {
+ if (mDeviceState.isSwipeToNotificationEnabled()) {
SystemUiProxy.INSTANCE.get(mContext).expandNotificationPanel();
+ } else if (!mDeviceState.isOneHandedModeActive()) {
+ SystemUiProxy.INSTANCE.get(mContext).startOneHandedMode();
}
}
diff --git a/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialController.java b/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialController.java
index ab42a2b..a06f903 100644
--- a/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialController.java
@@ -48,7 +48,7 @@
}
@Override
- protected int getMockAppTaskThumbnailResId() {
+ protected int getMockAppTaskThumbnailResId(boolean forDarkMode) {
return R.drawable.mock_conversation;
}
diff --git a/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialFragment.java b/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialFragment.java
index 830d0ad..32f4c58 100644
--- a/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialFragment.java
+++ b/quickstep/src/com/android/quickstep/interaction/BackGestureTutorialFragment.java
@@ -27,10 +27,14 @@
public class BackGestureTutorialFragment extends TutorialFragment {
@Nullable
@Override
- Integer getFeedbackVideoResId() {
+ Integer getFeedbackVideoResId(boolean forDarkMode) {
return mTutorialType == TutorialType.RIGHT_EDGE_BACK_NAVIGATION
- ? R.drawable.gesture_tutorial_motion_back_right
- : R.drawable.gesture_tutorial_motion_back_left;
+ ? (forDarkMode
+ ? R.drawable.gesture_tutorial_motion_back_right_dark_mode
+ : R.drawable.gesture_tutorial_motion_back_right_light_mode)
+ : (forDarkMode
+ ? R.drawable.gesture_tutorial_motion_back_left_dark_mode
+ : R.drawable.gesture_tutorial_motion_back_left_light_mode);
}
@Nullable
diff --git a/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialController.java b/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialController.java
index deaf586..83ce315 100644
--- a/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialController.java
@@ -42,8 +42,8 @@
}
@Override
- protected int getMockAppTaskThumbnailResId() {
- return R.drawable.mock_webpage;
+ protected int getMockAppTaskThumbnailResId(boolean forDarkMode) {
+ return forDarkMode ? R.drawable.mock_webpage_dark_mode : R.drawable.mock_webpage_light_mode;
}
@Override
diff --git a/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialFragment.java b/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialFragment.java
index 47964d2..9572637 100644
--- a/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialFragment.java
+++ b/quickstep/src/com/android/quickstep/interaction/HomeGestureTutorialFragment.java
@@ -24,8 +24,10 @@
public class HomeGestureTutorialFragment extends TutorialFragment {
@Nullable
@Override
- Integer getFeedbackVideoResId() {
- return R.drawable.gesture_tutorial_motion_home;
+ Integer getFeedbackVideoResId(boolean forDarkMode) {
+ return forDarkMode
+ ? R.drawable.gesture_tutorial_motion_home_dark_mode
+ : R.drawable.gesture_tutorial_motion_home_light_mode;
}
@Nullable
diff --git a/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialController.java b/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialController.java
index 984d054..77ddb2b 100644
--- a/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialController.java
@@ -49,7 +49,7 @@
}
@Override
- protected int getMockAppTaskThumbnailResId() {
+ protected int getMockAppTaskThumbnailResId(boolean forDarkMode) {
return R.drawable.mock_conversations_list;
}
diff --git a/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialFragment.java b/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialFragment.java
index c919b96..d2ec327 100644
--- a/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialFragment.java
+++ b/quickstep/src/com/android/quickstep/interaction/OverviewGestureTutorialFragment.java
@@ -24,8 +24,10 @@
public class OverviewGestureTutorialFragment extends TutorialFragment {
@Nullable
@Override
- Integer getFeedbackVideoResId() {
- return R.drawable.gesture_tutorial_motion_overview;
+ Integer getFeedbackVideoResId(boolean forDarkMode) {
+ return forDarkMode
+ ? R.drawable.gesture_tutorial_motion_overview_dark_mode
+ : R.drawable.gesture_tutorial_motion_overview_light_mode;
}
@Nullable
diff --git a/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java b/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java
index b06f001..b2183d6 100644
--- a/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/SwipeUpGestureTutorialController.java
@@ -72,7 +72,7 @@
private AnimatorListenerAdapter mResetTaskView = new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
- mFakeLauncherView.setVisibility(View.INVISIBLE);
+ mFakeHotseatView.setVisibility(View.INVISIBLE);
mFakeIconView.setVisibility(View.INVISIBLE);
if (mTutorialFragment.getActivity() != null) {
DisplayMetrics displayMetrics =
@@ -197,7 +197,7 @@
hideFeedback(true);
cancelRunningAnimation();
mFakePreviousTaskView.setVisibility(View.INVISIBLE);
- mFakeLauncherView.setVisibility(View.VISIBLE);
+ mFakeHotseatView.setVisibility(View.VISIBLE);
mShowPreviousTasks = false;
RectFSpringAnim rectAnim =
mTaskViewSwipeUpAnimation.handleSwipeUpToHome(finalVelocity);
@@ -299,7 +299,7 @@
@Override
public RectF getWindowTargetRect() {
int fakeHomeIconSizePx = Utilities.dpToPx(60);
- int fakeHomeIconLeft = mFakeLauncherView.getLeft();
+ int fakeHomeIconLeft = mFakeHotseatView.getLeft();
int fakeHomeIconTop = mDp.heightPx - Utilities.dpToPx(216);
return new RectF(fakeHomeIconLeft, fakeHomeIconTop,
fakeHomeIconLeft + fakeHomeIconSizePx,
diff --git a/quickstep/src/com/android/quickstep/interaction/TutorialController.java b/quickstep/src/com/android/quickstep/interaction/TutorialController.java
index 5e94574..c9da609 100644
--- a/quickstep/src/com/android/quickstep/interaction/TutorialController.java
+++ b/quickstep/src/com/android/quickstep/interaction/TutorialController.java
@@ -30,6 +30,7 @@
import android.view.accessibility.AccessibilityEvent;
import android.widget.Button;
import android.widget.ImageView;
+import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.CallSuper;
@@ -66,7 +67,8 @@
final ViewGroup mFeedbackView;
final ImageView mFeedbackVideoView;
final ImageView mGestureVideoView;
- final ImageView mFakeLauncherView;
+ final RelativeLayout mFakeLauncherView;
+ final ImageView mFakeHotseatView;
final ClipIconView mFakeIconView;
final View mFakeTaskView;
final View mFakePreviousTaskView;
@@ -90,6 +92,7 @@
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);
+ mFakeHotseatView = rootView.findViewById(R.id.gesture_tutorial_fake_hotseat_view);
mFakeIconView = rootView.findViewById(R.id.gesture_tutorial_fake_icon_view);
mFakeTaskView = rootView.findViewById(R.id.gesture_tutorial_fake_task_view);
mFakePreviousTaskView =
@@ -113,12 +116,12 @@
}
@DrawableRes
- protected int getMockLauncherResId() {
+ protected int getMockHotseatResId() {
return R.drawable.default_sandbox_mock_launcher;
}
@DrawableRes
- protected int getMockAppTaskThumbnailResId() {
+ protected int getMockAppTaskThumbnailResId(boolean forDarkMode) {
return R.drawable.default_sandbox_app_task_thumbnail;
}
@@ -312,8 +315,8 @@
updateDrawables();
mGestureCompleted = false;
- if (mFakeLauncherView != null) {
- mFakeLauncherView.setVisibility(View.INVISIBLE);
+ if (mFakeHotseatView != null) {
+ mFakeHotseatView.setVisibility(View.INVISIBLE);
}
}
@@ -344,10 +347,14 @@
mTutorialFragment.getRootView().setBackground(AppCompatResources.getDrawable(
mContext, getMockWallpaperResId()));
mTutorialFragment.updateFeedbackVideo();
- mFakeLauncherView.setImageDrawable(AppCompatResources.getDrawable(
- mContext, getMockLauncherResId()));
+ mFakeLauncherView.setBackgroundColor(
+ mContext.getColor(Utilities.isDarkTheme(mContext)
+ ? R.color.fake_wallpaper_color_dark_mode
+ : R.color.fake_wallpaper_color_light_mode));
+ mFakeHotseatView.setImageDrawable(AppCompatResources.getDrawable(
+ mContext, getMockHotseatResId()));
mFakeTaskView.setBackground(AppCompatResources.getDrawable(
- mContext, getMockAppTaskThumbnailResId()));
+ mContext, getMockAppTaskThumbnailResId(Utilities.isDarkTheme(mContext))));
mFakeTaskView.animate().alpha(1).setListener(
AnimatorListeners.forSuccessCallback(() -> mFakeTaskView.animate().cancel()));
mFakePreviousTaskView.setBackground(AppCompatResources.getDrawable(
diff --git a/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java b/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java
index 55c569d..ec26022 100644
--- a/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java
+++ b/quickstep/src/com/android/quickstep/interaction/TutorialFragment.java
@@ -38,6 +38,7 @@
import androidx.fragment.app.FragmentActivity;
import com.android.launcher3.R;
+import com.android.launcher3.Utilities;
import com.android.quickstep.interaction.TutorialController.TutorialType;
abstract class TutorialFragment extends Fragment implements OnTouchListener {
@@ -96,7 +97,7 @@
return null;
}
- @Nullable Integer getFeedbackVideoResId() {
+ @Nullable Integer getFeedbackVideoResId(boolean forDarkMode) {
return null;
}
@@ -176,8 +177,12 @@
}
boolean updateFeedbackVideo() {
- Integer feedbackVideoResId = getFeedbackVideoResId();
- if (feedbackVideoResId == null || getContext() == null || !updateGestureVideo()) {
+ if (getContext() == null) {
+ return false;
+ }
+ Integer feedbackVideoResId = getFeedbackVideoResId(Utilities.isDarkTheme(getContext()));
+
+ if (feedbackVideoResId == null || !updateGestureVideo()) {
return false;
}
mTutorialAnimation = (AnimatedVectorDrawable) getContext().getDrawable(feedbackVideoResId);
diff --git a/quickstep/src/com/android/quickstep/util/AssistContentRequester.java b/quickstep/src/com/android/quickstep/util/AssistContentRequester.java
index 71c6382..b1e38eb 100644
--- a/quickstep/src/com/android/quickstep/util/AssistContentRequester.java
+++ b/quickstep/src/com/android/quickstep/util/AssistContentRequester.java
@@ -54,6 +54,7 @@
private final IActivityTaskManager mActivityTaskManager;
private final String mPackageName;
private final Executor mCallbackExecutor;
+ private final Executor mSystemInteractionExecutor;
// If system loses the callback, our internal cache of original callback will also get cleared.
private final Map<Object, Callback> mPendingCallbacks =
@@ -63,6 +64,7 @@
mActivityTaskManager = ActivityTaskManager.getService();
mPackageName = context.getApplicationContext().getPackageName();
mCallbackExecutor = Executors.MAIN_EXECUTOR;
+ mSystemInteractionExecutor = Executors.UI_HELPER_EXECUTOR;
}
/**
@@ -71,13 +73,16 @@
* @param taskId to query for the content.
* @param callback to call when the content is available, called on the main thread.
*/
- public void requestAssistContent(int taskId, Callback callback) {
- try {
- mActivityTaskManager.requestAssistDataForTask(
- new AssistDataReceiver(callback, this), taskId, mPackageName);
- } catch (RemoteException e) {
- Log.e(TAG, "Requesting assist content failed for task: " + taskId, e);
- }
+ public void requestAssistContent(final int taskId, final Callback callback) {
+ // ActivityTaskManager interaction here is synchronous, so call off the main thread.
+ mSystemInteractionExecutor.execute(() -> {
+ try {
+ mActivityTaskManager.requestAssistDataForTask(
+ new AssistDataReceiver(callback, this), taskId, mPackageName);
+ } catch (RemoteException e) {
+ Log.e(TAG, "Requesting assist content failed for task: " + taskId, e);
+ }
+ });
}
private void executeOnMainExecutor(Runnable callback) {
diff --git a/quickstep/src/com/android/quickstep/util/OverviewToHomeAnim.java b/quickstep/src/com/android/quickstep/util/OverviewToHomeAnim.java
index badb41a..5cf4f0b 100644
--- a/quickstep/src/com/android/quickstep/util/OverviewToHomeAnim.java
+++ b/quickstep/src/com/android/quickstep/util/OverviewToHomeAnim.java
@@ -78,6 +78,10 @@
}
StateAnimationConfig config = new StateAnimationConfig();
+ if (playWorkspaceRevealAnim) {
+ // WorkspaceRevealAnim handles the depth, so don't interfere.
+ config.animFlags |= StateAnimationConfig.SKIP_DEPTH_CONTROLLER;
+ }
config.duration = startState.getTransitionDuration(mLauncher);
AnimatorSet stateAnim = stateManager.createAtomicAnimation(
startState, NORMAL, config);
diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java
index 342313d..a4c60cf 100644
--- a/quickstep/src/com/android/quickstep/views/RecentsView.java
+++ b/quickstep/src/com/android/quickstep/views/RecentsView.java
@@ -76,7 +76,6 @@
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.UserHandle;
-import android.os.VibrationEffect;
import android.text.Layout;
import android.text.StaticLayout;
import android.text.TextPaint;
@@ -133,7 +132,6 @@
import com.android.launcher3.util.SplitConfigurationOptions.SplitPositionOption;
import com.android.launcher3.util.Themes;
import com.android.launcher3.util.TranslateEdgeEffect;
-import com.android.launcher3.util.VibratorWrapper;
import com.android.launcher3.util.ViewPool;
import com.android.quickstep.AnimatedFloat;
import com.android.quickstep.BaseActivityInterface;
@@ -344,17 +342,6 @@
private static final float INITIAL_DISMISS_TRANSLATION_INTERPOLATION_OFFSET = 0.55f;
private static final float ADDITIONAL_DISMISS_TRANSLATION_INTERPOLATION_OFFSET = 0.05f;
- private static final int SNAP_TO_PAGE_VIBRATION_PRIMITIVE =
- Utilities.ATLEAST_S ? VibrationEffect.Composition.PRIMITIVE_LOW_TICK : -1;
- private static final float SNAP_TO_PAGE_VIBRATION_PRIMITIVE_SCALE = 0.4f;
- private static final VibrationEffect SNAP_TO_PAGE_VIBRATION_FALLBACK =
- VibrationEffect.createPredefined(VibrationEffect.EFFECT_TEXTURE_TICK);
- private static final int EDGE_IMPACT_VIBRATION_PRIMITIVE =
- Utilities.ATLEAST_R ? VibrationEffect.Composition.PRIMITIVE_TICK : -1;
- private static final float EDGE_IMPACT_VIBRATION_PRIMITIVE_SCALE = 0.8f;
- private static final VibrationEffect EDGE_IMPACT_VIBRATION_FALLBACK =
- VibrationEffect.createPredefined(VibrationEffect.EFFECT_TICK);
-
protected final RecentsOrientedState mOrientationState;
protected final BaseActivityInterface<STATE_TYPE, ACTIVITY_TYPE> mSizeStrategy;
protected RecentsAnimationController mRecentsAnimationController;
@@ -423,6 +410,7 @@
// TODO(b/187528071): Remove these and replace with a real scrim.
private float mColorTint;
private final int mTintingColor;
+ private ObjectAnimator mTintingAnimator;
private int mOverScrollShift = 0;
@@ -973,8 +961,6 @@
@Override
protected void onPageEndTransition() {
super.onPageEndTransition();
- VibratorWrapper.INSTANCE.get(mContext).vibrate(SNAP_TO_PAGE_VIBRATION_PRIMITIVE,
- SNAP_TO_PAGE_VIBRATION_PRIMITIVE_SCALE, SNAP_TO_PAGE_VIBRATION_FALLBACK);
if (isClearAllHidden()) {
mActionsView.updateDisabledFlags(OverviewActionsView.DISABLED_SCROLLING, false);
}
@@ -1078,13 +1064,6 @@
}
@Override
- protected void onEdgeAbsorbingScroll() {
- super.onEdgeAbsorbingScroll();
- VibratorWrapper.INSTANCE.get(mContext).vibrate(EDGE_IMPACT_VIBRATION_PRIMITIVE,
- EDGE_IMPACT_VIBRATION_PRIMITIVE_SCALE, EDGE_IMPACT_VIBRATION_FALLBACK);
- }
-
- @Override
protected void determineScrollingStart(MotionEvent ev, float touchSlopScale) {
// Enables swiping to the left or right only if the task overlay is not modal.
if (!isModal()) {
@@ -2641,19 +2620,20 @@
if (LIVE_TILE.get() && mEnableDrawingLiveTile && newConfig.orientation != mOrientation) {
switchToScreenshot(
() -> finishRecentsAnimation(true /* toRecents */,
- this::onConfigurationChangedInternal));
+ this::updateRecentsRotation));
mEnableDrawingLiveTile = false;
} else {
- onConfigurationChangedInternal();
+ updateRecentsRotation();
}
mOrientation = newConfig.orientation;
}
- private void onConfigurationChangedInternal() {
+ /**
+ * Updates {@link RecentsOrientedState}'s cached RecentsView rotation.
+ */
+ public void updateRecentsRotation() {
final int rotation = mActivity.getDisplay().getRotation();
- if (mOrientationState.setRecentsRotation(rotation)) {
- updateOrientationHandler();
- }
+ mOrientationState.setRecentsRotation(rotation);
}
public void setLayoutRotation(int touchRotation, int displayRotation) {
@@ -3714,9 +3694,17 @@
* 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();
+ if (!show && mColorTint == 0) {
+ if (mTintingAnimator != null) {
+ mTintingAnimator.cancel();
+ mTintingAnimator = null;
+ }
+ return;
+ }
+
+ mTintingAnimator = ObjectAnimator.ofFloat(this, COLOR_TINT, show ? 0.5f : 0f);
+ mTintingAnimator.setAutoCancel(true);
+ mTintingAnimator.start();
}
/** Tint the RecentsView and TaskViews in to simulate a scrim. */
diff --git a/quickstep/src/com/android/quickstep/views/TaskMenuView.java b/quickstep/src/com/android/quickstep/views/TaskMenuView.java
index d5816b5..c97225e 100644
--- a/quickstep/src/com/android/quickstep/views/TaskMenuView.java
+++ b/quickstep/src/com/android/quickstep/views/TaskMenuView.java
@@ -234,7 +234,7 @@
Rect insets = mActivity.getDragLayer().getInsets();
BaseDragLayer.LayoutParams params = (BaseDragLayer.LayoutParams) getLayoutParams();
int padding = getResources()
- .getDimensionPixelSize(R.dimen.task_card_menu_option_vertical_padding);
+ .getDimensionPixelSize(R.dimen.task_menu_vertical_padding);
params.width = orientationHandler.getTaskMenuWidth(taskView.getThumbnail()) - (2 * padding);
// Gravity set to Left instead of Start as sTempRect.left measures Left distance not Start
params.gravity = Gravity.LEFT;
diff --git a/quickstep/src/com/android/quickstep/views/TaskThumbnailView.java b/quickstep/src/com/android/quickstep/views/TaskThumbnailView.java
index 02888a1..f730d2d 100644
--- a/quickstep/src/com/android/quickstep/views/TaskThumbnailView.java
+++ b/quickstep/src/com/android/quickstep/views/TaskThumbnailView.java
@@ -336,12 +336,20 @@
if (mOverlayEnabled != overlayEnabled) {
mOverlayEnabled = overlayEnabled;
- if (mOverlayEnabled) {
- getTaskOverlay().initOverlay(mTask, mThumbnailData, mPreviewPositionHelper.mMatrix,
- mPreviewPositionHelper.mIsOrientationChanged);
- } else {
- getTaskOverlay().reset();
- }
+ refreshOverlay();
+ }
+ }
+
+ /**
+ * Potentially re-init the task overlay. Be cautious when calling this as the overlay may
+ * do processing on initialization.
+ */
+ private void refreshOverlay() {
+ if (mOverlayEnabled) {
+ getTaskOverlay().initOverlay(mTask, mThumbnailData, mPreviewPositionHelper.mMatrix,
+ mPreviewPositionHelper.mIsOrientationChanged);
+ } else {
+ getTaskOverlay().reset();
}
}
@@ -382,6 +390,8 @@
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
super.onSizeChanged(w, h, oldw, oldh);
updateThumbnailMatrix();
+
+ refreshOverlay();
}
private ColorFilter getColorFilter(float dimAmount) {
diff --git a/res/color-night-v31/widgets_picker_surface.xml b/res/color-night-v31/surface.xml
similarity index 100%
rename from res/color-night-v31/widgets_picker_surface.xml
rename to res/color-night-v31/surface.xml
diff --git a/res/color-night-v31/widgets_picker_scrim.xml b/res/color-night-v31/widgets_picker_scrim.xml
new file mode 100644
index 0000000..be7010b
--- /dev/null
+++ b/res/color-night-v31/widgets_picker_scrim.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:color="@android:color/system_neutral1_900" android:alpha="0.8" />
+</selector>
diff --git a/res/color-v31/widgets_picker_surface.xml b/res/color-v31/surface.xml
similarity index 100%
rename from res/color-v31/widgets_picker_surface.xml
rename to res/color-v31/surface.xml
diff --git a/res/color-v31/widgets_picker_scrim.xml b/res/color-v31/widgets_picker_scrim.xml
new file mode 100644
index 0000000..648824a
--- /dev/null
+++ b/res/color-v31/widgets_picker_scrim.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:color="@android:color/system_neutral1_200" android:alpha="0.8" />
+</selector>
diff --git a/res/color/arrow_tip_view_content.xml b/res/color/arrow_tip_view_content.xml
index 87c733e..7d7f98b 100644
--- a/res/color/arrow_tip_view_content.xml
+++ b/res/color/arrow_tip_view_content.xml
@@ -19,5 +19,5 @@
-->
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
- <item android:color="@android:color/white" />
+ <item android:color="?android:attr/textColorPrimaryInverse" />
</selector>
diff --git a/res/color/button_bg.xml b/res/color/button_bg.xml
new file mode 100644
index 0000000..91eed50
--- /dev/null
+++ b/res/color/button_bg.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:color="?android:attr/colorAccent" />
+</selector>
diff --git a/res/color/button_text.xml b/res/color/button_text.xml
new file mode 100644
index 0000000..7d7f98b
--- /dev/null
+++ b/res/color/button_text.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+<selector
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:color="?android:attr/textColorPrimaryInverse" />
+</selector>
diff --git a/res/color/widgets_picker_surface.xml b/res/color/surface.xml
similarity index 100%
rename from res/color/widgets_picker_surface.xml
rename to res/color/surface.xml
diff --git a/res/color/widgets_picker_scrim.xml b/res/color/widgets_picker_scrim.xml
new file mode 100644
index 0000000..1cf97f6
--- /dev/null
+++ b/res/color/widgets_picker_scrim.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:color="#000000" android:alpha="0.32" />
+</selector>
diff --git a/res/drawable-v28/widgets_bottom_sheet_background.xml b/res/drawable-v28/widgets_bottom_sheet_background.xml
index c3009c3..7fb8681 100644
--- a/res/drawable-v28/widgets_bottom_sheet_background.xml
+++ b/res/drawable-v28/widgets_bottom_sheet_background.xml
@@ -16,7 +16,7 @@
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="?android:attr/dialogCornerRadius"
android:topRightRadius="?android:attr/dialogCornerRadius"
diff --git a/res/drawable/add_item_dialog_background.xml b/res/drawable/add_item_dialog_background.xml
index 16a0767..c3a8269 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="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="?android:attr/dialogCornerRadius"
android:topRightRadius="?android:attr/dialogCornerRadius" />
diff --git a/res/drawable/add_item_dialog_button_background.xml b/res/drawable/add_item_dialog_button_background.xml
deleted file mode 100644
index 1b4591f..0000000
--- a/res/drawable/add_item_dialog_button_background.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<inset
- android:insetLeft="@dimen/pin_widget_button_inset_horizontal"
- android:insetRight="@dimen/pin_widget_button_inset_horizontal"
- android:insetTop="@dimen/pin_widget_button_inset_vertical"
- android:insetBottom="@dimen/pin_widget_button_inset_vertical"
- xmlns:android="http://schemas.android.com/apk/res/android">
- <ripple
- android:color="?android:attr/colorControlHighlight">
- <item>
- <shape android:tint="?android:attr/colorAccent" android:shape="rectangle">
- <corners android:radius="18dp" />
- <solid android:color="#FFFFFF" />
- <padding
- android:left="@dimen/pin_widget_button_padding_horizontal"
- android:top="@dimen/pin_widget_button_padding_vertical"
- android:right="@dimen/pin_widget_button_padding_horizontal"
- android:bottom="@dimen/pin_widget_button_padding_vertical" />
- </shape>
- </item>
- </ripple>
-</inset>
\ No newline at end of file
diff --git a/res/drawable/all_apps_tabs_background.xml b/res/drawable/all_apps_tabs_background.xml
index f882522..a345dd3 100644
--- a/res/drawable/all_apps_tabs_background.xml
+++ b/res/drawable/all_apps_tabs_background.xml
@@ -16,8 +16,9 @@
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:androidprv="http://schemas.android.com/apk/prv/res/android">
<item
- android:top="6dp"
- android:bottom="6dp">
+ android:top="@dimen/all_apps_tabs_vertical_padding"
+ android:bottom="@dimen/all_apps_tabs_vertical_padding
+">
<shape android:shape="rectangle">
<solid android:color="?androidprv:attr/colorSurface" />
<corners android:radius="@dimen/all_apps_header_pill_corner_radius" />
diff --git a/res/drawable/arrow_toast_rounded_background.xml b/res/drawable/arrow_toast_rounded_background.xml
index f3f2158..1206ddd 100644
--- a/res/drawable/arrow_toast_rounded_background.xml
+++ b/res/drawable/arrow_toast_rounded_background.xml
@@ -15,5 +15,5 @@
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="@color/arrow_tip_view_bg" />
- <corners android:radius="8dp" />
+ <corners android:radius="@dimen/dialogCornerRadius" />
</shape>
diff --git a/res/drawable/bg_rounded_corner_bottom_sheet.xml b/res/drawable/bg_rounded_corner_bottom_sheet.xml
new file mode 100644
index 0000000..aa49bce
--- /dev/null
+++ b/res/drawable/bg_rounded_corner_bottom_sheet.xml
@@ -0,0 +1,23 @@
+<?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.
+-->
+
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+ android:shape="rectangle" >
+ <solid android:color="@color/surface" />
+ <corners
+ android:topLeftRadius="@dimen/dialogCornerRadius"
+ android:topRightRadius="@dimen/dialogCornerRadius" />
+</shape>
\ No newline at end of file
diff --git a/res/drawable/bg_widgets_searchbox.xml b/res/drawable/bg_widgets_searchbox.xml
index 3230ac8..dc6d868 100644
--- a/res/drawable/bg_widgets_searchbox.xml
+++ b/res/drawable/bg_widgets_searchbox.xml
@@ -14,6 +14,6 @@
limitations under the License.
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners android:radius="24dp" />
</shape>
\ No newline at end of file
diff --git a/res/drawable/button_bottom_rounded_colored_ripple.xml b/res/drawable/button_bottom_rounded_colored_ripple.xml
new file mode 100644
index 0000000..95f5234
--- /dev/null
+++ b/res/drawable/button_bottom_rounded_colored_ripple.xml
@@ -0,0 +1,32 @@
+<?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.
+-->
+
+<inset
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <ripple
+ android:color="?android:attr/colorControlHighlight">
+ <item>
+ <shape android:shape="rectangle">
+ <corners
+ android:topLeftRadius="4dp"
+ android:topRightRadius="4dp"
+ android:bottomLeftRadius="12dp"
+ android:bottomRightRadius="12dp" />
+ <solid android:color="@color/button_bg"/>
+ </shape>
+ </item>
+ </ripple>
+</inset>
\ No newline at end of file
diff --git a/res/drawable/button_rounded_colored_ripple.xml b/res/drawable/button_rounded_colored_ripple.xml
new file mode 100644
index 0000000..f6d689f
--- /dev/null
+++ b/res/drawable/button_rounded_colored_ripple.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<inset
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <ripple
+ android:color="?android:attr/colorControlHighlight">
+ <item>
+ <shape android:shape="rectangle">
+ <corners android:radius="12dp"/>
+ <solid android:color="@color/button_bg"/>
+ </shape>
+ </item>
+ </ripple>
+</inset>
\ No newline at end of file
diff --git a/res/drawable/button_top_rounded_bordered_ripple.xml b/res/drawable/button_top_rounded_bordered_ripple.xml
new file mode 100644
index 0000000..f15a4a0
--- /dev/null
+++ b/res/drawable/button_top_rounded_bordered_ripple.xml
@@ -0,0 +1,35 @@
+<?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.
+-->
+
+<inset
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <ripple
+ android:color="?android:attr/colorControlHighlight">
+ <item>
+ <shape android:shape="rectangle">
+ <corners
+ android:topLeftRadius="12dp"
+ android:topRightRadius="12dp"
+ android:bottomLeftRadius="4dp"
+ android:bottomRightRadius="4dp" />
+ <solid android:color="@color/surface"/>
+ <stroke
+ android:width="2dp"
+ android:color="@color/button_bg"/>
+ </shape>
+ </item>
+ </ripple>
+</inset>
\ No newline at end of file
diff --git a/res/drawable/drop_target_background.xml b/res/drawable/drop_target_background.xml
new file mode 100644
index 0000000..7e07bf5
--- /dev/null
+++ b/res/drawable/drop_target_background.xml
@@ -0,0 +1,21 @@
+<?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.
+-->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+ <item android:state_selected="true"
+ android:drawable="@drawable/drop_target_frame_hover" />
+ <item android:state_selected="false"
+ android:drawable="@drawable/drop_target_frame" />
+</selector>
\ No newline at end of file
diff --git a/res/drawable/full_rounded_colored_ripple.xml b/res/drawable/full_rounded_colored_ripple.xml
new file mode 100644
index 0000000..d89537c
--- /dev/null
+++ b/res/drawable/full_rounded_colored_ripple.xml
@@ -0,0 +1,28 @@
+<?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.
+-->
+
+<inset
+ xmlns:android="http://schemas.android.com/apk/res/android">
+ <ripple
+ android:color="?android:attr/colorControlHighlight">
+ <item>
+ <shape android:shape="rectangle">
+ <solid android:color="@color/button_bg"/>
+ <corners android:radius="28dp"/>
+ </shape>
+ </item>
+ </ripple>
+</inset>
\ No newline at end of file
diff --git a/quickstep/res/drawable/gesture_tutorial_motion_overview.xml b/res/drawable/gesture_tutorial_motion_overview_light_mode.xml
similarity index 96%
copy from quickstep/res/drawable/gesture_tutorial_motion_overview.xml
copy to res/drawable/gesture_tutorial_motion_overview_light_mode.xml
index 058bee2..75887c9 100644
--- a/quickstep/res/drawable/gesture_tutorial_motion_overview.xml
+++ b/res/drawable/gesture_tutorial_motion_overview_light_mode.xml
@@ -58,19 +58,6 @@
</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">
@@ -860,7 +847,7 @@
<path
android:name="_R_G_L_5_G_D_0_P_0"
android:fillAlpha="1"
- android:fillColor="#000000"
+ android:fillColor="@color/fake_wallpaper_color_light_mode"
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>
@@ -876,17 +863,6 @@
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">
@@ -1211,18 +1187,6 @@
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"
@@ -1600,7 +1564,7 @@
<path
android:name="_R_G_L_1_G_D_0_P_0"
android:fillAlpha="1"
- android:fillColor="#3c4043"
+ android:fillColor="@color/gesture_tutorial_fake_previous_task_view_color"
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>
@@ -1612,7 +1576,7 @@
<path
android:name="_R_G_L_0_G_D_0_P_0"
android:fillAlpha="0"
- android:fillColor="@color/gesture_tutorial_primary_color"
+ 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>
diff --git a/res/drawable/widgets_bottom_sheet_background.xml b/res/drawable/widgets_bottom_sheet_background.xml
index 2460767..b877546 100644
--- a/res/drawable/widgets_bottom_sheet_background.xml
+++ b/res/drawable/widgets_bottom_sheet_background.xml
@@ -16,7 +16,7 @@
-->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="@dimen/default_dialog_corner_radius"
android:topRightRadius="@dimen/default_dialog_corner_radius"
diff --git a/res/drawable/widgets_list_bottom_ripple.xml b/res/drawable/widgets_list_bottom_ripple.xml
index 971d6f3..c2debb1 100644
--- a/res/drawable/widgets_list_bottom_ripple.xml
+++ b/res/drawable/widgets_list_bottom_ripple.xml
@@ -21,7 +21,7 @@
android:color="?android:attr/colorControlHighlight">
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="@dimen/widget_list_content_corner_radius"
android:topRightRadius="@dimen/widget_list_content_corner_radius"
@@ -31,7 +31,7 @@
</item>
<item android:id="@android:id/background">
<shape android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="@dimen/widget_list_content_corner_radius"
android:topRightRadius="@dimen/widget_list_content_corner_radius"
diff --git a/res/drawable/widgets_list_middle_ripple.xml b/res/drawable/widgets_list_middle_ripple.xml
index 2b77d4d..83f96a0 100644
--- a/res/drawable/widgets_list_middle_ripple.xml
+++ b/res/drawable/widgets_list_middle_ripple.xml
@@ -21,7 +21,7 @@
android:color="?android:attr/colorControlHighlight">
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="@dimen/widget_list_content_corner_radius"
android:topRightRadius="@dimen/widget_list_content_corner_radius"
@@ -32,7 +32,7 @@
<item android:id="@android:id/background">
<shape android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="@dimen/widget_list_content_corner_radius"
android:topRightRadius="@dimen/widget_list_content_corner_radius"
diff --git a/res/drawable/widgets_list_single_item_ripple.xml b/res/drawable/widgets_list_single_item_ripple.xml
index c09944d..a4223a8 100644
--- a/res/drawable/widgets_list_single_item_ripple.xml
+++ b/res/drawable/widgets_list_single_item_ripple.xml
@@ -21,7 +21,7 @@
android:color="?android:attr/colorControlHighlight">
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="@dimen/widget_list_top_bottom_corner_radius"
android:topRightRadius="@dimen/widget_list_top_bottom_corner_radius"
@@ -31,7 +31,7 @@
</item>
<item android:id="@android:id/background">
<shape android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="@dimen/widget_list_top_bottom_corner_radius"
android:topRightRadius="@dimen/widget_list_top_bottom_corner_radius"
diff --git a/res/drawable/widgets_list_top_ripple.xml b/res/drawable/widgets_list_top_ripple.xml
index f79ab72..bc0876e 100644
--- a/res/drawable/widgets_list_top_ripple.xml
+++ b/res/drawable/widgets_list_top_ripple.xml
@@ -21,7 +21,7 @@
android:color="?android:attr/colorControlHighlight">
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="@dimen/widget_list_top_bottom_corner_radius"
android:topRightRadius="@dimen/widget_list_top_bottom_corner_radius"
@@ -32,7 +32,7 @@
<item android:id="@android:id/background">
<shape android:shape="rectangle">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners
android:topLeftRadius="@dimen/widget_list_top_bottom_corner_radius"
android:topRightRadius="@dimen/widget_list_top_bottom_corner_radius"
diff --git a/res/drawable/widgets_recommendation_background.xml b/res/drawable/widgets_recommendation_background.xml
index b59de27..0550a34 100644
--- a/res/drawable/widgets_recommendation_background.xml
+++ b/res/drawable/widgets_recommendation_background.xml
@@ -19,6 +19,6 @@
-->
<shape android:shape="rectangle"
xmlns:android="http://schemas.android.com/apk/res/android">
- <solid android:color="@color/widgets_picker_surface" />
+ <solid android:color="@color/surface" />
<corners android:radius="@dimen/widget_list_top_bottom_corner_radius"/>
</shape>
\ No newline at end of file
diff --git a/res/layout/add_item_confirmation_activity.xml b/res/layout/add_item_confirmation_activity.xml
index 0a3fbbc..9439baf 100644
--- a/res/layout/add_item_confirmation_activity.xml
+++ b/res/layout/add_item_confirmation_activity.xml
@@ -31,7 +31,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/add_item_dialog_background"
- android:padding="24dp"
+ android:paddingTop="24dp"
android:theme="?attr/widgetsTheme"
android:layout_gravity="bottom"
android:orientation="vertical">
@@ -42,6 +42,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
+ android:paddingHorizontal="24dp"
android:textColor="?android:attr/textColorPrimary"
android:textSize="24sp"
android:ellipsize="end"
@@ -53,7 +54,8 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
- android:paddingVertical="8dp"
+ android:paddingHorizontal="24dp"
+ android:paddingTop="8dp"
android:text="@string/add_item_request_drag_hint"
android:textSize="14sp"
android:textColor="?android:attr/textColorSecondary"
@@ -70,28 +72,33 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:gravity="end"
- android:padding="8dp"
+ android:gravity="center_vertical|end"
+ android:paddingHorizontal="24dp"
+ android:paddingVertical="8dp"
android:orientation="horizontal">
<Button
- style="@style/Widget.DeviceDefault.Button.Rounded.Colored"
+ style="@style/Button.FullRounded.Colored"
android:layout_width="wrap_content"
- android:layout_height="wrap_content"
+ android:layout_height="36dp"
android:paddingHorizontal="16dp"
- android:onClick="onCancelClick"
- android:text="@android:string/cancel" />
+ android:textSize="14sp"
+ android:textColor="@color/button_text"
+ android:text="@android:string/cancel"
+ android:onClick="onCancelClick"/>
<Space
- android:layout_width="4dp"
+ android:layout_width="8dp"
android:layout_height="wrap_content" />
<Button
- style="@style/Widget.DeviceDefault.Button.Rounded.Colored"
+ style="@style/Button.FullRounded.Colored"
android:layout_width="wrap_content"
- android:layout_height="wrap_content"
+ android:layout_height="36dp"
android:paddingHorizontal="16dp"
- android:onClick="onPlaceAutomaticallyClick"
- android:text="@string/add_to_home_screen"/>
+ android:textSize="14sp"
+ android:textColor="@color/button_text"
+ android:text="@string/add_to_home_screen"
+ android:onClick="onPlaceAutomaticallyClick"/>
</LinearLayout>
</com.android.launcher3.widget.AddItemWidgetsBottomSheet>
diff --git a/res/layout/arrow_toast.xml b/res/layout/arrow_toast.xml
index ae60e1b..aee00a9 100644
--- a/res/layout/arrow_toast.xml
+++ b/res/layout/arrow_toast.xml
@@ -16,50 +16,25 @@
<merge
xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_height="wrap_content"
android:layout_width="wrap_content">
- <LinearLayout
+ <TextView
+ android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:paddingStart="24dp"
- android:paddingEnd="4dp"
- android:background="@drawable/arrow_toast_rounded_background"
android:layout_gravity="center_horizontal"
+ android:gravity="center"
+ android:padding="16dp"
+ android:background="@drawable/arrow_toast_rounded_background"
android:elevation="2dp"
- android:orientation="horizontal">
-
- <TextView
- android:id="@+id/text"
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:paddingTop="5dp"
- android:paddingBottom="5dp"
- android:gravity="center"
- android:layout_gravity="center_vertical"
- android:textColor="@color/arrow_tip_view_content"
- android:textSize="16sp"/>
- <ImageView
- android:id="@+id/dismiss"
- android:layout_width="40dp"
- android:layout_height="40dp"
- android:layout_gravity="center_vertical"
- android:padding="10dp"
- android:layout_marginStart="2dp"
- android:layout_marginEnd="2dp"
- android:alpha="0.7"
- android:src="@drawable/ic_remove_no_shadow"
- android:tint="@color/arrow_tip_view_content"
- android:background="?android:attr/selectableItemBackgroundBorderless"
- android:contentDescription="@string/accessibility_close"/>
- </LinearLayout>
+ android:textColor="@color/arrow_tip_view_content"
+ android:textSize="14sp"/>
<View
android:id="@+id/arrow"
android:elevation="2dp"
- android:layout_width="10dp"
+ android:layout_width="@dimen/arrow_toast_arrow_width"
android:layout_height="8dp"
android:layout_marginTop="-2dp"/>
</merge>
diff --git a/res/layout/settings_activity.xml b/res/layout/settings_activity.xml
new file mode 100644
index 0000000..5edd2df
--- /dev/null
+++ b/res/layout/settings_activity.xml
@@ -0,0 +1,35 @@
+<?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.
+-->
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+ android:id="@+id/content_parent"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:orientation="vertical"
+ android:fitsSystemWindows="true">
+
+ <Toolbar
+ android:id="@+id/action_bar"
+ style="?android:attr/actionBarStyle"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:theme="?android:attr/actionBarTheme" />
+
+ <FrameLayout
+ android:id="@+id/content_frame"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent" />
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/widgets_edu.xml b/res/layout/widgets_edu.xml
new file mode 100644
index 0000000..280c095
--- /dev/null
+++ b/res/layout/widgets_edu.xml
@@ -0,0 +1,66 @@
+<?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.
+-->
+
+<com.android.launcher3.views.WidgetsEduView
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_gravity="bottom"
+ android:gravity="bottom"
+ android:orientation="vertical">
+
+ <LinearLayout
+ android:id="@+id/edu_view"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:background="@drawable/bg_rounded_corner_bottom_sheet"
+ android:gravity="center_horizontal"
+ android:orientation="vertical"
+ android:paddingHorizontal="@dimen/bottom_sheet_edu_padding"
+ android:paddingTop="@dimen/bottom_sheet_edu_padding">
+
+ <TextView
+ style="@style/TextHeadline"
+ android:id="@+id/edu_header"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:gravity="center_horizontal"
+ android:text="@string/widget_education_header"
+ android:textColor="?android:attr/textColorPrimary"
+ android:textSize="24sp"
+ android:layout_marginBottom="16dp"/>
+
+ <TextView
+ android:id="@+id/edu_content"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:gravity="center_horizontal"
+ android:text="@string/widget_education_content"
+ android:textSize="14sp"
+ android:textColor="?android:attr/textColorSecondary"
+ android:layout_marginBottom="24dp"/>
+
+ <Button
+ android:id="@+id/edu_close_button"
+ style="@style/Button.Rounded.Colored"
+ android:layout_width="match_parent"
+ android:layout_height="56dp"
+ android:text="@string/widget_education_close_button"
+ android:textSize="16sp"
+ android:textColor="@color/button_text"
+ android:layout_marginBottom="8dp"/>
+ </LinearLayout>
+</com.android.launcher3.views.WidgetsEduView>
\ No newline at end of file
diff --git a/res/layout/widgets_full_sheet.xml b/res/layout/widgets_full_sheet.xml
index a01aa2c..dca3e79 100644
--- a/res/layout/widgets_full_sheet.xml
+++ b/res/layout/widgets_full_sheet.xml
@@ -25,8 +25,7 @@
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="?android:attr/colorBackground"
- android:elevation="4dp">
+ android:background="?android:attr/colorBackground">
<TextView
android:id="@+id/no_widgets_text"
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index b3b0d2b..ad353e1 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Persoonlik"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Werk"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Gesprekke"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Nuttige inligting binne jou bereik"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Jy kan legstukke by jou tuisskerm voeg om inligting te kry sonder om programme oop te maak"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Het dit"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Deursoek programme"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Laai tans programme …"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Kon geen programme kry wat by \"<xliff:g id="QUERY">%1$s</xliff:g>\" pas nie"</string>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 1de056d..34cdc03 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"የግል"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ስራ"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"ውይይቶች"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"በጣቶችዎ ጫፎች ላይ ጠቃሚ መረጃ"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"መተግበሪያዎችን ሳይከፍቱ መረጃ ለማግኘት በመነሻ ማያ ገጽዎ ላይ ምግብሮችን ማከል ይችላሉ"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"ገባኝ"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"መተግበሪያዎችን ፈልግ"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"መተግበሪያዎችን በመጫን ላይ…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"ከ«<xliff:g id="QUERY">%1$s</xliff:g>» ጋር የሚዛመዱ ምንም መተግበሪያዎች አልተገኙም"</string>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index 9ddb736..7a5488f 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -59,6 +59,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"الأدوات الشخصية"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"أدوات العمل"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"المحادثات"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"معلومات مفيدة في متناول يديك"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"للحصول على معلومات بدون فتح التطبيقات، يمكنك إضافة الأدوات إلى الشاشة الرئيسية."</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"حسنًا"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"بحث في التطبيقات"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"جارٍ تحميل التطبيقات…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"لم يتم العثور على أي تطبيقات تتطابق مع \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-as/strings.xml b/res/values-as/strings.xml
index 8ff9e49..1b2d8a1 100644
--- a/res/values-as/strings.xml
+++ b/res/values-as/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ব্যক্তিগত"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"কৰ্মস্থান"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"বাৰ্তালাপ"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"আপোনাৰ আঙুলিৰে টিপতে উপযোগী তথ্য পাওক"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"এপ্ নোখোলাকৈ তথ্য পাবলৈ আপুনি নিজৰ গৃহ স্ক্ৰীনত ৱিজেট যোগ দিব পাৰে"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"বুজি পালোঁ"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"এপসমূহ সন্ধান কৰক"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"এপসমূহ ল’ড কৰি থকা হৈছে…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\"ৰ সৈতে মিলা কোনো এপ্ বিচাৰি পোৱা নগ\'ল"</string>
diff --git a/res/values-az/strings.xml b/res/values-az/strings.xml
index 4faba10..41573d9 100644
--- a/res/values-az/strings.xml
+++ b/res/values-az/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Şəxsi"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"İş"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Söhbətlər"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Faydalı məlumatlar barmaqlarınızın ucunda"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Tətbiqləri açmadan məlumat almaq üçün Əsas ekrana vidcet əlavə edə bilərsiniz"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Anladım"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Tətbiqləri axtarın"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Tətbiqlər yüklənir…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"<xliff:g id="QUERY">%1$s</xliff:g> sorğusuna uyğun tətbiq tapılmadı"</string>
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index 7005656..1417ea6 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -53,6 +53,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Lično"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Posao"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Konverzacije"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Korisne informacije nadohvat ruke"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Da biste pronašli informacije bez otvaranja aplikacija, možete da dodate vidžete na početni ekran"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Važi"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Pretražite aplikacije"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Aplikacije se učitavaju…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nije pronađena nijedna aplikacija za „<xliff:g id="QUERY">%1$s</xliff:g>“"</string>
diff --git a/res/values-be/strings.xml b/res/values-be/strings.xml
index c082f9f..c0047ce 100644
--- a/res/values-be/strings.xml
+++ b/res/values-be/strings.xml
@@ -55,6 +55,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Асабістыя"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Працоўныя"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Размовы"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Карысная інфармацыя ў вас пад рукой"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Каб не адкрываць праграмы для прагляду патрэбнай інфармацыі, дадайце віджэты на галоўны экран"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Зразумела"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Пошук праграм"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Праграмы загружаюцца…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Праграм, якія адпавядаюць запыту \"<xliff:g id="QUERY">%1$s</xliff:g>\", не знойдзена"</string>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index 7c1af2a..69f2074 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/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="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> приспособления</item>
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Лични"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Служебни"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Разговори"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Лесен достъп до полезна информация"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"За да получавате информация, без да отваряте приложенията, можете да добавите приспособления към началния екран"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Разбрах"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Търсене в приложенията"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Приложенията се зареждат…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Няма намерени приложения, съответстващи на „<xliff:g id="QUERY">%1$s</xliff:g>“"</string>
diff --git a/res/values-bn/strings.xml b/res/values-bn/strings.xml
index 71b00eb..8c8292d 100644
--- a/res/values-bn/strings.xml
+++ b/res/values-bn/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ব্যক্তিগত"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"অফিস"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"কথোপকথন"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"সহজেই দরকারি তথ্য পান"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"অ্যাপ না খুলে তথ্য পাওয়ার জন্য, আপনার হোম স্ক্রিনে উইজেট যোগ করতে পারেন"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"বুঝেছি"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"অ্যাপ খুঁজুন"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"অ্যাপ লোড হচ্ছে…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" এর সাথে মেলে এমন কোনো অ্যাপ পাওয়া যায়নি"</string>
diff --git a/res/values-bs/strings.xml b/res/values-bs/strings.xml
index b7d93f6..bfec27d 100644
--- a/res/values-bs/strings.xml
+++ b/res/values-bs/strings.xml
@@ -53,6 +53,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Lično"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Posao"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Razgovori"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Korisne informacije nadohvat ruke"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Da dobijete informacije bez otvaranja aplikacija, možete dodati vidžete na početni ekran"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Razumijem"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Pretražite aplikacije"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Aplikacije se učitavaju…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nije pronađena nijedna aplikacija za upit \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 2926d56..d35bfc6 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Treball"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Converses"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Informació útil a l\'abast de la mà"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Per obtenir informació sense obrir les aplicacions, pots afegir widgets a la pantalla d\'inici"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Entesos"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Cerca aplicacions"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"S\'estan carregant les aplicacions…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"No s\'ha trobat cap aplicació que coincideixi amb \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
@@ -152,7 +155,7 @@
<string name="all_apps_work_tab" msgid="4884822796154055118">"Treball"</string>
<string name="work_profile_toggle_label" msgid="3081029915775481146">"Perfil de treball"</string>
<string name="work_profile_edu_personal_apps" msgid="4155536355149317441">"Les dades personals s\'oculten i se separen de les aplicacions de treball"</string>
- <string name="work_profile_edu_work_apps" msgid="237051938268703058">"L\'administrador de TI pot veure les dades i les aplicacions de treball"</string>
+ <string name="work_profile_edu_work_apps" msgid="237051938268703058">"L\'administrador de TI pot veure les teves dades i aplicacions de treball"</string>
<string name="work_profile_edu_next" msgid="8783418929296503629">"Següent"</string>
<string name="work_profile_edu_accept" msgid="6069788082535149071">"Entesos"</string>
<string name="work_apps_paused_title" msgid="2389865654362803723">"El perfil de treball està en pausa"</string>
@@ -163,6 +166,6 @@
<string name="work_apps_pause_btn_text" msgid="4669288269140620646">"Posa en pausa les aplicacions de treball"</string>
<string name="work_apps_enable_btn_text" msgid="82111102541971856">"Activa"</string>
<string name="developer_options_filter_hint" msgid="5896817443635989056">"Filtra"</string>
- <string name="work_switch_tip" msgid="808075064383839144">"Posa en pausa les notificacions i les aplicacions de treball"</string>
+ <string name="work_switch_tip" msgid="808075064383839144">"Posa en pausa les aplicacions i notificacions de treball"</string>
<string name="remote_action_failed" msgid="1383965239183576790">"Error: <xliff:g id="WHAT">%1$s</xliff:g>"</string>
</resources>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 3198068..c1ed288 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Dvojitým klepnutím a podržením přesunete widget, případně použijte vlastní akce."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"šířka %1$d, výška %2$d"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Pokud widgetem chcete pohybovat po ploše, dotkněte se ho a podržte ho"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Pokud chcete widgetem pohybovat po ploše, podržte ho"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Přidat na plochu"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="few"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> widgety</item>
@@ -55,6 +55,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Osobní"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Práce"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Konverzace"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Užitečné informace na dosah"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Pokud chcete mít informace k dispozici bez otevírání aplikací, můžete si na plochu přidat widgety"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Rozumím"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Hledat v aplikacích"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Načítání aplikací…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Dotazu „<xliff:g id="QUERY">%1$s</xliff:g>“ neodpovídají žádné aplikace"</string>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index 502d5eb..dea0183 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personlige"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Arbejde"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Samtaler"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Nyttige oplysninger lige ved hånden"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Hvis du vil have oplysninger uden at åbne apps, kan du føje widgets til din startskærm"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Søg efter apps"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Indlæser apps…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Der blev ikke fundet nogen apps, som matcher \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index 63c58c7..3a20d17 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Privat"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Geschäftlich"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Unterhaltungen"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Praktische Informationen – immer zur Hand"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Wenn du Informationen erhalten möchtest, ohne Apps zu öffnen, kannst du deinem Startbildschirm Widgets hinzufügen"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Apps finden"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Apps werden geladen…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Keine Apps für \"<xliff:g id="QUERY">%1$s</xliff:g>\" gefunden"</string>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 0ffe2c4..4e8ecf9 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Προσωπικά"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Εργασίας"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Συζητήσεις"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Χρήσιμες πληροφορίες στη διάθεσή σας"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Για να λάβετε πληροφορίες χωρίς να ανοίξετε εφαρμογές, μπορείτε να προσθέσετε γραφικά στοιχεία στην αρχική σας οθόνη."</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Το κατάλαβα"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Αναζήτηση εφαρμογών"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Φόρτωση εφαρμογών…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Δεν βρέθηκαν εφαρμογές αντιστοίχισης για \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-en-rAU/strings.xml b/res/values-en-rAU/strings.xml
index 5af3e7d..ecf6803 100644
--- a/res/values-en-rAU/strings.xml
+++ b/res/values-en-rAU/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Double-tap & hold to move a widget or use custom actions."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d wide by %2$d high"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Touch & hold the widget to move it around the home screen"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Touch and hold the widget to move it around the home screen"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Add to home screen"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> widgets</item>
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Work"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversations"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Useful info at your fingertips"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"To get info without opening apps, you can add widgets to your home screen"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Search apps"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Loading apps…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"No apps found matching \'<xliff:g id="QUERY">%1$s</xliff:g>\'"</string>
diff --git a/res/values-en-rCA/strings.xml b/res/values-en-rCA/strings.xml
index 5af3e7d..ecf6803 100644
--- a/res/values-en-rCA/strings.xml
+++ b/res/values-en-rCA/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Double-tap & hold to move a widget or use custom actions."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d wide by %2$d high"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Touch & hold the widget to move it around the home screen"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Touch and hold the widget to move it around the home screen"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Add to home screen"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> widgets</item>
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Work"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversations"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Useful info at your fingertips"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"To get info without opening apps, you can add widgets to your home screen"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Search apps"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Loading apps…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"No apps found matching \'<xliff:g id="QUERY">%1$s</xliff:g>\'"</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 5af3e7d..ecf6803 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Double-tap & hold to move a widget or use custom actions."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d wide by %2$d high"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Touch & hold the widget to move it around the home screen"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Touch and hold the widget to move it around the home screen"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Add to home screen"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> widgets</item>
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Work"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversations"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Useful info at your fingertips"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"To get info without opening apps, you can add widgets to your home screen"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Search apps"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Loading apps…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"No apps found matching \'<xliff:g id="QUERY">%1$s</xliff:g>\'"</string>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 5af3e7d..ecf6803 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Double-tap & hold to move a widget or use custom actions."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"%1$d wide by %2$d high"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Touch & hold the widget to move it around the home screen"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Touch and hold the widget to move it around the home screen"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Add to home screen"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> widgets</item>
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Work"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversations"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Useful info at your fingertips"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"To get info without opening apps, you can add widgets to your home screen"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Search apps"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Loading apps…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"No apps found matching \'<xliff:g id="QUERY">%1$s</xliff:g>\'"</string>
diff --git a/res/values-en-rXC/strings.xml b/res/values-en-rXC/strings.xml
index b82f0c9..9475db9 100644
--- a/res/values-en-rXC/strings.xml
+++ b/res/values-en-rXC/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Work"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversations"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Useful info at your fingertips"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"To get info without opening apps, you can add widgets to your Home screen"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Got it"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Search apps"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Loading apps…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"No apps found matching \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 56f31bf..1f9d5f1 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Trabajo"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversaciones"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Información útil a tu alcance"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Para recibir información de apps sin abrirlas, puedes agregar widgets a la pantalla principal"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Entendido"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Buscar apps"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Cargando apps…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"No hay apps que coincidan con \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 686d224..45061d5 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Trabajo"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversaciones"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Información útil al alcance de la mano"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Para recibir información sin abrir aplicaciones, puedes añadir widgets a la pantalla de inicio."</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Entendido"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Buscar aplicaciones"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Cargando aplicaciones…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"No se han encontrado aplicaciones que contengan \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
@@ -156,8 +159,8 @@
<string name="work_profile_edu_next" msgid="8783418929296503629">"Siguiente"</string>
<string name="work_profile_edu_accept" msgid="6069788082535149071">"Entendido"</string>
<string name="work_apps_paused_title" msgid="2389865654362803723">"El perfil de trabajo está en pausa"</string>
- <string name="work_apps_paused_body" msgid="4209084728264328628">"Las aplicaciones de trabajo no pueden enviarte notificaciones, consumir tu batería ni acceder a tu ubicación"</string>
- <string name="work_apps_paused_content_description" msgid="4473292417145736203">"El perfil de trabajo está en pausa. Las aplicaciones de trabajo no pueden enviarte notificaciones, consumir tu batería ni acceder a tu ubicación"</string>
+ <string name="work_apps_paused_body" msgid="4209084728264328628">"Las aplicaciones de trabajo no pueden enviarte notificaciones, consumir batería ni acceder a tu ubicación"</string>
+ <string name="work_apps_paused_content_description" msgid="4473292417145736203">"El perfil de trabajo está en pausa. Las aplicaciones de trabajo no pueden enviarte notificaciones, consumir batería ni acceder a tu ubicación"</string>
<string name="work_apps_paused_edu_banner" msgid="8872412121608402058">"Las aplicaciones de trabajo tienen una insignia y tu administrador de TI las puede ver"</string>
<string name="work_apps_paused_edu_accept" msgid="6377476824357318532">"Entendido"</string>
<string name="work_apps_pause_btn_text" msgid="4669288269140620646">"Pausar aplicaciones de trabajo"</string>
diff --git a/res/values-et/strings.xml b/res/values-et/strings.xml
index 4908c4d..ef27c2b 100644
--- a/res/values-et/strings.xml
+++ b/res/values-et/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Isiklik"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Töö"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Vestlused"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Kasulik teave on teie käeulatuses"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Teabe saamiseks rakendusi avamata võite oma avakuvale lisada vidinaid"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Selge"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Otsige rakendusi"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Rakenduste laadimine …"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Päringule „<xliff:g id="QUERY">%1$s</xliff:g>” ei vastanud ükski rakendus"</string>
diff --git a/res/values-eu/strings.xml b/res/values-eu/strings.xml
index c15b18c..812f007 100644
--- a/res/values-eu/strings.xml
+++ b/res/values-eu/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Pertsonalak"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Lanekoak"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Elkarrizketak"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Informazio erabilgarria beti eskura"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Aplikazioa ireki beharrik gabe informazioa zuzenean jasotzeko, gehitu widgetak hasierako pantailan"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Ados"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Bilatu aplikazioetan"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Aplikazioak kargatzen…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Ez da aurkitu \"<xliff:g id="QUERY">%1$s</xliff:g>\" bilaketaren emaitzarik"</string>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index f1ae4d5..29ada37 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"شخصی"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"کار"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"مکالمهها"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"دسترسی آسان به اطلاعات سودمند"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"با افزودن ابزارکها به «صفحه اصلی» میتوانید اطلاعات را بدون باز کردن برنامهها دریافت کنید"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"متوجهام"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"جستجوی برنامهها"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"درحال بارگیری برنامهها…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"هیچ برنامهای در مطابقت با «<xliff:g id="QUERY">%1$s</xliff:g>» پیدا نشد"</string>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index dcee366..c4d0655 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Henkilökohtainen"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Työ"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Keskustelut"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Hyödyllisiä tietoja käden ulottuvilla"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Jos haluat nähdä tietoja avaamatta sovelluksia, voit lisätä aloitusnäytölle widgetejä"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Hae sovelluksia"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Ladataan sovelluksia…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"<xliff:g id="QUERY">%1$s</xliff:g> ei palauttanut sovelluksia."</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 4b8c690..9522a38 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -51,6 +51,12 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personnels"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Professionnels"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversations"</string>
+ <!-- no translation found for widget_education_header (4874760613775913787) -->
+ <skip />
+ <!-- no translation found for widget_education_content (745542879510751525) -->
+ <skip />
+ <!-- no translation found for widget_education_close_button (8676165703104836580) -->
+ <skip />
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Rechercher dans les applications"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Chargement des applications en cours…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Aucune application trouvée correspondant à « <xliff:g id="QUERY">%1$s</xliff:g> »"</string>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 90c98fb..adc04fd 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personnels"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Professionnels"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversations"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Infos utiles à portée de main"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Pour obtenir des infos sans ouvrir d\'applis, vous pouvez ajouter des widgets à votre écran d\'accueil"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Rechercher dans les applications"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Chargement des applications…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Aucune application ne correspond à la requête \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-gl/strings.xml b/res/values-gl/strings.xml
index e4a93d4..615c644 100644
--- a/res/values-gl/strings.xml
+++ b/res/values-gl/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Widgets persoais"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Widgets do traballo"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversas"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Información útil ao teu alcance"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Se queres obter información sen abrir as aplicacións, podes engadir widgets á pantalla de inicio"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Entendido"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Buscar aplicacións"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Cargando aplicacións…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Non se atoparon aplicacións que coincidan con \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
@@ -152,7 +155,7 @@
<string name="all_apps_work_tab" msgid="4884822796154055118">"Traballo"</string>
<string name="work_profile_toggle_label" msgid="3081029915775481146">"Perfil de traballo"</string>
<string name="work_profile_edu_personal_apps" msgid="4155536355149317441">"Os datos persoais sepáranse e ocúltanse das aplicacións do traballo"</string>
- <string name="work_profile_edu_work_apps" msgid="237051938268703058">"O teu administrador de TI pode ver as aplicacións e os datos do traballo"</string>
+ <string name="work_profile_edu_work_apps" msgid="237051938268703058">"O teu administrador de TI pode ver as túas aplicacións e datos do traballo"</string>
<string name="work_profile_edu_next" msgid="8783418929296503629">"Seguinte"</string>
<string name="work_profile_edu_accept" msgid="6069788082535149071">"Entendido"</string>
<string name="work_apps_paused_title" msgid="2389865654362803723">"O perfil de traballo está en pausa"</string>
diff --git a/res/values-gu/strings.xml b/res/values-gu/strings.xml
index 3a25705..9c909a0 100644
--- a/res/values-gu/strings.xml
+++ b/res/values-gu/strings.xml
@@ -51,6 +51,12 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"વ્યક્તિગત"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ઑફિસ"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"વાતચીતો"</string>
+ <!-- no translation found for widget_education_header (4874760613775913787) -->
+ <skip />
+ <!-- no translation found for widget_education_content (745542879510751525) -->
+ <skip />
+ <!-- no translation found for widget_education_close_button (8676165703104836580) -->
+ <skip />
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"શોધ ઍપ્લિકેશનો"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"ઍપ્લિકેશનો લોડ કરી રહ્યું છે…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\"થી મેળ ખાતી કોઈ ઍપ્લિકેશનો મળી નથી"</string>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index 471e088..5cfb7db 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"निजी विजेट"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ऑफ़िस"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"बातचीत"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"काम की जानकारी आसानी से पाएं"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"ऐप्लिकेशन को खोले बिना उनकी जानकारी पाने के लिए, आप होम स्क्रीन पर विजेट जोड़ सकते हैं"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"ठीक है"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ऐप सर्च करें"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"ऐप्लिकेशन लोड हो रहे हैं…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" से मिलता-जुलता कोई ऐप्लिकेशन नहीं मिला"</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 413afce..6c94f31 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -53,6 +53,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Osobno"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Posao"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Razgovori"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Korisne informacije nadohvat ruke"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Da biste dobili informacije bez otvaranja aplikacija, možete dodati widgete na početni zaslon"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Shvaćam"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Pretraži aplikacije"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Učitavanje aplikacija…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nema aplikacija podudarnih s upitom \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 0435801..5e1b032 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Személyes"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Munka"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Beszélgetések"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Hasznos információk egy koppintásnyira"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Ha az alkalmazások megnyitása nélkül szeretne információhoz jutni, felvehet modulokat a kezdőképernyőre."</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Értem"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Alkalmazások keresése"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Alkalmazások betöltése…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nem található alkalmazás a(z) „<xliff:g id="QUERY">%1$s</xliff:g>” lekérdezésre"</string>
@@ -66,7 +69,7 @@
<string name="all_apps_button_work_label" msgid="7270707118948892488">"Munkahelyi alkalmazások listája"</string>
<string name="remove_drop_target_label" msgid="7812859488053230776">"Törlés"</string>
<string name="uninstall_drop_target_label" msgid="4722034217958379417">"Eltávolítás"</string>
- <string name="app_info_drop_target_label" msgid="692894985365717661">"Alkalmazásinformáció"</string>
+ <string name="app_info_drop_target_label" msgid="692894985365717661">"Alkalmazásinfó"</string>
<string name="install_drop_target_label" msgid="2539096853673231757">"Telepítés"</string>
<string name="dismiss_prediction_label" msgid="3357562989568808658">"Ne javasoljon alkalmazást"</string>
<string name="pin_prediction" msgid="4196423321649756498">"Várható kitűzése"</string>
diff --git a/res/values-hy/strings.xml b/res/values-hy/strings.xml
index 37d0815..bc68e3e 100644
--- a/res/values-hy/strings.xml
+++ b/res/values-hy/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Անձնական"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Աշխատանքային"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Զրույցներ"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Օգտակար տեղեկությունները՝ միշտ հասանելի"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Ավելացրեք վիջեթներ ձեր հիմնական էկրանին և ստացեք տեղեկություններ՝ առանց հավելվածները բացելու։"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Եղավ"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Որոնել հավելվածներ"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Հավելվածների բեռնում…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"«<xliff:g id="QUERY">%1$s</xliff:g>» հարցմանը համապատասխանող հավելվածներ չեն գտնվել"</string>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index abad5f0..782737c 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Pribadi"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Kantor"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Percakapan"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Info bermanfaat yang mudah diakses"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Untuk mendapatkan info tanpa membuka aplikasi, Anda dapat menambahkan widget ke Layar utama"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Oke"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Telusuri aplikasi"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Memuat aplikasi…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Tidak ditemukan aplikasi yang cocok dengan \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-is/strings.xml b/res/values-is/strings.xml
index bb4ee9b..b15e86c 100644
--- a/res/values-is/strings.xml
+++ b/res/values-is/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Persónulegt"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Vinna"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Samtöl"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Gagnlegar upplýsingar innan seilingar"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Þú getur bætt við græjum á heimaskjáinn til að fá upplýsingar án þess að opna forrit"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Ég skil"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Leita í forritum"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Hleður forrit…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Ekki fundust forrit sem samsvara „<xliff:g id="QUERY">%1$s</xliff:g>“"</string>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index 2a19b73..23297e4 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personali"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Lavoro"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversazioni"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Informazioni utili a portata di mano"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Per ricevere informazioni senza aprire app, puoi aggiungere widget alla schermata Home"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Cerca nelle app"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Caricamento delle app…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nessuna app trovata corrispondente a \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index c8793ac..fb72d55 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -55,6 +55,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"אישי"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"עבודה"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"שיחות"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"קבלת מידע שימושי בהקשה"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"רוצה לקבל מידע בלי לפתוח אפליקציות? אפשר להוסיף ווידג\'טים למסך הבית"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"הבנתי"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"חיפוש אפליקציות"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"טעינת אפליקציות מתבצעת…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"לא נמצאו אפליקציות התואמות ל-\"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index 7f2e4a9..60fe453 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"個人用"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"仕事用"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"会話"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"スワイプだけで役立つ情報をいつでも入手"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"ホーム画面にウィジェットを追加すると、アプリを開かずに情報を入手できます"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"アプリを検索"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"アプリを読み込んでいます…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"「<xliff:g id="QUERY">%1$s</xliff:g>」に一致するアプリは見つかりませんでした"</string>
diff --git a/res/values-ka/strings.xml b/res/values-ka/strings.xml
index ca8f665..1347d1d 100644
--- a/res/values-ka/strings.xml
+++ b/res/values-ka/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"პირადი"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"სამსახური"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"მიმოწერები"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"ადვილად მისაწვდომი სასარგებლო ინფორმაცია"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"იმისთვის, რომ ინფორმაცია აპების გაუხსნელად მიიღოთ, შეგიძლიათ, მთავარ ეკრანზე ვიჯეტები დაამატოთ"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"გასაგებია"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"აპების ძიება"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"აპები იტვირთება…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"„<xliff:g id="QUERY">%1$s</xliff:g>“-ის თანხვედრი აპები არ მოიძებნა"</string>
diff --git a/res/values-kk/strings.xml b/res/values-kk/strings.xml
index 8353c24..2b1b89f 100644
--- a/res/values-kk/strings.xml
+++ b/res/values-kk/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="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> виджет</item>
@@ -51,6 +51,12 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Жеке виджеттер"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Жұмыс виджеттері"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Әңгімелер"</string>
+ <!-- no translation found for widget_education_header (4874760613775913787) -->
+ <skip />
+ <!-- no translation found for widget_education_content (745542879510751525) -->
+ <skip />
+ <!-- no translation found for widget_education_close_button (8676165703104836580) -->
+ <skip />
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Қолданбаларды іздеу"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Қолданбалар жүктелуде…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" сұрауына сәйкес келетін қолданбалар жоқ"</string>
diff --git a/res/values-km/strings.xml b/res/values-km/strings.xml
index b941b18..4f09648 100644
--- a/res/values-km/strings.xml
+++ b/res/values-km/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ផ្ទាល់ខ្លួន"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ការងារ"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"ការសន្ទនា"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"ទទួលបានព័ត៌មានដែលមានប្រយោជន៍យ៉ាងងាយស្រួល"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"ដើម្បីទទួលបានព័ត៌មានដោយមិនចាំបាច់បើកកម្មវិធី អ្នកអាចបញ្ចូលធាតុក្រាហ្វិកទៅក្នុងអេក្រង់ដើមរបស់អ្នក"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"យល់ហើយ"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ស្វែងរកកម្មវិធី"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"កំពុងផ្ទុកកម្មវិធី…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"រកមិនឃើញកម្មវិធីដែលត្រូវគ្នាជាមួយ \"<xliff:g id="QUERY">%1$s</xliff:g>\" ទេ"</string>
diff --git a/res/values-kn/strings.xml b/res/values-kn/strings.xml
index 27f045e..9a3075f 100644
--- a/res/values-kn/strings.xml
+++ b/res/values-kn/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ವೈಯಕ್ತಿಕ"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ಕೆಲಸ"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"ಸಂವಾದಗಳು"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"ನಿಮ್ಮ ಬೆರಳ ತುದಿಯಲ್ಲಿ ಉಪಯುಕ್ತ ಮಾಹಿತಿ"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"ಆ್ಯಪ್ಗಳನ್ನು ತೆರೆಯದೆಯೇ ಮಾಹಿತಿಯನ್ನು ಪಡೆಯಲು, ನಿಮ್ಮ ಹೋಮ್ ಸ್ಕ್ರೀನ್ನಲ್ಲಿ ನೀವು ವಿಜೆಟ್ಗಳನ್ನು ಸೇರಿಸಬಹುದು"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"ಅರ್ಥವಾಯಿತು"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಹುಡುಕಿ"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಲೋಡ್ ಮಾಡಲಾಗುತ್ತಿದೆ..."</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" ಹೊಂದಿಕೆಯ ಯಾವುದೇ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಕಂಡುಬಂದಿಲ್ಲ"</string>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index e8a19eb..cce4c89 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"개인 위젯"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"직장 위젯"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"대화"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"빠르게 유용한 정보 확인"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"앱을 열지 않고 정보를 확인하려면 홈 화면에 위젯을 추가하세요."</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"확인"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"앱 검색"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"앱 로드 중…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\'<xliff:g id="QUERY">%1$s</xliff:g>\'과(와) 일치하는 앱이 없습니다."</string>
diff --git a/res/values-ky/strings.xml b/res/values-ky/strings.xml
index 7f13177..ed49ff1 100644
--- a/res/values-ky/strings.xml
+++ b/res/values-ky/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Жеке"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Жумуш"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Сүйлөшүүлөр"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Пайдалуу маалымат манжаңыздын учунда эле турат"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Колдонмолорду ачпастан керектүү маалыматты алуу үчүн Башкы экранга виджеттерди кошуңуз"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Түшүндүм"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Колдонмолорду издөө"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Колдонмолор жүктөлүүдө…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" сурамына дал келген колдонмолор табылган жок"</string>
diff --git a/res/values-lo/strings.xml b/res/values-lo/strings.xml
index 041e322..ed367d9 100644
--- a/res/values-lo/strings.xml
+++ b/res/values-lo/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ສ່ວນຕົວ"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ວຽກ"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"ການສົນທະນາ"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"ຂໍ້ມູນທີ່ເປັນປະໂຫຍດຢູ່ປາຍນິ້ວຂອງທ່ານ"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"ເພື່ອຮັບຂໍ້ມູນໂດຍບໍ່ຕ້ອງເປີດແອັບ, ທ່ານສາມາດເພີ່ມວິດເຈັດໃສ່ໂຮມສະກຣີນຂອງທ່ານໄດ້"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"ເຂົ້າໃຈແລ້ວ"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ຊອກຫາແອັບ"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"ກໍາລັງໂຫຼດແອັບ…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"ບໍ່ພົບແອັບທີ່ກົງກັບ \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 707cef4..21f99fc 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -55,6 +55,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Asmeniniai"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Darbas"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Pokalbiai"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Lengvai pasiekiama naudinga informacija"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Jei norite gauti informacijos neatidarę programų, galite pridėti valdiklių pagrindiniame ekrane"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Supratau"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Paieškos programos"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Įkeliamos programos…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nerasta jokių užklausą „<xliff:g id="QUERY">%1$s</xliff:g>“ atitinkančių programų"</string>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 382784b..059620c 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -53,6 +53,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personīgie"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Darba"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Sarunas"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Ērta piekļuve noderīgai informācijai"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Lai iegūtu informāciju, neatverot lietotnes, varat pievienot logrīkus sākuma ekrānā."</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Labi"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Meklēt lietotnes"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Notiek lietotņu ielāde…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Vaicājumam “<xliff:g id="QUERY">%1$s</xliff:g>” neatbilda neviena lietotne"</string>
diff --git a/res/values-mk/strings.xml b/res/values-mk/strings.xml
index dcfd1d9..f4c9606 100644
--- a/res/values-mk/strings.xml
+++ b/res/values-mk/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Лични"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Работни"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Разговори"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Корисни информации на дофат на прстите"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"За да добивате информации без да ги отворате апликациите, може да додадете виџети на почетниот екран"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Сфатив"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Пребарувајте апликации"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Се вчитуваат апликации…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Не се најдени апликации што одговараат на „<xliff:g id="QUERY">%1$s</xliff:g>“"</string>
diff --git a/res/values-ml/strings.xml b/res/values-ml/strings.xml
index 2d7c925..0359220 100644
--- a/res/values-ml/strings.xml
+++ b/res/values-ml/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"വ്യക്തിപരം"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ജോലി"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"സംഭാഷണങ്ങൾ"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"ഉപകാരപ്രദമായ വിവരങ്ങൾ നിങ്ങളുടെ വിരൽത്തുമ്പിൽ"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"ആപ്പുകൾ തുറക്കാതെ വിവരങ്ങൾ ലഭിക്കാൻ, നിങ്ങൾക്ക് ഹോം സ്ക്രീനിലേക്ക് വിജറ്റുകൾ ചേർക്കാം"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"മനസ്സിലായി"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ആപ്പുകൾ തിരയുക"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"ആപ്പുകൾ ലോഡുചെയ്യുന്നു..."</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" എന്നതുമായി പൊരുത്തപ്പെടുന്ന ആപ്പുകളൊന്നും കണ്ടെത്തിയില്ല"</string>
diff --git a/res/values-mn/strings.xml b/res/values-mn/strings.xml
index 5a072fe..53d382d 100644
--- a/res/values-mn/strings.xml
+++ b/res/values-mn/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Хувийн"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Ажил"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Харилцан яриа"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Хэрэгтэй мэдээллээ хурууныхаа үзүүрээр аваарай"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Аппуудыг нээлгүйгээр мэдээлэл авахын тулд та Үндсэн нүүрэндээ жижиг хэрэгслүүд нэмэх боломжтой"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Ойлголоо"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Апп хайх"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Аппыг ачаалж байна..."</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\"-д тохирох апп олдсонгүй"</string>
diff --git a/res/values-mr/strings.xml b/res/values-mr/strings.xml
index e87e6b9..b4c2174 100644
--- a/res/values-mr/strings.xml
+++ b/res/values-mr/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"वैयक्तिक"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ऑफिस"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"संभाषणे"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"तुमच्यासाठी सहज उपलब्ध असलेली माहिती"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"ॲप्स न उघडता माहिती मिळवण्यासाठी, तुम्ही तुमच्या होम स्क्रीनवर विजेट जोडू शकता"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"समजले"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"अॅप्स शोधा"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"अॅप्स लोड करत आहे…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" शी जुळणारे कोणतेही अॅप्स आढळले नाहीत"</string>
diff --git a/res/values-ms/strings.xml b/res/values-ms/strings.xml
index 9465be5..f6300ee 100644
--- a/res/values-ms/strings.xml
+++ b/res/values-ms/strings.xml
@@ -33,7 +33,7 @@
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"Lebar %1$d kali tinggi %2$d"</string>
<string name="add_item_request_drag_hint" msgid="5653291305078645405">"Sentuh & tahan widget untuk menggerakkan widget di sekitar Skrin utama"</string>
- <string name="add_to_home_screen" msgid="8631549138215492708">"Tambah pada Skrin utama"</string>
+ <string name="add_to_home_screen" msgid="8631549138215492708">"Tambahkan pada Skrin utama"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> widget</item>
<item quantity="one"><xliff:g id="WIDGETS_COUNT_0">%1$d</xliff:g> widget</item>
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Peribadi"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Tempat kerja"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Perbualan"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Maklumat berguna di hujung jari anda"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Untuk mendapatkan maklumat tanpa membuka apl, anda boleh menambahkan widget pada skrin Utama anda"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Cari apl"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Memuatkan apl…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Tiada apl yang ditemui sepadan dengan \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-my/strings.xml b/res/values-my/strings.xml
index 1fb7e56..1a8650c 100644
--- a/res/values-my/strings.xml
+++ b/res/values-my/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ကိုယ်ပိုင်"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"အလုပ်"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"စကားဝိုင်းများ"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"အသုံးဝင်သော အချက်အလက်များကို အလွယ်တကူ ရယူလိုက်ပါ"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"အက်ပ်များကိုမဖွင့်ဘဲ အချက်အလက်များရယူရန် သင်၏ ပင်မစာမျက်နှာသို့ ဝိဂျက်များ ထည့်နိုင်သည်"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"ရပြီ"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ရှာဖွေမှု အက်ပ်များ"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"အက်ပ်များကို ဖွင့်နေသည်…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" နှင့်ကိုက်ညီသည့် အပ်ပ်များကို မတွေ့ပါ"</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 42d04a2..49d2912 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personlig"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Jobb"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Samtaler"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Lett tilgjengelig nyttig informasjon"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"For å se informasjon uten å åpne apper kan du legge til moduler på startskjermen"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Greit"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Søk etter apper"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Laster inn appene …"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Fant ingen apper som samsvarer med «<xliff:g id="QUERY">%1$s</xliff:g>»"</string>
diff --git a/res/values-ne/strings.xml b/res/values-ne/strings.xml
index 9e26e1d..474a452 100644
--- a/res/values-ne/strings.xml
+++ b/res/values-ne/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="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> वटा विजेट</item>
@@ -51,6 +51,12 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"व्यक्तिगत"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"कामसम्बन्धी"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"वार्तालापहरू"</string>
+ <!-- no translation found for widget_education_header (4874760613775913787) -->
+ <skip />
+ <!-- no translation found for widget_education_content (745542879510751525) -->
+ <skip />
+ <!-- no translation found for widget_education_close_button (8676165703104836580) -->
+ <skip />
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"खोजसम्बन्धी एपहरू"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"एपहरू लोड गर्दै…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" सँग मिल्दो कुनै एप भेटिएन"</string>
@@ -121,7 +127,7 @@
<string name="app_waiting_download_title" msgid="7053938513995617849">"<xliff:g id="NAME">%1$s</xliff:g> स्थापना गर्न प्रतीक्षा गर्दै"</string>
<string name="widgets_list" msgid="796804551140113767">"विजेटहरूको सूची"</string>
<string name="widgets_list_closed" msgid="6141506579418771922">"विजेटहरूको सूची बन्द गरियो"</string>
- <string name="action_add_to_workspace" msgid="8902165848117513641">"गृह स्क्रिनमा थप्नुहोस्"</string>
+ <string name="action_add_to_workspace" msgid="8902165848117513641">"होम स्क्रिनमा हाल्नुहोस्"</string>
<string name="action_move_here" msgid="2170188780612570250">"वस्तु यहाँ सार्नुहोस्"</string>
<string name="item_added_to_workspace" msgid="4211073925752213539">"वस्तु गृह स्क्रिनमा थपियो"</string>
<string name="item_removed" msgid="851119963877842327">"वस्तु हटाइयो"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 58d1d98..f3c5538 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Persoonlijk"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Werk"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Gesprekken"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Nuttige informatie binnen handbereik"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Als je informatie wilt krijgen zonder apps te openen, kun je widgets toevoegen aan je startscherm"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Apps zoeken"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Apps laden…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Er zijn geen apps gevonden die overeenkomen met \'<xliff:g id="QUERY">%1$s</xliff:g>\'"</string>
diff --git a/res/values-or/strings.xml b/res/values-or/strings.xml
index dfcc716..3517dab 100644
--- a/res/values-or/strings.xml
+++ b/res/values-or/strings.xml
@@ -51,6 +51,12 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ବ୍ୟକ୍ତିଗତ"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ୱାର୍କ"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"ବାର୍ତ୍ତାଳାପଗୁଡ଼ିକ"</string>
+ <!-- no translation found for widget_education_header (4874760613775913787) -->
+ <skip />
+ <!-- no translation found for widget_education_content (745542879510751525) -->
+ <skip />
+ <!-- no translation found for widget_education_close_button (8676165703104836580) -->
+ <skip />
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ଆପ୍ ଖୋଜନ୍ତୁ"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"ଆପ୍ ଲୋଡ୍ ହେଉଛି..."</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" ସହିତ ମେଳ ହେଉଥିବା କୌଣସି ଆପ୍ ମିଳିଲା ନାହିଁ"</string>
diff --git a/res/values-pa/strings.xml b/res/values-pa/strings.xml
index 495f3c4..64a180a 100644
--- a/res/values-pa/strings.xml
+++ b/res/values-pa/strings.xml
@@ -51,6 +51,12 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ਨਿੱਜੀ"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ਕਾਰਜ-ਸਥਾਨ"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"ਗੱਲਾਂਬਾਤਾਂ"</string>
+ <!-- no translation found for widget_education_header (4874760613775913787) -->
+ <skip />
+ <!-- no translation found for widget_education_content (745542879510751525) -->
+ <skip />
+ <!-- no translation found for widget_education_close_button (8676165703104836580) -->
+ <skip />
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ਐਪਾਂ ਖੋਜੋ"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"ਐਪਾਂ ਨੂੰ ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ..."</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" ਨਾਲ ਮੇਲ ਖਾਂਦੀਆਂ ਕੋਈ ਐਪਾਂ ਨਹੀਂ ਮਿਲੀਆਂ"</string>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index acce00a..7b47cde 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Naciśnij dwukrotnie i przytrzymaj, aby przenieść widżet lub użyć działań niestandardowych."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"Szerokość %1$d, wysokość %2$d"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Kliknij i przytrzymaj widżet, by poruszać nim po ekranie głównym."</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Kliknij i przytrzymaj widżet, by poruszać nim po ekranie głównym"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Dodaj do ekranu głównego"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="few"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> widżety</item>
@@ -55,6 +55,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Osobiste"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Służbowe"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Rozmowy"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Użyteczne informacje w zasięgu ręki"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Aby uzyskać informacje bez otwierania aplikacji, możesz dodać widżety do ekranu głównego"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Wyszukaj aplikacje"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Ładuję aplikacje…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nie znaleziono aplikacji pasujących do zapytania „<xliff:g id="QUERY">%1$s</xliff:g>”"</string>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index d429ebe..84c472f 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Pessoais"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Trabalho"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversas"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Informações úteis à sua disposição"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Para obter informações sem abrir apps, pode adicionar widgets ao seu ecrã principal"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Pesquisar aplicações"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"A carregar aplicações…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nenhuma app correspondente a \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
@@ -163,6 +166,6 @@
<string name="work_apps_pause_btn_text" msgid="4669288269140620646">"Colocar apps de trabalho em pausa"</string>
<string name="work_apps_enable_btn_text" msgid="82111102541971856">"Ativar"</string>
<string name="developer_options_filter_hint" msgid="5896817443635989056">"Filtrar"</string>
- <string name="work_switch_tip" msgid="808075064383839144">"Coloque as apps de trabalho e as notificações em pausa."</string>
+ <string name="work_switch_tip" msgid="808075064383839144">"Coloque as apps de trabalho e as notificações em pausa"</string>
<string name="remote_action_failed" msgid="1383965239183576790">"Falhou: <xliff:g id="WHAT">%1$s</xliff:g>"</string>
</resources>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index fd793d4..c44ffc8 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Pessoal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Trabalho"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversas"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Informações úteis ao seu alcance"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Para receber informações sem precisar abrir apps, adicione widgets à sua tela inicial"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Ok"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Pesquisar apps"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Carregando apps…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nenhum app encontrado que corresponda a \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index 5ba9e8d..16f0ade 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -53,6 +53,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personale"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Serviciu"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Conversații"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Informații utile la îndemâna dvs."</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Pentru a primi informații fără să deschideți aplicațiile, puteți adăuga widgeturi pe ecranul de pornire"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Căutați aplicații"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Se încarcă aplicații…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nu s-a găsit nicio aplicație pentru „<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 7da57db..70606a9 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/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 x %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>
@@ -55,6 +55,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Личные виджеты"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Рабочие виджеты"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Разговоры"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Вся нужная информация перед глазами"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Чтобы не открывать приложения каждый раз, когда нужна информация, добавьте виджеты на главный экран."</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"ОК"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Поиск приложений"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Загрузка приложений…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"По запросу \"<xliff:g id="QUERY">%1$s</xliff:g>\" ничего не найдено"</string>
diff --git a/res/values-si/strings.xml b/res/values-si/strings.xml
index 3741c76..2ba06fa 100644
--- a/res/values-si/strings.xml
+++ b/res/values-si/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"පුද්ගලික"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"කාර්යාලය"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"සංවාද"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"ප්රයෝජනවත් තොරතුරු ඔබගේ ඇඟිලි තුඩු අග"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"යෙදුම් විවෘත නොකර තොරතුරු ලබා ගැනීම සඳහා, ඔබට ඔබගේ මුල් තිරයට විජට් එක් කළ හැකිය"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"තේරුණා"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"යෙදුම් සොයන්න"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"යෙදුම් පූරණය වෙමින්…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" සමග ගැළපෙන යෙදුම් හමු නොවිණි"</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index e23e7a9..08e7bb6 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Dvojitým klepnutím a pridržaním presuňte miniaplikáciu alebo použite vlastné akcie."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"šírka %1$d, výška %2$d"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Po pridržaní môžete miniaplikáciu môžete posúvať po ploche"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Po pridržaní môžete miniaplikáciu posúvať po ploche"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Pridať na plochu"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="few"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> miniaplikácie</item>
@@ -55,6 +55,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Osobné"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Práca"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Konverzácie"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Užitočné informácie poruke"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Ak chcete získavať informácie bez otvárania aplikácií, môžete si pridať miniaplikácie na plochu"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Dobre"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Hľadať aplikácie"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Načítavajú sa aplikácie…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nenašli sa žiadne aplikácie zodpovedajúce dopytu <xliff:g id="QUERY">%1$s</xliff:g>"</string>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index cb7f0bc..57461a1 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -55,6 +55,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Osebno"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Služba"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Pogovori"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Koristne informacije na dosegu prstov"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Če si želite podatke ogledati brez odpiranja aplikacij, lahko na začetni zaslon dodate pripomočke."</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"V redu"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Iskanje programov"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Nalaganje aplikacij …"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Ni aplikacij, ki bi ustrezale poizvedbi »<xliff:g id="QUERY">%1$s</xliff:g>«"</string>
diff --git a/res/values-sq/strings.xml b/res/values-sq/strings.xml
index 2528aed..338aa8b 100644
--- a/res/values-sq/strings.xml
+++ b/res/values-sq/strings.xml
@@ -51,6 +51,12 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personale"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Puna"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Bisedat"</string>
+ <!-- no translation found for widget_education_header (4874760613775913787) -->
+ <skip />
+ <!-- no translation found for widget_education_content (745542879510751525) -->
+ <skip />
+ <!-- no translation found for widget_education_close_button (8676165703104836580) -->
+ <skip />
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Kërko për aplikacione"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Po ngarkon aplikacionet..."</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Nuk u gjet asnjë aplikacion që përputhet me \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index bcc867c..2e87b43 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -53,6 +53,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Лично"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Посао"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Конверзације"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Корисне информације надохват руке"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Да бисте пронашли информације без отварања апликација, можете да додате виџете на почетни екран"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Важи"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Претражите апликације"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Апликације се учитавају…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Није пронађена ниједна апликација за „<xliff:g id="QUERY">%1$s</xliff:g>“"</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index ce97320..29ef67d 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Privata widgetar"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Arbete"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Konversationer"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Användbar information nära till hands"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Om du vill ha information utan att öppna appar kan du lägga till widgetar på startskärmen"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Sök efter appar"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Läser in appar …"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Inga appar som matchar <xliff:g id="QUERY">%1$s</xliff:g> hittades"</string>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index 3a46d73..7829beb 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Binafsi"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Kazini"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Mazungumzo"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Maelezo muhimu mahali popote ulipo"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Ili upate maelezo bila kufungua programu, unaweza kuweka wijeti kwenye Skrini yako ya kwanza"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Nimeelewa"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Tafuta programu"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Inapakia programu..."</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Haikupata programu zozote zinazolingana na \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-ta/strings.xml b/res/values-ta/strings.xml
index 3b891cb..6fe5a38 100644
--- a/res/values-ta/strings.xml
+++ b/res/values-ta/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"தனிப்பட்டவை"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"பணி"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"உரையாடல்கள்"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"விரல்நுனியில் பயனுள்ள தகவல்களைப் பெறுங்கள்"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"ஆப்ஸைத் திறக்காமல் தகவல்களைப் பெற, முகப்புத் திரையில் விட்ஜெட்டுகளைச் சேர்க்கலாம்"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"சரி"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"பயன்பாடுகளில் தேடுக"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"ஆப்ஸை ஏற்றுகிறது…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" உடன் பொருந்தும் ஆப்ஸ் இல்லை"</string>
diff --git a/res/values-te/strings.xml b/res/values-te/strings.xml
index 68c8039..a474661 100644
--- a/res/values-te/strings.xml
+++ b/res/values-te/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 వెడల్పు X %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>
@@ -51,6 +51,12 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"వ్యక్తిగతం"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"ఆఫీస్"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"సంభాషణలు"</string>
+ <!-- no translation found for widget_education_header (4874760613775913787) -->
+ <skip />
+ <!-- no translation found for widget_education_content (745542879510751525) -->
+ <skip />
+ <!-- no translation found for widget_education_close_button (8676165703104836580) -->
+ <skip />
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"అప్లికేషన్లను శోధించండి"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"అప్లికేషన్లను లోడ్ చేస్తోంది…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\"కి సరిపోలే అప్లికేషన్లేవీ కనుగొనబడలేదు"</string>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 2dd6ccc..0011d70 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ส่วนตัว"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"งาน"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"การสนทนา"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"เข้าถึงข้อมูลที่เป็นประโยชน์ได้ที่ปลายนิ้ว"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"หากต้องการรับข้อมูลโดยไม่เปิดแอป ให้เพิ่มวิดเจ็ตลงในหน้าจอหลัก"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"รับทราบ"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ค้นหาแอป"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"กำลังโหลดแอป…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"ไม่พบแอปที่ตรงกับ \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index cec90c4..cd662e1 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Personal"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Trabaho"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Mga Pag-uusap"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Abot-kamay na mahalagang impormasyon"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Para makakuha ng impormasyon nang hindi nagbubukas ng mga app, puwede kang magdagdag ng mga widget sa iyong Home screen"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Maghanap ng mga app"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Naglo-load ng mga app…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Walang nahanap na app na tumutugma sa \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index baa5cce..5691fc0 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Kişisel"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"İş"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Görüşmeler"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Faydalı bilgiler parmaklarınızın ucunda"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Uygulamaları açmadan bilgi almak için Ana ekranınıza widget\'lar ekleyebilirsiniz"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Anladım"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Uygulamalarda ara"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Uygulamalar yükleniyor…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" ile eşleşen uygulama bulunamadı"</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index e266d6a..f0d486d 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/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>
@@ -55,6 +55,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Особисті"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Робочі"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Розмови"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Корисна інформація завжди під рукою"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Щоб отримувати інформацію, не відкриваючи додатки, ви можете додати на головний екран віджети"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Пошук додатків"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Завантаження додатків…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Немає додатків для запиту \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-ur/strings.xml b/res/values-ur/strings.xml
index 4e986b8..1574c47 100644
--- a/res/values-ur/strings.xml
+++ b/res/values-ur/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"ذاتی"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"دفتری ویجیٹس"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"گفتگوئیں"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"مفید معلومات کو آسانی سے حاصل کریں"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"ایپس کو کھولے بغیر معلومات حاصل کرنے کے لیے آپ اپنی ہوم اسکرین پر ویجیٹس شامل کر سکتے ہیں"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"سمجھ آ گئی"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"ایپس تلاش کریں"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"ایپس لوڈ کی جا رہی ہیں…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"\"<xliff:g id="QUERY">%1$s</xliff:g>\" سے مماثل کوئی ایپس نہیں ملیں"</string>
diff --git a/res/values-uz/strings.xml b/res/values-uz/strings.xml
index 7328311..3d5db54 100644
--- a/res/values-uz/strings.xml
+++ b/res/values-uz/strings.xml
@@ -32,7 +32,7 @@
<string name="long_accessible_way_to_add" msgid="2733588281439571974">"Ikki marta bosib va bosib turgan holatda vidjetni tanlang yoki maxsus amaldan foydalaning."</string>
<string name="widget_dims_format" msgid="2370757736025621599">"%1$d × %2$d"</string>
<string name="widget_accessible_dims_format" msgid="3640149169885301790">"Eni %1$d, bo‘yi %2$d"</string>
- <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Bosh ekranda surish uchun vidjet ustiga bosib turing"</string>
+ <string name="add_item_request_drag_hint" msgid="5653291305078645405">"Vidjetni ushlagan holda kerakli joyga siljiting"</string>
<string name="add_to_home_screen" msgid="8631549138215492708">"Bosh ekranga chiqarish"</string>
<plurals name="widgets_count" formatted="false" msgid="656794749266073027">
<item quantity="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> ta vidjet</item>
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Shaxsiy"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Ish"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Suhbatlar"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Barcha foydali axborot koʻz oldingizda"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Ilovalarni ochmasdan axborot olish uchun vidjetlarni bosh ekranga qoʻshishingiz mumkin"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"OK"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Ilovalarni qidirish"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Ilovalar yuklanmoqda…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"“<xliff:g id="QUERY">%1$s</xliff:g>” bilan mos hech qanday ilova topilmadi"</string>
diff --git a/res/values-v28/dimens.xml b/res/values-v28/dimens.xml
new file mode 100644
index 0000000..ffa8cc4
--- /dev/null
+++ b/res/values-v28/dimens.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2009 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="dialogCornerRadius">?android:attr/dialogCornerRadius</dimen>
+</resources>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index 9c308e0..9f7fea3 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Cá nhân"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Công việc"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Cuộc trò chuyện"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Thông tin hữu ích ngay trong tầm tay bạn"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Để nhận thông tin mà không cần mở các ứng dụng, bạn có thể thêm tiện ích vào Màn hình chính"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Tôi hiểu"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Tìm kiếm ứng dụng"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Đang tải ứng dụng…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Không tìm thấy ứng dụng nào phù hợp với \"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index f7aa74a..b1fb165 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -51,6 +51,12 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"个人"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"工作"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"对话"</string>
+ <!-- no translation found for widget_education_header (4874760613775913787) -->
+ <skip />
+ <!-- no translation found for widget_education_content (745542879510751525) -->
+ <skip />
+ <!-- no translation found for widget_education_close_button (8676165703104836580) -->
+ <skip />
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"搜索应用"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"正在加载应用…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"未找到与“<xliff:g id="QUERY">%1$s</xliff:g>”相符的应用"</string>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 0fd5284..c7d67af 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"個人"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"工作"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"對話"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"實用資訊,唾手可得"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"只要將小工具新增到主畫面,就可以直接查看資訊,無需開啟應用程式"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"知道了"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"搜尋應用程式"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"正在載入應用程式…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"找不到與「<xliff:g id="QUERY">%1$s</xliff:g>」相符的應用程式"</string>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 99e22a2..6941c2c 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/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="other"><xliff:g id="WIDGETS_COUNT_1">%1$d</xliff:g> 項小工具</item>
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"個人"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"工作"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"對話"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"實用資訊隨手可得"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"只要將小工具新增到主畫面,就可以直接查看資訊,不必開啟應用程式"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"我知道了"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"搜尋應用程式"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"正在載入應用程式…"</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"找不到與「<xliff:g id="QUERY">%1$s</xliff:g>」相符的應用程式"</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index dbdcf17..1b645b2 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -51,6 +51,9 @@
<string name="widgets_full_sheet_personal_tab" msgid="2743540105607120182">"Okomuntu siqu"</string>
<string name="widgets_full_sheet_work_tab" msgid="3767150027110633765">"Umsebenzi"</string>
<string name="widget_category_conversations" msgid="8894438636213590446">"Izingxoxo"</string>
+ <string name="widget_education_header" msgid="4874760613775913787">"Ulwazi oluwusizo phambi nje kwakho"</string>
+ <string name="widget_education_content" msgid="745542879510751525">"Ukuze utholeulwazi ngaphandle kokuvula ama-app, ungakwazi ukwengeza amawijethi kusikrini sakho sasekhaya"</string>
+ <string name="widget_education_close_button" msgid="8676165703104836580">"Ngiyezwa"</string>
<string name="all_apps_search_bar_hint" msgid="1390553134053255246">"Sesha izinhlelo zokusebenza"</string>
<string name="all_apps_loading_message" msgid="5813968043155271636">"Ilayisha izinhlelo zokusebenza..."</string>
<string name="all_apps_no_search_results" msgid="3200346862396363786">"Azikho izinhlelo zokusebenza ezitholiwe ezifana ne-\"<xliff:g id="QUERY">%1$s</xliff:g>\""</string>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index 2669437..c2b07e0 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -38,6 +38,9 @@
<color name="gesture_tutorial_ripple_color">#A0C2F9</color> <!-- Light Blue -->
<color name="gesture_tutorial_fake_task_view_color">#6DA1FF</color> <!-- Light Blue -->
+ <color name="fake_wallpaper_color_dark_mode">#000000</color> <!-- Black -->
+ <color name="fake_wallpaper_color_light_mode">#f9f9f9</color> <!-- White -->
+ <!-- Must contrast fake_wallpaper_color_dark_mode and fake_wallpaper_color_light_mode -->
<color name="gesture_tutorial_fake_previous_task_view_color">#3C4043</color> <!-- Gray -->
<color name="gesture_tutorial_action_button_label_color">#FF000000</color>
<color name="gesture_tutorial_primary_color">#B7F29F</color> <!-- Light Green -->
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 394aecb..d6a6f43 100644
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -105,6 +105,7 @@
<dimen name="all_apps_tip_bottom_margin">8dp</dimen>
<!-- The size of corner radius of the arrow in the arrow toast. -->
<dimen name="arrow_toast_corner_radius">2dp</dimen>
+ <dimen name="arrow_toast_arrow_width">10dp</dimen>
<!-- Search bar in All Apps -->
<dimen name="all_apps_header_max_elevation">3dp</dimen>
@@ -123,6 +124,11 @@
<dimen name="recommended_widgets_table_vertical_padding">8dp</dimen>
+ <!-- Bottom margin for the search and recommended widgets container without work profile -->
+ <dimen name="search_and_recommended_widgets_container_bottom_margin">16dp</dimen>
+ <!-- Bottom margin for the search and recommended widgets container with work profile -->
+ <dimen name="search_and_recommended_widgets_container_small_bottom_margin">10dp</dimen>
+
<dimen name="widget_list_top_bottom_corner_radius">28dp</dimen>
<dimen name="widget_list_content_corner_radius">4dp</dimen>
@@ -143,10 +149,10 @@
<dimen name="widget_row_padding">8dp</dimen>
<dimen name="widget_row_divider">2dp</dimen>
- <dimen name="widget_picker_education_tip_width">120dp</dimen>
+ <dimen name="widget_picker_education_tip_max_width">308dp</dimen>
<dimen name="widget_picker_education_tip_min_margin">4dp</dimen>
- <dimen name="widget_picker_view_pager_top_padding">16dp</dimen>
+ <dimen name="widget_picker_view_pager_top_padding">10dp</dimen>
<!-- Padding applied to shortcut previews -->
<dimen name="shortcut_preview_padding_left">0dp</dimen>
@@ -282,6 +288,7 @@
<!-- Theming related -->
<dimen name="default_dialog_corner_radius">8dp</dimen>
+ <dimen name="dialogCornerRadius">@dimen/default_dialog_corner_radius</dimen>
<!-- Onboarding bottomsheet related -->
<dimen name="bottom_sheet_edu_padding">24dp</dimen>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index eae32b7..c851cf8 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -99,6 +99,15 @@
<!-- A widget category label for grouping widgets related to conversations. [CHAR_LIMIT=30] -->
<string name="widget_category_conversations">Conversations</string>
+ <!-- Title of a dialog. This dialog lets a user know how they can use widgets on their phone.
+ [CHAR_LIMIT=NONE] -->
+ <string name="widget_education_header">Useful info at your fingertips</string>
+ <!-- Dialog text. This dialog lets a user know how they can use widgets on their phone.
+ [CHAR_LIMIT=NONE] -->
+ <string name="widget_education_content">To get info without opening apps, you can add widgets to your Home screen</string>
+ <!-- Text on the button that closes the education dialog about widgets. [CHAR_LIMIT=50] -->
+ <string name="widget_education_close_button">Got it</string>
+
<!-- All Apps -->
<!-- Search bar text in the apps view. [CHAR_LIMIT=50] -->
<string name="all_apps_search_bar_hint">Search apps</string>
diff --git a/res/values/styles.xml b/res/values/styles.xml
index df617ea..0c389aa 100644
--- a/res/values/styles.xml
+++ b/res/values/styles.xml
@@ -48,7 +48,7 @@
<item name="workspaceStatusBarScrim">@drawable/workspace_bg</item>
<item name="widgetsTheme">@style/WidgetContainerTheme</item>
<item name="folderDotColor">?android:attr/colorPrimary</item>
- <item name="folderFillColor">?android:attr/colorBackground</item>
+ <item name="folderFillColor">?android:attr/colorBackgroundFloating</item>
<item name="folderIconBorderColor">?android:attr/colorPrimary</item>
<item name="folderTextColor">?android:attr/textColorPrimary</item>
<item name="isFolderDarkText">true</item>
@@ -71,7 +71,7 @@
</style>
<style name="LauncherTheme.DarkMainColor" parent="@style/LauncherTheme">
- <item name="folderFillColor">#FF3C4043</item> <!-- 100% GM2 800 -->
+ <item name="folderFillColor">?android:attr/colorBackgroundFloating</item>
<item name="folderTextColor">?attr/workspaceTextColor</item>
<item name="isFolderDarkText">?attr/isWorkspaceDarkText</item>
<item name="folderHintColor">@color/folder_hint_text_color_dark</item>
@@ -87,7 +87,7 @@
<item name="isWorkspaceDarkText">true</item>
<item name="workspaceStatusBarScrim">@null</item>
<item name="folderDotColor">#FF464646</item>
- <item name="folderFillColor">#CDFFFFFF</item>
+ <item name="folderFillColor">?android:attr/colorBackgroundFloating</item>
<item name="folderIconBorderColor">#FF80868B</item>
<item name="folderTextColor">?attr/workspaceTextColor</item>
<item name="isFolderDarkText">true</item>
@@ -109,7 +109,7 @@
<item name="popupColorTertiary">@color/popup_color_tertiary_dark</item>
<item name="widgetsTheme">@style/WidgetContainerTheme.Dark</item>
<item name="folderDotColor">?android:attr/colorPrimary</item>
- <item name="folderFillColor">?android:attr/colorBackground</item>
+ <item name="folderFillColor">?android:attr/colorBackgroundFloating</item>
<item name="folderIconBorderColor">?android:attr/colorPrimary</item>
<item name="folderTextColor">?android:attr/textColorPrimary</item>
<item name="isFolderDarkText">false</item>
@@ -123,7 +123,7 @@
</style>
<style name="LauncherTheme.Dark.DarkMainColor" parent="@style/LauncherTheme.Dark">
- <item name="folderFillColor">#FF3C4043</item> <!-- 100% GM2 800 -->
+ <item name="folderFillColor">?android:attr/colorBackgroundFloating</item>
<item name="folderTextColor">@android:color/white</item>
<item name="isFolderDarkText">false</item>
<item name="folderHintColor">@color/folder_hint_text_color_light</item>
@@ -132,7 +132,7 @@
<style name="LauncherTheme.Dark.DarkText" parent="@style/LauncherTheme.Dark">
<item name="android:colorControlHighlight">#19212121</item>
- <item name="folderFillColor">#CDFFFFFF</item>
+ <item name="folderFillColor">?android:attr/colorBackgroundFloating</item>
<item name="folderTextColor">?attr/workspaceTextColor</item>
<item name="isFolderDarkText">?attr/isWorkspaceDarkText</item>
<item name="folderHintColor">@color/folder_hint_text_color_dark</item>
@@ -156,6 +156,8 @@
<style name="HomeSettingsTheme" parent="@android:style/Theme.DeviceDefault.Settings">
<item name="android:navigationBarColor">?android:colorPrimaryDark</item>
+ <item name="android:windowActionBar">false</item>
+ <item name="android:windowNoTitle">true</item>
<item name="preferenceTheme">@style/HomeSettingsPreferenceTheme</item>
</style>
@@ -240,7 +242,7 @@
<!-- Icon displayed on the workspace -->
- <style name="BaseIcon.Workspace" >
+ <style name="BaseIcon.Workspace.Shadows" parent="BaseIcon">
<item name="android:shadowRadius">2.0</item>
<item name="android:shadowColor">?attr/workspaceShadowColor</item>
<item name="ambientShadowColor">?attr/workspaceAmbientShadowColor</item>
@@ -251,6 +253,10 @@
<item name="keyShadowOffsetY">.5dp</item>
</style>
+ <!-- Intentionally empty so we can override -->
+ <style name="BaseIcon.Workspace" parent="BaseIcon.Workspace.Shadows">
+ </style>
+
<!-- Theme for the popup container -->
<style name="PopupItem">
<item name="android:colorControlHighlight">?attr/popupColorTertiary</item>
@@ -265,7 +271,7 @@
<item name="android:textSize">@dimen/drop_target_text_size</item>
<item name="android:singleLine">true</item>
<item name="android:ellipsize">end</item>
- <item name="android:background">@drawable/drop_target_frame</item>
+ <item name="android:background">@drawable/drop_target_background</item>
</style>
<style name="DropTargetButton" parent="DropTargetButtonBase" />
@@ -287,8 +293,24 @@
<item name="android:colorForeground">@color/all_apps_bg_hand_fill_dark</item>
</style>
- <style name="Widget.DeviceDefault.Button.Rounded.Colored" parent="@android:style/Widget.DeviceDefault.Button.Colored">
- <item name="android:background">@drawable/add_item_dialog_button_background</item>
+ <style name="Button.TopRounded.Bordered" parent="@android:style/Widget.Material.Button">
+ <item name="android:background">@drawable/button_top_rounded_bordered_ripple</item>
+ <item name="android:stateListAnimator">@null</item>
+ </style>
+
+ <style name="Button.BottomRounded.Colored" parent="@android:style/Widget.Material.Button">
+ <item name="android:background">@drawable/button_bottom_rounded_colored_ripple</item>
+ <item name="android:stateListAnimator">@null</item>
+ </style>
+
+ <style name="Button.Rounded.Colored" parent="@android:style/Widget.Material.Button">
+ <item name="android:background">@drawable/button_rounded_colored_ripple</item>
+ <item name="android:stateListAnimator">@null</item>
+ </style>
+
+ <style name="Button.FullRounded.Colored" parent="@android:style/Widget.Material.Button">
+ <item name="android:background">@drawable/full_rounded_colored_ripple</item>
+ <item name="android:stateListAnimator">@null</item>
</style>
<style name="AddItemActivityTheme" parent="@android:style/Theme.Translucent.NoTitleBar">
diff --git a/res/xml/size_limits_80x104.xml b/res/xml/size_limits_80x104.xml
index f375549..f5ca757 100644
--- a/res/xml/size_limits_80x104.xml
+++ b/res/xml/size_limits_80x104.xml
@@ -62,10 +62,10 @@
<device-padding
launcher:maxEmptySpace="9999dp">
<workspaceTopPadding
- launcher:a="0.38"
+ launcher:a="0.40"
launcher:c="36dp"/>
<workspaceBottomPadding
- launcher:a="0.62"
+ launcher:a="0.60"
launcher:c="36dp"/>
<hotseatBottomPadding
launcher:a="0"
diff --git a/robolectric_tests/Android.bp b/robolectric_tests/Android.bp
index bf32362..9ed26ff 100644
--- a/robolectric_tests/Android.bp
+++ b/robolectric_tests/Android.bp
@@ -45,9 +45,14 @@
java_resources: [":launcher3-robolectric-resources"],
static_libs: [
"truth-prebuilt",
+ "androidx.test.espresso.contrib",
+ "androidx.test.espresso.core",
+ "androidx.test.espresso.intents",
+ "androidx.test.ext.junit",
"androidx.test.runner",
"androidx.test.rules",
"mockito-robolectric-prebuilt",
+ "SystemUISharedLib",
],
robolectric_prebuilt_version: "4.5.1",
instrumentation_for: "Launcher3",
diff --git a/robolectric_tests/src/com/android/launcher3/settings/SettingsActivityTest.java b/robolectric_tests/src/com/android/launcher3/settings/SettingsActivityTest.java
new file mode 100644
index 0000000..3271812
--- /dev/null
+++ b/robolectric_tests/src/com/android/launcher3/settings/SettingsActivityTest.java
@@ -0,0 +1,152 @@
+/*
+ * 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.settings;
+
+import static androidx.preference.PreferenceFragmentCompat.ARG_PREFERENCE_ROOT;
+import static androidx.test.espresso.Espresso.onView;
+import static androidx.test.espresso.action.ViewActions.click;
+import static androidx.test.espresso.assertion.ViewAssertions.matches;
+import static androidx.test.espresso.contrib.RecyclerViewActions.actionOnItem;
+import static androidx.test.espresso.intent.Intents.intended;
+import static androidx.test.espresso.intent.matcher.BundleMatchers.hasEntry;
+import static androidx.test.espresso.intent.matcher.IntentMatchers.hasComponent;
+import static androidx.test.espresso.intent.matcher.IntentMatchers.hasExtra;
+import static androidx.test.espresso.matcher.ViewMatchers.hasDescendant;
+import static androidx.test.espresso.matcher.ViewMatchers.isDisplayed;
+import static androidx.test.espresso.matcher.ViewMatchers.withContentDescription;
+import static androidx.test.espresso.matcher.ViewMatchers.withId;
+import static androidx.test.espresso.matcher.ViewMatchers.withText;
+
+import static com.android.launcher3.settings.SettingsActivity.EXTRA_FRAGMENT;
+import static com.android.launcher3.settings.SettingsActivity.EXTRA_FRAGMENT_ARGS;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import static org.hamcrest.Matchers.allOf;
+import static org.hamcrest.Matchers.equalTo;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+
+import androidx.preference.PreferenceFragmentCompat;
+import androidx.test.core.app.ActivityScenario;
+import androidx.test.core.app.ApplicationProvider;
+import androidx.test.espresso.intent.Intents;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
+import com.android.launcher3.R;
+import com.android.systemui.shared.plugins.PluginPrefs;
+
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+@RunWith(AndroidJUnit4.class)
+public class SettingsActivityTest {
+
+ private Context mApplicationContext;
+
+ @Before
+ public void setUp() {
+ mApplicationContext = ApplicationProvider.getApplicationContext();
+ Intents.init();
+ }
+
+ @After
+ public void tearDown() {
+ Intents.release();
+ }
+
+ @Test
+ public void testSettings_aboutTap_launchesActivity() {
+ ActivityScenario.launch(SettingsActivity.class);
+ onView(withId(R.id.recycler_view)).perform(
+ actionOnItem(hasDescendant(withText("About")), click()));
+
+ intended(allOf(
+ hasComponent(SettingsActivity.class.getName()),
+ hasExtra(
+ equalTo(EXTRA_FRAGMENT_ARGS),
+ hasEntry(ARG_PREFERENCE_ROOT, "about_screen"))));
+ }
+
+ @Test
+ public void testSettings_developerOptionsTap_launchesActivityWithFragment() {
+ PluginPrefs.setHasPlugins(mApplicationContext);
+ ActivityScenario.launch(SettingsActivity.class);
+ onView(withId(R.id.recycler_view)).perform(
+ actionOnItem(hasDescendant(withText("Developer Options")), click()));
+
+ intended(allOf(
+ hasComponent(SettingsActivity.class.getName()),
+ hasExtra(EXTRA_FRAGMENT, DeveloperOptionsFragment.class.getName())));
+ }
+
+ @Test
+ public void testSettings_aboutScreenIntent() {
+ Bundle fragmentArgs = new Bundle();
+ fragmentArgs.putString(ARG_PREFERENCE_ROOT, "about_screen");
+
+ Intent intent = new Intent(mApplicationContext, SettingsActivity.class)
+ .putExtra(EXTRA_FRAGMENT_ARGS, fragmentArgs);
+ ActivityScenario.launch(intent);
+
+ onView(withText("About")).check(matches(isDisplayed()));
+ onView(withText("Version")).check(matches(isDisplayed()));
+ onView(withContentDescription("Navigate up")).check(matches(isDisplayed()));
+ }
+
+ @Test
+ public void testSettings_developerOptionsFragmentIntent() {
+ Intent intent = new Intent(mApplicationContext, SettingsActivity.class)
+ .putExtra(EXTRA_FRAGMENT, DeveloperOptionsFragment.class.getName());
+ ActivityScenario.launch(intent);
+
+ onView(withText("Developer Options")).check(matches(isDisplayed()));
+ onView(withId(R.id.filter_box)).check(matches(isDisplayed()));
+ onView(withContentDescription("Navigate up")).check(matches(isDisplayed()));
+ }
+
+ @Test
+ public void testSettings_intentWithUnknownFragment() {
+ String fragmentClass = PreferenceFragmentCompat.class.getName();
+ Intent intent = new Intent(mApplicationContext, SettingsActivity.class)
+ .putExtra(EXTRA_FRAGMENT, fragmentClass);
+
+ try {
+ ActivityScenario.launch(intent);
+ Assert.fail("Should have thrown an IllegalArgumentException.");
+ } catch (IllegalArgumentException e) {
+ assertThat(e.getMessage()).contains(fragmentClass);
+ }
+ }
+
+ @Test
+ public void testSettings_backButtonFinishesActivity() {
+ Bundle fragmentArgs = new Bundle();
+ fragmentArgs.putString(ARG_PREFERENCE_ROOT, "about_screen");
+ Intent intent = new Intent(mApplicationContext, SettingsActivity.class)
+ .putExtra(EXTRA_FRAGMENT_ARGS, fragmentArgs);
+ ActivityScenario<SettingsActivity> scenario = ActivityScenario.launch(intent);
+
+ onView(withContentDescription("Navigate up")).perform(click());
+ scenario.onActivity(activity -> assertThat(activity.isFinishing()).isTrue());
+ }
+}
diff --git a/robolectric_tests/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfoTest.java b/robolectric_tests/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfoTest.java
index d977011..d18138f 100644
--- a/robolectric_tests/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfoTest.java
+++ b/robolectric_tests/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfoTest.java
@@ -20,8 +20,10 @@
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doAnswer;
+import android.appwidget.AppWidgetHostView;
import android.content.Context;
import android.graphics.Point;
+import android.graphics.Rect;
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.InvariantDeviceProfile;
@@ -110,6 +112,47 @@
assertThat(info.minSpanY).isEqualTo(2);
}
+ @Test
+ public void initSpans_minResizeWidthWithCellSpacingAndWidgetInset_shouldInitializeMinSpans() {
+ InvariantDeviceProfile idp = createIDP();
+ DeviceProfile dp = idp.supportedProfiles.get(0);
+ Rect padding = new Rect();
+ AppWidgetHostView.getDefaultPaddingForWidget(mContext, null, padding);
+ int maxPadding = Math.max(Math.max(padding.left, padding.right),
+ Math.max(padding.top, padding.bottom));
+ dp.cellLayoutBorderSpacingPx = maxPadding + 1;
+ Mockito.when(dp.shouldInsetWidgets()).thenReturn(true);
+
+ LauncherAppWidgetProviderInfo info = new LauncherAppWidgetProviderInfo();
+ info.minResizeWidth = CELL_SIZE * 2 + maxPadding;
+ info.minResizeHeight = CELL_SIZE * 2 + maxPadding;
+
+ info.initSpans(mContext, idp);
+
+ assertThat(info.minSpanX).isEqualTo(2);
+ assertThat(info.minSpanY).isEqualTo(2);
+ }
+
+ @Test
+ public void initSpans_minResizeWidthWithCellSpacingAndNoWidgetInset_shouldInitializeMinSpans() {
+ InvariantDeviceProfile idp = createIDP();
+ DeviceProfile dp = idp.supportedProfiles.get(0);
+ Rect padding = new Rect();
+ AppWidgetHostView.getDefaultPaddingForWidget(mContext, null, padding);
+ int maxPadding = Math.max(Math.max(padding.left, padding.right),
+ Math.max(padding.top, padding.bottom));
+ dp.cellLayoutBorderSpacingPx = maxPadding - 1;
+ Mockito.when(dp.shouldInsetWidgets()).thenReturn(false);
+ LauncherAppWidgetProviderInfo info = new LauncherAppWidgetProviderInfo();
+ info.minResizeWidth = CELL_SIZE * 2 + maxPadding;
+ info.minResizeHeight = CELL_SIZE * 2 + maxPadding;
+
+ info.initSpans(mContext, idp);
+
+ assertThat(info.minSpanX).isEqualTo(3);
+ assertThat(info.minSpanY).isEqualTo(3);
+ }
+
private InvariantDeviceProfile createIDP() {
DeviceProfile profile = Mockito.mock(DeviceProfile.class);
doAnswer(i -> {
diff --git a/robolectric_tests/src/com/android/launcher3/widget/picker/search/WidgetsSearchBarControllerTest.java b/robolectric_tests/src/com/android/launcher3/widget/picker/search/WidgetsSearchBarControllerTest.java
index a057a84..7ac879a 100644
--- a/robolectric_tests/src/com/android/launcher3/widget/picker/search/WidgetsSearchBarControllerTest.java
+++ b/robolectric_tests/src/com/android/launcher3/widget/picker/search/WidgetsSearchBarControllerTest.java
@@ -19,7 +19,6 @@
import static org.junit.Assert.assertEquals;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoMoreInteractions;
@@ -131,18 +130,14 @@
public void cancelSearch_shouldInformSearchModeListenerToClearResultsAndExitSearch() {
mCancelButton.performClick();
- // 1 time explicitly from the cancel button on click listener.
- // Another from the setText("") the cancel button on click listener causing afterTextChange.
- verify(mSearchModeListener, times(2)).exitSearchMode();
+ verify(mSearchModeListener).exitSearchMode();
}
@Test
public void cancelSearch_shouldCancelSearch() {
mCancelButton.performClick();
- // 1 time explicitly from the cancel button on click listener.
- // Another from the setText("") the cancel button on click listener causing afterTextChange.
- verify(mSearchAlgorithm, times(2)).cancel(true);
+ verify(mSearchAlgorithm).cancel(true);
verifyNoMoreInteractions(mSearchAlgorithm);
}
diff --git a/src/com/android/launcher3/AbstractFloatingView.java b/src/com/android/launcher3/AbstractFloatingView.java
index 9100947..4979b40 100644
--- a/src/com/android/launcher3/AbstractFloatingView.java
+++ b/src/com/android/launcher3/AbstractFloatingView.java
@@ -63,7 +63,8 @@
TYPE_TASK_MENU,
TYPE_OPTIONS_POPUP,
TYPE_ICON_SURFACE,
- TYPE_PIN_WIDGET_FROM_EXTERNAL_POPUP
+ TYPE_PIN_WIDGET_FROM_EXTERNAL_POPUP,
+ TYPE_WIDGETS_EDUCATION_DIALOG
})
@Retention(RetentionPolicy.SOURCE)
public @interface FloatingViewType {}
@@ -85,17 +86,19 @@
public static final int TYPE_ICON_SURFACE = 1 << 13;
public static final int TYPE_PIN_WIDGET_FROM_EXTERNAL_POPUP = 1 << 14;
+ public static final int TYPE_WIDGETS_EDUCATION_DIALOG = 1 << 15;
public static final int TYPE_ALL = TYPE_FOLDER | TYPE_ACTION_POPUP
| TYPE_WIDGETS_BOTTOM_SHEET | TYPE_WIDGET_RESIZE_FRAME | TYPE_WIDGETS_FULL_SHEET
| TYPE_ON_BOARD_POPUP | TYPE_DISCOVERY_BOUNCE | TYPE_TASK_MENU
| TYPE_OPTIONS_POPUP | TYPE_SNACKBAR | TYPE_LISTENER | TYPE_ALL_APPS_EDU
- | TYPE_ICON_SURFACE | TYPE_DRAG_DROP_POPUP | TYPE_PIN_WIDGET_FROM_EXTERNAL_POPUP;
+ | TYPE_ICON_SURFACE | TYPE_DRAG_DROP_POPUP | TYPE_PIN_WIDGET_FROM_EXTERNAL_POPUP
+ | TYPE_WIDGETS_EDUCATION_DIALOG;
// Type of popups which should be kept open during launcher rebind
public static final int TYPE_REBIND_SAFE = TYPE_WIDGETS_FULL_SHEET
| TYPE_WIDGETS_BOTTOM_SHEET | TYPE_ON_BOARD_POPUP | TYPE_DISCOVERY_BOUNCE
- | TYPE_ALL_APPS_EDU | TYPE_ICON_SURFACE;
+ | TYPE_ALL_APPS_EDU | TYPE_ICON_SURFACE | TYPE_WIDGETS_EDUCATION_DIALOG;
// Usually we show the back button when a floating view is open. Instead, hide for these types.
public static final int TYPE_HIDE_BACK_BUTTON = TYPE_ON_BOARD_POPUP | TYPE_DISCOVERY_BOUNCE
diff --git a/src/com/android/launcher3/AppWidgetResizeFrame.java b/src/com/android/launcher3/AppWidgetResizeFrame.java
index c1f3ac5..5d9797f 100644
--- a/src/com/android/launcher3/AppWidgetResizeFrame.java
+++ b/src/com/android/launcher3/AppWidgetResizeFrame.java
@@ -5,6 +5,8 @@
import static com.android.launcher3.LauncherAnimUtils.LAYOUT_HEIGHT;
import static com.android.launcher3.LauncherAnimUtils.LAYOUT_WIDTH;
import static com.android.launcher3.Utilities.ATLEAST_S;
+import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WIDGET_RESIZE_COMPLETED;
+import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WIDGET_RESIZE_STARTED;
import static com.android.launcher3.views.BaseDragLayer.LAYOUT_X;
import static com.android.launcher3.views.BaseDragLayer.LAYOUT_Y;
@@ -31,6 +33,10 @@
import com.android.launcher3.accessibility.DragViewStateAnnouncer;
import com.android.launcher3.dragndrop.DragLayer;
+import com.android.launcher3.logging.InstanceId;
+import com.android.launcher3.logging.InstanceIdSequence;
+import com.android.launcher3.model.data.ItemInfo;
+import com.android.launcher3.util.PendingRequestArgs;
import com.android.launcher3.widget.LauncherAppWidgetHostView;
import com.android.launcher3.widget.LauncherAppWidgetProviderInfo;
@@ -96,6 +102,8 @@
private final IntRange mDeltaYRange = new IntRange();
private final IntRange mBaselineY = new IntRange();
+ private final InstanceId logInstanceId = new InstanceIdSequence().newInstanceId();
+
private boolean mLeftBorderActive;
private boolean mRightBorderActive;
private boolean mTopBorderActive;
@@ -222,12 +230,21 @@
mReconfigureButton = (ImageButton) findViewById(R.id.widget_reconfigure_button);
if (info.isReconfigurable()) {
mReconfigureButton.setVisibility(VISIBLE);
- mReconfigureButton.setOnClickListener(view -> mLauncher
+ mReconfigureButton.setOnClickListener(view -> {
+ mLauncher.setWaitingForResult(
+ PendingRequestArgs.forWidgetInfo(
+ mWidgetView.getAppWidgetId(),
+ // Widget add handler is null since we're reconfiguring an existing
+ // widget.
+ /* widgetHandler= */ null,
+ (ItemInfo) mWidgetView.getTag()));
+ mLauncher
.getAppWidgetHost()
.startConfigActivity(
mLauncher,
mWidgetView.getAppWidgetId(),
- Launcher.REQUEST_RECONFIGURE_APPWIDGET));
+ Launcher.REQUEST_RECONFIGURE_APPWIDGET);
+ });
}
// When we create the resize frame, we first mark all cells as unoccupied. The appropriate
@@ -235,6 +252,12 @@
// frame is dismissed.
mCellLayout.markCellsAsUnoccupiedForView(mWidgetView);
+ mLauncher.getStatsLogManager()
+ .logger()
+ .withInstanceId(logInstanceId)
+ .withItemInfo((ItemInfo) mWidgetView.getTag())
+ .log(LAUNCHER_WIDGET_RESIZE_STARTED);
+
setOnKeyListener(this);
}
@@ -482,6 +505,11 @@
// We are done with resizing the widget. Save the widget size & position to LauncherModel
resizeWidgetIfNeeded(true);
+ mLauncher.getStatsLogManager()
+ .logger()
+ .withInstanceId(logInstanceId)
+ .withItemInfo((ItemInfo) mWidgetView.getTag())
+ .log(LAUNCHER_WIDGET_RESIZE_COMPLETED);
}
private void onTouchUp() {
diff --git a/src/com/android/launcher3/ButtonDropTarget.java b/src/com/android/launcher3/ButtonDropTarget.java
index af77bf8..7db34a5 100644
--- a/src/com/android/launcher3/ButtonDropTarget.java
+++ b/src/com/android/launcher3/ButtonDropTarget.java
@@ -142,11 +142,6 @@
}
}
- private void setBackgroundDrawable(int resId) {
- Drawable bd = AppCompatResources.getDrawable(getContext(), resId);
- setBackground(bd);
- }
-
@Override
public final void onDragEnter(DragObject d) {
if (!mAccessibleDrag && !mTextVisible) {
@@ -172,7 +167,7 @@
}
d.dragView.setAlpha(DRAG_VIEW_HOVER_OVER_OPACITY);
- setBackgroundDrawable(R.drawable.drop_target_frame_hover);
+ setSelected(true);
if (d.stateAnnouncer != null) {
d.stateAnnouncer.cancel();
}
@@ -190,7 +185,7 @@
if (!d.dragComplete) {
d.dragView.setAlpha(1f);
- setBackgroundDrawable(R.drawable.drop_target_frame);
+ setSelected(false);
} else {
d.dragView.setAlpha(DRAG_VIEW_HOVER_OVER_OPACITY);
}
@@ -230,6 +225,7 @@
public void onDragEnd() {
mActive = false;
setOnClickListener(null);
+ setSelected(false);
}
/**
diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java
index cdc09f1..e9245b0 100644
--- a/src/com/android/launcher3/DeviceProfile.java
+++ b/src/com/android/launcher3/DeviceProfile.java
@@ -399,8 +399,10 @@
public boolean shouldInsetWidgets() {
Rect widgetPadding = inv.defaultWidgetPadding;
- // Check all sides to ensure that the widget won't overlap into another cell.
- return cellLayoutBorderSpacingPx > widgetPadding.left
+ // Check all sides to ensure that the widget won't overlap into another cell, or into
+ // status bar.
+ return workspaceTopPadding > widgetPadding.top
+ && cellLayoutBorderSpacingPx > widgetPadding.left
&& cellLayoutBorderSpacingPx > widgetPadding.top
&& cellLayoutBorderSpacingPx > widgetPadding.right
&& cellLayoutBorderSpacingPx > widgetPadding.bottom;
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index 8889e60..9aa7168 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -45,6 +45,7 @@
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ALLAPPS_EXIT;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ONRESUME;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_ONSTOP;
+import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WIDGET_RECONFIGURED;
import static com.android.launcher3.model.ItemInstallQueue.FLAG_ACTIVITY_PAUSED;
import static com.android.launcher3.model.ItemInstallQueue.FLAG_DRAG_AND_DROP;
import static com.android.launcher3.model.ItemInstallQueue.FLAG_LOADER_RUNNING;
@@ -576,6 +577,14 @@
mHotseat.getQsb().setAlpha(1f - visibility);
}
+ /**
+ * Called when one handed mode activated and deactivated.
+ * @param activated true if one handed mode activated, false otherwise.
+ */
+ public void onOneHandedStateChanged(boolean activated) {
+ mDragLayer.onOneHandedModeStateChanged(activated);
+ }
+
private void initDeviceProfile(InvariantDeviceProfile idp) {
// Load configuration-specific DeviceProfile
mDeviceProfile = idp.getDeviceProfile(this);
@@ -675,6 +684,7 @@
completeAddAppWidget(appWidgetId, info, null, null);
break;
case REQUEST_RECONFIGURE_APPWIDGET:
+ mStatsLogManager.logger().withItemInfo(info).log(LAUNCHER_WIDGET_RECONFIGURED);
completeRestoreAppWidget(appWidgetId, LauncherAppWidgetInfo.RESTORE_COMPLETED);
break;
case REQUEST_BIND_PENDING_APPWIDGET: {
diff --git a/src/com/android/launcher3/PagedView.java b/src/com/android/launcher3/PagedView.java
index 9725b06..b423871 100644
--- a/src/com/android/launcher3/PagedView.java
+++ b/src/com/android/launcher3/PagedView.java
@@ -250,6 +250,15 @@
forceFinishScroller(true);
}
+ /**
+ * Immediately finishes any overscroll effect and jumps to the end of the scroller animation.
+ */
+ public void abortScrollerAnimation() {
+ mEdgeGlowLeft.finish();
+ mEdgeGlowRight.finish();
+ abortScrollerAnimation(true);
+ }
+
private void abortScrollerAnimation(boolean resetNextPage) {
mScroller.abortAnimation();
// We need to clean up the next page here to avoid computeScrollHelper from
@@ -479,11 +488,9 @@
if (newPos < mMinScroll && oldPos >= mMinScroll) {
mEdgeGlowLeft.onAbsorb((int) mScroller.getCurrVelocity());
mScroller.abortAnimation();
- onEdgeAbsorbingScroll();
} else if (newPos > mMaxScroll && oldPos <= mMaxScroll) {
mEdgeGlowRight.onAbsorb((int) mScroller.getCurrVelocity());
mScroller.abortAnimation();
- onEdgeAbsorbingScroll();
}
}
@@ -1334,13 +1341,6 @@
protected void onNotSnappingToPageInFreeScroll() { }
- /**
- * Called when the view edges absorb part of the scroll. Subclasses can override this
- * to provide custom behavior during animation.
- */
- protected void onEdgeAbsorbingScroll() {
- }
-
protected boolean shouldFlingForVelocity(int velocity) {
float threshold = mAllowEasyFling ? mEasyFlingThresholdVelocity : mFlingThresholdVelocity;
return Math.abs(velocity) > threshold;
diff --git a/src/com/android/launcher3/SecondaryDropTarget.java b/src/com/android/launcher3/SecondaryDropTarget.java
index 6ccfa7e..cd06414 100644
--- a/src/com/android/launcher3/SecondaryDropTarget.java
+++ b/src/com/android/launcher3/SecondaryDropTarget.java
@@ -45,6 +45,7 @@
import com.android.launcher3.model.data.ItemInfoWithIcon;
import com.android.launcher3.model.data.LauncherAppWidgetInfo;
import com.android.launcher3.util.PackageManagerHelper;
+import com.android.launcher3.util.PendingRequestArgs;
import com.android.launcher3.widget.LauncherAppWidgetProviderInfo;
import java.net.URISyntaxException;
@@ -267,6 +268,8 @@
if (mCurrentAccessibilityAction == RECONFIGURE) {
int widgetId = getReconfigurableWidgetId(view);
if (widgetId != INVALID_APPWIDGET_ID) {
+ mLauncher.setWaitingForResult(
+ PendingRequestArgs.forWidgetInfo(widgetId, null, info));
mLauncher.getAppWidgetHost().startConfigActivity(mLauncher, widgetId,
REQUEST_RECONFIGURE_APPWIDGET);
}
diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java
index 98d80fe..d136cda 100644
--- a/src/com/android/launcher3/Workspace.java
+++ b/src/com/android/launcher3/Workspace.java
@@ -103,6 +103,7 @@
import com.android.launcher3.util.ItemInfoMatcher;
import com.android.launcher3.util.OverlayEdgeEffect;
import com.android.launcher3.util.PackageUserKey;
+import com.android.launcher3.util.RunnableList;
import com.android.launcher3.util.Thunk;
import com.android.launcher3.util.WallpaperOffsetInterpolator;
import com.android.launcher3.widget.LauncherAppWidgetHost;
@@ -426,10 +427,9 @@
// When a accessible drag is started by the folder, we only allow rearranging withing the
// folder.
boolean addNewPage = !(options.isAccessibleDrag && dragObject.dragSource != this);
-
if (addNewPage) {
mDeferRemoveExtraEmptyScreen = false;
- addExtraEmptyScreenOnDrag();
+ addExtraEmptyScreenOnDrag(dragObject);
if (dragObject.dragInfo.itemType == LauncherSettings.Favorites.ITEM_TYPE_APPWIDGET
&& dragObject.dragSource != this) {
@@ -636,12 +636,19 @@
return newScreen;
}
- public void addExtraEmptyScreenOnDrag() {
+ private void addExtraEmptyScreenOnDrag(DragObject dragObject) {
boolean lastChildOnScreen = false;
boolean childOnFinalScreen = false;
if (mDragSourceInternal != null) {
- if (mDragSourceInternal.getChildCount() == 1) {
+ // When the drag view content is a LauncherAppWidgetHostView, we should increment the
+ // drag source child count by 1 because the widget in drag has been detached from its
+ // original parent, ShortcutAndWidgetContainer, and reattached to the DragView.
+ int dragSourceChildCount =
+ dragObject.dragView.getContentView() instanceof LauncherAppWidgetHostView
+ ? mDragSourceInternal.getChildCount() + 1
+ : mDragSourceInternal.getChildCount();
+ if (dragSourceChildCount == 1) {
lastChildOnScreen = true;
}
CellLayout cl = (CellLayout) mDragSourceInternal.getParent();
@@ -1921,10 +1928,16 @@
if (droppedOnOriginalCellDuringTransition) {
// Animate the item to its original position, while simultaneously exiting
// spring-loaded mode so the page meets the icon where it was picked up.
+ final RunnableList callbackList = new RunnableList();
+ final Runnable onCompleteCallback = onCompleteRunnable;
mLauncher.getDragController().animateDragViewToOriginalPosition(
- onCompleteRunnable, cell,
+ /* onComplete= */ callbackList::executeAllAndDestroy, cell,
SPRING_LOADED.getTransitionDuration(mLauncher));
- mLauncher.getStateManager().goToState(NORMAL);
+ mLauncher.getStateManager().goToState(NORMAL, /* delay= */ 0,
+ onCompleteCallback == null
+ ? null
+ : forSuccessCallback(
+ () -> callbackList.add(onCompleteCallback)));
mLauncher.getDropTargetBar().onDragEnd();
parent.onDropChild(cell);
return;
diff --git a/src/com/android/launcher3/config/FeatureFlags.java b/src/com/android/launcher3/config/FeatureFlags.java
index 0c0c92e..40dcb1e 100644
--- a/src/com/android/launcher3/config/FeatureFlags.java
+++ b/src/com/android/launcher3/config/FeatureFlags.java
@@ -142,7 +142,7 @@
"MULTI_DB_GRID_MIRATION_ALGO", true, "Use the multi-db grid migration algorithm");
public static final BooleanFlag ENABLE_THEMED_ICONS = getDebugFlag(
- "ENABLE_THEMED_ICONS", false, "Enable themed icons on workspace");
+ "ENABLE_THEMED_ICONS", true, "Enable themed icons on workspace");
// Keep as DeviceFlag for remote disable in emergency.
public static final BooleanFlag ENABLE_OVERVIEW_SELECTIONS = new DeviceFlag(
@@ -238,7 +238,7 @@
"Sends a notification whenever launcher encounters an uncaught exception.");
public static final BooleanFlag PROTOTYPE_APP_CLOSE = getDebugFlag(
- "PROTOTYPE_APP_CLOSE", true, "Enables new app close");
+ "PROTOTYPE_APP_CLOSE", false, "Enables new app close");
public static final BooleanFlag ENABLE_WALLPAPER_SCRIM = getDebugFlag(
"ENABLE_WALLPAPER_SCRIM", false,
diff --git a/src/com/android/launcher3/dragndrop/AddItemActivity.java b/src/com/android/launcher3/dragndrop/AddItemActivity.java
index 5dae5a6..b4288ce 100644
--- a/src/com/android/launcher3/dragndrop/AddItemActivity.java
+++ b/src/com/android/launcher3/dragndrop/AddItemActivity.java
@@ -59,6 +59,7 @@
import com.android.launcher3.util.SystemUiController;
import com.android.launcher3.views.AbstractSlideInView;
import com.android.launcher3.views.BaseDragLayer;
+import com.android.launcher3.widget.AddItemWidgetsBottomSheet;
import com.android.launcher3.widget.LauncherAppWidgetHost;
import com.android.launcher3.widget.LauncherAppWidgetProviderInfo;
import com.android.launcher3.widget.NavigableAppWidgetHostView;
@@ -89,6 +90,7 @@
private LauncherAppState mApp;
private InvariantDeviceProfile mIdp;
private BaseDragLayer<AddItemActivity> mDragLayer;
+ private AddItemWidgetsBottomSheet mSlideInView;
private WidgetCell mWidgetCell;
@@ -124,8 +126,6 @@
mDragLayer = findViewById(R.id.add_item_drag_layer);
mDragLayer.recreateControllers();
mDragLayer.setInsets(mDeviceProfile.getInsets());
- AbstractSlideInView<AddItemActivity> slideInView = findViewById(R.id.add_item_bottom_sheet);
- slideInView.addOnCloseListener(this);
mWidgetCell = findViewById(R.id.widget_cell);
if (mRequest.getRequestType() == PinItemRequest.REQUEST_TYPE_SHORTCUT) {
@@ -151,6 +151,9 @@
TextView widgetAppName = findViewById(R.id.widget_appName);
widgetAppName.setText(getApplicationInfo().labelRes);
+ mSlideInView = findViewById(R.id.add_item_bottom_sheet);
+ mSlideInView.addOnCloseListener(this);
+ mSlideInView.show();
setupNavBarColor();
}
@@ -279,7 +282,7 @@
*/
public void onCancelClick(View v) {
logCommand(LAUNCHER_ADD_EXTERNAL_ITEM_CANCELLED);
- finish();
+ mSlideInView.close(/* animate= */ true);
}
/**
@@ -290,7 +293,7 @@
ItemInstallQueue.INSTANCE.get(this).queueItem(mRequest.getShortcutInfo());
logCommand(LAUNCHER_ADD_EXTERNAL_ITEM_PLACED_AUTOMATICALLY);
mRequest.accept();
- finish();
+ mSlideInView.close(/* animate= */ true);
return;
}
@@ -313,7 +316,7 @@
mWidgetOptions.putInt(AppWidgetManager.EXTRA_APPWIDGET_ID, widgetId);
mRequest.accept(mWidgetOptions);
logCommand(LAUNCHER_ADD_EXTERNAL_ITEM_PLACED_AUTOMATICALLY);
- finish();
+ mSlideInView.close(/* animate= */ true);
}
@Override
diff --git a/src/com/android/launcher3/dragndrop/DragLayer.java b/src/com/android/launcher3/dragndrop/DragLayer.java
index c2f609c..011325d 100644
--- a/src/com/android/launcher3/dragndrop/DragLayer.java
+++ b/src/com/android/launcher3/dragndrop/DragLayer.java
@@ -48,6 +48,7 @@
import com.android.launcher3.graphics.Scrim;
import com.android.launcher3.keyboard.ViewGroupFocusHelper;
import com.android.launcher3.util.Thunk;
+import com.android.launcher3.util.TouchController;
import com.android.launcher3.views.BaseDragLayer;
import java.util.ArrayList;
@@ -519,4 +520,14 @@
public Scrim getWorkspaceDragScrim() {
return mWorkspaceDragScrim;
}
+
+ /**
+ * Called when one handed mode state changed.
+ * @param activated true if one handed mode activated, false otherwise.
+ */
+ public void onOneHandedModeStateChanged(boolean activated) {
+ for (TouchController controller : mControllers) {
+ controller.onOneHandedModeStateChanged(activated);
+ }
+ }
}
diff --git a/src/com/android/launcher3/folder/PreviewBackground.java b/src/com/android/launcher3/folder/PreviewBackground.java
index 5ddf84f..4eab63e 100644
--- a/src/com/android/launcher3/folder/PreviewBackground.java
+++ b/src/com/android/launcher3/folder/PreviewBackground.java
@@ -89,8 +89,8 @@
private static final float ACCEPT_COLOR_MULTIPLIER = 1.5f;
// Expressed on a scale from 0 to 255.
- private static final int BG_OPACITY = 160;
- private static final int MAX_BG_OPACITY = 225;
+ private static final int BG_OPACITY = 255;
+ private static final int MAX_BG_OPACITY = 255;
private static final int SHADOW_OPACITY = 40;
private ValueAnimator mScaleAnimator;
diff --git a/src/com/android/launcher3/graphics/GridCustomizationsProvider.java b/src/com/android/launcher3/graphics/GridCustomizationsProvider.java
index 8ca157b..e4f5539 100644
--- a/src/com/android/launcher3/graphics/GridCustomizationsProvider.java
+++ b/src/com/android/launcher3/graphics/GridCustomizationsProvider.java
@@ -1,6 +1,7 @@
package com.android.launcher3.graphics;
import static com.android.launcher3.Utilities.getPrefs;
+import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR;
import static com.android.launcher3.util.Themes.KEY_THEMED_ICONS;
import static com.android.launcher3.util.Themes.isThemedIconEnabled;
@@ -18,7 +19,6 @@
import android.os.Handler;
import android.os.IBinder;
import android.os.IBinder.DeathRecipient;
-import android.os.Looper;
import android.os.Message;
import android.os.Messenger;
import android.util.ArrayMap;
@@ -217,7 +217,8 @@
Bundle result = new Bundle();
result.putParcelable(KEY_SURFACE_PACKAGE, renderer.getSurfacePackage());
- Messenger messenger = new Messenger(new Handler(Looper.getMainLooper(), observer));
+ Messenger messenger =
+ new Messenger(new Handler(UI_HELPER_EXECUTOR.getLooper(), observer));
Message msg = Message.obtain();
msg.replyTo = messenger;
result.putParcelable(KEY_CALLBACK, msg);
diff --git a/src/com/android/launcher3/logging/StatsLogManager.java b/src/com/android/launcher3/logging/StatsLogManager.java
index d065469..418e46d 100644
--- a/src/com/android/launcher3/logging/StatsLogManager.java
+++ b/src/com/android/launcher3/logging/StatsLogManager.java
@@ -135,6 +135,12 @@
@UiEvent(doc = "User tapped or long pressed on widget tray icon inside launcher settings.")
LAUNCHER_WIDGETSTRAY_BUTTON_TAP_OR_LONGPRESS(464),
+ @UiEvent(doc = "User expanded the list of widgets for a single app in the widget picker.")
+ LAUNCHER_WIDGETSTRAY_APP_EXPANDED(818),
+
+ @UiEvent(doc = "User searched for a widget in the widget picker.")
+ LAUNCHER_WIDGETSTRAY_SEARCHED(819),
+
@UiEvent(doc = "A dragged item is dropped on 'Remove' button in the target bar")
LAUNCHER_ITEM_DROPPED_ON_REMOVE(465),
@@ -458,7 +464,16 @@
LAUNCHER_OVERVIEW_SHARING_TAP_MORE_TO_SHARE_URL(777),
@UiEvent(doc = "User taps the More button to share an image")
- LAUNCHER_OVERVIEW_SHARING_TAP_MORE_TO_SHARE_IMAGE(778)
+ LAUNCHER_OVERVIEW_SHARING_TAP_MORE_TO_SHARE_IMAGE(778),
+
+ @UiEvent(doc = "User started resizing a widget on their home screen.")
+ LAUNCHER_WIDGET_RESIZE_STARTED(820),
+
+ @UiEvent(doc = "User finished resizing a widget on their home screen.")
+ LAUNCHER_WIDGET_RESIZE_COMPLETED(824),
+
+ @UiEvent(doc = "User reconfigured a widget on their home screen.")
+ LAUNCHER_WIDGET_RECONFIGURED(821)
;
// ADD MORE
diff --git a/src/com/android/launcher3/settings/DeveloperOptionsFragment.java b/src/com/android/launcher3/settings/DeveloperOptionsFragment.java
index c6b0b13..8fe42ac 100644
--- a/src/com/android/launcher3/settings/DeveloperOptionsFragment.java
+++ b/src/com/android/launcher3/settings/DeveloperOptionsFragment.java
@@ -104,6 +104,10 @@
initFlags();
loadPluginPrefs();
maybeAddSandboxCategory();
+
+ if (getActivity() != null) {
+ getActivity().setTitle("Developer Options");
+ }
}
private void filterPreferences(String query, PreferenceGroup pg) {
@@ -148,6 +152,17 @@
filterPreferences(query, mPreferenceScreen);
}
});
+
+ View listView = getListView();
+ final int bottomPadding = listView.getPaddingBottom();
+ listView.setOnApplyWindowInsetsListener((v, insets) -> {
+ v.setPadding(
+ v.getPaddingLeft(),
+ v.getPaddingTop(),
+ v.getPaddingRight(),
+ bottomPadding + insets.getSystemWindowInsetBottom());
+ return insets.consumeSystemWindowInsets();
+ });
}
@Override
diff --git a/src/com/android/launcher3/settings/SettingsActivity.java b/src/com/android/launcher3/settings/SettingsActivity.java
index 883ff75..915e140 100644
--- a/src/com/android/launcher3/settings/SettingsActivity.java
+++ b/src/com/android/launcher3/settings/SettingsActivity.java
@@ -20,11 +20,16 @@
import static com.android.launcher3.states.RotationHelper.ALLOW_ROTATION_PREFERENCE_KEY;
+import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.text.TextUtils;
+import android.view.MenuItem;
+import android.view.View;
import androidx.annotation.NonNull;
+import androidx.annotation.VisibleForTesting;
+import androidx.core.view.WindowCompat;
import androidx.fragment.app.DialogFragment;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentActivity;
@@ -46,6 +51,9 @@
import com.android.launcher3.model.WidgetsModel;
import com.android.launcher3.uioverrides.plugins.PluginManagerWrapper;
+import java.util.Collections;
+import java.util.List;
+
/**
* Settings activity for Launcher. Currently implements the following setting: Allow rotation
*/
@@ -53,6 +61,10 @@
implements OnPreferenceStartFragmentCallback, OnPreferenceStartScreenCallback,
SharedPreferences.OnSharedPreferenceChangeListener{
+ /** List of fragments that can be hosted by this activity. */
+ private static final List<String> VALID_PREFERENCE_FRAGMENTS = Collections.singletonList(
+ DeveloperOptionsFragment.class.getName());
+
private static final String DEVELOPER_OPTIONS_KEY = "pref_developer_options";
private static final String FLAGS_PREFERENCE_KEY = "flag_toggler";
@@ -63,43 +75,83 @@
private static final int DELAY_HIGHLIGHT_DURATION_MILLIS = 600;
public static final String SAVE_HIGHLIGHTED_KEY = "android:preference_highlighted";
+ @VisibleForTesting
+ static final String EXTRA_FRAGMENT = ":settings:fragment";
+ @VisibleForTesting
+ static final String EXTRA_FRAGMENT_ARGS = ":settings:fragment_args";
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+ setContentView(R.layout.settings_activity);
+ setActionBar(findViewById(R.id.action_bar));
+ WindowCompat.setDecorFitsSystemWindows(getWindow(), false);
+
+ Intent intent = getIntent();
+ if (intent.hasExtra(EXTRA_FRAGMENT) || intent.hasExtra(EXTRA_FRAGMENT_ARGS)) {
+ getActionBar().setDisplayHomeAsUpEnabled(true);
+ }
if (savedInstanceState == null) {
- Bundle args = new Bundle();
- String prefKey = getIntent().getStringExtra(EXTRA_FRAGMENT_ARG_KEY);
+ Bundle args = intent.getBundleExtra(EXTRA_FRAGMENT_ARGS);
+ if (args == null) {
+ args = new Bundle();
+ }
+
+ String prefKey = intent.getStringExtra(EXTRA_FRAGMENT_ARG_KEY);
if (!TextUtils.isEmpty(prefKey)) {
args.putString(EXTRA_FRAGMENT_ARG_KEY, prefKey);
}
final FragmentManager fm = getSupportFragmentManager();
final Fragment f = fm.getFragmentFactory().instantiate(getClassLoader(),
- getString(R.string.settings_fragment_name));
+ getPreferenceFragment());
f.setArguments(args);
// Display the fragment as the main content.
- fm.beginTransaction().replace(android.R.id.content, f).commit();
+ fm.beginTransaction().replace(R.id.content_frame, f).commit();
}
Utilities.getPrefs(getApplicationContext()).registerOnSharedPreferenceChangeListener(this);
}
+ /**
+ * Obtains the preference fragment to instantiate in this activity.
+ *
+ * @return the preference fragment class
+ * @throws IllegalArgumentException if the fragment is unknown to this activity
+ */
+ private String getPreferenceFragment() {
+ String preferenceFragment = getIntent().getStringExtra(EXTRA_FRAGMENT);
+ String defaultFragment = getString(R.string.settings_fragment_name);
+
+ if (TextUtils.isEmpty(preferenceFragment)) {
+ return defaultFragment;
+ } else if (!preferenceFragment.equals(defaultFragment)
+ && !VALID_PREFERENCE_FRAGMENTS.contains(preferenceFragment)) {
+ throw new IllegalArgumentException(
+ "Invalid fragment for this activity: " + preferenceFragment);
+ } else {
+ return preferenceFragment;
+ }
+ }
+
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { }
- private boolean startFragment(String fragment, Bundle args, String key) {
+ private boolean startPreference(String fragment, Bundle args, String key) {
if (Utilities.ATLEAST_P && getSupportFragmentManager().isStateSaved()) {
// Sometimes onClick can come after onPause because of being posted on the handler.
- // Skip starting new fragments in that case.
+ // Skip starting new preferences in that case.
return false;
}
final FragmentManager fm = getSupportFragmentManager();
final Fragment f = fm.getFragmentFactory().instantiate(getClassLoader(), fragment);
- f.setArguments(args);
if (f instanceof DialogFragment) {
- ((DialogFragment) f).show(getSupportFragmentManager(), key);
+ f.setArguments(args);
+ ((DialogFragment) f).show(fm, key);
} else {
- fm.beginTransaction().replace(android.R.id.content, f).addToBackStack(key).commit();
+ startActivity(new Intent(this, SettingsActivity.class)
+ .putExtra(EXTRA_FRAGMENT, fragment)
+ .putExtra(EXTRA_FRAGMENT_ARGS, args));
}
return true;
}
@@ -107,14 +159,23 @@
@Override
public boolean onPreferenceStartFragment(
PreferenceFragmentCompat preferenceFragment, Preference pref) {
- return startFragment(pref.getFragment(), pref.getExtras(), pref.getKey());
+ return startPreference(pref.getFragment(), pref.getExtras(), pref.getKey());
}
@Override
public boolean onPreferenceStartScreen(PreferenceFragmentCompat caller, PreferenceScreen pref) {
Bundle args = new Bundle();
args.putString(PreferenceFragmentCompat.ARG_PREFERENCE_ROOT, pref.getKey());
- return startFragment(getString(R.string.settings_fragment_name), args, pref.getKey());
+ return startPreference(getString(R.string.settings_fragment_name), args, pref.getKey());
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ if (item.getItemId() == android.R.id.home) {
+ onBackPressed();
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
}
/**
@@ -148,6 +209,25 @@
screen.removePreference(preference);
}
}
+
+ if (getActivity() != null && !TextUtils.isEmpty(getPreferenceScreen().getTitle())) {
+ getActivity().setTitle(getPreferenceScreen().getTitle());
+ }
+ }
+
+ @Override
+ public void onViewCreated(View view, Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+ View listView = getListView();
+ final int bottomPadding = listView.getPaddingBottom();
+ listView.setOnApplyWindowInsetsListener((v, insets) -> {
+ v.setPadding(
+ v.getPaddingLeft(),
+ v.getPaddingTop(),
+ v.getPaddingRight(),
+ bottomPadding + insets.getSystemWindowInsetBottom());
+ return insets.consumeSystemWindowInsets();
+ });
}
@Override
diff --git a/src/com/android/launcher3/touch/ItemClickHandler.java b/src/com/android/launcher3/touch/ItemClickHandler.java
index b5dcd3a..b53f96e 100644
--- a/src/com/android/launcher3/touch/ItemClickHandler.java
+++ b/src/com/android/launcher3/touch/ItemClickHandler.java
@@ -196,8 +196,10 @@
/**
* Handles clicking on a disabled shortcut
+ *
+ * @return true iff the disabled item click has been handled.
*/
- public static void handleDisabledItemClicked(WorkspaceItemInfo shortcut, Context context) {
+ public static boolean handleDisabledItemClicked(WorkspaceItemInfo shortcut, Context context) {
final int disabledFlags = shortcut.runtimeStatusFlags
& WorkspaceItemInfo.FLAG_DISABLED_MASK;
if ((disabledFlags
@@ -205,11 +207,12 @@
& ~FLAG_DISABLED_QUIET_USER) == 0) {
// If the app is only disabled because of the above flags, launch activity anyway.
// Framework will tell the user why the app is suspended.
+ return false;
} else {
if (!TextUtils.isEmpty(shortcut.disabledMessage)) {
// Use a message specific to this shortcut, if it has one.
Toast.makeText(context, shortcut.disabledMessage, Toast.LENGTH_SHORT).show();
- return;
+ return true;
}
// Otherwise just use a generic error message.
int error = R.string.activity_not_available;
@@ -220,6 +223,7 @@
error = R.string.shortcut_not_available;
}
Toast.makeText(context, error, Toast.LENGTH_SHORT).show();
+ return true;
}
}
@@ -229,8 +233,7 @@
* @param v The view that was clicked. Must be a tagged with a {@link WorkspaceItemInfo}.
*/
public static void onClickAppShortcut(View v, WorkspaceItemInfo shortcut, Launcher launcher) {
- if (shortcut.isDisabled()) {
- handleDisabledItemClicked(shortcut, launcher);
+ if (shortcut.isDisabled() && handleDisabledItemClicked(shortcut, launcher)) {
return;
}
diff --git a/src/com/android/launcher3/touch/SingleAxisSwipeDetector.java b/src/com/android/launcher3/touch/SingleAxisSwipeDetector.java
index 8c3c115..f751b7d 100644
--- a/src/com/android/launcher3/touch/SingleAxisSwipeDetector.java
+++ b/src/com/android/launcher3/touch/SingleAxisSwipeDetector.java
@@ -102,6 +102,8 @@
private int mScrollDirections;
+ private float mTouchSlopMultiplier = 1f;
+
public SingleAxisSwipeDetector(@NonNull Context context, @NonNull Listener l,
@NonNull Direction dir) {
this(ViewConfiguration.get(context), l, dir, Utilities.isRtl(context.getResources()));
@@ -115,6 +117,19 @@
mDir = dir;
}
+ /**
+ * Provides feasibility to adjust touch slop when visible window size changed. When visible
+ * bounds translate become smaller, multiply a larger multiplier could ensure the UX
+ * more consistent.
+ *
+ * @see #shouldScrollStart(PointF)
+ *
+ * @param touchSlopMultiplier the value to multiply original touch slop.
+ */
+ public void setTouchSlopMultiplier(float touchSlopMultiplier) {
+ mTouchSlopMultiplier = touchSlopMultiplier;
+ }
+
public void setDetectableScrollConditions(int scrollDirectionFlags, boolean ignoreSlop) {
mScrollDirections = scrollDirectionFlags;
mIgnoreSlopWhenSettling = ignoreSlop;
@@ -133,7 +148,7 @@
@Override
protected boolean shouldScrollStart(PointF displacement) {
// Reject cases where the angle or slop condition is not met.
- float minDisplacement = Math.max(mTouchSlop,
+ float minDisplacement = Math.max(mTouchSlop * mTouchSlopMultiplier,
Math.abs(mDir.extractOrthogonalDirection(displacement)));
if (Math.abs(mDir.extractDirection(displacement)) < minDisplacement) {
return false;
diff --git a/src/com/android/launcher3/util/TouchController.java b/src/com/android/launcher3/util/TouchController.java
index fc1d819..9c397c0 100644
--- a/src/com/android/launcher3/util/TouchController.java
+++ b/src/com/android/launcher3/util/TouchController.java
@@ -32,5 +32,10 @@
*/
boolean onControllerInterceptTouchEvent(MotionEvent ev);
+ /**
+ * Called when one handed mode state changed
+ */
+ default void onOneHandedModeStateChanged(boolean activated) { }
+
default void dump(String prefix, PrintWriter writer) { }
}
diff --git a/src/com/android/launcher3/util/VibratorWrapper.java b/src/com/android/launcher3/util/VibratorWrapper.java
index 14bf6c2..b0defd4 100644
--- a/src/com/android/launcher3/util/VibratorWrapper.java
+++ b/src/com/android/launcher3/util/VibratorWrapper.java
@@ -21,19 +21,15 @@
import static com.android.launcher3.util.Executors.MAIN_EXECUTOR;
import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR;
-import android.annotation.SuppressLint;
import android.annotation.TargetApi;
import android.content.ContentResolver;
import android.content.Context;
import android.database.ContentObserver;
-import android.media.AudioAttributes;
import android.os.Build;
import android.os.VibrationEffect;
import android.os.Vibrator;
import android.provider.Settings;
-import com.android.launcher3.Utilities;
-
/**
* Wrapper around {@link Vibrator} to easily perform haptic feedback where necessary.
*/
@@ -43,11 +39,6 @@
public static final MainThreadInitializedObject<VibratorWrapper> INSTANCE =
new MainThreadInitializedObject<>(VibratorWrapper::new);
- public static final AudioAttributes VIBRATION_ATTRS = new AudioAttributes.Builder()
- .setUsage(AudioAttributes.USAGE_ASSISTANCE_SONIFICATION)
- .setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION)
- .build();
-
public static final VibrationEffect EFFECT_CLICK =
createPredefined(VibrationEffect.EFFECT_CLICK);
@@ -90,24 +81,4 @@
UI_HELPER_EXECUTOR.execute(() -> mVibrator.vibrate(vibrationEffect));
}
}
-
- /**
- * Vibrates with a single primitive, if supported, or use a fallback effect instead. This only
- * vibrates if haptic feedback is available and enabled.
- */
- @SuppressLint("NewApi")
- public void vibrate(int primitiveId, float primitiveScale, VibrationEffect fallbackEffect) {
- if (mHasVibrator && mIsHapticFeedbackEnabled) {
- UI_HELPER_EXECUTOR.execute(() -> {
- if (Utilities.ATLEAST_R && primitiveId >= 0
- && mVibrator.areAllPrimitivesSupported(primitiveId)) {
- mVibrator.vibrate(VibrationEffect.startComposition()
- .addPrimitive(primitiveId, primitiveScale)
- .compose(), VIBRATION_ATTRS);
- } else {
- mVibrator.vibrate(fallbackEffect, VIBRATION_ATTRS);
- }
- });
- }
- }
}
diff --git a/src/com/android/launcher3/views/ArrowTipView.java b/src/com/android/launcher3/views/ArrowTipView.java
index 4ee365e..07d3776 100644
--- a/src/com/android/launcher3/views/ArrowTipView.java
+++ b/src/com/android/launcher3/views/ArrowTipView.java
@@ -53,11 +53,19 @@
protected final BaseDraggingActivity mActivity;
private final Handler mHandler = new Handler();
+ private final boolean mIsPointingUp;
+ private final int mArrowWidth;
private Runnable mOnClosed;
public ArrowTipView(Context context) {
+ this(context, false);
+ }
+
+ public ArrowTipView(Context context, boolean isPointingUp) {
super(context, null, 0);
mActivity = BaseDraggingActivity.fromContext(context);
+ mIsPointingUp = isPointingUp;
+ mArrowWidth = context.getResources().getDimensionPixelSize(R.dimen.arrow_toast_arrow_width);
init(context);
}
@@ -97,21 +105,21 @@
private void init(Context context) {
inflate(context, R.layout.arrow_toast, this);
setOrientation(LinearLayout.VERTICAL);
- View dismissButton = findViewById(R.id.dismiss);
- dismissButton.setOnClickListener(view -> {
- handleClose(true);
- });
View arrowView = findViewById(R.id.arrow);
ViewGroup.LayoutParams arrowLp = arrowView.getLayoutParams();
ShapeDrawable arrowDrawable = new ShapeDrawable(TriangleShape.create(
- arrowLp.width, arrowLp.height, false));
+ arrowLp.width, arrowLp.height, mIsPointingUp));
Paint arrowPaint = arrowDrawable.getPaint();
- arrowPaint.setColor(ContextCompat.getColor(getContext(), R.color.arrow_tip_view_bg));
+ arrowPaint.setColor(ContextCompat.getColor(getContext(), R.color.arrow_tip_view_bg));
// The corner path effect won't be reflected in the shadow, but shouldn't be noticeable.
arrowPaint.setPathEffect(new CornerPathEffect(
context.getResources().getDimension(R.dimen.arrow_toast_corner_radius)));
arrowView.setBackground(arrowDrawable);
+ if (mIsPointingUp) {
+ removeView(arrowView);
+ addView(arrowView, 0);
+ }
mIsOpen = true;
@@ -128,10 +136,10 @@
/**
* Show the ArrowTipView (tooltip) center, start, or end aligned.
*
- * @param text The text to be shown in the tooltip.
- * @param gravity The gravity aligns the tooltip center, start, or end.
+ * @param text The text to be shown in the tooltip.
+ * @param gravity The gravity aligns the tooltip center, start, or end.
* @param arrowMarginStart The margin from start to place arrow (ignored if center)
- * @param top The Y coordinate of the bottom of tooltip.
+ * @param top The Y coordinate of the bottom of tooltip.
* @return The tooltip.
*/
public ArrowTipView show(String text, int gravity, int arrowMarginStart, int top) {
@@ -149,15 +157,15 @@
arrowMarginStart = parent.getMeasuredWidth() - arrowMarginStart;
}
if (gravity == Gravity.END) {
- lp.setMarginEnd(parent.getMeasuredWidth() - arrowMarginStart);
+ lp.setMarginEnd(parent.getMeasuredWidth() - arrowMarginStart - mArrowWidth);
} else if (gravity == Gravity.START) {
- lp.setMarginStart(arrowMarginStart);
+ lp.setMarginStart(arrowMarginStart - mArrowWidth / 2);
}
requestLayout();
params.leftMargin = mActivity.getDeviceProfile().workspacePadding.left;
params.rightMargin = mActivity.getDeviceProfile().workspacePadding.right;
- post(() -> setY(top - getHeight()));
+ post(() -> setY(top - (mIsPointingUp ? 0 : getHeight())));
setAlpha(0);
animate()
.alpha(1f)
@@ -172,27 +180,28 @@
/**
* Show the ArrowTipView (tooltip) custom aligned.
*
- * @param text The text to be shown in the tooltip.
+ * @param text The text to be shown in the tooltip.
* @param arrowXCoord The X coordinate for the arrow on the tip. The arrow is usually in the
* center of ArrowTipView unless the ArrowTipView goes beyond screen margin.
- * @param yCoord The Y coordinate of the bottom of the tooltip.
+ * @param yCoord The Y coordinate of the bottom of the tooltip.
* @return The tool tip view.
*/
- @Nullable public ArrowTipView showAtLocation(String text, int arrowXCoord, int yCoord) {
+ @Nullable
+ public ArrowTipView showAtLocation(String text, int arrowXCoord, int yCoord) {
ViewGroup parent = mActivity.getDragLayer();
@Px int parentViewWidth = parent.getWidth();
- @Px int textViewWidth = getContext().getResources()
- .getDimensionPixelSize(R.dimen.widget_picker_education_tip_width);
+ @Px int maxTextViewWidth = getContext().getResources()
+ .getDimensionPixelSize(R.dimen.widget_picker_education_tip_max_width);
@Px int minViewMargin = getContext().getResources()
.getDimensionPixelSize(R.dimen.widget_picker_education_tip_min_margin);
- if (parentViewWidth < textViewWidth + 2 * minViewMargin) {
+ if (parentViewWidth < maxTextViewWidth + 2 * minViewMargin) {
Log.w(TAG, "Cannot display tip on a small screen of size: " + parentViewWidth);
return null;
}
TextView textView = findViewById(R.id.text);
textView.setText(text);
- textView.setWidth(textViewWidth);
+ textView.setMaxWidth(maxTextViewWidth);
parent.addView(this);
requestLayout();
diff --git a/src/com/android/launcher3/views/WidgetsEduView.java b/src/com/android/launcher3/views/WidgetsEduView.java
new file mode 100644
index 0000000..c6fa98a
--- /dev/null
+++ b/src/com/android/launcher3/views/WidgetsEduView.java
@@ -0,0 +1,116 @@
+/*
+ * 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.views;
+
+import static com.android.launcher3.anim.Interpolators.FAST_OUT_SLOW_IN;
+
+import android.animation.PropertyValuesHolder;
+import android.content.Context;
+import android.graphics.Rect;
+import android.util.AttributeSet;
+import android.view.LayoutInflater;
+import android.view.View;
+
+import com.android.launcher3.Insettable;
+import com.android.launcher3.Launcher;
+import com.android.launcher3.R;
+
+/**
+ * Education view about widgets.
+ */
+public class WidgetsEduView extends AbstractSlideInView<Launcher> implements Insettable {
+
+ private static final int DEFAULT_CLOSE_DURATION = 200;
+
+ private Rect mInsets = new Rect();
+ private View mEduView;
+
+
+ public WidgetsEduView(Context context, AttributeSet attr) {
+ this(context, attr, 0);
+ }
+
+ public WidgetsEduView(Context context, AttributeSet attrs,
+ int defStyleAttr) {
+ super(context, attrs, defStyleAttr);
+ mContent = this;
+ }
+
+ @Override
+ protected void handleClose(boolean animate) {
+ handleClose(true, DEFAULT_CLOSE_DURATION);
+ }
+
+ @Override
+ protected boolean isOfType(int type) {
+ return (type & TYPE_WIDGETS_EDUCATION_DIALOG) != 0;
+ }
+
+ @Override
+ protected void onFinishInflate() {
+ super.onFinishInflate();
+ mEduView = findViewById(R.id.edu_view);
+ findViewById(R.id.edu_close_button)
+ .setOnClickListener(v -> close(/* animate= */ true));
+ }
+
+ @Override
+ public void setInsets(Rect insets) {
+ int leftInset = insets.left - mInsets.left;
+ int rightInset = insets.right - mInsets.right;
+ int bottomInset = insets.bottom - mInsets.bottom;
+ mInsets.set(insets);
+ setPadding(leftInset, getPaddingTop(), rightInset, 0);
+ mEduView.setPaddingRelative(mEduView.getPaddingStart(),
+ mEduView.getPaddingTop(), mEduView.getPaddingEnd(), bottomInset);
+ }
+
+ private void show() {
+ attachToContainer();
+ animateOpen();
+ }
+
+ @Override
+ protected int getScrimColor(Context context) {
+ return context.getResources().getColor(R.color.widgets_picker_scrim);
+ }
+
+ @Override
+ protected void onLayout(boolean changed, int l, int t, int r, int b) {
+ super.onLayout(changed, l, t, r, b);
+ setTranslationShift(mTranslationShift);
+ }
+
+ private void animateOpen() {
+ if (mIsOpen || mOpenCloseAnimator.isRunning()) {
+ return;
+ }
+ mIsOpen = true;
+ mOpenCloseAnimator.setValues(
+ PropertyValuesHolder.ofFloat(TRANSLATION_SHIFT, TRANSLATION_SHIFT_OPENED));
+ mOpenCloseAnimator.setInterpolator(FAST_OUT_SLOW_IN);
+ mOpenCloseAnimator.start();
+ }
+
+ /** Shows widget education dialog. */
+ public static WidgetsEduView showEducationDialog(Launcher launcher) {
+ LayoutInflater layoutInflater = LayoutInflater.from(launcher);
+ WidgetsEduView v = (WidgetsEduView) layoutInflater.inflate(
+ R.layout.widgets_edu, launcher.getDragLayer(), false);
+ v.show();
+ return v;
+ }
+}
diff --git a/src/com/android/launcher3/widget/AddItemWidgetsBottomSheet.java b/src/com/android/launcher3/widget/AddItemWidgetsBottomSheet.java
index 9e08303..804973f 100644
--- a/src/com/android/launcher3/widget/AddItemWidgetsBottomSheet.java
+++ b/src/com/android/launcher3/widget/AddItemWidgetsBottomSheet.java
@@ -23,8 +23,11 @@
import android.content.res.Configuration;
import android.graphics.Rect;
import android.util.AttributeSet;
+import android.view.ViewGroup;
+import android.view.ViewParent;
import com.android.launcher3.Insettable;
+import com.android.launcher3.R;
import com.android.launcher3.dragndrop.AddItemActivity;
import com.android.launcher3.views.AbstractSlideInView;
@@ -48,6 +51,17 @@
mContent = this;
mInsets = new Rect();
mCurrentConfiguration = new Configuration(getResources().getConfiguration());
+ }
+
+ /**
+ * Attaches to activity container and animates open the bottom sheet.
+ */
+ public void show() {
+ ViewParent parent = getParent();
+ if (parent instanceof ViewGroup) {
+ ((ViewGroup) parent).removeView(this);
+ }
+ attachToContainer();
animateOpen();
}
@@ -95,4 +109,9 @@
}
mCurrentConfiguration.updateFrom(newConfig);
}
+
+ @Override
+ protected int getScrimColor(Context context) {
+ return context.getResources().getColor(R.color.widgets_picker_scrim);
+ }
}
diff --git a/src/com/android/launcher3/widget/BaseWidgetSheet.java b/src/com/android/launcher3/widget/BaseWidgetSheet.java
index e6791c3..edd42b4 100644
--- a/src/com/android/launcher3/widget/BaseWidgetSheet.java
+++ b/src/com/android/launcher3/widget/BaseWidgetSheet.java
@@ -15,8 +15,6 @@
*/
package com.android.launcher3.widget;
-import static com.android.launcher3.icons.GraphicsUtils.setColorAlphaBound;
-
import android.content.Context;
import android.graphics.Point;
import android.graphics.Rect;
@@ -62,8 +60,7 @@
}
protected int getScrimColor(Context context) {
- int alpha = context.getResources().getInteger(R.integer.extracted_color_gradient_alpha);
- return setColorAlphaBound(context.getColor(R.color.wallpaper_popup_scrim), alpha);
+ return context.getResources().getColor(R.color.widgets_picker_scrim);
}
@Override
diff --git a/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfo.java b/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfo.java
index 53b5fec..14108f6 100644
--- a/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfo.java
+++ b/src/com/android/launcher3/widget/LauncherAppWidgetProviderInfo.java
@@ -67,61 +67,86 @@
}
public void initSpans(Context context, InvariantDeviceProfile idp) {
- // Always assume we're working with the smallest span to make sure we
- // reserve enough space in both orientations.
- float smallestCellWidth = Float.MAX_VALUE;
- float smallestCellHeight = Float.MAX_VALUE;
+ int minSpanX = 0;
+ int minSpanY = 0;
+ int maxSpanX = idp.numColumns;
+ int maxSpanY = idp.numRows;
+ int spanX = 0;
+ int spanY = 0;
+
+ Rect widgetPadding = new Rect();
+ Rect localPadding = new Rect();
+ AppWidgetHostView.getDefaultPaddingForWidget(context, provider, widgetPadding);
Point cellSize = new Point();
- boolean isWidgetPadded = false;
for (DeviceProfile dp : idp.supportedProfiles) {
dp.getCellSize(cellSize);
- smallestCellWidth = Math.min(smallestCellWidth, cellSize.x);
- smallestCellHeight = Math.min(smallestCellHeight, cellSize.y);
- isWidgetPadded = isWidgetPadded || !dp.shouldInsetWidgets();
+ // We want to account for the extra amount of padding that we are adding to the widget
+ // to ensure that it gets the full amount of space that it has requested.
+ // If grids supports insetting widgets, we do not account for widget padding.
+ if (dp.shouldInsetWidgets()) {
+ localPadding.setEmpty();
+ } else {
+ localPadding.set(widgetPadding);
+ }
+ minSpanX = Math.max(minSpanX,
+ getSpanX(localPadding, minResizeWidth, dp.cellLayoutBorderSpacingPx,
+ cellSize.x));
+ minSpanY = Math.max(minSpanY,
+ getSpanY(localPadding, minResizeHeight, dp.cellLayoutBorderSpacingPx,
+ cellSize.y));
+
+ if (ATLEAST_S) {
+ if (maxResizeWidth > 0) {
+ maxSpanX = Math.min(maxSpanX,
+ getSpanX(localPadding, maxResizeWidth, dp.cellLayoutBorderSpacingPx,
+ cellSize.x));
+ }
+ if (maxResizeHeight > 0) {
+ maxSpanY = Math.min(maxSpanY,
+ getSpanY(localPadding, maxResizeHeight, dp.cellLayoutBorderSpacingPx,
+ cellSize.y));
+ }
+ }
+
+ spanX = Math.max(spanX,
+ getSpanX(localPadding, minWidth, dp.cellLayoutBorderSpacingPx, cellSize.x));
+ spanY = Math.max(spanY,
+ getSpanY(localPadding, minHeight, dp.cellLayoutBorderSpacingPx, cellSize.y));
}
- // We want to account for the extra amount of padding that we are adding to the widget
- // to ensure that it gets the full amount of space that it has requested.
- // If grids supports insetting widgets, we do not account for widget padding.
- Rect widgetPadding = new Rect();
- if (isWidgetPadded) {
- AppWidgetHostView.getDefaultPaddingForWidget(context, provider, widgetPadding);
+ if (ATLEAST_S) {
+ // Ensures maxSpan >= minSpan
+ maxSpanX = Math.max(maxSpanX, minSpanX);
+ maxSpanY = Math.max(maxSpanY, minSpanY);
+
+ // Use targetCellWidth/Height if it is within the min/max ranges.
+ // Otherwise, use the span of minWidth/Height.
+ if (targetCellWidth >= minSpanX && targetCellWidth <= maxSpanX
+ && targetCellHeight >= minSpanY && targetCellHeight <= maxSpanY) {
+ spanX = targetCellWidth;
+ spanY = targetCellHeight;
+ }
}
- minSpanX = getSpanX(widgetPadding, minResizeWidth, smallestCellWidth);
- minSpanY = getSpanY(widgetPadding, minResizeHeight, smallestCellHeight);
-
- // Use maxResizeWidth/Height if they are defined and we're on S or above.
- maxSpanX =
- (ATLEAST_S && maxResizeWidth > 0)
- ? getSpanX(widgetPadding, maxResizeWidth, smallestCellWidth)
- : idp.numColumns;
- maxSpanY =
- (ATLEAST_S && maxResizeHeight > 0)
- ? getSpanY(widgetPadding, maxResizeHeight, smallestCellHeight)
- : idp.numRows;
-
- // Use targetCellWidth/Height if it is within the min/max ranges and we're on S or above.
- // Otherwise, fall back to minWidth/Height.
- if (ATLEAST_S && targetCellWidth >= minSpanX && targetCellWidth <= maxSpanX
- && targetCellHeight >= minSpanY && targetCellHeight <= maxSpanY) {
- spanX = targetCellWidth;
- spanY = targetCellHeight;
- } else {
- spanX = getSpanX(widgetPadding, minWidth, smallestCellWidth);
- spanY = getSpanY(widgetPadding, minHeight, smallestCellHeight);
- }
+ this.minSpanX = minSpanX;
+ this.minSpanY = minSpanY;
+ this.maxSpanX = maxSpanX;
+ this.maxSpanY = maxSpanY;
+ this.spanX = spanX;
+ this.spanY = spanY;
}
- private int getSpanX(Rect widgetPadding, int widgetWidth, float cellWidth) {
+ private int getSpanX(Rect widgetPadding, int widgetWidth, int cellSpacing, float cellWidth) {
return Math.max(1, (int) Math.ceil(
- (widgetWidth + widgetPadding.left + widgetPadding.right) / cellWidth));
+ (widgetWidth + widgetPadding.left + widgetPadding.right + cellSpacing) / (cellWidth
+ + cellSpacing)));
}
- private int getSpanY(Rect widgetPadding, int widgetHeight, float cellHeight) {
+ private int getSpanY(Rect widgetPadding, int widgetHeight, int cellSpacing, float cellHeight) {
return Math.max(1, (int) Math.ceil(
- (widgetHeight + widgetPadding.top + widgetPadding.bottom) / cellHeight));
+ (widgetHeight + widgetPadding.top + widgetPadding.bottom + cellSpacing) / (
+ cellHeight + cellSpacing)));
}
public String getLabel(PackageManager packageManager) {
diff --git a/src/com/android/launcher3/widget/WidgetCell.java b/src/com/android/launcher3/widget/WidgetCell.java
index 7d04d7b..e1999c9 100644
--- a/src/com/android/launcher3/widget/WidgetCell.java
+++ b/src/com/android/launcher3/widget/WidgetCell.java
@@ -21,6 +21,7 @@
import android.content.Context;
import android.content.res.Resources;
import android.graphics.Bitmap;
+import android.graphics.Point;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.os.CancellationSignal;
@@ -213,12 +214,8 @@
return false;
}
};
- mAppWidgetHostViewPreview.setAppWidget(/* appWidgetId= */ -1, item.widgetInfo);
- Rect padding = new Rect();
- mAppWidgetHostViewPreview.getWidgetInset(mActivity.getDeviceProfile(), padding);
- mAppWidgetHostViewPreview.setPadding(padding.left, padding.top, padding.right,
- padding.bottom);
- mAppWidgetHostViewPreview.updateAppWidget(/* remoteViews= */ mRemoteViewsPreview);
+ setAppWidgetHostViewPreview(mAppWidgetHostViewPreview, item.widgetInfo,
+ mRemoteViewsPreview);
return;
}
@@ -234,16 +231,31 @@
// rendering a preview layout for work profile apps yet. For non-work profile layout, a
// proper solution is to use RemoteViews(PackageName, LayoutId).
launcherAppWidgetProviderInfo.initialLayout = item.widgetInfo.previewLayout;
- mAppWidgetHostViewPreview.setAppWidget(/* appWidgetId= */ -1,
- launcherAppWidgetProviderInfo);
- Rect padding = new Rect();
- mAppWidgetHostViewPreview.getWidgetInset(mActivity.getDeviceProfile(), padding);
- mAppWidgetHostViewPreview.setPadding(padding.left, padding.top, padding.right,
- padding.bottom);
- mAppWidgetHostViewPreview.updateAppWidget(/* remoteViews= */ null);
+ setAppWidgetHostViewPreview(mAppWidgetHostViewPreview,
+ launcherAppWidgetProviderInfo, /* remoteViews= */ null);
}
}
+ private void setAppWidgetHostViewPreview(
+ NavigableAppWidgetHostView appWidgetHostViewPreview,
+ LauncherAppWidgetProviderInfo providerInfo,
+ @Nullable RemoteViews remoteViews) {
+ appWidgetHostViewPreview.setAppWidget(/* appWidgetId= */ -1, providerInfo);
+ Rect padding;
+ DeviceProfile deviceProfile = mActivity.getDeviceProfile();
+ if (deviceProfile.shouldInsetWidgets()) {
+ padding = new Rect();
+ appWidgetHostViewPreview.getWidgetInset(deviceProfile, padding);
+ } else {
+ padding = deviceProfile.inv.defaultWidgetPadding;
+ }
+ appWidgetHostViewPreview.setPadding(padding.left, padding.top, padding.right,
+ padding.bottom);
+ mPreviewWidth += padding.left + padding.right;
+ mPreviewHeight += padding.top + padding.bottom;
+ appWidgetHostViewPreview.updateAppWidget(remoteViews);
+ }
+
public WidgetImageView getWidgetView() {
return mWidgetImage;
}
@@ -343,8 +355,11 @@
/** Sets the widget preview image size, in number of cells, and preview scale. */
public void setPreviewSize(int spanX, int spanY, float previewScale) {
DeviceProfile deviceProfile = mActivity.getDeviceProfile();
- mPreviewWidth = deviceProfile.cellWidthPx * spanX + mPreviewPadding;
- mPreviewHeight = deviceProfile.cellHeightPx * spanY + mPreviewPadding;
+ Point cellSize = deviceProfile.getCellSize();
+ mPreviewWidth = cellSize.x * spanX + mPreviewPadding
+ + deviceProfile.cellLayoutBorderSpacingPx * (spanX - 1);
+ mPreviewHeight = cellSize.y * spanY + mPreviewPadding
+ + deviceProfile.cellLayoutBorderSpacingPx * (spanY - 1);
mPreviewScale = previewScale;
}
diff --git a/src/com/android/launcher3/widget/picker/WidgetsFullSheet.java b/src/com/android/launcher3/widget/picker/WidgetsFullSheet.java
index c09beb6..1a58bb0 100644
--- a/src/com/android/launcher3/widget/picker/WidgetsFullSheet.java
+++ b/src/com/android/launcher3/widget/picker/WidgetsFullSheet.java
@@ -16,6 +16,7 @@
package com.android.launcher3.widget.picker;
import static com.android.launcher3.LauncherAnimUtils.VIEW_TRANSLATE_Y;
+import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WIDGETSTRAY_SEARCHED;
import static com.android.launcher3.testing.TestProtocol.NORMAL_STATE_ORDINAL;
import android.animation.Animator;
@@ -41,6 +42,7 @@
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
+import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.RecyclerView;
import com.android.launcher3.DeviceProfile;
@@ -48,11 +50,14 @@
import com.android.launcher3.Launcher;
import com.android.launcher3.LauncherAppState;
import com.android.launcher3.R;
+import com.android.launcher3.Utilities;
import com.android.launcher3.anim.PendingAnimation;
import com.android.launcher3.compat.AccessibilityManagerCompat;
import com.android.launcher3.model.WidgetItem;
+import com.android.launcher3.views.ArrowTipView;
import com.android.launcher3.views.RecyclerViewFastScroller;
import com.android.launcher3.views.TopRoundedCornerView;
+import com.android.launcher3.views.WidgetsEduView;
import com.android.launcher3.widget.BaseWidgetSheet;
import com.android.launcher3.widget.LauncherAppWidgetHost.ProviderChangedListener;
import com.android.launcher3.widget.model.WidgetsListBaseEntry;
@@ -78,12 +83,16 @@
private static final long DEFAULT_OPEN_DURATION = 267;
private static final long FADE_IN_DURATION = 150;
private static final long EDUCATION_TIP_DELAY_MS = 200;
+ private static final long EDUCATION_DIALOG_DELAY_MS = 500;
private static final float VERTICAL_START_POSITION = 0.3f;
// The widget recommendation table can easily take over the entire screen on devices with small
// resolution or landscape on phone. This ratio defines the max percentage of content area that
// the table can display.
private static final float RECOMMENDATION_TABLE_HEIGHT_RATIO = 0.75f;
+ private static final String KEY_WIDGETS_EDUCATION_DIALOG_SEEN =
+ "launcher.widgets_education_dialog_seen";
+
private final Rect mInsets = new Rect();
private final boolean mHasWorkProfile;
private final SparseArray<AdapterHolder> mAdapters = new SparseArray();
@@ -92,6 +101,7 @@
entry -> mCurrentUser.equals(entry.mPkgItem.user);
private final Predicate<WidgetsListBaseEntry> mWorkWidgetsFilter =
mPrimaryWidgetsFilter.negate();
+ @Nullable private ArrowTipView mLatestEducationalTip;
private final OnLayoutChangeListener mLayoutChangeListenerToShowTips =
new OnLayoutChangeListener() {
@Override
@@ -115,13 +125,15 @@
removeOnLayoutChangeListener(mLayoutChangeListenerToShowTips);
return;
}
- View viewForTip = getViewToShowEducationTip();
- if (showEducationTipOnViewIfPossible(viewForTip) != null) {
+ mLatestEducationalTip = showEducationTipOnViewIfPossible(getViewToShowEducationTip());
+ if (mLatestEducationalTip != null) {
removeOnLayoutChangeListener(mLayoutChangeListenerToShowTips);
}
};
+
private final int mTabsHeight;
private final int mViewPagerTopPadding;
+ private final int mSearchAndRecommendationContainerBottomMargin;
private final int mWidgetCellHorizontalPadding;
@Nullable private WidgetsRecyclerView mCurrentWidgetsRecyclerView;
@@ -148,6 +160,10 @@
? getContext().getResources()
.getDimensionPixelSize(R.dimen.widget_picker_view_pager_top_padding)
: 0;
+ mSearchAndRecommendationContainerBottomMargin = getContext().getResources()
+ .getDimensionPixelSize(mHasWorkProfile
+ ? R.dimen.search_and_recommended_widgets_container_small_bottom_margin
+ : R.dimen.search_and_recommended_widgets_container_bottom_margin);
mWidgetCellHorizontalPadding = 2 * getResources().getDimensionPixelOffset(
R.dimen.widget_cell_horizontal_padding);
}
@@ -191,6 +207,11 @@
mNoWidgetsView = findViewById(R.id.no_widgets_text);
mSearchAndRecommendationViewHolder = new SearchAndRecommendationViewHolder(
findViewById(R.id.search_and_recommendations_container));
+ TopRoundedCornerView.LayoutParams layoutParams =
+ (TopRoundedCornerView.LayoutParams)
+ mSearchAndRecommendationViewHolder.mContainer.getLayoutParams();
+ layoutParams.bottomMargin = mSearchAndRecommendationContainerBottomMargin;
+ mSearchAndRecommendationViewHolder.mContainer.setLayoutParams(layoutParams);
mSearchAndRecommendationsScrollController = new SearchAndRecommendationsScrollController(
mHasWorkProfile,
mTabsHeight,
@@ -210,9 +231,7 @@
mSearchAndRecommendationViewHolder.mSearchBar.initialize(
mActivityContext.getPopupDataProvider(), /* searchModeListener= */ this);
- if (!hasSeenEducationTip()) {
- addOnLayoutChangeListener(mLayoutChangeListenerToShowTips);
- }
+ setUpEducationViewsIfNeeded();
}
@Override
@@ -430,6 +449,7 @@
if (mIsInSearchMode) return;
setViewVisibilityBasedOnSearch(/*isInSearchMode= */ true);
attachScrollbarToRecyclerView(mAdapters.get(AdapterHolder.SEARCH).mWidgetsRecyclerView);
+ mActivityContext.getStatsLogManager().logger().log(LAUNCHER_WIDGETSTRAY_SEARCHED);
}
@Override
@@ -597,6 +617,10 @@
@Override
protected void onCloseComplete() {
super.onCloseComplete();
+ removeCallbacks(mShowEducationTipTask);
+ if (mLatestEducationalTip != null) {
+ mLatestEducationalTip.close(false);
+ }
AccessibilityManagerCompat.sendStateEventToTest(getContext(), NORMAL_STATE_ORDINAL);
}
@@ -669,6 +693,38 @@
return null;
}
+ /** Shows education dialog for widgets. */
+ private WidgetsEduView showEducationDialog() {
+ mActivityContext.getSharedPrefs().edit()
+ .putBoolean(KEY_WIDGETS_EDUCATION_DIALOG_SEEN, true).apply();
+ return WidgetsEduView.showEducationDialog(mActivityContext);
+ }
+
+ /** Returns {@code true} if education dialog has previously been shown. */
+ protected boolean hasSeenEducationDialog() {
+ return mActivityContext.getSharedPrefs()
+ .getBoolean(KEY_WIDGETS_EDUCATION_DIALOG_SEEN, false)
+ || Utilities.IS_RUNNING_IN_TEST_HARNESS;
+ }
+
+ private void setUpEducationViewsIfNeeded() {
+ if (!hasSeenEducationDialog()) {
+ postDelayed(() -> {
+ WidgetsEduView eduDialog = showEducationDialog();
+ eduDialog.addOnCloseListener(() -> {
+ if (!hasSeenEducationTip()) {
+ addOnLayoutChangeListener(mLayoutChangeListenerToShowTips);
+ // Call #requestLayout() to trigger layout change listener in order to show
+ // arrow tip immediately if there is a widget to show it on.
+ requestLayout();
+ }
+ });
+ }, EDUCATION_DIALOG_DELAY_MS);
+ } else if (!hasSeenEducationTip()) {
+ addOnLayoutChangeListener(mLayoutChangeListenerToShowTips);
+ }
+ }
+
/** A holder class for holding adapters & their corresponding recycler view. */
private final class AdapterHolder {
static final int PRIMARY = 0;
@@ -677,6 +733,7 @@
private final int mAdapterType;
private final WidgetsListAdapter mWidgetsListAdapter;
+ private final DefaultItemAnimator mWidgetsListItemAnimator;
private WidgetsRecyclerView mWidgetsRecyclerView;
@@ -703,13 +760,16 @@
default:
break;
}
+ mWidgetsListItemAnimator = new DefaultItemAnimator();
+ // Disable change animations because it disrupts the item focus upon adapter item
+ // change.
+ mWidgetsListItemAnimator.setSupportsChangeAnimations(false);
}
void setup(WidgetsRecyclerView recyclerView) {
mWidgetsRecyclerView = recyclerView;
mWidgetsRecyclerView.setAdapter(mWidgetsListAdapter);
- // Disables animation because it disrupts the item focus upon adapter item change.
- mWidgetsRecyclerView.setItemAnimator(null);
+ mWidgetsRecyclerView.setItemAnimator(mWidgetsListItemAnimator);
mWidgetsRecyclerView.setHeaderViewDimensionsProvider(WidgetsFullSheet.this);
mWidgetsRecyclerView.setEdgeEffectFactory(
((TopRoundedCornerView) mContent).createEdgeEffectFactory());
diff --git a/src/com/android/launcher3/widget/picker/WidgetsListAdapter.java b/src/com/android/launcher3/widget/picker/WidgetsListAdapter.java
index 7963431..826c244 100644
--- a/src/com/android/launcher3/widget/picker/WidgetsListAdapter.java
+++ b/src/com/android/launcher3/widget/picker/WidgetsListAdapter.java
@@ -15,21 +15,27 @@
*/
package com.android.launcher3.widget.picker;
+import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_WIDGETSTRAY_APP_EXPANDED;
+
import android.content.Context;
import android.os.Process;
import android.util.Log;
import android.util.SparseArray;
import android.view.LayoutInflater;
+import android.view.View;
import android.view.View.OnClickListener;
import android.view.View.OnLongClickListener;
import android.view.ViewGroup;
import android.widget.TableRow;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.RecyclerView.Adapter;
import androidx.recyclerview.widget.RecyclerView.ViewHolder;
+import com.android.launcher3.Launcher;
import com.android.launcher3.R;
import com.android.launcher3.WidgetPreviewLoader;
import com.android.launcher3.icons.IconCache;
@@ -48,8 +54,10 @@
import java.util.Comparator;
import java.util.List;
import java.util.Map;
+import java.util.OptionalInt;
import java.util.function.Predicate;
import java.util.stream.Collectors;
+import java.util.stream.IntStream;
/**
* Recycler view adapter for the widget tray.
@@ -71,6 +79,7 @@
private static final int VIEW_TYPE_WIDGETS_HEADER = R.id.view_type_widgets_header;
private static final int VIEW_TYPE_WIDGETS_SEARCH_HEADER = R.id.view_type_widgets_search_header;
+ private final Launcher mLauncher;
private final WidgetsDiffReporter mDiffReporter;
private final SparseArray<ViewHolderBinder> mViewHolderBinders = new SparseArray<>();
private final WidgetsListTableViewHolderBinder mWidgetsListTableViewHolderBinder;
@@ -87,10 +96,12 @@
|| new PackageUserKey(entry.mPkgItem.packageName, entry.mPkgItem.user)
.equals(mWidgetsContentVisiblePackageUserKey);
@Nullable private Predicate<WidgetsListBaseEntry> mFilter = null;
+ @Nullable private RecyclerView mRecyclerView;
public WidgetsListAdapter(Context context, LayoutInflater layoutInflater,
WidgetPreviewLoader widgetPreviewLoader, IconCache iconCache,
OnClickListener iconClickListener, OnLongClickListener iconLongClickListener) {
+ mLauncher = Launcher.getLauncher(context);
mDiffReporter = new WidgetsDiffReporter(iconCache, this);
mWidgetsListTableViewHolderBinder = new WidgetsListTableViewHolderBinder(context,
layoutInflater, iconClickListener, iconLongClickListener,
@@ -106,6 +117,16 @@
layoutInflater, /*onHeaderClickListener=*/ this, /* listAdapter= */ this));
}
+ @Override
+ public void onAttachedToRecyclerView(@NonNull RecyclerView recyclerView) {
+ mRecyclerView = recyclerView;
+ }
+
+ @Override
+ public void onDetachedFromRecyclerView(@NonNull RecyclerView recyclerView) {
+ mRecyclerView = null;
+ }
+
public void setFilter(Predicate<WidgetsListBaseEntry> filter) {
mFilter = filter;
}
@@ -168,12 +189,10 @@
mAllEntries.forEach(entry -> {
if (entry instanceof WidgetsListHeaderEntry) {
((WidgetsListHeaderEntry) entry).setIsWidgetListShown(
- new PackageUserKey(entry.mPkgItem.packageName, entry.mPkgItem.user)
- .equals(mWidgetsContentVisiblePackageUserKey));
+ isHeaderForVisibleContent(entry));
} else if (entry instanceof WidgetsListSearchHeaderEntry) {
((WidgetsListSearchHeaderEntry) entry).setIsWidgetListShown(
- new PackageUserKey(entry.mPkgItem.packageName, entry.mPkgItem.user)
- .equals(mWidgetsContentVisiblePackageUserKey));
+ isHeaderForVisibleContent(entry));
}
});
List<WidgetsListBaseEntry> newVisibleEntries = mAllEntries.stream()
@@ -183,6 +202,13 @@
mDiffReporter.process(mVisibleEntries, newVisibleEntries, mRowComparator);
}
+ private boolean isHeaderForVisibleContent(WidgetsListBaseEntry entry) {
+ return (entry instanceof WidgetsListHeaderEntry
+ || entry instanceof WidgetsListSearchHeaderEntry)
+ && new PackageUserKey(entry.mPkgItem.packageName, entry.mPkgItem.user)
+ .equals(mWidgetsContentVisiblePackageUserKey);
+ }
+
/**
* Resets any expanded widget header.
*/
@@ -247,12 +273,58 @@
if (showWidgets) {
mWidgetsContentVisiblePackageUserKey = packageUserKey;
updateVisibleEntries();
+ // Scroll the layout manager to the header position to keep it anchored to the same
+ // position.
+ scrollToPositionAndMaintainOffset(getSelectedHeaderPosition());
+ mLauncher.getStatsLogManager().logger().log(LAUNCHER_WIDGETSTRAY_APP_EXPANDED);
} else if (packageUserKey.equals(mWidgetsContentVisiblePackageUserKey)) {
+ OptionalInt previouslySelectedPosition = getSelectedHeaderPosition();
+
mWidgetsContentVisiblePackageUserKey = null;
updateVisibleEntries();
+
+ // Scroll to the header that was just collapsed so it maintains its scroll offset.
+ scrollToPositionAndMaintainOffset(previouslySelectedPosition);
}
}
+ private OptionalInt getSelectedHeaderPosition() {
+ return IntStream.range(0, mVisibleEntries.size())
+ .filter(index -> isHeaderForVisibleContent(mVisibleEntries.get(index)))
+ .findFirst();
+ }
+
+ /**
+ * Scrolls to the selected header position. LinearLayoutManager scrolls the minimum distance
+ * necessary, so this will keep the selected header in place during clicks, without interrupting
+ * the animation.
+ */
+ private void scrollToPositionAndMaintainOffset(OptionalInt positionOptional) {
+ if (!positionOptional.isPresent() || mRecyclerView == null) return;
+ int position = positionOptional.getAsInt();
+
+ LinearLayoutManager layoutManager = (LinearLayoutManager) mRecyclerView.getLayoutManager();
+ if (layoutManager == null) return;
+
+ if (position == mVisibleEntries.size() - 2
+ && mVisibleEntries.get(mVisibleEntries.size() - 1)
+ instanceof WidgetsListContentEntry) {
+ // If the selected header is in the last position and its content is showing, then
+ // scroll to the final position so the last list of widgets will show.
+ layoutManager.scrollToPosition(mVisibleEntries.size() - 1);
+ return;
+ }
+
+ // Scroll to the header view's current offset, accounting for the recycler view's padding.
+ // If the header view couldn't be found, then it will appear at the top of the list.
+ View headerView = layoutManager.findViewByPosition(position);
+ int targetHeaderViewTop =
+ headerView == null ? 0 : layoutManager.getDecoratedTop(headerView);
+ layoutManager.scrollToPositionWithOffset(
+ position,
+ targetHeaderViewTop - mRecyclerView.getPaddingTop());
+ }
+
/**
* Sets the max horizontal spans that are allowed for grouping more than one widgets in a table
* row.
diff --git a/src/com/android/launcher3/widget/picker/WidgetsRecyclerView.java b/src/com/android/launcher3/widget/picker/WidgetsRecyclerView.java
index e30e245..090362b 100644
--- a/src/com/android/launcher3/widget/picker/WidgetsRecyclerView.java
+++ b/src/com/android/launcher3/widget/picker/WidgetsRecyclerView.java
@@ -154,8 +154,25 @@
return -1;
}
- View child = getChildAt(0);
- int rowIndex = getChildPosition(child);
+ int rowIndex = -1;
+ View child = null;
+
+ LayoutManager layoutManager = getLayoutManager();
+ if (layoutManager instanceof LinearLayoutManager) {
+ // Use the LayoutManager as the source of truth for visible positions. During
+ // animations, the view group child may not correspond to the visible views that appear
+ // at the top.
+ rowIndex = ((LinearLayoutManager) layoutManager).findFirstVisibleItemPosition();
+ child = layoutManager.findViewByPosition(rowIndex);
+ }
+
+ if (child == null) {
+ // If the layout manager returns null for any reason, which can happen before layout
+ // has occurred for the position, then look at the child of this view as a ViewGroup.
+ child = getChildAt(0);
+ rowIndex = getChildPosition(child);
+ }
+
for (int i = 0; i < getChildCount(); i++) {
View view = getChildAt(i);
if (view instanceof TableLayout) {
diff --git a/src/com/android/launcher3/widget/picker/search/WidgetsSearchBarController.java b/src/com/android/launcher3/widget/picker/search/WidgetsSearchBarController.java
index a8294c0..2751a52 100644
--- a/src/com/android/launcher3/widget/picker/search/WidgetsSearchBarController.java
+++ b/src/com/android/launcher3/widget/picker/search/WidgetsSearchBarController.java
@@ -101,10 +101,8 @@
@Override
public void clearSearchResult() {
- mSearchAlgorithm.cancel(/* interruptActiveRequests= */ true);
+ // Any existing search session will be cancelled by setting text to empty.
mInput.setText("");
- clearFocus();
- mSearchModeListener.exitSearchMode();
}
/**
diff --git a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java
index 4cf52f0..c99a81f 100644
--- a/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java
+++ b/tests/tapl/com/android/launcher3/tapl/LauncherInstrumentation.java
@@ -105,7 +105,7 @@
static final Pattern EVENT_TOUCH_DOWN_TIS = getTouchEventPatternTIS("ACTION_DOWN");
static final Pattern EVENT_TOUCH_UP_TIS = getTouchEventPatternTIS("ACTION_UP");
private final String mLauncherPackage;
- private final boolean mIsLauncher3;
+ private Boolean mIsLauncher3;
private long mTestStartTime = -1;
// Types for launcher containers that the user is interacting with. "Background" is a
@@ -206,7 +206,6 @@
public LauncherInstrumentation(Instrumentation instrumentation) {
mInstrumentation = instrumentation;
mDevice = UiDevice.getInstance(instrumentation);
- mIsLauncher3 = "com.android.launcher3".equals(getLauncherPackageName());
// Launcher should run in test harness so that custom accessibility protocol between
// Launcher and TAPL is enabled. In-process tests enable this protocol with a direct call
@@ -1422,6 +1421,9 @@
}
boolean isLauncher3() {
+ if (mIsLauncher3 == null) {
+ mIsLauncher3 = "com.android.launcher3".equals(getLauncherPackageName());
+ }
return mIsLauncher3;
}
diff --git a/tests/tapl/com/android/launcher3/tapl/SelectModeButtons.java b/tests/tapl/com/android/launcher3/tapl/SelectModeButtons.java
index 3507418..e1b73a4 100644
--- a/tests/tapl/com/android/launcher3/tapl/SelectModeButtons.java
+++ b/tests/tapl/com/android/launcher3/tapl/SelectModeButtons.java
@@ -48,21 +48,4 @@
}
}
}
-
- /**
- * Click feedback button.
- */
- @NonNull
- public Background clickFeedback() {
- try (LauncherInstrumentation.Closable e = mLauncher.eventsCheck();
- LauncherInstrumentation.Closable c =
- mLauncher.addContextLayer("want to click feedback button")) {
- UiObject2 feedback = mLauncher.waitForObjectInContainer(mSelectModeButtons, "feedback");
- mLauncher.clickLauncherObject(feedback);
- try (LauncherInstrumentation.Closable c1 = mLauncher.addContextLayer(
- "clicked feedback button")) {
- return new Background(mLauncher);
- }
- }
- }
}