diff options
author | Yuli Huang <yuli@google.com> | 2012-08-21 16:39:50 +0800 |
---|---|---|
committer | Yuli Huang <yuli@google.com> | 2012-08-21 16:39:50 +0800 |
commit | 7d912500bbe28aea0295fe05e69bf9c079a22d5a (patch) | |
tree | ecc043879e0c74caa9fbc819c398aafe3df7f5af /src | |
parent | 2f87ec50d8f934b2637363f9ef63accadf2427c2 (diff) | |
download | android_packages_apps_Snap-7d912500bbe28aea0295fe05e69bf9c079a22d5a.tar.gz android_packages_apps_Snap-7d912500bbe28aea0295fe05e69bf9c079a22d5a.tar.bz2 android_packages_apps_Snap-7d912500bbe28aea0295fe05e69bf9c079a22d5a.zip |
Dismiss dialog in onPause() where we still have the window.
bug:6561957
Change-Id: I652c4ec1dd64c650c29f3e4e36ae1200da691694
Diffstat (limited to 'src')
-rw-r--r-- | src/com/android/gallery3d/app/CropImage.java | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/com/android/gallery3d/app/CropImage.java b/src/com/android/gallery3d/app/CropImage.java index 50e7938d4..f27e181d7 100644 --- a/src/com/android/gallery3d/app/CropImage.java +++ b/src/com/android/gallery3d/app/CropImage.java @@ -178,17 +178,17 @@ public class CropImage extends AbstractGalleryActivity { public void handleMessage(Message message) { switch (message.what) { case MSG_LARGE_BITMAP: { - mProgressDialog.dismiss(); + dismissProgressDialogIfShown(); onBitmapRegionDecoderAvailable((BitmapRegionDecoder) message.obj); break; } case MSG_BITMAP: { - mProgressDialog.dismiss(); + dismissProgressDialogIfShown(); onBitmapAvailable((Bitmap) message.obj); break; } case MSG_SHOW_SAVE_ERROR: { - mProgressDialog.dismiss(); + dismissProgressDialogIfShown(); setResult(RESULT_CANCELED); Toast.makeText(CropImage.this, CropImage.this.getString(R.string.save_error), @@ -196,7 +196,7 @@ public class CropImage extends AbstractGalleryActivity { finish(); } case MSG_SAVE_COMPLETE: { - mProgressDialog.dismiss(); + dismissProgressDialogIfShown(); setResult(RESULT_OK, (Intent) message.obj); finish(); break; @@ -882,13 +882,13 @@ public class CropImage extends AbstractGalleryActivity { @Override protected void onPause() { super.onPause(); + dismissProgressDialogIfShown(); Future<BitmapRegionDecoder> loadTask = mLoadTask; if (loadTask != null && !loadTask.isDone()) { // load in progress, try to cancel it loadTask.cancel(); loadTask.waitDone(); - mProgressDialog.dismiss(); } Future<Bitmap> loadBitmapTask = mLoadBitmapTask; @@ -896,7 +896,6 @@ public class CropImage extends AbstractGalleryActivity { // load in progress, try to cancel it loadBitmapTask.cancel(); loadBitmapTask.waitDone(); - mProgressDialog.dismiss(); } Future<Intent> saveTask = mSaveTask; @@ -904,7 +903,6 @@ public class CropImage extends AbstractGalleryActivity { // save in progress, try to cancel it saveTask.cancel(); saveTask.waitDone(); - mProgressDialog.dismiss(); } GLRoot root = getGLRoot(); root.lockRenderThread(); @@ -915,6 +913,13 @@ public class CropImage extends AbstractGalleryActivity { } } + private void dismissProgressDialogIfShown() { + if (mProgressDialog != null) { + mProgressDialog.dismiss(); + mProgressDialog = null; + } + } + private MediaItem getMediaItemFromIntentData() { Uri uri = getIntent().getData(); DataManager manager = getDataManager(); |