Enable multiselect delete.
diff --git a/src/com/android/camera/MenuHelper.java b/src/com/android/camera/MenuHelper.java
index 35f0028..9515cbd 100644
--- a/src/com/android/camera/MenuHelper.java
+++ b/src/com/android/camera/MenuHelper.java
@@ -24,6 +24,7 @@
 import android.content.Context;
 import android.content.DialogInterface;
 import android.content.Intent;
+import android.content.DialogInterface.OnClickListener;
 import android.location.Address;
 import android.location.Geocoder;
 import android.media.MediaMetadataRetriever;
@@ -31,6 +32,7 @@
 import android.os.Environment;
 import android.os.Handler;
 import android.os.StatFs;
+import android.preference.PreferenceManager;
 import android.provider.MediaStore;
 import android.provider.MediaStore.Images;
 import android.text.format.Formatter;
@@ -794,52 +796,59 @@
         deleteImpl(activity, onDelete, false);
     }
 
-    static void deleteImage(Activity activity, Runnable onDelete,
-            IImage image) {
-        if (image != null) {
-            deleteImpl(activity, onDelete, ImageManager.isImage(image));
-        }
+    static void deleteImage(
+            Activity activity, Runnable onDelete, IImage image) {
+        deleteImpl(activity, onDelete, ImageManager.isImage(image));
     }
 
-    private static void deleteImpl(Activity activity, final Runnable onDelete,
-            boolean isPhoto) {
-        boolean confirm = android.preference.PreferenceManager
-                .getDefaultSharedPreferences(activity)
-                .getBoolean("pref_gallery_confirm_delete_key", true);
-        if (!confirm) {
-            if (onDelete != null) {
-                onDelete.run();
-            }
+    static void deleteImpl(
+            Activity activity, Runnable onDelete, boolean isImage) {
+        boolean needConfirm = PreferenceManager
+                 .getDefaultSharedPreferences(activity)
+                 .getBoolean("pref_gallery_confirm_delete_key", true);
+        if (!needConfirm) {
+            if (onDelete != null) onDelete.run();
         } else {
-            displayDeleteDialog(activity, onDelete, isPhoto);
+            String title = activity.getString(R.string.confirm_delete_title);
+            String message = activity.getString(isImage
+                    ? R.string.confirm_delete_message
+                    : R.string.confirm_delete_video_message);
+            confirmAction(activity, title, message, onDelete);
         }
     }
 
-    private static void displayDeleteDialog(Activity activity,
-            final Runnable onDelete, boolean isPhoto) {
-        android.app.AlertDialog.Builder b =
-                new android.app.AlertDialog.Builder(activity);
-        b.setIcon(android.R.drawable.ic_dialog_alert);
-        b.setTitle(R.string.confirm_delete_title);
-        b.setMessage(isPhoto
-                ? R.string.confirm_delete_message
-                : R.string.confirm_delete_video_message);
-        b.setPositiveButton(android.R.string.ok,
-                new android.content.DialogInterface.OnClickListener() {
-                    public void onClick(android.content.DialogInterface v,
-                                        int x) {
-                        if (onDelete != null) {
-                            onDelete.run();
-                        }
-                    }
-                });
-        b.setNegativeButton(android.R.string.cancel,
-                new android.content.DialogInterface.OnClickListener() {
-                    public void onClick(android.content.DialogInterface v,
-                                        int x) {
-                    }
-                });
-        b.create().show();
+    public static void deleteMultiple(Context context, Runnable action) {
+        boolean needConfirm = PreferenceManager
+            .getDefaultSharedPreferences(context)
+            .getBoolean("pref_gallery_confirm_delete_key", true);
+        if (!needConfirm) {
+            if (action != null) action.run();
+        } else {
+            String title = context.getString(R.string.confirm_delete_title);
+            String message = context.getString(
+                    R.string.confirm_delete_multiple_message);
+            confirmAction(context, title, message, action);
+        }
+    }
+
+    public static void confirmAction(Context context, String title,
+            String message, final Runnable action) {
+        OnClickListener listener = new OnClickListener() {
+            public void onClick(DialogInterface dialog, int which) {
+                switch (which) {
+                    case DialogInterface.BUTTON_POSITIVE:
+                        if (action != null) action.run();
+                }
+            }
+        };
+        new AlertDialog.Builder(context)
+            .setIcon(android.R.drawable.ic_dialog_alert)
+            .setTitle(title)
+            .setMessage(message)
+            .setPositiveButton(android.R.string.ok, listener)
+            .setNegativeButton(android.R.string.cancel, listener)
+            .create()
+            .show();
     }
 
     static void addSwitchModeMenuItem(Menu menu, final Activity activity,