summaryrefslogtreecommitdiffstats
path: root/src/com/android/gallery3d/ui/MenuExecutor.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/gallery3d/ui/MenuExecutor.java')
-rw-r--r--src/com/android/gallery3d/ui/MenuExecutor.java16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/com/android/gallery3d/ui/MenuExecutor.java b/src/com/android/gallery3d/ui/MenuExecutor.java
index 2ff0327da..9a2377d8e 100644
--- a/src/com/android/gallery3d/ui/MenuExecutor.java
+++ b/src/com/android/gallery3d/ui/MenuExecutor.java
@@ -51,7 +51,8 @@ public class MenuExecutor {
private static final int MSG_TASK_COMPLETE = 1;
private static final int MSG_TASK_UPDATE = 2;
- private static final int MSG_DO_SHARE = 3;
+ private static final int MSG_TASK_START = 3;
+ private static final int MSG_DO_SHARE = 4;
public static final int EXECUTION_RESULT_SUCCESS = 1;
public static final int EXECUTION_RESULT_FAIL = 2;
@@ -83,6 +84,7 @@ public class MenuExecutor {
public interface ProgressListener {
public void onConfirmDialogShown();
public void onConfirmDialogDismissed(boolean confirmed);
+ public void onProgressStart();
public void onProgressUpdate(int index);
public void onProgressComplete(int result);
}
@@ -95,6 +97,13 @@ public class MenuExecutor {
@Override
public void handleMessage(Message message) {
switch (message.what) {
+ case MSG_TASK_START: {
+ if (message.obj != null) {
+ ProgressListener listener = (ProgressListener) message.obj;
+ listener.onProgressStart();
+ }
+ break;
+ }
case MSG_TASK_COMPLETE: {
stopTaskAndDismissDialog();
if (message.obj != null) {
@@ -140,6 +149,10 @@ public class MenuExecutor {
mHandler.obtainMessage(MSG_TASK_UPDATE, index, 0, listener));
}
+ private void onProgressStart(ProgressListener listener) {
+ mHandler.sendMessage(mHandler.obtainMessage(MSG_TASK_START, listener));
+ }
+
private void onProgressComplete(int result, ProgressListener listener) {
mHandler.sendMessage(mHandler.obtainMessage(MSG_TASK_COMPLETE, result, 0, listener));
}
@@ -400,6 +413,7 @@ public class MenuExecutor {
DataManager manager = mActivity.getDataManager();
int result = EXECUTION_RESULT_SUCCESS;
try {
+ onProgressStart(mListener);
for (Path id : mItems) {
if (jc.isCancelled()) {
result = EXECUTION_RESULT_CANCEL;