X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Factivities%2FDomainsActivity.java;h=e98b5fc13cbdd4e8fbe110681505a0ed87056fa6;hb=d241bba6d474908fdcf398f5508652fddc18cc67;hp=e748a7966843415c7d3301cf092d787138efd198;hpb=557c44e588c9c881a5a1573667a34d0355cde834;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/activities/DomainsActivity.java b/app/src/main/java/com/stoutner/privacybrowser/activities/DomainsActivity.java index e748a796..e98b5fc1 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/activities/DomainsActivity.java +++ b/app/src/main/java/com/stoutner/privacybrowser/activities/DomainsActivity.java @@ -1,5 +1,5 @@ /* - * Copyright 2017 Soren Stoutner . + * Copyright © 2017 Soren Stoutner . * * This file is part of Privacy Browser . * @@ -71,15 +71,25 @@ public class DomainsActivity extends AppCompatActivity implements AddDomainDialo @Override protected void onCreate(Bundle savedInstanceState) { + // Set the activity theme. + if (MainWebViewActivity.darkTheme) { + setTheme(R.style.PrivacyBrowserDark_SecondaryActivity); + } else { + setTheme(R.style.PrivacyBrowserLight_SecondaryActivity); + } + + // Run the default commands. super.onCreate(savedInstanceState); + + // Set the content view. setContentView(R.layout.domains_coordinatorlayout); // Get a handle for the context. context = this; // We need to use the `SupportActionBar` from `android.support.v7.app.ActionBar` until the minimum API is >= 21. - final Toolbar bookmarksAppBar = (Toolbar) findViewById(R.id.domains_toolbar); - setSupportActionBar(bookmarksAppBar); + final Toolbar domainsAppBar = (Toolbar) findViewById(R.id.domains_toolbar); + setSupportActionBar(domainsAppBar); // Display the home arrow on `SupportActionBar`. ActionBar appBar = getSupportActionBar(); @@ -90,7 +100,7 @@ public class DomainsActivity extends AppCompatActivity implements AddDomainDialo // The `0` specifies the database version, but that is ignored and set instead using a constant in `DomainsDatabaseHelper`. domainsDatabaseHelper = new DomainsDatabaseHelper(this, null, null, 0); - // Determine if we are in two pane mode. `domains_settings_linearlayout` is only populated if two panes are present. + // Determine if we are in two pane mode. `domains_settings_scrollview` is only populated if two panes are present. twoPaneMode = ((findViewById(R.id.domain_settings_scrollview)) != null); // Initialize `domainsListView`. @@ -104,10 +114,6 @@ public class DomainsActivity extends AppCompatActivity implements AddDomainDialo // Display the Domain Settings. if (twoPaneMode) { // Display a fragment in two paned mode. - // Enable the options `MenuItems`. - saveMenuItem.setEnabled(true); - deleteMenuItem.setEnabled(true); - // Store `databaseId` in `argumentsBundle`. Bundle argumentsBundle = new Bundle(); argumentsBundle.putInt(DomainSettingsFragment.DATABASE_ID, databaseId); @@ -118,11 +124,6 @@ public class DomainsActivity extends AppCompatActivity implements AddDomainDialo // Display `domainSettingsFragment`. getSupportFragmentManager().beginTransaction().replace(R.id.domain_settings_scrollview, domainSettingsFragment).commit(); - - // Enable the options `MenuItems`. - deleteMenuItem.setEnabled(true); - deleteMenuItem.setIcon(R.drawable.delete); - saveMenuItem.setEnabled(true); } else { // Load the second activity on smaller screens. // Create `domainSettingsActivityIntent` with the `databaseId`. Intent domainSettingsActivityIntent = new Intent(context, DomainSettingsActivity.class); @@ -187,20 +188,22 @@ public class DomainsActivity extends AppCompatActivity implements AddDomainDialo Spinner userAgentSpinner = (Spinner) findViewById(R.id.domain_settings_user_agent_spinner); EditText customUserAgentEditText = (EditText) findViewById(R.id.domain_settings_custom_user_agent_edittext); Spinner fontSizeSpinner = (Spinner) findViewById(R.id.domain_settings_font_size_spinner); + Spinner displayWebpageImagesSpinner = (Spinner) findViewById(R.id.domain_settings_display_webpage_images_spinner); // Extract the data for the domain settings. String domainNameString = domainNameEditText.getText().toString(); - boolean javaScriptEnabled = javaScriptEnabledSwitch.isChecked(); - boolean firstPartyCookiesEnabled = firstPartyCookiesEnabledSwitch.isChecked(); - boolean thirdPartyCookiesEnabled = thirdPartyCookiesEnabledSwitch.isChecked(); - boolean domStorageEnabledEnabled = domStorageEnabledSwitch.isChecked(); - boolean formDataEnabled = formDataEnabledSwitch.isChecked(); - int userAgentPosition = userAgentSpinner.getSelectedItemPosition(); - int fontSizePosition = fontSizeSpinner.getSelectedItemPosition(); + boolean javaScriptEnabledBoolean = javaScriptEnabledSwitch.isChecked(); + boolean firstPartyCookiesEnabledBoolean = firstPartyCookiesEnabledSwitch.isChecked(); + boolean thirdPartyCookiesEnabledBoolean = thirdPartyCookiesEnabledSwitch.isChecked(); + boolean domStorageEnabledEnabledBoolean = domStorageEnabledSwitch.isChecked(); + boolean formDataEnabledBoolean = formDataEnabledSwitch.isChecked(); + int userAgentPositionInt = userAgentSpinner.getSelectedItemPosition(); + int fontSizePositionInt = fontSizeSpinner.getSelectedItemPosition(); + int displayWebpageImagesInt = displayWebpageImagesSpinner.getSelectedItemPosition(); // Get the data for the `Spinners` from the entry values string arrays. - String userAgentString = getResources().getStringArray(R.array.user_agent_entry_values)[userAgentPosition]; - int fontSizeInt = Integer.parseInt(getResources().getStringArray(R.array.default_font_size_entry_values)[fontSizePosition]); + String userAgentString = getResources().getStringArray(R.array.user_agent_entry_values)[userAgentPositionInt]; + int fontSizeInt = Integer.parseInt(getResources().getStringArray(R.array.default_font_size_entry_values)[fontSizePositionInt]); // Check to see if we are using a custom user agent. if (userAgentString.equals("Custom user agent")) { @@ -209,7 +212,8 @@ public class DomainsActivity extends AppCompatActivity implements AddDomainDialo } // Save the domain settings. - domainsDatabaseHelper.saveDomain(databaseId, domainNameString, javaScriptEnabled, firstPartyCookiesEnabled, thirdPartyCookiesEnabled, domStorageEnabledEnabled, formDataEnabled, userAgentString, fontSizeInt); + domainsDatabaseHelper.saveDomain(databaseId, domainNameString, javaScriptEnabledBoolean, firstPartyCookiesEnabledBoolean, thirdPartyCookiesEnabledBoolean, domStorageEnabledEnabledBoolean, formDataEnabledBoolean, userAgentString, fontSizeInt, + displayWebpageImagesInt); // Display a `Snackbar`. Snackbar.make(domainsListView, R.string.domain_settings_saved, Snackbar.LENGTH_SHORT).show(); @@ -306,7 +310,7 @@ public class DomainsActivity extends AppCompatActivity implements AddDomainDialo // Enable the options `MenuItems`. deleteMenuItem.setEnabled(true); - deleteMenuItem.setIcon(R.drawable.delete); + deleteMenuItem.setIcon(R.drawable.delete_light); saveMenuItem.setEnabled(true); break; @@ -396,8 +400,14 @@ public class DomainsActivity extends AppCompatActivity implements AddDomainDialo // Enable the options `MenuItems`. deleteMenuItem.setEnabled(true); - deleteMenuItem.setIcon(R.drawable.delete); saveMenuItem.setEnabled(true); + + // Set the delete icon according to the theme. + if (MainWebViewActivity.darkTheme) { + deleteMenuItem.setIcon(R.drawable.delete_dark); + } else { + deleteMenuItem.setIcon(R.drawable.delete_light); + } } else { // Disable the options `MenuItems`. deleteMenuItem.setEnabled(false);