Skip to content

Settings: add gesture navigation space preference - #174

Open
Loukious wants to merge 205 commits into
crdroidandroid:16.0from
Loukious:feature/gesture-navbar-space
Open

Loukious wants to merge 205 commits into
crdroidandroid:16.0from
Loukious:feature/gesture-navbar-space

Conversation

@Loukious

@Loukious Loukious commented Jul 31, 2026

Copy link
Copy Markdown

Summary

Add a Gesture navigation space preference with Default, Compact and Minimal modes.

The preference writes Settings.System.GESTURE_NAVBAR_SPACE_MODE, which is handled by DisplayPolicy in frameworks/base (require crdroidandroid/android_frameworks_base#1337 to be merged first).

neobuddy89 and others added 30 commits June 21, 2026 16:12
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Co-authored-by: 306bobby-android <143777624+306bobby-android@users.noreply.github.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I72c90ae2f66eb1d6a9c6a423f50ea9df626559d2
Signed-off-by: Joey Huab <joey@evolution-x.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
* Rather ugly Drop Down

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Joey Huab <joey@evolution-x.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I34c21377840ec8a298f3c49e03445151eecc3ec4
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
This seems kinda empty... Fill it with fun stuff

Change-Id: Ia43cb31b7567bed07f2b8a1d8637de4e66320c90
[jaysonedson@gmail.com: Move to new HardwareInfo]
Signed-off-by: Jason Edson <jaysonedson@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
neobuddy89: Updated for A16 QPR1

Squashed:

        From: Pranav Vashi <neobuddy89@gmail.com>
        Date: Fri, 17 Dec 2021 02:51:46 +0530
        Subject: Settings: Set device name from marketname if available

        From: Hikari-no-Tenshi <kyryljan.serhij@gmail.com>
        Date: Mon, 27 Dec 2021 14:09:31 +0200
        Subject: Fix device name change

        Change-Id: If974ac38638fca9b100008d1b5404d876faf42e2
        Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>

Change-Id: I61fd4d77375df019da94ed7fca71da157dd0f415
Co-authored-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: Id4ac89dba079ab46dcb7d97cca7b2c4c8f9fb612
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
* Setting up a new SD card is currently using light theme, no matter
  the system setting
* Convert to DayNight to have it follow system theme

Change-Id: Iaf41c95a03859f40f9895b713c26ee76ff01fed6
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I2c93301a7a9aa640278c62912ee6a54dbe29589c
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: jhonboy121 <alfredmathew05@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: If270186b7788d95bfb4f555c0bc6f7eb3367e95f
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I3716ff409ba3fb830abaa906a55bb49daed47451
Signed-off-by: Alvin Francis <nivlafx@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I91e75eab0b6d9ffc608af1f5977ddd79350b22fc
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
- so that it expands and shows full kernel version

Change-Id: Ic08ec7a1db62a521e434cac5188aad2d35a4825d
Signed-off-by: SagarMakhar <sagarmakhar@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
patch set 2: view unformatted kernel version on clicking
  the formatted kernel version

[ Stallix ]

* Adapted for KernelVersionPreferenceController on Pie

Change-Id: I2b211fb72c25cc119f2a464b04821fcef77a8908
Signed-off-by: Arghya Chanda <arghyac35@gmail.com>
Signed-off-by: SagarMakhar <sagarmakhar@gmail.com>
Signed-off-by: Joey Huab <joey@evolution-x.org>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Before you could only click once to see the full kernel version and if
you wanted it to go back to the short version, you had to exit the fragment.

Now you can click between the two (short and long).

Change-Id: I6f89d6b145d5cc7b9cca6febc3651904b98da80c
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I706bd7bb35e8da004a0dfc8c0949beea082514ea
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: cjybyjk <cjybyjk@zjnu.edu.cn>
Change-Id: Icff728749c3e597a4127d77646bdf3a742c35d83
Signed-off-by: Dmitrii <bankersenator@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I2da5879885a15698ced67458451f85cb1afa748f
Signed-off-by: Joey Huab <joey@evolution-x.org>
Signed-off-by: Dmitrii <bankersenator@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
idoybh and others added 21 commits June 21, 2026 16:12
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Using a fixed layout size meant that the view was becoming scrollable
in landscape mode. Instead use the parent size with a max height and
width. Center the layout and cleanup unused elements while at it.

Change-Id: If39d67d679a3e77bc9210e98885b4addfd1660d7
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Make sure these buttons match the rest of the UI. See buttons in
storage, text to speech, batter saver, etc. Now they match :-)

Change-Id: I7c478b8d44924e3598bbb322650ad6c355b5792d
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Avoid scrolling by making the illustration fit available space.

Change-Id: I5300875b7790ee3664eff22d3517289ed04ef696
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
* rather than going to apps one by one, this preference allows users to open the page where it'll list all apps with filters and stuff.

