diff options
author | Owen Lin <owenlin@google.com> | 2009-09-04 14:49:05 +0800 |
---|---|---|
committer | Owen Lin <owenlin@google.com> | 2009-09-07 17:25:07 +0800 |
commit | c0a98e8814a39e6c6b6e87425d9fbd0585009f3f (patch) | |
tree | edc96236f48f4c862ffdaf747c5937048959da7b /src/com/android | |
parent | 562f9230a5fec6ed0d126f62f498424cd47bb11e (diff) | |
download | LegacyCamera-c0a98e8814a39e6c6b6e87425d9fbd0585009f3f.zip LegacyCamera-c0a98e8814a39e6c6b6e87425d9fbd0585009f3f.tar.gz LegacyCamera-c0a98e8814a39e6c6b6e87425d9fbd0585009f3f.tar.bz2 |
Use SEND instenad of SEND_MULTIPLE if only one image/video
is selected.
Change-Id: I5136194cb6cd88cc2224c34e770e714d1dbe4e5a
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/camera/ImageGallery.java | 55 |
1 files changed, 35 insertions, 20 deletions
diff --git a/src/com/android/camera/ImageGallery.java b/src/com/android/camera/ImageGallery.java index 0e749eb..6f0f801 100644 --- a/src/com/android/camera/ImageGallery.java +++ b/src/com/android/camera/ImageGallery.java @@ -1014,26 +1014,41 @@ public class ImageGallery extends Activity implements } private void onShareMultipleClicked() { - Intent intent = new Intent(); - intent.setAction(Intent.ACTION_SEND_MULTIPLE); - - String mimeType = getShareMultipleMimeType(); - intent.setType(mimeType); - ArrayList<Parcelable> list = new ArrayList<Parcelable>(); - for (IImage image : mMultiSelected) { - list.add(image.fullSizeImageUri()); - } - intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, list); - - boolean isImage = ImageManager.isImageMimeType(mimeType); - try { - startActivity(Intent.createChooser(intent, getText( - isImage ? R.string.sendImage : R.string.sendVideo))); - } catch (android.content.ActivityNotFoundException ex) { - Toast.makeText(this, isImage - ? R.string.no_way_to_share_image - : R.string.no_way_to_share_video, - Toast.LENGTH_SHORT).show(); + if (mMultiSelected.size() > 1) { + Intent intent = new Intent(); + intent.setAction(Intent.ACTION_SEND_MULTIPLE); + + String mimeType = getShareMultipleMimeType(); + intent.setType(mimeType); + ArrayList<Parcelable> list = new ArrayList<Parcelable>(); + for (IImage image : mMultiSelected) { + list.add(image.fullSizeImageUri()); + } + intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, list); + try { + startActivity(Intent.createChooser( + intent, getText(R.string.send_media_files))); + } catch (android.content.ActivityNotFoundException ex) { + Toast.makeText(this, R.string.no_way_to_share, + Toast.LENGTH_SHORT).show(); + } + } else if (mMultiSelected.size() == 1) { + IImage image = mMultiSelected.iterator().next(); + Intent intent = new Intent(); + intent.setAction(Intent.ACTION_SEND); + String mimeType = image.getMimeType(); + intent.setType(mimeType); + intent.putExtra(Intent.EXTRA_STREAM, image.fullSizeImageUri()); + boolean isImage = ImageManager.isImage(image); + try { + startActivity(Intent.createChooser(intent, getText( + isImage ? R.string.sendImage : R.string.sendVideo))); + } catch (android.content.ActivityNotFoundException ex) { + Toast.makeText(this, isImage + ? R.string.no_way_to_share_image + : R.string.no_way_to_share_video, + Toast.LENGTH_SHORT).show(); + } } } |