Fix 5267234 com.google.android.gallery3d: java.lang.IllegalArgumentException:
The stateview to be finished is not at the top of the stack:

setNavigationMode triggers recursive tabs onSelected events.

Change-Id: Id9f58b4a73c4d7836b62e33e2f9b3676ba3f95c2
diff --git a/src/com/android/gallery3d/app/GalleryActionBar.java b/src/com/android/gallery3d/app/GalleryActionBar.java
index efa5fa5..3df5e91 100644
--- a/src/com/android/gallery3d/app/GalleryActionBar.java
+++ b/src/com/android/gallery3d/app/GalleryActionBar.java
@@ -159,13 +159,16 @@
 
     public void showClusterTabs(ClusterRunner runner) {
         Log.v(TAG, "showClusterTabs: runner=" + runner);
+        // setNavigationMode will trigger onTabSelected, so we should avoid
+        // triggering any callback here
+        mClusterRunner = null;
         mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
         mClusterRunner = runner;
     }
 
     public void hideClusterTabs() {
-        mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
         mClusterRunner = null;
+        mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
         Log.v(TAG, "hideClusterTabs: runner=" + mClusterRunner);
     }