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) {