diff options
author | Chih-Chung Chang <chihchung@google.com> | 2012-06-26 10:45:02 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2012-06-26 10:45:02 -0700 |
commit | 6de536dbc81345e1a19355fb9f3ad0aa2ea2ab8a (patch) | |
tree | a0d7a8d0171761c7ef93831074ff7afa7b707783 /src | |
parent | b26c4acfe4e18446a02bc49812f101d1669a92fa (diff) | |
parent | eb55e15ba4989e172ccfe9b7eeb6768c9020a514 (diff) | |
download | android_packages_apps_Snap-6de536dbc81345e1a19355fb9f3ad0aa2ea2ab8a.tar.gz android_packages_apps_Snap-6de536dbc81345e1a19355fb9f3ad0aa2ea2ab8a.tar.bz2 android_packages_apps_Snap-6de536dbc81345e1a19355fb9f3ad0aa2ea2ab8a.zip |
am c7e89dae: Update thumbnail if a picture is deleted in background.
* commit 'c7e89daeb178a895de211c411d09a822de52e4e9':
Update thumbnail if a picture is deleted in background.
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/gallery3d/data/DataManager.java | 14 | ||||
-rw-r--r-- | src/com/android/gallery3d/data/LocalAlbum.java | 1 | ||||
-rw-r--r-- | src/com/android/gallery3d/data/LocalImage.java | 1 | ||||
-rw-r--r-- | src/com/android/gallery3d/data/LocalVideo.java | 1 |
4 files changed, 17 insertions, 0 deletions
diff --git a/src/com/android/gallery3d/data/DataManager.java b/src/com/android/gallery3d/data/DataManager.java index 0eb6af55e..85513279c 100644 --- a/src/com/android/gallery3d/data/DataManager.java +++ b/src/com/android/gallery3d/data/DataManager.java @@ -16,9 +16,11 @@ package com.android.gallery3d.data; +import android.content.Intent; import android.database.ContentObserver; import android.net.Uri; import android.os.Handler; +import android.support.v4.content.LocalBroadcastManager; import com.android.gallery3d.app.GalleryApp; import com.android.gallery3d.common.Utils; @@ -78,6 +80,9 @@ public class DataManager { private static final String TOP_LOCAL_VIDEO_SET_PATH = "/local/video"; + private static final String ACTION_DELETE_PICTURE = + "com.android.gallery3d.action.DELETE_PICTURE"; + public static final Comparator<MediaItem> sDateTakenComparator = new DateTakenComparator(); @@ -305,6 +310,15 @@ public class DataManager { } } + // Sends a local broadcast if a local image or video is deleted. This is + // used to update the thumbnail shown in the camera app. + public void broadcastLocalDeletion() { + LocalBroadcastManager manager = LocalBroadcastManager.getInstance( + mApplication.getAndroidContext()); + Intent intent = new Intent(ACTION_DELETE_PICTURE); + manager.sendBroadcast(intent); + } + private static class NotifyBroker extends ContentObserver { private WeakHashMap<ChangeNotifier, Object> mNotifiers = new WeakHashMap<ChangeNotifier, Object>(); diff --git a/src/com/android/gallery3d/data/LocalAlbum.java b/src/com/android/gallery3d/data/LocalAlbum.java index 117dbb6fa..f45eebfd8 100644 --- a/src/com/android/gallery3d/data/LocalAlbum.java +++ b/src/com/android/gallery3d/data/LocalAlbum.java @@ -260,6 +260,7 @@ public class LocalAlbum extends MediaSet { GalleryUtils.assertNotInRenderThread(); mResolver.delete(mBaseUri, mWhereClause, new String[]{String.valueOf(mBucketId)}); + mApplication.getDataManager().broadcastLocalDeletion(); } @Override diff --git a/src/com/android/gallery3d/data/LocalImage.java b/src/com/android/gallery3d/data/LocalImage.java index aa27c6f42..c3095a069 100644 --- a/src/com/android/gallery3d/data/LocalImage.java +++ b/src/com/android/gallery3d/data/LocalImage.java @@ -231,6 +231,7 @@ public class LocalImage extends LocalMediaItem { Uri baseUri = Images.Media.EXTERNAL_CONTENT_URI; mApplication.getContentResolver().delete(baseUri, "_id=?", new String[]{String.valueOf(id)}); + mApplication.getDataManager().broadcastLocalDeletion(); } private static String getExifOrientation(int orientation) { diff --git a/src/com/android/gallery3d/data/LocalVideo.java b/src/com/android/gallery3d/data/LocalVideo.java index 4e888a573..5ccc21b93 100644 --- a/src/com/android/gallery3d/data/LocalVideo.java +++ b/src/com/android/gallery3d/data/LocalVideo.java @@ -187,6 +187,7 @@ public class LocalVideo extends LocalMediaItem { Uri baseUri = Video.Media.EXTERNAL_CONTENT_URI; mApplication.getContentResolver().delete(baseUri, "_id=?", new String[]{String.valueOf(id)}); + mApplication.getDataManager().broadcastLocalDeletion(); } @Override |