diff --git a/lawnchair/res/values/strings.xml b/lawnchair/res/values/strings.xml
index 72a2ce5c60..802290de37 100644
--- a/lawnchair/res/values/strings.xml
+++ b/lawnchair/res/values/strings.xml
@@ -184,6 +184,9 @@
Icon swipe gestures
Perform actions when swiping left or right on icons instead of moving the home screen
+ Deck layout
+ Show a layout option to hide the app drawer and automatically add new apps to the home screen
+
Lock/unlock
Prevent selected app from closing when pressing \"Clear all\"
diff --git a/lawnchair/src/app/lawnchair/preferences2/PreferenceManager2.kt b/lawnchair/src/app/lawnchair/preferences2/PreferenceManager2.kt
index d719689cf8..e5bde16e51 100644
--- a/lawnchair/src/app/lawnchair/preferences2/PreferenceManager2.kt
+++ b/lawnchair/src/app/lawnchair/preferences2/PreferenceManager2.kt
@@ -679,6 +679,11 @@ class PreferenceManager2 private constructor(private val context: Context) :
onSet = { reloadHelper.reloadIcons() },
)
+ val showDeckLayout = preference(
+ key = booleanPreferencesKey(name = "show_deck_layout"),
+ defaultValue = false,
+ )
+
val enableLabelInDock = preference(
key = booleanPreferencesKey(name = "enable_label_dock"),
defaultValue = false,
diff --git a/lawnchair/src/app/lawnchair/ui/preferences/destinations/ExperimentalFeaturesPreferences.kt b/lawnchair/src/app/lawnchair/ui/preferences/destinations/ExperimentalFeaturesPreferences.kt
index d2c7001597..f350bef78a 100644
--- a/lawnchair/src/app/lawnchair/ui/preferences/destinations/ExperimentalFeaturesPreferences.kt
+++ b/lawnchair/src/app/lawnchair/ui/preferences/destinations/ExperimentalFeaturesPreferences.kt
@@ -51,6 +51,11 @@ fun ExperimentalFeaturesPreferences(
label = stringResource(R.string.icon_swipe_gestures),
description = stringResource(R.string.icon_swipe_gestures_description),
)
+ SwitchPreference(
+ adapter = prefs2.showDeckLayout.getAdapter(),
+ label = stringResource(R.string.show_deck_layout),
+ description = stringResource(R.string.show_deck_layout_description),
+ )
val enableWallpaperBlur = prefs.enableWallpaperBlur.getAdapter()
diff --git a/lawnchair/src/app/lawnchair/ui/preferences/destinations/HomeScreenPreferences.kt b/lawnchair/src/app/lawnchair/ui/preferences/destinations/HomeScreenPreferences.kt
index 66e5f75894..60fbb457a6 100644
--- a/lawnchair/src/app/lawnchair/ui/preferences/destinations/HomeScreenPreferences.kt
+++ b/lawnchair/src/app/lawnchair/ui/preferences/destinations/HomeScreenPreferences.kt
@@ -67,8 +67,11 @@ fun HomeScreenPreferences(
modifier = modifier,
) {
val lockHomeScreenAdapter = prefs2.lockHomeScreen.getAdapter()
+ val showDeckLayout = prefs2.showDeckLayout.getAdapter().state.value
- HomeLayoutSettings()
+ if (showDeckLayout) {
+ HomeLayoutSettings()
+ }
PreferenceGroup(heading = stringResource(id = R.string.general_label)) {
val addIconToHomeAdapter = prefs.addIconToHome.getAdapter()