Merge "Open album in filmstrip only if the item exists." into gb-ub-photos-arches
diff --git a/src/com/android/gallery3d/app/AlbumSetPage.java b/src/com/android/gallery3d/app/AlbumSetPage.java
index 7af1d44..c8c3514 100644
--- a/src/com/android/gallery3d/app/AlbumSetPage.java
+++ b/src/com/android/gallery3d/app/AlbumSetPage.java
@@ -37,6 +37,7 @@
import com.android.gallery3d.common.Utils;
import com.android.gallery3d.data.DataManager;
import com.android.gallery3d.data.MediaDetails;
+import com.android.gallery3d.data.MediaItem;
import com.android.gallery3d.data.MediaObject;
import com.android.gallery3d.data.MediaSet;
import com.android.gallery3d.data.Path;
@@ -60,6 +61,7 @@
import com.android.gallery3d.util.HelpUtils;
import java.lang.ref.WeakReference;
+import java.util.ArrayList;
public class AlbumSetPage extends ActivityState implements
SelectionManager.SelectionListener, GalleryActionBar.ClusterRunner,
@@ -211,7 +213,10 @@
private static boolean albumShouldOpenInFilmstrip(MediaSet album) {
int itemCount = album.getMediaItemCount();
- return (album.isCameraRoll() && itemCount > 0) || itemCount == 1;
+ ArrayList<MediaItem> list = (itemCount == 1) ? album.getMediaItem(0, 1) : null;
+ return (album.isCameraRoll() && itemCount > 0)
+ // open in film strip only if there's one item in the album and the item exists
+ || (list != null && !list.isEmpty());
}
WeakReference<Toast> mEmptyAlbumToast = null;