Signed-off-by: jhonboy121 <alfredmathew05@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: If51d68b298a0b4315e0c3b8c1fa8290d37116292
Signed-off-by: kleidione <kleidione@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I35525437a6627b97e847419ad9413a78eae353e5
Signed-off-by: inferno0230 <mail@inferno0230.in>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: I87288e90f7bd0646e42b4c56ea56dd53a9bf0601
Signed-off-by: Ghosuto <clash.raja10@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
if a device doesn't support tap or lift to wake, you could still
search for "show ambient" and get into the pages anyway. this makes
search actually check if the feature exists first before showing it.

Signed-off-by: Dmitrii <bankersenator@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Reachability check didn't consider WPA3 or OWE only configuration. Now,
it's checked them properly. To do so, isSecurityTypeEnabled(int) in
WifiConfiguration by Ibfa6558b223d2b424b3ca60cbc9c7a0941e83aba in Wifi
module is expected to be available to use. Test cases are also expected
to the new Wifi module.

TEST: atest com.android.settings.wifi.dpp.WifiDppQrCodeScannerFragmentTest
Change-Id: I3ecaa0ba1647a962a04efe1eb540bcc0368f6edd
Despite the name getTabId, onCreateView treats this tabId as a starting
tab index, i.e. the tab that will be selected on first state.

However, it's possible to have tabId != tabIndex in certain cases like
launching android.settings.CREDENTIAL_PROVIDER in an app from a private
profile. PRIVATE_TAB is 2, but if there was no work profile, then there
would only be Personal (index 0) and Private (index 1) tabs. Using
PRIVATE_TAB (2) as the index results in an NPE in onCreateView. If there
was a work profile, then there would be Personal, Private, and Work
tabs. The intent android.settings.CREDENTIAL_PROVIDER from private
profile will actually select the Work tab, because the index PRIVATE_TAB
(2) is used with Work tab in that index.

Fix this by making it very clear that this is a function used to get
starting tab index, and then stop assuming the positions. This never
crashed when opening Settings app from the full user, because starting
tab of Personal is always correct for that case. The tests have also
been updated to reflect the case of launching from a private profile.
The test ViewPager is now required for all tests; this reflects the
actual usage in the code anyway.

Bug: 499908921
Test: manual, atest SettingsRoboTests:com.android.settings.dashboard.profileselector.ProfileSelectFragmentTest
Change-Id: I8a7f9b595d053d9f6fdb94e241c3c9c2c8e2062a
Idea ref:
Evolution-X/packages_apps_Settings@a3c489f

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
DISALLOW_CONFIG_BLUETOOTH is documented to restrict Bluetooth
configuration (pairing, renaming, scanning) but not the Settings
on/off toggleswitch . BluetoothEnabler.getEnforcedAdmin()
incorrectly checked this restriction for the toggle, causing it
to show dialog "Blocked by your IT admin" when only
DISALLOW_BLUETOOTH should do so.

Remove DISALLOW_CONFIG_BLUETOOTH from the toggle check. All
configuration screens continue to enforce it independently via
RestrictedDashboardFragment and RestrictedPreference.

Bug: 506180944

Change-Id: I64d0e80b98a38a7d00acec572ab09b6e63345db8
Signed-off-by: sooorajjj <sooorajjj@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
* This has moved to SettingsLib. No compile errors but breaks for some users.

Log:

time: 1779724879924
msg: java.io.FileNotFoundException: res/drawable/ic_do_not_disturb_on_24dp.xml
stacktrace: android.view.InflateException: Binary XML file line crdroidandroid#120 in com.android.settings:layout/enable_nls_dialog_content: Binary XML file line crdroidandroid#120 in com.android.settings:layout/enable_nls_dialog_content: Error inflating class android.widget.ImageView
Caused by: android.view.InflateException: Binary XML file line crdroidandroid#120 in com.android.settings:layout/enable_nls_dialog_content: Error inflating class android.widget.ImageView
Caused by: java.lang.reflect.InvocationTargetException

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Fixes: crdroidandroid/issue_tracker#993
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Fixes: crdroidandroid/issue_tracker#1048
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Change-Id: Ib565b3ffaa8a5f5832d5a620961abffd754e2dfc
Signed-off-by: minaripenguin <minaripenguin@users.noreply.github.com>
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
@gwolf2u
gwolf2u requested a review from neobuddy89 August 1, 2026 16:54
@gwolf2u
gwolf2u removed the request for review from neobuddy89 August 1, 2026 16:54
@neobuddy89

Copy link
Copy Markdown
Member

Strings to go under crdroid settings.

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.
@Loukious

Loukious commented Aug 1, 2026

Copy link
Copy Markdown
Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.