From 36c7cdc3c5ff1a74e55ded4b37fd82c16331a315 Mon Sep 17 00:00:00 2001 From: Loukious <24696530+Loukious@users.noreply.github.com> Date: Fri, 31 Jul 2026 22:16:43 +0100 Subject: [PATCH] Settings: add gesture navigation space preference Add Default, Compact and Minimal navigation space modes to the gesture navigation settings screen. Write the selected mode to Settings.System.GESTURE_NAVBAR_SPACE_MODE for DisplayPolicy to handle. --- res/xml/gesture_navigation_settings.xml | 14 +++++- .../GestureNavigationSettingsFragment.java | 43 +++++++++++++++++++ 2 files changed, 56 insertions(+), 1 deletion(-) diff --git a/res/xml/gesture_navigation_settings.xml b/res/xml/gesture_navigation_settings.xml index 7465dd9454ed..7901483f62b7 100644 --- a/res/xml/gesture_navigation_settings.xml +++ b/res/xml/gesture_navigation_settings.xml @@ -63,7 +63,19 @@ settings:textEnd="@string/thick_label" android:dependency="navigation_bar_hint" /> - + + { + final int newMode; + try { + newMode = Integer.parseInt((String) newValue); + } catch (NumberFormatException e) { + return false; + } + + if (newMode < GESTURE_NAVBAR_SPACE_DEFAULT + || newMode > GESTURE_NAVBAR_SPACE_MINIMAL) { + return false; + } + + return Settings.System.putIntForUser( + resolver, + Settings.System.GESTURE_NAVBAR_SPACE_MODE, + newMode, + UserHandle.USER_CURRENT); + }); + } + private CharSequence formatStateDescription(SliderPreference pref, int progress) { Locale curLocale = getContext().getResources().getConfiguration().getLocales().get(0); NumberFormat numberFormat = NumberFormat.getPercentInstance(curLocale);