From 714ec6b361b0f7ef3636d4010f5594fd362e4d02 Mon Sep 17 00:00:00 2001 From: Bill Yi Date: Sat, 3 Dec 2022 21:23:21 -0800 Subject: [PATCH 1/3] Import translations. DO NOT MERGE ANYWHERE Auto-generated-cl: translation import Change-Id: I49ff3598e8d47485f9ee93178279bbf9abd3d367 --- quickstep/res/values-am/strings.xml | 15 +++++---------- quickstep/res/values-ar/strings.xml | 15 +++++---------- quickstep/res/values-eu/strings.xml | 15 +++++---------- quickstep/res/values-gu/strings.xml | 15 +++++---------- quickstep/res/values-my/strings.xml | 15 +++++---------- quickstep/res/values-pt/strings.xml | 15 +++++---------- quickstep/res/values-sw/strings.xml | 15 +++++---------- quickstep/res/values-uk/strings.xml | 15 +++++---------- 8 files changed, 40 insertions(+), 80 deletions(-) diff --git a/quickstep/res/values-am/strings.xml b/quickstep/res/values-am/strings.xml index 0ac7ee54c1..2742bfcd0d 100644 --- a/quickstep/res/values-am/strings.xml +++ b/quickstep/res/values-am/strings.xml @@ -78,10 +78,8 @@ "ሁሉም ዝግጁ!" "ወደ መነሻ ለመሄድ በጣት ወደ ላይ ማንሸራተት" "ወደ መነሻ ማያ ገጽዎ ለመሄድ የመነሻ አዝራሩን መታ ያድርጉ" - - - - + "የእርስዎን %1$s መጠቀም ለመጀመር ዝግጁ ነዎት" + "መሣሪያ" "የስርዓት አሰሳ ቅንብሮች" "አጋራ" "ቅጽበታዊ ገጽ እይታ" @@ -94,8 +92,7 @@ "ይቅር" "ዝለል" "ማያ ገጹን አዙር" - - + "የተግባር አሞሌ ትምህርት" "የተግባር አሞሌ ትምህርት ይታያል" "የተግባር አሞሌ ትምህርት ተዘግቷል" "መተግበሪያዎችን ለመቀየር የተግባር አሞሌውን ይጠቀሙ" @@ -112,10 +109,8 @@ "የቅርብ ጊዜዎቹ" "ማሳወቂያዎች" "ፈጣን ቅንብሮች" - - - - + "የተግባር አሞሌ" + "የአሰሳ አሞሌ" "ወደ ላይ/ግራ ይውሰዱ" "ወደ ታች/ቀኝ ይውሰዱ" diff --git a/quickstep/res/values-ar/strings.xml b/quickstep/res/values-ar/strings.xml index fe7645300d..041fe2422b 100644 --- a/quickstep/res/values-ar/strings.xml +++ b/quickstep/res/values-ar/strings.xml @@ -78,10 +78,8 @@ "اكتملت عملية الإعداد" "مرِّر سريعًا للأعلى للانتقال إلى الشاشة الرئيسية." "انقر على زر الشاشة الرئيسية للانتقال إلى الشاشة الرئيسية." - - - - + "يمكنك الآن بدء استخدام \"%1$s\"." + "الجهاز" "إعدادات التنقّل داخل النظام" "مشاركة" "لقطة شاشة" @@ -94,8 +92,7 @@ "إلغاء" "التخطي" "تدوير الشاشة" - - + "التعريف بشريط التطبيقات" "ظهرت لوحة تعليم استخدام شريط المهام." "تم إغلاق لوحة تعليم استخدام شريط المهام." "يمكنك استخدام شريط المهام للتبديل بين التطبيقات." @@ -112,10 +109,8 @@ "الأحدث" "الإشعارات" "إعدادات سريعة" - - - - + "شريط التطبيقات" + "شريط التنقل" "الانتقال إلى يمين الشاشة أو أعلاها" "الانتقال إلى يسار الشاشة أو أسفلها" diff --git a/quickstep/res/values-eu/strings.xml b/quickstep/res/values-eu/strings.xml index 8fa85337e5..80286774d1 100644 --- a/quickstep/res/values-eu/strings.xml +++ b/quickstep/res/values-eu/strings.xml @@ -78,10 +78,8 @@ "Dena prest!" "Pasatu hatza gora hasierako pantailara joateko" "Hasierako pantailara joateko, sakatu Hasiera botoia" - - - - + "Prest zaude %1$s erabiltzen hasteko" + "gailua" "Sisteman nabigatzeko ezarpenak" "Partekatu" "Atera pantaila-argazki bat" @@ -94,8 +92,7 @@ "Utzi" "Saltatu" "Biratu pantaila" - - + "Zereginen barra erabiltzeko argibideak" "Agertu egin da zereginen barraren tutoriala" "Itxi egin da zereginen barraren tutoriala" "Erabili zereginen barra aplikazioz aldatzeko" @@ -112,10 +109,8 @@ "Azkenak" "Jakinarazpenak" "Ezarpen bizkorrak" - - - - + "Zereginen barra" + "Nabigazio-barra" "Eraman gora, ezkerretara" "Eraman behera, eskuinetara" diff --git a/quickstep/res/values-gu/strings.xml b/quickstep/res/values-gu/strings.xml index c52f39c9dd..0c0ec88234 100644 --- a/quickstep/res/values-gu/strings.xml +++ b/quickstep/res/values-gu/strings.xml @@ -78,10 +78,8 @@ "બધું સેટ થઈ ગયું!" "હોમપેજ પર જવા માટે ઉપરની તરફ સ્વાઇપ કરો" "તમારી હોમ સ્ક્રીન પર જવા માટે હોમ બટન ટૅપ કરો" - - - - + "તમે તમારા %1$sનો ઉપયોગ કરવાનું શરૂ કરવા માટે તૈયાર છો" + "ડિવાઇસ" "સિસ્ટમના નૅવિગેશન સેટિંગ" "શેર કરો" "સ્ક્રીનશૉટ" @@ -94,8 +92,7 @@ "રદ કરો" "છોડો" "સ્ક્રીન ફેરવો" - - + "ટાસ્કબાર વિશે શિક્ષણ" "ટાસ્કબારનું શિક્ષણ આપતી પૅનલ દેખાય છે" "ટાસ્કબારનું શિક્ષણ આપતી પૅનલ બંધ થઈ છે" "ઍપ સ્વિચ કરવા માટે, ટાસ્કબારનો ઉપયોગ કરો" @@ -112,10 +109,8 @@ "તાજેતરના" "નોટિફિકેશન" "ઝડપી સેટિંગ" - - - - + "ટાસ્કબાર" + "નૅવિગેશન બાર" "સૌથી ઉપર ડાબી બાજુએ ખસેડો" "સૌથી નીચે જમણી બાજુએ ખસેડો" diff --git a/quickstep/res/values-my/strings.xml b/quickstep/res/values-my/strings.xml index 825a263531..8fcb464490 100644 --- a/quickstep/res/values-my/strings.xml +++ b/quickstep/res/values-my/strings.xml @@ -78,10 +78,8 @@ "အားလုံး အဆင်သင့်ပါ။" "ပင်မစာမျက်နှာသို့သွားရန် အပေါ်သို့ ပွတ်ဆွဲပါ" "ပင်မစာမျက်နှာသို့ သွားရန် ပင်မခလုတ်ကို တို့ပါ" - - - - + "%1$s ကို စသုံးရန် အသင့်ဖြစ်ပါပြီ" + "စက်" "စနစ် လမ်းညွှန် ဆက်တင်များ" "မျှဝေရန်" "ဖန်သားပြင်ဓာတ်ပုံ" @@ -94,8 +92,7 @@ "မလုပ်တော့" "ကျော်ရန်" "ဖန်သားပြင်လှည့်ရန်" - - + "လုပ်ဆောင်စရာဘား ပညာပေး" "ပညာရေး လုပ်ဆောင်စရာဘား ပြထားသည်" "ပညာရေး လုပ်ဆောင်စရာဘား ပိတ်ထားသည်" "အက်ပ်များပြောင်းရန် လုပ်ဆောင်စရာဘားကို သုံးပါ" @@ -112,10 +109,8 @@ "လတ်တလောများ" "အကြောင်းကြားချက်" "အမြန်ဆက်တင်များ" - - - - + "လုပ်ဆောင်စရာဘား" + "လမ်းညွှန်ဘား" "အပေါ်/ဘယ်ဘက်သို့ ရွှေ့ရန်" "အောက်ခြေ/ညာဘက်သို့ ရွှေ့ရန်" diff --git a/quickstep/res/values-pt/strings.xml b/quickstep/res/values-pt/strings.xml index 4b2bc9c7fa..a0f8221c26 100644 --- a/quickstep/res/values-pt/strings.xml +++ b/quickstep/res/values-pt/strings.xml @@ -78,10 +78,8 @@ "Tudo pronto!" "Deslize para cima para acessar a tela inicial" "Toque no botão home para ir para a tela inicial" - - - - + "Você já pode começar a usar seu %1$s" + "dispositivo" "Configurações de navegação do sistema" "Compartilhar" "Capturar tela" @@ -94,8 +92,7 @@ "Cancelar" "Pular" "Girar a tela" - - + "Informações sobre a barra de tarefas" "As dicas sobre a barra de tarefas foram abertas" "As dicas sobre a barra de tarefas foram fechadas" "Use a barra de tarefas para alternar entre apps" @@ -112,10 +109,8 @@ "Recentes" "Notificações" "Config. rápidas" - - - - + "Barra de tarefas" + "Barra de navegação" "Mover para cima/para a esquerda" "Mover para baixo/para a direita" diff --git a/quickstep/res/values-sw/strings.xml b/quickstep/res/values-sw/strings.xml index 09263ea9c9..8283a04995 100644 --- a/quickstep/res/values-sw/strings.xml +++ b/quickstep/res/values-sw/strings.xml @@ -78,10 +78,8 @@ "Tayari!" "Telezesha kidole juu ili uende kwenye skrini ya kwanza" "Gusa kitufe cha ukurasa wa mwanzo ili uende kwenye skrini ya kwanza" - - - - + "Uko tayari kuanza kutumia %1$s yako" + "kifaa" "Mipangilio ya usogezaji kwenye mfumo" "Shiriki" "Picha ya skrini" @@ -94,8 +92,7 @@ "Ghairi" "Ruka" "Zungusha skrini" - - + "Elimu ya Upauzana" "Paneli ya elimu kwenye upau wa shughuli inaonyeshwa" "Paneli ya elimu kwenye upau wa shughuli imefungwa" "Tumia upau wa shughuli kubadilisha programu" @@ -112,10 +109,8 @@ "Vilivyotumika majuzi" "Arifa" "Mipangilio ya Haraka" - - - - + "Upauzana" + "Sehemu ya viungo muhimu" "Sogeza juu/kushoto" "Sogeza chini/kulia" diff --git a/quickstep/res/values-uk/strings.xml b/quickstep/res/values-uk/strings.xml index 76422a4698..d85ccca08a 100644 --- a/quickstep/res/values-uk/strings.xml +++ b/quickstep/res/values-uk/strings.xml @@ -78,10 +78,8 @@ "Готово." "Щоб перейти на головний екран, проведіть пальцем угору" "Натисніть кнопку головного екрана, щоб відкрити його" - - - - + "Тепер ви можете користуватися цим пристроєм: %1$s" + "пристрій" "Системні налаштування навігації" "Поділитися" "Знімок екрана" @@ -94,8 +92,7 @@ "Скасувати" "Пропустити" "Обернути екран" - - + "Панель завдань Education" "Панель завдань Education відкрито" "Панель завдань Education закрито" "Переходьте між додатками за допомогою панелі завдань" @@ -112,10 +109,8 @@ "Нещодавні" "Сповіщення" "Швидкі налаштув." - - - - + "Панель завдань" + "Панель навігації" "Перемістити вгору або вліво" "Перемістити вниз або вправо" From 5356ff955c5acbc7640474142013b7ec0b7fdc17 Mon Sep 17 00:00:00 2001 From: Sebastian Franco Date: Mon, 5 Dec 2022 16:16:45 -0800 Subject: [PATCH 2/3] Creating a new alarm when drag X,Y change If the user is changing the X and Y of the reorder, wich requires the user to move at least one Workspace cell from the previous position, then it doesn't make sense to wait for the previous alarm to finish to start a new reorder. Also, I added a new test to run on foldable devices. Fix: 259995663 Fix: 259295374 Test: atest ReorderWidgets (it mostly fails on postsubmit) Test: modify ReorderWidgets.fullReorder to run 20 times and it should work, before the chagne it would fail. Change-Id: Ic6b436ea1088f8092c849e9791862947e9035c9f --- src/com/android/launcher3/Workspace.java | 2 +- .../launcher3/celllayout/ReorderWidgets.java | 13 ++++------- .../celllayout/testcases/FullReorderCase.java | 23 ++++++++++++++++++- 3 files changed, 27 insertions(+), 11 deletions(-) diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index fd670c1707..483309d1cf 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -2392,10 +2392,10 @@ public class Workspace extends PagedView mDragTargetLayout.visualizeDropLocation(mTargetCell[0], mTargetCell[1], item.spanX, item.spanY, d); } else if ((mDragMode == DRAG_MODE_NONE || mDragMode == DRAG_MODE_REORDER) - && !mReorderAlarm.alarmPending() && (mLastReorderX != reorderX || mLastReorderY != reorderY) && targetCellDistance < mDragTargetLayout.getReorderRadius(mTargetCell, item.spanX, item.spanY)) { + mReorderAlarm.cancelAlarm(); mLastReorderX = reorderX; mLastReorderY = reorderY; mDragTargetLayout.performReorder((int) mDragViewVisualCenter[0], diff --git a/tests/src/com/android/launcher3/celllayout/ReorderWidgets.java b/tests/src/com/android/launcher3/celllayout/ReorderWidgets.java index d3b6d379a4..a8753ed135 100644 --- a/tests/src/com/android/launcher3/celllayout/ReorderWidgets.java +++ b/tests/src/com/android/launcher3/celllayout/ReorderWidgets.java @@ -41,7 +41,6 @@ import com.android.launcher3.widget.LauncherAppWidgetHostView; import org.junit.Assume; import org.junit.Before; -import org.junit.Ignore; import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; @@ -145,28 +144,24 @@ public class ReorderWidgets extends AbstractLauncherUiTest { runTestCase(testCaseMap.get(iconGridDimensions)); } - @Ignore //b/261178121 @Test - public void simpleReorder() throws ExecutionException, InterruptedException { + public void simpleReorder() throws ExecutionException, InterruptedException { runTestCaseMap(SimpleReorderCase.TEST_BY_GRID_SIZE, SimpleReorderCase.class.getSimpleName()); } - @Ignore //b/261178121 @Test - public void pushTest() throws ExecutionException, InterruptedException { + public void pushTest() throws ExecutionException, InterruptedException { runTestCaseMap(PushReorderCase.TEST_BY_GRID_SIZE, PushReorderCase.class.getSimpleName()); } - @Ignore //b/261178121 @Test - public void fullReorder() throws ExecutionException, InterruptedException { + public void fullReorder() throws ExecutionException, InterruptedException { runTestCaseMap(FullReorderCase.TEST_BY_GRID_SIZE, FullReorderCase.class.getSimpleName()); } - @Ignore //b/261178121 @Test - public void moveOutReorder() throws ExecutionException, InterruptedException { + public void moveOutReorder() throws ExecutionException, InterruptedException { runTestCaseMap(MoveOutReorderCase.TEST_BY_GRID_SIZE, MoveOutReorderCase.class.getSimpleName()); } diff --git a/tests/src/com/android/launcher3/celllayout/testcases/FullReorderCase.java b/tests/src/com/android/launcher3/celllayout/testcases/FullReorderCase.java index a98882cc7f..d68d2ede61 100644 --- a/tests/src/com/android/launcher3/celllayout/testcases/FullReorderCase.java +++ b/tests/src/com/android/launcher3/celllayout/testcases/FullReorderCase.java @@ -81,8 +81,29 @@ public class FullReorderCase { MOVE_TO_4x4, END_BOARD_STR_4x4); + /** 4x4 Test + **/ + private static final String START_BOARD_STR_4x5 = "" + + "xxxx\n" + + "22mm\n" + + "iimm\n" + + "ii11\n" + + "ii11"; + private static final Point MOVE_TO_4x5 = new Point(0, 3); + private static final String END_BOARD_STR_4x5 = "" + + "xxxx\n" + + "22ii\n" + + "mmii\n" + + "mm11\n" + + "ii11"; + + private static final ReorderTestCase TEST_CASE_4x5 = new ReorderTestCase(START_BOARD_STR_4x5, + MOVE_TO_4x5, + END_BOARD_STR_4x5); + public static final Map TEST_BY_GRID_SIZE = Map.of(new Point(5, 5), TEST_CASE_5x5, new Point(6, 5), TEST_CASE_6x5, - new Point(4, 4), TEST_CASE_4x4); + new Point(4, 4), TEST_CASE_4x4, + new Point(4, 5), TEST_CASE_4x5); } From 7286c5be9818a5893a692042ebda664583006684 Mon Sep 17 00:00:00 2001 From: Tony Wickham Date: Fri, 2 Dec 2022 23:52:40 +0000 Subject: [PATCH 3/3] Add feature flag to force taskbar to be persistent. This will allow us to test taskbar pinning before the entrypoint for such a setting is finalized. Test: manual, TODO: will need to update TaplTestsTaskbar to account for this mode Flag: FORCE_PERSISTENT_TASKBAR [off] Bug: 258604917 Change-Id: I4535978563ffbe9a6cc6ece7720cdb75e787ff44 --- .../launcher3/taskbar/TaskbarStashController.java | 9 +++++++-- src/com/android/launcher3/config/FeatureFlags.java | 4 ++++ src/com/android/launcher3/util/DisplayController.java | 4 ++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java index a82e7be8b9..3d98f6edc6 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarStashController.java @@ -19,6 +19,7 @@ import static android.view.HapticFeedbackConstants.LONG_PRESS; import static com.android.launcher3.anim.Interpolators.FINAL_FRAME; import static com.android.launcher3.anim.Interpolators.INSTANT; +import static com.android.launcher3.config.FeatureFlags.FORCE_PERSISTENT_TASKBAR; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASKBAR_LONGPRESS_HIDE; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_TASKBAR_LONGPRESS_SHOW; import static com.android.launcher3.taskbar.Utilities.appendFlag; @@ -241,8 +242,9 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba // it to work properly for tests that recreate taskbar. This check is here just to ensure // that taskbar unstashes when going to 3 button mode (supportsVisualStashing() false). boolean isManuallyStashedInApp = supportsVisualStashing() - && mPrefs.getBoolean(SHARED_PREFS_STASHED_KEY, DEFAULT_STASHED_PREF) - && !isTransientTaskbar; + && !isTransientTaskbar + && !FORCE_PERSISTENT_TASKBAR.get() + && mPrefs.getBoolean(SHARED_PREFS_STASHED_KEY, DEFAULT_STASHED_PREF); boolean isInSetup = !mActivity.isUserSetupComplete() || setupUIVisible; updateStateForFlag(FLAG_STASHED_IN_APP_MANUAL, isManuallyStashedInApp); updateStateForFlag(FLAG_STASHED_IN_APP_AUTO, isTransientTaskbar); @@ -270,6 +272,9 @@ public class TaskbarStashController implements TaskbarControllers.LoggableTaskba * Returns whether the user can manually stash the taskbar based on the current device state. */ protected boolean supportsManualStashing() { + if (FORCE_PERSISTENT_TASKBAR.get()) { + return false; + } return supportsVisualStashing() && isInApp() && (!Utilities.IS_RUNNING_IN_TEST_HARNESS || mEnableManualStashingDuringTests) diff --git a/src/com/android/launcher3/config/FeatureFlags.java b/src/com/android/launcher3/config/FeatureFlags.java index 88654b735d..f9883e379c 100644 --- a/src/com/android/launcher3/config/FeatureFlags.java +++ b/src/com/android/launcher3/config/FeatureFlags.java @@ -338,6 +338,10 @@ public final class FeatureFlags { "ENABLE_TASKBAR_REVISED_THRESHOLDS", false, "Uses revised thresholds for transient taskbar."); + public static final BooleanFlag FORCE_PERSISTENT_TASKBAR = getDebugFlag( + "FORCE_PERSISTENT_TASKBAR", false, "Forces taskbar to be persistent, even in gesture" + + " nav mode and when transient taskbar is enabled."); + public static final BooleanFlag ENABLE_TRANSIENT_TASKBAR = getDebugFlag( "ENABLE_TRANSIENT_TASKBAR", false, "Enables transient taskbar."); diff --git a/src/com/android/launcher3/util/DisplayController.java b/src/com/android/launcher3/util/DisplayController.java index 226f2d93c7..9ca0dd195c 100644 --- a/src/com/android/launcher3/util/DisplayController.java +++ b/src/com/android/launcher3/util/DisplayController.java @@ -21,6 +21,7 @@ import static android.view.WindowManager.LayoutParams.TYPE_APPLICATION; import static com.android.launcher3.Utilities.dpiFromPx; import static com.android.launcher3.config.FeatureFlags.ENABLE_TRANSIENT_TASKBAR; +import static com.android.launcher3.config.FeatureFlags.FORCE_PERSISTENT_TASKBAR; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; import static com.android.launcher3.util.PackageManagerHelper.getPackageFilter; import static com.android.launcher3.util.window.WindowManagerProxy.MIN_TABLET_WIDTH; @@ -130,6 +131,9 @@ public class DisplayController implements ComponentCallbacks, SafeCloseable { * Returns whether taskbar is transient. */ public static boolean isTransientTaskbar(Context context) { + if (FORCE_PERSISTENT_TASKBAR.get()) { + return false; + } return getNavigationMode(context) == NavigationMode.NO_BUTTON && (Utilities.IS_RUNNING_IN_TEST_HARNESS ? sTransientTaskbarStatusForTests