X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Ffragments%2FSettingsFragment.java;h=1d4dd164e4c3fa62810434bc6b23c2eb587332f8;hb=ad779ddf7db19cfb9de2f727d1a772850e161acb;hp=04e0d2d5ed20ccab3fc221b71399a114a9a7740a;hpb=81179d84ced6b43360d42a4b44eb8fb329532ff4;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/fragments/SettingsFragment.java b/app/src/main/java/com/stoutner/privacybrowser/fragments/SettingsFragment.java index 04e0d2d5..1d4dd164 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/fragments/SettingsFragment.java +++ b/app/src/main/java/com/stoutner/privacybrowser/fragments/SettingsFragment.java @@ -1,5 +1,5 @@ /* - * Copyright © 2016-2019 Soren Stoutner . + * Copyright © 2016-2020 Soren Stoutner . * * This file is part of Privacy Browser . * @@ -86,8 +86,7 @@ public class SettingsFragment extends PreferenceFragmentCompat { Preference searchPreference = findPreference("search"); Preference searchCustomURLPreference = findPreference("search_custom_url"); Preference proxyPreference = findPreference("proxy"); - Preference proxyCustomHostPreference = findPreference("proxy_custom_host"); - Preference proxyCustomPortPreference = findPreference("proxy_custom_port"); + Preference proxyCustomUrlPreference = findPreference("proxy_custom_url"); Preference fullScreenBrowsingModePreference = findPreference("full_screen_browsing_mode"); Preference hideAppBarPreference = findPreference("hide_app_bar"); Preference clearEverythingPreference = findPreference("clear_everything"); @@ -101,7 +100,6 @@ public class SettingsFragment extends PreferenceFragmentCompat { Preference swipeToRefreshPreference = findPreference("swipe_to_refresh"); Preference scrollAppBarPreference = findPreference("scroll_app_bar"); Preference displayAdditionalAppBarIconsPreference = findPreference("display_additional_app_bar_icons"); - Preference downloadWithExternalAppPreference = findPreference("download_with_external_app"); Preference darkThemePreference = findPreference("dark_theme"); Preference nightModePreference = findPreference("night_mode"); Preference wideViewportPreference = findPreference("wide_viewport"); @@ -131,8 +129,7 @@ public class SettingsFragment extends PreferenceFragmentCompat { assert searchPreference != null; assert searchCustomURLPreference != null; assert proxyPreference != null; - assert proxyCustomHostPreference != null; - assert proxyCustomPortPreference != null; + assert proxyCustomUrlPreference != null; assert fullScreenBrowsingModePreference != null; assert hideAppBarPreference != null; assert clearEverythingPreference != null; @@ -146,7 +143,6 @@ public class SettingsFragment extends PreferenceFragmentCompat { assert swipeToRefreshPreference != null; assert scrollAppBarPreference != null; assert displayAdditionalAppBarIconsPreference != null; - assert downloadWithExternalAppPreference != null; assert darkThemePreference != null; assert nightModePreference != null; assert wideViewportPreference != null; @@ -257,7 +253,11 @@ public class SettingsFragment extends PreferenceFragmentCompat { break; case ProxyHelper.TOR: - proxyPreference.setSummary(getString(R.string.tor_enabled)); + if (Build.VERSION.SDK_INT == 19) { // Proxying through SOCKS doesn't work on Android KitKat. + proxyPreference.setSummary(getString(R.string.tor_enabled_kitkat)); + } else { + proxyPreference.setSummary(getString(R.string.tor_enabled)); + } break; case ProxyHelper.I2P: @@ -269,13 +269,11 @@ public class SettingsFragment extends PreferenceFragmentCompat { break; } - // Only enable the custom proxy options if a custom proxy is selected. - proxyCustomHostPreference.setEnabled(proxyString.equals("Custom")); - proxyCustomPortPreference.setEnabled(proxyString.equals("Custom")); + // Only enable the custom proxy URL if a custom proxy is selected. + proxyCustomUrlPreference.setEnabled(proxyString.equals("Custom")); - // Set the summary text for the custom proxy options. - proxyCustomHostPreference.setSummary(savedPreferences.getString("proxy_custom_host", getString(R.string.proxy_custom_host_default_value))); - proxyCustomPortPreference.setSummary(savedPreferences.getString("proxy_custom_port", getString(R.string.proxy_custom_port_default_value))); + // Set the summary text for the custom proxy URL. + proxyCustomUrlPreference.setSummary(savedPreferences.getString("proxy_custom_url", getString(R.string.proxy_custom_url_default_value))); // Set the status of the Clear and Exit preferences. clearCookiesPreference.setEnabled(!clearEverything); @@ -601,41 +599,35 @@ public class SettingsFragment extends PreferenceFragmentCompat { // Set the main proxy icon to be disabled. proxyPreference.setIcon(R.drawable.proxy_disabled_dark); - // Set the custom proxy icons to be ghosted. - proxyCustomHostPreference.setIcon(R.drawable.proxy_ghosted_dark); - proxyCustomPortPreference.setIcon(R.drawable.proxy_ghosted_dark); + // Set the custom proxy URL icon to be ghosted. + proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_dark); } else { // Light theme. // Set the main proxy icon to be disabled. proxyPreference.setIcon(R.drawable.proxy_disabled_light); - // Set the custom proxy icons to be ghosted. - proxyCustomHostPreference.setIcon(R.drawable.proxy_ghosted_light); - proxyCustomPortPreference.setIcon(R.drawable.proxy_ghosted_light); + // Set the custom proxy URL icon to be ghosted. + proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_light); } } else { // Proxying is enabled. if (darkTheme) { // Dark theme. // Set the main proxy icon to be enabled. proxyPreference.setIcon(R.drawable.proxy_enabled_dark); - // Set the custom proxy icons according to their status. - if (proxyCustomHostPreference.isEnabled()) { // Custom proxy is enabled. - proxyCustomHostPreference.setIcon(R.drawable.proxy_enabled_dark); - proxyCustomPortPreference.setIcon(R.drawable.proxy_enabled_dark); + // Set the custom proxy URL icon according to its status. + if (proxyCustomUrlPreference.isEnabled()) { // Custom proxy is enabled. + proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled_dark); } else { // Custom proxy is disabled. - proxyCustomHostPreference.setIcon(R.drawable.proxy_ghosted_dark); - proxyCustomPortPreference.setIcon(R.drawable.proxy_ghosted_dark); + proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_dark); } } else { // Light theme. // Set the main proxy icon to be enabled. proxyPreference.setIcon(R.drawable.proxy_enabled_light); - // Set the custom proxy icons according to their status. - if (proxyCustomHostPreference.isEnabled()) { // Custom proxy is enabled. - proxyCustomHostPreference.setIcon(R.drawable.proxy_enabled_light); - proxyCustomPortPreference.setIcon(R.drawable.proxy_enabled_light); + // Set the custom proxy URL icon according to its status. + if (proxyCustomUrlPreference.isEnabled()) { // Custom proxy is enabled. + proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled_light); } else { // Custom proxy is disabled. - proxyCustomHostPreference.setIcon(R.drawable.proxy_ghosted_light); - proxyCustomPortPreference.setIcon(R.drawable.proxy_ghosted_light); + proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_light); } } } @@ -793,21 +785,6 @@ public class SettingsFragment extends PreferenceFragmentCompat { } } - // Set the download with external app preference icon. - if (savedPreferences.getBoolean("download_with_external_app", false)) { - if (darkTheme) { - downloadWithExternalAppPreference.setIcon(R.drawable.open_with_external_app_enabled_dark); - } else { - downloadWithExternalAppPreference.setIcon(R.drawable.open_with_external_app_enabled_light); - } - } else { - if (darkTheme) { - downloadWithExternalAppPreference.setIcon(R.drawable.open_with_external_app_disabled_dark); - } else { - downloadWithExternalAppPreference.setIcon(R.drawable.open_with_external_app_disabled_light); - } - } - // Set the dark theme preference icon. if (savedPreferences.getBoolean("dark_theme", false)) { darkThemePreference.setIcon(R.drawable.theme_dark); @@ -1372,7 +1349,11 @@ public class SettingsFragment extends PreferenceFragmentCompat { break; case ProxyHelper.TOR: - proxyPreference.setSummary(getString(R.string.tor_enabled)); + if (Build.VERSION.SDK_INT == 19) { // Proxying through SOCKS doesn't work on Android KitKat. + proxyPreference.setSummary(getString(R.string.tor_enabled_kitkat)); + } else { + proxyPreference.setSummary(getString(R.string.tor_enabled)); + } break; case ProxyHelper.I2P: @@ -1384,9 +1365,8 @@ public class SettingsFragment extends PreferenceFragmentCompat { break; } - // Update the status of the custom proxy options. - proxyCustomHostPreference.setEnabled(currentProxyString.equals("Custom")); - proxyCustomPortPreference.setEnabled(currentProxyString.equals("Custom")); + // Update the status of the custom URL preference. + proxyCustomUrlPreference.setEnabled(currentProxyString.equals("Custom")); // Update the icons. if (currentProxyString.equals("None")) { // Proxying is disabled. @@ -1394,55 +1374,45 @@ public class SettingsFragment extends PreferenceFragmentCompat { // Set the main proxy icon to be disabled proxyPreference.setIcon(R.drawable.proxy_disabled_dark); - // Set the custom proxy icons to be ghosted. - proxyCustomHostPreference.setIcon(R.drawable.proxy_ghosted_dark); - proxyCustomPortPreference.setIcon(R.drawable.proxy_ghosted_dark); + // Set the custom proxy URL icon to be ghosted. + proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_dark); } else { // Light theme. // Set the main proxy icon to be disabled. proxyPreference.setIcon(R.drawable.proxy_disabled_light); - // Set the custom proxy icons to be ghosted. - proxyCustomHostPreference.setIcon(R.drawable.proxy_ghosted_light); - proxyCustomPortPreference.setIcon(R.drawable.proxy_ghosted_light); + // Set the custom proxy URL icon to be ghosted. + proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_light); } } else { // Proxying is enabled. if (darkTheme) { // Dark theme. // Set the main proxy icon to be enabled. proxyPreference.setIcon(R.drawable.proxy_enabled_dark); - /// Set the custom proxy icons according to their status. - if (proxyCustomHostPreference.isEnabled()) { // Custom proxy is enabled. - proxyCustomHostPreference.setIcon(R.drawable.proxy_enabled_dark); - proxyCustomPortPreference.setIcon(R.drawable.proxy_enabled_dark); + /// Set the custom proxy URL icon according to its status. + if (proxyCustomUrlPreference.isEnabled()) { // Custom proxy is enabled. + proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled_dark); } else { // Custom proxy is disabled. - proxyCustomHostPreference.setIcon(R.drawable.proxy_ghosted_dark); - proxyCustomPortPreference.setIcon(R.drawable.proxy_ghosted_dark); + proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_dark); } } else { // Light theme. // Set the main proxy icon to be enabled. proxyPreference.setIcon(R.drawable.proxy_enabled_light); - // Set the custom proxy icons according to their status. - if (proxyCustomHostPreference.isEnabled()) { // Custom proxy is enabled. - proxyCustomHostPreference.setIcon(R.drawable.proxy_enabled_light); - proxyCustomPortPreference.setIcon(R.drawable.proxy_enabled_light); + // Set the custom proxy URL icon according to its status. + if (proxyCustomUrlPreference.isEnabled()) { // Custom proxy is enabled. + proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled_light); } else { // Custom proxy is disabled. - proxyCustomHostPreference.setIcon(R.drawable.proxy_ghosted_light); - proxyCustomPortPreference.setIcon(R.drawable.proxy_ghosted_light); + proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_light); } } } break; - case "proxy_custom_host": - // Set the summary text for the proxy custom host. - proxyCustomHostPreference.setSummary(sharedPreferences.getString("proxy_custom_host", getString(R.string.proxy_custom_host_default_value))); + case "proxy_custom_url": + // Set the summary text for the proxy custom URL. + proxyCustomUrlPreference.setSummary(sharedPreferences.getString("proxy_custom_url", getString(R.string.proxy_custom_url_default_value))); break; - case "proxy_custom_port": - // Set the summary text for the proxy custom port. - proxyCustomPortPreference.setSummary(sharedPreferences.getString("proxy_custom_port", getString(R.string.proxy_custom_port_default_value))); - case "full_screen_browsing_mode": if (sharedPreferences.getBoolean("full_screen_browsing_mode", false)) { // Full screen browsing is enabled. // Set the full screen browsing mode preference icon according to the theme. @@ -1698,23 +1668,6 @@ public class SettingsFragment extends PreferenceFragmentCompat { } break; - case "download_with_external_app": - // Update the icon. - if (sharedPreferences.getBoolean("download_with_external_app", false)) { - if (darkTheme) { - downloadWithExternalAppPreference.setIcon(R.drawable.open_with_external_app_enabled_dark); - } else { - downloadWithExternalAppPreference.setIcon(R.drawable.open_with_external_app_enabled_light); - } - } else { - if (darkTheme) { - downloadWithExternalAppPreference.setIcon(R.drawable.open_with_external_app_disabled_dark); - } else { - downloadWithExternalAppPreference.setIcon(R.drawable.open_with_external_app_disabled_light); - } - } - break; - case "dark_theme": // Update the icon. if (sharedPreferences.getBoolean("dark_theme", false)) {