From 2ca9e36c6546c7906a7e3f6337a0f2ee115da980 Mon Sep 17 00:00:00 2001 From: MrSluffy Date: Fri, 20 Dec 2024 14:38:11 +0800 Subject: [PATCH] properly toggle dynamic hide statbar clock --- lawnchair/src/app/lawnchair/LawnchairLauncher.kt | 2 +- .../destinations/HomeScreenPreferences.kt | 14 +++++++------- src/com/android/launcher3/Workspace.java | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/lawnchair/src/app/lawnchair/LawnchairLauncher.kt b/lawnchair/src/app/lawnchair/LawnchairLauncher.kt index 6e6c613e6a..2ce11525af 100644 --- a/lawnchair/src/app/lawnchair/LawnchairLauncher.kt +++ b/lawnchair/src/app/lawnchair/LawnchairLauncher.kt @@ -176,7 +176,7 @@ class LawnchairLauncher : QuickstepLauncher() { } }.launchIn(scope = lifecycleScope) - preferenceManager2.statusBarClock.get().distinctUntilChanged().onEach { + preferenceManager2.statusBarClock.get().onEach { with(launcher.stateManager) { if (it) { addStateListener(statusBarClockListener) diff --git a/lawnchair/src/app/lawnchair/ui/preferences/destinations/HomeScreenPreferences.kt b/lawnchair/src/app/lawnchair/ui/preferences/destinations/HomeScreenPreferences.kt index 8e5231199b..475c420f33 100644 --- a/lawnchair/src/app/lawnchair/ui/preferences/destinations/HomeScreenPreferences.kt +++ b/lawnchair/src/app/lawnchair/ui/preferences/destinations/HomeScreenPreferences.kt @@ -161,13 +161,13 @@ fun HomeScreenPreferences( adapter = prefs2.darkStatusBar.getAdapter(), label = stringResource(id = R.string.dark_status_bar_label), ) - if (LawnchairApp.isRecentsEnabled) { - SwitchPreference( - adapter = prefs2.statusBarClock.getAdapter(), - label = stringResource(id = R.string.status_bar_clock_label), - description = stringResource(id = R.string.status_bar_clock_description), - ) - } + } + ExpandAndShrink(visible = showStatusBarAdapter.state.value && LawnchairApp.isRecentsEnabled) { + SwitchPreference( + adapter = prefs2.statusBarClock.getAdapter(), + label = stringResource(id = R.string.status_bar_clock_label), + description = stringResource(id = R.string.status_bar_clock_description), + ) } } PreferenceGroup(heading = stringResource(id = R.string.icons)) { diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 20c6de8c68..a143473669 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -619,7 +619,7 @@ public class Workspace extends PagedView } public void updateStatusbarClock() { - if (mCurrentPage == 0) { + if (mCurrentPage == 0 && PreferenceExtensionsKt.firstBlocking(mPreferenceManager2.getStatusBarClock())) { LawnchairAppKt.getLawnchairApp(mLauncher).hideClockInStatusBar(); } else { LawnchairAppKt.getLawnchairApp(mLauncher).restoreClockInStatusBar();