From 19256d020dbbe600ecac58269a0682f4f9ebf5b1 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 27 Jan 2024 04:54:13 +0800 Subject: [PATCH 01/12] Update gradle/gradle-build-action action to v3 (#4019) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- .github/workflows/ci.yml | 4 ++-- .github/workflows/release_update.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e4b5ebd233d..99b9636f61d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,7 +38,7 @@ jobs: with: distribution: 'zulu' java-version: 21 - - uses: gradle/gradle-build-action@v2 + - uses: gradle/gradle-build-action@v3 with: gradle-home-cache-cleanup: true - name: Write sign info @@ -69,7 +69,7 @@ jobs: with: distribution: 'zulu' java-version: 21 - - uses: gradle/gradle-build-action@v2 + - uses: gradle/gradle-build-action@v3 with: gradle-home-cache-cleanup: true - run: ./gradlew spotlessCheck diff --git a/.github/workflows/release_update.yml b/.github/workflows/release_update.yml index 7907350e96c..50908ce1732 100644 --- a/.github/workflows/release_update.yml +++ b/.github/workflows/release_update.yml @@ -31,7 +31,7 @@ jobs: with: distribution: 'zulu' java-version: 21 - - uses: gradle/gradle-build-action@v2 + - uses: gradle/gradle-build-action@v3 with: gradle-home-cache-cleanup: true - name: Build release APK From ec466b0bb090d913e16213be6f3cf93216875a0c Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 27 Jan 2024 04:54:36 +0800 Subject: [PATCH 02/12] Update dependency io.nlopez.compose.rules:ktlint to v0.3.11 (#4017) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 3a041d1b5fb..add43cd88fc 100644 --- a/build.gradle +++ b/build.gradle @@ -422,7 +422,7 @@ spotless { kotlin { target("lawnchair/src/**/*.kt") ktlint().customRuleSets([ - "io.nlopez.compose.rules:ktlint:0.3.10", + "io.nlopez.compose.rules:ktlint:0.3.11", ]).editorConfigOverride([ "ktlint_compose_modifier-missing-check": "disabled", "ktlint_compose_compositionlocal-allowlist": "disabled", From cd58bc2228bc53b6c5ebe5805b0483938c6a48ae Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Sat, 27 Jan 2024 04:54:52 +0800 Subject: [PATCH 03/12] Update plugin com.gradle.enterprise to v3.16.2 (#4018) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- settings.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/settings.gradle b/settings.gradle index c6049f0d581..553420d4e4f 100644 --- a/settings.gradle +++ b/settings.gradle @@ -12,7 +12,7 @@ pluginManagement { // https://docs.gradle.com/enterprise/gradle-plugin/ plugins { - id "com.gradle.enterprise" version "3.16.1" + id "com.gradle.enterprise" version "3.16.2" } gradleEnterprise { From 7b3bb5bf3bf4c33f178b174232cfdbb527d73da7 Mon Sep 17 00:00:00 2001 From: Goooler Date: Sat, 27 Jan 2024 12:26:54 +0800 Subject: [PATCH 04/12] Use gradle/actions/setup-gradle v3 https://github.com/gradle/gradle-build-action/releases/tag/v3.0.0-rc.1 --- .github/workflows/ci.yml | 4 ++-- .github/workflows/release_update.yml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 99b9636f61d..2e4d0dc9426 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -38,7 +38,7 @@ jobs: with: distribution: 'zulu' java-version: 21 - - uses: gradle/gradle-build-action@v3 + - uses: gradle/actions/setup-gradle@v3 with: gradle-home-cache-cleanup: true - name: Write sign info @@ -69,7 +69,7 @@ jobs: with: distribution: 'zulu' java-version: 21 - - uses: gradle/gradle-build-action@v3 + - uses: gradle/actions/setup-gradle@v3 with: gradle-home-cache-cleanup: true - run: ./gradlew spotlessCheck diff --git a/.github/workflows/release_update.yml b/.github/workflows/release_update.yml index 50908ce1732..644ddb50585 100644 --- a/.github/workflows/release_update.yml +++ b/.github/workflows/release_update.yml @@ -31,7 +31,7 @@ jobs: with: distribution: 'zulu' java-version: 21 - - uses: gradle/gradle-build-action@v3 + - uses: gradle/actions/setup-gradle@v3 with: gradle-home-cache-cleanup: true - name: Build release APK From ee62c8774656a3364f9928fc06133c13caa9bf32 Mon Sep 17 00:00:00 2001 From: MrSluffy Date: Sun, 28 Jan 2024 07:24:26 +0800 Subject: [PATCH 05/12] Re-apply stretch effect in allapps --- lawnchair/src/app/lawnchair/ui/StretchRecyclerViewContainer.kt | 2 +- .../launcher3/allapps/ActivityAllAppsContainerView.java | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/lawnchair/src/app/lawnchair/ui/StretchRecyclerViewContainer.kt b/lawnchair/src/app/lawnchair/ui/StretchRecyclerViewContainer.kt index acbfcdbabce..44bfca94896 100644 --- a/lawnchair/src/app/lawnchair/ui/StretchRecyclerViewContainer.kt +++ b/lawnchair/src/app/lawnchair/ui/StretchRecyclerViewContainer.kt @@ -9,7 +9,7 @@ import androidx.recyclerview.widget.RecyclerView import com.android.launcher3.Utilities import com.android.launcher3.workprofile.PersonalWorkPagedView -class StretchRecyclerViewContainer @JvmOverloads constructor( +open class StretchRecyclerViewContainer @JvmOverloads constructor( context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0, diff --git a/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java b/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java index a36258499e2..3a709b1011f 100644 --- a/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java +++ b/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java @@ -100,6 +100,7 @@ import app.lawnchair.allapps.LawnchairAlphabeticalAppsList; import app.lawnchair.font.FontManager; +import app.lawnchair.ui.StretchRecyclerViewContainer; /** * All apps container view with search support for use in a dragging activity. @@ -107,7 +108,7 @@ * @param Type of context inflating all apps. */ public class ActivityAllAppsContainerView - extends SpringRelativeLayout implements DragSource, Insettable, + extends StretchRecyclerViewContainer implements DragSource, Insettable, OnDeviceProfileChangeListener, PersonalWorkSlidingTabStrip.OnActivePageChangedListener, ScrimView.ScrimDrawingController { From 0d0460d552d3db1693983d2882a884abbeb04832 Mon Sep 17 00:00:00 2001 From: Lawnchair Bot <115872683+lawnchair-bot@users.noreply.github.com> Date: Sun, 28 Jan 2024 03:48:24 +0330 Subject: [PATCH 06/12] New Crowdin translations by GitHub Action (#4023) Co-authored-by: Crowdin Bot --- lawnchair/res/values-af-rZA/strings.xml | 1 + lawnchair/res/values-am-rET/strings.xml | 1 + lawnchair/res/values-ar-rSA/strings.xml | 1 + lawnchair/res/values-b+sr+Latn/strings.xml | 1 + lawnchair/res/values-bn-rBD/strings.xml | 1 + lawnchair/res/values-ca-rES/strings.xml | 1 + lawnchair/res/values-cs-rCZ/strings.xml | 1 + lawnchair/res/values-da-rDK/strings.xml | 1 + lawnchair/res/values-de-rDE/strings.xml | 1 + lawnchair/res/values-el-rGR/strings.xml | 1 + lawnchair/res/values-en-rCA/strings.xml | 1 + lawnchair/res/values-es-rES/strings.xml | 1 + lawnchair/res/values-fa-rIR/strings.xml | 1 + lawnchair/res/values-fi-rFI/strings.xml | 1 + lawnchair/res/values-fil-rPH/strings.xml | 1 + lawnchair/res/values-fr-rFR/strings.xml | 1 + lawnchair/res/values-gl-rES/strings.xml | 1 + lawnchair/res/values-hi-rIN/strings.xml | 1 + lawnchair/res/values-hu-rHU/strings.xml | 1 + lawnchair/res/values-in-rID/strings.xml | 1 + lawnchair/res/values-it-rIT/strings.xml | 1 + lawnchair/res/values-iw-rIL/strings.xml | 1 + lawnchair/res/values-ja-rJP/strings.xml | 1 + lawnchair/res/values-kmr-rTR/strings.xml | 1 + lawnchair/res/values-ko-rKR/strings.xml | 1 + lawnchair/res/values-lt-rLT/strings.xml | 1 + lawnchair/res/values-ml-rIN/strings.xml | 1 + lawnchair/res/values-mr-rIN/strings.xml | 1 + lawnchair/res/values-nl-rNL/strings.xml | 1 + lawnchair/res/values-no-rNO/strings.xml | 1 + lawnchair/res/values-pl-rPL/strings.xml | 1 + lawnchair/res/values-pt-rBR/strings.xml | 1 + lawnchair/res/values-pt-rPT/strings.xml | 1 + lawnchair/res/values-ro-rRO/strings.xml | 1 + lawnchair/res/values-ru-rRU/strings.xml | 1 + lawnchair/res/values-sk-rSK/strings.xml | 1 + lawnchair/res/values-sl-rSI/strings.xml | 1 + lawnchair/res/values-sq-rAL/strings.xml | 1 + lawnchair/res/values-sr/strings.xml | 1 + lawnchair/res/values-sv-rSE/strings.xml | 1 + lawnchair/res/values-sw-rKE/strings.xml | 1 + lawnchair/res/values-ta-rIN/strings.xml | 1 + lawnchair/res/values-te-rIN/strings.xml | 1 + lawnchair/res/values-th-rTH/strings.xml | 1 + lawnchair/res/values-tr-rTR/strings.xml | 1 + lawnchair/res/values-uk-rUA/strings.xml | 1 + lawnchair/res/values-ur-rIN/strings.xml | 1 + lawnchair/res/values-ur-rPK/strings.xml | 1 + lawnchair/res/values-uz-rUZ/strings.xml | 1 + lawnchair/res/values-vi-rVN/strings.xml | 1 + lawnchair/res/values-zh-rCN/strings.xml | 1 + lawnchair/res/values-zh-rTW/strings.xml | 1 + 52 files changed, 52 insertions(+) diff --git a/lawnchair/res/values-af-rZA/strings.xml b/lawnchair/res/values-af-rZA/strings.xml index 7e6c429dfcf..999c40ff398 100644 --- a/lawnchair/res/values-af-rZA/strings.xml +++ b/lawnchair/res/values-af-rZA/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Statusbalk Wys Statusbalk Donker Statusbalk diff --git a/lawnchair/res/values-am-rET/strings.xml b/lawnchair/res/values-am-rET/strings.xml index 8b829afd73d..ef91e0049b0 100644 --- a/lawnchair/res/values-am-rET/strings.xml +++ b/lawnchair/res/values-am-rET/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Status Bar Show Status Bar Dark Status Bar diff --git a/lawnchair/res/values-ar-rSA/strings.xml b/lawnchair/res/values-ar-rSA/strings.xml index 6705a0105e2..5baf91273c0 100644 --- a/lawnchair/res/values-ar-rSA/strings.xml +++ b/lawnchair/res/values-ar-rSA/strings.xml @@ -186,6 +186,7 @@ قائمة منبثقة عرض زر القُفل إظهار إدخال إعدادات النظام + Show Edit Button شريط الحالة إظهار شريط الحالة شريط الحالة المظلم diff --git a/lawnchair/res/values-b+sr+Latn/strings.xml b/lawnchair/res/values-b+sr+Latn/strings.xml index 152792bd7a7..595b59dba1b 100644 --- a/lawnchair/res/values-b+sr+Latn/strings.xml +++ b/lawnchair/res/values-b+sr+Latn/strings.xml @@ -186,6 +186,7 @@ Iskačući meni Prikaži dugme za zaključavanje Prikaži sistemsko podešavanje + Show Edit Button Statusna traka Prikaži statusnu traku Tamna statusna traka diff --git a/lawnchair/res/values-bn-rBD/strings.xml b/lawnchair/res/values-bn-rBD/strings.xml index 53e76349004..c9edaaf51fb 100644 --- a/lawnchair/res/values-bn-rBD/strings.xml +++ b/lawnchair/res/values-bn-rBD/strings.xml @@ -186,6 +186,7 @@ পপআপ মেনু লক করার বোতাম দেখান সিস্টেম সেটিংস খোলার বোতাম দেখান + Show Edit Button স্ট্যাটাস বার স্ট্যাটাস বার দেখান কালো স্ট্যাটাস বার diff --git a/lawnchair/res/values-ca-rES/strings.xml b/lawnchair/res/values-ca-rES/strings.xml index 69c6bf70aa3..074c495b120 100644 --- a/lawnchair/res/values-ca-rES/strings.xml +++ b/lawnchair/res/values-ca-rES/strings.xml @@ -186,6 +186,7 @@ Menú emergent Mostrar botó de bloqueig Mostrar entrada de la configuració del sistema + Mostrar Botó d\'Edició Barra de estat Mostrar la barra d\'estat Barra d\'estat fosca diff --git a/lawnchair/res/values-cs-rCZ/strings.xml b/lawnchair/res/values-cs-rCZ/strings.xml index a3c8709127f..fee478e1546 100644 --- a/lawnchair/res/values-cs-rCZ/strings.xml +++ b/lawnchair/res/values-cs-rCZ/strings.xml @@ -186,6 +186,7 @@ Vyskakovací nabídka Zobrazit tlačítko uzamčení Zobrazit položku nastavení systému + Show Edit Button Stavový řádek Zobrazit stavový řádek Tmavý stavový řádek diff --git a/lawnchair/res/values-da-rDK/strings.xml b/lawnchair/res/values-da-rDK/strings.xml index 866207ec5b2..d15c75bbd33 100644 --- a/lawnchair/res/values-da-rDK/strings.xml +++ b/lawnchair/res/values-da-rDK/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Status Bar Vis Statuslinje Dark Status Bar diff --git a/lawnchair/res/values-de-rDE/strings.xml b/lawnchair/res/values-de-rDE/strings.xml index a02f24813b1..21eac0b595e 100644 --- a/lawnchair/res/values-de-rDE/strings.xml +++ b/lawnchair/res/values-de-rDE/strings.xml @@ -188,6 +188,7 @@ workspace_increase_max_grid_size_label Pop-up-Menü Sperrbutton anzeigen Systemeinstellungen anzeigen + Zeige Bearbeiten-Schaltfläche Statusleiste Suchleiste anzeigen Dunkle Statusleiste diff --git a/lawnchair/res/values-el-rGR/strings.xml b/lawnchair/res/values-el-rGR/strings.xml index df9e0198758..c23c46223eb 100644 --- a/lawnchair/res/values-el-rGR/strings.xml +++ b/lawnchair/res/values-el-rGR/strings.xml @@ -186,6 +186,7 @@ Αναδυόμενο Μενού Εμφάνιση Κουμπιού Κλειδώματος Εμφάνιση Καταχώρησης Ρυθμίσεων Συστήματος + Εμφάνιση Κουμπιού Επεξεργασίας Γραμμή Κατάστασης Εμφάνιση Γραμμής Κατάστασης Σκοτεινή Γραμμή Κατάστασης diff --git a/lawnchair/res/values-en-rCA/strings.xml b/lawnchair/res/values-en-rCA/strings.xml index 9ef85aa4997..0ad63f73c02 100644 --- a/lawnchair/res/values-en-rCA/strings.xml +++ b/lawnchair/res/values-en-rCA/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Status Bar Show Status Bar Dark Status Bar diff --git a/lawnchair/res/values-es-rES/strings.xml b/lawnchair/res/values-es-rES/strings.xml index 2cd492cf9e9..d293d7ca2ee 100644 --- a/lawnchair/res/values-es-rES/strings.xml +++ b/lawnchair/res/values-es-rES/strings.xml @@ -186,6 +186,7 @@ Menú emergente Mostrar botón de bloqueo Mostrar atajo a la configuración del sistema + Show Edit Button Barra de estado Mostrar Barra de estado Barra de Estado Oscura diff --git a/lawnchair/res/values-fa-rIR/strings.xml b/lawnchair/res/values-fa-rIR/strings.xml index 0ef9064ef53..83f72f77413 100644 --- a/lawnchair/res/values-fa-rIR/strings.xml +++ b/lawnchair/res/values-fa-rIR/strings.xml @@ -186,6 +186,7 @@ منو Pop-up نمایش دکمه قفل نمایش ورودی تنظیمات سیستم + Show Edit Button نوار وضعیت نشان‌دادن نوار وضعیت نوار وضعیت تاریک diff --git a/lawnchair/res/values-fi-rFI/strings.xml b/lawnchair/res/values-fi-rFI/strings.xml index ce38c50dfe6..04c90702834 100644 --- a/lawnchair/res/values-fi-rFI/strings.xml +++ b/lawnchair/res/values-fi-rFI/strings.xml @@ -186,6 +186,7 @@ Ponnahdusikkuna Näytä lukituspainike Näytä järjestelmäasetusten merkintä + Show Edit Button Tilapalkki Näytä tilapalkki Tumma Tilapalkki diff --git a/lawnchair/res/values-fil-rPH/strings.xml b/lawnchair/res/values-fil-rPH/strings.xml index c3031c10cd8..3611899df0a 100644 --- a/lawnchair/res/values-fil-rPH/strings.xml +++ b/lawnchair/res/values-fil-rPH/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Ipakita ang Lock Button I-show ang System Setting Entry + Show Edit Button Status Bar Ipakita ang Search Bar Madilim na Status Bar diff --git a/lawnchair/res/values-fr-rFR/strings.xml b/lawnchair/res/values-fr-rFR/strings.xml index 2a48ab76009..1987debee78 100644 --- a/lawnchair/res/values-fr-rFR/strings.xml +++ b/lawnchair/res/values-fr-rFR/strings.xml @@ -186,6 +186,7 @@ Menu pop-up Afficher le bouton de verrouillage Afficher l\'entrée des paramètres du système + Afficher le bouton Modifier Barre d\'état Afficher la barre d\'état Barre d\'état sombre diff --git a/lawnchair/res/values-gl-rES/strings.xml b/lawnchair/res/values-gl-rES/strings.xml index 106375b4854..bf2620c3abe 100644 --- a/lawnchair/res/values-gl-rES/strings.xml +++ b/lawnchair/res/values-gl-rES/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Status Bar Show Status Bar Dark Status Bar diff --git a/lawnchair/res/values-hi-rIN/strings.xml b/lawnchair/res/values-hi-rIN/strings.xml index 7d6715fd5e8..4b319ca1af3 100644 --- a/lawnchair/res/values-hi-rIN/strings.xml +++ b/lawnchair/res/values-hi-rIN/strings.xml @@ -186,6 +186,7 @@ पॉपअप मेनू लॉक बटन दिखाएं सिस्टम सेटिंग्स की प्रविष्टि दिखाएं + Show Edit Button स्टेटस बार स्टेट्स बार दिखाएँ गहरा स्टेट्स बार diff --git a/lawnchair/res/values-hu-rHU/strings.xml b/lawnchair/res/values-hu-rHU/strings.xml index 40ff8589cfc..1441c671219 100644 --- a/lawnchair/res/values-hu-rHU/strings.xml +++ b/lawnchair/res/values-hu-rHU/strings.xml @@ -186,6 +186,7 @@ Felugró menü Zárolási gomb megjelenítése Rendszerbeállítások elem megjelenítése + Show Edit Button Állapotsor Állapotsor megjelenítése Sötét állapotsor diff --git a/lawnchair/res/values-in-rID/strings.xml b/lawnchair/res/values-in-rID/strings.xml index 99719d4cdc5..a794d7ede12 100644 --- a/lawnchair/res/values-in-rID/strings.xml +++ b/lawnchair/res/values-in-rID/strings.xml @@ -186,6 +186,7 @@ Menu Pop-up Tampilkan Tombol Kunci Tampilkan Entri Pengaturan Sistem + Show Edit Button Bar Status Tampilkan bar status Tingkat Kegelapan Bar Status diff --git a/lawnchair/res/values-it-rIT/strings.xml b/lawnchair/res/values-it-rIT/strings.xml index 25814540d44..50f57c22a85 100644 --- a/lawnchair/res/values-it-rIT/strings.xml +++ b/lawnchair/res/values-it-rIT/strings.xml @@ -186,6 +186,7 @@ Menu a comparsa Mostra pulsante di blocco Mostra voce \"Impostazioni di sistema\" + Show Edit Button Barra di stato Mostra barra di stato Barra di stato scura diff --git a/lawnchair/res/values-iw-rIL/strings.xml b/lawnchair/res/values-iw-rIL/strings.xml index a93feca3343..3f74a50be31 100644 --- a/lawnchair/res/values-iw-rIL/strings.xml +++ b/lawnchair/res/values-iw-rIL/strings.xml @@ -186,6 +186,7 @@ תפריט Pop-up הצג כפתור נעילה הצג כניסה להגדרות המערכת + Show Edit Button סרגל מצב הצגת שורת מצב שורת מצב כהה diff --git a/lawnchair/res/values-ja-rJP/strings.xml b/lawnchair/res/values-ja-rJP/strings.xml index 109f1f5ee60..6e172712217 100644 --- a/lawnchair/res/values-ja-rJP/strings.xml +++ b/lawnchair/res/values-ja-rJP/strings.xml @@ -186,6 +186,7 @@ ポップアップメニュー ロックボタンを表示 システム設定項目を表示 + Show Edit Button ステータスバー ステータスバーを表示 暗いステータスバー diff --git a/lawnchair/res/values-kmr-rTR/strings.xml b/lawnchair/res/values-kmr-rTR/strings.xml index e311759a2d3..81bfbfad7f8 100644 --- a/lawnchair/res/values-kmr-rTR/strings.xml +++ b/lawnchair/res/values-kmr-rTR/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Status Bar Show Status Bar Dark Status Bar diff --git a/lawnchair/res/values-ko-rKR/strings.xml b/lawnchair/res/values-ko-rKR/strings.xml index 10c0aa921f0..e1f097bb83d 100644 --- a/lawnchair/res/values-ko-rKR/strings.xml +++ b/lawnchair/res/values-ko-rKR/strings.xml @@ -186,6 +186,7 @@ 팝업 메뉴 잠금 버튼 표시 시스템 설정 항목 표시 + Show Edit Button 상태표시줄 상태 표시줄 표시 어두운 상태표시줄 diff --git a/lawnchair/res/values-lt-rLT/strings.xml b/lawnchair/res/values-lt-rLT/strings.xml index ed368698588..428644f8305 100644 --- a/lawnchair/res/values-lt-rLT/strings.xml +++ b/lawnchair/res/values-lt-rLT/strings.xml @@ -186,6 +186,7 @@ Pop-up Menių Rodyti ūžrakto mygtuką Rodyti Sistemos Nustatymų eilutę + Show Edit Button Būsenos Juosta Rodyti statuso juosta Juoda statuso juosta diff --git a/lawnchair/res/values-ml-rIN/strings.xml b/lawnchair/res/values-ml-rIN/strings.xml index 3b10e160170..4406f722b38 100644 --- a/lawnchair/res/values-ml-rIN/strings.xml +++ b/lawnchair/res/values-ml-rIN/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button സ്റ്റാറ്റസ് ബാർ സ്റ്റാറ്റസ് ബാർ കാണിക്കുക ഇരുണ്ട സ്റ്റാറ്റസ് ബാർ diff --git a/lawnchair/res/values-mr-rIN/strings.xml b/lawnchair/res/values-mr-rIN/strings.xml index d1c51a6fbf1..0dca0d356c2 100644 --- a/lawnchair/res/values-mr-rIN/strings.xml +++ b/lawnchair/res/values-mr-rIN/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Status Bar स्थिती गज दाखवा Dark Status Bar diff --git a/lawnchair/res/values-nl-rNL/strings.xml b/lawnchair/res/values-nl-rNL/strings.xml index a49584c0701..82a796be717 100644 --- a/lawnchair/res/values-nl-rNL/strings.xml +++ b/lawnchair/res/values-nl-rNL/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Vergrendelingsknop Tonen Toon Systeeminstellingeninvoer + Show Edit Button Statusbalk Statusbalk weergeven Donkere Status Balk diff --git a/lawnchair/res/values-no-rNO/strings.xml b/lawnchair/res/values-no-rNO/strings.xml index b566426dcfd..905838b1e11 100644 --- a/lawnchair/res/values-no-rNO/strings.xml +++ b/lawnchair/res/values-no-rNO/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Statuslinje Show Status Bar Dark Status Bar diff --git a/lawnchair/res/values-pl-rPL/strings.xml b/lawnchair/res/values-pl-rPL/strings.xml index 229a602aba3..565f881d674 100644 --- a/lawnchair/res/values-pl-rPL/strings.xml +++ b/lawnchair/res/values-pl-rPL/strings.xml @@ -186,6 +186,7 @@ Wyskakujące menu Pokaż przycisk blokady Pokaż Wpis Ustawień Systemu + Pokaż przycisk Edytuj Pasek stanu Pokaż pasek stanu Ciemny pasek statusu diff --git a/lawnchair/res/values-pt-rBR/strings.xml b/lawnchair/res/values-pt-rBR/strings.xml index 9e97cba654b..9d5653d7de4 100644 --- a/lawnchair/res/values-pt-rBR/strings.xml +++ b/lawnchair/res/values-pt-rBR/strings.xml @@ -186,6 +186,7 @@ Menu Flutuante Mostrar Botão de Bloqueio Mostrar Entrada para Configurações do Sistema + Show Edit Button Barra de Status Mostrar barra de status Barra de Status Escura diff --git a/lawnchair/res/values-pt-rPT/strings.xml b/lawnchair/res/values-pt-rPT/strings.xml index 76d7b53fe32..1c3133d7f99 100644 --- a/lawnchair/res/values-pt-rPT/strings.xml +++ b/lawnchair/res/values-pt-rPT/strings.xml @@ -186,6 +186,7 @@ Menu Flutuante Mostrar Botão de Bloqueio Mostrar Entrada de Definições de Sistema + Mostrar Botão Editar Barra de Estado Mostrar Barra de Estado Barra de Estado Escura diff --git a/lawnchair/res/values-ro-rRO/strings.xml b/lawnchair/res/values-ro-rRO/strings.xml index e49fd1160e0..7aee1f32bb2 100644 --- a/lawnchair/res/values-ro-rRO/strings.xml +++ b/lawnchair/res/values-ro-rRO/strings.xml @@ -186,6 +186,7 @@ Meniu Pop-up Afișează butonul de blocare Afișare intrarea setărilor de sistem + Show Edit Button Bară de stare Arată bara de stare Bară de stare întunecată diff --git a/lawnchair/res/values-ru-rRU/strings.xml b/lawnchair/res/values-ru-rRU/strings.xml index 45e76ebc791..00144e9c22a 100644 --- a/lawnchair/res/values-ru-rRU/strings.xml +++ b/lawnchair/res/values-ru-rRU/strings.xml @@ -186,6 +186,7 @@ Всплывающее меню Показать кнопку блокировки Показать запись системных настроек + Show Edit Button Строка состояния Отображать строку состояния Темная строка состояния diff --git a/lawnchair/res/values-sk-rSK/strings.xml b/lawnchair/res/values-sk-rSK/strings.xml index 132af40ff8f..57466c2b727 100644 --- a/lawnchair/res/values-sk-rSK/strings.xml +++ b/lawnchair/res/values-sk-rSK/strings.xml @@ -186,6 +186,7 @@ Vyskakovacia ponuka Ukázať tlačidlo zamknutia Show System Settings Entry + Show Edit Button Stavový riadok Zobraziť stavový riadok Tmavý stavový riadok diff --git a/lawnchair/res/values-sl-rSI/strings.xml b/lawnchair/res/values-sl-rSI/strings.xml index 1fbc096fb77..140e36b8fdd 100644 --- a/lawnchair/res/values-sl-rSI/strings.xml +++ b/lawnchair/res/values-sl-rSI/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Statusna vrstica Pokaži statusno vrstico Dark Status Bar diff --git a/lawnchair/res/values-sq-rAL/strings.xml b/lawnchair/res/values-sq-rAL/strings.xml index 4c0e6b2cae6..aaefbd2b982 100644 --- a/lawnchair/res/values-sq-rAL/strings.xml +++ b/lawnchair/res/values-sq-rAL/strings.xml @@ -186,6 +186,7 @@ Menuja e Pop-up Shfaq butonin kyçës Shfaq hyrjen e opsioneve të sistemit + Show Edit Button Shiriti i Statusit Shfaq Shiritin e Statusit Shiriti i Statusit i Zi diff --git a/lawnchair/res/values-sr/strings.xml b/lawnchair/res/values-sr/strings.xml index aeea00d73a0..aaa48a60dea 100644 --- a/lawnchair/res/values-sr/strings.xml +++ b/lawnchair/res/values-sr/strings.xml @@ -186,6 +186,7 @@ Искачући мени Прикажи дугме за закључавање Прикажи системско подешавање + Show Edit Button Статусна трака Прикажи статусну траку Тамна статусна трака diff --git a/lawnchair/res/values-sv-rSE/strings.xml b/lawnchair/res/values-sv-rSE/strings.xml index d111a138841..43f7a38f14d 100644 --- a/lawnchair/res/values-sv-rSE/strings.xml +++ b/lawnchair/res/values-sv-rSE/strings.xml @@ -186,6 +186,7 @@ Snabbmeny Visa låsknapp Visa systeminställningar + Visa redigeringsknapp Statusfält Visa statusfält Mörkt statusfält diff --git a/lawnchair/res/values-sw-rKE/strings.xml b/lawnchair/res/values-sw-rKE/strings.xml index b158d1da99f..264cafc08fd 100644 --- a/lawnchair/res/values-sw-rKE/strings.xml +++ b/lawnchair/res/values-sw-rKE/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Upau wa Hali Onyesha Upau wa Hali Upau wa Hali ya Giza diff --git a/lawnchair/res/values-ta-rIN/strings.xml b/lawnchair/res/values-ta-rIN/strings.xml index 95a5cf17a69..c388dee03fd 100644 --- a/lawnchair/res/values-ta-rIN/strings.xml +++ b/lawnchair/res/values-ta-rIN/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button நிலைப்பட்டி நிலைப்பலகையை காட்டு இருண்ட நிலைப்பட்டி diff --git a/lawnchair/res/values-te-rIN/strings.xml b/lawnchair/res/values-te-rIN/strings.xml index bf46575a63f..7297be01a17 100644 --- a/lawnchair/res/values-te-rIN/strings.xml +++ b/lawnchair/res/values-te-rIN/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Status Bar Show Status Bar Dark Status Bar diff --git a/lawnchair/res/values-th-rTH/strings.xml b/lawnchair/res/values-th-rTH/strings.xml index ac33fff7ab6..1d3fc106446 100644 --- a/lawnchair/res/values-th-rTH/strings.xml +++ b/lawnchair/res/values-th-rTH/strings.xml @@ -186,6 +186,7 @@ เมนูป็อปอัพ แสดงปุ่มล็อค แสดงรายการตั้งค่าระบบ + Show Edit Button แถบสถานะ แสดงแถบสถานะ แถบสถานะสีดำ diff --git a/lawnchair/res/values-tr-rTR/strings.xml b/lawnchair/res/values-tr-rTR/strings.xml index a6685da6450..d143f2a5169 100644 --- a/lawnchair/res/values-tr-rTR/strings.xml +++ b/lawnchair/res/values-tr-rTR/strings.xml @@ -186,6 +186,7 @@ Açılır menü Kilit tuşunu göster Sistem ayarları girişini göster + Show Edit Button Durum Çubuğu Durum Çubuğunu Göster Koyu Durum Çubuğu diff --git a/lawnchair/res/values-uk-rUA/strings.xml b/lawnchair/res/values-uk-rUA/strings.xml index e2c86a7b023..4e7f5fd7a14 100644 --- a/lawnchair/res/values-uk-rUA/strings.xml +++ b/lawnchair/res/values-uk-rUA/strings.xml @@ -186,6 +186,7 @@ Спливаюче меню Показувати кнопку блокування Показувати запис про системні налаштування + Show Edit Button Рядок стану Показати рядок стану Темний рядок стану diff --git a/lawnchair/res/values-ur-rIN/strings.xml b/lawnchair/res/values-ur-rIN/strings.xml index 06bd9a36993..2f52564d105 100644 --- a/lawnchair/res/values-ur-rIN/strings.xml +++ b/lawnchair/res/values-ur-rIN/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Status Bar Show Status Bar Dark Status Bar diff --git a/lawnchair/res/values-ur-rPK/strings.xml b/lawnchair/res/values-ur-rPK/strings.xml index f7c8176167f..5ebb610d1c1 100644 --- a/lawnchair/res/values-ur-rPK/strings.xml +++ b/lawnchair/res/values-ur-rPK/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button اسٹیٹس بار Show Status Bar Dark Status Bar diff --git a/lawnchair/res/values-uz-rUZ/strings.xml b/lawnchair/res/values-uz-rUZ/strings.xml index 55c5dc10090..f37c4eed1e1 100644 --- a/lawnchair/res/values-uz-rUZ/strings.xml +++ b/lawnchair/res/values-uz-rUZ/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Show Lock Button Show System Settings Entry + Show Edit Button Status Bar Show Status Bar Dark Status Bar diff --git a/lawnchair/res/values-vi-rVN/strings.xml b/lawnchair/res/values-vi-rVN/strings.xml index 826ab7443a6..4b89e3d24f0 100644 --- a/lawnchair/res/values-vi-rVN/strings.xml +++ b/lawnchair/res/values-vi-rVN/strings.xml @@ -186,6 +186,7 @@ Pop-up Menu Hiển thị phím khóa Hiển thị mục cài đặt hệ thống + Show Edit Button Thanh trạng thái Hiện thanh trạng thái Thanh trạng thái tối màu diff --git a/lawnchair/res/values-zh-rCN/strings.xml b/lawnchair/res/values-zh-rCN/strings.xml index 94da6c9f3ba..2af73b2c0e0 100644 --- a/lawnchair/res/values-zh-rCN/strings.xml +++ b/lawnchair/res/values-zh-rCN/strings.xml @@ -186,6 +186,7 @@ 弹出菜单 显示锁定桌面按钮 显示系统设置项目 + Show Edit Button 状态栏 显示状态栏 深色状态栏 diff --git a/lawnchair/res/values-zh-rTW/strings.xml b/lawnchair/res/values-zh-rTW/strings.xml index 38b88dc9b31..46e26795263 100644 --- a/lawnchair/res/values-zh-rTW/strings.xml +++ b/lawnchair/res/values-zh-rTW/strings.xml @@ -186,6 +186,7 @@ 彈出式選單 顯示鎖定桌面按鈕 顯示系統設定 + Show Edit Button Status Bar 顯示狀態列 深色狀態列 From d2bee69a0a98400a676958996f8e8f93ae24b50c Mon Sep 17 00:00:00 2001 From: nift4 Date: Wed, 23 Aug 2023 18:29:52 +0200 Subject: [PATCH 07/12] Launcher3: disable live tile - fix blur flicker As per minaripenguin's now reverted commits Change-Id: I4fc0918e5b39d225e09841fb2dc53ff52df87932 --- .../src/com/android/quickstep/util/TaskViewSimulator.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java b/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java index a6881d0a9b8..7298a839d0f 100644 --- a/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java +++ b/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java @@ -419,9 +419,7 @@ public void onBuildTargetParams( // conflict with layers that WM core positions (ie. the input consumers). For shell // transitions, the animation leashes are reparented to an animation container so we // can bump layers as needed. - builder.setLayer(mDrawsBelowRecents - ? Integer.MIN_VALUE + app.prefixOrderIndex - : ENABLE_SHELL_TRANSITIONS ? Integer.MAX_VALUE : 0); + builder.setLayer(0); } } From 589193ba1950ecbc9f3fdd4d46a84c94215b0420 Mon Sep 17 00:00:00 2001 From: Ido Ben-Hur Date: Fri, 24 Dec 2021 20:48:09 +0200 Subject: [PATCH 08/12] IconPalette: Don't crash when the app gives us an invalid color For notification background. Telegram does it for example. Just assume contrast is fine in this case. Log: E AndroidRuntime: FATAL EXCEPTION: main E AndroidRuntime: Process: com.android.launcher3, PID: 2885 E AndroidRuntime: java.lang.IllegalArgumentException: background can not be translucent: #0 E AndroidRuntime: at androidx.core.graphics.ColorUtils.calculateContrast(ColorUtils.java:161) E AndroidRuntime: at com.android.launcher3.graphics.IconPalette.findContrastColor(IconPalette.java:126) E AndroidRuntime: at com.android.launcher3.graphics.IconPalette.ensureTextContrast(IconPalette.java:112) E AndroidRuntime: at com.android.launcher3.graphics.IconPalette.resolveContrastColor(IconPalette.java:71) E AndroidRuntime: at com.android.launcher3.notification.NotificationInfo.getIconForBackground(NotificationInfo.java:124) E AndroidRuntime: at com.android.launcher3.notification.NotificationMainView.applyNotificationInfo(NotificationMainView.java:207) E AndroidRuntime: at com.android.launcher3.notification.NotificationContainer.applyNotificationInfos(NotificationContainer.java:156) E AndroidRuntime: at com.android.launcher3.popup.PopupContainerWithArrow.applyNotificationInfos(PopupContainerWithArrow.java:353) E AndroidRuntime: at com.android.launcher3.popup.PopupPopulator.lambda$createUpdateRunnable$1(PopupPopulator.java:150) E AndroidRuntime: at com.android.launcher3.popup.PopupPopulator$$ExternalSyntheticLambda0.run(Unknown Source:4) ... Signed-off-by: Omkar Chandorkar Change-Id: I15e61c0610d2676467b57e636454b36aa628007e --- src/com/android/launcher3/graphics/IconPalette.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/com/android/launcher3/graphics/IconPalette.java b/src/com/android/launcher3/graphics/IconPalette.java index 778b32a863c..bbad36d3e96 100644 --- a/src/com/android/launcher3/graphics/IconPalette.java +++ b/src/com/android/launcher3/graphics/IconPalette.java @@ -26,6 +26,8 @@ import com.android.launcher3.R; import com.android.launcher3.util.Themes; +import java.lang.IllegalArgumentException; + /** * Contains colors based on the dominant color of an icon. */ @@ -107,7 +109,15 @@ private static String contrastChange(int colorOld, int colorNew, int bg) { * This was copied from com.android.internal.util.NotificationColorUtil. */ private static int ensureTextContrast(int color, int bg) { - return findContrastColor(color, bg, 4.5); + int res = color; + try { + res = findContrastColor(color, bg, 4.5); + } catch (IllegalArgumentException e) { + // Just returning the same color in this case + Log.e(TAG, "ensureTextContrast: Invalid fg/bg color int." + + " fg=" + color + " bg=" + bg); + } + return res; } /** * Finds a suitable color such that there's enough contrast. From 82d92410acf5539ec89c57d0fa2bdc8861bdbb0e Mon Sep 17 00:00:00 2001 From: Tommy Webb Date: Mon, 23 Oct 2023 12:57:04 -0400 Subject: [PATCH 09/12] Fix launching widget configuration Background activity launch (BAL) hardening in Android 14 prevents the creation of widgets if background launching isn't explicitly allowed for the widget configuration activity. Issue: calyxos#1917 Change-Id: Ic8696154bab49de78d1554d61a64b634766ae469 --- .../widget/LauncherWidgetHolder.java | 80 ++++++++++++------- 1 file changed, 51 insertions(+), 29 deletions(-) diff --git a/src/com/android/launcher3/widget/LauncherWidgetHolder.java b/src/com/android/launcher3/widget/LauncherWidgetHolder.java index 5fec40fec67..125b9d71e87 100644 --- a/src/com/android/launcher3/widget/LauncherWidgetHolder.java +++ b/src/com/android/launcher3/widget/LauncherWidgetHolder.java @@ -19,6 +19,7 @@ import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; +import android.app.ActivityOptions; import android.appwidget.AppWidgetHost; import android.appwidget.AppWidgetHostView; import android.appwidget.AppWidgetManager; @@ -44,6 +45,7 @@ import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.testing.TestLogging; import com.android.launcher3.testing.shared.TestProtocol; +import com.android.launcher3.util.ActivityOptionsWrapper; import com.android.launcher3.util.ResourceBasedOverride; import com.android.launcher3.widget.custom.CustomWidgetManager; @@ -62,8 +64,7 @@ public class LauncherWidgetHolder { protected static final int FLAG_STATE_IS_NORMAL = 1 << 1; protected static final int FLAG_ACTIVITY_STARTED = 1 << 2; protected static final int FLAG_ACTIVITY_RESUMED = 1 << 3; - private static final int FLAGS_SHOULD_LISTEN = - FLAG_STATE_IS_NORMAL | FLAG_ACTIVITY_STARTED | FLAG_ACTIVITY_RESUMED; + private static final int FLAGS_SHOULD_LISTEN = FLAG_STATE_IS_NORMAL | FLAG_ACTIVITY_STARTED | FLAG_ACTIVITY_RESUMED; @NonNull private final Context mContext; @@ -269,33 +270,45 @@ private void sendActionCancelled(final BaseActivity activity, final int requestC () -> activity.onActivityResult(requestCode, RESULT_CANCELED, null)); } + private Bundle getDefaultConfigurationActivityOptions() { + // Must allow background activity start for U. + return ActivityOptions.makeBasic() + .setPendingIntentBackgroundActivityStartMode( + ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED) + .toBundle(); + } + /** - * Returns an {@link android.app.ActivityOptions} bundle from the {code activity} for launching - * the configuration of the {@code widgetId} app widget, or null of options cannot be produced. + * Returns an {@link android.app.ActivityOptions} bundle from the {code + * activity} for launching + * the configuration of the {@code widgetId} app widget, or default + * configuration options + * if they cannot be produced. */ - @Nullable + @NonNull protected Bundle getConfigurationActivityOptions(@NonNull BaseDraggingActivity activity, int widgetId) { LauncherAppWidgetHostView view = mViews.get(widgetId); - if (view == null) { - return activity.makeDefaultActivityOptions( - -1 /* SPLASH_SCREEN_STYLE_UNDEFINED */).toBundle(); - } + if (view == null) + return getDefaultConfigurationActivityOptions(); Object tag = view.getTag(); - if (!(tag instanceof ItemInfo)) { - return activity.makeDefaultActivityOptions( - -1 /* SPLASH_SCREEN_STYLE_UNDEFINED */).toBundle(); - } - Bundle bundle = activity.getActivityLaunchOptions(view, (ItemInfo) tag).toBundle(); + if (!(tag instanceof ItemInfo)) + return getDefaultConfigurationActivityOptions(); + ActivityOptionsWrapper activityOptionsWrapper = activity.getActivityLaunchOptions(view, (ItemInfo) tag); + // Must allow background activity start for U. + activityOptionsWrapper.options.setPendingIntentBackgroundActivityStartMode( + ActivityOptions.MODE_BACKGROUND_ACTIVITY_START_ALLOWED); + Bundle bundle = activityOptionsWrapper.toBundle(); bundle.putInt(KEY_SPLASH_SCREEN_STYLE, SPLASH_SCREEN_STYLE_EMPTY); return bundle; } /** * Starts the binding flow for the widget - * @param activity The activity for which to bind the widget + * + * @param activity The activity for which to bind the widget * @param appWidgetId The ID of the widget - * @param info The {@link AppWidgetProviderInfo} of the widget + * @param info The {@link AppWidgetProviderInfo} of the widget * @param requestCode The request code */ public void startBindFlow(@NonNull BaseActivity activity, @@ -354,9 +367,10 @@ public int[] getAppWidgetIds() { /** * Create a view for the specified app widget - * @param context The activity context for which the view is created + * + * @param context The activity context for which the view is created * @param appWidgetId The ID of the widget - * @param appWidget The {@link LauncherAppWidgetProviderInfo} of the widget + * @param appWidget The {@link LauncherAppWidgetProviderInfo} of the widget * @return A view for the widget */ @NonNull @@ -368,11 +382,13 @@ public AppWidgetHostView createView(@NonNull Context context, int appWidgetId, CustomWidgetManager.INSTANCE.get(context).onViewCreated(lahv); return lahv; } else if ((mFlags & FLAG_LISTENING) == 0) { - // Since the launcher hasn't started listening to widget updates, we can't simply call + // Since the launcher hasn't started listening to widget updates, we can't + // simply call // super.createView here because the later will make a binder call to retrieve // RemoteViews from system process. - // TODO: have launcher always listens to widget updates in background so that this - // check can be removed altogether. + // TODO: have launcher always listens to widget updates in background so that + // this + // check can be removed altogether. if (FeatureFlags.ENABLE_CACHED_WIDGET.get()) { final RemoteViews cachedRemoteViews = getCachedRemoteViews(appWidgetId); if (cachedRemoteViews != null) { @@ -386,7 +402,8 @@ public AppWidgetHostView createView(@NonNull Context context, int appWidgetId, return view; } } - // If cache misses or not enabled, a placeholder for the widget will be returned. + // If cache misses or not enabled, a placeholder for the widget will be + // returned. DeferredAppWidgetHostView view = new DeferredAppWidgetHostView(context); view.setAppWidget(appWidgetId, appWidget); mViews.put(appWidgetId, view); @@ -399,7 +416,8 @@ public AppWidgetHostView createView(@NonNull Context context, int appWidgetId, throw new RuntimeException(e); } - // If the exception was thrown while fetching the remote views, let the view stay. + // If the exception was thrown while fetching the remote views, let the view + // stay. // This will ensure that if the widget posts a valid update later, the view // will update. LauncherAppWidgetHostView view = mViews.get(appWidgetId); @@ -425,9 +443,10 @@ public interface ProviderChangedListener { /** * Called to return a proper view when creating a view - * @param context The context for which the widget view is created + * + * @param context The context for which the widget view is created * @param appWidgetId The ID of the added widget - * @param appWidget The provider info of the added widget + * @param appWidget The provider info of the added widget * @return A view for the specified app widget */ @NonNull @@ -438,12 +457,14 @@ public LauncherAppWidgetHostView onCreateView(Context context, int appWidgetId, view = getPendingView(appWidgetId); removePendingView(appWidgetId); } else if (mDeferredViews.get(appWidgetId) != null) { - // In case the widget view is deferred, we will simply return the deferred view as - // opposed to instantiate a new instance of LauncherAppWidgetHostView since launcher + // In case the widget view is deferred, we will simply return the deferred view + // as + // opposed to instantiate a new instance of LauncherAppWidgetHostView since + // launcher // already added the former to the workspace. view = mDeferredViews.get(appWidgetId); } else { - view = new LawnchairAppWidgetHostView (context); + view = new LawnchairAppWidgetHostView(context); } mViews.put(appWidgetId, view); return view; @@ -470,7 +491,8 @@ public boolean isListening() { } /** - * Sets or unsets a flag the can change whether the widget host should be in the listening + * Sets or unsets a flag the can change whether the widget host should be in the + * listening * state. */ private void setShouldListenFlag(int flag, boolean on) { From 0681d1149d3a034ce032f6da0dbb39599f57bbe1 Mon Sep 17 00:00:00 2001 From: "ot_vishavjot.kaur" Date: Fri, 16 Jun 2023 17:21:55 +0800 Subject: [PATCH 10/12] Launcher3: Fix launcher ui interface overlap and frozen problem Press recent key and quickly click recent screen background, then Recent List task doesn't disappear and overlaps on Homescreen. When there is no time for Background State to change to Overview State, and gotoState(Normal) API is called, then let Background State transition to Normal state, and force Normal state to not transition to Overview state. Bug: 287897684 Test: manually 1. Launch any app 2. Press Recent key 3. Click on same app task on recent list 4. Press Recent key 5. As soon as recent list appears, quickly click on background of Recent screen Change-Id: I21f71a49cafe83bb8c916eb240d8db9246a13487 Signed-off-by: Dmitrii --- .../com/android/quickstep/BaseActivityInterface.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/quickstep/src/com/android/quickstep/BaseActivityInterface.java b/quickstep/src/com/android/quickstep/BaseActivityInterface.java index b0557b4de39..21e12c7b739 100644 --- a/quickstep/src/com/android/quickstep/BaseActivityInterface.java +++ b/quickstep/src/com/android/quickstep/BaseActivityInterface.java @@ -525,9 +525,14 @@ public void createActivityInterface(long transitionLength) { // Since we are changing the start position of the UI, reapply the state, at the // end - controller.setEndAction(() -> mActivity.getStateManager().goToState( - controller.getInterpolatedProgress() > 0.5 ? mTargetState : mBackgroundState, - false)); + controller.setEndAction(() -> { + if (mBackgroundState == mActivity.getStateManager().getState()) { + mActivity.getStateManager().goToState( + controller.getInterpolatedProgress() > 0.5 ? mTargetState + : mBackgroundState, + false); + } + }); RecentsView recentsView = mActivity.getOverviewPanel(); AnimatorControllerWithResistance controllerWithResistance = AnimatorControllerWithResistance From 97c45a0a26b62ff97b48d6c7df6ad01b46f6a369 Mon Sep 17 00:00:00 2001 From: Anle Pan Date: Mon, 24 Apr 2023 14:23:08 +0000 Subject: [PATCH 11/12] Launcher3: Fix monkey crash in RecentsLaunchAnimator It will appear a null object crash in quickstep launch when monkey test. Althoough the 'View v' is declared as NonNull, but there is a probability that it will return a null object after the 'isTaskViewVisible' judgement in 'findTaskViewToLaunch', Make a judgement before use to avoid crash. Change-Id: I4606853325641feaf26a79791cce2514cee80d4c Signed-off-by: Anle Pan Signed-off-by: Pranav Vashi --- quickstep/src/com/android/quickstep/TaskViewUtils.java | 1 + 1 file changed, 1 insertion(+) diff --git a/quickstep/src/com/android/quickstep/TaskViewUtils.java b/quickstep/src/com/android/quickstep/TaskViewUtils.java index a5ab28cbcbe..289801c1a08 100644 --- a/quickstep/src/com/android/quickstep/TaskViewUtils.java +++ b/quickstep/src/com/android/quickstep/TaskViewUtils.java @@ -647,6 +647,7 @@ public static void composeRecentsLaunchAnimator(@NonNull AnimatorSet anim, @NonN boolean skipLauncherChanges = !launcherClosing; TaskView taskView = findTaskViewToLaunch(recentsView, v, appTargets); + if (taskView == null) return; PendingAnimation pa = new PendingAnimation(RECENTS_LAUNCH_DURATION); createRecentsWindowAnimator(recentsView, taskView, skipLauncherChanges, appTargets, wallpaperTargets, nonAppTargets, depthController, pa); From b585d3fa64d370c942ebccdb86400d1dd3b93d26 Mon Sep 17 00:00:00 2001 From: yingrenw Date: Tue, 3 Jan 2017 20:05:15 +0800 Subject: [PATCH 12/12] Launcher3: Stability NullPointer issue Description: Compute a child location by recursion, it may not have parent view. When the child doesn't have parent, should break the recursive. Change-Id: I8707712b85c10bf1c1d3860c5b8323aefd455cf2 CRs-Fixed: 1104931 Signed-off-by: Pranav Vashi Signed-off-by: Mohammad Hasan Keramat J --- src/com/android/launcher3/keyboard/ViewGroupFocusHelper.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/android/launcher3/keyboard/ViewGroupFocusHelper.java b/src/com/android/launcher3/keyboard/ViewGroupFocusHelper.java index fde220cbf69..b6fcdf41439 100644 --- a/src/com/android/launcher3/keyboard/ViewGroupFocusHelper.java +++ b/src/com/android/launcher3/keyboard/ViewGroupFocusHelper.java @@ -54,7 +54,7 @@ private void computeLocationRelativeToContainer(View child, Rect outRect) { outRect.left += child.getX(); outRect.top += child.getY(); - if (parent != mContainer) { + if (parent != null && parent != mContainer) { if (parent instanceof PagedView) { PagedView page = (PagedView) parent; outRect.left -= page.getScrollForPage(page.indexOfChild(child));