diff --git a/app/src/main/java/org/schabi/newpipe/fragments/local/BaseLocalListFragment.java b/app/src/main/java/org/schabi/newpipe/fragments/local/BaseLocalListFragment.java index c0c4362eb..53786d2ac 100644 --- a/app/src/main/java/org/schabi/newpipe/fragments/local/BaseLocalListFragment.java +++ b/app/src/main/java/org/schabi/newpipe/fragments/local/BaseLocalListFragment.java @@ -86,19 +86,30 @@ public abstract class BaseLocalListFragment extends BaseStateFragment // Lifecycle - Menu //////////////////////////////////////////////////////////////////////////*/ + /** Determines if the fragment is part of the main fragment view pager. + * If so, then this method must be overriden to return true + * in order to show the hamburger menu. */ + protected boolean isPartOfFrontPager() { + return false; + } + @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { + super.onCreateOptionsMenu(menu, inflater); if (DEBUG) Log.d(TAG, "onCreateOptionsMenu() called with: menu = [" + menu + "], inflater = [" + inflater + "]"); - super.onCreateOptionsMenu(menu, inflater); - ActionBar supportActionBar = activity.getSupportActionBar(); - if (supportActionBar != null) { - supportActionBar.setDisplayShowTitleEnabled(true); - if(useAsFrontPage) { - supportActionBar.setDisplayHomeAsUpEnabled(false); - } else { - supportActionBar.setDisplayHomeAsUpEnabled(true); - } + + final ActionBar supportActionBar = activity.getSupportActionBar(); + if (supportActionBar == null) return; + + supportActionBar.setDisplayShowTitleEnabled(true); + + // Show up arrow icon if the fragment is not used as front page or part of the front pager + if (!useAsFrontPage && !isPartOfFrontPager()) { + // If set true, an up arrow icon will be displayed. + // If set false, no icon will be shown. + // If unset, show hamburger menu + supportActionBar.setDisplayHomeAsUpEnabled(true); } } diff --git a/app/src/main/java/org/schabi/newpipe/fragments/local/bookmark/BookmarkFragment.java b/app/src/main/java/org/schabi/newpipe/fragments/local/bookmark/BookmarkFragment.java index 2aa648fa9..a2e00429b 100644 --- a/app/src/main/java/org/schabi/newpipe/fragments/local/bookmark/BookmarkFragment.java +++ b/app/src/main/java/org/schabi/newpipe/fragments/local/bookmark/BookmarkFragment.java @@ -148,6 +148,15 @@ public final class BookmarkFragment }); } + /*////////////////////////////////////////////////////////////////////////// + // Fragment Lifecycle - Menu + //////////////////////////////////////////////////////////////////////////*/ + + @Override + protected boolean isPartOfFrontPager() { + return true; + } + /////////////////////////////////////////////////////////////////////////// // Fragment LifeCycle - Loading ///////////////////////////////////////////////////////////////////////////