OSDN Git Service

Fix extra gray item in secure album.
authorGeorge Mount <mount@google.com>
Thu, 1 Nov 2012 17:40:22 +0000 (10:40 -0700)
committerGeorge Mount <mount@google.com>
Thu, 1 Nov 2012 18:51:20 +0000 (11:51 -0700)
 Bug 7454444

Change-Id: I83f40e7e74f658a7b9ada148932a231ef8c31f73

src/com/android/gallery3d/data/SecureAlbum.java

index 0a8c5a8..204f848 100644 (file)
@@ -64,17 +64,22 @@ public class SecureAlbum extends MediaSet implements StitchingChangeListener {
     }
 
     public void addMediaItem(boolean isVideo, int id) {
+        Path pathBase;
         if (isVideo) {
-            mAllItems.add(Path.fromString("/local/video/item/" + id));
+            pathBase = LocalVideo.ITEM_PATH;
             mMinVideoId = Math.min(mMinVideoId, id);
             mMaxVideoId = Math.max(mMaxVideoId, id);
         } else {
-            mAllItems.add(Path.fromString("/local/image/item/" + id));
+            pathBase = LocalImage.ITEM_PATH;
             mMinImageId = Math.min(mMinImageId, id);
             mMaxImageId = Math.max(mMaxImageId, id);
         }
-        mAllItemTypes.add(isVideo);
-        mNotifier.fakeChange();
+        Path path = pathBase.getChild(id);
+        if (!mAllItems.contains(path)) {
+            mAllItems.add(path);
+            mAllItemTypes.add(isVideo);
+            mNotifier.fakeChange();
+        }
     }
 
     // The sequence is stitching items, local media items, and unlock image.