Merge "Fixed hamburger menu showing in search select." into ub-contactsdialer-h-dev
diff --git a/src/com/android/contacts/activities/PeopleActivity.java b/src/com/android/contacts/activities/PeopleActivity.java
index 768f18e..b26a52f 100644
--- a/src/com/android/contacts/activities/PeopleActivity.java
+++ b/src/com/android/contacts/activities/PeopleActivity.java
@@ -445,6 +445,11 @@
     }
 
     @Override
+    public void onMultiWindowModeChanged(boolean entering) {
+        initializeHomeVisibility();
+    }
+
+    @Override
     protected void onResume() {
         super.onResume();
 
@@ -464,6 +469,7 @@
             onSyncStateUpdated();
         }
         initializeFabVisibility();
+        initializeHomeVisibility();
 
         mSaveServiceListener = new SaveServiceListener();
         LocalBroadcastManager.getInstance(this).registerReceiver(mSaveServiceListener,
@@ -483,6 +489,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()) {
@@ -698,15 +713,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);