From 0fc1d23109acf1d4f477f23406d3f20220572832 Mon Sep 17 00:00:00 2001 From: Alex Cruz Date: Wed, 19 Feb 2020 23:31:11 -0500 Subject: [PATCH] Cherish: Navbar: Add setting to toggle navbar MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Enable navbar options Change-Id: Id2efd9bc0b8246ab7bce545553677d539d9ad55c Signed-off-by: SagarMakhar Signed-off-by: Hưng Phan --- res/values/cherish_strings.xml | 4 +++ res/xml/cherish_settings_button.xml | 6 +++- .../settings/fragments/ButtonSettings.java | 29 ++++++++++++++----- 3 files changed, 30 insertions(+), 9 deletions(-) diff --git a/res/values/cherish_strings.xml b/res/values/cherish_strings.xml index 8f7cf09..10a8c14 100644 --- a/res/values/cherish_strings.xml +++ b/res/values/cherish_strings.xml @@ -503,4 +503,8 @@ %1$s %1$s %1$s + + + On-screen navigation bar + Enable on-screen navigation keys diff --git a/res/xml/cherish_settings_button.xml b/res/xml/cherish_settings_button.xml index 9e3bdf3..61fc229 100644 --- a/res/xml/cherish_settings_button.xml +++ b/res/xml/cherish_settings_button.xml @@ -220,6 +220,10 @@ - + + \ No newline at end of file diff --git a/src/com/cherish/settings/fragments/ButtonSettings.java b/src/com/cherish/settings/fragments/ButtonSettings.java index de290c7..0d143b3 100644 --- a/src/com/cherish/settings/fragments/ButtonSettings.java +++ b/src/com/cherish/settings/fragments/ButtonSettings.java @@ -60,6 +60,7 @@ import java.util.List; public class ButtonSettings extends ActionFragment implements OnPreferenceChangeListener { private static final String HWKEY_DISABLE = "hardware_keys_disable"; + private static final String KEY_NAVIGATION_BAR_ENABLED = "force_show_navbar"; // category keys private static final String CATEGORY_HWKEY = "hardware_keys"; @@ -90,6 +91,8 @@ public class ButtonSettings extends ActionFragment implements OnPreferenceChange private CustomSeekBarPreference mManualButtonBrightness; private PreferenceCategory mButtonBackLightCategory; + private SwitchPreference mNavigationBar; + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); @@ -186,6 +189,18 @@ public class ButtonSettings extends ActionFragment implements OnPreferenceChange if (!enableBacklightOptions) { prefScreen.removePreference(mButtonBackLightCategory); } + + final boolean defaultToNavigationBar = getResources().getBoolean( + com.android.internal.R.bool.config_showNavigationBar); + final boolean navigationBarEnabled = Settings.System.getIntForUser( + resolver, Settings.System.FORCE_SHOW_NAVBAR, + defaultToNavigationBar ? 1 : 0, UserHandle.USER_CURRENT) != 0; + + mNavigationBar = (SwitchPreference) findPreference(KEY_NAVIGATION_BAR_ENABLED); + mNavigationBar.setChecked((Settings.System.getInt(getContentResolver(), + Settings.System.FORCE_SHOW_NAVBAR, + defaultToNavigationBar ? 1 : 0) == 1)); + mNavigationBar.setOnPreferenceChangeListener(this); } public boolean onPreferenceChange(Preference preference, Object newValue) { @@ -203,10 +218,13 @@ public class ButtonSettings extends ActionFragment implements OnPreferenceChange int buttonBrightness = (Integer) newValue; Settings.System.putInt(getContentResolver(), Settings.System.CUSTOM_BUTTON_BRIGHTNESS, buttonBrightness); - } else { - return false; + } else if (preference == mNavigationBar) { + boolean value = (Boolean) newValue; + Settings.System.putInt(getActivity().getContentResolver(), + Settings.System.FORCE_SHOW_NAVBAR, value ? 1 : 0); + return true; } - return true; + return false; } @Override @@ -214,11 +232,6 @@ public class ButtonSettings extends ActionFragment implements OnPreferenceChange return MetricsProto.MetricsEvent.CHERISH_SETTINGS; } - @Override - protected boolean usesExtendedActionsList() { - return true; - } - /** * For Search. */