summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2020-10-13 22:49:06 +0200
committerByteHamster <info@bytehamster.com>2020-10-14 17:59:01 +0200
commit959f29c8b8cd26f7f9ddc774ce7c27e1c872cd39 (patch)
treefaeb4c8e1bf3907b5edab71d59352609c7b7d481
parent28543466355cbfa1efb1f789d98840a7e9daa500 (diff)
downloadAntennaPod-959f29c8b8cd26f7f9ddc774ce7c27e1c872cd39.zip
Ensure that search query is readable
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java9
-rw-r--r--app/src/main/java/de/danoeh/antennapod/menuhandler/MenuItemUtils.java2
-rw-r--r--app/src/main/java/de/danoeh/antennapod/view/ToolbarIconTintManager.java20
3 files changed, 23 insertions, 8 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java
index 67433166c..ab9a867d0 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/FeedItemlistFragment.java
@@ -247,7 +247,12 @@ public class FeedItemlistFragment extends Fragment implements AdapterView.OnItem
@Override
public boolean onOptionsItemSelected(MenuItem item) {
- if (!super.onOptionsItemSelected(item)) {
+ if (item.getItemId() == R.id.action_search) {
+ item.getActionView().post(() -> iconTintManager.updateTint());
+ }
+ if (super.onOptionsItemSelected(item)) {
+ return true;
+ } else {
if (feed == null) {
((MainActivity) getActivity()).showSnackbarAbovePlayer(
R.string.please_wait_for_data, Toast.LENGTH_LONG);
@@ -298,8 +303,6 @@ public class FeedItemlistFragment extends Fragment implements AdapterView.OnItem
DownloadRequestErrorDialogCreator.newRequestErrorDialog(getActivity(), e.getMessage());
return true;
}
- } else {
- return true;
}
}
diff --git a/app/src/main/java/de/danoeh/antennapod/menuhandler/MenuItemUtils.java b/app/src/main/java/de/danoeh/antennapod/menuhandler/MenuItemUtils.java
index 76091327d..ff98ac609 100644
--- a/app/src/main/java/de/danoeh/antennapod/menuhandler/MenuItemUtils.java
+++ b/app/src/main/java/de/danoeh/antennapod/menuhandler/MenuItemUtils.java
@@ -8,6 +8,7 @@ import androidx.appcompat.widget.SearchView;
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.activity.MainActivity;
import de.danoeh.antennapod.core.preferences.UserPreferences;
+import de.danoeh.antennapod.core.util.ThemeUtils;
import de.danoeh.antennapod.fragment.SearchFragment;
/**
@@ -33,6 +34,7 @@ public class MenuItemUtils extends de.danoeh.antennapod.core.menuhandler.MenuIte
public static void setupSearchItem(Menu menu, MainActivity activity, long feedId) {
MenuItem searchItem = menu.findItem(R.id.action_search);
final SearchView sv = (SearchView) searchItem.getActionView();
+ sv.setBackgroundColor(ThemeUtils.getColorFromAttr(activity, android.R.attr.windowBackground));
sv.setQueryHint(activity.getString(R.string.search_label));
sv.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
diff --git a/app/src/main/java/de/danoeh/antennapod/view/ToolbarIconTintManager.java b/app/src/main/java/de/danoeh/antennapod/view/ToolbarIconTintManager.java
index dcf8ff20d..37d8db03e 100644
--- a/app/src/main/java/de/danoeh/antennapod/view/ToolbarIconTintManager.java
+++ b/app/src/main/java/de/danoeh/antennapod/view/ToolbarIconTintManager.java
@@ -1,7 +1,9 @@
package de.danoeh.antennapod.view;
import android.content.Context;
-import android.graphics.PorterDuff;
+import android.graphics.PorterDuff.Mode;
+import android.graphics.PorterDuffColorFilter;
+import android.graphics.drawable.Drawable;
import android.view.ContextThemeWrapper;
import androidx.appcompat.widget.Toolbar;
import androidx.core.view.ViewCompat;
@@ -33,12 +35,20 @@ public abstract class ToolbarIconTintManager implements AppBarLayout.OnOffsetCha
public void updateTint() {
if (isTinted) {
doTint(new ContextThemeWrapper(context, R.style.Theme_AntennaPod_Dark));
- toolbar.getNavigationIcon().setColorFilter(0xffffffff, PorterDuff.Mode.SRC_ATOP);
- toolbar.getOverflowIcon().setColorFilter(0xffffffff, PorterDuff.Mode.SRC_ATOP);
+ safeSetColorFilter(toolbar.getNavigationIcon(), new PorterDuffColorFilter(0xffffffff, Mode.SRC_ATOP));
+ safeSetColorFilter(toolbar.getOverflowIcon(), new PorterDuffColorFilter(0xffffffff, Mode.SRC_ATOP));
+ safeSetColorFilter(toolbar.getCollapseIcon(), new PorterDuffColorFilter(0xffffffff, Mode.SRC_ATOP));
} else {
doTint(context);
- toolbar.getNavigationIcon().clearColorFilter();
- toolbar.getOverflowIcon().clearColorFilter();
+ safeSetColorFilter(toolbar.getNavigationIcon(), null);
+ safeSetColorFilter(toolbar.getOverflowIcon(), null);
+ safeSetColorFilter(toolbar.getCollapseIcon(), null);
+ }
+ }
+
+ private void safeSetColorFilter(Drawable icon, PorterDuffColorFilter filter) {
+ if (icon != null) {
+ icon.setColorFilter(filter);
}
}