X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserAndroid.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Ffragments%2FSettingsFragment.java;h=7dab898e383cb203bd84609b33cd6943cffc22ba;hp=35956e94aae28a95d9b9bed8791dfcf052ef2caa;hb=b692dfc0bae740891c806bb2ea1c18041bf6b66f;hpb=b4ad3d976ddc7902546f820df9d8e0e3172b7c69 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 35956e94..7dab898e 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/fragments/SettingsFragment.java +++ b/app/src/main/java/com/stoutner/privacybrowser/fragments/SettingsFragment.java @@ -60,7 +60,7 @@ public class SettingsFragment extends PreferenceFragment { Preference firstPartyCookiesPreference = findPreference("first_party_cookies"); Preference thirdPartyCookiesPreference = findPreference("third_party_cookies"); Preference domStoragePreference = findPreference("dom_storage"); - Preference saveFormDataPreference = findPreference("save_form_data"); // The form data preference can be removed once the minimum API >= 26. + Preference formDataPreference = findPreference("save_form_data"); // The form data preference can be removed once the minimum API >= 26. Preference userAgentPreference = findPreference("user_agent"); Preference customUserAgentPreference = findPreference("custom_user_agent"); Preference incognitoModePreference = findPreference("incognito_mode"); @@ -72,6 +72,9 @@ public class SettingsFragment extends PreferenceFragment { Preference fanboySocialBlockingListPreference = findPreference("fanboys_social_blocking_list"); Preference ultraPrivacyPreference = findPreference("ultraprivacy"); Preference blockAllThirdPartyRequestsPreference = findPreference("block_all_third_party_requests"); + Preference googleAnalyticsPreference = findPreference("google_analytics"); + Preference facebookClickIdsPreference = findPreference("facebook_click_ids"); + Preference twitterAmpRedirectsPreference = findPreference("twitter_amp_redirects"); Preference proxyThroughOrbotPreference = findPreference("proxy_through_orbot"); Preference torHomepagePreference = findPreference("tor_homepage"); Preference torSearchPreference = findPreference("tor_search"); @@ -94,6 +97,7 @@ public class SettingsFragment extends PreferenceFragment { Preference downloadWithExternalAppPreference = findPreference("download_with_external_app"); Preference darkThemePreference = findPreference("dark_theme"); Preference nightModePreference = findPreference("night_mode"); + Preference wideViewportPreference = findPreference("wide_viewport"); Preference displayWebpageImagesPreference = findPreference("display_webpage_images"); // Set dependencies. @@ -130,7 +134,7 @@ public class SettingsFragment extends PreferenceFragment { PreferenceCategory clearAndExitCategory = (PreferenceCategory) findPreference("clear_and_exit"); // Remove the form data preferences. - privacyCategory.removePreference(saveFormDataPreference); + privacyCategory.removePreference(formDataPreference); clearAndExitCategory.removePreference(clearFormDataPreference); } @@ -288,12 +292,12 @@ public class SettingsFragment extends PreferenceFragment { // Set the save form data icon if API < 26. Save form data has no effect on API >= 26. if (Build.VERSION.SDK_INT < 26) { if (savedPreferences.getBoolean("save_form_data", false)) { - saveFormDataPreference.setIcon(R.drawable.form_data_enabled); + formDataPreference.setIcon(R.drawable.form_data_enabled); } else { if (darkTheme) { - saveFormDataPreference.setIcon(R.drawable.form_data_disabled_dark); + formDataPreference.setIcon(R.drawable.form_data_disabled_dark); } else { - saveFormDataPreference.setIcon(R.drawable.form_data_disabled_light); + formDataPreference.setIcon(R.drawable.form_data_disabled_light); } } } @@ -457,6 +461,51 @@ public class SettingsFragment extends PreferenceFragment { } } + // Set the Google Analytics icon according to the theme. + if (savedPreferences.getBoolean("google_analytics", true)) { + if (darkTheme) { + googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled_dark); + } else { + googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled_light); + } + } else { + if (darkTheme) { + googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled_dark); + } else { + googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled_light); + } + } + + // Set the Facebook Click IDs icon according to the theme. + if (savedPreferences.getBoolean("facebook_click_ids", true)) { + if (darkTheme) { + facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled_dark); + } else { + facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled_light); + } + } else { + if (darkTheme) { + facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled_dark); + } else { + facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled_light); + } + } + + // Set the Twitter AMP redirects icon according to the theme. + if (savedPreferences.getBoolean("twitter_amp_redirects", true)) { + if (darkTheme) { + twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled_dark); + } else { + twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled_light); + } + } else { + if (darkTheme) { + twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled_dark); + } else { + twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled_light); + } + } + // Set the Tor icons according to the theme. if (proxyThroughOrbot) { // Proxying is enabled. if (darkTheme) { @@ -701,6 +750,21 @@ public class SettingsFragment extends PreferenceFragment { } } + // Set the wide viewport preference icon. + if (savedPreferences.getBoolean("wide_viewport", true)) { + if (darkTheme) { + wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled_dark); + } else { + wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled_light); + } + } else { + if (darkTheme) { + wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled_dark); + } else { + wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled_light); + } + } + // Set the display webpage images preference icon. if (savedPreferences.getBoolean("display_webpage_images", true)) { if (darkTheme) { @@ -829,12 +893,12 @@ public class SettingsFragment extends PreferenceFragment { case "save_form_data": // Update the icon. if (sharedPreferences.getBoolean("save_form_data", false)) { - saveFormDataPreference.setIcon(R.drawable.form_data_enabled); + formDataPreference.setIcon(R.drawable.form_data_enabled); } else { if (darkTheme) { - saveFormDataPreference.setIcon(R.drawable.form_data_disabled_dark); + formDataPreference.setIcon(R.drawable.form_data_disabled_dark); } else { - saveFormDataPreference.setIcon(R.drawable.form_data_disabled_light); + formDataPreference.setIcon(R.drawable.form_data_disabled_light); } } break; @@ -974,8 +1038,8 @@ public class SettingsFragment extends PreferenceFragment { System.exit(0); }; - // Restart the activity after 100 milliseconds, so that the app has enough time to save the change to the preference. - allowScreenshotsRestartHandler.postDelayed(allowScreenshotsRestartRunnable, 100); + // Restart the activity after 150 milliseconds, so that the app has enough time to save the change to the preference. + allowScreenshotsRestartHandler.postDelayed(allowScreenshotsRestartRunnable, 150); break; case "easylist": @@ -1110,6 +1174,57 @@ public class SettingsFragment extends PreferenceFragment { } break; + case "google_analytics": + // Update the icon. + if (sharedPreferences.getBoolean("google_analytics", true)) { + if (darkTheme) { + googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled_dark); + } else { + googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled_light); + } + } else { + if (darkTheme) { + googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled_dark); + } else { + googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled_light); + } + } + break; + + case "facebook_click_ids": + // Update the icon. + if (sharedPreferences.getBoolean("facebook_click_ids", true)) { + if (darkTheme) { + facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled_dark); + } else { + facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled_light); + } + } else { + if (darkTheme) { + facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled_dark); + } else { + facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled_light); + } + } + break; + + case "twitter_amp_redirects": + // Update the icon. + if (sharedPreferences.getBoolean("twitter_amp_redirects", true)) { + if (darkTheme) { + twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled_dark); + } else { + twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled_light); + } + } else { + if (darkTheme) { + twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled_dark); + } else { + twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled_light); + } + } + break; + case "proxy_through_orbot": // Get current settings. boolean currentProxyThroughOrbot = sharedPreferences.getBoolean("proxy_through_orbot", false); @@ -1543,8 +1658,8 @@ public class SettingsFragment extends PreferenceFragment { System.exit(0); }; - // Restart the activity after 100 milliseconds, so that the app has enough time to save the change to the preference. - changeThemeRestartHandler.postDelayed(changeThemeRestartRunnable, 100); + // Restart the activity after 150 milliseconds, so that the app has enough time to save the change to the preference. + changeThemeRestartHandler.postDelayed(changeThemeRestartRunnable, 150); break; case "night_mode": @@ -1598,16 +1713,32 @@ public class SettingsFragment extends PreferenceFragment { } break; + case "wide_viewport": + // Update the icon. + if (sharedPreferences.getBoolean("wide_viewport", true)) { + if (darkTheme) { + wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled_dark); + } else { + wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled_light); + } + } else { + if (darkTheme) { + wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled_dark); + } else { + wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled_light); + } + } + break; + case "display_webpage_images": + // Update the icon. if (sharedPreferences.getBoolean("display_webpage_images", true)) { - // Update the icon. if (darkTheme) { displayWebpageImagesPreference.setIcon(R.drawable.images_enabled_dark); } else { displayWebpageImagesPreference.setIcon(R.drawable.images_enabled_light); } } else { - // Update the icon. if (darkTheme) { displayWebpageImagesPreference.setIcon(R.drawable.images_disabled_dark); } else { @@ -1634,4 +1765,4 @@ public class SettingsFragment extends PreferenceFragment { super.onResume(); savedPreferences.registerOnSharedPreferenceChangeListener(preferencesListener); } -} +} \ No newline at end of file