diff --git a/lawnchair/res/values/config.xml b/lawnchair/res/values/config.xml
index 879b1488a2..8749537fca 100644
--- a/lawnchair/res/values/config.xml
+++ b/lawnchair/res/values/config.xml
@@ -120,6 +120,7 @@
- 1.0
- 1.0
- 1.0
+ - 0.1
- 5
- 3
- 10
diff --git a/lawnchair/res/values/strings.xml b/lawnchair/res/values/strings.xml
index 01ecfffaa9..ade5ae76c4 100644
--- a/lawnchair/res/values/strings.xml
+++ b/lawnchair/res/values/strings.xml
@@ -350,6 +350,7 @@
App Drawer Columns
Row Height
+ App Drawer Indent
Device Search
Files
diff --git a/lawnchair/res/xml/paddings_4x5.xml b/lawnchair/res/xml/paddings_4x5.xml
index 221b5779dc..68b6cc7c0d 100644
--- a/lawnchair/res/xml/paddings_4x5.xml
+++ b/lawnchair/res/xml/paddings_4x5.xml
@@ -1,38 +1,86 @@
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
diff --git a/lawnchair/src/app/lawnchair/preferences2/PreferenceManager2.kt b/lawnchair/src/app/lawnchair/preferences2/PreferenceManager2.kt
index b195cc7c1a..afb6e9ea19 100644
--- a/lawnchair/src/app/lawnchair/preferences2/PreferenceManager2.kt
+++ b/lawnchair/src/app/lawnchair/preferences2/PreferenceManager2.kt
@@ -336,6 +336,12 @@ class PreferenceManager2 private constructor(private val context: Context) : Pre
onSet = { reloadHelper.reloadGrid() },
)
+ val drawerLeftRightMarginFactor = preference(
+ key = floatPreferencesKey(name = "drawer_left_right_factor"),
+ defaultValue = resourceProvider.getFloat(R.dimen.config_default_drawer_left_right_factor),
+ onSet = { reloadHelper.reloadGrid() },
+ )
+
val enableFuzzySearch = preference(
key = booleanPreferencesKey(name = "enable_fuzzy_search"),
defaultValue = context.resources.getBoolean(R.bool.config_default_enable_fuzzy_search),
diff --git a/lawnchair/src/app/lawnchair/ui/preferences/destinations/AppDrawerPreferences.kt b/lawnchair/src/app/lawnchair/ui/preferences/destinations/AppDrawerPreferences.kt
index 95dab6c574..6edfc73040 100644
--- a/lawnchair/src/app/lawnchair/ui/preferences/destinations/AppDrawerPreferences.kt
+++ b/lawnchair/src/app/lawnchair/ui/preferences/destinations/AppDrawerPreferences.kt
@@ -262,6 +262,13 @@ fun AppDrawerPreferences() {
step = 0.1F,
showAsPercentage = true,
)
+ SliderPreference(
+ adapter = prefs2.drawerLeftRightMarginFactor.getAdapter(),
+ label = stringResource(id = R.string.app_drawer_indent_label),
+ valueRange = 0.0F..1.0F,
+ step = 0.01F,
+ showAsPercentage = true,
+ )
}
PreferenceGroup(heading = stringResource(id = R.string.icons)) {
SliderPreference(
diff --git a/src/com/android/launcher3/DeviceProfile.java b/src/com/android/launcher3/DeviceProfile.java
index 78b96cf608..a1f5f29669 100644
--- a/src/com/android/launcher3/DeviceProfile.java
+++ b/src/com/android/launcher3/DeviceProfile.java
@@ -1305,9 +1305,14 @@ public class DeviceProfile {
+ allAppsLeftRightPadding * 2;
allAppsLeftRightMargin = Math.max(1, (availableWidthPx - usedWidth) / 2);
} else {
- allAppsLeftRightPadding = Math.max(0, desiredWorkspaceHorizontalMarginPx + cellLayoutHorizontalPadding
+ allAppsLeftRightPadding = Math.max(1, desiredWorkspaceHorizontalMarginPx + cellLayoutHorizontalPadding
- (allAppsBorderSpacePx.x / 2));
}
+ var allAppLeftRightMarginMultiplier = PreferenceExtensionsKt
+ .firstBlocking(preferenceManager2.getDrawerLeftRightMarginFactor());
+ var margin = pxFromDp(inv.allAppsCellSize[mTypeIndex].y, mMetrics, allAppLeftRightMarginMultiplier);
+ allAppsLeftRightMargin *= margin;
+ allAppsLeftRightPadding *= margin;
}
private void setupAllAppsStyle(Context context) {