diff options
Diffstat (limited to 'src/com/android/gallery3d/ui/MenuExecutor.java')
-rw-r--r-- | src/com/android/gallery3d/ui/MenuExecutor.java | 16 |
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; |