X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Ffragments%2FDomainSettingsFragment.java;h=8581f4002dec8be24d42b5c9393a3618694a5fa9;hb=refs%2Ftags%2Fv2.4;hp=4416d3019da0a3ccc3b6d863ab5fddfd5581e863;hpb=ed0a4234b452924acf1602bee6578a7a84445a85;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/fragments/DomainSettingsFragment.java b/app/src/main/java/com/stoutner/privacybrowser/fragments/DomainSettingsFragment.java index 4416d301..8581f400 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/fragments/DomainSettingsFragment.java +++ b/app/src/main/java/com/stoutner/privacybrowser/fragments/DomainSettingsFragment.java @@ -109,16 +109,16 @@ public class DomainSettingsFragment extends Fragment { int displayImagesInt = domainCursor.getInt(domainCursor.getColumnIndex(DomainsDatabaseHelper.DISPLAY_IMAGES)); // Create `ArrayAdapters` for the `Spinners`and their `entry values`. - ArrayAdapter userAgentArrayAdapter = ArrayAdapter.createFromResource(context, R.array.user_agent_entries, android.R.layout.simple_spinner_item); - final ArrayAdapter userAgentEntryValuesArrayAdapter = ArrayAdapter.createFromResource(context, R.array.user_agent_entry_values, android.R.layout.simple_spinner_item); - ArrayAdapter fontSizeArrayAdapter = ArrayAdapter.createFromResource(context, R.array.default_font_size_entries, android.R.layout.simple_spinner_item); - ArrayAdapter fontSizeEntryValuesArrayAdapter = ArrayAdapter.createFromResource(context, R.array.default_font_size_entry_values, android.R.layout.simple_spinner_item); - final ArrayAdapter displayImagesArrayAdapter = ArrayAdapter.createFromResource(context, R.array.display_website_images_array, android.R.layout.simple_spinner_item); + ArrayAdapter userAgentArrayAdapter = ArrayAdapter.createFromResource(context, R.array.user_agent_entries, R.layout.spinner_item); + final ArrayAdapter userAgentEntryValuesArrayAdapter = ArrayAdapter.createFromResource(context, R.array.user_agent_entry_values, R.layout.spinner_item); + ArrayAdapter fontSizeArrayAdapter = ArrayAdapter.createFromResource(context, R.array.default_font_size_entries, R.layout.spinner_item); + ArrayAdapter fontSizeEntryValuesArrayAdapter = ArrayAdapter.createFromResource(context, R.array.default_font_size_entry_values, R.layout.spinner_item); + final ArrayAdapter displayImagesArrayAdapter = ArrayAdapter.createFromResource(context, R.array.display_website_images_array, R.layout.spinner_item); - // Set the drop down style for the `ArrayAdapters`. - userAgentArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - fontSizeArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); - displayImagesArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); + // Set the `DropDownViewResource` on the `Spinners`. + userAgentArrayAdapter.setDropDownViewResource(R.layout.spinner_dropdown_item); + fontSizeArrayAdapter.setDropDownViewResource(R.layout.spinner_dropdown_item); + displayImagesArrayAdapter.setDropDownViewResource(R.layout.spinner_dropdown_item); // Set the `ArrayAdapters` for the `Spinners`. userAgentSpinner.setAdapter(userAgentArrayAdapter); @@ -143,7 +143,13 @@ public class DomainSettingsFragment extends Fragment { firstPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_enabled)); } else { // First-party cookies are disabled. firstPartyCookiesEnabledSwitch.setChecked(false); - firstPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled)); + + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + firstPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_dark)); + } else { + firstPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_light)); + } } // Only display third-party cookies if SDK_INT >= 21. @@ -156,18 +162,30 @@ public class DomainSettingsFragment extends Fragment { thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_warning)); } else { // First party cookies are enabled but third-party cookies are disabled. thirdPartyCookiesEnabledSwitch.setChecked(false); - thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled)); + + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_dark)); + } else { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_light)); + } } } else { // First-party cookies are disabled. - // Set the status of third-party cookies, but disable it. - if (thirdPartyCookiesEnabledInt == 1) { // Third-party cookies are enabled but first-party cookies are disabled. + // Set the status of third-party cookies. + if (thirdPartyCookiesEnabledInt == 1) { thirdPartyCookiesEnabledSwitch.setChecked(true); - thirdPartyCookiesEnabledSwitch.setEnabled(false); - thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_ghosted)); - } else { // Both first party and third-party cookies are disabled. + } else { thirdPartyCookiesEnabledSwitch.setChecked(false); - thirdPartyCookiesEnabledSwitch.setEnabled(false); - thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_ghosted)); + } + + // Disable the third-party cookies switch. + thirdPartyCookiesEnabledSwitch.setEnabled(false); + + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_ghosted_dark)); + } else { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_ghosted_light)); } } } else { // Third-party cookies cannot be configured for API <= 21. @@ -182,8 +200,15 @@ public class DomainSettingsFragment extends Fragment { domStorageEnabledSwitch.setChecked(true); domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_enabled)); } else { // JavaScript is enabled but DOM storage is disabled. + // Set the DOM storage switch to off. domStorageEnabledSwitch.setChecked(false); - domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_disabled)); + + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_disabled_dark)); + } else { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_disabled_light)); + } } } else { // JavaScript is disabled. // Set the checked status of DOM storage. @@ -193,9 +218,15 @@ public class DomainSettingsFragment extends Fragment { domStorageEnabledSwitch.setChecked(false); } - // Disable `domStorageEnabledSwitch` and set the icon to be ghosted. + // Disable `domStorageEnabledSwitch`. domStorageEnabledSwitch.setEnabled(false); - domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_ghosted)); + + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_ghosted_dark)); + } else { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_ghosted_light)); + } } // Set the form data status. Once minimum API >= 21 we can use a selector as the tint mode instead of specifying different icons. @@ -203,8 +234,15 @@ public class DomainSettingsFragment extends Fragment { formDataEnabledSwitch.setChecked(true); formDataImageView.setImageDrawable(getResources().getDrawable(R.drawable.form_data_enabled)); } else { // Form data is disabled. + // Set the form data switch to off. formDataEnabledSwitch.setChecked(false); - formDataImageView.setImageDrawable(getResources().getDrawable(R.drawable.form_data_disabled)); + + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + formDataImageView.setImageDrawable(getResources().getDrawable(R.drawable.form_data_disabled_dark)); + } else { + formDataImageView.setImageDrawable(getResources().getDrawable(R.drawable.form_data_disabled_light)); + } } // We need to inflated a `WebView` to get the default user agent. @@ -260,18 +298,38 @@ public class DomainSettingsFragment extends Fragment { switch (displayImagesInt) { case DomainsDatabaseHelper.DISPLAY_WEBPAGE_IMAGES_SYSTEM_DEFAULT: if (MainWebViewActivity.displayWebpageImagesBoolean) { - displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled_dark)); + } else { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled_light)); + } } else { - displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled_dark)); + } else { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled_light)); + } } break; case DomainsDatabaseHelper.DISPLAY_WEBPAGE_IMAGES_ENABLED: - displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled_dark)); + } else { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled_light)); + } break; case DomainsDatabaseHelper.DISPLAY_WEBPAGE_IMAGES_DISABLED: - displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled_dark)); + } else { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled_light)); + } break; } @@ -291,7 +349,12 @@ public class DomainSettingsFragment extends Fragment { if (domStorageEnabledSwitch.isChecked()) { // DOM storage is enabled. domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_enabled)); } else { // DOM storage is disabled. - domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_disabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_disabled_dark)); + } else { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_disabled_light)); + } } } else { // JavaScript is disabled. // Update the JavaScript icon. @@ -300,8 +363,12 @@ public class DomainSettingsFragment extends Fragment { // Disable the DOM storage `Switch`. domStorageEnabledSwitch.setEnabled(false); - // Set the DOM storage icon to be ghosted. - domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_ghosted)); + // Set the DOM storage icon according to the theme. + if (MainWebViewActivity.darkTheme) { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_ghosted_dark)); + } else { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_ghosted_light)); + } } } }); @@ -321,17 +388,30 @@ public class DomainSettingsFragment extends Fragment { if (thirdPartyCookiesEnabledSwitch.isChecked()) { // Third-party cookies are enabled. thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_warning)); } else { // Third-party cookies are disabled. - thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled)); + // Set the third-party cookies icon according to the theme. + if (MainWebViewActivity.darkTheme) { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_dark)); + } else { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_light)); + } } } else { // First-party cookies are disabled. - // Update the first-party cookies icon. - firstPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled)); + // Update the first-party cookies icon according to the theme. + if (MainWebViewActivity.darkTheme) { + firstPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_dark)); + } else { + firstPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_light)); + } // Disable the third-party cookies `Switch`. thirdPartyCookiesEnabledSwitch.setEnabled(false); - // Set the third-party cookies icon to be ghosted. - thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_ghosted)); + // Set the third-party cookies icon according to the theme. + if (MainWebViewActivity.darkTheme) { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_ghosted_dark)); + } else { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_ghosted_light)); + } } } }); @@ -344,7 +424,12 @@ public class DomainSettingsFragment extends Fragment { if (isChecked) { thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_warning)); } else { - thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled)); + // Update the third-party cookies icon according to the theme. + if (MainWebViewActivity.darkTheme) { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_dark)); + } else { + thirdPartyCookiesImageView.setImageDrawable(getResources().getDrawable(R.drawable.cookies_disabled_light)); + } } } }); @@ -357,7 +442,12 @@ public class DomainSettingsFragment extends Fragment { if (isChecked) { domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_enabled)); } else { - domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_disabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_disabled_dark)); + } else { + domStorageImageView.setImageDrawable(getResources().getDrawable(R.drawable.dom_storage_disabled_light)); + } } } }); @@ -370,7 +460,12 @@ public class DomainSettingsFragment extends Fragment { if (isChecked) { formDataImageView.setImageDrawable(getResources().getDrawable(R.drawable.form_data_enabled)); } else { - formDataImageView.setImageDrawable(getResources().getDrawable(R.drawable.form_data_disabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + formDataImageView.setImageDrawable(getResources().getDrawable(R.drawable.form_data_disabled_dark)); + } else { + formDataImageView.setImageDrawable(getResources().getDrawable(R.drawable.form_data_disabled_light)); + } } } }); @@ -427,18 +522,38 @@ public class DomainSettingsFragment extends Fragment { switch (position) { case DomainsDatabaseHelper.DISPLAY_WEBPAGE_IMAGES_SYSTEM_DEFAULT: if (MainWebViewActivity.displayWebpageImagesBoolean) { - displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled_dark)); + } else { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled_light)); + } } else { - displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled_dark)); + } else { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled_light)); + } } break; case DomainsDatabaseHelper.DISPLAY_WEBPAGE_IMAGES_ENABLED: - displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled_dark)); + } else { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_enabled_light)); + } break; case DomainsDatabaseHelper.DISPLAY_WEBPAGE_IMAGES_DISABLED: - displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled)); + // Set the icon according to the theme. + if (MainWebViewActivity.darkTheme) { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled_dark)); + } else { + displayWebpageImagesImageView.setImageDrawable(getResources().getDrawable(R.drawable.images_disabled_light)); + } break; } }