diff options
| -rw-r--r-- | services/autofill/java/com/android/server/autofill/ui/SaveUi.java | 9 | 
1 files changed, 7 insertions, 2 deletions
diff --git a/services/autofill/java/com/android/server/autofill/ui/SaveUi.java b/services/autofill/java/com/android/server/autofill/ui/SaveUi.java index dc84498353ea..58823036212d 100644 --- a/services/autofill/java/com/android/server/autofill/ui/SaveUi.java +++ b/services/autofill/java/com/android/server/autofill/ui/SaveUi.java @@ -81,6 +81,13 @@ final class SaveUi {          void onDestroy();      } +    /** +     * Wrapper that guarantees that only one callback is triggered by ignoring further calls after +     * it's destroyed. +     * +     * <p>It's needed becase {@link #onCancel(IntentSender)} is always called when the Save UI +     * dialog is dismissed. +     */      private class OneTimeListener implements OnSaveListener {          private final OnSaveListener mRealListener; @@ -96,7 +103,6 @@ final class SaveUi {              if (mDone) {                  return;              } -            mDone = true;              mRealListener.onSave();          } @@ -106,7 +112,6 @@ final class SaveUi {              if (mDone) {                  return;              } -            mDone = true;              mRealListener.onCancel(listener);          }  |