summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorDianne Hackborn <hackbod@google.com>2011-01-03 15:05:29 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-01-03 15:05:29 -0800
commit83c7db8b9ded2438a75b3a169e4bdd6900143a16 (patch)
tree4b5bf4310e18322b9f07b6db38ec6994dd264ec9 /core
parent7179dfd663cff9a4e885fcd59bdfd0154c6054cc (diff)
parent8b4cac1f420d2e6d235511015a6ab65db5ebaca4 (diff)
downloadframeworks_base-83c7db8b9ded2438a75b3a169e4bdd6900143a16.zip
frameworks_base-83c7db8b9ded2438a75b3a169e4bdd6900143a16.tar.gz
frameworks_base-83c7db8b9ded2438a75b3a169e4bdd6900143a16.tar.bz2
Merge "Again maybe fix issue #3169193..."
Diffstat (limited to 'core')
-rw-r--r--core/java/android/app/Dialog.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/core/java/android/app/Dialog.java b/core/java/android/app/Dialog.java
index c398e98..e69e664 100644
--- a/core/java/android/app/Dialog.java
+++ b/core/java/android/app/Dialog.java
@@ -25,7 +25,6 @@ import android.content.ContextWrapper;
import android.content.DialogInterface;
import android.graphics.drawable.Drawable;
import android.net.Uri;
-import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
@@ -101,6 +100,7 @@ public class Dialog implements DialogInterface, Window.Callback,
private boolean mCreated = false;
private boolean mShowing = false;
+ private boolean mCanceled = false;
private final Thread mUiThread;
private final Handler mHandler = new Handler();
@@ -244,6 +244,8 @@ public class Dialog implements DialogInterface, Window.Callback,
return;
}
+ mCanceled = false;
+
if (!mCreated) {
dispatchOnCreate(null);
}
@@ -997,7 +999,8 @@ public class Dialog implements DialogInterface, Window.Callback,
* also call your {@link DialogInterface.OnCancelListener} (if registered).
*/
public void cancel() {
- if (mCancelMessage != null) {
+ if (!mCanceled && mCancelMessage != null) {
+ mCanceled = true;
// Obtain a new message so this dialog can be re-used
Message.obtain(mCancelMessage).sendToTarget();
}