Fixed hamburger menu showing in search select.
Removed hamburger menu from toolbar when returning
to search or select mode.
Test: Manual test, verified that hamburger menu now
only shows when intended (while toolbar is not in search
or select mode).
Bug: 32118186, 32113866, 32096858
Change-Id: Icdbf357386df183b27d8310258ff24e3380dd941
diff --git a/src/com/android/contacts/activities/PeopleActivity.java b/src/com/android/contacts/activities/PeopleActivity.java
index cefbe1f..31fdd6b 100644
--- a/src/com/android/contacts/activities/PeopleActivity.java
+++ b/src/com/android/contacts/activities/PeopleActivity.java
@@ -446,6 +446,11 @@
}
@Override
+ public void onMultiWindowModeChanged(boolean entering) {
+ initializeHomeVisibility();
+ }
+
+ @Override
protected void onResume() {
super.onResume();
@@ -465,6 +470,7 @@
onSyncStateUpdated();
}
initializeFabVisibility();
+ initializeHomeVisibility();
mSaveServiceListener = new SaveServiceListener();
LocalBroadcastManager.getInstance(this).registerReceiver(mSaveServiceListener,
@@ -484,6 +490,15 @@
wasLastFabAnimationScaleIn = !shouldHideFab();
}
+ private void initializeHomeVisibility() {
+ // Remove the navigation icon if we return to the fragment in a search or select state
+ if (getToolbar() != null && (isAllFragmentInSelectionMode()
+ || isAllFragmentInSearchMode() || isGroupsFragmentInSelectionMode()
+ || isGroupsFragmentInSearchMode())) {
+ getToolbar().setNavigationIcon(null);
+ }
+ }
+
private boolean shouldHideFab() {
if (mAllFragment != null && mAllFragment.getActionBarAdapter() == null
|| isInSecondLevel()) {
@@ -699,15 +714,25 @@
}
private boolean isAllFragmentInSelectionMode() {
- return mAllFragment.getActionBarAdapter() != null
+ return mAllFragment != null && mAllFragment.getActionBarAdapter() != null
&& mAllFragment.getActionBarAdapter().isSelectionMode();
}
private boolean isAllFragmentInSearchMode() {
- return mAllFragment.getActionBarAdapter() != null
+ return mAllFragment != null && mAllFragment.getActionBarAdapter() != null
&& mAllFragment.getActionBarAdapter().isSearchMode();
}
+ private boolean isGroupsFragmentInSelectionMode() {
+ return mMembersFragment != null && mMembersFragment.getActionBarAdapter() != null
+ && mMembersFragment.getActionBarAdapter().isSelectionMode();
+ }
+
+ private boolean isGroupsFragmentInSearchMode() {
+ return mMembersFragment != null && mMembersFragment.getActionBarAdapter() != null
+ && mMembersFragment.getActionBarAdapter().isSearchMode();
+ }
+
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);