X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserAndroid.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Fadapters%2FRequestsArrayAdapter.java;h=5bb6b0a4033bae5ce07511977532eaa2adada42a;hp=e0c58cea85e79b8870fd5297e01b6a767b793011;hb=3d167d1ec7d0cef1ef032f20859bb0de8ddb01cf;hpb=012e5595c82d6e8d0b8a46f1ef18a02a56341182 diff --git a/app/src/main/java/com/stoutner/privacybrowser/adapters/RequestsArrayAdapter.java b/app/src/main/java/com/stoutner/privacybrowser/adapters/RequestsArrayAdapter.java index e0c58cea..5bb6b0a4 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/adapters/RequestsArrayAdapter.java +++ b/app/src/main/java/com/stoutner/privacybrowser/adapters/RequestsArrayAdapter.java @@ -1,5 +1,5 @@ /* - * Copyright © 2018 Soren Stoutner . + * Copyright © 2018-2019 Soren Stoutner . * * This file is part of Privacy Browser . * @@ -20,7 +20,8 @@ package com.stoutner.privacybrowser.adapters; import android.content.Context; -import android.support.annotation.NonNull; +import android.content.SharedPreferences; +import android.preference.PreferenceManager; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -28,8 +29,10 @@ import android.widget.ArrayAdapter; import android.widget.LinearLayout; import android.widget.TextView; +import androidx.annotation.NonNull; + import com.stoutner.privacybrowser.R; -import com.stoutner.privacybrowser.activities.MainWebViewActivity; +import com.stoutner.privacybrowser.helpers.BlockListHelper; import java.util.List; @@ -42,6 +45,12 @@ public class RequestsArrayAdapter extends ArrayAdapter { @Override @NonNull public View getView(int position, View view, @NonNull ViewGroup parent) { + // Get a handle for the shared preferences. + SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getContext()); + + // Get the theme preferences. + boolean darkTheme = sharedPreferences.getBoolean("dark_theme", false); + // Get a handle for the context. Context context = getContext(); @@ -52,7 +61,7 @@ public class RequestsArrayAdapter extends ArrayAdapter { // Get handles for the views. LinearLayout linearLayout = view.findViewById(R.id.request_item_linearlayout); - TextView actionTextView = view.findViewById(R.id.request_item_action); + TextView dispositionTextView = view.findViewById(R.id.request_item_disposition); TextView urlTextView = view.findViewById(R.id.request_item_url); // Get the string array for this entry. @@ -65,44 +74,59 @@ public class RequestsArrayAdapter extends ArrayAdapter { int id = position + 1; // Set the action text and the background color. - switch (Integer.valueOf(entryStringArray[0])) { - case MainWebViewActivity.REQUEST_DEFAULT: + switch (entryStringArray[0]) { + case BlockListHelper.REQUEST_DEFAULT: // Create the disposition string. String requestDefault = id + ". " + context.getResources().getString(R.string.allowed); // Set the disposition text. - actionTextView.setText(requestDefault); + dispositionTextView.setText(requestDefault); // Set the background color. linearLayout.setBackgroundColor(context.getResources().getColor(R.color.transparent)); break; - case MainWebViewActivity.REQUEST_ALLOWED: + case BlockListHelper.REQUEST_ALLOWED: // Create the disposition string. String requestAllowed = id + ". " + context.getResources().getString(R.string.allowed); // Set the disposition text. - actionTextView.setText(requestAllowed); + dispositionTextView.setText(requestAllowed); // Set the background color. - if (MainWebViewActivity.darkTheme) { + if (darkTheme) { linearLayout.setBackgroundColor(context.getResources().getColor(R.color.blue_700_50)); } else { linearLayout.setBackgroundColor(context.getResources().getColor(R.color.blue_100)); } break; + case BlockListHelper.REQUEST_THIRD_PARTY: + // Create the disposition string. + String requestThirdParty = id + ". " + context.getResources().getString(R.string.blocked); + + // Set the disposition text. + dispositionTextView.setText(requestThirdParty); + + // Set the background color. + if (darkTheme) { + linearLayout.setBackgroundColor(context.getResources().getColor(R.color.yellow_700_50)); + } else { + linearLayout.setBackgroundColor(context.getResources().getColor(R.color.yellow_100)); + } + break; + - case MainWebViewActivity.REQUEST_BLOCKED: + case BlockListHelper.REQUEST_BLOCKED: // Create the disposition string. String requestBlocked = id + ". " + context.getResources().getString(R.string.blocked); // Set the disposition text. - actionTextView.setText(requestBlocked); + dispositionTextView.setText(requestBlocked); // Set the background color. - if (MainWebViewActivity.darkTheme) { - linearLayout.setBackgroundColor(context.getResources().getColor(R.color.red_700_50)); + if (darkTheme) { + linearLayout.setBackgroundColor(context.getResources().getColor(R.color.red_700_40)); } else { linearLayout.setBackgroundColor(context.getResources().getColor(R.color.red_100)); } @@ -113,15 +137,15 @@ public class RequestsArrayAdapter extends ArrayAdapter { urlTextView.setText(entryStringArray[1]); // Set the text color. For some unexplained reason, `android:textColor="?android:textColorPrimary"` doesn't work in the layout file. Probably some bug relating to array adapters. - if (MainWebViewActivity.darkTheme) { - actionTextView.setTextColor(context.getResources().getColor(R.color.gray_200)); + if (darkTheme) { + dispositionTextView.setTextColor(context.getResources().getColor(R.color.gray_200)); urlTextView.setTextColor(context.getResources().getColor(R.color.gray_200)); } else { - actionTextView.setTextColor(context.getResources().getColor(R.color.black)); + dispositionTextView.setTextColor(context.getResources().getColor(R.color.black)); urlTextView.setTextColor(context.getResources().getColor(R.color.black)); } // Return the modified view. return view; } -} +} \ No newline at end of file