diff options
author | ByteHamster <info@bytehamster.com> | 2020-07-17 11:04:21 +0200 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2020-07-17 11:04:21 +0200 |
commit | 8480db8dc12ca1f625a5487b45783f16e2fcf49f (patch) | |
tree | 566ff52b52b18c219861681753d4f837e645c385 /app/src/main | |
parent | 6d4af947a570517d0275175dfac8f126692cd6e2 (diff) | |
download | AntennaPod-8480db8dc12ca1f625a5487b45783f16e2fcf49f.zip |
Do not display navigation icon if unneccessary
Diffstat (limited to 'app/src/main')
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java | 10 | ||||
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/view/ToolbarIconTintManager.java | 8 |
2 files changed, 15 insertions, 3 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java index fea9e82eb..04d31d096 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java @@ -31,6 +31,7 @@ import de.danoeh.antennapod.R; import de.danoeh.antennapod.core.event.MessageEvent; import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.core.util.StorageUtils; +import de.danoeh.antennapod.core.util.ThemeUtils; import de.danoeh.antennapod.core.util.download.AutoUpdateManager; import de.danoeh.antennapod.dialog.RatingDialog; import de.danoeh.antennapod.fragment.AddFeedFragment; @@ -98,8 +99,11 @@ public class MainActivity extends CastEnabledActivity { final FragmentManager fm = getSupportFragmentManager(); fm.addOnBackStackChangedListener(() -> { + boolean showArrow = fm.getBackStackEntryCount() != 0; if (drawerToggle != null) { // Tablet layout does not have a drawer - drawerToggle.setDrawerIndicatorEnabled(fm.getBackStackEntryCount() == 0); + drawerToggle.setDrawerIndicatorEnabled(!showArrow); + } else if (getActionBar() != null) { + getActionBar().setDisplayHomeAsUpEnabled(showArrow); } }); @@ -161,6 +165,10 @@ public class MainActivity extends CastEnabledActivity { drawerLayout.addDrawerListener(drawerToggle); drawerToggle.syncState(); drawerToggle.setDrawerIndicatorEnabled(getSupportFragmentManager().getBackStackEntryCount() == 0); + } else if (getSupportFragmentManager().getBackStackEntryCount() == 0) { + toolbar.setNavigationIcon(null); + } else { + toolbar.setNavigationIcon(ThemeUtils.getDrawableFromAttr(this, R.attr.homeAsUpIndicator)); } super.setSupportActionBar(toolbar); } 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..163100fff 100644 --- a/app/src/main/java/de/danoeh/antennapod/view/ToolbarIconTintManager.java +++ b/app/src/main/java/de/danoeh/antennapod/view/ToolbarIconTintManager.java @@ -33,11 +33,15 @@ 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); + if (toolbar.getNavigationIcon() != null) { // Tablets do not show a navigation icon + toolbar.getNavigationIcon().setColorFilter(0xffffffff, PorterDuff.Mode.SRC_ATOP); + } toolbar.getOverflowIcon().setColorFilter(0xffffffff, PorterDuff.Mode.SRC_ATOP); } else { doTint(context); - toolbar.getNavigationIcon().clearColorFilter(); + if (toolbar.getNavigationIcon() != null) { // Tablets do not show a navigation icon + toolbar.getNavigationIcon().clearColorFilter(); + } toolbar.getOverflowIcon().clearColorFilter(); } } |