diff --git a/go/quickstep/res/values-b+sr+Latn/strings.xml b/go/quickstep/res/values-b+sr+Latn/strings.xml
index 749fc0ece3..263f0118b0 100644
--- a/go/quickstep/res/values-b+sr+Latn/strings.xml
+++ b/go/quickstep/res/values-b+sr+Latn/strings.xml
@@ -1,20 +1,20 @@
- "Дели апликацију"
- "Пусти"
- "Преведи"
- "Објектив"
- "ВАЖИ"
- "ОТКАЖИ"
- "ПОДЕШАВАЊА"
- "Преводите или слушајте текст на екрану"
- "Информације попут текста на екрану, веб-адреса и снимака екрана могу да се деле са Google-ом.\n\nДа бисте променили информације које делите, идите у ""Подешавања > Апликације > Подразумеване апликације > Апликација дигиталног помоћника""."
- "Одаберите помоћника да бисте користили ову функцију"
- "Да бисте чули текст са екрана или га превели, одаберите апликацију дигиталног помоћника у Подешавањима"
- "Промените помоћника да бисте користили ову функцију"
- "Да бисте чули текст са екрана или га превели, промените апликацију дигиталног помоћника у Подешавањима"
- "Додирните овде да бисте чули текст са овог екрана"
- "Додирните овде да бисте превели текст са овог екрана"
- "Ова апликација не може да се дели"
+ "Deli aplikaciju"
+ "Pusti"
+ "Prevedi"
+ "Objektiv"
+ "VAŽI"
+ "OTKAŽI"
+ "PODEŠAVANJA"
+ "Prevodite ili slušajte tekst na ekranu"
+ "Informacije poput teksta na ekranu, veb-adresa i snimaka ekrana mogu da se dele sa Google-om.\n\nDa biste promenili informacije koje delite, idite u ""Podešavanja > Aplikacije > Podrazumevane aplikacije > Aplikacija digitalnog pomoćnika""."
+ "Odaberite pomoćnika da biste koristili ovu funkciju"
+ "Da biste čuli tekst sa ekrana ili ga preveli, odaberite aplikaciju digitalnog pomoćnika u Podešavanjima"
+ "Promenite pomoćnika da biste koristili ovu funkciju"
+ "Da biste čuli tekst sa ekrana ili ga preveli, promenite aplikaciju digitalnog pomoćnika u Podešavanjima"
+ "Dodirnite ovde da biste čuli tekst sa ovog ekrana"
+ "Dodirnite ovde da biste preveli tekst sa ovog ekrana"
+ "Ova aplikacija ne može da se deli"
diff --git a/quickstep/res/values-am/strings.xml b/quickstep/res/values-am/strings.xml
index 047e05f70b..df9fe66ec0 100644
--- a/quickstep/res/values-am/strings.xml
+++ b/quickstep/res/values-am/strings.xml
@@ -95,12 +95,9 @@
"የተግባር አሞሌ ትምህርት"
"የተግባር አሞሌ ትምህርት ይታያል"
"የተግባር አሞሌ ትምህርት ተዘግቷል"
-
-
-
-
-
-
+ "በአንድ ጊዜ 2 መተግበሪያዎችን ለመጠቀም ወደ ጎን ይጎትቱ"
+ "የተግባር አሞሌውን ለማሳየት አጭር ወደ ላይ ያንሸራትቱ"
+ "የተግባር አሞሌው የዕለት ተዕለት ተግባርዎ ላይ በመመስረት መተግበሪያዎችን ይጠቁማል"
"ቀጣይ"
"ተመለስ"
"ዝጋ"
diff --git a/quickstep/res/values-ar/strings.xml b/quickstep/res/values-ar/strings.xml
index 121e53509b..a6781ef379 100644
--- a/quickstep/res/values-ar/strings.xml
+++ b/quickstep/res/values-ar/strings.xml
@@ -95,12 +95,9 @@
"التعريف بشريط التطبيقات"
"ظهرت لوحة تعليم استخدام شريط المهام."
"تم إغلاق لوحة تعليم استخدام شريط المهام."
-
-
-
-
-
-
+ "اسحبه إلى جانب الشاشة لاستخدام تطبيقَين في آنٍ واحد."
+ "مرِّر سريعًا للأعلى تمريرة قصيرة لإظهار شريط التطبيقات."
+ "يقترح شريط المهام تطبيقات بناءً على روتينك."
"الشاشة التالية"
"رجوع"
"إغلاق"
diff --git a/quickstep/res/values-as/strings.xml b/quickstep/res/values-as/strings.xml
index 7747148638..6e43c19aaf 100644
--- a/quickstep/res/values-as/strings.xml
+++ b/quickstep/res/values-as/strings.xml
@@ -95,12 +95,9 @@
"টাস্কবাৰৰ শিক্ষা"
"টাস্কবাৰৰ শিক্ষাৰ পেনেলটো প্ৰদর্শিত হৈছে"
"টাস্কবাৰৰ শিক্ষাৰ পেনেলটো বন্ধ হৈছে"
-
-
-
-
-
-
+ "এবাৰতে দুটা এপ্ ব্যৱহাৰ কৰিবলৈ কাষলৈ টানি আনি এৰক"
+ "টাস্কবাৰ দেখুৱাবলৈ সামান্য পৰিমাণে ওপৰলৈ ছোৱাইপ কৰক"
+ "টাস্কবাৰে আপোনাৰ ৰুটিনৰ ভিত্তিত এপৰ পৰামৰ্শ দিয়ে"
"পৰৱৰ্তী"
"উভতি যাওক"
"বন্ধ কৰক"
diff --git a/quickstep/res/values-b+sr+Latn/strings.xml b/quickstep/res/values-b+sr+Latn/strings.xml
index 6e819abdf8..2699c3e4d7 100644
--- a/quickstep/res/values-b+sr+Latn/strings.xml
+++ b/quickstep/res/values-b+sr+Latn/strings.xml
@@ -19,98 +19,98 @@
- "Закачи"
- "Слободни облик"
- "Нема недавних ставки"
- "Подешавања коришћења апликације"
- "Обриши све"
- "Недавне апликације"
- "Задатак је затворен"
+ "Zakači"
+ "Slobodni oblik"
+ "Nema nedavnih stavki"
+ "Podešavanja korišćenja aplikacije"
+ "Obriši sve"
+ "Nedavne aplikacije"
+ "Zadatak je zatvoren"
"%1$s, %2$s"
- "< 1 мин"
- "Још %1$s данас"
- "Предлози апликација"
- "Предвиђене апликације"
- "Добијајте предлоге апликација у доњем реду почетног екрана"
- "Добијајте предлоге апликација у реду са омиљеним ставкама на почетном екрану"
- "Лако приступајте апликацијама које најчешће користите директно са почетног екрана. Предлози се мењају на основу употребе. Апликације из доњег реда се премештају нагоре на почетни екран."
- "Лако приступајте апликацијама које најчешће користите директно са почетног екрана. Предлози се мењају на основу ваших рутина. Апликације из реда са омиљеним ставкама се премештају на почетни екран."
- "Приказуј предлоге апликација"
- "Не, хвала"
- "Подешавања"
- "Овде се приказују најчешће коришћене апликације и мењају се у зависности од употребе"
- "Превуците апликације из доњег реда да бисте добили предлоге"
- "Предлози апликација се додају на празно место"
- "Предлози апликација су омогућени"
- "Предлози апликација су онемогућени"
- "Предвиђамо апликацију: %1$s"
- "Обавезно превуците од саме десне или леве ивице."
- "Обавезно превуците од десне или леве ивице до средине екрана и отпустите."
- "Научили сте како да превлачите здесна да бисте се вратили уназад. Сада научите да замените апликације."
- "Довршили сте покрет за повратак."
- "Никако не превлачите превише близу дна екрана."
- "Осетљивост пок. за назад можете да промените у Подешавањима"
- "Превуците да бисте се вратили уназад"
- "Да бисте се вратили на последњи екран, превуците од леве или десне ивице до средине екрана."
- "Да бисте се вратили на последњи екран, превуците помоћу два прста од леве или десне ивице до средине екрана."
- "Обавезно превуците нагоре од доње ивице екрана."
- "Никако не стајте пре отпуштања."
- "Обавезно превуците право нагоре."
- "Довршили сте покрет за повратак на почетну страницу. Сада сазнајте како да се вратите."
- "Довршили сте покрет за повратак на почетну страницу."
- "Превуците да бисте отишли на почетну страницу"
- "Превуците нагоре од дна екрана. Овај покрет вас увек води на почетни екран."
- "Превуците помоћу два прста нагоре од дна екрана. Овим покретом увек отварате почетни екран."
- "Обавезно превуците нагоре од доње ивице екрана."
- "Пробајте да држите прозор дуже пре отпуштања."
- "Обавезно превуците право нагоре, па застаните."
- "Научили сте како да користите покрете. Да бисте искључили покрете, идите на подешавања."
- "Довршили сте покрет за промену апликација."
- "Превуците да бисте заменили апликације"
- "За прелазак са једне апликације на другу превуците нагоре од дна екрана, задржите, па пустите."
- "За прелазак између апликација превуците помоћу два прста нагоре од дна екрана, задржите, па пустите."
- "То је то"
- "Готово"
- "Подешавања"
- "Пробајте поново"
- "Свака част!"
- "Водич %1$d/%2$d"
- "Готово!"
- "Превуците нагоре да бисте отворили почетни екран"
- "Додирните дугме Почетак да бисти ишли на почетни екран"
- "Спремни сте да почнете да користите %1$s"
- "уређај"
- "Подешавања кретања кроз систем"
- "Дели"
- "Снимак екрана"
- "Подели"
- "Додирните другу апликацију за подељени екран"
- "Одаберите другу апликацију за подељени екран"
- "Апликација или организација не дозвољавају ову радњу"
- "Желите да прескочите водич за кретање?"
- "Можете да пронађете ово касније у апликацији %1$s"
- "Откажи"
- "Прескочи"
- "Ротирајте екран"
- "Упутства на траци задатака"
- "Едукативно окно из траке задатака се појавило"
- "Едукативно окно из траке задатака је затворено"
- "Превуците на страну да бисте користили 2 апликације одједном"
- "Накратко превуците нагоре да бисте приказали траку задатака"
- "Трака задатака предлаже апликације на основу рутине"
- "Даље"
- "Назад"
- "Затвори"
- "Готово"
- "Почетна"
- "Приступачност"
- "Назад"
- "IME пребацивач"
- "Недавно"
- "Обавештења"
- "Брза подешавања"
- "Трака задатака"
- "Трака за навигацију"
- "Премести горе лево"
- "Премести доле десно"
+ "< 1 min"
+ "Još %1$s danas"
+ "Predlozi aplikacija"
+ "Predviđene aplikacije"
+ "Dobijajte predloge aplikacija u donjem redu početnog ekrana"
+ "Dobijajte predloge aplikacija u redu sa omiljenim stavkama na početnom ekranu"
+ "Lako pristupajte aplikacijama koje najčešće koristite direktno sa početnog ekrana. Predlozi se menjaju na osnovu upotrebe. Aplikacije iz donjeg reda se premeštaju nagore na početni ekran."
+ "Lako pristupajte aplikacijama koje najčešće koristite direktno sa početnog ekrana. Predlozi se menjaju na osnovu vaših rutina. Aplikacije iz reda sa omiljenim stavkama se premeštaju na početni ekran."
+ "Prikazuj predloge aplikacija"
+ "Ne, hvala"
+ "Podešavanja"
+ "Ovde se prikazuju najčešće korišćene aplikacije i menjaju se u zavisnosti od upotrebe"
+ "Prevucite aplikacije iz donjeg reda da biste dobili predloge"
+ "Predlozi aplikacija se dodaju na prazno mesto"
+ "Predlozi aplikacija su omogućeni"
+ "Predlozi aplikacija su onemogućeni"
+ "Predviđamo aplikaciju: %1$s"
+ "Obavezno prevucite od same desne ili leve ivice."
+ "Obavezno prevucite od desne ili leve ivice do sredine ekrana i otpustite."
+ "Naučili ste kako da prevlačite zdesna da biste se vratili unazad. Sada naučite da zamenite aplikacije."
+ "Dovršili ste pokret za povratak."
+ "Nikako ne prevlačite previše blizu dna ekrana."
+ "Osetljivost pok. za nazad možete da promenite u Podešavanjima"
+ "Prevucite da biste se vratili unazad"
+ "Da biste se vratili na poslednji ekran, prevucite od leve ili desne ivice do sredine ekrana."
+ "Da biste se vratili na poslednji ekran, prevucite pomoću dva prsta od leve ili desne ivice do sredine ekrana."
+ "Obavezno prevucite nagore od donje ivice ekrana."
+ "Nikako ne stajte pre otpuštanja."
+ "Obavezno prevucite pravo nagore."
+ "Dovršili ste pokret za povratak na početnu stranicu. Sada saznajte kako da se vratite."
+ "Dovršili ste pokret za povratak na početnu stranicu."
+ "Prevucite da biste otišli na početnu stranicu"
+ "Prevucite nagore od dna ekrana. Ovaj pokret vas uvek vodi na početni ekran."
+ "Prevucite pomoću dva prsta nagore od dna ekrana. Ovim pokretom uvek otvarate početni ekran."
+ "Obavezno prevucite nagore od donje ivice ekrana."
+ "Probajte da držite prozor duže pre otpuštanja."
+ "Obavezno prevucite pravo nagore, pa zastanite."
+ "Naučili ste kako da koristite pokrete. Da biste isključili pokrete, idite na podešavanja."
+ "Dovršili ste pokret za promenu aplikacija."
+ "Prevucite da biste zamenili aplikacije"
+ "Za prelazak sa jedne aplikacije na drugu prevucite nagore od dna ekrana, zadržite, pa pustite."
+ "Za prelazak između aplikacija prevucite pomoću dva prsta nagore od dna ekrana, zadržite, pa pustite."
+ "To je to"
+ "Gotovo"
+ "Podešavanja"
+ "Probajte ponovo"
+ "Svaka čast!"
+ "Vodič %1$d/%2$d"
+ "Gotovo!"
+ "Prevucite nagore da biste otvorili početni ekran"
+ "Dodirnite dugme Početak da bisti išli na početni ekran"
+ "Spremni ste da počnete da koristite %1$s"
+ "uređaj"
+ "Podešavanja kretanja kroz sistem"
+ "Deli"
+ "Snimak ekrana"
+ "Podeli"
+ "Dodirnite drugu aplikaciju za podeljeni ekran"
+ "Odaberite drugu aplikaciju za podeljeni ekran"
+ "Aplikacija ili organizacija ne dozvoljavaju ovu radnju"
+ "Želite da preskočite vodič za kretanje?"
+ "Možete da pronađete ovo kasnije u aplikaciji %1$s"
+ "Otkaži"
+ "Preskoči"
+ "Rotirajte ekran"
+ "Uputstva na traci zadataka"
+ "Edukativno okno iz trake zadataka se pojavilo"
+ "Edukativno okno iz trake zadataka je zatvoreno"
+ "Prevucite na stranu da biste koristili 2 aplikacije odjednom"
+ "Nakratko prevucite nagore da biste prikazali traku zadataka"
+ "Traka zadataka predlaže aplikacije na osnovu rutine"
+ "Dalje"
+ "Nazad"
+ "Zatvori"
+ "Gotovo"
+ "Početna"
+ "Pristupačnost"
+ "Nazad"
+ "IME prebacivač"
+ "Nedavno"
+ "Obaveštenja"
+ "Brza podešavanja"
+ "Traka zadataka"
+ "Traka za navigaciju"
+ "Premesti gore levo"
+ "Premesti dole desno"
diff --git a/quickstep/res/values-be/strings.xml b/quickstep/res/values-be/strings.xml
index 8f97f0a24b..0f38c75f3e 100644
--- a/quickstep/res/values-be/strings.xml
+++ b/quickstep/res/values-be/strings.xml
@@ -95,12 +95,9 @@
"Інфармацыя пра панэль задач"
"З\'явілася панэль навучання на панэлі задач"
"Панэль навучання на панэлі задач закрыта"
-
-
-
-
-
-
+ "Перацягніце ўбок, каб адначасова скарыстаць 2 праграмы"
+ "Хутка правядзіце пальцам уверх, каб убачыць панэль задач"
+ "На панэлі задач праграмы паказваюцца з улікам вашых дзеянняў"
"Далей"
"Назад"
"Закрыць"
diff --git a/quickstep/res/values-bs/strings.xml b/quickstep/res/values-bs/strings.xml
index 8b1640d4ff..f0118a72c1 100644
--- a/quickstep/res/values-bs/strings.xml
+++ b/quickstep/res/values-bs/strings.xml
@@ -95,9 +95,9 @@
"Edukacija o traci zadataka"
"Edukacija o programskoj traci je prikazana"
"Edukacija o programskoj traci je zatvorena"
- "Povucite u stranu za istovremeno korištenje 2 aplikacije"
- "Kratki pokret prema gore za prikaz trake sa zadacima"
- "Traka sa zadacima predlaže aplikacije na temelju vaše rutine"
+ "Prevucite u stranu da istovremeno koristite 2 aplikacije"
+ "Nakratko prevucite nagore da prikažete traku zadataka"
+ "Traka zadataka predlaže aplikacije na osnovu vaše rutine"
"Naprijed"
"Nazad"
"Zatvori"
diff --git a/quickstep/res/values-cs/strings.xml b/quickstep/res/values-cs/strings.xml
index 1eeadba9d1..868393d343 100644
--- a/quickstep/res/values-cs/strings.xml
+++ b/quickstep/res/values-cs/strings.xml
@@ -95,12 +95,9 @@
"Informace o panelu aplikací"
"Zobrazila se výuka k hlavnímu panelu"
"Výuka k hlavnímu panelu byla zavřena"
-
-
-
-
-
-
+ "Po přetažení na stranu lze používat dvě aplikace současně"
+ "Krátkým přejetím nahoru zobrazíte panel aplikací"
+ "Panel aplikací navrhuje aplikace na základě vašeho používání"
"Další"
"Zpět"
"Zavřít"
diff --git a/quickstep/res/values-de/strings.xml b/quickstep/res/values-de/strings.xml
index 2e9d76e5a8..86ea26461f 100644
--- a/quickstep/res/values-de/strings.xml
+++ b/quickstep/res/values-de/strings.xml
@@ -95,12 +95,9 @@
"Informationen zur Taskleiste"
"Anleitung für Taskleiste eingeblendet"
"Anleitung für Taskleiste geschlossen"
-
-
-
-
-
-
+ "Zur Seite ziehen, um zwei Apps gleichzeitig zu verwenden"
+ "Kurz nach oben wischen, um die Taskleiste anzuzeigen"
+ "Taskleiste empfiehlt Apps basierend auf deinen Gewohnheiten"
"Weiter"
"Zurück"
"Schließen"
diff --git a/quickstep/res/values-eu/strings.xml b/quickstep/res/values-eu/strings.xml
index 7eda4448c7..b302888a32 100644
--- a/quickstep/res/values-eu/strings.xml
+++ b/quickstep/res/values-eu/strings.xml
@@ -95,12 +95,9 @@
"Zereginen barra erabiltzeko argibideak"
"Agertu egin da zereginen barraren tutoriala"
"Itxi egin da zereginen barraren tutoriala"
-
-
-
-
-
-
+ "Bi aplikazio batera erabiltzeko, arrastatu hatza albo batera"
+ "Ataza-barra ikusteko, pasatu hatza bizkor gora"
+ "Ataza-barran erabileran oinarritutako aplikazioak iradokitzen dira"
"Hurrengoa"
"Atzera"
"Itxi"
diff --git a/quickstep/res/values-fa/strings.xml b/quickstep/res/values-fa/strings.xml
index 6e13752856..c922f8063e 100644
--- a/quickstep/res/values-fa/strings.xml
+++ b/quickstep/res/values-fa/strings.xml
@@ -95,12 +95,9 @@
"آموزش نوار وظیفه"
"پانل آموزشی نوار وظیفه نمایان شد"
"پانل آموزشی نوار وظیفه بسته شد"
-
-
-
-
-
-
+ "برای استفاده همزمان از دو برنامه، آن را به کنار بکشید"
+ "برای نمایش نوار وظیفه، کمی به بالا بکشید"
+ "نوار وظیفه برنامهها را براساس روال شما پیشنهاد میدهد"
"بعدی"
"برگشت"
"بستن"
diff --git a/quickstep/res/values-fi/strings.xml b/quickstep/res/values-fi/strings.xml
index 55db0e8c53..a07fdea641 100644
--- a/quickstep/res/values-fi/strings.xml
+++ b/quickstep/res/values-fi/strings.xml
@@ -95,12 +95,9 @@
"Tehtäväpalkin ohje"
"Tehtäväpalkin ohje näkyvissä"
"Tehtäväpalkin ohje suljettu"
-
-
-
-
-
-
+ "Vetämällä sivuun voit käyttää kahta sovellusta samaan aikaan"
+ "Näytä tehtäväpalkki pyyhkäisemällä ylös lyhyesti"
+ "Tehtäväpalkki ehdottaa sovelluksia ohjelmasi perusteella"
"Seuraava"
"Takaisin"
"Sulje"
diff --git a/quickstep/res/values-fr/strings.xml b/quickstep/res/values-fr/strings.xml
index 972e8e7485..a20fbc4992 100644
--- a/quickstep/res/values-fr/strings.xml
+++ b/quickstep/res/values-fr/strings.xml
@@ -95,12 +95,9 @@
"Fonctionnement de la barre des tâches"
"Infos sur la barre des tâches affichées"
"Infos sur la barre des tâches fermées"
-
-
-
-
-
-
+ "Faites glisser sur le côté pour utiliser 2 applis à la fois"
+ "Balayez rapidement vers haut pour afficher barre des tâches"
+ "La barre des tâches suggère des applis selon vos habitudes"
"Suivant"
"Retour"
"Fermer"
diff --git a/quickstep/res/values-gl/strings.xml b/quickstep/res/values-gl/strings.xml
index 38b09d56a7..528dd0ad42 100644
--- a/quickstep/res/values-gl/strings.xml
+++ b/quickstep/res/values-gl/strings.xml
@@ -95,12 +95,9 @@
"Información sobre a función Barra de tarefas"
"Panel de información de barra de tarefas aberto"
"Panel de información de barra de tarefas pechado"
-
-
-
-
-
-
+ "Para usar 2 aplicacións á vez, arrastra cara ao lado"
+ "Pasa o dedo un pouco cara arriba para ver a barra de tarefas"
+ "Na barra de tarefas suxírense apps segundo a túa rutina"
"Seguinte"
"Atrás"
"Pechar"
diff --git a/quickstep/res/values-hi/strings.xml b/quickstep/res/values-hi/strings.xml
index 1e79961e4c..c9f3930eff 100644
--- a/quickstep/res/values-hi/strings.xml
+++ b/quickstep/res/values-hi/strings.xml
@@ -95,12 +95,9 @@
"टास्कबार का ट्यूटोरियल"
"टास्कबार ट्यूटोरियल दिखाया गया"
"टास्कबार ट्यूटोरियल बंद किया गया"
-
-
-
-
-
-
+ "एक साथ दो ऐप इस्तेमाल करने के लिए, उन्हें किनारे की ओर खींचें और छोड़ें"
+ "टास्कबार दिखाने के लिए, ऊपर की ओर थोड़ा स्वाइप करें"
+ "टास्कबार, डिवाइस के इस्तेमाल के आधार पर ऐप के सुझाव देता है"
"आगे बढ़ें"
"वापस जाएं"
"बंद करें"
diff --git a/quickstep/res/values-it/strings.xml b/quickstep/res/values-it/strings.xml
index 54a76aef03..9a5cc9845a 100644
--- a/quickstep/res/values-it/strings.xml
+++ b/quickstep/res/values-it/strings.xml
@@ -95,12 +95,9 @@
"Informazioni sulla barra delle applicazioni"
"Riquadro Formazione barra delle applicazioni visualizzato"
"Riquadro Formazione barra delle applicazioni chiuso"
-
-
-
-
-
-
+ "Trascina di lato per usare 2 app contemporaneamente"
+ "Scorri verso l\'alto per mostrare la barra delle applicazioni"
+ "Barra delle applicazioni suggerisce app in base alla routine"
"Avanti"
"Indietro"
"Chiudi"
diff --git a/quickstep/res/values-iw/strings.xml b/quickstep/res/values-iw/strings.xml
index 6e01d06bec..8722476002 100644
--- a/quickstep/res/values-iw/strings.xml
+++ b/quickstep/res/values-iw/strings.xml
@@ -95,12 +95,9 @@
"הסבר על סרגל האפליקציות"
"חלונית ההסברים על שורת המשימות מופיעה"
"חלונית ההסברים על שורת המשימות נסגרה"
-
-
-
-
-
-
+ "כדי להשתמש בשתי אפליקציות בו-זמנית, צריך לגרור לצד"
+ "צריך להחליק מעט כדי להציג את סרגל האפליקציות"
+ "האפליקציות מוצעות בסרגל האפליקציות על סמך השימוש השגרתי שלך"
"הבא"
"חזרה"
"סגירה"
diff --git a/quickstep/res/values-kk/strings.xml b/quickstep/res/values-kk/strings.xml
index 593c6fc939..d0f6a9a9b0 100644
--- a/quickstep/res/values-kk/strings.xml
+++ b/quickstep/res/values-kk/strings.xml
@@ -95,12 +95,9 @@
"Тапсырмалар жолағы: үйрену"
"Тапсырмалар тақтасы бойынша нұсқаулық ашылды."
"Тапсырмалар тақтасы бойынша нұсқаулық жабылды."
-
-
-
-
-
-
+ "Екі қолданбаны бір уақытта пайдалану үшін шетке сүйреңіз."
+ "Тапсырмалар жолағын көру үшін жоғары қарай тез сырғытыңыз."
+ "Тапсырмалар жолағындағы ұсыныстар әдеттеріңізге негізделеді."
"Келесі"
"Артқа"
"Жабу"
diff --git a/quickstep/res/values-km/strings.xml b/quickstep/res/values-km/strings.xml
index 04e34396eb..f9a7209b8d 100644
--- a/quickstep/res/values-km/strings.xml
+++ b/quickstep/res/values-km/strings.xml
@@ -95,12 +95,9 @@
"ការអប់រំលើរបារកិច្ចការ"
"ការបង្រៀនអំពីរបារកិច្ចការបានបង្ហាញ"
"ការបង្រៀនអំពីរបារកិច្ចការត្រូវបានបិទ"
-
-
-
-
-
-
+ "អូសទៅចំហៀង ដើម្បីប្រើកម្មវិធី 2 ក្នុងពេលតែមួយ"
+ "អូសឡើងលើបន្តិច ដើម្បីបង្ហាញរបារកិច្ចការ"
+ "របារកិច្ចការនេះណែនាំកម្មវិធីផ្អែកលើទម្លាប់របស់អ្នក"
"បន្ទាប់"
"ថយក្រោយ"
"បិទ"
diff --git a/quickstep/res/values-kn/strings.xml b/quickstep/res/values-kn/strings.xml
index 4ec4ce6b45..b7c774ae72 100644
--- a/quickstep/res/values-kn/strings.xml
+++ b/quickstep/res/values-kn/strings.xml
@@ -95,12 +95,9 @@
"ಟಾಸ್ಕ್ಬಾರ್ ಶಿಕ್ಷಣ"
"ಟಾಸ್ಕ್ಬಾರ್ ಶಿಕ್ಷಣ ಕಾಣಿಸಿಕೊಂಡಿದೆ"
"ಟಾಸ್ಕ್ಬಾರ್ ಶಿಕ್ಷಣ ಮುಚ್ಚಿದೆ"
-
-
-
-
-
-
+ "ಏಕಕಾಲದಲ್ಲಿ 2 ಆ್ಯಪ್ಗಳನ್ನು ಬಳಸಲು ಬದಿಗೆ ಡ್ರ್ಯಾಗ್ ಮಾಡಿ"
+ "ಟಾಸ್ಕ್ಬಾರ್ ಅನ್ನು ತೋರಿಸಲು ಚಿಕ್ಕದಾಗಿ ಮೇಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ"
+ "ಟಾಸ್ಕ್ಬಾರ್ ನಿಮ್ಮ ದಿನಚರಿ ಆಧರಿಸಿ ಆ್ಯಪ್ಗಳನ್ನು ಸೂಚಿಸುತ್ತದೆ"
"ಮುಂದೆ"
"ಹಿಂದೆ"
"ಮುಚ್ಚಿರಿ"
diff --git a/quickstep/res/values-ky/strings.xml b/quickstep/res/values-ky/strings.xml
index 9e9968530a..55e5a11872 100644
--- a/quickstep/res/values-ky/strings.xml
+++ b/quickstep/res/values-ky/strings.xml
@@ -95,12 +95,9 @@
"Тапшырмалар панели жөнүндө маалымат"
"Тапшырмалар тактасынын окутуу панели көрсөтүлдү"
"Тапшырмалар тактасынын окутуу панели жабылды"
-
-
-
-
-
-
+ "2 колдонмону бир убакта пайдалануу үчүн капталга сүйрөңүз"
+ "Тапшырмалар тактасын көрүү үчүн экранды өйдө серпиңиз"
+ "Тапшырмалар тактасы колдонмолорду аракеттериңизге жараша сунуштайт"
"Кийинки"
"Артка"
"Жабуу"
diff --git a/quickstep/res/values-lv/strings.xml b/quickstep/res/values-lv/strings.xml
index 5036588268..da911c1378 100644
--- a/quickstep/res/values-lv/strings.xml
+++ b/quickstep/res/values-lv/strings.xml
@@ -95,12 +95,9 @@
"Informācija par uzdevumu joslu"
"Tika atvērta uzdevumjoslas apmācība"
"Tika aizvērta uzdevumjoslas apmācība"
-
-
-
-
-
-
+ "Velciet uz malu, lai izmantotu divas lietotnes vienlaikus"
+ "Īsi velciet augšup, lai skatītu uzdevumu joslu"
+ "Uzdevumu joslā tiek rādītas lietotnes, ņemot vērā lietojumu"
"Tālāk"
"Atpakaļ"
"Aizvērt"
diff --git a/quickstep/res/values-or/strings.xml b/quickstep/res/values-or/strings.xml
index 0b7e0cc626..2f0614c002 100644
--- a/quickstep/res/values-or/strings.xml
+++ b/quickstep/res/values-or/strings.xml
@@ -95,12 +95,9 @@
"ଟାସ୍କବାର ଶିକ୍ଷା"
"ଟାସ୍କବାର୍ ଶିକ୍ଷା ଦେଖାଯାଇଛି"
"ଟାସ୍କବାର୍ ଶିକ୍ଷା ବନ୍ଦ ହୋଇଯାଇଛି"
-
-
-
-
-
-
+ "ଥରକେ 2ଟି ଆପ୍ସ ବ୍ୟବହାର କରିବା ପାଇଁ ପାର୍ଶ୍ୱକୁ ଡ୍ରାଗ କରନ୍ତୁ"
+ "ଟାସ୍କବାର ଦେଖାଇବା ପାଇଁ ଉପରକୁ ଅଳ୍ପ ସମୟ ସ୍ୱାଇପ କରନ୍ତୁ"
+ "ଟାସ୍କବାର ଆପଣଙ୍କ ରୁଟିନ ଆଧାରରେ ଆପ୍ସ ପରାମର୍ଶ ଦିଏ"
"ପରବର୍ତ୍ତୀ"
"ପଛକୁ ଫେରନ୍ତୁ"
"ବନ୍ଦ କରନ୍ତୁ"
diff --git a/quickstep/res/values-pa/strings.xml b/quickstep/res/values-pa/strings.xml
index 0d9a565ef2..dc9d78e571 100644
--- a/quickstep/res/values-pa/strings.xml
+++ b/quickstep/res/values-pa/strings.xml
@@ -95,12 +95,9 @@
"ਟਾਸਕਬਾਰ ਸਿੱਖਿਆ"
"ਟਾਸਕਵਾਰ ਸਿੱਖਿਆ ਪੈਨਲ ਦਿਖਾਇਆ ਗਿਆ"
"ਟਾਸਕਵਾਰ ਸਿੱਖਿਆ ਪੈਨਲ ਬੰਦ ਕੀਤਾ ਗਿਆ"
-
-
-
-
-
-
+ "ਇੱਕ ਵਾਰ ਵਿੱਚ 2 ਐਪਾਂ ਵਰਤਣ ਲਈ ਉਨ੍ਹਾਂ ਨੂੰ ਸਾਈਡ ਵੱਲ ਘਸੀਟੋ"
+ "ਟਾਸਕਬਾਰ ਦਿਖਾਉਣ ਲਈ ਥੋੜ੍ਹਾ ਉੱਪਰ ਵੱਲ ਸਵਾਈਪ ਕਰੋ"
+ "ਟਾਸਕਬਾਰ ਤੁਹਾਡੇ ਨਿਯਮਬੱਧ ਕੰਮ ਮੁਤਾਬਕ ਐਪਾਂ ਦਾ ਸੁਝਾਅ ਦਿੰਦਾ ਹੈ"
"ਅੱਗੇ"
"ਪਿੱਛੇ"
"ਬੰਦ ਕਰੋ"
diff --git a/quickstep/res/values-pt-rPT/strings.xml b/quickstep/res/values-pt-rPT/strings.xml
index c327df9e4f..b663528b07 100644
--- a/quickstep/res/values-pt-rPT/strings.xml
+++ b/quickstep/res/values-pt-rPT/strings.xml
@@ -95,12 +95,9 @@
"Educação da Barra de tarefas"
"Informação da barra de tarefas apresentada"
"Informação da barra de tarefas fechada"
-
-
-
-
-
-
+ "Arraste para o lado para usar duas apps em simultâneo"
+ "Deslize rápido curto para cima para ver a barra de tarefas"
+ "A barra de tarefas sugere apps baseadas na sua rotina"
"Seguinte"
"Anterior"
"Fechar"
diff --git a/quickstep/res/values-sk/strings.xml b/quickstep/res/values-sk/strings.xml
index e29c166a71..573c17b168 100644
--- a/quickstep/res/values-sk/strings.xml
+++ b/quickstep/res/values-sk/strings.xml
@@ -95,12 +95,9 @@
"Panel vzdelávacích aplikácií"
"Zobrazila sa výuka k hlavnému panelu"
"Výuka k hlavnému panelu bola zatvorená"
-
-
-
-
-
-
+ "Po presunutí na stranu je možné používať dve aplikácie naraz"
+ "Krátkym potiahnutím nahor zobrazíte panel aplikácií"
+ "Panel aplikácií navrhuje aplikácie na základe vašich zvykov"
"Ďalej"
"Späť"
"Zavrieť"
diff --git a/quickstep/res/values-sq/strings.xml b/quickstep/res/values-sq/strings.xml
index d96141086b..d73aa4836d 100644
--- a/quickstep/res/values-sq/strings.xml
+++ b/quickstep/res/values-sq/strings.xml
@@ -95,12 +95,9 @@
"Edukimi për shiritin e detyrave"
"Edukimi i shiritit të detyrave u shfaq"
"Edukimi nga shiriti i detyrave u mbyll"
-
-
-
-
-
-
+ "Zvarrit në anë për të përdorur 2 aplikacione njëherësh"
+ "Kryej një rrëshqitje të shkurtër lart për të shfaqur shiritin e detyrave"
+ "Shiriti i detyrave sugjeron aplikacione bazuar në rutinën tënde"
"Para"
"Pas"
"Mbyll"
diff --git a/quickstep/res/values-sv/strings.xml b/quickstep/res/values-sv/strings.xml
index 900b3a1d2e..bab195241c 100644
--- a/quickstep/res/values-sv/strings.xml
+++ b/quickstep/res/values-sv/strings.xml
@@ -95,12 +95,9 @@
"Aktivitetsfältsutbildning"
"Information om aktivitetsfältet visades"
"Information om aktivitetsfältet stängdes"
-
-
-
-
-
-
+ "Dra till sidan om du vill använda två appar samtidigt"
+ "Svep en kort bit uppåt för att visa aktivitetsfältet"
+ "I aktivitetsfältet visas förslag på appar utifrån din rutin"
"Nästa"
"Tillbaka"
"Stäng"
diff --git a/quickstep/res/values-sw/strings.xml b/quickstep/res/values-sw/strings.xml
index 7961110381..f0990b3a27 100644
--- a/quickstep/res/values-sw/strings.xml
+++ b/quickstep/res/values-sw/strings.xml
@@ -95,12 +95,9 @@
"Elimu ya Upauzana"
"Paneli ya elimu kwenye upau wa shughuli inaonyeshwa"
"Paneli ya elimu kwenye upau wa shughuli imefungwa"
-
-
-
-
-
-
+ "Buruta pembeni ili utumie programu 2 kwa wakati mmoja"
+ "Telezesha kidole juu ili uonyeshe upauzana"
+ "Upauzana hupendekeza programu kulingana na ratiba yako"
"Endelea"
"Nyuma"
"Funga"
diff --git a/quickstep/res/values-ta/strings.xml b/quickstep/res/values-ta/strings.xml
index 0b916b0da0..1db0fab7d9 100644
--- a/quickstep/res/values-ta/strings.xml
+++ b/quickstep/res/values-ta/strings.xml
@@ -95,12 +95,9 @@
"செயல் பட்டியைப் பயன்படுத்தும் விதம்"
"பணிப்பட்டியை எவ்வாறு பயன்படுத்துவது என்பது பற்றிய பலகம் காட்டப்படுகிறது"
"பணிப்பட்டியை எவ்வாறு பயன்படுத்துவது என்பது பற்றிய பலகம் மூடப்பட்டது"
-
-
-
-
-
-
+ "ஒரே நேரத்தில் 2 ஆப்ஸை உபயோகிக்க பக்கவாட்டிற்கு இழுக்கவும்"
+ "செயல் பட்டியைக் காட்டுவதற்கு மேலே சிறிது ஸ்வைப் செய்யவும்"
+ "உங்கள் வழக்கத்திற்கேற்ப ஆப்ஸை செயல் பட்டி பரிந்துரைக்கும்"
"அடுத்து"
"பின்செல்"
"மூடுக"
diff --git a/quickstep/res/values-uk/strings.xml b/quickstep/res/values-uk/strings.xml
index 2e444a94d1..b426c8baec 100644
--- a/quickstep/res/values-uk/strings.xml
+++ b/quickstep/res/values-uk/strings.xml
@@ -95,12 +95,9 @@
"Панель завдань Education"
"Панель завдань Education відкрито"
"Панель завдань Education закрито"
-
-
-
-
-
-
+ "Перетягніть убік, щоб використовувати 2 додатки одночасно"
+ "Швидко проведіть пальцем угору, щоб відкрити панель завдань"
+ "Панель завдань пропонує додатки на основі вашої програми"
"Далі"
"Назад"
"Закрити"
diff --git a/quickstep/res/values-zh-rHK/strings.xml b/quickstep/res/values-zh-rHK/strings.xml
index 8213a8b612..5a9e0a1e01 100644
--- a/quickstep/res/values-zh-rHK/strings.xml
+++ b/quickstep/res/values-zh-rHK/strings.xml
@@ -96,8 +96,8 @@
"顯示咗工作列教學"
"閂咗工作列教學"
"拖曳到一邊即可同時使用 2 個應用程式"
- "稍微向上滑動即可讓工作列顯示在畫面上"
- "工作列會根據你的日常習慣提供應用程式建議"
+ "輕輕向上滑動即可顯示工作列"
+ "工作列會根據您的日常安排提供應用程式建議"
"繼續"
"返回"
"關閉"
diff --git a/quickstep/res/values-zu/strings.xml b/quickstep/res/values-zu/strings.xml
index 06dc488515..0a7e418d81 100644
--- a/quickstep/res/values-zu/strings.xml
+++ b/quickstep/res/values-zu/strings.xml
@@ -95,12 +95,9 @@
"Imfundo ye-taskbar"
"Imfuno yebha yomsebenzi ivelile"
"Imfundo yebha yomsebenzi ivaliwe"
-
-
-
-
-
-
+ "Hudula ngaseceleni ukuze usebenzise ama-app angu-2 ngesikhathi esisodwa"
+ "Swayiphela phezulu okufushane ukuze ubonise i-taskbar"
+ "I-taskbar iphakamisa ama-app ezisuselwe kumjikelezo wakho"
"Okulandelayo"
"Emuva"
"Vala"
diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarManager.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarManager.java
index 049c672f5b..86e191151a 100644
--- a/quickstep/src/com/android/launcher3/taskbar/TaskbarManager.java
+++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarManager.java
@@ -320,6 +320,12 @@ public class TaskbarManager {
}
}
+ public void onLongPressHomeEnabled(boolean assistantLongPressEnabled) {
+ if (mNavButtonController != null) {
+ mNavButtonController.setAssistantLongPressEnabled(assistantLongPressEnabled);
+ }
+ }
+
/**
* Sets the flag indicating setup UI is visible
*/
diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarNavButtonController.java b/quickstep/src/com/android/launcher3/taskbar/TaskbarNavButtonController.java
index a395548f84..5bb958a713 100644
--- a/quickstep/src/com/android/launcher3/taskbar/TaskbarNavButtonController.java
+++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarNavButtonController.java
@@ -67,6 +67,7 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa
private long mLastScreenPinLongPress;
private boolean mScreenPinned;
+ private boolean mAssistantLongPressEnabled;
@Override
public void dumpLogs(String prefix, PrintWriter pw) {
@@ -251,6 +252,10 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa
mStatsLogManager = null;
}
+ public void setAssistantLongPressEnabled(boolean assistantLongPressEnabled) {
+ mAssistantLongPressEnabled = assistantLongPressEnabled;
+ }
+
private void logEvent(StatsLogManager.LauncherEvent event) {
if (mStatsLogManager == null) {
Log.w(TAG, "No stats log manager to log taskbar button event");
@@ -289,7 +294,7 @@ public class TaskbarNavButtonController implements TaskbarControllers.LoggableTa
}
private void startAssistant() {
- if (mScreenPinned) {
+ if (mScreenPinned || !mAssistantLongPressEnabled) {
return;
}
Bundle args = new Bundle();
diff --git a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java
index d6d097d3b5..340187552e 100644
--- a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java
+++ b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java
@@ -323,6 +323,9 @@ public abstract class AbsSwipeUpHandler,
// May be set to false when mIsTransientTaskbar is true.
private boolean mCanSlowSwipeGoHome = true;
+ @Nullable
+ private RemoteAnimationTargets.ReleaseCheck mSwipePipToHomeReleaseCheck = null;
+
public AbsSwipeUpHandler(Context context, RecentsAnimationDeviceState deviceState,
TaskAnimationManager taskAnimationManager, GestureState gestureState,
long touchTimeMs, boolean continuingLastGesture,
@@ -868,6 +871,9 @@ public abstract class AbsSwipeUpHandler,
mRemoteTargetHandles = mTargetGluer.assignTargetsForSplitScreen(mContext, targets);
mRecentsAnimationController = controller;
mRecentsAnimationTargets = targets;
+ mSwipePipToHomeReleaseCheck = new RemoteAnimationTargets.ReleaseCheck();
+ mSwipePipToHomeReleaseCheck.setCanRelease(true);
+ mRecentsAnimationTargets.addReleaseCheck(mSwipePipToHomeReleaseCheck);
// Only initialize the device profile, if it has not been initialized before, as in some
// configurations targets.homeContentInsets may not be correct.
@@ -1427,9 +1433,16 @@ public abstract class AbsSwipeUpHandler,
mSwipePipToHomeAnimator = createWindowAnimationToPip(
homeAnimFactory, runningTaskTarget, start);
mSwipePipToHomeAnimators[0] = mSwipePipToHomeAnimator;
+ if (mSwipePipToHomeReleaseCheck != null) {
+ mSwipePipToHomeReleaseCheck.setCanRelease(false);
+ }
windowAnim = mSwipePipToHomeAnimators;
} else {
mSwipePipToHomeAnimator = null;
+ if (mSwipePipToHomeReleaseCheck != null) {
+ mSwipePipToHomeReleaseCheck.setCanRelease(true);
+ mSwipePipToHomeReleaseCheck = null;
+ }
windowAnim = createWindowAnimationToHome(start, homeAnimFactory);
windowAnim[0].addAnimatorListener(new AnimationSuccessListener() {
@@ -1951,6 +1964,10 @@ public abstract class AbsSwipeUpHandler,
finishRecentsControllerToHome(
() -> mStateCallback.setStateOnUiThread(STATE_CURRENT_TASK_FINISHED));
}
+ if (mSwipePipToHomeReleaseCheck != null) {
+ mSwipePipToHomeReleaseCheck.setCanRelease(true);
+ mSwipePipToHomeReleaseCheck = null;
+ }
doLogGesture(HOME, mRecentsView == null ? null : mRecentsView.getCurrentPageTaskView());
}
diff --git a/quickstep/src/com/android/quickstep/TaskViewUtils.java b/quickstep/src/com/android/quickstep/TaskViewUtils.java
index b7252bc772..67de4b1679 100644
--- a/quickstep/src/com/android/quickstep/TaskViewUtils.java
+++ b/quickstep/src/com/android/quickstep/TaskViewUtils.java
@@ -22,6 +22,8 @@ import static android.view.WindowManager.TRANSIT_OPEN;
import static android.view.WindowManager.TRANSIT_TO_FRONT;
import static com.android.launcher3.LauncherAnimUtils.VIEW_ALPHA;
+import static com.android.launcher3.LauncherAnimUtils.VIEW_TRANSLATE_X;
+import static com.android.launcher3.LauncherAnimUtils.VIEW_TRANSLATE_Y;
import static com.android.launcher3.LauncherState.BACKGROUND_APP;
import static com.android.launcher3.LauncherState.NORMAL;
import static com.android.launcher3.QuickstepTransitionManager.ANIMATION_DELAY_NAV_FADE_IN;
@@ -330,6 +332,17 @@ public final class TaskViewUtils {
Matrix localMti = new Matrix();
localMt.invert(localMti);
mti[i] = localMti;
+
+ // Translations for child thumbnails also get scaled as the parent taskView scales
+ // Add inverse scaling to keep translations the same
+ float translationY = ttv.getTranslationY();
+ float translationX = ttv.getTranslationX();
+ float fullScreenScale =
+ topMostSimulators[i].getTaskViewSimulator().getFullScreenScale();
+ out.addFloat(ttv, VIEW_TRANSLATE_Y, translationY,
+ translationY / fullScreenScale, TOUCH_RESPONSE_INTERPOLATOR);
+ out.addFloat(ttv, VIEW_TRANSLATE_X, translationX,
+ translationX / fullScreenScale, TOUCH_RESPONSE_INTERPOLATOR);
}
Matrix[] k0i = new Matrix[matrixSize];
diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java
index e21a44c5e1..ffeadcdd60 100644
--- a/quickstep/src/com/android/quickstep/TouchInteractionService.java
+++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java
@@ -217,10 +217,12 @@ public class TouchInteractionService extends Service
@BinderThread
@Override
- public void onAssistantAvailable(boolean available) {
+ public void onAssistantAvailable(boolean available, boolean longPressHomeEnabled) {
MAIN_EXECUTOR.execute(() -> {
mDeviceState.setAssistantAvailable(available);
TouchInteractionService.this.onAssistantVisibilityChanged();
+ executeForTaskbarManager(() -> mTaskbarManager
+ .onLongPressHomeEnabled(longPressHomeEnabled));
});
}
diff --git a/quickstep/tests/src/com/android/launcher3/taskbar/TaskbarNavButtonControllerTest.java b/quickstep/tests/src/com/android/launcher3/taskbar/TaskbarNavButtonControllerTest.java
index 4eec319f4a..962261940c 100644
--- a/quickstep/tests/src/com/android/launcher3/taskbar/TaskbarNavButtonControllerTest.java
+++ b/quickstep/tests/src/com/android/launcher3/taskbar/TaskbarNavButtonControllerTest.java
@@ -18,6 +18,7 @@ import static com.android.systemui.shared.system.QuickStepContract.SYSUI_STATE_S
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.never;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -103,11 +104,19 @@ public class TaskbarNavButtonControllerTest {
}
@Test
- public void testLongPressHome() {
+ public void testLongPressHome_enabled() {
+ mNavButtonController.setAssistantLongPressEnabled(true /*assistantLongPressEnabled*/);
mNavButtonController.onButtonLongClick(BUTTON_HOME, mockView);
verify(mockSystemUiProxy, times(1)).startAssistant(any());
}
+ @Test
+ public void testLongPressHome_disabled() {
+ mNavButtonController.setAssistantLongPressEnabled(false /*assistantLongPressEnabled*/);
+ mNavButtonController.onButtonLongClick(BUTTON_HOME, mockView);
+ verify(mockSystemUiProxy, never()).startAssistant(any());
+ }
+
@Test
public void testPressHome() {
mNavButtonController.onButtonClick(BUTTON_HOME, mockView);
diff --git a/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java b/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java
index d6ae5b72e7..f2ca84462f 100644
--- a/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java
+++ b/quickstep/tests/src/com/android/quickstep/TaplTestsQuickstep.java
@@ -264,6 +264,19 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest {
return launchedAppState;
}
+ private void quickSwitchToPreviousAppAndAssert(boolean toRight) {
+ final LaunchedAppState launchedAppState = getAndAssertLaunchedApp();
+ if (toRight) {
+ launchedAppState.quickSwitchToPreviousApp();
+ } else {
+ launchedAppState.quickSwitchToPreviousAppSwipeLeft();
+ }
+
+ // While enable shell transition, Launcher can be resumed due to transient launch.
+ waitForLauncherCondition("Launcher shouldn't stay in resume forever",
+ this::isInLaunchedApp, 3000 /* timeout */);
+ }
+
@Test
@PortraitLandscape
public void testAllAppsFromHome() throws Exception {
@@ -290,13 +303,11 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest {
startTestActivity(3);
startTestActivity(4);
- LaunchedAppState launchedAppState = getAndAssertLaunchedApp();
- launchedAppState.quickSwitchToPreviousApp();
+ quickSwitchToPreviousAppAndAssert(true /* toRight */);
assertTrue("The first app we should have quick switched to is not running",
isTestActivityRunning(3));
- launchedAppState = getAndAssertLaunchedApp();
- launchedAppState.quickSwitchToPreviousApp();
+ quickSwitchToPreviousAppAndAssert(true /* toRight */);
if (mLauncher.getNavigationModel() == NavigationModel.THREE_BUTTON) {
// 3-button mode toggles between 2 apps, rather than going back further.
assertTrue("Second quick switch should have returned to the first app.",
@@ -305,12 +316,12 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest {
assertTrue("The second app we should have quick switched to is not running",
isTestActivityRunning(2));
}
- launchedAppState = getAndAssertLaunchedApp();
- launchedAppState.quickSwitchToPreviousAppSwipeLeft();
+
+ quickSwitchToPreviousAppAndAssert(false /* toRight */);
assertTrue("The 2nd app we should have quick switched to is not running",
isTestActivityRunning(3));
- launchedAppState = getAndAssertLaunchedApp();
+ final LaunchedAppState launchedAppState = getAndAssertLaunchedApp();
launchedAppState.switchToOverview();
}
@@ -329,8 +340,10 @@ public class TaplTestsQuickstep extends AbstractQuickStepTest {
launchedAppState.assertTaskbarHidden();
// Quick-switch to the test app with swiping to right.
- launchedAppState.quickSwitchToPreviousApp();
+ quickSwitchToPreviousAppAndAssert(true /* toRight */);
+ assertTrue("The first app we should have quick switched to is not running",
+ isTestActivityRunning(2));
// Expect task bar visible when the launched app was the test activity.
launchedAppState = getAndAssertLaunchedApp();
launchedAppState.assertTaskbarVisible();
diff --git a/res/values-b+sr+Latn/strings.xml b/res/values-b+sr+Latn/strings.xml
index 460a73e6e6..cc6e908efb 100644
--- a/res/values-b+sr+Latn/strings.xml
+++ b/res/values-b+sr+Latn/strings.xml
@@ -21,156 +21,156 @@
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
"Launcher3"
"Work"
- "Апликација није инсталирана."
- "Апликација није доступна"
- "Преузета апликација је онемогућена у Безбедном режиму"
- "Виџети су онемогућени у Безбедном режиму"
- "Пречица није доступна"
- "Почетни екран"
- "Подељени екран"
- "Подели у врху"
- "Подели лево"
- "Подели десно"
- "Информације о апликацији за: %1$s"
- "Додирните и задржите ради померања виџета."
- "Двапут додирните и задржите да бисте померали виџет или користите прилагођене радње."
+ "Aplikacija nije instalirana."
+ "Aplikacija nije dostupna"
+ "Preuzeta aplikacija je onemogućena u Bezbednom režimu"
+ "Vidžeti su onemogućeni u Bezbednom režimu"
+ "Prečica nije dostupna"
+ "Početni ekran"
+ "Podeljeni ekran"
+ "Podeli u vrhu"
+ "Podeli levo"
+ "Podeli desno"
+ "Informacije o aplikaciji za: %1$s"
+ "Dodirnite i zadržite radi pomeranja vidžeta."
+ "Dvaput dodirnite i zadržite da biste pomerali vidžet ili koristite prilagođene radnje."
"%1$d×%2$d"
- "ширина од %1$d и висина од %2$d"
- "%1$s виџет"
- "Додирните и задржите виџет да бисте га померали по почетном екрану"
- "Додај на почетни екран"
- "Додали сте виџет %1$s на почетни екран"
- "{count,plural, =1{# виџет}one{# виџет}few{# виџета}other{# виџета}}"
- "{count,plural, =1{# пречица}one{# пречица}few{# пречице}other{# пречица}}"
+ "širina od %1$d i visina od %2$d"
+ "%1$s vidžet"
+ "Dodirnite i zadržite vidžet da biste ga pomerali po početnom ekranu"
+ "Dodaj na početni ekran"
+ "Dodali ste vidžet %1$s na početni ekran"
+ "{count,plural, =1{# vidžet}one{# vidžet}few{# vidžeta}other{# vidžeta}}"
+ "{count,plural, =1{# prečica}one{# prečica}few{# prečice}other{# prečica}}"
"%1$s, %2$s"
- "Виџети"
- "Претражите"
- "Обришите текст из оквира за претрагу"
- "Виџети и пречице нису доступни"
- "Није пронађен ниједан виџет ни пречица"
- "Лично"
- "Посао"
- "Конверзације"
- "Корисне информације надохват руке"
- "Да бисте пронашли информације без отварања апликација, можете да додате виџете на почетни екран"
- "Додирните да бисте променили подешавања виџета"
- "Важи"
- "Промените подешавања виџета"
- "Претражите апликације"
- "Апликације се учитавају…"
- "Није пронађена ниједна апликација за „%1$s“"
- "Апликација"
- "Све апликације"
- "Обавештења"
- "Додирните и задржите ради померања пречице."
- "Двапут додирните и задржите да бисте померали пречицу или користите прилагођене радње."
- "Нема места на овом почетном екрану"
- "Нема више простора на траци Омиљено"
- "Листа апликација"
- "Резултати претраге"
- "Листа личних апликација"
- "Листа пословних апликација"
- "Уклони"
- "Деинсталирај"
- "Инфор. о апликацији"
- "Инсталирај"
- "Не предлажи апликацију"
- "Закачи предвиђање"
- "инсталирање пречица"
- "Дозвољава апликацији да додаје пречице без интервенције корисника."
- "читање подешавања и пречица на почетном екрану"
- "Дозвољава апликацији да чита подешавања и пречице на почетном екрану."
- "уписивање подешавања и пречица на почетном екрану"
- "Дозвољава апликацији да мења подешавања и пречице на почетном екрану."
- "%1$s нема дозволу за упућивање телефонских позива"
- "Учитавање виџета није успело"
- "Подешавања виџета"
- "Додирните да бисте довршили подешавање"
- "Ово је системска апликација и не може да се деинсталира."
- "Измените назив"
- "Апликација %1$s је онемогућена"
- "{count,plural, =1{{app_name}, има # обавештење}one{{app_name}, има # обавештење}few{{app_name}, има # обавештења}other{{app_name}, има # обавештења}}"
- "%1$d. страница од %2$d"
- "%1$d. почетни екран од %2$d"
- "Нова страница почетног екрана"
- "Фолдер је отворен, %1$d пута %2$d"
- "Додирните да бисте затворили фолдер"
- "Додирните да бисте сачували преименовање"
- "Фолдер је затворен"
- "Фолдер је преименован у %1$s"
- "Фолдер: %1$s, %2$d ставке"
- "Фолдер: %1$s, %2$d или више ставки"
- "Позадине"
- "Позадина и стил"
- "Подешавања почетног екрана"
- "Администратор је онемогућио"
- "Дозволи ротацију почетног екрана"
- "Када се телефон ротира"
- "Тачке за обавештења"
- "Укључено"
- "Искључено"
- "Потребан је приступ за обавештења"
- "Да бисте приказали тачке за обавештења, укључите обавештења за апликацију %1$s"
- "Промените подешавања"
- "Приказуј тачке за обавештења"
- "Опције за програмера"
- "Додај иконе апликација на почетни екран"
- "За нове апликације"
- "Непознато"
- "Уклони"
- "Претражи"
- "Ова апликација није инсталирана"
- "Апликација за ову икону није инсталирана. Можете да је уклоните или да потражите апликацију и инсталирате је ручно."
- "%1$s се инсталира, %2$s готово"
- "%1$s се преузима, завршено је %2$s"
- "%1$s чека на инсталирање"
- "Треба да ажурирате апликацију"
- "Апликација за ову икону није ажурирана. Можете да је ручно ажурирате да бисте поново омогућили ову пречицу или уклоните икону."
- "Ажурирај"
- "Уклони"
- "Листа виџета"
- "Листа виџета је затворена"
- "Додајте на почетни екран"
- "Премести ставку овде"
- "Ставка је додата на почетни екран"
- "Ставка је уклоњена"
- "Опозови"
- "Премести ставку"
- "Преместите у ред %1$s колону %2$s на %3$s"
- "Премести на %1$s. позицију"
- "Премести на %1$s. позицију у омиљеним"
- "Ставка је премештена"
- "Додај у фолдер: %1$s"
- "Додај у фолдер у коме је %1$s"
- "Ставка је додата у фолдер"
- "Направите фолдер са: %1$s"
- "Фолдер је направљен"
- "Преместите на почетни екран"
- "Промени величину"
- "Повећај ширину"
- "Повећај висину"
- "Смањи ширину"
- "Смањи висину"
- "Величина виџета је промењена на ширину %1$s и висину %2$s"
- "Пречице"
- "Пречице и обавештења"
- "Одбаци"
- "Затвори"
- "Обавештење је одбачено"
- "Личне"
- "Пословне"
- "Пословни профил"
- "Пословне апликације су означене значком и ИТ администратор може да их види"
- "Важи"
- "Пословне апликације су паузиране"
- "Пословне апликације не могу да вам шаљу обавештења, користе батерију нити приступају локацији"
- "Пословне апликације су искључене. Пословне апликације не могу да вам шаљу обавештења, користе батерију нити приступају локацији"
- "Пословне апликације су означене значком и ИТ администратор може да их види"
- "Важи"
- "Паузирај пословне апликације"
- "Укључи пословне апликације"
- "Филтер"
- "Претражите телефон"
- "Претражите таблет"
- "Није успело: %1$s"
+ "Vidžeti"
+ "Pretražite"
+ "Obrišite tekst iz okvira za pretragu"
+ "Vidžeti i prečice nisu dostupni"
+ "Nije pronađen nijedan vidžet ni prečica"
+ "Lično"
+ "Posao"
+ "Konverzacije"
+ "Korisne informacije nadohvat ruke"
+ "Da biste pronašli informacije bez otvaranja aplikacija, možete da dodate vidžete na početni ekran"
+ "Dodirnite da biste promenili podešavanja vidžeta"
+ "Važi"
+ "Promenite podešavanja vidžeta"
+ "Pretražite aplikacije"
+ "Aplikacije se učitavaju…"
+ "Nije pronađena nijedna aplikacija za „%1$s“"
+ "Aplikacija"
+ "Sve aplikacije"
+ "Obaveštenja"
+ "Dodirnite i zadržite radi pomeranja prečice."
+ "Dvaput dodirnite i zadržite da biste pomerali prečicu ili koristite prilagođene radnje."
+ "Nema mesta na ovom početnom ekranu"
+ "Nema više prostora na traci Omiljeno"
+ "Lista aplikacija"
+ "Rezultati pretrage"
+ "Lista ličnih aplikacija"
+ "Lista poslovnih aplikacija"
+ "Ukloni"
+ "Deinstaliraj"
+ "Infor. o aplikaciji"
+ "Instaliraj"
+ "Ne predlaži aplikaciju"
+ "Zakači predviđanje"
+ "instaliranje prečica"
+ "Dozvoljava aplikaciji da dodaje prečice bez intervencije korisnika."
+ "čitanje podešavanja i prečica na početnom ekranu"
+ "Dozvoljava aplikaciji da čita podešavanja i prečice na početnom ekranu."
+ "upisivanje podešavanja i prečica na početnom ekranu"
+ "Dozvoljava aplikaciji da menja podešavanja i prečice na početnom ekranu."
+ "%1$s nema dozvolu za upućivanje telefonskih poziva"
+ "Učitavanje vidžeta nije uspelo"
+ "Podešavanja vidžeta"
+ "Dodirnite da biste dovršili podešavanje"
+ "Ovo je sistemska aplikacija i ne može da se deinstalira."
+ "Izmenite naziv"
+ "Aplikacija %1$s je onemogućena"
+ "{count,plural, =1{{app_name}, ima # obaveštenje}one{{app_name}, ima # obaveštenje}few{{app_name}, ima # obaveštenja}other{{app_name}, ima # obaveštenja}}"
+ "%1$d. stranica od %2$d"
+ "%1$d. početni ekran od %2$d"
+ "Nova stranica početnog ekrana"
+ "Folder je otvoren, %1$d puta %2$d"
+ "Dodirnite da biste zatvorili folder"
+ "Dodirnite da biste sačuvali preimenovanje"
+ "Folder je zatvoren"
+ "Folder je preimenovan u %1$s"
+ "Folder: %1$s, %2$d stavke"
+ "Folder: %1$s, %2$d ili više stavki"
+ "Pozadine"
+ "Pozadina i stil"
+ "Podešavanja početnog ekrana"
+ "Administrator je onemogućio"
+ "Dozvoli rotaciju početnog ekrana"
+ "Kada se telefon rotira"
+ "Tačke za obaveštenja"
+ "Uključeno"
+ "Isključeno"
+ "Potreban je pristup za obaveštenja"
+ "Da biste prikazali tačke za obaveštenja, uključite obaveštenja za aplikaciju %1$s"
+ "Promenite podešavanja"
+ "Prikazuj tačke za obaveštenja"
+ "Opcije za programera"
+ "Dodaj ikone aplikacija na početni ekran"
+ "Za nove aplikacije"
+ "Nepoznato"
+ "Ukloni"
+ "Pretraži"
+ "Ova aplikacija nije instalirana"
+ "Aplikacija za ovu ikonu nije instalirana. Možete da je uklonite ili da potražite aplikaciju i instalirate je ručno."
+ "%1$s se instalira, %2$s gotovo"
+ "%1$s se preuzima, završeno je %2$s"
+ "%1$s čeka na instaliranje"
+ "Treba da ažurirate aplikaciju"
+ "Aplikacija za ovu ikonu nije ažurirana. Možete da je ručno ažurirate da biste ponovo omogućili ovu prečicu ili uklonite ikonu."
+ "Ažuriraj"
+ "Ukloni"
+ "Lista vidžeta"
+ "Lista vidžeta je zatvorena"
+ "Dodajte na početni ekran"
+ "Premesti stavku ovde"
+ "Stavka je dodata na početni ekran"
+ "Stavka je uklonjena"
+ "Opozovi"
+ "Premesti stavku"
+ "Premestite u red %1$s kolonu %2$s na %3$s"
+ "Premesti na %1$s. poziciju"
+ "Premesti na %1$s. poziciju u omiljenim"
+ "Stavka je premeštena"
+ "Dodaj u folder: %1$s"
+ "Dodaj u folder u kome je %1$s"
+ "Stavka je dodata u folder"
+ "Napravite folder sa: %1$s"
+ "Folder je napravljen"
+ "Premestite na početni ekran"
+ "Promeni veličinu"
+ "Povećaj širinu"
+ "Povećaj visinu"
+ "Smanji širinu"
+ "Smanji visinu"
+ "Veličina vidžeta je promenjena na širinu %1$s i visinu %2$s"
+ "Prečice"
+ "Prečice i obaveštenja"
+ "Odbaci"
+ "Zatvori"
+ "Obaveštenje je odbačeno"
+ "Lične"
+ "Poslovne"
+ "Poslovni profil"
+ "Poslovne aplikacije su označene značkom i IT administrator može da ih vidi"
+ "Važi"
+ "Poslovne aplikacije su pauzirane"
+ "Poslovne aplikacije ne mogu da vam šalju obaveštenja, koriste bateriju niti pristupaju lokaciji"
+ "Poslovne aplikacije su isključene. Poslovne aplikacije ne mogu da vam šalju obaveštenja, koriste bateriju niti pristupaju lokaciji"
+ "Poslovne aplikacije su označene značkom i IT administrator može da ih vidi"
+ "Važi"
+ "Pauziraj poslovne aplikacije"
+ "Uključi poslovne aplikacije"
+ "Filter"
+ "Pretražite telefon"
+ "Pretražite tablet"
+ "Nije uspelo: %1$s"
diff --git a/src/com/android/launcher3/Utilities.java b/src/com/android/launcher3/Utilities.java
index dd2f7c4e9a..02e18c50a6 100644
--- a/src/com/android/launcher3/Utilities.java
+++ b/src/com/android/launcher3/Utilities.java
@@ -768,4 +768,14 @@ public final class Utilities {
public static float getYVelocity(VelocityTracker velocityTracker, MotionEvent event) {
return getYVelocity(velocityTracker, event, -1 /* ACTIVE_POINTER_ID */);
}
+
+ /** Logs the Scale and Translate properties of a matrix. Ignores skew and perspective. */
+ public static void logMatrix(String label, Matrix matrix) {
+ float[] matrixValues = new float[9];
+ matrix.getValues(matrixValues);
+ Log.d(label, String.format("%s: %s\nscale (x,y) = (%f, %f)\ntranslate (x,y) = (%f, %f)",
+ label, matrix, matrixValues[Matrix.MSCALE_X], matrixValues[Matrix.MSCALE_Y],
+ matrixValues[Matrix.MTRANS_X], matrixValues[Matrix.MTRANS_Y]
+ ));
+ }
}
diff --git a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
index fc1b830aed..29767bf465 100644
--- a/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
+++ b/src/com/android/launcher3/allapps/AlphabeticalAppsList.java
@@ -239,23 +239,24 @@ public class AlphabeticalAppsList implement
mAdapterItems.addAll(mSearchResults);
} else {
int position = 0;
+ boolean addApps = true;
if (mWorkProviderManager != null) {
position += mWorkProviderManager.addWorkItems(mAdapterItems);
- if (!mWorkProviderManager.shouldShowWorkApps()) {
- return;
- }
+ addApps = mWorkProviderManager.shouldShowWorkApps();
}
- String lastSectionName = null;
- for (AppInfo info : mApps) {
- mAdapterItems.add(AdapterItem.asApp(info));
+ if (addApps) {
+ String lastSectionName = null;
+ for (AppInfo info : mApps) {
+ mAdapterItems.add(AdapterItem.asApp(info));
- String sectionName = info.sectionName;
- // Create a new section if the section names do not match
- if (!sectionName.equals(lastSectionName)) {
- lastSectionName = sectionName;
- mFastScrollerSections.add(new FastScrollSectionInfo(sectionName, position));
+ String sectionName = info.sectionName;
+ // Create a new section if the section names do not match
+ if (!sectionName.equals(lastSectionName)) {
+ lastSectionName = sectionName;
+ mFastScrollerSections.add(new FastScrollSectionInfo(sectionName, position));
+ }
+ position++;
}
- position++;
}
}
mAccessibilityResultsCount = (int) mAdapterItems.stream()
diff --git a/src/com/android/launcher3/allapps/BaseAllAppsContainerView.java b/src/com/android/launcher3/allapps/BaseAllAppsContainerView.java
index ca08164a05..00e89bacc5 100644
--- a/src/com/android/launcher3/allapps/BaseAllAppsContainerView.java
+++ b/src/com/android/launcher3/allapps/BaseAllAppsContainerView.java
@@ -163,7 +163,8 @@ public abstract class BaseAllAppsContainerView mAllApps;
private final Predicate mMatcher;
+ private final StatsLogManager mStatsLogManager;
private WorkModeSwitch mWorkModeSwitch;
@@ -88,11 +89,13 @@ public class WorkProfileManager implements PersonalWorkSlidingTabStrip.OnActiveP
private SharedPreferences mPreferences;
public WorkProfileManager(
- UserManager userManager, BaseAllAppsContainerView> allApps, SharedPreferences prefs) {
+ UserManager userManager, BaseAllAppsContainerView> allApps, SharedPreferences prefs,
+ StatsLogManager statsLogManager) {
mUserManager = userManager;
mAllApps = allApps;
mPreferences = prefs;
mMatcher = mAllApps.mPersonalMatcher.negate();
+ mStatsLogManager = statsLogManager;
}
/**
@@ -227,9 +230,7 @@ public class WorkProfileManager implements PersonalWorkSlidingTabStrip.OnActiveP
private void onWorkFabClicked(View view) {
if (Utilities.ATLEAST_P && mCurrentState == STATE_ENABLED && mWorkModeSwitch.isEnabled()) {
- ActivityContext activityContext = ActivityContext.lookupContext(
- mWorkModeSwitch.getContext());
- activityContext.getStatsLogManager().logger().log(LAUNCHER_TURN_OFF_WORK_APPS_TAP);
+ mStatsLogManager.logger().log(LAUNCHER_TURN_OFF_WORK_APPS_TAP);
setWorkProfileEnabled(false);
}
}
diff --git a/src/com/android/launcher3/logging/StatsLogManager.java b/src/com/android/launcher3/logging/StatsLogManager.java
index 24d8c9dc5e..2159c6b68f 100644
--- a/src/com/android/launcher3/logging/StatsLogManager.java
+++ b/src/com/android/launcher3/logging/StatsLogManager.java
@@ -624,7 +624,13 @@ public class StatsLogManager implements ResourceBasedOverride {
LAUNCHER_KEYBOARD_SHORTCUT_SPLIT_RIGHT_BOTTOM(1232),
@UiEvent(doc = "User has invoked split to left half with a keyboard shortcut.")
- LAUNCHER_KEYBOARD_SHORTCUT_SPLIT_LEFT_TOP(1233)
+ LAUNCHER_KEYBOARD_SHORTCUT_SPLIT_LEFT_TOP(1233),
+
+ @UiEvent(doc = "User has collapsed the work FAB button by swiping down")
+ LAUNCHER_WORK_FAB_BUTTON_COLLAPSE(1276),
+
+ @UiEvent(doc = "User has collapsed the work FAB button by swiping up")
+ LAUNCHER_WORK_FAB_BUTTON_EXTEND(1277),
;
// ADD MORE
diff --git a/tests/src/com/android/launcher3/ui/widget/AddConfigWidgetTest.java b/tests/src/com/android/launcher3/ui/widget/AddConfigWidgetTest.java
index eb814005dc..655a77e112 100644
--- a/tests/src/com/android/launcher3/ui/widget/AddConfigWidgetTest.java
+++ b/tests/src/com/android/launcher3/ui/widget/AddConfigWidgetTest.java
@@ -38,7 +38,6 @@ import com.android.launcher3.util.rule.ShellCommandRule;
import com.android.launcher3.widget.LauncherAppWidgetProviderInfo;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Rule;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -66,7 +65,6 @@ public class AddConfigWidgetTest extends AbstractLauncherUiTest {
mAppWidgetManager = AppWidgetManager.getInstance(mTargetContext);
}
- @Ignore
@Test
@PortraitLandscape
public void testWidgetConfig() throws Throwable {