diff --git a/lawnchair/src/app/lawnchair/ui/preferences/HomeScreenPreferences.kt b/lawnchair/src/app/lawnchair/ui/preferences/HomeScreenPreferences.kt index 9c6b829dc3..460501429d 100644 --- a/lawnchair/src/app/lawnchair/ui/preferences/HomeScreenPreferences.kt +++ b/lawnchair/src/app/lawnchair/ui/preferences/HomeScreenPreferences.kt @@ -50,10 +50,14 @@ fun HomeScreenPreferences() { val prefs2 = preferenceManager2() val scope = rememberCoroutineScope() PreferenceLayout(label = stringResource(id = R.string.home_screen_label)) { + val lockHomeScreenAdapter = prefs2.lockHomeScreen.getAdapter() PreferenceGroup(heading = stringResource(id = R.string.general_label)) { + val addIconToHomeAdapter = prefs.addIconToHome.getAdapter() SwitchPreference( - prefs.addIconToHome.getAdapter(), + checked = !lockHomeScreenAdapter.state.value && addIconToHomeAdapter.state.value, + onCheckedChange = addIconToHomeAdapter::onChange, label = stringResource(id = R.string.auto_add_shortcuts_label), + enabled = lockHomeScreenAdapter.state.value.not(), ) SwitchPreference( prefs.wallpaperScrolling.getAdapter(), @@ -90,7 +94,7 @@ fun HomeScreenPreferences() { subtitle = stringResource(id = R.string.x_by_y, columns, rows), ) SwitchPreference( - adapter = prefs2.lockHomeScreen.getAdapter(), + adapter = lockHomeScreenAdapter, label = stringResource(id = R.string.home_screen_lock), ) } diff --git a/src/com/android/launcher3/SessionCommitReceiver.java b/src/com/android/launcher3/SessionCommitReceiver.java index 558538c48a..4efa798909 100644 --- a/src/com/android/launcher3/SessionCommitReceiver.java +++ b/src/com/android/launcher3/SessionCommitReceiver.java @@ -31,6 +31,9 @@ import com.android.launcher3.logging.FileLog; import com.android.launcher3.model.ItemInstallQueue; import com.android.launcher3.pm.InstallSessionHelper; import com.android.launcher3.util.Executors; +import com.patrykmichalik.preferencemanager.PreferenceExtensionsKt; + +import app.lawnchair.preferences2.PreferenceManager2; /** * BroadcastReceiver to handle session commit intent. @@ -81,6 +84,7 @@ public class SessionCommitReceiver extends BroadcastReceiver { } public static boolean isEnabled(Context context) { + if (PreferenceExtensionsKt.firstBlocking(PreferenceManager2.getInstance(context).getLockHomeScreen())) return false; return Utilities.getPrefs(context).getBoolean(ADD_ICON_PREFERENCE_KEY, true); } }