import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
-import android.content.res.Configuration;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
// bookmarksListView is 0 indexed.
int lastBookmarkDatabaseId = (int) bookmarksListView.getItemIdAtPosition(bookmarksListView.getCount() - 1);
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
- // Update the move bookmark up `MenuItem`.
+ // Update the move bookmark up menu item.
if (selectedBookmarkDatabaseId == firstBookmarkDatabaseId) { // The selected bookmark is in the first position.
- // Disable the move bookmark up `MenuItem`.
+ // Disable the move bookmark up menu item.
moveBookmarkUpMenuItem.setEnabled(false);
- // Set the move bookmark up icon to be ghosted.
+ // Set the icon.
moveBookmarkUpMenuItem.setIcon(R.drawable.move_up_disabled);
} else { // The selected bookmark is not in the first position.
// Enable the move bookmark up menu item.
moveBookmarkUpMenuItem.setEnabled(true);
// Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- moveBookmarkUpMenuItem.setIcon(R.drawable.move_up_enabled_night);
- } else {
- moveBookmarkUpMenuItem.setIcon(R.drawable.move_up_enabled_day);
- }
+ moveBookmarkUpMenuItem.setIcon(R.drawable.move_up_enabled);
}
- // Update the move bookmark down `MenuItem`.
+ // Update the move bookmark down menu item.
if (selectedBookmarkDatabaseId == lastBookmarkDatabaseId) { // The selected bookmark is in the last position.
- // Disable the move bookmark down `MenuItem`.
+ // Disable the move bookmark down menu item.
moveBookmarkDownMenuItem.setEnabled(false);
- // Set the move bookmark down icon to be ghosted.
+ // Set the icon.
moveBookmarkDownMenuItem.setIcon(R.drawable.move_down_disabled);
} else { // The selected bookmark is not in the last position.
- // Enable the move bookmark down `MenuItem`.
+ // Enable the move bookmark down menu item.
moveBookmarkDownMenuItem.setEnabled(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- moveBookmarkDownMenuItem.setIcon(R.drawable.move_down_enabled_night);
- } else {
- moveBookmarkDownMenuItem.setIcon(R.drawable.move_down_enabled_day);
- }
+ // Set the icon.
+ moveBookmarkDownMenuItem.setIcon(R.drawable.move_down_enabled);
}
}
// Inflate the menu.
getMenuInflater().inflate(R.menu.bookmarks_databaseview_options_menu, menu);
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
// Get a handle for the sort menu item.
MenuItem sortMenuItem = menu.findItem(R.id.sort);
// Change the sort menu item icon if the listview is sorted by display order, which restores the state after a restart.
if (sortByDisplayOrder) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- sortMenuItem.setIcon(R.drawable.sort_selected_day);
- } else {
- sortMenuItem.setIcon(R.drawable.sort_selected_night);
- }
+ sortMenuItem.setIcon(R.drawable.sort_selected);
}
// Success.
// Get a handle for the bookmarks list view.
ListView bookmarksListView = findViewById(R.id.bookmarks_databaseview_listview);
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
// Update the icon and display a snackbar.
if (sortByDisplayOrder) { // Sort by display order.
- // Update the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- menuItem.setIcon(R.drawable.sort_selected_day);
- } else {
- menuItem.setIcon(R.drawable.sort_selected_night);
- }
+ // Update the icon.
+ menuItem.setIcon(R.drawable.sort_selected);
// Display a Snackbar indicating the current sort type.
Snackbar.make(bookmarksListView, R.string.sorted_by_display_order, Snackbar.LENGTH_SHORT).show();
} else { // Sort by database id.
- // Update the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- menuItem.setIcon(R.drawable.sort_day);
- } else {
- menuItem.setIcon(R.drawable.sort_night);
- }
+ // Update the icon.
+ menuItem.setIcon(R.drawable.sort);
// Display a Snackbar indicating the current sort type.
Snackbar.make(bookmarksListView, R.string.sorted_by_database_id, Snackbar.LENGTH_SHORT).show();
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
-import android.content.res.Configuration;
import android.content.res.Resources;
import android.database.Cursor;
import android.os.Bundle;
// Enable the options delete menu item.
deleteMenuItem.setEnabled(true);
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
- // Set the delete menu item icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- deleteMenuItem.setIcon(R.drawable.delete_night);
- } else {
- deleteMenuItem.setIcon(R.drawable.delete_day);
- }
+ // Set the delete menu item icon.
+ deleteMenuItem.setIcon(R.drawable.delete_enabled);
} else { // The device in in one-paned mode.
// Display the domain settings fragment.
fragmentManager.beginTransaction().replace(R.id.domains_listview_fragment_container, domainSettingsFragment).commit();
// Enable the delete menu item.
deleteMenuItem.setEnabled(true);
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
- // Set the delete menu item icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- deleteMenuItem.setIcon(R.drawable.delete_night);
- } else {
- deleteMenuItem.setIcon(R.drawable.delete_day);
- }
+ // Set the delete menu item icon.
+ deleteMenuItem.setIcon(R.drawable.delete_enabled);
} else { // Single-paned mode.
// Show the delete menu item.
deleteMenuItem.setVisible(true);
// Enable the delete options menu items.
deleteMenuItem.setEnabled(true);
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
- // Set the delete icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- deleteMenuItem.setIcon(R.drawable.delete_night);
- } else {
- deleteMenuItem.setIcon(R.drawable.delete_day);
- }
+ // Set the delete icon.
+ deleteMenuItem.setIcon(R.drawable.delete_enabled);
} else if (twoPanedMode) { // Two-paned mode is enabled but there are no domains.
// Disable the options `MenuItems`.
deleteMenuItem.setEnabled(false);
Snackbar.make(currentWebView, getString(R.string.file_saved) + " " + fileNameString, Snackbar.LENGTH_SHORT).show();
} catch (Exception exception) {
// Display a snackbar with the exception.
- Snackbar.make(currentWebView, getString(R.string.error_saving_file) + " " + exception.toString(), Snackbar.LENGTH_INDEFINITE).show();
+ Snackbar.make(currentWebView, getString(R.string.error_saving_file) + " " + exception, Snackbar.LENGTH_INDEFINITE).show();
} finally {
// Delete the temporary MHT file.
//noinspection ResultOfMethodCallIgnored
});
} catch (IOException ioException) {
// Display a snackbar with the IO exception.
- Snackbar.make(currentWebView, getString(R.string.error_saving_file) + " " + ioException.toString(), Snackbar.LENGTH_INDEFINITE).show();
+ Snackbar.make(currentWebView, getString(R.string.error_saving_file) + " " + ioException, Snackbar.LENGTH_INDEFINITE).show();
}
}
}
// Set the title.
optionsRefreshMenuItem.setTitle(R.string.stop);
- // Set the icon if it is displayed in the app bar.
+ // Set the icon if it is displayed in the app bar. Once the minimum API is >= 26, the blue and black icons can be combined with a tint list.
if (displayAdditionalAppBarIcons) {
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
- // Set the icon according to the current theme status.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- optionsRefreshMenuItem.setIcon(R.drawable.close_blue_day);
- } else {
- optionsRefreshMenuItem.setIcon(R.drawable.close_blue_night);
- }
+ optionsRefreshMenuItem.setIcon(R.drawable.close_blue);
}
}
// Initialize the formatted URL string.
String url = "";
- // Check to see if `unformattedUrlString` is a valid URL. Otherwise, convert it into a search.
+ // Check to see if the unformatted URL string is a valid URL. Otherwise, convert it into a search.
if (unformattedUrlString.startsWith("content://")) { // This is a Content URL.
// Load the entire content URL.
url = unformattedUrlString;
} else if (Patterns.WEB_URL.matcher(unformattedUrlString).matches() || unformattedUrlString.startsWith("http://") || unformattedUrlString.startsWith("https://") ||
unformattedUrlString.startsWith("file://")) { // This is a standard URL.
// Add `https://` at the beginning if there is no protocol. Otherwise the app will segfault.
- if (!unformattedUrlString.startsWith("http") && !unformattedUrlString.startsWith("file://") && !unformattedUrlString.startsWith("content://")) {
+ if (!unformattedUrlString.startsWith("http") && !unformattedUrlString.startsWith("file://")) {
unformattedUrlString = "https://" + unformattedUrlString;
}
- // Initialize `unformattedUrl`.
+ // Initialize the unformatted URL.
URL unformattedUrl = null;
- // Convert `unformattedUrlString` to a `URL`, then to a `URI`, and then back to a `String`, which sanitizes the input and adds in any missing components.
+ // Convert the unformatted URL string to a URL, then to a URI, and then back to a string, which sanitizes the input and adds in any missing components.
try {
unformattedUrl = new URL(unformattedUrlString);
} catch (MalformedURLException e) {
currentWebView.loadUrl(temporaryMhtFile.toString());
} catch (Exception exception) {
// Display a snackbar.
- Snackbar.make(currentWebView, getString(R.string.error) + " " + exception.toString(), Snackbar.LENGTH_INDEFINITE).show();
+ Snackbar.make(currentWebView, getString(R.string.error) + " " + exception, Snackbar.LENGTH_INDEFINITE).show();
}
} else { // Let the WebView handle opening of the file.
// Open the file.
break;
}
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
// Set a background on the URL relative layout to indicate that custom domain settings are being used.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- urlRelativeLayout.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.url_bar_background_light_green, null));
- } else {
- urlRelativeLayout.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.url_bar_background_dark_blue, null));
- }
+ urlRelativeLayout.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.domain_settings_url_background, null));
} else { // The new URL does not have custom domain settings. Load the defaults.
// Store the values from the shared preferences.
nestedScrollWebView.getSettings().setJavaScriptEnabled(sharedPreferences.getBoolean("javascript", false));
optionsPrivacyMenuItem.setIcon(R.drawable.privacy_mode);
}
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
// Update the cookies icon.
- if (currentWebView.getAcceptCookies()) { // Cookies are enabled.
+ if (currentWebView.getAcceptCookies()) {
optionsCookiesMenuItem.setIcon(R.drawable.cookies_enabled);
- } else { // Cookies are disabled.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- optionsCookiesMenuItem.setIcon(R.drawable.cookies_disabled_day);
- } else {
- optionsCookiesMenuItem.setIcon(R.drawable.cookies_disabled_night);
- }
+ } else {
+ optionsCookiesMenuItem.setIcon(R.drawable.cookies_disabled);
}
// Update the refresh icon.
if (optionsRefreshMenuItem.getTitle() == getString(R.string.refresh)) { // The refresh icon is displayed.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- optionsRefreshMenuItem.setIcon(R.drawable.refresh_enabled_day);
- } else {
- optionsRefreshMenuItem.setIcon(R.drawable.refresh_enabled_night);
- }
+ // Set the icon. Once the minimum API is >= 26, the blue and black icons can be combined with a tint list.
+ optionsRefreshMenuItem.setIcon(R.drawable.refresh_enabled);
} else { // The stop icon is displayed.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- optionsRefreshMenuItem.setIcon(R.drawable.close_blue_day);
- } else {
- optionsRefreshMenuItem.setIcon(R.drawable.close_blue_night);
- }
+ // Set the icon. Once the minimum API is >= 26, the blue and black icons can be combined with a tint list.
+ optionsRefreshMenuItem.setIcon(R.drawable.close_blue);
}
// `invalidateOptionsMenu()` calls `onPrepareOptionsMenu()` and redraws the icons in the app bar.
// Set the background to indicate the domain settings status.
if (currentWebView.getDomainSettingsApplied()) {
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
- // Set a green background on the URL relative layout to indicate that custom domain settings are being used.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- urlRelativeLayout.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.url_bar_background_light_green, null));
- } else {
- urlRelativeLayout.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.url_bar_background_dark_blue, null));
- }
+ // Set a background on the URL relative layout to indicate that custom domain settings are being used.
+ urlRelativeLayout.setBackground(ResourcesCompat.getDrawable(getResources(), R.drawable.domain_settings_url_background, null));
} else {
+ // Remove any background on the URL relative layout.
urlRelativeLayout.setBackground(ResourcesCompat.getDrawable(getResources(), R.color.transparent, null));
}
} else { // The fragment has not been populated. Try again in 100 milliseconds.
// Get the app bar and theme preferences.
boolean displayAdditionalAppBarIcons = sharedPreferences.getBoolean(getString(R.string.display_additional_app_bar_icons_key), false);
- // If the icon is displayed in the AppBar, set it according to the theme.
+ // Set the icon if it is displayed in the AppBar. Once the minimum API is >= 26, the blue and black icons can be combined with a tint list.
if (displayAdditionalAppBarIcons) {
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
- // Set the stop icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- optionsRefreshMenuItem.setIcon(R.drawable.close_blue_day);
- } else {
- optionsRefreshMenuItem.setIcon(R.drawable.close_blue_night);
- }
+ optionsRefreshMenuItem.setIcon(R.drawable.close_blue);
}
}
}
// If the icon is displayed in the app bar, reset it according to the theme.
if (displayAdditionalAppBarIcons) {
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- optionsRefreshMenuItem.setIcon(R.drawable.refresh_enabled_day);
- } else {
- optionsRefreshMenuItem.setIcon(R.drawable.refresh_enabled_night);
- }
+ // Set the icon.
+ optionsRefreshMenuItem.setIcon(R.drawable.refresh_enabled);
}
}
}
}
- // Handle SSL Certificate errors.
+ // Handle SSL Certificate errors. Suppress the lint warning that ignoring the error might be dangerous.
+ @SuppressLint("WebViewClientOnReceivedSslError")
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
// Get the current website SSL certificate.
package com.stoutner.privacybrowser.adapters
import android.content.Context
-import android.content.res.Configuration
import android.net.Uri
import android.text.SpannableStringBuilder
import android.text.Spanned
}
}
- // Define the color spans.
- val blueColorSpan: ForegroundColorSpan
- val redColorSpan: ForegroundColorSpan
-
- // Get the current theme status.
- val currentThemeStatus = context.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK
-
- // Set the color spans according to the theme. The deprecated `resources` must be used until the minimum API >= 23.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- blueColorSpan = ForegroundColorSpan(context.getColor(R.color.blue_700))
- redColorSpan = ForegroundColorSpan(context.getColor(R.color.red_a700))
- } else {
- blueColorSpan = ForegroundColorSpan(context.getColor(R.color.violet_700))
- redColorSpan = ForegroundColorSpan(context.getColor(R.color.red_900))
- }
+ // Create the color spans.
+ val blueColorSpan = ForegroundColorSpan(context.getColor(R.color.blue_text))
+ val redColorSpan = ForegroundColorSpan(context.getColor(R.color.red_text))
// Set the domain name to be blue.
domainNameStringBuilder.setSpan(blueColorSpan, domainNameLabel.length, domainNameStringBuilder.length, Spanned.SPAN_INCLUSIVE_INCLUSIVE)
val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog)
// Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.aboutBlueIcon)
+ dialogBuilder.setIcon(R.drawable.about_blue)
// Set the title.
dialogBuilder.setTitle(R.string.about_view_source)
// Use an alert dialog builder to create the alert dialog.
val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog)
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.domainsBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.domains)
// Set the title.
dialogBuilder.setTitle(R.string.add_domain)
val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog)
// Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.fontSizeBlueIcon)
+ dialogBuilder.setIcon(R.drawable.font_size)
// Set the title.
dialogBuilder.setTitle(R.string.font_size)
import android.app.Dialog
import android.content.DialogInterface
-import android.content.res.Configuration
import android.os.Bundle
import android.text.SpannableStringBuilder
import android.text.Spanned
// Use an alert dialog builder to create the alert dialog.
val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog)
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.lockBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.lock)
// Set the title.
dialogBuilder.setTitle(R.string.http_authentication)
val hostLabel = getString(R.string.host) + " "
val hostStringBuilder = SpannableStringBuilder(hostLabel + httpAuthHost)
- // Get the current theme status.
- val currentThemeStatus = resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK
-
- // Set the blue color span according to the theme. The deprecated `getColor()` must be used until API >= 23.
- val blueColorSpan = if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- @Suppress("DEPRECATION")
- ForegroundColorSpan(resources.getColor(R.color.blue_700))
- } else {
- @Suppress("DEPRECATION")
- ForegroundColorSpan(resources.getColor(R.color.violet_700))
- }
+ // Set the blue color span.
+ val blueColorSpan = ForegroundColorSpan(requireContext().getColor(R.color.blue_text))
// Setup the span to display the host name in blue. `SPAN_INCLUSIVE_INCLUSIVE` allows the span to grow in either direction.
hostStringBuilder.setSpan(blueColorSpan, hostLabel.length, hostStringBuilder.length, Spanned.SPAN_INCLUSIVE_INCLUSIVE)
// Use an alert dialog builder to create the alert dialog.
val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog)
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.moveToFolderBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.move_to_folder_blue)
// Set the title.
dialogBuilder.setTitle(R.string.move_to_folder)
// Use an alert dialog builder to create the alert dialog.
val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog)
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.proxyBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.proxy_enabled)
// Set the title.
dialogBuilder.setTitle(R.string.open)
// Set the favorite icon as the dialog icon if it exists.
if (favoriteIconBitmap.sameAs(defaultFavoriteIconBitmap)) { // There is no website favorite icon.
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.sslCertificateBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.ssl_certificate_enabled)
} else { // There is a favorite icon.
// Create a drawable version of the favorite icon.
val favoriteIconDrawable: Drawable = BitmapDrawable(resources, favoriteIconBitmap)
// Use a builder to create the alert dialog.
val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog)
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.proxyBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.proxy_enabled)
// Set the title and the message according to the proxy mode.
when (proxyMode) {
// Set the title.
dialogBuilder.setTitle(R.string.save_url)
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.copyBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.download)
// Set the view.
dialogBuilder.setView(R.layout.save_dialog)
import android.app.Activity
import android.app.Dialog
import android.content.DialogInterface
-import android.content.res.Configuration
import android.net.Uri
import android.net.http.SslError
import android.os.AsyncTask
// Use an alert dialog builder to create the alert dialog.
val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog)
- // Get the current theme status.
- val currentThemeStatus = resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK
-
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.sslCertificateBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.ssl_certificate_enabled)
// Set the title.
dialogBuilder.setTitle(R.string.ssl_certificate_error)
val endDateStringBuilder = SpannableStringBuilder(endDateLabel + endDate)
// Define the color spans.
- val blueColorSpan: ForegroundColorSpan
- val redColorSpan: ForegroundColorSpan
-
- // Set the color spans according to the theme. The deprecated `getColor()` must be used until the minimum API >= 23.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- @Suppress("DEPRECATION")
- blueColorSpan = ForegroundColorSpan(resources.getColor(R.color.blue_700))
- @Suppress("DEPRECATION")
- redColorSpan = ForegroundColorSpan(resources.getColor(R.color.red_a700))
- } else {
- @Suppress("DEPRECATION")
- blueColorSpan = ForegroundColorSpan(resources.getColor(R.color.violet_700))
- @Suppress("DEPRECATION")
- redColorSpan = ForegroundColorSpan(resources.getColor(R.color.red_900))
- }
+ val blueColorSpan = ForegroundColorSpan(requireContext().getColor(R.color.blue_text))
+ val redColorSpan = ForegroundColorSpan(requireContext().getColor(R.color.red_text))
// Setup the spans to display the certificate information in blue. `SPAN_INCLUSIVE_INCLUSIVE` allows the span to grow in either direction.
urlStringBuilder.setSpan(blueColorSpan, urlLabel.length, urlStringBuilder.length, Spanned.SPAN_INCLUSIVE_INCLUSIVE)
}
SslError.SSL_UNTRUSTED -> {
- // Change the issued by text view text to red. The deprecated `getColor()` must be used until the minimum API >= 23.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- @Suppress("DEPRECATION")
- issuedByTextView.setTextColor(resources.getColor(R.color.red_a700))
- } else {
- @Suppress("DEPRECATION")
- issuedByTextView.setTextColor(resources.getColor(R.color.red_900))
- }
+ // Change the issued by text view text to red.
+ issuedByTextView.setTextColor(requireContext().getColor(R.color.red_text))
// Change the issued by span color to red.
issuedByCNameStringBuilder.setSpan(redColorSpan, cNameLabel.length, issuedByCNameStringBuilder.length, Spanned.SPAN_INCLUSIVE_INCLUSIVE)
}
SslError.SSL_DATE_INVALID -> {
- // Change the valid dates text view text to red. The deprecated `getColor()` must be used until the minimum API >= 23.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- @Suppress("DEPRECATION")
- validDatesTextView.setTextColor(resources.getColor(R.color.red_a700))
- } else {
- @Suppress("DEPRECATION")
- validDatesTextView.setTextColor(resources.getColor(R.color.red_900))
- }
+ // Change the valid dates text view text to red.
+ validDatesTextView.setTextColor(requireContext().getColor(R.color.red_text))
// Change the date span colors to red.
startDateStringBuilder.setSpan(redColorSpan, startDateLabel.length, startDateStringBuilder.length, Spanned.SPAN_INCLUSIVE_INCLUSIVE)
// Create a spannable string builder.
val ipAddressesStringBuilder = SpannableStringBuilder(ipAddressesLabel + ipAddresses)
- // Create a blue foreground color span.
- val blueColorSpan: ForegroundColorSpan
-
- // Get the current theme status.
- val currentThemeStatus = activity.resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK
-
- // Set the blue color span according to the theme. The deprecated `getColor()` must be used until the minimum API >= 23.
- blueColorSpan = if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- @Suppress("DEPRECATION")
- ForegroundColorSpan(activity.resources.getColor(R.color.blue_700))
- } else {
- @Suppress("DEPRECATION")
- ForegroundColorSpan(activity.resources.getColor(R.color.violet_500))
- }
+ // Create a blue color span according to the theme.
+ val blueColorSpan = ForegroundColorSpan(activity.getColor(R.color.blue_text))
// Set the string builder to display the certificate information in blue. `SPAN_INCLUSIVE_INCLUSIVE` allows the span to grow in either direction.
ipAddressesStringBuilder.setSpan(blueColorSpan, ipAddressesLabel.length, ipAddressesStringBuilder.length, Spanned.SPAN_INCLUSIVE_INCLUSIVE)
// Use a builder to create the alert dialog.
val dialogBuilder = AlertDialog.Builder(requireContext(), R.style.PrivacyBrowserAlertDialog)
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.sslCertificateBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.ssl_certificate_enabled)
// Set the title.
dialogBuilder.setTitle(R.string.ssl_certificate_error)
// Get the current theme status.
val currentThemeStatus = resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK
- // Set the icon according to the theme.
- dialogBuilder.setIconAttribute(R.attr.blockAdsBlueIcon)
+ // Set the icon.
+ dialogBuilder.setIcon(R.drawable.block_ads_enabled)
// Set the title.
dialogBuilder.setTitle(resources.getString(R.string.request_details) + " - " + id)
package com.stoutner.privacybrowser.dialogs
import android.app.Dialog
-import android.content.res.Configuration
import android.graphics.Bitmap
import android.graphics.BitmapFactory
import android.graphics.drawable.BitmapDrawable
val endDateStringBuilder = SpannableStringBuilder(endDateLabel + DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.LONG).format(endDate))
// Define the color spans.
- val blueColorSpan: ForegroundColorSpan
- val redColorSpan: ForegroundColorSpan
-
- // Get the current theme status.
- val currentThemeStatus = resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK
-
- // Set the color spans according to the theme. The deprecated `getColor()` must be used until the minimum API >= 23.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- @Suppress("DEPRECATION")
- blueColorSpan = ForegroundColorSpan(resources.getColor(R.color.blue_700))
- @Suppress("DEPRECATION")
- redColorSpan = ForegroundColorSpan(resources.getColor(R.color.red_a700))
- } else {
- @Suppress("DEPRECATION")
- blueColorSpan = ForegroundColorSpan(resources.getColor(R.color.violet_700))
- @Suppress("DEPRECATION")
- redColorSpan = ForegroundColorSpan(resources.getColor(R.color.red_900))
- }
+ val blueColorSpan = ForegroundColorSpan(requireContext().getColor(R.color.blue_text))
+ val redColorSpan = ForegroundColorSpan(requireContext().getColor(R.color.red_text))
// Format the domain string and issued to CName colors.
if (domainString == issuedToCName) { // The domain and issued to CName match.
savedSslEndDateStringBuilder = new SpannableStringBuilder(endDateLabel + DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.LONG).format(savedSslEndDate));
}
- // Create the foreground color spans.
- final ForegroundColorSpan blueColorSpan;
- final ForegroundColorSpan redColorSpan;
-
- // Set the color spans according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- blueColorSpan = new ForegroundColorSpan(context.getColor(R.color.blue_700));
- redColorSpan = new ForegroundColorSpan(context.getColor(R.color.red_a700));
- } else {
- blueColorSpan = new ForegroundColorSpan(context.getColor(R.color.violet_700));
- redColorSpan = new ForegroundColorSpan(context.getColor(R.color.red_900));
- }
+ // Create the color spans.
+ final ForegroundColorSpan blueColorSpan = new ForegroundColorSpan(context.getColor(R.color.blue_text));
+ final ForegroundColorSpan redColorSpan = new ForegroundColorSpan(context.getColor(R.color.red_text));
// Set the domain name from the the database cursor.
domainNameEditText.setText(domainNameString);
}
// Set the cookies switch status. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
if (cookiesInt == 1) { // Cookies are enabled.
// Turn the switch on.
cookiesSwitch.setChecked(true);
// Turn the switch off
cookiesSwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- cookiesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.cookies_disabled_day, null));
- } else {
- cookiesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.cookies_disabled_night, null));
- }
+ // Set the icon.
+ cookiesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.cookies_disabled, null));
}
// Only enable DOM storage if JavaScript is enabled.
domStorageSwitch.setEnabled(true);
// Set the DOM storage status. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
if (domStorageInt == 1) { // Both JavaScript and DOM storage are enabled.
domStorageSwitch.setChecked(true);
domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_enabled, null));
// Set the DOM storage switch to off.
domStorageSwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_disabled_night, null));
- } else {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_disabled_day, null));
- }
+ // Set the icon.
+ domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_disabled, null));
}
} else { // JavaScript is disabled.
- // Disable the DOM storage `Switch`.
+ // Disable the DOM storage switch.
domStorageSwitch.setEnabled(false);
// Set the checked status of DOM storage.
domStorageSwitch.setChecked(domStorageInt == 1);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_ghosted_night, null));
- } else {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_ghosted_day, null));
- }
+ // Set the icon.
+ domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_ghosted, null));
}
// Set the form data visibility. Form data can be removed once the minimum API >= 26.
// Turn the form data switch to off.
formDataSwitch.setChecked(false);
- // Set the icon according to the theme. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- formDataImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.form_data_disabled_night, null));
- } else {
- formDataImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.form_data_disabled_day, null));
- }
+ // Set the icon. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
+ formDataImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.form_data_disabled, null));
}
}
// Set the EasyList status. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
if (easyListInt == 1) { // EasyList is on.
// Turn the switch on.
easyListSwitch.setChecked(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled_night, null));
- } else {
- easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled_day, null));
- }
+ // Set the icon.
+ easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled, null));
} else { // EasyList is off.
// Turn the switch off.
easyListSwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled_night, null));
- } else {
- easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled_day, null));
- }
+ // Set the icon.
+ easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled, null));
}
// Set the EasyPrivacy status. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
if (easyPrivacyInt == 1) { // EasyPrivacy is on.
// Turn the switch on.
easyPrivacySwitch.setChecked(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled_night, null));
- } else {
- easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled_day, null));
- }
+ // Set the icon.
+ easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled, null));
} else { // EasyPrivacy is off.
// Turn the switch off.
easyPrivacySwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled_night, null));
- } else {
- easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled_day, null));
- }
+ // Set the icon.
+ easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled, null));
}
// Set the Fanboy's Annoyance List status. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
if (fanboysAnnoyanceListInt == 1) { // Fanboy's Annoyance List is on.
// Turn the switch on.
fanboysAnnoyanceListSwitch.setChecked(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_night, null));
- } else {
- fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_day, null));
- }
+ // Set the icon.
+ fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled, null));
} else { // Fanboy's Annoyance List is off.
// Turn the switch off.
fanboysAnnoyanceListSwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_night, null));
- } else {
- fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_day, null));
- }
+ // Set the icon.
+ fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled, null));
}
// Only enable Fanboy's Social Blocking List if Fanboy's Annoyance List is off.
fanboysSocialBlockingListSwitch.setEnabled(true);
// Enable Fanboy's Social Blocking List. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
if (fanboysSocialBlockingListInt == 1) { // Fanboy's Social Blocking List is on.
// Turn on Fanboy's Social Blocking List switch.
fanboysSocialBlockingListSwitch.setChecked(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_night, null));
- } else {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_day, null));
- }
+ // Set the icon.
+ fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled, null));
} else { // Fanboy's Social Blocking List is off.
// Turn off Fanboy's Social Blocking List switch.
fanboysSocialBlockingListSwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_night, null));
- } else {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_day, null));
- }
+ // Set the icon.
+ fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled, null));
}
} else { // Fanboy's Annoyance List is on.
// Disable Fanboy's Social Blocking List switch.
// Set the status of Fanboy's Social Blocking List.
fanboysSocialBlockingListSwitch.setChecked(fanboysSocialBlockingListInt == 1);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_ghosted_night, null));
- } else {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_ghosted_day, null));
- }
+ // Set the icon.
+ fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_ghosted, null));
}
// Set the UltraList status. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
if (ultraListInt == 1) { // UltraList is on.
// Turn the switch on.
ultraListSwitch.setChecked(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled_night, null));
- } else {
- ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled_day, null));
- }
+ // Set the icon.
+ ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled, null));
} else { // UltraList is off.
// Turn the switch off.
ultraListSwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled_night, null));
- } else {
- ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled_day, null));
- }
+ // Set the icon.
+ ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled, null));
}
// Set the UltraPrivacy status. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
if (ultraPrivacyInt == 1) { // UltraPrivacy is on.
// Turn the switch on.
ultraPrivacySwitch.setChecked(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled_night, null));
- } else {
- ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled_day, null));
- }
+ // Set the icon.
+ ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled, null));
} else { // EasyPrivacy is off.
// Turn the switch off.
ultraPrivacySwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled_night, null));
- } else {
- ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled_day, null));
- }
+ // Set the icon.
+ ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled, null));
}
// Set the third-party resource blocking status. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
if (blockAllThirdPartyRequestsInt == 1) { // Blocking all third-party requests is on.
// Turn the switch on.
blockAllThirdPartyRequestsSwitch.setChecked(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_enabled_night, null));
- } else {
- blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_enabled_day, null));
- }
+ // Set the icon.
+ blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_enabled, null));
} else { // Blocking all third-party requests is off.
// Turn the switch off.
blockAllThirdPartyRequestsSwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_disabled_night, null));
- } else {
- blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_disabled_day, null));
- }
+ // Set the icon.
+ blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_disabled, null));
}
// Inflated a WebView to get the default user agent.
swipeToRefreshTextView.setText(swipeToRefreshArrayAdapter.getItem(DomainsDatabaseHelper.DISABLED));
}
- // Set the swipe to refresh icon and TextView settings. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Set the swipe to refresh icon and text view settings. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
switch (swipeToRefreshInt) {
case DomainsDatabaseHelper.SYSTEM_DEFAULT:
if (defaultSwipeToRefresh) { // Swipe to refresh is enabled by default.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled_night, null));
- } else {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled_day, null));
- }
- } else { // Swipe to refresh is disabled by default
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled_night, null));
- } else {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled_day, null));
- }
+ // Set the icon.
+ swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled, null));
+ } else {
+ // Set the icon.
+ swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled, null));
}
- // Show the swipe to refresh TextView.
+ // Show the swipe to refresh text view.
swipeToRefreshTextView.setVisibility(View.VISIBLE);
break;
case DomainsDatabaseHelper.ENABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled_night, null));
- } else {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled_day, null));
- }
+ // Set the icon.
+ swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled, null));
- // Hide the swipe to refresh TextView.`
+ // Hide the swipe to refresh text view.
swipeToRefreshTextView.setVisibility(View.GONE);
break;
case DomainsDatabaseHelper.DISABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled_night, null));
- } else {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled_day, null));
- }
+ // Set the icon.
+ swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled, null));
- // Hide the swipe to refresh TextView.
+ // Hide the swipe to refresh text view.
swipeToRefreshTextView.setVisibility(View.GONE);
break;
}
- // Open the swipe to refresh spinner when the TextView is clicked.
+ // Open the swipe to refresh spinner when the text view is clicked.
swipeToRefreshTextView.setOnClickListener((View v) -> {
// Open the swipe to refresh spinner.
swipeToRefreshSpinner.performClick();
}
// Set the WebView theme icon and text visibility. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
switch (webViewThemeInt) {
case DomainsDatabaseHelper.SYSTEM_DEFAULT: // The domain WebView theme is system default.
// Set the icon according to the app WebView theme.
case DomainsDatabaseHelper.SYSTEM_DEFAULT: // The default WebView theme is system default.
// Set the icon according to the app theme.
if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- // Set the light mode icon.
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_day, null));
+ // Set the light theme icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme, null));
} else {
// Set the dark theme icon.
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_night, null));
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme, null));
}
break;
case DomainsDatabaseHelper.LIGHT_THEME: // the default WebView theme is light.
- // Set the icon according to the app theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_day, null));
- } else {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_night, null));
- }
+ // Set the icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme, null));
break;
case DomainsDatabaseHelper.DARK_THEME: // the default WebView theme is dark.
- // Set the icon according to the app theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_day, null));
- } else {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_night, null)); }
+ // Set the icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme, null));
break;
}
break;
case DomainsDatabaseHelper.LIGHT_THEME: // The domain WebView theme is light.
- // Set the icon according to the app theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_day, null));
- } else {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_night, null));
- }
+ // Set the icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme, null));
// Hide the WebView theme text view.
webViewThemeTextView.setVisibility(View.GONE);
break;
case DomainsDatabaseHelper.DARK_THEME: // The domain WebView theme is dark.
- // Set the icon according to the app theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_day, null));
- } else {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_night, null));
- }
+ // Set the icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme, null));
// Hide the WebView theme text view.
webViewThemeTextView.setVisibility(View.GONE);
}
// Set the wide viewport icon and text view settings. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
switch (wideViewportInt) {
case DomainsDatabaseHelper.SYSTEM_DEFAULT:
+ // Set the icon.
if (defaultWideViewport) { // Wide viewport enabled by default.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled_night, null));
- } else {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled_day, null));
- }
+ wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled, null));
} else { // Wide viewport disabled by default.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled_night, null));
- } else {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled_day, null));
- }
+ wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled, null));
}
// Show the wide viewport text view.
case DomainsDatabaseHelper.ENABLED:
// Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled_night, null));
- } else {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled_day, null));
- }
+ wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled, null));
// Hide the wide viewport text view.
wideViewportTextView.setVisibility(View.GONE);
break;
case DomainsDatabaseHelper.DISABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled_night, null));
- } else {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled_day, null));
- }
+ // Set the icon.
+ wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled, null));
// Hide the wide viewport text view.
wideViewportTextView.setVisibility(View.GONE);
}
// Set the display website images icon and text view settings. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
switch (displayImagesInt) {
case DomainsDatabaseHelper.SYSTEM_DEFAULT:
if (defaultDisplayWebpageImages) { // Display webpage images enabled by default.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled_night, null));
- } else {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled_day, null));
- }
+ // Set the icon.
+ displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled, null));
} else { // Display webpage images disabled by default.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled_night, null));
- } else {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled_day, null));
- }
+ // Set the icon.
+ displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled, null));
}
// Show the display images text view.
break;
case DomainsDatabaseHelper.ENABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled_night, null));
- } else {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled_day, null));
- }
+ // Set the icon.
+ displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled, null));
// Hide the display images text view.
displayImagesTextView.setVisibility(View.GONE);
break;
case DomainsDatabaseHelper.DISABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled_night, null));
- } else {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled_day, null));
- }
+ // Set the icon.
+ displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled, null));
// Hide the display images text view.
displayImagesTextView.setVisibility(View.GONE);
// Set the pinned SSL certificate icon.
if (pinnedSslCertificateInt == 1) { // Pinned SSL certificate is enabled. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
// Check the switch.
pinnedSslCertificateSwitch.setChecked(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled_night, null));
- } else {
- pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled_day, null));
- }
+ // Set the icon.
+ pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled, null));
} else { // Pinned SSL certificate is disabled.
// Uncheck the switch.
pinnedSslCertificateSwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled_night, null));
- } else {
- pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled_day, null));
- }
+ // Set the icon.
+ pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled, null));
}
// Store the current date.
// Set the pinned IP addresses icon.
if (pinnedIpAddressesInt == 1) { // Pinned IP addresses is enabled. Once the minimum API >= 21 a selector can be sued as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
// Check the switch.
pinnedIpAddressesSwitch.setChecked(true);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled_night, null));
- } else {
- pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled_day, null));
- }
+ // Set the icon.
+ pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled, null));
} else { // Pinned IP Addresses is disabled.
// Uncheck the switch.
pinnedIpAddressesSwitch.setChecked(false);
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled_night, null));
- } else {
- pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled_day, null));
- }
+ // Set the icon.
+ pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled, null));
}
// Populate the saved and current IP addresses.
if (domStorageSwitch.isChecked()) { // DOM storage is enabled.
domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_enabled, null));
} else { // DOM storage is disabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_disabled_night, null));
- } else {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_disabled_day, null));
- }
+ // Set the icon.
+ domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_disabled, null));
}
} else { // JavaScript is disabled.
// Update the JavaScript icon.
javaScriptImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.privacy_mode, null));
- // Disable the DOM storage `Switch`.
+ // Disable the DOM storage switch.
domStorageSwitch.setEnabled(false);
- // Set the DOM storage icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_ghosted_night, null));
- } else {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_ghosted_day, null));
- }
+ // Set the DOM storage icon.
+ domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_ghosted, null));
}
});
// Set the cookies switch listener.
cookiesSwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
- if (isChecked) { // Cookies are enabled.
- // Update the cookies icon.
+ // Update the cookies icon.
+ if (isChecked) {
cookiesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.cookies_enabled, null));
- } else { // Cookies are disabled.
- // Update the cookies icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- cookiesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.cookies_disabled_day, null));
- } else {
- cookiesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.cookies_disabled_night, null));
- }
+ } else {
+ cookiesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.cookies_disabled, null));
}
});
if (isChecked) {
domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_enabled, null));
} else {
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_disabled_night, null));
- } else {
- domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_disabled_day, null));
- }
+ // Set the icon.
+ domStorageImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.dom_storage_disabled, null));
}
});
if (isChecked) {
formDataImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.form_data_enabled, null));
} else {
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- formDataImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.form_data_disabled_night, null));
- } else {
- formDataImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.form_data_disabled_day, null));
- }
+ // Set the icon.
+ formDataImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.form_data_disabled, null));
}
});
}
// Set the EasyList switch listener.
easyListSwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
// Update the icon.
- if (isChecked) { // EasyList is on.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled_night, null));
- } else {
- easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled_day, null));
- }
- } else { // EasyList is off.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled_night, null));
- } else {
- easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled_day, null));
- }
+ if (isChecked) {
+ easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled, null));
+ } else {
+ easyListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled, null));
}
});
easyPrivacySwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
// Update the icon.
if (isChecked) { // EasyPrivacy is on.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled_night, null));
- } else {
- easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled_day, null));
- }
- } else { // EasyPrivacy is off.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled_night, null));
- } else {
- easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled_day, null));
- }
+ // Set the icon.
+ easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled, null));
+ } else {
+ easyPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled, null));
}
});
fanboysAnnoyanceListSwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
// Update the icon and Fanboy's Social Blocking List.
if (isChecked) { // Fanboy's Annoyance List is on.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_night, null));
- } else {
- fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_day, null));
- }
+ // Set the icon.
+ fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled, null));
// Disable the Fanboy's Social Blocking List switch.
fanboysSocialBlockingListSwitch.setEnabled(false);
- // Update the Fanboy's Social Blocking List icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_ghosted_night, null));
- } else {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_ghosted_day, null));
- }
+ // Update the Fanboy's Social Blocking List icon.
+ fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_ghosted, null));
} else { // Fanboy's Annoyance List is off.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_night, null));
- } else {
- fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_day, null));
- }
+ // Set the icon.
+ fanboysAnnoyanceListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled, null));
// Enable the Fanboy's Social Blocking List switch.
fanboysSocialBlockingListSwitch.setEnabled(true);
// Update the Fanboy's Social Blocking List icon.
- if (fanboysSocialBlockingListSwitch.isChecked()) { // Fanboy's Social Blocking List is on.
- // Update the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_night, null));
- } else {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_day, null));
- }
- } else { // Fanboy's Social Blocking List is off.
- // Update the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_night, null));
- } else {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_day, null));
- }
+ if (fanboysSocialBlockingListSwitch.isChecked()) {
+ fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled, null));
+ } else {
+ fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled, null));
}
}
-
});
// Set the Fanboy's Social Blocking List switch listener.
fanboysSocialBlockingListSwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
// Update the icon.
- if (isChecked) { // Fanboy's Social Blocking List is on.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_night, null));
- } else {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled_day, null));
- }
- } else { // Fanboy's Social Blocking List is off.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_night, null));
- } else {
- fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled_day, null));
- }
+ if (isChecked) {
+ fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_enabled, null));
+ } else {
+ fanboysSocialBlockingListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.social_media_disabled, null));
}
});
// Set the UltraList switch listener.
ultraListSwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
// Update the icon.
- if (isChecked) { // UltraList is on.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled_night, null));
- } else {
- ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled_day, null));
- }
- } else { // UltraList is off.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled_night, null));
- } else {
- ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled_day, null));
- }
+ if (isChecked) {
+ ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_enabled, null));
+ } else {
+ ultraListImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_ads_disabled, null));
}
});
// Set the UltraPrivacy switch listener.
ultraPrivacySwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
// Update the icon.
- if (isChecked) { // UltraPrivacy is on.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled_night, null));
- } else {
- ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled_day, null));
- }
- } else { // UltraPrivacy is off.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled_night, null));
- } else {
- ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled_day, null));
- }
+ if (isChecked) {
+ ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_enabled, null));
+ } else {
+ ultraPrivacyImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_tracking_disabled, null));
}
});
// Set the block all third-party requests switch listener.
blockAllThirdPartyRequestsSwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
// Update the icon.
- if (isChecked) { // Blocking all third-party requests is on.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_enabled_night, null));
- } else {
- blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_enabled_day, null));
- }
- } else { // Blocking all third-party requests is off.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_disabled_night, null));
- } else {
- blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_disabled_day, null));
- }
+ if (isChecked) {
+ blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_enabled, null));
+ } else {
+ blockAllThirdPartyRequestsImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.block_all_third_party_requests_disabled, null));
}
});
swipeToRefreshSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
- // Update the icon and the visibility of `nightModeTextView`. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Update the icon and the visibility of the night mode text view. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
switch (position) {
case DomainsDatabaseHelper.SYSTEM_DEFAULT:
- if (defaultSwipeToRefresh) { // Swipe to refresh enabled by default.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled_night, null));
- } else {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled_day, null));
- }
- } else { // Swipe to refresh disabled by default.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled_night, null));
- } else {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled_day, null));
- }
+ if (defaultSwipeToRefresh) {
+ // Set the icon.
+ swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled, null));
+ } else {
+ // Set the icon.
+ swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled, null));
}
- // Show the swipe to refresh TextView.
+ // Show the swipe to refresh text view.
swipeToRefreshTextView.setVisibility(View.VISIBLE);
break;
case DomainsDatabaseHelper.ENABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled_night, null));
- } else {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled_day, null));
- }
+ // Set the icon.
+ swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_enabled, null));
- // Hide the swipe to refresh TextView.
+ // Hide the swipe to refresh text view.
swipeToRefreshTextView.setVisibility(View.GONE);
break;
case DomainsDatabaseHelper.DISABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled_night, null));
- } else {
- swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled_day, null));
- }
+ // Set the icon.
+ swipeToRefreshImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.refresh_disabled, null));
- // Hide the swipe to refresh TextView.
+ // Hide the swipe to refresh text view.
swipeToRefreshTextView.setVisibility(View.GONE);
}
}
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
// Update the icon and the visibility of the WebView theme text view. Once the minimum API >= 21 a selector can be used as the tint mode instead of specifying different icons.
+ // Doing this makes no sense until it can also be done with the preferences.
switch (position) {
case DomainsDatabaseHelper.SYSTEM_DEFAULT: // the domain WebView theme is system default.
// Set the icon according to the app WebView theme.
case DomainsDatabaseHelper.SYSTEM_DEFAULT: // The default WebView theme is system default.
// Set the icon according to the app theme.
if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- // Set the light mode icon.
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_day, null));
+ // Set the light theme icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme, null));
} else {
// Set the dark theme icon.
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_night, null));
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme, null));
}
break;
case DomainsDatabaseHelper.LIGHT_THEME: // The default WebView theme is light.
- // Set the icon according to the app theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_day, null));
- } else {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_night, null));
- }
+ // Set the icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme, null));
break;
case DomainsDatabaseHelper.DARK_THEME: // The default WebView theme is dark.
- // Set the icon according to the app theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_day, null));
- } else {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_night, null));
- }
+ // Set the icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme, null));
break;
}
break;
case DomainsDatabaseHelper.LIGHT_THEME: // The domain WebView theme is light.
- // Set the icon according to the app theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_day, null));
- } else {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme_night, null));
- }
+ // Set the icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_light_theme, null));
// Hide the WebView theme text view.
webViewThemeTextView.setVisibility(View.GONE);
break;
case DomainsDatabaseHelper.DARK_THEME: // The domain WebView theme is dark.
- // Set the icon according to the app theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_day, null));
- } else {
- webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme_night, null));
- }
+ // Set the icon.
+ webViewThemeImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.webview_dark_theme, null));
// Hide the WebView theme text view.
webViewThemeTextView.setVisibility(View.GONE);
// Update the icon and the visibility of the wide viewport text view.
switch (position) {
case DomainsDatabaseHelper.SYSTEM_DEFAULT:
+ // Set the icon.
if (defaultWideViewport) { // Wide viewport is enabled by default.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled_night, null));
- } else {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled_day, null));
- }
+ wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled, null));
} else { // Wide viewport is disabled by default.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled_night, null));
- } else {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled_day, null));
- }
+ wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled, null));
}
// Show the wide viewport text view.
case DomainsDatabaseHelper.ENABLED:
// Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled_night, null));
- } else {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled_day, null));
- }
+ wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_enabled, null));
// Hide the wide viewport text view.
wideViewportTextView.setVisibility(View.GONE);
break;
case DomainsDatabaseHelper.DISABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled_night, null));
- } else {
- wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled_day, null));
- }
+ // Set the icon.
+ wideViewportImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.wide_viewport_disabled, null));
// Hid ethe wide viewport text view.
wideViewportTextView.setVisibility(View.GONE);
switch (position) {
case DomainsDatabaseHelper.SYSTEM_DEFAULT:
if (defaultDisplayWebpageImages) { // Display webpage images is enabled by default.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled_night, null));
- } else {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled_day, null));
- }
+ // Set the icon.
+ displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled, null));
} else { // Display webpage images is disabled by default.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled_night, null));
- } else {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled_day, null));
- }
+ // Set the icon.
+ displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled, null));
}
// Show the display images text view.
break;
case DomainsDatabaseHelper.ENABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled_night, null));
- } else {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled_day, null));
- }
+ // Set the icon.
+ displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_enabled, null));
// Hide the display images text view.
displayImagesTextView.setVisibility(View.GONE);
break;
case DomainsDatabaseHelper.DISABLED:
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled_night, null));
- } else {
- displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled_day, null));
- }
+ // Set the icon.
+ displayWebpageImagesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.images_disabled, null));
// Hide the display images text view.
displayImagesTextView.setVisibility(View.GONE);
pinnedSslCertificateSwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
// Update the icon.
if (isChecked) { // SSL certificate pinning is enabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled_night, null));
- } else {
- pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled_day, null));
- }
+ // Set the icon.
+ pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled, null));
// Update the visibility of the saved SSL certificate.
if (savedSslIssuedToCNameString == null) {
noCurrentWebsiteCertificateTextView.getParent().requestChildFocus(noCurrentWebsiteCertificateTextView, noCurrentWebsiteCertificateTextView);
}
} else { // SSL certificate pinning is disabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled_night, null));
- } else {
- pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled_day, null));
- }
+ // Set the icon.
+ pinnedSslCertificateImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled, null));
// Hide the SSl certificates and instructions.
savedSslCardView.setVisibility(View.GONE);
pinnedIpAddressesSwitch.setOnCheckedChangeListener((CompoundButton buttonView, boolean isChecked) -> {
// Update the icon.
if (isChecked) { // IP addresses pinning is enabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled_night, null));
- } else {
- pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled_day, null));
- }
+ // Set the icon.
+ pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_enabled, null));
// Update the visibility of the saved IP addresses card view.
if (savedIpAddresses == null) { // There are no saved IP addresses.
// Scroll to the bottom of the card views.
currentIpAddressesCardView.getParent().requestChildFocus(currentIpAddressesCardView, currentIpAddressesCardView);
} else { // IP addresses pinning is disabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled_night, null));
- } else {
- pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled_day, null));
- }
+ // Set the icon.
+ pinnedIpAddressesImageView.setImageDrawable(ResourcesCompat.getDrawable(resources, R.drawable.ssl_certificate_disabled, null));
// Hide the IP addresses card views.
savedIpAddressesCardView.setVisibility(View.GONE);
package com.stoutner.privacybrowser.fragments;
import android.content.Context;
-import android.content.res.Configuration;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
// Enable the delete menu item.
DomainsActivity.deleteMenuItem.setEnabled(true);
- // Get the current theme status.
- int currentThemeStatus = getResources().getConfiguration().uiMode & Configuration.UI_MODE_NIGHT_MASK;
-
- // Set the delete icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- DomainsActivity.deleteMenuItem.setIcon(R.drawable.delete_night);
- } else {
- DomainsActivity.deleteMenuItem.setIcon(R.drawable.delete_day);
- }
+ // Set the delete icon.
+ DomainsActivity.deleteMenuItem.setIcon(R.drawable.delete_enabled);
}
// Display the domain settings fragment.
import com.stoutner.privacybrowser.activities.MainWebViewActivity;
import com.stoutner.privacybrowser.helpers.ProxyHelper;
+import java.util.Objects;
+
public class SettingsFragment extends PreferenceFragmentCompat {
// Declare the class variables.
private int currentThemeStatus;
// Get a handle for the shared preferences.
SharedPreferences sharedPreferences = getPreferenceScreen().getSharedPreferences();
+ // Remove the incorrect warning below that the shared preferences might be null.
+ assert sharedPreferences != null;
+
// Get handles for the preferences.
javaScriptPreference = findPreference("javascript");
cookiesPreference = findPreference(getString(R.string.cookies_key));
customUserAgentPreference.setSummary(sharedPreferences.getString("custom_user_agent", getString(R.string.custom_user_agent_default_value)));
// Only enable the custom user agent preference if the user agent is set to `Custom`.
- customUserAgentPreference.setEnabled(userAgentPreference.getSummary().equals(getString(R.string.custom_user_agent)));
-
+ customUserAgentPreference.setEnabled(Objects.equals(userAgentPreference.getSummary(), getString(R.string.custom_user_agent)));
// Set the search URL as the summary text for the search preference when the preference screen is loaded.
if (searchString.equals("Custom URL")) {
if (sharedPreferences.getBoolean(getString(R.string.cookies_key), false)) {
cookiesPreference.setIcon(R.drawable.cookies_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- cookiesPreference.setIcon(R.drawable.cookies_disabled_day);
- } else {
- cookiesPreference.setIcon(R.drawable.cookies_disabled_night);
- }
+ cookiesPreference.setIcon(R.drawable.cookies_disabled);
}
// Set the DOM storage icon.
if (sharedPreferences.getBoolean("dom_storage", false)) { // DOM storage is enabled.
domStoragePreference.setIcon(R.drawable.dom_storage_enabled);
} else { // DOM storage is disabled.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- domStoragePreference.setIcon(R.drawable.dom_storage_disabled_day);
- } else {
- domStoragePreference.setIcon(R.drawable.dom_storage_disabled_night);
- }
+ domStoragePreference.setIcon(R.drawable.dom_storage_disabled);
}
} else { // The preference is disabled. The icon should be ghosted.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- domStoragePreference.setIcon(R.drawable.dom_storage_ghosted_day);
- } else {
- domStoragePreference.setIcon(R.drawable.dom_storage_ghosted_night);
- }
+ domStoragePreference.setIcon(R.drawable.dom_storage_ghosted);
}
// Set the save form data icon if API < 26. Save form data has no effect on API >= 26.
if (sharedPreferences.getBoolean("save_form_data", false)) {
formDataPreference.setIcon(R.drawable.form_data_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- formDataPreference.setIcon(R.drawable.form_data_disabled_day);
- } else {
- formDataPreference.setIcon(R.drawable.form_data_disabled_night);
- }
+ formDataPreference.setIcon(R.drawable.form_data_disabled);
}
}
// Set the custom user agent icon.
if (customUserAgentPreference.isEnabled()) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_enabled_day);
- } else {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_enabled_night);
- }
+ customUserAgentPreference.setIcon(R.drawable.custom_user_agent_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_ghosted_day);
- } else {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_ghosted_night);
- }
+ customUserAgentPreference.setIcon(R.drawable.custom_user_agent_ghosted);
}
// Set the incognito mode icon.
if (sharedPreferences.getBoolean("incognito_mode", false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- incognitoModePreference.setIcon(R.drawable.incognito_mode_enabled_night);
- } else {
- incognitoModePreference.setIcon(R.drawable.incognito_mode_enabled_day);
- }
+ incognitoModePreference.setIcon(R.drawable.incognito_mode_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- incognitoModePreference.setIcon(R.drawable.incognito_mode_disabled_night);
- } else {
- incognitoModePreference.setIcon(R.drawable.incognito_mode_disabled_day);
- }
+ incognitoModePreference.setIcon(R.drawable.incognito_mode_disabled);
}
// Set the allow screenshots icon.
if (sharedPreferences.getBoolean(getString(R.string.allow_screenshots_key), false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_enabled_day);
- } else {
- allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_enabled_night);
- }
+ allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_disabled_day);
- } else {
- allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_disabled_night);
- }
+ allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_disabled);
}
// Set the EasyList icon.
if (sharedPreferences.getBoolean("easylist", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyListPreference.setIcon(R.drawable.block_ads_enabled_night);
- } else {
- easyListPreference.setIcon(R.drawable.block_ads_enabled_day);
- }
+ easyListPreference.setIcon(R.drawable.block_ads_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyListPreference.setIcon(R.drawable.block_ads_disabled_night);
- } else {
- easyListPreference.setIcon(R.drawable.block_ads_disabled_day);
- }
+ easyListPreference.setIcon(R.drawable.block_ads_disabled);
}
// Set the EasyPrivacy icon.
if (sharedPreferences.getBoolean("easyprivacy", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyPrivacyPreference.setIcon(R.drawable.block_tracking_enabled_night);
- } else {
- easyPrivacyPreference.setIcon(R.drawable.block_tracking_enabled_day);
- }
+ easyPrivacyPreference.setIcon(R.drawable.block_tracking_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyPrivacyPreference.setIcon(R.drawable.block_tracking_disabled_night);
- } else {
- easyPrivacyPreference.setIcon(R.drawable.block_tracking_disabled_day);
- }
+ easyPrivacyPreference.setIcon(R.drawable.block_tracking_disabled);
}
// Set the Fanboy lists icons.
if (fanboyAnnoyanceListEnabled) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- // Set the Fanboy annoyance list icon.
- fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_enabled_night);
+ // Set the Fanboy annoyance list icon.
+ fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_enabled);
- // Set the Fanboy social blocking list icon.
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_ghosted_night);
- } else {
- // Set the Fanboy annoyance list icon.
- fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_enabled_day);
-
- // Set the Fanboy social blocking list icon.
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_ghosted_day);
- }
+ // Set the Fanboy social blocking list icon.
+ fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_ghosted);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- // Set the Fanboy annoyance list icon.
- fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_disabled_night);
+ // Set the Fanboy annoyance list icon.
+ fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_disabled);
- // Set the Fanboy social blocking list icon.
- if (fanboySocialBlockingEnabled) {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_enabled_night);
- } else {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_disabled_night);
- }
+ // Set the Fanboy social blocking list icon.
+ if (fanboySocialBlockingEnabled) {
+ fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_enabled);
} else {
- // Set the Fanboy annoyance list icon.
- fanboyAnnoyanceListPreference.setIcon(R.drawable.block_ads_disabled_day);
-
- // Set the Fanboy social blocking list icon.
- if (fanboySocialBlockingEnabled) {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_enabled_day);
- } else {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_disabled_day);
- }
+ fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_disabled);
}
}
// Set the UltraList icon.
if (sharedPreferences.getBoolean("ultralist", true)){
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraListPreference.setIcon(R.drawable.block_ads_enabled_night);
- } else {
- ultraListPreference.setIcon(R.drawable.block_ads_enabled_day);
- }
+ ultraListPreference.setIcon(R.drawable.block_ads_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraListPreference.setIcon(R.drawable.block_ads_disabled_night);
- } else {
- ultraListPreference.setIcon(R.drawable.block_ads_disabled_day);
- }
+ ultraListPreference.setIcon(R.drawable.block_ads_disabled);
}
// Set the UltraPrivacy icon.
if (sharedPreferences.getBoolean("ultraprivacy", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraPrivacyPreference.setIcon(R.drawable.block_tracking_enabled_night);
- } else {
- ultraPrivacyPreference.setIcon(R.drawable.block_tracking_enabled_day);
- }
+ ultraPrivacyPreference.setIcon(R.drawable.block_tracking_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraPrivacyPreference.setIcon(R.drawable.block_tracking_disabled_night);
- } else {
- ultraPrivacyPreference.setIcon(R.drawable.block_tracking_disabled_day);
- }
+ ultraPrivacyPreference.setIcon(R.drawable.block_tracking_disabled);
}
// Set the block all third-party requests icon.
if (sharedPreferences.getBoolean("block_all_third_party_requests", false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_enabled_night);
- } else {
- blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_enabled_day);
- }
+ blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_disabled_night);
- } else {
- blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_disabled_day);
- }
+ blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_disabled);
}
- // Set the Google Analytics icon according to the theme.
+ // Set the Google Analytics icon.
if (sharedPreferences.getBoolean("google_analytics", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled_night);
- } else {
- googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled_day);
- }
+ googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled_night);
- } else {
- googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled_day);
- }
+ googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled);
}
- // Set the Facebook Click IDs icon according to the theme.
+ // Set the Facebook Click IDs icon.
if (sharedPreferences.getBoolean("facebook_click_ids", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled_night);
- } else {
- facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled_day);
- }
+ facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled_night);
- } else {
- facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled_day);
- }
+ facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled);
}
- // Set the Twitter AMP redirects icon according to the theme.
+ // Set the Twitter AMP redirects icon.
if (sharedPreferences.getBoolean("twitter_amp_redirects", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled_night);
- } else {
- twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled_day);
- }
+ twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled_night);
- } else {
- twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled_day);
- }
+ twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled);
}
// Set the search custom URL icon.
if (searchCustomURLPreference.isEnabled()) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- searchCustomURLPreference.setIcon(R.drawable.search_custom_url_enabled_night);
- } else {
- searchCustomURLPreference.setIcon(R.drawable.search_custom_url_enabled_day);
- }
+ searchCustomURLPreference.setIcon(R.drawable.search_custom_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- searchCustomURLPreference.setIcon(R.drawable.search_custom_url_ghosted_night);
- } else {
- searchCustomURLPreference.setIcon(R.drawable.search_custom_url_ghosted_day);
- }
+ searchCustomURLPreference.setIcon(R.drawable.search_custom_ghosted);
}
// Set the Proxy icons according to the theme and status.
if (proxyString.equals(ProxyHelper.NONE)) { // Proxying is disabled.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) { // Dark theme.
- // Set the main proxy icon to be disabled.
- proxyPreference.setIcon(R.drawable.proxy_disabled_night);
-
- // Set the custom proxy URL icon to be ghosted.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_night);
- } else { // Light theme.
- // Set the main proxy icon to be disabled.
- proxyPreference.setIcon(R.drawable.proxy_disabled_day);
-
- // Set the custom proxy URL icon to be ghosted.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_day);
- }
+ // Set the main proxy icon to be disabled.
+ proxyPreference.setIcon(R.drawable.proxy_disabled);
+
+ // Set the custom proxy URL icon to be ghosted.
+ proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted);
} else { // Proxying is enabled.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) { // Dark theme.
- // Set the main proxy icon to be enabled.
- proxyPreference.setIcon(R.drawable.proxy_enabled_night);
-
- // Set the custom proxy URL icon according to its status.
- if (proxyCustomUrlPreference.isEnabled()) { // Custom proxy is enabled.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled_night);
- } else { // Custom proxy is disabled.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_night);
- }
- } else { // Light theme.
- // Set the main proxy icon to be enabled.
- proxyPreference.setIcon(R.drawable.proxy_enabled_day);
-
- // Set the custom proxy URL icon according to its status.
- if (proxyCustomUrlPreference.isEnabled()) { // Custom proxy is enabled.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled_day);
- } else { // Custom proxy is disabled.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_day);
- }
+ // Set the main proxy icon to be enabled.
+ proxyPreference.setIcon(R.drawable.proxy_enabled);
+
+ // Set the custom proxy URL icon according to its status.
+ if (proxyCustomUrlPreference.isEnabled()) {
+ proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled);
+ } else {
+ proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted);
}
}
// Set the full screen browsing mode icons.
if (fullScreenBrowsingMode) { // Full screen browsing mode is enabled.
- // Set the `fullScreenBrowsingModePreference` icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_enabled_night);
- } else {
- fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_enabled_day);
- }
+ // Set the full screen browsing mode preference icon.
+ fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_enabled);
// Set the hide app bar icon.
- if (sharedPreferences.getBoolean("hide_app_bar", true)) { // Hide app bar is enabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- hideAppBarPreference.setIcon(R.drawable.app_bar_enabled_night);
- } else {
- hideAppBarPreference.setIcon(R.drawable.app_bar_enabled_day);
- }
- } else { // Hide app bar is disabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- hideAppBarPreference.setIcon(R.drawable.app_bar_disabled_night);
- } else {
- hideAppBarPreference.setIcon(R.drawable.app_bar_disabled_day);
- }
- }
- } else { // Full screen browsing mode is disabled.
- // Set the icons according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_disabled_night);
- hideAppBarPreference.setIcon(R.drawable.app_bar_ghosted_night);
+ if (sharedPreferences.getBoolean("hide_app_bar", true)) {
+ hideAppBarPreference.setIcon(R.drawable.app_bar_enabled);
} else {
- fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_disabled_day);
- hideAppBarPreference.setIcon(R.drawable.app_bar_ghosted_day);
+ hideAppBarPreference.setIcon(R.drawable.app_bar_disabled);
}
+ } else { // Full screen browsing mode is disabled.
+ // Set the icons.
+ fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_disabled);
+ hideAppBarPreference.setIcon(R.drawable.app_bar_ghosted);
}
// Set the clear everything preference icon.
if (clearEverything) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearEverythingPreference.setIcon(R.drawable.clear_everything_enabled_day);
- } else {
- clearEverythingPreference.setIcon(R.drawable.clear_everything_enabled_night);
- }
+ clearEverythingPreference.setIcon(R.drawable.clear_everything_enabled);
} else {
clearEverythingPreference.setIcon(R.drawable.clear_everything_disabled);
}
// Set the clear cookies preference icon.
if (clearEverything || sharedPreferences.getBoolean("clear_cookies", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearCookiesPreference.setIcon(R.drawable.cookies_cleared_day);
- } else {
- clearCookiesPreference.setIcon(R.drawable.cookies_cleared_night);
- }
+ clearCookiesPreference.setIcon(R.drawable.clear_cookies_enabled);
} else {
- clearCookiesPreference.setIcon(R.drawable.cookies_warning);
+ clearCookiesPreference.setIcon(R.drawable.clear_cookies_disabled);
}
// Set the clear DOM storage preference icon.
if (clearEverything || sharedPreferences.getBoolean("clear_dom_storage", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- clearDomStoragePreference.setIcon(R.drawable.dom_storage_cleared_night);
- } else {
- clearDomStoragePreference.setIcon(R.drawable.dom_storage_cleared_day);
- }
+ clearDomStoragePreference.setIcon(R.drawable.clear_dom_storage_enabled);
} else {
- clearDomStoragePreference.setIcon(R.drawable.dom_storage_warning);
+ clearDomStoragePreference.setIcon(R.drawable.clear_dom_storage_disabled);
}
// Set the clear form data preference icon if the API < 26. It has no effect on newer versions of Android.
if (Build.VERSION.SDK_INT < 26) {
if (clearEverything || sharedPreferences.getBoolean("clear_form_data", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- clearFormDataPreference.setIcon(R.drawable.form_data_cleared_night);
- } else {
- clearFormDataPreference.setIcon(R.drawable.form_data_cleared_day);
- }
+ clearFormDataPreference.setIcon(R.drawable.clear_form_data_enabled);
} else {
- clearFormDataPreference.setIcon(R.drawable.form_data_warning);
+ clearFormDataPreference.setIcon(R.drawable.clear_form_data_disabled);
}
}
// Set the clear logcat preference icon.
if (clearEverything || sharedPreferences.getBoolean(getString(R.string.clear_logcat_key), true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearLogcatPreference.setIcon(R.drawable.bug_cleared_day);
- } else {
- clearLogcatPreference.setIcon(R.drawable.bug_cleared_night);
- }
+ clearLogcatPreference.setIcon(R.drawable.clear_logcat_enabled);
} else {
- clearLogcatPreference.setIcon(R.drawable.bug_warning);
+ clearLogcatPreference.setIcon(R.drawable.clear_logcat_disabled);
}
// Set the clear cache preference icon.
if (clearEverything || sharedPreferences.getBoolean("clear_cache", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- clearCachePreference.setIcon(R.drawable.cache_cleared_night);
- } else {
- clearCachePreference.setIcon(R.drawable.cache_cleared_day);
- }
+ clearCachePreference.setIcon(R.drawable.clear_cache_enabled);
} else {
- clearCachePreference.setIcon(R.drawable.cache_warning);
+ clearCachePreference.setIcon(R.drawable.clear_cache_disabled);
}
// Set the open intents in new tab preference icon.
if (sharedPreferences.getBoolean("open_intents_in_new_tab", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- openIntentsInNewTabPreference.setIcon(R.drawable.tab_enabled_night);
- } else {
- openIntentsInNewTabPreference.setIcon(R.drawable.tab_enabled_day);
- }
+ openIntentsInNewTabPreference.setIcon(R.drawable.tab_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- openIntentsInNewTabPreference.setIcon(R.drawable.tab_disabled_night);
- } else {
- openIntentsInNewTabPreference.setIcon(R.drawable.tab_disabled_day);
- }
+ openIntentsInNewTabPreference.setIcon(R.drawable.tab_disabled);
}
// Set the swipe to refresh preference icon.
if (sharedPreferences.getBoolean("swipe_to_refresh", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- swipeToRefreshPreference.setIcon(R.drawable.refresh_enabled_day);
- } else {
- swipeToRefreshPreference.setIcon(R.drawable.refresh_enabled_night);
- }
+ swipeToRefreshPreference.setIcon(R.drawable.refresh_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- swipeToRefreshPreference.setIcon(R.drawable.refresh_disabled_day);
- } else {
- swipeToRefreshPreference.setIcon(R.drawable.refresh_disabled_night);
- }
+ swipeToRefreshPreference.setIcon(R.drawable.refresh_disabled);
}
// Set the download with external app preference icon.
if (sharedPreferences.getBoolean(getString(R.string.download_with_external_app_key), false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_enabled_day);
- } else {
- downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_enabled_night);
- }
+ downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_disabled_day);
- } else {
- downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_disabled_night);
- }
+ downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_disabled);
}
// Set the scroll app bar preference icon.
if (sharedPreferences.getBoolean(getString(R.string.scroll_app_bar_key), true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- scrollAppBarPreference.setIcon(R.drawable.app_bar_enabled_day);
- } else {
- scrollAppBarPreference.setIcon(R.drawable.app_bar_enabled_night);
- }
+ scrollAppBarPreference.setIcon(R.drawable.app_bar_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- scrollAppBarPreference.setIcon(R.drawable.app_bar_disabled_day);
- } else {
- scrollAppBarPreference.setIcon(R.drawable.app_bar_disabled_night);
- }
+ scrollAppBarPreference.setIcon(R.drawable.app_bar_disabled);
}
// Set the bottom app bar preference icon.
if (sharedPreferences.getBoolean(getString(R.string.bottom_app_bar_key), false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_enabled_day);
- } else {
- bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_enabled_night);
- }
+ bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_disabled_day);
- } else {
- bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_disabled_night);
- }
+ bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_disabled);
}
// Set the display additional app bar icons preference icon.
if (sharedPreferences.getBoolean(getString(R.string.display_additional_app_bar_icons_key), false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_enabled_day);
- } else {
- displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_enabled_night);
- }
+ displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_disabled_day);
- } else {
- displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_disabled_night);
- }
+ displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_disabled);
}
// Set the WebView theme preference icon.
case 0: // The system default WebView theme is selected.
// Set the icon according to the app theme.
if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemePreference.setIcon(R.drawable.webview_light_theme_day);
+ webViewThemePreference.setIcon(R.drawable.webview_light_theme);
} else {
- webViewThemePreference.setIcon(R.drawable.webview_dark_theme_night);
+ webViewThemePreference.setIcon(R.drawable.webview_dark_theme);
}
break;
case 1: // The light WebView theme is selected.
- // Set the icon according to the app theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemePreference.setIcon(R.drawable.webview_light_theme_day);
- } else {
- webViewThemePreference.setIcon(R.drawable.webview_light_theme_night);
- }
+ // Set the icon.
+ webViewThemePreference.setIcon(R.drawable.webview_light_theme);
break;
case 2: // The dark WebView theme is selected.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemePreference.setIcon(R.drawable.webview_dark_theme_day);
- } else {
- webViewThemePreference.setIcon(R.drawable.webview_dark_theme_night);
- }
+ // Set the icon.
+ webViewThemePreference.setIcon(R.drawable.webview_dark_theme);
break;
}
// Set the wide viewport preference icon.
if (sharedPreferences.getBoolean("wide_viewport", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled_night);
- } else {
- wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled_day);
- }
+ wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled_night);
- } else {
- wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled_day);
- }
+ wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled);
}
// Set the display webpage images preference icon.
if (sharedPreferences.getBoolean("display_webpage_images", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesPreference.setIcon(R.drawable.images_enabled_night);
- } else {
- displayWebpageImagesPreference.setIcon(R.drawable.images_enabled_day);
- }
+ displayWebpageImagesPreference.setIcon(R.drawable.images_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesPreference.setIcon(R.drawable.images_disabled_night);
- } else {
- displayWebpageImagesPreference.setIcon(R.drawable.images_disabled_day);
- }
+ displayWebpageImagesPreference.setIcon(R.drawable.images_disabled);
}
}
// Get a handle for the shared preferences.
SharedPreferences sharedPreferences = getPreferenceScreen().getSharedPreferences();
+ // Remove the incorrect lint warning below that the shared preferences might be null.
+ assert sharedPreferences != null;
+
// Unregister the shared preference listener.
sharedPreferences.unregisterOnSharedPreferenceChangeListener(sharedPreferenceChangeListener);
}
// Get a handle for the shared preferences.
SharedPreferences sharedPreferences = getPreferenceScreen().getSharedPreferences();
+ // Remove the incorrect lint warning below that the shared preferences might be null.
+ assert sharedPreferences != null;
+
// Re-register the shared preference listener.
sharedPreferences.registerOnSharedPreferenceChangeListener(sharedPreferenceChangeListener);
}
if (sharedPreferences.getBoolean("dom_storage", false)) {
domStoragePreference.setIcon(R.drawable.dom_storage_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- domStoragePreference.setIcon(R.drawable.dom_storage_disabled_day);
- } else {
- domStoragePreference.setIcon(R.drawable.dom_storage_disabled_night);
- }
+ domStoragePreference.setIcon(R.drawable.dom_storage_disabled);
}
} else { // The JavaScript preference is disabled.
// Update the icon for the JavaScript preference.
domStoragePreference.setEnabled(false);
// Set the icon for DOM storage preference to be ghosted.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- domStoragePreference.setIcon(R.drawable.dom_storage_ghosted_day);
- } else {
- domStoragePreference.setIcon(R.drawable.dom_storage_ghosted_night);
- }
+ domStoragePreference.setIcon(R.drawable.dom_storage_ghosted);
}
break;
if (sharedPreferences.getBoolean(context.getString(R.string.cookies_key), false)) {
cookiesPreference.setIcon(R.drawable.cookies_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- cookiesPreference.setIcon(R.drawable.cookies_disabled_day);
- } else {
- cookiesPreference.setIcon(R.drawable.cookies_disabled_night);
- }
+ cookiesPreference.setIcon(R.drawable.cookies_disabled);
}
break;
if (sharedPreferences.getBoolean("dom_storage", false)) {
domStoragePreference.setIcon(R.drawable.dom_storage_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- domStoragePreference.setIcon(R.drawable.dom_storage_disabled_day);
- } else {
- domStoragePreference.setIcon(R.drawable.dom_storage_disabled_night);
- }
+ domStoragePreference.setIcon(R.drawable.dom_storage_disabled);
}
break;
if (sharedPreferences.getBoolean("save_form_data", false)) {
formDataPreference.setIcon(R.drawable.form_data_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- formDataPreference.setIcon(R.drawable.form_data_disabled_day);
- } else {
- formDataPreference.setIcon(R.drawable.form_data_disabled_night);
- }
+ formDataPreference.setIcon(R.drawable.form_data_disabled);
}
break;
// Disable the custom user agent preference.
customUserAgentPreference.setEnabled(false);
- // Set the custom user agent preference icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_ghosted_night);
- } else {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_ghosted_day);
- }
+ // Set the custom user agent preference icon.
+ customUserAgentPreference.setIcon(R.drawable.custom_user_agent_ghosted);
break;
case MainWebViewActivity.SETTINGS_CUSTOM_USER_AGENT:
// Enable the custom user agent preference.
customUserAgentPreference.setEnabled(true);
- // Set the custom user agent preference icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_enabled_night);
- } else {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_enabled_day);
- }
+ // Set the custom user agent preference icon.
+ customUserAgentPreference.setIcon(R.drawable.custom_user_agent_enabled);
break;
default:
// Disable the custom user agent preference.
customUserAgentPreference.setEnabled(false);
- // Set the custom user agent preference icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_ghosted_night);
- } else {
- customUserAgentPreference.setIcon(R.drawable.custom_user_agent_ghosted_day);
- }
+ // Set the custom user agent preference icon.
+ customUserAgentPreference.setIcon(R.drawable.custom_user_agent_ghosted);
}
break;
case "incognito_mode":
// Update the icon.
if (sharedPreferences.getBoolean("incognito_mode", false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- incognitoModePreference.setIcon(R.drawable.incognito_mode_enabled_night);
- } else {
- incognitoModePreference.setIcon(R.drawable.incognito_mode_enabled_day);
- }
+ incognitoModePreference.setIcon(R.drawable.incognito_mode_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- incognitoModePreference.setIcon(R.drawable.incognito_mode_disabled_night);
- } else {
- incognitoModePreference.setIcon(R.drawable.incognito_mode_disabled_day);
- }
+ incognitoModePreference.setIcon(R.drawable.incognito_mode_disabled);
}
break;
case "allow_screenshots":
// Update the icon.
if (sharedPreferences.getBoolean(context.getString(R.string.allow_screenshots_key), false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_enabled_day);
- } else {
- allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_enabled_night);
- }
+ allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_disabled_day);
- } else {
- allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_disabled_night);
- }
+ allowScreenshotsPreference.setIcon(R.drawable.allow_screenshots_disabled);
}
// Restart Privacy Browser.
case "easylist":
// Update the icon.
if (sharedPreferences.getBoolean("easylist", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyListPreference.setIcon(R.drawable.block_ads_enabled_night);
- } else {
- easyListPreference.setIcon(R.drawable.block_ads_enabled_day);
- }
+ easyListPreference.setIcon(R.drawable.block_ads_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyListPreference.setIcon(R.drawable.block_ads_disabled_night);
- } else {
- easyListPreference.setIcon(R.drawable.block_ads_disabled_day);
- }
+ easyListPreference.setIcon(R.drawable.block_ads_disabled);
}
break;
case "easyprivacy":
// Update the icon.
if (sharedPreferences.getBoolean("easyprivacy", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyPrivacyPreference.setIcon(R.drawable.block_tracking_enabled_night);
- } else {
- easyPrivacyPreference.setIcon(R.drawable.block_tracking_enabled_day);
- }
+ easyPrivacyPreference.setIcon(R.drawable.block_tracking_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- easyPrivacyPreference.setIcon(R.drawable.block_tracking_disabled_night);
- } else {
- easyPrivacyPreference.setIcon(R.drawable.block_tracking_disabled_day);
- }
+ easyPrivacyPreference.setIcon(R.drawable.block_tracking_disabled);
}
break;
// Update the Fanboy icons.
if (currentFanboyAnnoyanceList) { // Fanboy's annoyance list is enabled.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- // Update the Fanboy's annoyance list icon.
- fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_enabled_night);
+ // Update the Fanboy's annoyance list icon.
+ fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_enabled);
- // Update the Fanboy's social blocking list icon.
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_ghosted_night);
- } else {
- // Update the Fanboy's annoyance list icon.
- fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_enabled_day);
-
- // Update the Fanboy's social blocking list icon.
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_ghosted_day);
- }
+ // Update the Fanboy's social blocking list icon.
+ fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_ghosted);
} else { // Fanboy's annoyance list is disabled.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- // Update the Fanboy's annoyance list icon.
- fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_disabled_night);
+ // Update the Fanboy's annoyance list icon.
+ fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_disabled);
- // Update the Fanboy's social blocking list icon.
- if (currentFanboySocialBlockingList) {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_enabled_night);
- } else {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_disabled_night);
- }
+ // Update the Fanboy's social blocking list icon.
+ if (currentFanboySocialBlockingList) {
+ fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_enabled);
} else {
- // Update the Fanboy's annoyance list icon.
- fanboyAnnoyanceListPreference.setIcon(R.drawable.social_media_disabled_day);
-
- // Update the Fanboy's social blocking list icon.
- if (currentFanboySocialBlockingList) {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_enabled_day);
- } else {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_disabled_day);
- }
+ fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_disabled);
}
}
case "fanboys_social_blocking_list":
// Update the icon.
if (sharedPreferences.getBoolean("fanboys_social_blocking_list", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_enabled_night);
- } else {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_enabled_day);
- }
+ fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_disabled_night);
- } else {
- fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_disabled_day);
- }
+ fanboySocialBlockingListPreference.setIcon(R.drawable.social_media_disabled);
}
break;
case "ultralist":
// Update the icon.
if (sharedPreferences.getBoolean("ultralist", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraListPreference.setIcon(R.drawable.block_ads_enabled_night);
- } else {
- ultraListPreference.setIcon(R.drawable.block_ads_enabled_day);
- }
+ ultraListPreference.setIcon(R.drawable.block_ads_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraListPreference.setIcon(R.drawable.block_ads_disabled_night);
- } else {
- ultraListPreference.setIcon(R.drawable.block_ads_disabled_day);
- }
+ ultraListPreference.setIcon(R.drawable.block_ads_disabled);
}
break;
case "ultraprivacy":
// Update the icon.
if (sharedPreferences.getBoolean("ultraprivacy", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraPrivacyPreference.setIcon(R.drawable.block_tracking_enabled_night);
- } else {
- ultraPrivacyPreference.setIcon(R.drawable.block_tracking_enabled_day);
- }
+ ultraPrivacyPreference.setIcon(R.drawable.block_tracking_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- ultraPrivacyPreference.setIcon(R.drawable.block_tracking_disabled_night);
- } else {
- ultraPrivacyPreference.setIcon(R.drawable.block_tracking_disabled_day);
- }
+ ultraPrivacyPreference.setIcon(R.drawable.block_tracking_disabled);
}
break;
case "block_all_third_party_requests":
// Update the icon.
if (sharedPreferences.getBoolean("block_all_third_party_requests", false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_enabled_night);
- } else {
- blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_enabled_day);
- }
+ blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_disabled_night);
- } else {
- blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_disabled_day);
- }
+ blockAllThirdPartyRequestsPreference.setIcon(R.drawable.block_all_third_party_requests_disabled);
}
break;
case "google_analytics":
// Update the icon.
if (sharedPreferences.getBoolean("google_analytics", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled_night);
- } else {
- googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled_day);
- }
+ googleAnalyticsPreference.setIcon(R.drawable.modify_url_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled_night);
- } else {
- googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled_day);
- }
+ googleAnalyticsPreference.setIcon(R.drawable.modify_url_disabled);
}
break;
case "facebook_click_ids":
// Update the icon.
if (sharedPreferences.getBoolean("facebook_click_ids", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled_night);
- } else {
- facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled_day);
- }
+ facebookClickIdsPreference.setIcon(R.drawable.modify_url_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled_night);
- } else {
- facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled_day);
- }
+ facebookClickIdsPreference.setIcon(R.drawable.modify_url_disabled);
}
break;
case "twitter_amp_redirects":
// Update the icon.
if (sharedPreferences.getBoolean("twitter_amp_redirects", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled_night);
- } else {
- twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled_day);
- }
+ twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled_night);
- } else {
- twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled_day);
- }
+ twitterAmpRedirectsPreference.setIcon(R.drawable.modify_url_disabled);
}
break;
// Set the summary text to `R.string.custom_url`, which is translated.
searchPreference.setSummary(R.string.custom_url);
- // Enable `searchCustomURLPreference`.
+ // Enable the search custom URL preference.
searchCustomURLPreference.setEnabled(true);
- // Set the `searchCustomURLPreference` according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- searchCustomURLPreference.setIcon(R.drawable.search_custom_url_enabled_night);
- } else {
- searchCustomURLPreference.setIcon(R.drawable.search_custom_url_enabled_day);
- }
+ // Set the search custom URL preference icon.
+ searchCustomURLPreference.setIcon(R.drawable.search_custom_enabled);
} else { // `Custom URL` is not selected.
// Set the summary text to `newSearchString`.
searchPreference.setSummary(newSearchString);
// Disable `searchCustomURLPreference`.
searchCustomURLPreference.setEnabled(false);
- // Set the `searchCustomURLPreference` according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- searchCustomURLPreference.setIcon(R.drawable.search_custom_url_ghosted_night);
- } else {
- searchCustomURLPreference.setIcon(R.drawable.search_custom_url_ghosted_day);
- }
+ // Set the search custom URL preference icon.
+ searchCustomURLPreference.setIcon(R.drawable.search_custom_ghosted);
}
break;
// Update the icons.
if (currentProxyString.equals(ProxyHelper.NONE)) { // Proxying is disabled.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) { // Dark theme.
- // Set the main proxy icon to be disabled
- proxyPreference.setIcon(R.drawable.proxy_disabled_night);
-
- // Set the custom proxy URL icon to be ghosted.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_night);
- } else { // Light theme.
- // Set the main proxy icon to be disabled.
- proxyPreference.setIcon(R.drawable.proxy_disabled_day);
-
- // Set the custom proxy URL icon to be ghosted.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_day);
- }
+ // Set the main proxy icon to be disabled
+ proxyPreference.setIcon(R.drawable.proxy_disabled);
+
+ // Set the custom proxy URL icon to be ghosted.
+ proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted);
} else { // Proxying is enabled.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) { // Dark theme.
- // Set the main proxy icon to be enabled.
- proxyPreference.setIcon(R.drawable.proxy_enabled_night);
-
- /// Set the custom proxy URL icon according to its status.
- if (proxyCustomUrlPreference.isEnabled()) { // Custom proxy is enabled.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled_night);
- } else { // Custom proxy is disabled.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_night);
- }
- } else { // Light theme.
- // Set the main proxy icon to be enabled.
- proxyPreference.setIcon(R.drawable.proxy_enabled_day);
-
- // Set the custom proxy URL icon according to its status.
- if (proxyCustomUrlPreference.isEnabled()) { // Custom proxy is enabled.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled_day);
- } else { // Custom proxy is disabled.
- proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted_day);
- }
+ // Set the main proxy icon to be enabled.
+ proxyPreference.setIcon(R.drawable.proxy_enabled);
+
+ /// Set the custom proxy URL icon according to its status.
+ if (proxyCustomUrlPreference.isEnabled()) {
+ proxyCustomUrlPreference.setIcon(R.drawable.proxy_enabled);
+ } else {
+ proxyCustomUrlPreference.setIcon(R.drawable.proxy_ghosted);
}
}
break;
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.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_enabled_night);
- } else {
- fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_enabled_day);
- }
+ // Set the full screen browsing mode preference icon.
+ fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_enabled);
// Set the hide app bar preference icon.
- if (sharedPreferences.getBoolean("hide_app_bar", true)) { // Hide app bar is enabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- hideAppBarPreference.setIcon(R.drawable.app_bar_enabled_night);
- } else {
- hideAppBarPreference.setIcon(R.drawable.app_bar_enabled_day);
- }
- } else { // Hide app bar is disabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- hideAppBarPreference.setIcon(R.drawable.app_bar_disabled_night);
- } else {
- hideAppBarPreference.setIcon(R.drawable.app_bar_disabled_day);
- }
- }
- } else { // Full screen browsing is disabled.
- // Update the icons according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_disabled_night);
- hideAppBarPreference.setIcon(R.drawable.app_bar_ghosted_night);
+ if (sharedPreferences.getBoolean("hide_app_bar", true)) {
+ hideAppBarPreference.setIcon(R.drawable.app_bar_enabled);
} else {
- fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_disabled_day);
- hideAppBarPreference.setIcon(R.drawable.app_bar_ghosted_day);
+ hideAppBarPreference.setIcon(R.drawable.app_bar_disabled);
}
+ } else { // Full screen browsing is disabled.
+ // Update the icons.
+ fullScreenBrowsingModePreference.setIcon(R.drawable.full_screen_disabled);
+ hideAppBarPreference.setIcon(R.drawable.app_bar_ghosted);
}
break;
case "hide_app_bar":
// Update the icon.
- if (sharedPreferences.getBoolean("hide_app_bar", true)) { // Hide app bar is enabled.
- // Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- hideAppBarPreference.setIcon(R.drawable.app_bar_enabled_night);
- } else {
- hideAppBarPreference.setIcon(R.drawable.app_bar_enabled_day);
- }
+ if (sharedPreferences.getBoolean("hide_app_bar", true)) {
+ hideAppBarPreference.setIcon(R.drawable.app_bar_enabled);
} else { // Hide app bar is disabled.
// Set the icon according to the theme.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- hideAppBarPreference.setIcon(R.drawable.app_bar_disabled_night);
- } else {
- hideAppBarPreference.setIcon(R.drawable.app_bar_disabled_day);
- }
+ hideAppBarPreference.setIcon(R.drawable.app_bar_disabled);
}
break;
// Update the clear everything preference icon.
if (newClearEverythingBoolean) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearEverythingPreference.setIcon(R.drawable.clear_everything_enabled_day);
- } else {
- clearEverythingPreference.setIcon(R.drawable.clear_everything_enabled_night);
- }
+ clearEverythingPreference.setIcon(R.drawable.clear_everything_enabled);
} else {
clearEverythingPreference.setIcon(R.drawable.clear_everything_disabled);
}
// Update the clear cookies preference icon.
if (newClearEverythingBoolean || sharedPreferences.getBoolean("clear_cookies", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearCookiesPreference.setIcon(R.drawable.cookies_cleared_day);
- } else {
- clearCookiesPreference.setIcon(R.drawable.cookies_cleared_night);
- }
+ clearCookiesPreference.setIcon(R.drawable.clear_cookies_enabled);
} else {
- clearCookiesPreference.setIcon(R.drawable.cookies_warning);
+ clearCookiesPreference.setIcon(R.drawable.clear_cookies_disabled);
}
// Update the clear dom storage preference icon.
if (newClearEverythingBoolean || sharedPreferences.getBoolean("clear_dom_storage", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearDomStoragePreference.setIcon(R.drawable.dom_storage_cleared_day);
- } else {
- clearDomStoragePreference.setIcon(R.drawable.dom_storage_cleared_night);
- }
+ clearDomStoragePreference.setIcon(R.drawable.clear_dom_storage_enabled);
} else {
- clearDomStoragePreference.setIcon(R.drawable.dom_storage_warning);
+ clearDomStoragePreference.setIcon(R.drawable.clear_dom_storage_disabled);
}
// Update the clear form data preference icon if the API < 26.
if (Build.VERSION.SDK_INT < 26) {
if (newClearEverythingBoolean || sharedPreferences.getBoolean("clear_form_data", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearFormDataPreference.setIcon(R.drawable.form_data_cleared_day);
- } else {
- clearFormDataPreference.setIcon(R.drawable.form_data_cleared_night);
- }
+ clearFormDataPreference.setIcon(R.drawable.clear_form_data_enabled);
} else {
- clearFormDataPreference.setIcon(R.drawable.form_data_warning);
+ clearFormDataPreference.setIcon(R.drawable.clear_form_data_disabled);
}
}
// Update the clear logcat preference icon.
if (newClearEverythingBoolean || sharedPreferences.getBoolean(context.getString(R.string.clear_logcat_key), true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearLogcatPreference.setIcon(R.drawable.bug_cleared_day);
- } else {
- clearLogcatPreference.setIcon(R.drawable.bug_cleared_night);
- }
+ clearLogcatPreference.setIcon(R.drawable.clear_logcat_enabled);
} else {
- clearLogcatPreference.setIcon(R.drawable.cache_warning);
+ clearLogcatPreference.setIcon(R.drawable.clear_cache_disabled);
}
// Update the clear cache preference icon.
if (newClearEverythingBoolean || sharedPreferences.getBoolean("clear_cache", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearCachePreference.setIcon(R.drawable.cache_cleared_day);
- } else {
- clearCachePreference.setIcon(R.drawable.cache_cleared_night);
- }
+ clearCachePreference.setIcon(R.drawable.clear_cache_enabled);
} else {
- clearCachePreference.setIcon(R.drawable.cache_warning);
+ clearCachePreference.setIcon(R.drawable.clear_cache_disabled);
}
break;
case "clear_cookies":
// Update the icon.
if (sharedPreferences.getBoolean("clear_cookies", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearCookiesPreference.setIcon(R.drawable.cookies_cleared_day);
- } else {
- clearCookiesPreference.setIcon(R.drawable.cookies_cleared_night);
- }
+ clearCookiesPreference.setIcon(R.drawable.clear_cookies_enabled);
} else {
- clearCookiesPreference.setIcon(R.drawable.cookies_warning);
+ clearCookiesPreference.setIcon(R.drawable.clear_cookies_disabled);
}
break;
case "clear_dom_storage":
// Update the icon.
if (sharedPreferences.getBoolean("clear_dom_storage", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearDomStoragePreference.setIcon(R.drawable.dom_storage_cleared_day);
- } else {
- clearDomStoragePreference.setIcon(R.drawable.dom_storage_cleared_night);
- }
+ clearDomStoragePreference.setIcon(R.drawable.clear_dom_storage_enabled);
} else {
- clearDomStoragePreference.setIcon(R.drawable.dom_storage_warning);
+ clearDomStoragePreference.setIcon(R.drawable.clear_dom_storage_disabled);
}
break;
case "clear_form_data":
// Update the icon.
if (sharedPreferences.getBoolean("clear_form_data", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearFormDataPreference.setIcon(R.drawable.form_data_cleared_day);
- } else {
- clearFormDataPreference.setIcon(R.drawable.form_data_cleared_night);
- }
+ clearFormDataPreference.setIcon(R.drawable.clear_form_data_enabled);
} else {
- clearFormDataPreference.setIcon(R.drawable.form_data_warning);
+ clearFormDataPreference.setIcon(R.drawable.clear_form_data_disabled);
}
break;
case "clear_logcat":
// Update the icon.
if (sharedPreferences.getBoolean(context.getString(R.string.clear_logcat_key), true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearLogcatPreference.setIcon(R.drawable.bug_cleared_day);
- } else {
- clearLogcatPreference.setIcon(R.drawable.bug_cleared_night);
- }
+ clearLogcatPreference.setIcon(R.drawable.clear_logcat_enabled);
} else {
- clearLogcatPreference.setIcon(R.drawable.bug_warning);
+ clearLogcatPreference.setIcon(R.drawable.clear_logcat_disabled);
}
break;
case "clear_cache":
// Update the icon.
if (sharedPreferences.getBoolean("clear_cache", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- clearCachePreference.setIcon(R.drawable.cache_cleared_day);
- } else {
- clearCachePreference.setIcon(R.drawable.cache_cleared_night);
- }
+ clearCachePreference.setIcon(R.drawable.clear_cache_enabled);
} else {
- clearCachePreference.setIcon(R.drawable.cache_warning);
+ clearCachePreference.setIcon(R.drawable.clear_cache_disabled);
}
break;
case "open_intents_in_new_tab":
// Update the icon.
if (sharedPreferences.getBoolean("open_intents_in_new_tab", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- openIntentsInNewTabPreference.setIcon(R.drawable.tab_enabled_day);
- } else {
- openIntentsInNewTabPreference.setIcon(R.drawable.tab_enabled_night);
- }
+ openIntentsInNewTabPreference.setIcon(R.drawable.tab_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- openIntentsInNewTabPreference.setIcon(R.drawable.tab_disabled_day);
- } else {
- openIntentsInNewTabPreference.setIcon(R.drawable.tab_disabled_night);
- }
+ openIntentsInNewTabPreference.setIcon(R.drawable.tab_disabled);
}
break;
case "swipe_to_refresh":
// Update the icon.
if (sharedPreferences.getBoolean("swipe_to_refresh", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- swipeToRefreshPreference.setIcon(R.drawable.refresh_enabled_day);
- } else {
- swipeToRefreshPreference.setIcon(R.drawable.refresh_enabled_night);
- }
+ swipeToRefreshPreference.setIcon(R.drawable.refresh_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- swipeToRefreshPreference.setIcon(R.drawable.refresh_disabled_day);
- } else {
- swipeToRefreshPreference.setIcon(R.drawable.refresh_disabled_night);
- }
+ swipeToRefreshPreference.setIcon(R.drawable.refresh_disabled);
}
break;
case "download_with_external_app":
// Update the icon.
if (sharedPreferences.getBoolean(context.getString(R.string.download_with_external_app_key), false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_enabled_day);
- } else {
- downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_enabled_night);
- }
+ downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_disabled_day);
- } else {
- downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_disabled_night);
- }
+ downloadWithExternalAppPreference.setIcon(R.drawable.download_with_external_app_disabled);
}
break;
case "scroll_app_bar":
// Update the icon.
if (sharedPreferences.getBoolean(context.getString(R.string.scroll_app_bar_key), true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- scrollAppBarPreference.setIcon(R.drawable.app_bar_enabled_day);
- } else {
- scrollAppBarPreference.setIcon(R.drawable.app_bar_enabled_night);
- }
+ scrollAppBarPreference.setIcon(R.drawable.app_bar_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- scrollAppBarPreference.setIcon(R.drawable.app_bar_disabled_day);
- } else {
- scrollAppBarPreference.setIcon(R.drawable.app_bar_disabled_night);
- }
+ scrollAppBarPreference.setIcon(R.drawable.app_bar_disabled);
}
break;
case "bottom_app_bar":
// Update the icon.
if (sharedPreferences.getBoolean(context.getString(R.string.bottom_app_bar_key), false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_enabled_day);
- } else {
- bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_enabled_night);
- }
+ bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_disabled_day);
- } else {
- bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_disabled_night);
- }
+ bottomAppBarPreference.setIcon(R.drawable.bottom_app_bar_disabled);
}
// Restart Privacy Browser.
case "display_additional_app_bar_icons":
// Update the icon.
if (sharedPreferences.getBoolean(context.getString(R.string.display_additional_app_bar_icons_key), false)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_enabled_day);
- } else {
- displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_enabled_night);
- }
+ displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_disabled_day);
- } else {
- displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_disabled_night);
- }
+ displayAdditionalAppBarIconsPreference.setIcon(R.drawable.more_disabled);
}
break;
// Get the new theme.
String newAppTheme = sharedPreferences.getString("app_theme", context.getString(R.string.app_theme_default_value));
- // Update the system according to the new theme. A switch statement cannot be used because the theme entry values string array is not a compile time constant.
+ // Update the system according to the new theme. A switch statement cannot be used because the theme entry values string array is not a compile-time constant.
if (newAppTheme.equals(appThemeEntryValuesStringArray[1])) { // The light theme is selected.
// Update the theme preference summary text.
appThemePreference.setSummary(appThemeEntriesStringArray[1]);
// Update the icon.
switch (newWebViewThemeEntryNumber) {
case 0: // The system default WebView theme is selected.
- // Set the icon according to the app theme.
+ // Set the icon.
if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemePreference.setIcon(R.drawable.webview_light_theme_day);
+ webViewThemePreference.setIcon(R.drawable.webview_light_theme);
} else {
- webViewThemePreference.setIcon(R.drawable.webview_dark_theme_night);
+ webViewThemePreference.setIcon(R.drawable.webview_dark_theme);
}
break;
- case 1: // The system default WebView theme is selected.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemePreference.setIcon(R.drawable.webview_light_theme_day);
- } else {
- webViewThemePreference.setIcon(R.drawable.webview_light_theme_night);
- }
+ case 1: // The light theme is selected.
+ // Set the icon.
+ webViewThemePreference.setIcon(R.drawable.webview_light_theme);
break;
- case 2: // The system default WebView theme is selected.
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_NO) {
- webViewThemePreference.setIcon(R.drawable.webview_dark_theme_day);
- } else {
- webViewThemePreference.setIcon(R.drawable.webview_dark_theme_night);
- }
+ case 2: // The dark theme is selected.
+ // Set the icon.
+ webViewThemePreference.setIcon(R.drawable.webview_dark_theme);
break;
}
case "wide_viewport":
// Update the icon.
if (sharedPreferences.getBoolean("wide_viewport", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled_night);
- } else {
- wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled_day);
- }
+ wideViewportPreference.setIcon(R.drawable.wide_viewport_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled_night);
- } else {
- wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled_day);
- }
+ wideViewportPreference.setIcon(R.drawable.wide_viewport_disabled);
}
break;
case "display_webpage_images":
// Update the icon.
if (sharedPreferences.getBoolean("display_webpage_images", true)) {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesPreference.setIcon(R.drawable.images_enabled_night);
- } else {
- displayWebpageImagesPreference.setIcon(R.drawable.images_enabled_day);
- }
+ displayWebpageImagesPreference.setIcon(R.drawable.images_enabled);
} else {
- if (currentThemeStatus == Configuration.UI_MODE_NIGHT_YES) {
- displayWebpageImagesPreference.setIcon(R.drawable.images_disabled_night);
- } else {
- displayWebpageImagesPreference.setIcon(R.drawable.images_disabled_day);
- }
+ displayWebpageImagesPreference.setIcon(R.drawable.images_disabled);
}
break;
}
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `info_outline`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M11,17h2v-6h-2v6zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM11,9h2L13,7h-2v2z" />
+</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `info_outline`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M11,17h2v-6h-2v6zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM11,9h2L13,7h-2v2z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `info_outline`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M11,17h2v-6h-2v6zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM11,9h2L13,7h-2v2z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `info_outline`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M11,17h2v-6h-2v6zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM11,9h2L13,7h-2v2z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `info_outline`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/black"
- android:pathData="M11,17h2v-6h-2v6zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM11,9h2L13,7h-2v2z" />
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `info_outline`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M11,17h2v-6h-2v6zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM11,9h2L13,7h-2v2z" />
-</vector>
android:viewportWidth="24.0" >
<path
- android:fillColor="@color/white"
+ android:fillColor="@color/icon"
android:pathData="M19,13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/>
</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `camera_enhance`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M9,3L7.17,5L4,5c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,7c0,-1.1 -0.9,-2 -2,-2h-3.17L15,3L9,3zM12,18c-2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5 -2.24,5 -5,5zM12,17l1.25,-2.75L16,13l-2.75,-1.25L12,9l-1.25,2.75L8,13l2.75,1.25z"/>
+</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `camera_enhance`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M9,3L7.17,5L4,5c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,7c0,-1.1 -0.9,-2 -2,-2h-3.17L15,3L9,3zM12,18c-2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5 -2.24,5 -5,5zM12,17l1.25,-2.75L16,13l-2.75,-1.25L12,9l-1.25,2.75L8,13l2.75,1.25z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `camera_enhance`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M9,3L7.17,5L4,5c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,7c0,-1.1 -0.9,-2 -2,-2h-3.17L15,3L9,3zM12,18c-2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5 -2.24,5 -5,5zM12,17l1.25,-2.75L16,13l-2.75,-1.25L12,9l-1.25,2.75L8,13l2.75,1.25z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `camera_enhance`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M9,3L7.17,5L4,5c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,7c0,-1.1 -0.9,-2 -2,-2h-3.17L15,3L9,3zM12,18c-2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5 -2.24,5 -5,5zM12,17l1.25,-2.75L16,13l-2.75,-1.25L12,9l-1.25,2.75L8,13l2.75,1.25z"/>
+</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `camera_enhance`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M9,3L7.17,5L4,5c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,7c0,-1.1 -0.9,-2 -2,-2h-3.17L15,3L9,3zM12,18c-2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5 -2.24,5 -5,5zM12,17l1.25,-2.75L16,13l-2.75,-1.25L12,9l-1.25,2.75L8,13l2.75,1.25z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `camera_enhance`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M9,3L7.17,5L4,5c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,7c0,-1.1 -0.9,-2 -2,-2h-3.17L15,3L9,3zM12,18c-2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5 -2.24,5 -5,5zM12,17l1.25,-2.75L16,13l-2.75,-1.25L12,9l-1.25,2.75L8,13l2.75,1.25z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `payment`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M20,4L4,4c-1.11,0 -1.99,0.89 -1.99,2L2,18c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2L22,6c0,-1.11 -0.89,-2 -2,-2zM20,18L4,18v-6h16v6zM20,8L4,8L4,6h16v2z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `payment`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M20,4L4,4c-1.11,0 -1.99,0.89 -1.99,2L2,18c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2L22,6c0,-1.11 -0.89,-2 -2,-2zM20,18L4,18v-6h16v6zM20,8L4,8L4,6h16v2z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `payment`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M20,4L4,4c-1.11,0 -1.99,0.89 -1.99,2L2,18c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2L22,6c0,-1.11 -0.89,-2 -2,-2zM20,18L4,18v-6h16v6zM20,8L4,8L4,6h16v2z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `payment`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M20,4L4,4c-1.11,0 -1.99,0.89 -1.99,2L2,18c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2L22,6c0,-1.11 -0.89,-2 -2,-2zM20,18L4,18v-6h16v6zM20,8L4,8L4,6h16v2z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `payment`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M20,4L4,4c-1.11,0 -1.99,0.89 -1.99,2L2,18c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2L22,6c0,-1.11 -0.89,-2 -2,-2zM20,18L4,18v-6h16v6zM20,8L4,8L4,6h16v2z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `payment`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M20,4L4,4c-1.11,0 -1.99,0.89 -1.99,2L2,18c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2L22,6c0,-1.11 -0.89,-2 -2,-2zM20,18L4,18v-6h16v6zM20,8L4,8L4,6h16v2z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `payment`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/ghosted_icon"
+ android:pathData="M20,4L4,4c-1.11,0 -1.99,0.89 -1.99,2L2,18c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2L22,6c0,-1.11 -0.89,-2 -2,-2zM20,18L4,18v-6h16v6zM20,8L4,8L4,6h16v2z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `payment`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/gray_425"
- android:pathData="M20,4L4,4c-1.11,0 -1.99,0.89 -1.99,2L2,18c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2L22,6c0,-1.11 -0.89,-2 -2,-2zM20,18L4,18v-6h16v6zM20,8L4,8L4,6h16v2z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `payment`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/gray_700"
- android:pathData="M20,4L4,4c-1.11,0 -1.99,0.89 -1.99,2L2,18c0,1.11 0.89,2 2,2h16c1.11,0 2,-0.89 2,-2L22,6c0,-1.11 -0.89,-2 -2,-2zM20,18L4,18v-6h16v6zM20,8L4,8L4,6h16v2z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `style`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24"
+ android:autoMirrored="true">
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M2.53,19.65l1.34,0.56v-9.03l-2.43,5.86c-0.41,1.02 0.08,2.19 1.09,2.61zM22.03,15.95L17.07,3.98c-0.31,-0.75 -1.04,-1.21 -1.81,-1.23 -0.26,0 -0.53,0.04 -0.79,0.15L7.1,5.95c-0.75,0.31 -1.21,1.03 -1.23,1.8 -0.01,0.27 0.04,0.54 0.15,0.8l4.96,11.97c0.31,0.76 1.05,1.22 1.83,1.23 0.26,0 0.52,-0.05 0.77,-0.15l7.36,-3.05c1.02,-0.42 1.51,-1.59 1.09,-2.6zM7.88,8.75c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1 1,0.45 1,1 -0.45,1 -1,1zM5.88,19.75c0,1.1 0.9,2 2,2h1.45l-3.45,-8.34v6.34z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `style`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportWidth="24"
- android:viewportHeight="24"
- android:autoMirrored="true">
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M2.53,19.65l1.34,0.56v-9.03l-2.43,5.86c-0.41,1.02 0.08,2.19 1.09,2.61zM22.03,15.95L17.07,3.98c-0.31,-0.75 -1.04,-1.21 -1.81,-1.23 -0.26,0 -0.53,0.04 -0.79,0.15L7.1,5.95c-0.75,0.31 -1.21,1.03 -1.23,1.8 -0.01,0.27 0.04,0.54 0.15,0.8l4.96,11.97c0.31,0.76 1.05,1.22 1.83,1.23 0.26,0 0.52,-0.05 0.77,-0.15l7.36,-3.05c1.02,-0.42 1.51,-1.59 1.09,-2.6zM7.88,8.75c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1 1,0.45 1,1 -0.45,1 -1,1zM5.88,19.75c0,1.1 0.9,2 2,2h1.45l-3.45,-8.34v6.34z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `style`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportWidth="24"
- android:viewportHeight="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M2.53,19.65l1.34,0.56v-9.03l-2.43,5.86c-0.41,1.02 0.08,2.19 1.09,2.61zM22.03,15.95L17.07,3.98c-0.31,-0.75 -1.04,-1.21 -1.81,-1.23 -0.26,0 -0.53,0.04 -0.79,0.15L7.1,5.95c-0.75,0.31 -1.21,1.03 -1.23,1.8 -0.01,0.27 0.04,0.54 0.15,0.8l4.96,11.97c0.31,0.76 1.05,1.22 1.83,1.23 0.26,0 0.52,-0.05 0.77,-0.15l7.36,-3.05c1.02,-0.42 1.51,-1.59 1.09,-2.6zM7.88,8.75c-0.55,0 -1,-0.45 -1,-1s0.45,-1 1,-1 1,0.45 1,1 -0.45,1 -1,1zM5.88,19.75c0,1.1 0.9,2 2,2h1.45l-3.45,-8.34v6.34z"/>
-</vector>
\ No newline at end of file
android:autoMirrored="true" >
<path
- android:fillColor="@color/black"
+ android:fillColor="@color/icon"
android:pathData="M20,11H7.83l5.59,-5.59L12,4l-8,8 8,8 1.41,-1.41L7.83,13H20v-2z" />
</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M20,12c0,-1.1 0.9,-2 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2L4,4c-1.1,0 -1.99,0.9 -1.99,2v4c1.1,0 1.99,0.9 1.99,2s-0.89,2 -2,2v4c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2v-4c-1.1,0 -2,-0.9 -2,-2zM15.58,16.8L12,14.5l-3.58,2.3 1.08,-4.12 -3.29,-2.69 4.24,-0.25L12,5.8l1.54,3.95 4.24,0.25 -3.29,2.69 1.09,4.11z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M20,12c0,-1.1 0.9,-2 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2L4,4c-1.1,0 -1.99,0.9 -1.99,2v4c1.1,0 1.99,0.9 1.99,2s-0.89,2 -2,2v4c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2v-4c-1.1,0 -2,-0.9 -2,-2zM15.58,16.8L12,14.5l-3.58,2.3 1.08,-4.12 -3.29,-2.69 4.24,-0.25L12,5.8l1.54,3.95 4.24,0.25 -3.29,2.69 1.09,4.11z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M20,12c0,-1.1 0.9,-2 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2L4,4c-1.1,0 -1.99,0.9 -1.99,2v4c1.1,0 1.99,0.9 1.99,2s-0.89,2 -2,2v4c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2v-4c-1.1,0 -2,-0.9 -2,-2zM15.58,16.8L12,14.5l-3.58,2.3 1.08,-4.12 -3.29,-2.69 4.24,-0.25L12,5.8l1.54,3.95 4.24,0.25 -3.29,2.69 1.09,4.11z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M20,12c0,-1.1 0.9,-2 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2L4,4c-1.1,0 -1.99,0.9 -1.99,2v4c1.1,0 1.99,0.9 1.99,2s-0.89,2 -2,2v4c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2v-4c-1.1,0 -2,-0.9 -2,-2zM15.58,16.8L12,14.5l-3.58,2.3 1.08,-4.12 -3.29,-2.69 4.24,-0.25L12,5.8l1.54,3.95 4.24,0.25 -3.29,2.69 1.09,4.11z"/>
+</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M20,12c0,-1.1 0.9,-2 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2L4,4c-1.1,0 -1.99,0.9 -1.99,2v4c1.1,0 1.99,0.9 1.99,2s-0.89,2 -2,2v4c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2v-4c-1.1,0 -2,-0.9 -2,-2zM15.58,16.8L12,14.5l-3.58,2.3 1.08,-4.12 -3.29,-2.69 4.24,-0.25L12,5.8l1.54,3.95 4.24,0.25 -3.29,2.69 1.09,4.11z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M20,12c0,-1.1 0.9,-2 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2L4,4c-1.1,0 -1.99,0.9 -1.99,2v4c1.1,0 1.99,0.9 1.99,2s-0.89,2 -2,2v4c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2v-4c-1.1,0 -2,-0.9 -2,-2zM15.58,16.8L12,14.5l-3.58,2.3 1.08,-4.12 -3.29,-2.69 4.24,-0.25L12,5.8l1.54,3.95 4.24,0.25 -3.29,2.69 1.09,4.11z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `new_releases`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M23,12l-2.44,-2.78 0.34,-3.68 -3.61,-0.82 -1.89,-3.18L12,3 8.6,1.54 6.71,4.72l-3.61,0.81 0.34,3.68L1,12l2.44,2.78 -0.34,3.69 3.61,0.82 1.89,3.18L12,21l3.4,1.46 1.89,-3.18 3.61,-0.82 -0.34,-3.68L23,12zM13,17h-2v-2h2v2zM13,13h-2L11,7h2v6z"/>
+</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `new_releases`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M23,12l-2.44,-2.78 0.34,-3.68 -3.61,-0.82 -1.89,-3.18L12,3 8.6,1.54 6.71,4.72l-3.61,0.81 0.34,3.68L1,12l2.44,2.78 -0.34,3.69 3.61,0.82 1.89,3.18L12,21l3.4,1.46 1.89,-3.18 3.61,-0.82 -0.34,-3.68L23,12zM13,17h-2v-2h2v2zM13,13h-2L11,7h2v6z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `new_releases`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M23,12l-2.44,-2.78 0.34,-3.68 -3.61,-0.82 -1.89,-3.18L12,3 8.6,1.54 6.71,4.72l-3.61,0.81 0.34,3.68L1,12l2.44,2.78 -0.34,3.69 3.61,0.82 1.89,3.18L12,21l3.4,1.46 1.89,-3.18 3.61,-0.82 -0.34,-3.68L23,12zM13,17h-2v-2h2v2zM13,13h-2L11,7h2v6z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `new_releases`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M23,12l-2.44,-2.78 0.34,-3.68 -3.61,-0.82 -1.89,-3.18L12,3 8.6,1.54 6.71,4.72l-3.61,0.81 0.34,3.68L1,12l2.44,2.78 -0.34,3.69 3.61,0.82 1.89,3.18L12,21l3.4,1.46 1.89,-3.18 3.61,-0.82 -0.34,-3.68L23,12zM13,17h-2v-2h2v2zM13,13h-2L11,7h2v6z"/>
+</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `new_releases`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M23,12l-2.44,-2.78 0.34,-3.68 -3.61,-0.82 -1.89,-3.18L12,3 8.6,1.54 6.71,4.72l-3.61,0.81 0.34,3.68L1,12l2.44,2.78 -0.34,3.69 3.61,0.82 1.89,3.18L12,21l3.4,1.46 1.89,-3.18 3.61,-0.82 -0.34,-3.68L23,12zM13,17h-2v-2h2v2zM13,13h-2L11,7h2v6z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `new_releases`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M23,12l-2.44,-2.78 0.34,-3.68 -3.61,-0.82 -1.89,-3.18L12,3 8.6,1.54 6.71,4.72l-3.61,0.81 0.34,3.68L1,12l2.44,2.78 -0.34,3.69 3.61,0.82 1.89,3.18L12,21l3.4,1.46 1.89,-3.18 3.61,-0.82 -0.34,-3.68L23,12zM13,17h-2v-2h2v2zM13,13h-2L11,7h2v6z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `location_off`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M12,6.5c1.38,0 2.5,1.12 2.5,2.5 0,0.74 -0.33,1.39 -0.83,1.85l3.63,3.63c0.98,-1.86 1.7,-3.8 1.7,-5.48 0,-3.87 -3.13,-7 -7,-7 -1.98,0 -3.76,0.83 -5.04,2.15l3.19,3.19c0.46,-0.52 1.11,-0.84 1.85,-0.84zM16.37,16.1l-4.63,-4.63 -0.11,-0.11L3.27,3 2,4.27l3.18,3.18C5.07,7.95 5,8.47 5,9c0,5.25 7,13 7,13s1.67,-1.85 3.38,-4.35L18.73,21 20,19.73l-3.63,-3.63z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `location_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M12,6.5c1.38,0 2.5,1.12 2.5,2.5 0,0.74 -0.33,1.39 -0.83,1.85l3.63,3.63c0.98,-1.86 1.7,-3.8 1.7,-5.48 0,-3.87 -3.13,-7 -7,-7 -1.98,0 -3.76,0.83 -5.04,2.15l3.19,3.19c0.46,-0.52 1.11,-0.84 1.85,-0.84zM16.37,16.1l-4.63,-4.63 -0.11,-0.11L3.27,3 2,4.27l3.18,3.18C5.07,7.95 5,8.47 5,9c0,5.25 7,13 7,13s1.67,-1.85 3.38,-4.35L18.73,21 20,19.73l-3.63,-3.63z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `location_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M12,6.5c1.38,0 2.5,1.12 2.5,2.5 0,0.74 -0.33,1.39 -0.83,1.85l3.63,3.63c0.98,-1.86 1.7,-3.8 1.7,-5.48 0,-3.87 -3.13,-7 -7,-7 -1.98,0 -3.76,0.83 -5.04,2.15l3.19,3.19c0.46,-0.52 1.11,-0.84 1.85,-0.84zM16.37,16.1l-4.63,-4.63 -0.11,-0.11L3.27,3 2,4.27l3.18,3.18C5.07,7.95 5,8.47 5,9c0,5.25 7,13 7,13s1.67,-1.85 3.38,-4.35L18.73,21 20,19.73l-3.63,-3.63z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `location_off`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M12,6.5c1.38,0 2.5,1.12 2.5,2.5 0,0.74 -0.33,1.39 -0.83,1.85l3.63,3.63c0.98,-1.86 1.7,-3.8 1.7,-5.48 0,-3.87 -3.13,-7 -7,-7 -1.98,0 -3.76,0.83 -5.04,2.15l3.19,3.19c0.46,-0.52 1.11,-0.84 1.85,-0.84zM16.37,16.1l-4.63,-4.63 -0.11,-0.11L3.27,3 2,4.27l3.18,3.18C5.07,7.95 5,8.47 5,9c0,5.25 7,13 7,13s1.67,-1.85 3.38,-4.35L18.73,21 20,19.73l-3.63,-3.63z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `location_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M12,6.5c1.38,0 2.5,1.12 2.5,2.5 0,0.74 -0.33,1.39 -0.83,1.85l3.63,3.63c0.98,-1.86 1.7,-3.8 1.7,-5.48 0,-3.87 -3.13,-7 -7,-7 -1.98,0 -3.76,0.83 -5.04,2.15l3.19,3.19c0.46,-0.52 1.11,-0.84 1.85,-0.84zM16.37,16.1l-4.63,-4.63 -0.11,-0.11L3.27,3 2,4.27l3.18,3.18C5.07,7.95 5,8.47 5,9c0,5.25 7,13 7,13s1.67,-1.85 3.38,-4.35L18.73,21 20,19.73l-3.63,-3.63z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `location_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M12,6.5c1.38,0 2.5,1.12 2.5,2.5 0,0.74 -0.33,1.39 -0.83,1.85l3.63,3.63c0.98,-1.86 1.7,-3.8 1.7,-5.48 0,-3.87 -3.13,-7 -7,-7 -1.98,0 -3.76,0.83 -5.04,2.15l3.19,3.19c0.46,-0.52 1.11,-0.84 1.85,-0.84zM16.37,16.1l-4.63,-4.63 -0.11,-0.11L3.27,3 2,4.27l3.18,3.18C5.07,7.95 5,8.47 5,9c0,5.25 7,13 7,13s1.67,-1.85 3.38,-4.35L18.73,21 20,19.73l-3.63,-3.63z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `bookmarks`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M19,18l2,1V3c0,-1.1 -0.9,-2 -2,-2H8.99C7.89,1 7,1.9 7,3h10c1.1,0 2,0.9 2,2v13zM15,5H5c-1.1,0 -2,0.9 -2,2v16l7,-3 7,3V7c0,-1.1 -0.9,-2 -2,-2z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `bookmarks`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M19,18l2,1V3c0,-1.1 -0.9,-2 -2,-2H8.99C7.89,1 7,1.9 7,3h10c1.1,0 2,0.9 2,2v13zM15,5H5c-1.1,0 -2,0.9 -2,2v16l7,-3 7,3V7c0,-1.1 -0.9,-2 -2,-2z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `bookmarks`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M19,18l2,1V3c0,-1.1 -0.9,-2 -2,-2H8.99C7.89,1 7,1.9 7,3h10c1.1,0 2,0.9 2,2v13zM15,5H5c-1.1,0 -2,0.9 -2,2v16l7,-3 7,3V7c0,-1.1 -0.9,-2 -2,-2z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `call_to_action`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19v-3h18v3z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `call_to_action`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19v-3h18v3z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `call_to_action`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19v-3h18v3z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `call_to_action`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19v-3h18v3z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `call_to_action`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19v-3h18v3z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `call_to_action`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19v-3h18v3z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `bug_report`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/black"
- android:pathData="M20,8h-2.81c-0.45,-0.78 -1.07,-1.45 -1.82,-1.96L17,4.41 15.59,3l-2.17,2.17C12.96,5.06 12.49,5 12,5c-0.49,0 -0.96,0.06 -1.41,0.17L8.41,3 7,4.41l1.62,1.63C7.88,6.55 7.26,7.22 6.81,8L4,8v2h2.09c-0.05,0.33 -0.09,0.66 -0.09,1v1L4,12v2h2v1c0,0.34 0.04,0.67 0.09,1L4,16v2h2.81c1.04,1.79 2.97,3 5.19,3s4.15,-1.21 5.19,-3L20,18v-2h-2.09c0.05,-0.33 0.09,-0.66 0.09,-1v-1h2v-2h-2v-1c0,-0.34 -0.04,-0.67 -0.09,-1L20,10L20,8zM14,16h-4v-2h4v2zM14,12h-4v-2h4v2z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `bug_report`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M20,8h-2.81c-0.45,-0.78 -1.07,-1.45 -1.82,-1.96L17,4.41 15.59,3l-2.17,2.17C12.96,5.06 12.49,5 12,5c-0.49,0 -0.96,0.06 -1.41,0.17L8.41,3 7,4.41l1.62,1.63C7.88,6.55 7.26,7.22 6.81,8L4,8v2h2.09c-0.05,0.33 -0.09,0.66 -0.09,1v1L4,12v2h2v1c0,0.34 0.04,0.67 0.09,1L4,16v2h2.81c1.04,1.79 2.97,3 5.19,3s4.15,-1.21 5.19,-3L20,18v-2h-2.09c0.05,-0.33 0.09,-0.66 0.09,-1v-1h2v-2h-2v-1c0,-0.34 -0.04,-0.67 -0.09,-1L20,10L20,8zM14,16h-4v-2h4v2zM14,12h-4v-2h4v2z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `bug_report`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M20,8h-2.81c-0.45,-0.78 -1.07,-1.45 -1.82,-1.96L17,4.41 15.59,3l-2.17,2.17C12.96,5.06 12.49,5 12,5c-0.49,0 -0.96,0.06 -1.41,0.17L8.41,3 7,4.41l1.62,1.63C7.88,6.55 7.26,7.22 6.81,8L4,8v2h2.09c-0.05,0.33 -0.09,0.66 -0.09,1v1L4,12v2h2v1c0,0.34 0.04,0.67 0.09,1L4,16v2h2.81c1.04,1.79 2.97,3 5.19,3s4.15,-1.21 5.19,-3L20,18v-2h-2.09c0.05,-0.33 0.09,-0.66 0.09,-1v-1h2v-2h-2v-1c0,-0.34 -0.04,-0.67 -0.09,-1L20,10L20,8zM14,16h-4v-2h4v2zM14,12h-4v-2h4v2z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `bug_report`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/red_900"
- android:pathData="M20,8h-2.81c-0.45,-0.78 -1.07,-1.45 -1.82,-1.96L17,4.41 15.59,3l-2.17,2.17C12.96,5.06 12.49,5 12,5c-0.49,0 -0.96,0.06 -1.41,0.17L8.41,3 7,4.41l1.62,1.63C7.88,6.55 7.26,7.22 6.81,8L4,8v2h2.09c-0.05,0.33 -0.09,0.66 -0.09,1v1L4,12v2h2v1c0,0.34 0.04,0.67 0.09,1L4,16v2h2.81c1.04,1.79 2.97,3 5.19,3s4.15,-1.21 5.19,-3L20,18v-2h-2.09c0.05,-0.33 0.09,-0.66 0.09,-1v-1h2v-2h-2v-1c0,-0.34 -0.04,-0.67 -0.09,-1L20,10L20,8zM14,16h-4v-2h4v2zM14,12h-4v-2h4v2z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `donut_small`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M11,9.16V2c-5,0.5 -9,4.79 -9,10s4,9.5 9,10v-7.16c-1,-0.41 -2,-1.52 -2,-2.84s1,-2.43 2,-2.84zM14.86,11H22c-0.48,-4.75 -4,-8.53 -9,-9v7.16c1,0.3 1.52,0.98 1.86,1.84zM13,14.84V22c5,-0.47 8.52,-4.25 9,-9h-7.14c-0.34,0.86 -0.86,1.54 -1.86,1.84z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `donut_small`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M11,9.16V2c-5,0.5 -9,4.79 -9,10s4,9.5 9,10v-7.16c-1,-0.41 -2,-1.52 -2,-2.84s1,-2.43 2,-2.84zM14.86,11H22c-0.48,-4.75 -4,-8.53 -9,-9v7.16c1,0.3 1.52,0.98 1.86,1.84zM13,14.84V22c5,-0.47 8.52,-4.25 9,-9h-7.14c-0.34,0.86 -0.86,1.54 -1.86,1.84z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `donut_small`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/red_900"
- android:pathData="M11,9.16V2c-5,0.5 -9,4.79 -9,10s4,9.5 9,10v-7.16c-1,-0.41 -2,-1.52 -2,-2.84s1,-2.43 2,-2.84zM14.86,11H22c-0.48,-4.75 -4,-8.53 -9,-9v7.16c1,0.3 1.52,0.98 1.86,1.84zM13,14.84V22c5,-0.47 8.52,-4.25 9,-9h-7.14c-0.34,0.86 -0.86,1.54 -1.86,1.84z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `donut_small`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/red_900"
+ android:pathData="M11,9.16V2c-5,0.5 -9,4.79 -9,10s4,9.5 9,10v-7.16c-1,-0.41 -2,-1.52 -2,-2.84s1,-2.43 2,-2.84zM14.86,11H22c-0.48,-4.75 -4,-8.53 -9,-9v7.16c1,0.3 1.52,0.98 1.86,1.84zM13,14.84V22c5,-0.47 8.52,-4.25 9,-9h-7.14c-0.34,0.86 -0.86,1.54 -1.86,1.84z"/>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `donut_small`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M11,9.16V2c-5,0.5 -9,4.79 -9,10s4,9.5 9,10v-7.16c-1,-0.41 -2,-1.52 -2,-2.84s1,-2.43 2,-2.84zM14.86,11H22c-0.48,-4.75 -4,-8.53 -9,-9v7.16c1,0.3 1.52,0.98 1.86,1.84zM13,14.84V22c5,-0.47 8.52,-4.25 9,-9h-7.14c-0.34,0.86 -0.86,1.54 -1.86,1.84z"/>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file was created by Google and downloaded from <https://materialdesignicons.com/icon/cookie>. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/red_900"
+ android:pathData="M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A9,9 0 0,0 21,12C21,11.5 20.96,11 20.87,10.5C20.6,10 20,10 20,10H18V9C18,8 17,8 17,8H15V7C15,6 14,6 14,6H13V4C13,3 12,3 12,3M9.5,6A1.5,1.5 0 0,1 11,7.5A1.5,1.5 0 0,1 9.5,9A1.5,1.5 0 0,1 8,7.5A1.5,1.5 0 0,1 9.5,6M6.5,10A1.5,1.5 0 0,1 8,11.5A1.5,1.5 0 0,1 6.5,13A1.5,1.5 0 0,1 5,11.5A1.5,1.5 0 0,1 6.5,10M11.5,11A1.5,1.5 0 0,1 13,12.5A1.5,1.5 0 0,1 11.5,14A1.5,1.5 0 0,1 10,12.5A1.5,1.5 0 0,1 11.5,11M16.5,13A1.5,1.5 0 0,1 18,14.5A1.5,1.5 0 0,1 16.5,16H16.5A1.5,1.5 0 0,1 15,14.5H15A1.5,1.5 0 0,1 16.5,13M11,16A1.5,1.5 0 0,1 12.5,17.5A1.5,1.5 0 0,1 11,19A1.5,1.5 0 0,1 9.5,17.5A1.5,1.5 0 0,1 11,16Z" />
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file was created by Google and downloaded from <https://materialdesignicons.com/icon/cookie>. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A9,9 0 0,0 21,12C21,11.5 20.96,11 20.87,10.5C20.6,10 20,10 20,10H18V9C18,8 17,8 17,8H15V7C15,6 14,6 14,6H13V4C13,3 12,3 12,3M9.5,6A1.5,1.5 0 0,1 11,7.5A1.5,1.5 0 0,1 9.5,9A1.5,1.5 0 0,1 8,7.5A1.5,1.5 0 0,1 9.5,6M6.5,10A1.5,1.5 0 0,1 8,11.5A1.5,1.5 0 0,1 6.5,13A1.5,1.5 0 0,1 5,11.5A1.5,1.5 0 0,1 6.5,10M11.5,11A1.5,1.5 0 0,1 13,12.5A1.5,1.5 0 0,1 11.5,14A1.5,1.5 0 0,1 10,12.5A1.5,1.5 0 0,1 11.5,11M16.5,13A1.5,1.5 0 0,1 18,14.5A1.5,1.5 0 0,1 16.5,16H16.5A1.5,1.5 0 0,1 15,14.5H15A1.5,1.5 0 0,1 16.5,13M11,16A1.5,1.5 0 0,1 12.5,17.5A1.5,1.5 0 0,1 11,19A1.5,1.5 0 0,1 9.5,17.5A1.5,1.5 0 0,1 11,16Z" />
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/red_900"
+ android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
+</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `delete_forever`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2L18,7L6,7v12zM8.46,11.88l1.41,-1.41L12,12.59l2.12,-2.12 1.41,1.41L13.41,14l2.12,2.12 -1.41,1.41L12,15.41l-2.12,2.12 -1.41,-1.41L10.59,14l-2.13,-2.12zM15.5,4l-1,-1h-5l-1,1L5,4v2h14L19,4z"/>
+</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `delete_forever`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2L18,7L6,7v12zM8.46,11.88l1.41,-1.41L12,12.59l2.12,-2.12 1.41,1.41L13.41,14l2.12,2.12 -1.41,1.41L12,15.41l-2.12,2.12 -1.41,-1.41L10.59,14l-2.13,-2.12zM15.5,4l-1,-1h-5l-1,1L5,4v2h14L19,4z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `delete_forever`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2L18,7L6,7v12zM8.46,11.88l1.41,-1.41L12,12.59l2.12,-2.12 1.41,1.41L13.41,14l2.12,2.12 -1.41,1.41L12,15.41l-2.12,2.12 -1.41,-1.41L10.59,14l-2.13,-2.12zM15.5,4l-1,-1h-5l-1,1L5,4v2h14L19,4z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `subtitles`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/red_900"
+ android:pathData="M20,4L4,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM4,12h4v2L4,14v-2zM14,18L4,18v-2h10v2zM20,18h-4v-2h4v2zM20,14L10,14v-2h10v2z"/>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `subtitles`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M20,4L4,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM4,12h4v2L4,14v-2zM14,18L4,18v-2h10v2zM20,18h-4v-2h4v2zM20,14L10,14v-2h10v2z"/>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `bug_report`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/red_900"
+ android:pathData="M20,8h-2.81c-0.45,-0.78 -1.07,-1.45 -1.82,-1.96L17,4.41 15.59,3l-2.17,2.17C12.96,5.06 12.49,5 12,5c-0.49,0 -0.96,0.06 -1.41,0.17L8.41,3 7,4.41l1.62,1.63C7.88,6.55 7.26,7.22 6.81,8L4,8v2h2.09c-0.05,0.33 -0.09,0.66 -0.09,1v1L4,12v2h2v1c0,0.34 0.04,0.67 0.09,1L4,16v2h2.81c1.04,1.79 2.97,3 5.19,3s4.15,-1.21 5.19,-3L20,18v-2h-2.09c0.05,-0.33 0.09,-0.66 0.09,-1v-1h2v-2h-2v-1c0,-0.34 -0.04,-0.67 -0.09,-1L20,10L20,8zM14,16h-4v-2h4v2zM14,12h-4v-2h4v2z"/>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `bug_report`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M20,8h-2.81c-0.45,-0.78 -1.07,-1.45 -1.82,-1.96L17,4.41 15.59,3l-2.17,2.17C12.96,5.06 12.49,5 12,5c-0.49,0 -0.96,0.06 -1.41,0.17L8.41,3 7,4.41l1.62,1.63C7.88,6.55 7.26,7.22 6.81,8L4,8v2h2.09c-0.05,0.33 -0.09,0.66 -0.09,1v1L4,12v2h2v1c0,0.34 0.04,0.67 0.09,1L4,16v2h2.81c1.04,1.79 2.97,3 5.19,3s4.15,-1.21 5.19,-3L20,18v-2h-2.09c0.05,-0.33 0.09,-0.66 0.09,-1v-1h2v-2h-2v-1c0,-0.34 -0.04,-0.67 -0.09,-1L20,10L20,8zM14,16h-4v-2h4v2zM14,12h-4v-2h4v2z"/>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `close`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z" />
+</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `close`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `close`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z" />
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `close`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z" />
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `close`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/black"
- android:pathData="M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z" />
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `close`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M19,6.41L17.59,5 12,10.59 6.41,5 5,6.41 10.59,12 5,17.59 6.41,19 12,13.41 17.59,19 19,17.59 13.41,12z" />
-</vector>
+++ /dev/null
-<!-- This file was created by Google and downloaded from <https://materialdesignicons.com/icon/cookie>. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A9,9 0 0,0 21,12C21,11.5 20.96,11 20.87,10.5C20.6,10 20,10 20,10H18V9C18,8 17,8 17,8H15V7C15,6 14,6 14,6H13V4C13,3 12,3 12,3M9.5,6A1.5,1.5 0 0,1 11,7.5A1.5,1.5 0 0,1 9.5,9A1.5,1.5 0 0,1 8,7.5A1.5,1.5 0 0,1 9.5,6M6.5,10A1.5,1.5 0 0,1 8,11.5A1.5,1.5 0 0,1 6.5,13A1.5,1.5 0 0,1 5,11.5A1.5,1.5 0 0,1 6.5,10M11.5,11A1.5,1.5 0 0,1 13,12.5A1.5,1.5 0 0,1 11.5,14A1.5,1.5 0 0,1 10,12.5A1.5,1.5 0 0,1 11.5,11M16.5,13A1.5,1.5 0 0,1 18,14.5A1.5,1.5 0 0,1 16.5,16H16.5A1.5,1.5 0 0,1 15,14.5H15A1.5,1.5 0 0,1 16.5,13M11,16A1.5,1.5 0 0,1 12.5,17.5A1.5,1.5 0 0,1 11,19A1.5,1.5 0 0,1 9.5,17.5A1.5,1.5 0 0,1 11,16Z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file was created by Google and downloaded from <https://materialdesignicons.com/icon/cookie>. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A9,9 0 0,0 21,12C21,11.5 20.96,11 20.87,10.5C20.6,10 20,10 20,10H18V9C18,8 17,8 17,8H15V7C15,6 14,6 14,6H13V4C13,3 12,3 12,3M9.5,6A1.5,1.5 0 0,1 11,7.5A1.5,1.5 0 0,1 9.5,9A1.5,1.5 0 0,1 8,7.5A1.5,1.5 0 0,1 9.5,6M6.5,10A1.5,1.5 0 0,1 8,11.5A1.5,1.5 0 0,1 6.5,13A1.5,1.5 0 0,1 5,11.5A1.5,1.5 0 0,1 6.5,10M11.5,11A1.5,1.5 0 0,1 13,12.5A1.5,1.5 0 0,1 11.5,14A1.5,1.5 0 0,1 10,12.5A1.5,1.5 0 0,1 11.5,11M16.5,13A1.5,1.5 0 0,1 18,14.5A1.5,1.5 0 0,1 16.5,16H16.5A1.5,1.5 0 0,1 15,14.5H15A1.5,1.5 0 0,1 16.5,13M11,16A1.5,1.5 0 0,1 12.5,17.5A1.5,1.5 0 0,1 11,19A1.5,1.5 0 0,1 9.5,17.5A1.5,1.5 0 0,1 11,16Z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file was created by Google and downloaded from <https://materialdesignicons.com/icon/cookie>. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A9,9 0 0,0 21,12C21,11.5 20.96,11 20.87,10.5C20.6,10 20,10 20,10H18V9C18,8 17,8 17,8H15V7C15,6 14,6 14,6H13V4C13,3 12,3 12,3M9.5,6A1.5,1.5 0 0,1 11,7.5A1.5,1.5 0 0,1 9.5,9A1.5,1.5 0 0,1 8,7.5A1.5,1.5 0 0,1 9.5,6M6.5,10A1.5,1.5 0 0,1 8,11.5A1.5,1.5 0 0,1 6.5,13A1.5,1.5 0 0,1 5,11.5A1.5,1.5 0 0,1 6.5,10M11.5,11A1.5,1.5 0 0,1 13,12.5A1.5,1.5 0 0,1 11.5,14A1.5,1.5 0 0,1 10,12.5A1.5,1.5 0 0,1 11.5,11M16.5,13A1.5,1.5 0 0,1 18,14.5A1.5,1.5 0 0,1 16.5,16H16.5A1.5,1.5 0 0,1 15,14.5H15A1.5,1.5 0 0,1 16.5,13M11,16A1.5,1.5 0 0,1 12.5,17.5A1.5,1.5 0 0,1 11,19A1.5,1.5 0 0,1 9.5,17.5A1.5,1.5 0 0,1 11,16Z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file was created by Google and downloaded from <https://materialdesignicons.com/icon/cookie>. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A9,9 0 0,0 21,12C21,11.5 20.96,11 20.87,10.5C20.6,10 20,10 20,10H18V9C18,8 17,8 17,8H15V7C15,6 14,6 14,6H13V4C13,3 12,3 12,3M9.5,6A1.5,1.5 0 0,1 11,7.5A1.5,1.5 0 0,1 9.5,9A1.5,1.5 0 0,1 8,7.5A1.5,1.5 0 0,1 9.5,6M6.5,10A1.5,1.5 0 0,1 8,11.5A1.5,1.5 0 0,1 6.5,13A1.5,1.5 0 0,1 5,11.5A1.5,1.5 0 0,1 6.5,10M11.5,11A1.5,1.5 0 0,1 13,12.5A1.5,1.5 0 0,1 11.5,14A1.5,1.5 0 0,1 10,12.5A1.5,1.5 0 0,1 11.5,11M16.5,13A1.5,1.5 0 0,1 18,14.5A1.5,1.5 0 0,1 16.5,16H16.5A1.5,1.5 0 0,1 15,14.5H15A1.5,1.5 0 0,1 16.5,13M11,16A1.5,1.5 0 0,1 12.5,17.5A1.5,1.5 0 0,1 11,19A1.5,1.5 0 0,1 9.5,17.5A1.5,1.5 0 0,1 11,16Z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file was created by Google and downloaded from <https://materialdesignicons.com/icon/cookie>. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A9,9 0 0,0 21,12C21,11.5 20.96,11 20.87,10.5C20.6,10 20,10 20,10H18V9C18,8 17,8 17,8H15V7C15,6 14,6 14,6H13V4C13,3 12,3 12,3M9.5,6A1.5,1.5 0 0,1 11,7.5A1.5,1.5 0 0,1 9.5,9A1.5,1.5 0 0,1 8,7.5A1.5,1.5 0 0,1 9.5,6M6.5,10A1.5,1.5 0 0,1 8,11.5A1.5,1.5 0 0,1 6.5,13A1.5,1.5 0 0,1 5,11.5A1.5,1.5 0 0,1 6.5,10M11.5,11A1.5,1.5 0 0,1 13,12.5A1.5,1.5 0 0,1 11.5,14A1.5,1.5 0 0,1 10,12.5A1.5,1.5 0 0,1 11.5,11M16.5,13A1.5,1.5 0 0,1 18,14.5A1.5,1.5 0 0,1 16.5,16H16.5A1.5,1.5 0 0,1 15,14.5H15A1.5,1.5 0 0,1 16.5,13M11,16A1.5,1.5 0 0,1 12.5,17.5A1.5,1.5 0 0,1 11,19A1.5,1.5 0 0,1 9.5,17.5A1.5,1.5 0 0,1 11,16Z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file was created by Google and downloaded from <https://materialdesignicons.com/icon/cookie>. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/red_900"
- android:pathData="M12,3A9,9 0 0,0 3,12A9,9 0 0,0 12,21A9,9 0 0,0 21,12C21,11.5 20.96,11 20.87,10.5C20.6,10 20,10 20,10H18V9C18,8 17,8 17,8H15V7C15,6 14,6 14,6H13V4C13,3 12,3 12,3M9.5,6A1.5,1.5 0 0,1 11,7.5A1.5,1.5 0 0,1 9.5,9A1.5,1.5 0 0,1 8,7.5A1.5,1.5 0 0,1 9.5,6M6.5,10A1.5,1.5 0 0,1 8,11.5A1.5,1.5 0 0,1 6.5,13A1.5,1.5 0 0,1 5,11.5A1.5,1.5 0 0,1 6.5,10M11.5,11A1.5,1.5 0 0,1 13,12.5A1.5,1.5 0 0,1 11.5,14A1.5,1.5 0 0,1 10,12.5A1.5,1.5 0 0,1 11.5,11M16.5,13A1.5,1.5 0 0,1 18,14.5A1.5,1.5 0 0,1 16.5,16H16.5A1.5,1.5 0 0,1 15,14.5H15A1.5,1.5 0 0,1 16.5,13M11,16A1.5,1.5 0 0,1 12.5,17.5A1.5,1.5 0 0,1 11,19A1.5,1.5 0 0,1 9.5,17.5A1.5,1.5 0 0,1 11,16Z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `file_copy`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M16,1L4,1c-1.1,0 -2,0.9 -2,2v14h2L4,3h12L16,1zM15,5l6,6v10c0,1.1 -0.9,2 -2,2L7.99,23C6.89,23 6,22.1 6,21l0.01,-14c0,-1.1 0.89,-2 1.99,-2h7zM14,12h5.5L14,6.5L14,12z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `file_copy`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M16,1L4,1c-1.1,0 -2,0.9 -2,2v14h2L4,3h12L16,1zM15,5l6,6v10c0,1.1 -0.9,2 -2,2L7.99,23C6.89,23 6,22.1 6,21l0.01,-14c0,-1.1 0.89,-2 1.99,-2h7zM14,12h5.5L14,6.5L14,12z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `file_copy`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M16,1L4,1c-1.1,0 -2,0.9 -2,2v14h2L4,3h12L16,1zM15,5l6,6v10c0,1.1 -0.9,2 -2,2L7.99,23C6.89,23 6,22.1 6,21l0.01,-14c0,-1.1 0.89,-2 1.99,-2h7zM14,12h5.5L14,6.5L14,12z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `file_copy`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M16,1L4,1c-1.1,0 -2,0.9 -2,2v14h2L4,3h12L16,1zM15,5l6,6v10c0,1.1 -0.9,2 -2,2L7.99,23C6.89,23 6,22.1 6,21l0.01,-14c0,-1.1 0.89,-2 1.99,-2h7zM14,12h5.5L14,6.5L14,12z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `file_copy`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M16,1L4,1c-1.1,0 -2,0.9 -2,2v14h2L4,3h12L16,1zM15,5l6,6v10c0,1.1 -0.9,2 -2,2L7.99,23C6.89,23 6,22.1 6,21l0.01,-14c0,-1.1 0.89,-2 1.99,-2h7zM14,12h5.5L14,6.5L14,12z"/>
-</vector>
\ No newline at end of file
<path
android:fillColor="@color/white"
android:pathData="M7,3C5.9,3 5.01,3.9 5.01,5L5,21L12,18L19,21L19,5C19,3.9 18.1,3 17,3L7,3zM11,7L13,7L13,10L16,10L16,12L13,12L13,15L11,15L11,12L8,12L8,10L11,10L11,7z" />
-</vector>
+</vector>
\ No newline at end of file
<path
android:fillColor="@color/white"
android:pathData="M4,4C2.89,4 2.01,4.89 2.01,6L2,18C2,19.11 2.89,20 4,20L20,20C21.11,20 22,19.11 22,18L22,8C22,6.89 21.11,6 20,6L12,6L10,4L4,4zM11,9L13,9L13,12L16,12L16,14L13,14L13,17L11,17L11,14L8,14L8,12L11,12L11,9z" />
-</vector>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `important_devices_off`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M23,11.01L18,11c-0.55,0 -1,0.45 -1,1v9c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1v-9c0,-0.55 -0.45,-0.99 -1,-0.99zM23,20h-5v-7h5v7zM20,2L2,2C0.89,2 0,2.89 0,4v12c0,1.1 0.89,2 2,2h7v2L7,20v2h8v-2h-2v-2h2v-2L2,16L2,4h18v5h2L22,4c0,-1.11 -0.9,-2 -2,-2zM11.97,9L11,6l-0.97,3L7,9l2.47,1.76 -0.94,2.91 2.47,-1.8 2.47,1.8 -0.94,-2.91L15,9h-3.03z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `important_devices_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M23,11.01L18,11c-0.55,0 -1,0.45 -1,1v9c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1v-9c0,-0.55 -0.45,-0.99 -1,-0.99zM23,20h-5v-7h5v7zM20,2L2,2C0.89,2 0,2.89 0,4v12c0,1.1 0.89,2 2,2h7v2L7,20v2h8v-2h-2v-2h2v-2L2,16L2,4h18v5h2L22,4c0,-1.11 -0.9,-2 -2,-2zM11.97,9L11,6l-0.97,3L7,9l2.47,1.76 -0.94,2.91 2.47,-1.8 2.47,1.8 -0.94,-2.91L15,9h-3.03z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `important_devices_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M23,11.01L18,11c-0.55,0 -1,0.45 -1,1v9c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1v-9c0,-0.55 -0.45,-0.99 -1,-0.99zM23,20h-5v-7h5v7zM20,2L2,2C0.89,2 0,2.89 0,4v12c0,1.1 0.89,2 2,2h7v2L7,20v2h8v-2h-2v-2h2v-2L2,16L2,4h18v5h2L22,4c0,-1.11 -0.9,-2 -2,-2zM11.97,9L11,6l-0.97,3L7,9l2.47,1.76 -0.94,2.91 2.47,-1.8 2.47,1.8 -0.94,-2.91L15,9h-3.03z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `important_devices_off`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/ghosted_icon"
+ android:pathData="M23,11.01L18,11c-0.55,0 -1,0.45 -1,1v9c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1v-9c0,-0.55 -0.45,-0.99 -1,-0.99zM23,20h-5v-7h5v7zM20,2L2,2C0.89,2 0,2.89 0,4v12c0,1.1 0.89,2 2,2h7v2L7,20v2h8v-2h-2v-2h2v-2L2,16L2,4h18v5h2L22,4c0,-1.11 -0.9,-2 -2,-2zM11.97,9L11,6l-0.97,3L7,9l2.47,1.76 -0.94,2.91 2.47,-1.8 2.47,1.8 -0.94,-2.91L15,9h-3.03z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `important_devices_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_425"
- android:pathData="M23,11.01L18,11c-0.55,0 -1,0.45 -1,1v9c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1v-9c0,-0.55 -0.45,-0.99 -1,-0.99zM23,20h-5v-7h5v7zM20,2L2,2C0.89,2 0,2.89 0,4v12c0,1.1 0.89,2 2,2h7v2L7,20v2h8v-2h-2v-2h2v-2L2,16L2,4h18v5h2L22,4c0,-1.11 -0.9,-2 -2,-2zM11.97,9L11,6l-0.97,3L7,9l2.47,1.76 -0.94,2.91 2.47,-1.8 2.47,1.8 -0.94,-2.91L15,9h-3.03z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `important_devices_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_700"
- android:pathData="M23,11.01L18,11c-0.55,0 -1,0.45 -1,1v9c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1v-9c0,-0.55 -0.45,-0.99 -1,-0.99zM23,20h-5v-7h5v7zM20,2L2,2C0.89,2 0,2.89 0,4v12c0,1.1 0.89,2 2,2h7v2L7,20v2h8v-2h-2v-2h2v-2L2,16L2,4h18v5h2L22,4c0,-1.11 -0.9,-2 -2,-2zM11.97,9L11,6l-0.97,3L7,9l2.47,1.76 -0.94,2.91 2.47,-1.8 2.47,1.8 -0.94,-2.91L15,9h-3.03z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `delete`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `delete`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `delete`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
+</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/ghosted_icon"
+ android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
+</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_425"
- android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_700"
- android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `web`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/red_900"
- android:pathData="M20,4L4,4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM15,18L4,18v-4h11v4zM15,13L4,13L4,9h11v4zM20,18h-4L16,9h4v9z"/>
-</vector>
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+
+<!--
+ Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser Android is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser Android is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
+
+<shape
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:shape="rectangle" >
+ <solid
+ android:color="@color/domain_settings_url_background" />
+
+ <corners
+ android:radius="10dp" />
+</shape>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `import_contacts`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M20,13H4c-0.55,0 -1,0.45 -1,1v6c0,0.55 0.45,1 1,1h16c0.55,0 1,-0.45 1,-1v-6c0,-0.55 -0.45,-1 -1,-1zM7,19c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2zM20,3H4c-0.55,0 -1,0.45 -1,1v6c0,0.55 0.45,1 1,1h16c0.55,0 1,-0.45 1,-1V4c0,-0.55 -0.45,-1 -1,-1zM7,9c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `import_contacts`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M20,13H4c-0.55,0 -1,0.45 -1,1v6c0,0.55 0.45,1 1,1h16c0.55,0 1,-0.45 1,-1v-6c0,-0.55 -0.45,-1 -1,-1zM7,19c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2zM20,3H4c-0.55,0 -1,0.45 -1,1v6c0,0.55 0.45,1 1,1h16c0.55,0 1,-0.45 1,-1V4c0,-0.55 -0.45,-1 -1,-1zM7,9c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2z" />
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `import_contacts`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M20,13H4c-0.55,0 -1,0.45 -1,1v6c0,0.55 0.45,1 1,1h16c0.55,0 1,-0.45 1,-1v-6c0,-0.55 -0.45,-1 -1,-1zM7,19c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2zM20,3H4c-0.55,0 -1,0.45 -1,1v6c0,0.55 0.45,1 1,1h16c0.55,0 1,-0.45 1,-1V4c0,-0.55 -0.45,-1 -1,-1zM7,9c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2z" />
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `file_download`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M19,9h-4V3H9v6H5l7,7 7,-7zM5,18v2h14v-2H5z" />
+</vector>
\ No newline at end of file
--- /dev/null
+<!--
+ Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is derived from `exit_to_app`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
+
+ This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser Android is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser Android is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M2.096,3.377H15.51c1.064,0 1.916,0.862 1.916,1.916V9.126H15.51V5.293H2.096V18.707H15.51v-3.833h1.916v3.833c0,1.054 -0.853,1.916 -1.916,1.916H2.096c-1.054,0 -1.916,-0.862 -1.916,-1.916V5.293c0,-1.054 0.862,-1.916 1.916,-1.916z" />
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="m17.845,15.44 l1.351,1.351 4.791,-4.791 -4.791,-4.791 -1.351,1.351 2.472,2.482H8.096v1.916H20.317Z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `exit_to_app`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M2.096,3.377H15.51c1.064,0 1.916,0.862 1.916,1.916V9.126H15.51V5.293H2.096V18.707H15.51v-3.833h1.916v3.833c0,1.054 -0.853,1.916 -1.916,1.916H2.096c-1.054,0 -1.916,-0.862 -1.916,-1.916V5.293c0,-1.054 0.862,-1.916 1.916,-1.916z" />
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="m17.845,15.44 l1.351,1.351 4.791,-4.791 -4.791,-4.791 -1.351,1.351 2.472,2.482H8.096v1.916H20.317Z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `exit_to_app`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M2.096,3.377H15.51c1.064,0 1.916,0.862 1.916,1.916V9.126H15.51V5.293H2.096V18.707H15.51v-3.833h1.916v3.833c0,1.054 -0.853,1.916 -1.916,1.916H2.096c-1.054,0 -1.916,-0.862 -1.916,-1.916V5.293c0,-1.054 0.862,-1.916 1.916,-1.916z" />
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="m17.845,15.44 l1.351,1.351 4.791,-4.791 -4.791,-4.791 -1.351,1.351 2.472,2.482H8.096v1.916H20.317Z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!--
+ Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is derived from `exit_to_app`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
+
+ This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser Android is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser Android is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M2.096,3.377H15.51c1.064,0 1.916,0.862 1.916,1.916V9.126H15.51V5.293H2.096V18.707H15.51v-3.833h1.916v3.833c0,1.054 -0.853,1.916 -1.916,1.916H2.096c-1.054,0 -1.916,-0.862 -1.916,-1.916V5.293c0,-1.054 0.862,-1.916 1.916,-1.916z" />
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="m17.845,15.44 l1.351,1.351 4.791,-4.791 -4.791,-4.791 -1.351,1.351 2.472,2.482H8.096v1.916H20.317Z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `exit_to_app`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M2.096,3.377H15.51c1.064,0 1.916,0.862 1.916,1.916V9.126H15.51V5.293H2.096V18.707H15.51v-3.833h1.916v3.833c0,1.054 -0.853,1.916 -1.916,1.916H2.096c-1.054,0 -1.916,-0.862 -1.916,-1.916V5.293c0,-1.054 0.862,-1.916 1.916,-1.916z" />
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="m17.845,15.44 l1.351,1.351 4.791,-4.791 -4.791,-4.791 -1.351,1.351 2.472,2.482H8.096v1.916H20.317Z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `exit_to_app`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M2.096,3.377H15.51c1.064,0 1.916,0.862 1.916,1.916V9.126H15.51V5.293H2.096V18.707H15.51v-3.833h1.916v3.833c0,1.054 -0.853,1.916 -1.916,1.916H2.096c-1.054,0 -1.916,-0.862 -1.916,-1.916V5.293c0,-1.054 0.862,-1.916 1.916,-1.916z" />
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="m17.845,15.44 l1.351,1.351 4.791,-4.791 -4.791,-4.791 -1.351,1.351 2.472,2.482H8.096v1.916H20.317Z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `file_download`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M19,9h-4V3H9v6H5l7,7 7,-7zM5,18v2h14v-2H5z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `file_download`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M19,9h-4V3H9v6H5l7,7 7,-7zM5,18v2h14v-2H5z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `edit`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M3,17.25V21h3.75L17.81,9.94l-3.75,-3.75L3,17.25zM20.71,7.04c0.39,-0.39 0.39,-1.02 0,-1.41l-2.34,-2.34c-0.39,-0.39 -1.02,-0.39 -1.41,0l-1.83,1.83 3.75,3.75 1.83,-1.83z"/>
+</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `edit`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M3,17.25V21h3.75L17.81,9.94l-3.75,-3.75L3,17.25zM20.71,7.04c0.39,-0.39 0.39,-1.02 0,-1.41l-2.34,-2.34c-0.39,-0.39 -1.02,-0.39 -1.41,0l-1.83,1.83 3.75,3.75 1.83,-1.83z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `edit`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M3,17.25V21h3.75L17.81,9.94l-3.75,-3.75L3,17.25zM20.71,7.04c0.39,-0.39 0.39,-1.02 0,-1.41l-2.34,-2.34c-0.39,-0.39 -1.02,-0.39 -1.41,0l-1.83,1.83 3.75,3.75 1.83,-1.83z"/>
-</vector>
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `text_fields`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M2.5,4v3h5v12h3L10.5,7h5L15.5,4h-13zM21.5,9h-9v3h3v7h3v-7h3L21.5,9z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `text_fields`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M2.5,4v3h5v12h3L10.5,7h5L15.5,4h-13zM21.5,9h-9v3h3v7h3v-7h3L21.5,9z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `text_fields`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M2.5,4v3h5v12h3L10.5,7h5L15.5,4h-13zM21.5,9h-9v3h3v7h3v-7h3L21.5,9z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `subtitles`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M20,4L4,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM4,12h4v2L4,14v-2zM14,18L4,18v-2h10v2zM20,18h-4v-2h4v2zM20,14L10,14v-2h10v2z"/>
-</vector>
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `subtitles`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M20,4L4,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM4,12h4v2L4,14v-2zM14,18L4,18v-2h10v2zM20,18h-4v-2h4v2zM20,14L10,14v-2h10v2z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `subtitles`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="26dp"
+ android:width="26dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M20,4L4,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM4,12h4v2L4,14v-2zM14,18L4,18v-2h10v2zM20,18h-4v-2h4v2zM20,14L10,14v-2h10v2z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `subtitles`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M20,4L4,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM4,12h4v2L4,14v-2zM14,18L4,18v-2h10v2zM20,18h-4v-2h4v2zM20,14L10,14v-2h10v2z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `subtitles`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M20,4L4,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM4,12h4v2L4,14v-2zM14,18L4,18v-2h10v2zM20,18h-4v-2h4v2zM20,14L10,14v-2h10v2z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `subtitles`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="26dp"
- android:width="26dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/red_900"
- android:pathData="M20,4L4,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2L22,6c0,-1.1 -0.9,-2 -2,-2zM4,12h4v2L4,14v-2zM14,18L4,18v-2h10v2zM20,18h-4v-2h4v2zM20,14L10,14v-2h10v2z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `smartphone`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M17,1.01L7,1c-1.1,0 -2,0.9 -2,2v18c0,1.1 0.9,2 2,2h10c1.1,0 2,-0.9 2,-2V3c0,-1.1 -0.9,-1.99 -2,-1.99zM17,19H7V5h10v14z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `smartphone`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M17,1.01L7,1c-1.1,0 -2,0.9 -2,2v18c0,1.1 0.9,2 2,2h10c1.1,0 2,-0.9 2,-2V3c0,-1.1 -0.9,-1.99 -2,-1.99zM17,19H7V5h10v14z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `smartphone`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M17,1.01L7,1c-1.1,0 -2,0.9 -2,2v18c0,1.1 0.9,2 2,2h10c1.1,0 2,-0.9 2,-2V3c0,-1.1 -0.9,-1.99 -2,-1.99zM17,19H7V5h10v14z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `smartphone`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M17,1.01L7,1c-1.1,0 -2,0.9 -2,2v18c0,1.1 0.9,2 2,2h10c1.1,0 2,-0.9 2,-2V3c0,-1.1 -0.9,-1.99 -2,-1.99zM17,19H7V5h10v14z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `smartphone`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M17,1.01L7,1c-1.1,0 -2,0.9 -2,2v18c0,1.1 0.9,2 2,2h10c1.1,0 2,-0.9 2,-2V3c0,-1.1 -0.9,-1.99 -2,-1.99zM17,19H7V5h10v14z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `smartphone`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M17,1.01L7,1c-1.1,0 -2,0.9 -2,2v18c0,1.1 0.9,2 2,2h10c1.1,0 2,-0.9 2,-2V3c0,-1.1 -0.9,-1.99 -2,-1.99zM17,19H7V5h10v14z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `home`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M10,20v-6h4v6h5v-8h3L12,3 2,12h3v8z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `home`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M10,20v-6h4v6h5v-8h3L12,3 2,12h3v8z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `home`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M10,20v-6h4v6h5v-8h3L12,3 2,12h3v8z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M21,19V5c0,-1.1 -0.9,-2 -2,-2H5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2zM8.5,13.5l2.5,3.01L14.5,12l4.5,6H5l3.5,-4.5z" />
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M21,19V5c0,-1.1 -0.9,-2 -2,-2H5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2zM8.5,13.5l2.5,3.01L14.5,12l4.5,6H5l3.5,-4.5z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M21,19V5c0,-1.1 -0.9,-2 -2,-2H5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2zM8.5,13.5l2.5,3.01L14.5,12l4.5,6H5l3.5,-4.5z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M21,19V5c0,-1.1 -0.9,-2 -2,-2H5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2zM8.5,13.5l2.5,3.01L14.5,12l4.5,6H5l3.5,-4.5z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M21,19V5c0,-1.1 -0.9,-2 -2,-2H5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2zM8.5,13.5l2.5,3.01L14.5,12l4.5,6H5l3.5,-4.5z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M21,19V5c0,-1.1 -0.9,-2 -2,-2H5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2zM8.5,13.5l2.5,3.01L14.5,12l4.5,6H5l3.5,-4.5z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M21,19V5c0,-1.1 -0.9,-2 -2,-2H5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2zM8.5,13.5l2.5,3.01L14.5,12l4.5,6H5l3.5,-4.5z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M21,19V5c0,-1.1 -0.9,-2 -2,-2H5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2zM8.5,13.5l2.5,3.01L14.5,12l4.5,6H5l3.5,-4.5z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M21,19V5c0,-1.1 -0.9,-2 -2,-2H5c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h14c1.1,0 2,-0.9 2,-2zM8.5,13.5l2.5,3.01L14.5,12l4.5,6H5l3.5,-4.5z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `visibility_off`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M12,7c2.76,0 5,2.24 5,5 0,0.65 -0.13,1.26 -0.36,1.83l2.92,2.92c1.51,-1.26 2.7,-2.89 3.43,-4.75 -1.73,-4.39 -6,-7.5 -11,-7.5 -1.4,0 -2.74,0.25 -3.98,0.7l2.16,2.16C10.74,7.13 11.35,7 12,7zM2,4.27l2.28,2.28 0.46,0.46C3.08,8.3 1.78,10.02 1,12c1.73,4.39 6,7.5 11,7.5 1.55,0 3.03,-0.3 4.38,-0.84l0.42,0.42L19.73,22 21,20.73 3.27,3 2,4.27zM7.53,9.8l1.55,1.55c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.66 1.34,3 3,3 0.22,0 0.44,-0.03 0.65,-0.08l1.55,1.55c-0.67,0.33 -1.41,0.53 -2.2,0.53 -2.76,0 -5,-2.24 -5,-5 0,-0.79 0.2,-1.53 0.53,-2.2zM11.84,9.02l3.15,3.15 0.02,-0.16c0,-1.66 -1.34,-3 -3,-3l-0.17,0.01z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `visibility_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M12,7c2.76,0 5,2.24 5,5 0,0.65 -0.13,1.26 -0.36,1.83l2.92,2.92c1.51,-1.26 2.7,-2.89 3.43,-4.75 -1.73,-4.39 -6,-7.5 -11,-7.5 -1.4,0 -2.74,0.25 -3.98,0.7l2.16,2.16C10.74,7.13 11.35,7 12,7zM2,4.27l2.28,2.28 0.46,0.46C3.08,8.3 1.78,10.02 1,12c1.73,4.39 6,7.5 11,7.5 1.55,0 3.03,-0.3 4.38,-0.84l0.42,0.42L19.73,22 21,20.73 3.27,3 2,4.27zM7.53,9.8l1.55,1.55c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.66 1.34,3 3,3 0.22,0 0.44,-0.03 0.65,-0.08l1.55,1.55c-0.67,0.33 -1.41,0.53 -2.2,0.53 -2.76,0 -5,-2.24 -5,-5 0,-0.79 0.2,-1.53 0.53,-2.2zM11.84,9.02l3.15,3.15 0.02,-0.16c0,-1.66 -1.34,-3 -3,-3l-0.17,0.01z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `visibility_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M12,7c2.76,0 5,2.24 5,5 0,0.65 -0.13,1.26 -0.36,1.83l2.92,2.92c1.51,-1.26 2.7,-2.89 3.43,-4.75 -1.73,-4.39 -6,-7.5 -11,-7.5 -1.4,0 -2.74,0.25 -3.98,0.7l2.16,2.16C10.74,7.13 11.35,7 12,7zM2,4.27l2.28,2.28 0.46,0.46C3.08,8.3 1.78,10.02 1,12c1.73,4.39 6,7.5 11,7.5 1.55,0 3.03,-0.3 4.38,-0.84l0.42,0.42L19.73,22 21,20.73 3.27,3 2,4.27zM7.53,9.8l1.55,1.55c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.66 1.34,3 3,3 0.22,0 0.44,-0.03 0.65,-0.08l1.55,1.55c-0.67,0.33 -1.41,0.53 -2.2,0.53 -2.76,0 -5,-2.24 -5,-5 0,-0.79 0.2,-1.53 0.53,-2.2zM11.84,9.02l3.15,3.15 0.02,-0.16c0,-1.66 -1.34,-3 -3,-3l-0.17,0.01z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `visibility_off`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M12,7c2.76,0 5,2.24 5,5 0,0.65 -0.13,1.26 -0.36,1.83l2.92,2.92c1.51,-1.26 2.7,-2.89 3.43,-4.75 -1.73,-4.39 -6,-7.5 -11,-7.5 -1.4,0 -2.74,0.25 -3.98,0.7l2.16,2.16C10.74,7.13 11.35,7 12,7zM2,4.27l2.28,2.28 0.46,0.46C3.08,8.3 1.78,10.02 1,12c1.73,4.39 6,7.5 11,7.5 1.55,0 3.03,-0.3 4.38,-0.84l0.42,0.42L19.73,22 21,20.73 3.27,3 2,4.27zM7.53,9.8l1.55,1.55c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.66 1.34,3 3,3 0.22,0 0.44,-0.03 0.65,-0.08l1.55,1.55c-0.67,0.33 -1.41,0.53 -2.2,0.53 -2.76,0 -5,-2.24 -5,-5 0,-0.79 0.2,-1.53 0.53,-2.2zM11.84,9.02l3.15,3.15 0.02,-0.16c0,-1.66 -1.34,-3 -3,-3l-0.17,0.01z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `visibility_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M12,7c2.76,0 5,2.24 5,5 0,0.65 -0.13,1.26 -0.36,1.83l2.92,2.92c1.51,-1.26 2.7,-2.89 3.43,-4.75 -1.73,-4.39 -6,-7.5 -11,-7.5 -1.4,0 -2.74,0.25 -3.98,0.7l2.16,2.16C10.74,7.13 11.35,7 12,7zM2,4.27l2.28,2.28 0.46,0.46C3.08,8.3 1.78,10.02 1,12c1.73,4.39 6,7.5 11,7.5 1.55,0 3.03,-0.3 4.38,-0.84l0.42,0.42L19.73,22 21,20.73 3.27,3 2,4.27zM7.53,9.8l1.55,1.55c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.66 1.34,3 3,3 0.22,0 0.44,-0.03 0.65,-0.08l1.55,1.55c-0.67,0.33 -1.41,0.53 -2.2,0.53 -2.76,0 -5,-2.24 -5,-5 0,-0.79 0.2,-1.53 0.53,-2.2zM11.84,9.02l3.15,3.15 0.02,-0.16c0,-1.66 -1.34,-3 -3,-3l-0.17,0.01z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `visibility_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M12,7c2.76,0 5,2.24 5,5 0,0.65 -0.13,1.26 -0.36,1.83l2.92,2.92c1.51,-1.26 2.7,-2.89 3.43,-4.75 -1.73,-4.39 -6,-7.5 -11,-7.5 -1.4,0 -2.74,0.25 -3.98,0.7l2.16,2.16C10.74,7.13 11.35,7 12,7zM2,4.27l2.28,2.28 0.46,0.46C3.08,8.3 1.78,10.02 1,12c1.73,4.39 6,7.5 11,7.5 1.55,0 3.03,-0.3 4.38,-0.84l0.42,0.42L19.73,22 21,20.73 3.27,3 2,4.27zM7.53,9.8l1.55,1.55c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.66 1.34,3 3,3 0.22,0 0.44,-0.03 0.65,-0.08l1.55,1.55c-0.67,0.33 -1.41,0.53 -2.2,0.53 -2.76,0 -5,-2.24 -5,-5 0,-0.79 0.2,-1.53 0.53,-2.2zM11.84,9.02l3.15,3.15 0.02,-0.16c0,-1.66 -1.34,-3 -3,-3l-0.17,0.01z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `lock`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M18,8h-1L17,6c0,-2.76 -2.24,-5 -5,-5S7,3.24 7,6v2L6,8c-1.1,0 -2,0.9 -2,2v10c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L20,10c0,-1.1 -0.9,-2 -2,-2zM12,17c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2zM15.1,8L8.9,8L8.9,6c0,-1.71 1.39,-3.1 3.1,-3.1 1.71,0 3.1,1.39 3.1,3.1v2z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `lock`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M18,8h-1L17,6c0,-2.76 -2.24,-5 -5,-5S7,3.24 7,6v2L6,8c-1.1,0 -2,0.9 -2,2v10c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L20,10c0,-1.1 -0.9,-2 -2,-2zM12,17c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2zM15.1,8L8.9,8L8.9,6c0,-1.71 1.39,-3.1 3.1,-3.1 1.71,0 3.1,1.39 3.1,3.1v2z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `lock`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M18,8h-1L17,6c0,-2.76 -2.24,-5 -5,-5S7,3.24 7,6v2L6,8c-1.1,0 -2,0.9 -2,2v10c0,1.1 0.9,2 2,2h12c1.1,0 2,-0.9 2,-2L20,10c0,-1.1 -0.9,-2 -2,-2zM12,17c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2zM15.1,8L8.9,8L8.9,6c0,-1.71 1.39,-3.1 3.1,-3.1 1.71,0 3.1,1.39 3.1,3.1v2z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `link_off`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M17,7h-4v1.9h4c1.71,0 3.1,1.39 3.1,3.1 0,1.43 -0.98,2.63 -2.31,2.98l1.46,1.46C20.88,15.61 22,13.95 22,12c0,-2.76 -2.24,-5 -5,-5zM16,11h-2.19l2,2L16,13zM2,4.27l3.11,3.11C3.29,8.12 2,9.91 2,12c0,2.76 2.24,5 5,5h4v-1.9L7,15.1c-1.71,0 -3.1,-1.39 -3.1,-3.1 0,-1.59 1.21,-2.9 2.76,-3.07L8.73,11L8,11v2h2.73L13,15.27L13,17h1.73l4.01,4L20,19.74 3.27,3 2,4.27z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `link_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M17,7h-4v1.9h4c1.71,0 3.1,1.39 3.1,3.1 0,1.43 -0.98,2.63 -2.31,2.98l1.46,1.46C20.88,15.61 22,13.95 22,12c0,-2.76 -2.24,-5 -5,-5zM16,11h-2.19l2,2L16,13zM2,4.27l3.11,3.11C3.29,8.12 2,9.91 2,12c0,2.76 2.24,5 5,5h4v-1.9L7,15.1c-1.71,0 -3.1,-1.39 -3.1,-3.1 0,-1.59 1.21,-2.9 2.76,-3.07L8.73,11L8,11v2h2.73L13,15.27L13,17h1.73l4.01,4L20,19.74 3.27,3 2,4.27z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `link_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M17,7h-4v1.9h4c1.71,0 3.1,1.39 3.1,3.1 0,1.43 -0.98,2.63 -2.31,2.98l1.46,1.46C20.88,15.61 22,13.95 22,12c0,-2.76 -2.24,-5 -5,-5zM16,11h-2.19l2,2L16,13zM2,4.27l3.11,3.11C3.29,8.12 2,9.91 2,12c0,2.76 2.24,5 5,5h4v-1.9L7,15.1c-1.71,0 -3.1,-1.39 -3.1,-3.1 0,-1.59 1.21,-2.9 2.76,-3.07L8.73,11L8,11v2h2.73L13,15.27L13,17h1.73l4.01,4L20,19.74 3.27,3 2,4.27z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `link_off`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M17,7h-4v1.9h4c1.71,0 3.1,1.39 3.1,3.1 0,1.43 -0.98,2.63 -2.31,2.98l1.46,1.46C20.88,15.61 22,13.95 22,12c0,-2.76 -2.24,-5 -5,-5zM16,11h-2.19l2,2L16,13zM2,4.27l3.11,3.11C3.29,8.12 2,9.91 2,12c0,2.76 2.24,5 5,5h4v-1.9L7,15.1c-1.71,0 -3.1,-1.39 -3.1,-3.1 0,-1.59 1.21,-2.9 2.76,-3.07L8.73,11L8,11v2h2.73L13,15.27L13,17h1.73l4.01,4L20,19.74 3.27,3 2,4.27z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `link_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M17,7h-4v1.9h4c1.71,0 3.1,1.39 3.1,3.1 0,1.43 -0.98,2.63 -2.31,2.98l1.46,1.46C20.88,15.61 22,13.95 22,12c0,-2.76 -2.24,-5 -5,-5zM16,11h-2.19l2,2L16,13zM2,4.27l3.11,3.11C3.29,8.12 2,9.91 2,12c0,2.76 2.24,5 5,5h4v-1.9L7,15.1c-1.71,0 -3.1,-1.39 -3.1,-3.1 0,-1.59 1.21,-2.9 2.76,-3.07L8.73,11L8,11v2h2.73L13,15.27L13,17h1.73l4.01,4L20,19.74 3.27,3 2,4.27z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `link_off`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M17,7h-4v1.9h4c1.71,0 3.1,1.39 3.1,3.1 0,1.43 -0.98,2.63 -2.31,2.98l1.46,1.46C20.88,15.61 22,13.95 22,12c0,-2.76 -2.24,-5 -5,-5zM16,11h-2.19l2,2L16,13zM2,4.27l3.11,3.11C3.29,8.12 2,9.91 2,12c0,2.76 2.24,5 5,5h4v-1.9L7,15.1c-1.71,0 -3.1,-1.39 -3.1,-3.1 0,-1.59 1.21,-2.9 2.76,-3.07L8.73,11L8,11v2h2.73L13,15.27L13,17h1.73l4.01,4L20,19.74 3.27,3 2,4.27z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `more`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M22,3L7,3c-0.69,0 -1.23,0.35 -1.59,0.88L0,12l5.41,8.11c0.36,0.53 0.97,0.89 1.66,0.89L22,21c1.1,0 2,-0.9 2,-2L24,5c0,-1.1 -0.9,-2 -2,-2zM9,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM14,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM19,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `more`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M22,3L7,3c-0.69,0 -1.23,0.35 -1.59,0.88L0,12l5.41,8.11c0.36,0.53 0.97,0.89 1.66,0.89L22,21c1.1,0 2,-0.9 2,-2L24,5c0,-1.1 -0.9,-2 -2,-2zM9,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM14,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM19,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `more`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M22,3L7,3c-0.69,0 -1.23,0.35 -1.59,0.88L0,12l5.41,8.11c0.36,0.53 0.97,0.89 1.66,0.89L22,21c1.1,0 2,-0.9 2,-2L24,5c0,-1.1 -0.9,-2 -2,-2zM9,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM14,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM19,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `more`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:width="24dp"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M22,3L7,3c-0.69,0 -1.23,0.35 -1.59,0.88L0,12l5.41,8.11c0.36,0.53 0.97,0.89 1.66,0.89L22,21c1.1,0 2,-0.9 2,-2L24,5c0,-1.1 -0.9,-2 -2,-2zM9,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM14,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM19,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `more`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:width="24dp"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M22,3L7,3c-0.69,0 -1.23,0.35 -1.59,0.88L0,12l5.41,8.11c0.36,0.53 0.97,0.89 1.66,0.89L22,21c1.1,0 2,-0.9 2,-2L24,5c0,-1.1 -0.9,-2 -2,-2zM9,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM14,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM19,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `more`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:width="24dp"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M22,3L7,3c-0.69,0 -1.23,0.35 -1.59,0.88L0,12l5.41,8.11c0.36,0.53 0.97,0.89 1.66,0.89L22,21c1.1,0 2,-0.9 2,-2L24,5c0,-1.1 -0.9,-2 -2,-2zM9,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM14,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM19,13.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `vertical_align_bottom`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M16,13h-3V3h-2v10H8l4,4 4,-4zM4,19v2h16v-2H4z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `vertical_align_bottom`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M16,13h-3V3h-2v10H8l4,4 4,-4zM4,19v2h16v-2H4z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `vertical_align_bottom`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M16,13h-3V3h-2v10H8l4,4 4,-4zM4,19v2h16v-2H4z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!--
+ Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is derived from elements of `folder` and `exit_to_app`, which are part of the Android Material icon set. They are released under the Apache License 2.0.
+
+ This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser Android is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser Android is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M4,4C2.9,4 2.01,4.9 2.01,6L2,18C2,19.1 2.9,20 4,20L20,20C21.1,20 22,19.1 22,18L22,8C22,6.9 21.1,6 20,6L12,6L10,4L4,4zM13.75,7.83L18.75,12.83L13.75,17.83L12.34,16.421L14.92,13.83L5.25,13.83L5.25,11.83L14.92,11.83L12.34,9.24L13.75,7.83z" />
+</vector>
\ No newline at end of file
--- /dev/null
+<!--
+ Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is derived from elements of `folder` and `exit_to_app`, which are part of the Android Material icon set. They are released under the Apache License 2.0.
+
+ This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser Android is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser Android is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M4,4C2.9,4 2.01,4.9 2.01,6L2,18C2,19.1 2.9,20 4,20L20,20C21.1,20 22,19.1 22,18L22,8C22,6.9 21.1,6 20,6L12,6L10,4L4,4zM13.75,7.83L18.75,12.83L13.75,17.83L12.34,16.421L14.92,13.83L5.25,13.83L5.25,11.83L14.92,11.83L12.34,9.24L13.75,7.83z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from elements of `folder` and `exit_to_app`, which are part of the Android Material icon set. They are released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M4,4C2.9,4 2.01,4.9 2.01,6L2,18C2,19.1 2.9,20 4,20L20,20C21.1,20 22,19.1 22,18L22,8C22,6.9 21.1,6 20,6L12,6L10,4L4,4zM13.75,7.83L18.75,12.83L13.75,17.83L12.34,16.421L14.92,13.83L5.25,13.83L5.25,11.83L14.92,11.83L12.34,9.24L13.75,7.83z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from elements of `folder` and `exit_to_app`, which are part of the Android Material icon set. They are released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M4,4C2.9,4 2.01,4.9 2.01,6L2,18C2,19.1 2.9,20 4,20L20,20C21.1,20 22,19.1 22,18L22,8C22,6.9 21.1,6 20,6L12,6L10,4L4,4zM13.75,7.83L18.75,12.83L13.75,17.83L12.34,16.421L14.92,13.83L5.25,13.83L5.25,11.83L14.92,11.83L12.34,9.24L13.75,7.83z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from elements of `folder` and `exit_to_app`, which are part of the Android Material icon set. They are released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M4,4C2.9,4 2.01,4.9 2.01,6L2,18C2,19.1 2.9,20 4,20L20,20C21.1,20 22,19.1 22,18L22,8C22,6.9 21.1,6 20,6L12,6L10,4L4,4zM13.75,7.83L18.75,12.83L13.75,17.83L12.34,16.421L14.92,13.83L5.25,13.83L5.25,11.83L14.92,11.83L12.34,9.24L13.75,7.83z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from elements of `folder` and `exit_to_app`, which are part of the Android Material icon set. They are released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M4,4C2.9,4 2.01,4.9 2.01,6L2,18C2,19.1 2.9,20 4,20L20,20C21.1,20 22,19.1 22,18L22,8C22,6.9 21.1,6 20,6L12,6L10,4L4,4zM13.75,7.83L18.75,12.83L13.75,17.83L12.34,16.421L14.92,13.83L5.25,13.83L5.25,11.83L14.92,11.83L12.34,9.24L13.75,7.83z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `vertical_align_top`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M8,11h3v10h2V11h3l-4,-4 -4,4zM4,3v2h16V3H4z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `vertical_align_top`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M8,11h3v10h2V11h3l-4,-4 -4,4zM4,3v2h16V3H4z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `vertical_align_top`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M8,11h3v10h2V11h3l-4,-4 -4,4zM4,3v2h16V3H4z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `open_in_browser`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M19,4L5,4c-1.11,0 -2,0.9 -2,2v12c0,1.1 0.89,2 2,2h4v-2L5,18L5,8h14v10h-4v2h4c1.1,0 2,-0.9 2,-2L21,6c0,-1.1 -0.89,-2 -2,-2zM12,10l-4,4h3v6h2v-6h3l-4,-4z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `open_in_browser`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M19,4L5,4c-1.11,0 -2,0.9 -2,2v12c0,1.1 0.89,2 2,2h4v-2L5,18L5,8h14v10h-4v2h4c1.1,0 2,-0.9 2,-2L21,6c0,-1.1 -0.89,-2 -2,-2zM12,10l-4,4h3v6h2v-6h3l-4,-4z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `open_in_browser`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M19,4L5,4c-1.11,0 -2,0.9 -2,2v12c0,1.1 0.89,2 2,2h4v-2L5,18L5,8h14v10h-4v2h4c1.1,0 2,-0.9 2,-2L21,6c0,-1.1 -0.89,-2 -2,-2zM12,10l-4,4h3v6h2v-6h3l-4,-4z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `open_in_browser`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M19,4L5,4c-1.11,0 -2,0.9 -2,2v12c0,1.1 0.89,2 2,2h4v-2L5,18L5,8h14v10h-4v2h4c1.1,0 2,-0.9 2,-2L21,6c0,-1.1 -0.89,-2 -2,-2zM12,10l-4,4h3v6h2v-6h3l-4,-4z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `open_in_browser`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_700"
- android:pathData="M19,4L5,4c-1.11,0 -2,0.9 -2,2v12c0,1.1 0.89,2 2,2h4v-2L5,18L5,8h14v10h-4v2h4c1.1,0 2,-0.9 2,-2L21,6c0,-1.1 -0.89,-2 -2,-2zM12,10l-4,4h3v6h2v-6h3l-4,-4z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `open_in_browser`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M19,4L5,4c-1.11,0 -2,0.9 -2,2v12c0,1.1 0.89,2 2,2h4v-2L5,18L5,8h14v10h-4v2h4c1.1,0 2,-0.9 2,-2L21,6c0,-1.1 -0.89,-2 -2,-2zM12,10l-4,4h3v6h2v-6h3l-4,-4z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `open_in_browser`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/ghosted_icon"
+ android:pathData="M19,4L5,4c-1.11,0 -2,0.9 -2,2v12c0,1.1 0.89,2 2,2h4v-2L5,18L5,8h14v10h-4v2h4c1.1,0 2,-0.9 2,-2L21,6c0,-1.1 -0.89,-2 -2,-2zM12,10l-4,4h3v6h2v-6h3l-4,-4z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `open_in_browser`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_425"
- android:pathData="M19,4L5,4c-1.11,0 -2,0.9 -2,2v12c0,1.1 0.89,2 2,2h4v-2L5,18L5,8h14v10h-4v2h4c1.1,0 2,-0.9 2,-2L21,6c0,-1.1 -0.89,-2 -2,-2zM12,10l-4,4h3v6h2v-6h3l-4,-4z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `open_in_browser`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_700"
- android:pathData="M19,4L5,4c-1.11,0 -2,0.9 -2,2v12c0,1.1 0.89,2 2,2h4v-2L5,18L5,8h14v10h-4v2h4c1.1,0 2,-0.9 2,-2L21,6c0,-1.1 -0.89,-2 -2,-2zM12,10l-4,4h3v6h2v-6h3l-4,-4z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `refresh`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M17.65,6.35C16.2,4.9 14.21,4 12,4c-4.42,0 -7.99,3.58 -7.99,8s3.57,8 7.99,8c3.73,0 6.84,-2.55 7.73,-6h-2.08c-0.82,2.33 -3.04,4 -5.65,4 -3.31,0 -6,-2.69 -6,-6s2.69,-6 6,-6c1.66,0 3.14,0.69 4.22,1.78L13,11h7V4l-2.35,2.35z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `refresh`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M17.65,6.35C16.2,4.9 14.21,4 12,4c-4.42,0 -7.99,3.58 -7.99,8s3.57,8 7.99,8c3.73,0 6.84,-2.55 7.73,-6h-2.08c-0.82,2.33 -3.04,4 -5.65,4 -3.31,0 -6,-2.69 -6,-6s2.69,-6 6,-6c1.66,0 3.14,0.69 4.22,1.78L13,11h7V4l-2.35,2.35z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `refresh`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M17.65,6.35C16.2,4.9 14.21,4 12,4c-4.42,0 -7.99,3.58 -7.99,8s3.57,8 7.99,8c3.73,0 6.84,-2.55 7.73,-6h-2.08c-0.82,2.33 -3.04,4 -5.65,4 -3.31,0 -6,-2.69 -6,-6s2.69,-6 6,-6c1.66,0 3.14,0.69 4.22,1.78L13,11h7V4l-2.35,2.35z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `refresh`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M17.65,6.35C16.2,4.9 14.21,4 12,4c-4.42,0 -7.99,3.58 -7.99,8s3.57,8 7.99,8c3.73,0 6.84,-2.55 7.73,-6h-2.08c-0.82,2.33 -3.04,4 -5.65,4 -3.31,0 -6,-2.69 -6,-6s2.69,-6 6,-6c1.66,0 3.14,0.69 4.22,1.78L13,11h7V4l-2.35,2.35z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `refresh`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M17.65,6.35C16.2,4.9 14.21,4 12,4c-4.42,0 -7.99,3.58 -7.99,8s3.57,8 7.99,8c3.73,0 6.84,-2.55 7.73,-6h-2.08c-0.82,2.33 -3.04,4 -5.65,4 -3.31,0 -6,-2.69 -6,-6s2.69,-6 6,-6c1.66,0 3.14,0.69 4.22,1.78L13,11h7V4l-2.35,2.35z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `refresh`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M17.65,6.35C16.2,4.9 14.21,4 12,4c-4.42,0 -7.99,3.58 -7.99,8s3.57,8 7.99,8c3.73,0 6.84,-2.55 7.73,-6h-2.08c-0.82,2.33 -3.04,4 -5.65,4 -3.31,0 -6,-2.69 -6,-6s2.69,-6 6,-6c1.66,0 3.14,0.69 4.22,1.78L13,11h7V4l-2.35,2.35z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `save`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24.0"
+ android:viewportWidth="24.0"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M17,3L5,3c-1.11,0 -2,0.9 -2,2v14c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2L21,7l-4,-4zM12,19c-1.66,0 -3,-1.34 -3,-3s1.34,-3 3,-3 3,1.34 3,3 -1.34,3 -3,3zM15,9L5,9L5,5h10v4z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `save`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M17,3L5,3c-1.11,0 -2,0.9 -2,2v14c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2L21,7l-4,-4zM12,19c-1.66,0 -3,-1.34 -3,-3s1.34,-3 3,-3 3,1.34 3,3 -1.34,3 -3,3zM15,9L5,9L5,5h10v4z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `save`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M17,3L5,3c-1.11,0 -2,0.9 -2,2v14c0,1.1 0.89,2 2,2h14c1.1,0 2,-0.9 2,-2L21,7l-4,-4zM12,19c-1.66,0 -3,-1.34 -3,-3s1.34,-3 3,-3 3,1.34 3,3 -1.34,3 -3,3zM15,9L5,9L5,5h10v4z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `chrome_reader_mode`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M13,12h7v1.5h-7zM13,9.5h7L20,11h-7zM13,14.5h7L20,16h-7zM21,4L3,4c-1.1,0 -2,0.9 -2,2v13c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,6c0,-1.1 -0.9,-2 -2,-2zM21,19h-9L12,6h9v13z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `chrome_reader_mode`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M13,12h7v1.5h-7zM13,9.5h7L20,11h-7zM13,14.5h7L20,16h-7zM21,4L3,4c-1.1,0 -2,0.9 -2,2v13c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,6c0,-1.1 -0.9,-2 -2,-2zM21,19h-9L12,6h9v13z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `chrome_reader_mode`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M13,12h7v1.5h-7zM13,9.5h7L20,11h-7zM13,14.5h7L20,16h-7zM21,4L3,4c-1.1,0 -2,0.9 -2,2v13c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,6c0,-1.1 -0.9,-2 -2,-2zM21,19h-9L12,6h9v13z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `search`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M15.5,14h-0.79l-0.28,-0.27C15.41,12.59 16,11.11 16,9.5 16,5.91 13.09,3 9.5,3S3,5.91 3,9.5 5.91,16 9.5,16c1.61,0 3.09,-0.59 4.23,-1.57l0.27,0.28v0.79l5,4.99L20.49,19l-4.99,-5zM9.5,14C7.01,14 5,11.99 5,9.5S7.01,5 9.5,5 14,7.01 14,9.5 11.99,14 9.5,14z"/>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `find_in_page`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M20,19.59V8l-6,-6H6c-1.1,0 -1.99,0.9 -1.99,2L4,20c0,1.1 0.89,2 1.99,2H18c0.45,0 0.85,-0.15 1.19,-0.4l-4.43,-4.43c-0.8,0.52 -1.74,0.83 -2.76,0.83 -2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5c0,1.02 -0.31,1.96 -0.83,2.75L20,19.59zM9,13c0,1.66 1.34,3 3,3s3,-1.34 3,-3 -1.34,-3 -3,-3 -3,1.34 -3,3z"/>
+</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `find_in_page`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/ghosted_icon"
+ android:pathData="M20,19.59V8l-6,-6H6c-1.1,0 -1.99,0.9 -1.99,2L4,20c0,1.1 0.89,2 1.99,2H18c0.45,0 0.85,-0.15 1.19,-0.4l-4.43,-4.43c-0.8,0.52 -1.74,0.83 -2.76,0.83 -2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5c0,1.02 -0.31,1.96 -0.83,2.75L20,19.59zM9,13c0,1.66 1.34,3 3,3s3,-1.34 3,-3 -1.34,-3 -3,-3 -3,1.34 -3,3z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `find_in_page`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M20,19.59V8l-6,-6H6c-1.1,0 -1.99,0.9 -1.99,2L4,20c0,1.1 0.89,2 1.99,2H18c0.45,0 0.85,-0.15 1.19,-0.4l-4.43,-4.43c-0.8,0.52 -1.74,0.83 -2.76,0.83 -2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5c0,1.02 -0.31,1.96 -0.83,2.75L20,19.59zM9,13c0,1.66 1.34,3 3,3s3,-1.34 3,-3 -1.34,-3 -3,-3 -3,1.34 -3,3z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `find_in_page`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M20,19.59V8l-6,-6H6c-1.1,0 -1.99,0.9 -1.99,2L4,20c0,1.1 0.89,2 1.99,2H18c0.45,0 0.85,-0.15 1.19,-0.4l-4.43,-4.43c-0.8,0.52 -1.74,0.83 -2.76,0.83 -2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5c0,1.02 -0.31,1.96 -0.83,2.75L20,19.59zM9,13c0,1.66 1.34,3 3,3s3,-1.34 3,-3 -1.34,-3 -3,-3 -3,1.34 -3,3z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `find_in_page`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_425"
- android:pathData="M20,19.59V8l-6,-6H6c-1.1,0 -1.99,0.9 -1.99,2L4,20c0,1.1 0.89,2 1.99,2H18c0.45,0 0.85,-0.15 1.19,-0.4l-4.43,-4.43c-0.8,0.52 -1.74,0.83 -2.76,0.83 -2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5c0,1.02 -0.31,1.96 -0.83,2.75L20,19.59zM9,13c0,1.66 1.34,3 3,3s3,-1.34 3,-3 -1.34,-3 -3,-3 -3,1.34 -3,3z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `find_in_page`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_700"
- android:pathData="M20,19.59V8l-6,-6H6c-1.1,0 -1.99,0.9 -1.99,2L4,20c0,1.1 0.89,2 1.99,2H18c0.45,0 0.85,-0.15 1.19,-0.4l-4.43,-4.43c-0.8,0.52 -1.74,0.83 -2.76,0.83 -2.76,0 -5,-2.24 -5,-5s2.24,-5 5,-5 5,2.24 5,5c0,1.02 -0.31,1.96 -0.83,2.75L20,19.59zM9,13c0,1.66 1.34,3 3,3s3,-1.34 3,-3 -1.34,-3 -3,-3 -3,1.34 -3,3z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `search`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M15.5,14h-0.79l-0.28,-0.27C15.41,12.59 16,11.11 16,9.5 16,5.91 13.09,3 9.5,3S3,5.91 3,9.5 5.91,16 9.5,16c1.61,0 3.09,-0.59 4.23,-1.57l0.27,0.28v0.79l5,4.99L20.49,19l-4.99,-5zM9.5,14C7.01,14 5,11.99 5,9.5S7.01,5 9.5,5 14,7.01 14,9.5 11.99,14 9.5,14z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `search`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M15.5,14h-0.79l-0.28,-0.27C15.41,12.59 16,11.11 16,9.5 16,5.91 13.09,3 9.5,3S3,5.91 3,9.5 5.91,16 9.5,16c1.61,0 3.09,-0.59 4.23,-1.57l0.27,0.28v0.79l5,4.99L20.49,19l-4.99,-5zM9.5,14C7.01,14 5,11.99 5,9.5S7.01,5 9.5,5 14,7.01 14,9.5 11.99,14 9.5,14z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `select_all`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M3,5h2L5,3c-1.1,0 -2,0.9 -2,2zM3,13h2v-2L3,11v2zM7,21h2v-2L7,19v2zM3,9h2L5,7L3,7v2zM13,3h-2v2h2L13,3zM19,3v2h2c0,-1.1 -0.9,-2 -2,-2zM5,21v-2L3,19c0,1.1 0.9,2 2,2zM3,17h2v-2L3,15v2zM9,3L7,3v2h2L9,3zM11,21h2v-2h-2v2zM19,13h2v-2h-2v2zM19,21c1.1,0 2,-0.9 2,-2h-2v2zM19,9h2L21,7h-2v2zM19,17h2v-2h-2v2zM15,21h2v-2h-2v2zM15,5h2L17,3h-2v2zM7,17h10L17,7L7,7v10zM9,9h6v6L9,15L9,9z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `select_all`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M3,5h2L5,3c-1.1,0 -2,0.9 -2,2zM3,13h2v-2L3,11v2zM7,21h2v-2L7,19v2zM3,9h2L5,7L3,7v2zM13,3h-2v2h2L13,3zM19,3v2h2c0,-1.1 -0.9,-2 -2,-2zM5,21v-2L3,19c0,1.1 0.9,2 2,2zM3,17h2v-2L3,15v2zM9,3L7,3v2h2L9,3zM11,21h2v-2h-2v2zM19,13h2v-2h-2v2zM19,21c1.1,0 2,-0.9 2,-2h-2v2zM19,9h2L21,7h-2v2zM19,17h2v-2h-2v2zM15,21h2v-2h-2v2zM15,5h2L17,3h-2v2zM7,17h10L17,7L7,7v10zM9,9h6v6L9,15L9,9z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `select_all`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M3,5h2L5,3c-1.1,0 -2,0.9 -2,2zM3,13h2v-2L3,11v2zM7,21h2v-2L7,19v2zM3,9h2L5,7L3,7v2zM13,3h-2v2h2L13,3zM19,3v2h2c0,-1.1 -0.9,-2 -2,-2zM5,21v-2L3,19c0,1.1 0.9,2 2,2zM3,17h2v-2L3,15v2zM9,3L7,3v2h2L9,3zM11,21h2v-2h-2v2zM19,13h2v-2h-2v2zM19,21c1.1,0 2,-0.9 2,-2h-2v2zM19,9h2L21,7h-2v2zM19,17h2v-2h-2v2zM15,21h2v-2h-2v2zM15,5h2L17,3h-2v2zM7,17h10L17,7L7,7v10zM9,9h6v6L9,15L9,9z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M18,16.08c-0.76,0 -1.44,0.3 -1.96,0.77L8.91,12.7c0.05,-0.23 0.09,-0.46 0.09,-0.7s-0.04,-0.47 -0.09,-0.7l7.05,-4.11c0.54,0.5 1.25,0.81 2.04,0.81 1.66,0 3,-1.34 3,-3s-1.34,-3 -3,-3 -3,1.34 -3,3c0,0.24 0.04,0.47 0.09,0.7L8.04,9.81C7.5,9.31 6.79,9 6,9c-1.66,0 -3,1.34 -3,3s1.34,3 3,3c0.79,0 1.5,-0.31 2.04,-0.81l7.12,4.16c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.61 1.31,2.92 2.92,2.92 1.61,0 2.92,-1.31 2.92,-2.92s-1.31,-2.92 -2.92,-2.92z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M18,16.08c-0.76,0 -1.44,0.3 -1.96,0.77L8.91,12.7c0.05,-0.23 0.09,-0.46 0.09,-0.7s-0.04,-0.47 -0.09,-0.7l7.05,-4.11c0.54,0.5 1.25,0.81 2.04,0.81 1.66,0 3,-1.34 3,-3s-1.34,-3 -3,-3 -3,1.34 -3,3c0,0.24 0.04,0.47 0.09,0.7L8.04,9.81C7.5,9.31 6.79,9 6,9c-1.66,0 -3,1.34 -3,3s1.34,3 3,3c0.79,0 1.5,-0.31 2.04,-0.81l7.12,4.16c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.61 1.31,2.92 2.92,2.92 1.61,0 2.92,-1.31 2.92,-2.92s-1.31,-2.92 -2.92,-2.92z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `image`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M18,16.08c-0.76,0 -1.44,0.3 -1.96,0.77L8.91,12.7c0.05,-0.23 0.09,-0.46 0.09,-0.7s-0.04,-0.47 -0.09,-0.7l7.05,-4.11c0.54,0.5 1.25,0.81 2.04,0.81 1.66,0 3,-1.34 3,-3s-1.34,-3 -3,-3 -3,1.34 -3,3c0,0.24 0.04,0.47 0.09,0.7L8.04,9.81C7.5,9.31 6.79,9 6,9c-1.66,0 -3,1.34 -3,3s1.34,3 3,3c0.79,0 1.5,-0.31 2.04,-0.81l7.12,4.16c-0.05,0.21 -0.08,0.43 -0.08,0.65 0,1.61 1.31,2.92 2.92,2.92 1.61,0 2.92,-1.31 2.92,-2.92s-1.31,-2.92 -2.92,-2.92z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `thumbs_up_down`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M12,6c0,-0.55 -0.45,-1 -1,-1L5.82,5l0.66,-3.18 0.02,-0.23c0,-0.31 -0.13,-0.59 -0.33,-0.8L5.38,0 0.44,4.94C0.17,5.21 0,5.59 0,6v6.5c0,0.83 0.67,1.5 1.5,1.5h6.75c0.62,0 1.15,-0.38 1.38,-0.91l2.26,-5.29c0.07,-0.17 0.11,-0.36 0.11,-0.55L12,6zM22.5,10h-6.75c-0.62,0 -1.15,0.38 -1.38,0.91l-2.26,5.29c-0.07,0.17 -0.11,0.36 -0.11,0.55L12,18c0,0.55 0.45,1 1,1h5.18l-0.66,3.18 -0.02,0.24c0,0.31 0.13,0.59 0.33,0.8l0.79,0.78 4.94,-4.94c0.27,-0.27 0.44,-0.65 0.44,-1.06v-6.5c0,-0.83 -0.67,-1.5 -1.5,-1.5z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `thumbs_up_down`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M12,6c0,-0.55 -0.45,-1 -1,-1L5.82,5l0.66,-3.18 0.02,-0.23c0,-0.31 -0.13,-0.59 -0.33,-0.8L5.38,0 0.44,4.94C0.17,5.21 0,5.59 0,6v6.5c0,0.83 0.67,1.5 1.5,1.5h6.75c0.62,0 1.15,-0.38 1.38,-0.91l2.26,-5.29c0.07,-0.17 0.11,-0.36 0.11,-0.55L12,6zM22.5,10h-6.75c-0.62,0 -1.15,0.38 -1.38,0.91l-2.26,5.29c-0.07,0.17 -0.11,0.36 -0.11,0.55L12,18c0,0.55 0.45,1 1,1h5.18l-0.66,3.18 -0.02,0.24c0,0.31 0.13,0.59 0.33,0.8l0.79,0.78 4.94,-4.94c0.27,-0.27 0.44,-0.65 0.44,-1.06v-6.5c0,-0.83 -0.67,-1.5 -1.5,-1.5z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `thumbs_up_down`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M12,6c0,-0.55 -0.45,-1 -1,-1L5.82,5l0.66,-3.18 0.02,-0.23c0,-0.31 -0.13,-0.59 -0.33,-0.8L5.38,0 0.44,4.94C0.17,5.21 0,5.59 0,6v6.5c0,0.83 0.67,1.5 1.5,1.5h6.75c0.62,0 1.15,-0.38 1.38,-0.91l2.26,-5.29c0.07,-0.17 0.11,-0.36 0.11,-0.55L12,6zM22.5,10h-6.75c-0.62,0 -1.15,0.38 -1.38,0.91l-2.26,5.29c-0.07,0.17 -0.11,0.36 -0.11,0.55L12,18c0,0.55 0.45,1 1,1h5.18l-0.66,3.18 -0.02,0.24c0,0.31 0.13,0.59 0.33,0.8l0.79,0.78 4.94,-4.94c0.27,-0.27 0.44,-0.65 0.44,-1.06v-6.5c0,-0.83 -0.67,-1.5 -1.5,-1.5z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `thumbs_up_down`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M12,6c0,-0.55 -0.45,-1 -1,-1L5.82,5l0.66,-3.18 0.02,-0.23c0,-0.31 -0.13,-0.59 -0.33,-0.8L5.38,0 0.44,4.94C0.17,5.21 0,5.59 0,6v6.5c0,0.83 0.67,1.5 1.5,1.5h6.75c0.62,0 1.15,-0.38 1.38,-0.91l2.26,-5.29c0.07,-0.17 0.11,-0.36 0.11,-0.55L12,6zM22.5,10h-6.75c-0.62,0 -1.15,0.38 -1.38,0.91l-2.26,5.29c-0.07,0.17 -0.11,0.36 -0.11,0.55L12,18c0,0.55 0.45,1 1,1h5.18l-0.66,3.18 -0.02,0.24c0,0.31 0.13,0.59 0.33,0.8l0.79,0.78 4.94,-4.94c0.27,-0.27 0.44,-0.65 0.44,-1.06v-6.5c0,-0.83 -0.67,-1.5 -1.5,-1.5z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `thumbs_up_down`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M12,6c0,-0.55 -0.45,-1 -1,-1L5.82,5l0.66,-3.18 0.02,-0.23c0,-0.31 -0.13,-0.59 -0.33,-0.8L5.38,0 0.44,4.94C0.17,5.21 0,5.59 0,6v6.5c0,0.83 0.67,1.5 1.5,1.5h6.75c0.62,0 1.15,-0.38 1.38,-0.91l2.26,-5.29c0.07,-0.17 0.11,-0.36 0.11,-0.55L12,6zM22.5,10h-6.75c-0.62,0 -1.15,0.38 -1.38,0.91l-2.26,5.29c-0.07,0.17 -0.11,0.36 -0.11,0.55L12,18c0,0.55 0.45,1 1,1h5.18l-0.66,3.18 -0.02,0.24c0,0.31 0.13,0.59 0.33,0.8l0.79,0.78 4.94,-4.94c0.27,-0.27 0.44,-0.65 0.44,-1.06v-6.5c0,-0.83 -0.67,-1.5 -1.5,-1.5z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `thumbs_up_down`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M12,6c0,-0.55 -0.45,-1 -1,-1L5.82,5l0.66,-3.18 0.02,-0.23c0,-0.31 -0.13,-0.59 -0.33,-0.8L5.38,0 0.44,4.94C0.17,5.21 0,5.59 0,6v6.5c0,0.83 0.67,1.5 1.5,1.5h6.75c0.62,0 1.15,-0.38 1.38,-0.91l2.26,-5.29c0.07,-0.17 0.11,-0.36 0.11,-0.55L12,6zM22.5,10h-6.75c-0.62,0 -1.15,0.38 -1.38,0.91l-2.26,5.29c-0.07,0.17 -0.11,0.36 -0.11,0.55L12,18c0,0.55 0.45,1 1,1h5.18l-0.66,3.18 -0.02,0.24c0,0.31 0.13,0.59 0.33,0.8l0.79,0.78 4.94,-4.94c0.27,-0.27 0.44,-0.65 0.44,-1.06v-6.5c0,-0.83 -0.67,-1.5 -1.5,-1.5z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `thumbs_up_down`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/ghosted_icon"
+ android:pathData="M12,6c0,-0.55 -0.45,-1 -1,-1L5.82,5l0.66,-3.18 0.02,-0.23c0,-0.31 -0.13,-0.59 -0.33,-0.8L5.38,0 0.44,4.94C0.17,5.21 0,5.59 0,6v6.5c0,0.83 0.67,1.5 1.5,1.5h6.75c0.62,0 1.15,-0.38 1.38,-0.91l2.26,-5.29c0.07,-0.17 0.11,-0.36 0.11,-0.55L12,6zM22.5,10h-6.75c-0.62,0 -1.15,0.38 -1.38,0.91l-2.26,5.29c-0.07,0.17 -0.11,0.36 -0.11,0.55L12,18c0,0.55 0.45,1 1,1h5.18l-0.66,3.18 -0.02,0.24c0,0.31 0.13,0.59 0.33,0.8l0.79,0.78 4.94,-4.94c0.27,-0.27 0.44,-0.65 0.44,-1.06v-6.5c0,-0.83 -0.67,-1.5 -1.5,-1.5z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `thumbs_up_down`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_425"
- android:pathData="M12,6c0,-0.55 -0.45,-1 -1,-1L5.82,5l0.66,-3.18 0.02,-0.23c0,-0.31 -0.13,-0.59 -0.33,-0.8L5.38,0 0.44,4.94C0.17,5.21 0,5.59 0,6v6.5c0,0.83 0.67,1.5 1.5,1.5h6.75c0.62,0 1.15,-0.38 1.38,-0.91l2.26,-5.29c0.07,-0.17 0.11,-0.36 0.11,-0.55L12,6zM22.5,10h-6.75c-0.62,0 -1.15,0.38 -1.38,0.91l-2.26,5.29c-0.07,0.17 -0.11,0.36 -0.11,0.55L12,18c0,0.55 0.45,1 1,1h5.18l-0.66,3.18 -0.02,0.24c0,0.31 0.13,0.59 0.33,0.8l0.79,0.78 4.94,-4.94c0.27,-0.27 0.44,-0.65 0.44,-1.06v-6.5c0,-0.83 -0.67,-1.5 -1.5,-1.5z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `thumbs_up_down`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_700"
- android:pathData="M12,6c0,-0.55 -0.45,-1 -1,-1L5.82,5l0.66,-3.18 0.02,-0.23c0,-0.31 -0.13,-0.59 -0.33,-0.8L5.38,0 0.44,4.94C0.17,5.21 0,5.59 0,6v6.5c0,0.83 0.67,1.5 1.5,1.5h6.75c0.62,0 1.15,-0.38 1.38,-0.91l2.26,-5.29c0.07,-0.17 0.11,-0.36 0.11,-0.55L12,6zM22.5,10h-6.75c-0.62,0 -1.15,0.38 -1.38,0.91l-2.26,5.29c-0.07,0.17 -0.11,0.36 -0.11,0.55L12,18c0,0.55 0.45,1 1,1h5.18l-0.66,3.18 -0.02,0.24c0,0.31 0.13,0.59 0.33,0.8l0.79,0.78 4.94,-4.94c0.27,-0.27 0.44,-0.65 0.44,-1.06v-6.5c0,-0.83 -0.67,-1.5 -1.5,-1.5z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `sort`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M3,18h6v-2L3,16v2zM3,6v2h18L21,6L3,6zM3,13h12v-2L3,11v2z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `sort`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_925"
- android:pathData="M3,18h6v-2L3,16v2zM3,6v2h18L21,6L3,6zM3,13h12v-2L3,11v2z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `sort`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/white"
- android:pathData="M3,18h6v-2L3,16v2zM3,6v2h18L21,6L3,6zM3,13h12v-2L3,11v2z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!--
+ Copyright © 2019,2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is derived from `sort`, which is part of the Android Material icon set and is released under the Apache License 2.0.
+
+ This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser Android is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser Android is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/selected_icon_background"
+ android:pathData="M3.1525,0L20.8475,0A3.1525,3.1525 0,0 1,24 3.1525L24,20.8475A3.1525,3.1525 0,0 1,20.8475 24L3.1525,24A3.1525,3.1525 0,0 1,0 20.8475L0,3.1525A3.1525,3.1525 0,0 1,3.1525 0z" />
+
+ <path
+ android:fillColor="@color/icon"
+ android:pathData="M3,18H9V16H3ZM3,6v2h18v-2zM3,13H15V11H3Z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2019,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `sort`, which is part of the Android Material icon set and is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_300"
- android:pathData="M3.1525,0L20.8475,0A3.1525,3.1525 0,0 1,24 3.1525L24,20.8475A3.1525,3.1525 0,0 1,20.8475 24L3.1525,24A3.1525,3.1525 0,0 1,0 20.8475L0,3.1525A3.1525,3.1525 0,0 1,3.1525 0z" />
-
- <path
- android:fillColor="@color/black"
- android:pathData="M3,18H9V16H3ZM3,6v2h18v-2zM3,13H15V11H3Z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2019,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `sort`, which is part of the Android Material icon set and is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_700"
- android:pathData="M3.1525,0L20.8475,0A3.1525,3.1525 0,0 1,24 3.1525L24,20.8475A3.1525,3.1525 0,0 1,20.8475 24L3.1525,24A3.1525,3.1525 0,0 1,0 20.8475L0,3.1525A3.1525,3.1525 0,0 1,3.1525 0z" />
-
- <path
- android:fillColor="@color/white"
- android:pathData="M3,18H9V16H3ZM3,6v2h18v-2zM3,13H15V11H3Z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `vpn_lock`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M22,4v-0.5C22,2.12 20.88,1 19.5,1S17,2.12 17,3.5L17,4c-0.55,0 -1,0.45 -1,1v4c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1L23,5c0,-0.55 -0.45,-1 -1,-1zM21.2,4h-3.4v-0.5c0,-0.94 0.76,-1.7 1.7,-1.7s1.7,0.76 1.7,1.7L21.2,4zM18.92,12c0.04,0.33 0.08,0.66 0.08,1 0,2.08 -0.8,3.97 -2.1,5.39 -0.26,-0.81 -1,-1.39 -1.9,-1.39h-1v-3c0,-0.55 -0.45,-1 -1,-1L7,13v-2h2c0.55,0 1,-0.45 1,-1L10,8h2c1.1,0 2,-0.9 2,-2L14,3.46c-0.95,-0.3 -1.95,-0.46 -3,-0.46C5.48,3 1,7.48 1,13s4.48,10 10,10 10,-4.48 10,-10c0,-0.34 -0.02,-0.67 -0.05,-1h-2.03zM10,20.93c-3.95,-0.49 -7,-3.85 -7,-7.93 0,-0.62 0.08,-1.21 0.21,-1.79L8,16v1c0,1.1 0.9,2 2,2v1.93z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `vpn_lock`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M22,4v-0.5C22,2.12 20.88,1 19.5,1S17,2.12 17,3.5L17,4c-0.55,0 -1,0.45 -1,1v4c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1L23,5c0,-0.55 -0.45,-1 -1,-1zM21.2,4h-3.4v-0.5c0,-0.94 0.76,-1.7 1.7,-1.7s1.7,0.76 1.7,1.7L21.2,4zM18.92,12c0.04,0.33 0.08,0.66 0.08,1 0,2.08 -0.8,3.97 -2.1,5.39 -0.26,-0.81 -1,-1.39 -1.9,-1.39h-1v-3c0,-0.55 -0.45,-1 -1,-1L7,13v-2h2c0.55,0 1,-0.45 1,-1L10,8h2c1.1,0 2,-0.9 2,-2L14,3.46c-0.95,-0.3 -1.95,-0.46 -3,-0.46C5.48,3 1,7.48 1,13s4.48,10 10,10 10,-4.48 10,-10c0,-0.34 -0.02,-0.67 -0.05,-1h-2.03zM10,20.93c-3.95,-0.49 -7,-3.85 -7,-7.93 0,-0.62 0.08,-1.21 0.21,-1.79L8,16v1c0,1.1 0.9,2 2,2v1.93z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `vpn_lock`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M22,4v-0.5C22,2.12 20.88,1 19.5,1S17,2.12 17,3.5L17,4c-0.55,0 -1,0.45 -1,1v4c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1L23,5c0,-0.55 -0.45,-1 -1,-1zM21.2,4h-3.4v-0.5c0,-0.94 0.76,-1.7 1.7,-1.7s1.7,0.76 1.7,1.7L21.2,4zM18.92,12c0.04,0.33 0.08,0.66 0.08,1 0,2.08 -0.8,3.97 -2.1,5.39 -0.26,-0.81 -1,-1.39 -1.9,-1.39h-1v-3c0,-0.55 -0.45,-1 -1,-1L7,13v-2h2c0.55,0 1,-0.45 1,-1L10,8h2c1.1,0 2,-0.9 2,-2L14,3.46c-0.95,-0.3 -1.95,-0.46 -3,-0.46C5.48,3 1,7.48 1,13s4.48,10 10,10 10,-4.48 10,-10c0,-0.34 -0.02,-0.67 -0.05,-1h-2.03zM10,20.93c-3.95,-0.49 -7,-3.85 -7,-7.93 0,-0.62 0.08,-1.21 0.21,-1.79L8,16v1c0,1.1 0.9,2 2,2v1.93z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `vpn_lock`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M22,4v-0.5C22,2.12 20.88,1 19.5,1S17,2.12 17,3.5L17,4c-0.55,0 -1,0.45 -1,1v4c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1L23,5c0,-0.55 -0.45,-1 -1,-1zM21.2,4h-3.4v-0.5c0,-0.94 0.76,-1.7 1.7,-1.7s1.7,0.76 1.7,1.7L21.2,4zM18.92,12c0.04,0.33 0.08,0.66 0.08,1 0,2.08 -0.8,3.97 -2.1,5.39 -0.26,-0.81 -1,-1.39 -1.9,-1.39h-1v-3c0,-0.55 -0.45,-1 -1,-1L7,13v-2h2c0.55,0 1,-0.45 1,-1L10,8h2c1.1,0 2,-0.9 2,-2L14,3.46c-0.95,-0.3 -1.95,-0.46 -3,-0.46C5.48,3 1,7.48 1,13s4.48,10 10,10 10,-4.48 10,-10c0,-0.34 -0.02,-0.67 -0.05,-1h-2.03zM10,20.93c-3.95,-0.49 -7,-3.85 -7,-7.93 0,-0.62 0.08,-1.21 0.21,-1.79L8,16v1c0,1.1 0.9,2 2,2v1.93z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `vpn_lock`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M22,4v-0.5C22,2.12 20.88,1 19.5,1S17,2.12 17,3.5L17,4c-0.55,0 -1,0.45 -1,1v4c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1L23,5c0,-0.55 -0.45,-1 -1,-1zM21.2,4h-3.4v-0.5c0,-0.94 0.76,-1.7 1.7,-1.7s1.7,0.76 1.7,1.7L21.2,4zM18.92,12c0.04,0.33 0.08,0.66 0.08,1 0,2.08 -0.8,3.97 -2.1,5.39 -0.26,-0.81 -1,-1.39 -1.9,-1.39h-1v-3c0,-0.55 -0.45,-1 -1,-1L7,13v-2h2c0.55,0 1,-0.45 1,-1L10,8h2c1.1,0 2,-0.9 2,-2L14,3.46c-0.95,-0.3 -1.95,-0.46 -3,-0.46C5.48,3 1,7.48 1,13s4.48,10 10,10 10,-4.48 10,-10c0,-0.34 -0.02,-0.67 -0.05,-1h-2.03zM10,20.93c-3.95,-0.49 -7,-3.85 -7,-7.93 0,-0.62 0.08,-1.21 0.21,-1.79L8,16v1c0,1.1 0.9,2 2,2v1.93z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `vpn_lock`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M22,4v-0.5C22,2.12 20.88,1 19.5,1S17,2.12 17,3.5L17,4c-0.55,0 -1,0.45 -1,1v4c0,0.55 0.45,1 1,1h5c0.55,0 1,-0.45 1,-1L23,5c0,-0.55 -0.45,-1 -1,-1zM21.2,4h-3.4v-0.5c0,-0.94 0.76,-1.7 1.7,-1.7s1.7,0.76 1.7,1.7L21.2,4zM18.92,12c0.04,0.33 0.08,0.66 0.08,1 0,2.08 -0.8,3.97 -2.1,5.39 -0.26,-0.81 -1,-1.39 -1.9,-1.39h-1v-3c0,-0.55 -0.45,-1 -1,-1L7,13v-2h2c0.55,0 1,-0.45 1,-1L10,8h2c1.1,0 2,-0.9 2,-2L14,3.46c-0.95,-0.3 -1.95,-0.46 -3,-0.46C5.48,3 1,7.48 1,13s4.48,10 10,10 10,-4.48 10,-10c0,-0.34 -0.02,-0.67 -0.05,-1h-2.03zM10,20.93c-3.95,-0.49 -7,-3.85 -7,-7.93 0,-0.62 0.08,-1.21 0.21,-1.79L8,16v1c0,1.1 0.9,2 2,2v1.93z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `tab`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19L3,5h10v4h8v10z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `tab`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19L3,5h10v4h8v10z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `tab`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19L3,5h10v4h8v10z" />
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `tab`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19L3,5h10v4h8v10z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `tab`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19L3,5h10v4h8v10z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `tab`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19L3,19L3,5h10v4h8v10z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<shape
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:shape="rectangle" >
-
- <solid
- android:color="@color/dark_blue_40" />
-
- <corners
- android:radius="10dp" />
-</shape>
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<shape
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:shape="rectangle" >
-
- <solid
- android:color="@color/green_200" />
-
- <corners
- android:radius="10dp" />
-</shape>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `devices_other`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M3,6h18L21,4L3,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h4v-2L3,18L3,6zM13,12L9,12v1.78c-0.61,0.55 -1,1.33 -1,2.22s0.39,1.67 1,2.22L9,20h4v-1.78c0.61,-0.55 1,-1.34 1,-2.22s-0.39,-1.67 -1,-2.22L13,12zM11,17.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM22,8h-6c-0.5,0 -1,0.5 -1,1v10c0,0.5 0.5,1 1,1h6c0.5,0 1,-0.5 1,-1L23,9c0,-0.5 -0.5,-1 -1,-1zM21,18h-4v-8h4v8z" />
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `devices_other`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M3,6h18L21,4L3,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h4v-2L3,18L3,6zM13,12L9,12v1.78c-0.61,0.55 -1,1.33 -1,2.22s0.39,1.67 1,2.22L9,20h4v-1.78c0.61,-0.55 1,-1.34 1,-2.22s-0.39,-1.67 -1,-2.22L13,12zM11,17.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM22,8h-6c-0.5,0 -1,0.5 -1,1v10c0,0.5 0.5,1 1,1h6c0.5,0 1,-0.5 1,-1L23,9c0,-0.5 -0.5,-1 -1,-1zM21,18h-4v-8h4v8z" />
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `devices_other`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M3,6h18L21,4L3,4c-1.1,0 -2,0.9 -2,2v12c0,1.1 0.9,2 2,2h4v-2L3,18L3,6zM13,12L9,12v1.78c-0.61,0.55 -1,1.33 -1,2.22s0.39,1.67 1,2.22L9,20h4v-1.78c0.61,-0.55 1,-1.34 1,-2.22s-0.39,-1.67 -1,-2.22L13,12zM11,17.5c-0.83,0 -1.5,-0.67 -1.5,-1.5s0.67,-1.5 1.5,-1.5 1.5,0.67 1.5,1.5 -0.67,1.5 -1.5,1.5zM22,8h-6c-0.5,0 -1,0.5 -1,1v10c0,0.5 0.5,1 1,1h6c0.5,0 1,-0.5 1,-1L23,9c0,-0.5 -0.5,-1 -1,-1zM21,18h-4v-8h4v8z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!--
+ Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is derived from `compare`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
+
+ This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser Android is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser Android is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="m14,3h5c1.1,0 2,0.9 2,2v14c0,1.1 -0.9,2 -2,2h-5v2L12,23L12,1h2zM14,18h5L14,12ZM5,3h5L10,5L5,5v13l5,-6v9L5,21C3.9,21 3,20.1 3,19L3,5C3,3.9 3.9,3 5,3Z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `compare`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="m14,3h5c1.1,0 2,0.9 2,2v14c0,1.1 -0.9,2 -2,2h-5v2L12,23L12,1h2zM14,18h5L14,12ZM5,3h5L10,5L5,5v13l5,-6v9L5,21C3.9,21 3,20.1 3,19L3,5C3,3.9 3.9,3 5,3Z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `compare`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="m14,3h5c1.1,0 2,0.9 2,2v14c0,1.1 -0.9,2 -2,2h-5v2L12,23L12,1h2zM14,18h5L14,12ZM5,3h5L10,5L5,5v13l5,-6v9L5,21C3.9,21 3,20.1 3,19L3,5C3,3.9 3.9,3 5,3Z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!--
+ Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
+
+ This file is derived from `compare`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
+
+ This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
+
+ Privacy Browser Android is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Privacy Browser Android is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24"
+ android:autoMirrored="true" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="m14,3h5c1.1,0 2,0.9 2,2v14c0,1.1 -0.9,2 -2,2h-5v2L12,23L12,1h2zM14,18h5L14,12ZM5,3h5L10,5L5,5v13l5,-6v9L5,21C3.9,21 3,20.1 3,19L3,5C3,3.9 3.9,3 5,3Z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `compare`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="m14,3h5c1.1,0 2,0.9 2,2v14c0,1.1 -0.9,2 -2,2h-5v2L12,23L12,1h2zM14,18h5L14,12ZM5,3h5L10,5L5,5v13l5,-6v9L5,21C3.9,21 3,20.1 3,19L3,5C3,3.9 3.9,3 5,3Z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!--
- Copyright © 2017,2022 Soren Stoutner <soren@stoutner.com>.
-
- This file is derived from `compare`, which is part of the Android Material icon set. It is released under the Apache License 2.0.
-
- This file is part of Privacy Browser Android <https://www.stoutner.com/privacy-browser-android>.
-
- Privacy Browser Android is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- Privacy Browser Android is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with Privacy Browser Android. If not, see <http://www.gnu.org/licenses/>. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24.0"
- android:viewportWidth="24.0"
- android:autoMirrored="true" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="m14,3h5c1.1,0 2,0.9 2,2v14c0,1.1 -0.9,2 -2,2h-5v2L12,23L12,1h2zM14,18h5L14,12ZM5,3h5L10,5L5,5v13l5,-6v9L5,21C3.9,21 3,20.1 3,19L3,5C3,3.9 3.9,3 5,3Z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `settings_overscan`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/disabled_icon"
+ android:pathData="M12.01,5.5L10,8h4l-1.99,-2.5zM18,10v4l2.5,-1.99L18,10zM6,10l-2.5,2.01L6,14v-4zM14,16h-4l2.01,2.5L14,16zM21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19.01L3,19.01L3,4.99h18v14.02z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `settings_overscan`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_600"
- android:pathData="M12.01,5.5L10,8h4l-1.99,-2.5zM18,10v4l2.5,-1.99L18,10zM6,10l-2.5,2.01L6,14v-4zM14,16h-4l2.01,2.5L14,16zM21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19.01L3,19.01L3,4.99h18v14.02z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `settings_overscan`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/gray_500"
- android:pathData="M12.01,5.5L10,8h4l-1.99,-2.5zM18,10v4l2.5,-1.99L18,10zM6,10l-2.5,2.01L6,14v-4zM14,16h-4l2.01,2.5L14,16zM21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19.01L3,19.01L3,4.99h18v14.02z"/>
-</vector>
\ No newline at end of file
--- /dev/null
+<!-- This file comes from the Android Material icon set, where it is called `settings_overscan`. It is released under the Apache License 2.0. -->
+
+<vector
+ xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="24dp"
+ android:width="24dp"
+ android:viewportHeight="24"
+ android:viewportWidth="24" >
+
+ <path
+ android:fillColor="@color/blue_icon"
+ android:pathData="M12.01,5.5L10,8h4l-1.99,-2.5zM18,10v4l2.5,-1.99L18,10zM6,10l-2.5,2.01L6,14v-4zM14,16h-4l2.01,2.5L14,16zM21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19.01L3,19.01L3,4.99h18v14.02z"/>
+</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `settings_overscan`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/blue_800"
- android:pathData="M12.01,5.5L10,8h4l-1.99,-2.5zM18,10v4l2.5,-1.99L18,10zM6,10l-2.5,2.01L6,14v-4zM14,16h-4l2.01,2.5L14,16zM21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19.01L3,19.01L3,4.99h18v14.02z"/>
-</vector>
\ No newline at end of file
+++ /dev/null
-<!-- This file comes from the Android Material icon set, where it is called `settings_overscan`. It is released under the Apache License 2.0. -->
-
-<vector
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:height="24dp"
- android:width="24dp"
- android:viewportHeight="24"
- android:viewportWidth="24" >
-
- <path
- android:fillColor="@color/violet_500"
- android:pathData="M12.01,5.5L10,8h4l-1.99,-2.5zM18,10v4l2.5,-1.99L18,10zM6,10l-2.5,2.01L6,14v-4zM14,16h-4l2.01,2.5L14,16zM21,3L3,3c-1.1,0 -2,0.9 -2,2v14c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,5c0,-1.1 -0.9,-2 -2,-2zM21,19.01L3,19.01L3,4.99h18v14.02z"/>
-</vector>
\ No newline at end of file
<FrameLayout
android:id="@+id/bookmarks_framelayout"
xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_height="match_parent"
android:layout_width="400dp"
android:src="@drawable/back"
android:background="?attr/selectableItemBackground"
android:onClick="bookmarksBack"
- android:contentDescription="@string/back"
- app:tint="?android:attr/textColorPrimary" />
+ android:contentDescription="@string/back" />
<TextView
android:id="@+id/bookmarks_title_textview"
android:layout_gravity="bottom|end"
android:layout_marginEnd="16dp"
android:layout_marginBottom="155dp"
- android:src="@drawable/bookmarks_day"
+ android:src="@drawable/bookmarks"
android:tint="?attr/fabIconTintColor"
android:contentDescription="@string/bookmarks" />
<FrameLayout
android:id="@+id/bookmarks_framelayout"
xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_height="match_parent"
android:layout_width="400dp"
android:src="@drawable/back"
android:background="?attr/selectableItemBackground"
android:onClick="bookmarksBack"
- android:contentDescription="@string/back"
- app:tint="?android:attr/textColorPrimary" />
+ android:contentDescription="@string/back" />
<TextView
android:id="@+id/bookmarks_title_textview"
android:layout_gravity="bottom|end"
android:layout_marginEnd="16dp"
android:layout_marginBottom="155dp"
- android:src="@drawable/bookmarks_day"
+ android:src="@drawable/bookmarks"
android:tint="?attr/fabIconTintColor"
android:contentDescription="@string/bookmarks" />
<FrameLayout
android:id="@+id/bookmarks_framelayout"
xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:src="@drawable/back"
android:background="?attr/selectableItemBackground"
android:onClick="bookmarksBack"
- android:contentDescription="@string/back"
- app:tint="?android:attr/textColorPrimary" />
+ android:contentDescription="@string/back" />
<TextView
android:id="@+id/bookmarks_title_textview"
android:layout_gravity="bottom|end"
android:layout_marginEnd="16dp"
android:layout_marginBottom="200dp"
- android:src="@drawable/bookmarks_day"
+ android:src="@drawable/bookmarks"
android:tint="?attr/fabIconTintColor"
android:contentDescription="@string/bookmarks" />
<FrameLayout
android:id="@+id/bookmarks_framelayout"
xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:src="@drawable/back"
android:background="?attr/selectableItemBackground"
android:onClick="bookmarksBack"
- android:contentDescription="@string/back"
- app:tint="?android:attr/textColorPrimary" />
+ android:contentDescription="@string/back" />
<TextView
android:id="@+id/bookmarks_title_textview"
android:layout_gravity="bottom|end"
android:layout_marginEnd="16dp"
android:layout_marginBottom="155dp"
- android:src="@drawable/bookmarks_day"
+ android:src="@drawable/bookmarks"
android:tint="?attr/fabIconTintColor"
android:contentDescription="@string/bookmarks" />
android:layout_marginEnd="10dp"
android:layout_marginBottom="12dp"
android:layout_gravity="bottom"
- android:src="@drawable/domains_day"
+ android:src="@drawable/domains"
app:tint="?attr/domainSettingsIconTintColor"
tools:ignore="contentDescription" />
android:layout_marginTop="1dp"
android:layout_marginEnd="10dp"
android:layout_gravity="center_vertical"
- android:src="@drawable/user_agent_day"
+ android:src="@drawable/user_agent"
app:tint="?attr/domainSettingsIconTintColor"
android:contentDescription="@string/user_agent" />
android:layout_marginTop="1dp"
android:layout_marginEnd="10dp"
android:layout_gravity="center_vertical"
- android:src="@drawable/font_size_day"
+ android:src="@drawable/font_size"
app:tint="?attr/domainSettingsIconTintColor"
android:contentDescription="@string/font_size" />
android:layout_gravity="center_vertical"
android:paddingStart="10dp"
android:paddingEnd="10dp"
- android:src="@drawable/close_day"
+ android:src="@drawable/close"
android:background="?attr/selectableItemBackground"
android:onClick="closeTab"
- android:contentDescription="@string/close_tab"
- app:tint="?attr/addTabIconTintColor" />
+ android:contentDescription="@string/close_tab" />
<com.google.android.material.tabs.TabLayout
android:id="@+id/tablayout"
android:src="@drawable/add"
android:background="?attr/selectableItemBackground"
android:onClick="addTab"
- android:contentDescription="@string/add_tab"
- app:tint="?attr/addTabIconTintColor" />
+ android:contentDescription="@string/add_tab" />
</LinearLayout>
<!-- The find on page linear layout. It is initially `visibility="gone"` so it doesn't display while the blocklists are loading. -->
<!-- `android:background="?attr/selectableItemBackground"` adds a ripple animation on touch. -->
<ImageView
android:id="@+id/close_find"
- android:src="@drawable/close_day"
+ android:src="@drawable/close"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginStart="4dp"
<!-- `android:background="?attr/selectableItemBackground"` adds a ripple animation on touch. -->
<ImageView
android:id="@+id/close_find"
- android:src="@drawable/close_day"
+ android:src="@drawable/close"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginStart="4dp"
android:layout_gravity="center_vertical"
android:paddingStart="10dp"
android:paddingEnd="10dp"
- android:src="@drawable/close_day"
+ android:src="@drawable/close"
android:background="?attr/selectableItemBackground"
android:onClick="closeTab"
- android:contentDescription="@string/close_tab"
- app:tint="?attr/addTabIconTintColor" />
+ android:contentDescription="@string/close_tab" />
<com.google.android.material.tabs.TabLayout
android:id="@+id/tablayout"
android:src="@drawable/add"
android:background="?attr/selectableItemBackground"
android:onClick="addTab"
- android:contentDescription="@string/add_tab"
- app:tint="?attr/addTabIconTintColor" />
+ android:contentDescription="@string/add_tab" />
</LinearLayout>
</com.google.android.material.appbar.AppBarLayout>
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
- <!-- `android:iconTint` can be used once the minimum API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/copy"
android:title="@string/copy_string"
android:orderInCategory="10"
- android:icon="?attr/copyIcon"
+ android:icon="@drawable/copy"
app:showAsAction="ifRoom" />
- <!-- `android:iconTint` can be used once the minimum API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/share"
android:title="@string/share"
android:orderInCategory="20"
- android:icon="?attr/shareIcon"
+ android:icon="@drawable/share"
app:showAsAction="ifRoom" />
- <!-- `android:iconTint` can be used once the minimum API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/save_text"
android:title="@string/save_text"
android:orderInCategory="30"
- android:icon="?attr/saveTextIcon"
+ android:icon="@drawable/save_text"
app:showAsAction="ifRoom" />
- <!-- `android:iconTint` can be used once the minimum API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/save_image"
android:title="@string/save_image"
android:orderInCategory="40"
- android:icon="?attr/saveImageIcon"
+ android:icon="@drawable/image"
app:showAsAction="ifRoom" />
</menu>
\ No newline at end of file
android:id="@+id/move_to_folder"
android:title="@string/move_to_folder"
android:orderInCategory="30"
- android:icon="?attr/moveToFolderIcon"
+ android:icon="@drawable/move_to_folder"
app:showAsAction="ifRoom" />
- <!-- `android:iconTint` can be used once API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/edit_bookmark"
android:title="@string/edit"
android:orderInCategory="40"
- android:icon="?attr/editIcon"
+ android:icon="@drawable/edit"
app:showAsAction="ifRoom" />
<!-- `android:iconTint` can be used once API >= 26 instead of including a separate drawable for each theme. -->
android:id="@+id/delete_bookmark"
android:title="@string/delete"
android:orderInCategory="50"
- android:icon="?attr/deleteIcon"
+ android:icon="@drawable/delete_enabled"
app:showAsAction="ifRoom" />
- <!-- `android:iconTint` can be used once API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/context_menu_select_all_bookmarks"
android:title="@string/select_all"
android:orderInCategory="60"
- android:icon="?attr/selectAllIcon"
+ android:icon="@drawable/select_all"
app:showAsAction="ifRoom" />
</menu>
\ No newline at end of file
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
- <!-- `android:iconTint` can be used once API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/select_all"
android:title="@string/select_all"
android:orderInCategory="10"
- android:icon="?attr/selectAllIcon"
+ android:icon="@drawable/select_all"
app:showAsAction="ifRoom" />
+ <!-- `android:iconTint` can be used once API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/delete"
android:title="@string/delete"
android:orderInCategory="20"
- android:icon="?attr/deleteIcon"
+ android:icon="@drawable/delete_enabled"
app:showAsAction="ifRoom" />
</menu>
\ No newline at end of file
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
- <!-- `android:iconTint` can be used once the minimum API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/sort"
android:title="@string/sort"
android:orderInCategory="10"
- android:icon="?attr/sortIcon"
+ android:icon="@drawable/sort"
app:showAsAction="always" />
</menu>
\ No newline at end of file
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
- <!-- `android:iconTint` can be used once API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/options_menu_select_all_bookmarks"
android:title="@string/select_all"
android:orderInCategory="10"
- android:icon="?attr/selectAllIcon"
+ android:icon="@drawable/select_all"
app:showAsAction="ifRoom" />
<item
android:id="@+id/delete_domain"
android:title="@string/delete"
android:orderInCategory="10"
- android:icon="?attr/deleteIcon"
+ android:icon="@drawable/delete_enabled"
app:showAsAction="ifRoom" />
</menu>
\ No newline at end of file
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
- <!-- `android:iconTint` can be used once the minimum API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/copy"
android:title="@string/copy_string"
android:orderInCategory="10"
- android:icon="?attr/copyIcon"
+ android:icon="@drawable/copy"
app:showAsAction="always" />
- <!-- `android:iconTint` can be used once the minimum API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/save"
android:title="@string/save"
android:orderInCategory="20"
- android:icon="?attr/saveIcon"
+ android:icon="@drawable/save"
app:showAsAction="ifRoom" />
- <!-- `android:iconTint` can be used once the minimum API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/clear"
android:title="@string/clear"
android:orderInCategory="30"
- android:icon="?attr/closeIcon"
+ android:icon="@drawable/close"
app:showAsAction="ifRoom" />
</menu>
\ No newline at end of file
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
- <!-- `android:iconTint` can be used once API >= 26 instead of including a separate drawable for each theme. -->
+ <!-- `android:iconTint` can be used once API >= 26 instead of including separate drawable files. -->
<item
android:id="@+id/about_view_source"
android:title="@string/about"
android:orderInCategory="10"
- android:icon="?attr/aboutIcon"
+ android:icon="@drawable/about"
app:showAsAction="ifRoom" />
</menu>
\ No newline at end of file
<item
android:id="@+id/about"
android:title="@string/about"
- android:icon="@drawable/about_day"
+ android:icon="@drawable/about"
android:orderInCategory="10" />
<item
<item
android:id="@+id/logcat"
android:title="@string/logcat"
- android:icon="@drawable/bug"
+ android:icon="@drawable/clear_logcat_enabled"
android:orderInCategory="30" />
<item
<item
android:id="@+id/domains"
android:title="@string/domains"
- android:icon="@drawable/domains_day"
+ android:icon="@drawable/domains"
android:orderInCategory="60" />
</group>
<item
android:id="@+id/downloads"
android:title="@string/downloads"
- android:icon="@drawable/downloads_enabled_day"
+ android:icon="@drawable/download"
android:orderInCategory="70" />
<item
android:id="@+id/requests"
android:title="@string/requests"
- android:icon="@drawable/block_ads_enabled_day"
+ android:icon="@drawable/block_ads_enabled"
android:orderInCategory="80" />
</group>
<item
android:id="@+id/open"
android:title="@string/open"
- android:icon="@drawable/proxy_enabled_day"
+ android:icon="@drawable/proxy_enabled"
android:orderInCategory="90" />
<item
<item
android:id="@+id/home"
android:title="@string/home"
- android:icon="@drawable/home_enabled_day"
+ android:icon="@drawable/home"
android:orderInCategory="130" />
</group>
<item
android:id="@+id/clear_and_exit"
android:title="@string/clear_and_exit"
- android:icon="@drawable/download_with_external_app_enabled_day"
+ android:icon="@drawable/download_with_external_app_enabled"
android:orderInCategory="140" />
</group>
</menu>
\ No newline at end of file
<item
android:id="@+id/clear_and_exit"
android:title="@string/clear_and_exit"
- android:icon="@drawable/download_with_external_app_enabled_day"
+ android:icon="@drawable/download_with_external_app_enabled"
android:orderInCategory="10" />
<!-- If a group has an id, a line is drawn above it in the navigation view. -->
<item
android:id="@+id/home"
android:title="@string/home"
- android:icon="@drawable/home_enabled_day"
+ android:icon="@drawable/home"
android:orderInCategory="20" />
<item
<item
android:id="@+id/open"
android:title="@string/open"
- android:icon="@drawable/proxy_enabled_day"
+ android:icon="@drawable/proxy_enabled"
android:orderInCategory="60" />
</group>
<item
android:id="@+id/requests"
android:title="@string/requests"
- android:icon="@drawable/block_ads_enabled_day"
+ android:icon="@drawable/block_ads_enabled"
android:orderInCategory="70" />
<item
android:id="@+id/downloads"
android:title="@string/downloads"
- android:icon="@drawable/downloads_enabled_day"
+ android:icon="@drawable/download"
android:orderInCategory="80" />
</group>
<item
android:id="@+id/domains"
android:title="@string/domains"
- android:icon="@drawable/domains_day"
+ android:icon="@drawable/domains"
android:orderInCategory="90" />
<item
<item
android:id="@+id/logcat"
android:title="@string/logcat"
- android:icon="@drawable/bug"
+ android:icon="@drawable/clear_logcat_enabled"
android:orderInCategory="120" />
</group>
<item
android:id="@+id/about"
android:title="@string/about"
- android:icon="@drawable/about_day"
+ android:icon="@drawable/about"
android:orderInCategory="140" />
</group>
</menu>
\ No newline at end of file
android:orderInCategory="200"
app:showAsAction="never" />
- <!-- `android:iconTint` can be used once the minimum API >= 26 instead of including a separate drawable for each theme. -->
<item
android:id="@+id/bookmarks"
android:title="@string/bookmarks"
android:orderInCategory="300"
- android:icon="?attr/bookmarksAppBarIcon"
+ android:icon="@drawable/bookmarks"
app:showAsAction="never" />
<item
android:title="@string/cookies"
android:orderInCategory="400"
android:checkable="true"
- android:icon="@drawable/cookies_disabled_day"
+ android:icon="@drawable/cookies_disabled"
app:showAsAction="never" />
<item
<item name="redTextColor">@color/red_900</item>
<!-- Tints. -->
- <item name="addTabIconTintColor">@color/white</item>
<item name="domainSettingsIconTintColor">@color/violet_500</item>
<item name="fabIconTintColor">@color/gray_875</item>
<item name="findOnPageIconTintColor">@color/violet_500</item>
<!-- Drawables. -->
<item name="listSelectorDrawable">@drawable/list_selector_night</item>
-
- <!-- Main App Bar Icons. -->
- <item name="bookmarksAppBarIcon">@drawable/bookmarks_night</item>
-
- <!-- Options Icons. -->
- <item name="aboutIcon">@drawable/about_night</item>
- <item name="closeIcon">@drawable/close_night</item>
- <item name="copyIcon">@drawable/copy_night</item>
- <item name="deleteIcon">@drawable/delete_night</item>
- <item name="editIcon">@drawable/edit_night</item>
- <item name="moveToFolderIcon">@drawable/move_to_folder_night</item>
- <item name="saveIcon">@drawable/save_night</item>
- <item name="saveImageIcon">@drawable/images_options_night</item>
- <item name="saveTextIcon">@drawable/save_text_night</item>
- <item name="selectAllIcon">@drawable/select_all_night</item>
- <item name="shareIcon">@drawable/share_night</item>
- <item name="sortIcon">@drawable/sort_night</item>
</style>
<style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" >
<!-- Colors. -->
<item name="colorAccent">@color/violet_500</item>
<item name="colorPrimary">?android:attr/colorBackground</item> <!-- `colorPrimary` sets the background color of the app bar. -->
-
- <!-- Icons. -->
- <item name="appThemeIcon">@drawable/app_theme_night</item>
- <item name="downloadIcon">@drawable/downloads_enabled_night</item>
- <item name="fontSizeIcon">@drawable/font_size_night</item>
- <item name="homepageIcon">@drawable/home_enabled_night</item>
- <item name="searchIcon">@drawable/search_enabled_night</item>
- <item name="userAgentIcon">@drawable/user_agent_night</item>
</style>
<style name="PrivacyBrowserAlertDialog" parent="Theme.AppCompat.DayNight.Dialog.Alert" >
<!-- Colors. -->
<item name="colorAccent">@color/violet_500</item>
-
- <!-- Dialog Icons. -->
- <item name="aboutBlueIcon">@drawable/about_blue_night</item>
- <item name="blockAdsBlueIcon">@drawable/block_ads_enabled_night</item>
- <item name="copyBlueIcon">@drawable/copy_enabled_night</item>
- <item name="domainsBlueIcon">@drawable/domains_night</item>
- <item name="fontSizeBlueIcon">@drawable/font_size_night</item>
- <item name="lockBlueIcon">@drawable/lock_night</item>
- <item name="moveToFolderBlueIcon">@drawable/move_to_folder_blue_night</item>
- <item name="proxyBlueIcon">@drawable/proxy_enabled_night</item>
- <item name="sslCertificateBlueIcon">@drawable/ssl_certificate_enabled_night</item>
</style>
</resources>
\ No newline at end of file
<resources>
<!-- Nicknamed colors. -->
<color name="about_version_blue_text">@color/violet_700</color>
+ <color name="blue_icon">@color/violet_500</color>
<color name="blue_text">@color/violet_500</color>
+ <color name="disabled_icon">@color/gray_500</color>
+ <color name="ghosted_icon">@color/gray_700</color>
+ <color name="icon">@color/white</color>
+ <color name="domain_settings_url_background">@color/dark_blue_40</color>
+ <color name="red_text">@color/red_900</color>
+ <color name="selected_icon_background">@color/gray_700</color>
<!-- Raw colors. -->
<color name="semi_transparent_black">#66000000</color>
<item name="redTextColor">@color/red_900</item>
<!-- Tints. -->
- <item name="addTabIconTintColor">@color/white</item>
<item name="domainSettingsIconTintColor">@color/violet_500</item>
<item name="fabIconTintColor">@color/gray_875</item>
<item name="findOnPageIconTintColor">@color/violet_500</item>
<!-- Drawables. -->
<item name="listSelectorDrawable">@drawable/list_selector_night</item>
-
- <!-- Main App Bar Icons. -->
- <item name="bookmarksAppBarIcon">@drawable/bookmarks_night</item>
-
- <!-- Options Icons. -->
- <item name="aboutIcon">@drawable/about_night</item>
- <item name="closeIcon">@drawable/close_night</item>
- <item name="copyIcon">@drawable/copy_night</item>
- <item name="deleteIcon">@drawable/delete_night</item>
- <item name="editIcon">@drawable/edit_night</item>
- <item name="moveToFolderIcon">@drawable/move_to_folder_night</item>
- <item name="saveIcon">@drawable/save_night</item>
- <item name="saveImageIcon">@drawable/images_options_night</item>
- <item name="saveTextIcon">@drawable/save_text_night</item>
- <item name="selectAllIcon">@drawable/select_all_night</item>
- <item name="shareIcon">@drawable/share_night</item>
- <item name="sortIcon">@drawable/sort_night</item>
</style>
<style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" >
<!-- Colors. -->
<item name="colorAccent">@color/violet_500</item>
<item name="colorPrimary">?android:attr/colorBackground</item> <!-- `colorPrimary` sets the background color of the app bar. -->
-
- <!-- Icons. -->
- <item name="appThemeIcon">@drawable/app_theme_night</item>
- <item name="downloadIcon">@drawable/downloads_enabled_night</item>
- <item name="fontSizeIcon">@drawable/font_size_night</item>
- <item name="homepageIcon">@drawable/home_enabled_night</item>
- <item name="searchIcon">@drawable/search_enabled_night</item>
- <item name="userAgentIcon">@drawable/user_agent_night</item>
</style>
<style name="PrivacyBrowserAlertDialog" parent="Theme.AppCompat.DayNight.Dialog.Alert" >
<!-- Colors. -->
<item name="colorAccent">@color/violet_500</item>
-
- <!-- Dialog Icons. -->
- <item name="aboutBlueIcon">@drawable/about_blue_night</item>
- <item name="blockAdsBlueIcon">@drawable/block_ads_enabled_night</item>
- <item name="copyBlueIcon">@drawable/copy_enabled_night</item>
- <item name="domainsBlueIcon">@drawable/domains_night</item>
- <item name="fontSizeBlueIcon">@drawable/font_size_night</item>
- <item name="lockBlueIcon">@drawable/lock_night</item>
- <item name="moveToFolderBlueIcon">@drawable/move_to_folder_blue_night</item>
- <item name="proxyBlueIcon">@drawable/proxy_enabled_night</item>
- <item name="sslCertificateBlueIcon">@drawable/ssl_certificate_enabled_night</item>
</style>
</resources>
\ No newline at end of file
<item name="redTextColor">@color/red_a700</item>
<!-- Tints. -->
- <item name="addTabIconTintColor">@color/gray_925</item>
<item name="domainSettingsIconTintColor">@color/blue_800</item>
<item name="fabIconTintColor">@color/white</item>
<item name="findOnPageIconTintColor">@color/blue_800</item>
<!-- Drawables. -->
<item name="listSelectorDrawable">@drawable/list_selector_day</item>
-
- <!-- Main App Bar Icons. -->
- <item name="bookmarksAppBarIcon">@drawable/bookmarks_day</item>
-
- <!-- Options Icons. -->
- <item name="aboutIcon">@drawable/about_day</item>
- <item name="closeIcon">@drawable/close_day</item>
- <item name="copyIcon">@drawable/copy_day</item>
- <item name="deleteIcon">@drawable/delete_day</item>
- <item name="editIcon">@drawable/edit_day</item>
- <item name="moveToFolderIcon">@drawable/move_to_folder_day</item>
- <item name="saveIcon">@drawable/save_day</item>
- <item name="saveImageIcon">@drawable/images_options_day</item>
- <item name="saveTextIcon">@drawable/save_text_day</item>
- <item name="selectAllIcon">@drawable/select_all_day</item>
- <item name="shareIcon">@drawable/share_day</item>
- <item name="sortIcon">@drawable/sort_day</item>
</style>
<style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" >
<!-- Colors. -->
<item name="colorAccent">@color/blue_700</item>
<item name="colorPrimary">?android:attr/colorBackground</item> <!-- `colorPrimary` sets the background color of the app bar. -->
-
- <!-- Icons. -->
- <item name="appThemeIcon">@drawable/app_theme_day</item>
- <item name="downloadIcon">@drawable/downloads_enabled_day</item>
- <item name="fontSizeIcon">@drawable/font_size_day</item>
- <item name="homepageIcon">@drawable/home_enabled_day</item>
- <item name="searchIcon">@drawable/search_enabled_day</item>
- <item name="userAgentIcon">@drawable/user_agent_day</item>
</style>
<style name="PrivacyBrowserAlertDialog" parent="Theme.AppCompat.DayNight.Dialog.Alert" >
<!-- Colors. -->
<item name="colorAccent">@color/blue_700</item>
-
- <!-- Dialog Icons. -->
- <item name="aboutBlueIcon">@drawable/about_blue_day</item>
- <item name="blockAdsBlueIcon">@drawable/block_ads_enabled_day</item>
- <item name="copyBlueIcon">@drawable/copy_enabled_day</item>
- <item name="domainsBlueIcon">@drawable/domains_day</item>
- <item name="fontSizeBlueIcon">@drawable/font_size_day</item>
- <item name="lockBlueIcon">@drawable/lock_day</item>
- <item name="moveToFolderBlueIcon">@drawable/move_to_folder_blue_day</item>
- <item name="proxyBlueIcon">@drawable/proxy_enabled_day</item>
- <item name="sslCertificateBlueIcon">@drawable/ssl_certificate_enabled_day</item>
</style>
</resources>
\ No newline at end of file
<attr name="redTextColor" format="color" />
<!-- Tint Colors. -->
- <attr name="addTabIconTintColor" format="color" />
<attr name="domainSettingsIconTintColor" format="color" />
<attr name="fabIconTintColor" format="color" />
<attr name="findOnPageIconTintColor" format="color" />
<!-- Drawables. -->
<attr name="listSelectorDrawable" format="reference" />
-
- <!-- Main App Bar Icons. -->
- <attr name="bookmarksAppBarIcon" format="reference" />
-
- <!-- Options Icons. -->
- <attr name="aboutIcon" format="reference" />
- <attr name="appThemeIcon" format="reference" />
- <attr name="closeIcon" format="reference" />
- <attr name="copyIcon" format="reference" />
- <attr name="deleteIcon" format="reference" />
- <attr name="downloadIcon" format="reference" />
- <attr name="editIcon" format="reference" />
- <attr name="fontSizeIcon" format="reference" />
- <attr name="homepageIcon" format="reference" />
- <attr name="moveToFolderIcon" format="reference" />
- <attr name="saveIcon" format="reference" />
- <attr name="saveImageIcon" format="reference" />
- <attr name="saveTextIcon" format="reference" />
- <attr name="searchIcon" format="reference" />
- <attr name="selectAllIcon" format="reference" />
- <attr name="shareIcon" format="reference" />
- <attr name="sortIcon" format="reference" />
- <attr name="userAgentIcon" format="reference" />
-
- <!-- Dialog Icons. -->
- <attr name="aboutBlueIcon" format="reference" />
- <attr name="blockAdsBlueIcon" format="reference" />
- <attr name="copyBlueIcon" format="reference" />
- <attr name="domainsBlueIcon" format="reference" />
- <attr name="fontSizeBlueIcon" format="reference" />
- <attr name="lockBlueIcon" format="reference" />
- <attr name="moveToFolderBlueIcon" format="reference" />
- <attr name="proxyBlueIcon" format="reference" />
- <attr name="sslCertificateBlueIcon" format="reference" />
</resources>
\ No newline at end of file
<resources>
<!-- Nicknamed colors. -->
<color name="about_version_blue_text">@color/blue_700</color>
+ <color name="blue_icon">@color/blue_800</color>
<color name="blue_text">@color/blue_700</color>
+ <color name="disabled_icon">@color/gray_600</color>
+ <color name="ghosted_icon">@color/gray_425</color>
+ <color name="icon">@color/gray_925</color>
+ <color name="domain_settings_url_background">@color/green_200</color>
+ <color name="red_text">@color/red_a700</color>
+ <color name="selected_icon_background">@color/gray_300</color>
<!-- Raw colors. -->
<color name="semi_transparent_black">#66000000</color>
<item name="redTextColor">@color/red_a700</item>
<!-- Tints. -->
- <item name="addTabIconTintColor">@color/gray_925</item>
<item name="domainSettingsIconTintColor">@color/blue_800</item>
<item name="fabIconTintColor">@color/white</item>
<item name="findOnPageIconTintColor">@color/blue_800</item>
<!-- Drawables. -->
<item name="listSelectorDrawable">@drawable/list_selector_day</item>
-
- <!-- Main App Bar Icons. -->
- <item name="bookmarksAppBarIcon">@drawable/bookmarks_day</item>
-
- <!-- Options Icons. -->
- <item name="aboutIcon">@drawable/about_day</item>
- <item name="closeIcon">@drawable/close_day</item>
- <item name="copyIcon">@drawable/copy_day</item>
- <item name="deleteIcon">@drawable/delete_day</item>
- <item name="editIcon">@drawable/edit_day</item>
- <item name="moveToFolderIcon">@drawable/move_to_folder_day</item>
- <item name="saveIcon">@drawable/save_day</item>
- <item name="saveImageIcon">@drawable/images_options_day</item>
- <item name="saveTextIcon">@drawable/save_text_day</item>
- <item name="selectAllIcon">@drawable/select_all_day</item>
- <item name="shareIcon">@drawable/share_day</item>
- <item name="sortIcon">@drawable/sort_day</item>
</style>
<style name="PrivacyBrowserAppBar" parent="ThemeOverlay.AppCompat.DayNight.ActionBar" >
<!-- Colors. -->
<item name="colorAccent">@color/blue_700</item>
<item name="colorPrimary">?android:attr/colorBackground</item> <!-- `colorPrimary` sets the background color of the app bar. -->
-
- <!-- Icons. -->
- <item name="appThemeIcon">@drawable/app_theme_day</item>
- <item name="downloadIcon">@drawable/downloads_enabled_day</item>
- <item name="fontSizeIcon">@drawable/font_size_day</item>
- <item name="homepageIcon">@drawable/home_enabled_day</item>
- <item name="searchIcon">@drawable/search_enabled_day</item>
- <item name="userAgentIcon">@drawable/user_agent_day</item>
</style>
<style name="PrivacyBrowserAlertDialog" parent="Theme.AppCompat.DayNight.Dialog.Alert" >
<!-- Colors. -->
<item name="colorAccent">@color/blue_700</item>
-
- <!-- Dialog Icons. -->
- <item name="aboutBlueIcon">@drawable/about_blue_day</item>
- <item name="blockAdsBlueIcon">@drawable/block_ads_enabled_day</item>
- <item name="copyBlueIcon">@drawable/copy_enabled_day</item>
- <item name="domainsBlueIcon">@drawable/domains_day</item>
- <item name="fontSizeBlueIcon">@drawable/font_size_day</item>
- <item name="lockBlueIcon">@drawable/lock_day</item>
- <item name="moveToFolderBlueIcon">@drawable/move_to_folder_blue_day</item>
- <item name="proxyBlueIcon">@drawable/proxy_enabled_day</item>
- <item name="sslCertificateBlueIcon">@drawable/ssl_certificate_enabled_day</item>
</style>
</resources>
\ No newline at end of file
android:entries="@array/translated_user_agent_names"
android:entryValues="@array/user_agent_names"
android:defaultValue="@string/user_agent_default_value"
- android:icon="?attr/userAgentIcon" />
+ android:icon="@drawable/user_agent" />
<!-- android:inputType="textVisiblePassword" sets the keyboard to have a dedicated number row.-->
<EditTextPreference
android:entries="@array/search_entries"
android:entryValues="@array/search_entry_values"
android:defaultValue="@string/search_default_value"
- android:icon="?attr/searchIcon" />
+ android:icon="@drawable/search" />
<EditTextPreference
android:key="search_custom_url"
android:title="@string/homepage"
android:defaultValue="@string/homepage_default_value"
android:inputType="textUri"
- android:icon="?attr/homepageIcon" />
+ android:icon="@drawable/home" />
<!-- `android:inputType="number"` currently doesn't work with AndroidX. -->
<EditTextPreference
android:title="@string/font_size_preference"
android:defaultValue="@string/font_size_default_value"
android:inputType="number"
- android:icon="?attr/fontSizeIcon" />
+ android:icon="@drawable/font_size" />
<SwitchPreference
android:key="open_intents_in_new_tab"
android:entries="@array/app_theme_entries"
android:entryValues="@array/app_theme_entry_values"
android:defaultValue="@string/app_theme_default_value"
- android:icon="?attr/appThemeIcon" />
+ android:icon="@drawable/app_theme" />
<ListPreference
android:key="webview_theme"