Loading core/java/android/view/autofill/AutofillManager.java +8 −0 Original line number Diff line number Diff line Loading @@ -4213,6 +4213,14 @@ public final class AutofillManager { } } @Override public void requestHideFillUiWhenDestroyed(int sessionId, AutofillId id) { final AutofillManager afm = mAfm.get(); if (afm != null) { afm.post(() -> afm.requestHideFillUi(id, true)); } } @Override public void notifyNoFillUi(int sessionId, AutofillId id, int sessionFinishedState) { final AutofillManager afm = mAfm.get(); Loading core/java/android/view/autofill/IAutoFillManagerClient.aidl +5 −0 Original line number Diff line number Diff line Loading @@ -78,6 +78,11 @@ oneway interface IAutoFillManagerClient { */ void requestHideFillUi(int sessionId, in AutofillId id); /** * Requests hiding the fill UI when it's destroyed */ void requestHideFillUiWhenDestroyed(int sessionId, in AutofillId id); /** * Notifies no fill UI will be shown, and also mark the state as finished if necessary (if * sessionFinishedState != 0). Loading services/autofill/java/com/android/server/autofill/Session.java +15 −0 Original line number Diff line number Diff line Loading @@ -2401,6 +2401,21 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState } } @Override public void requestHideFillUiWhenDestroyed(AutofillId id) { synchronized (mLock) { // NOTE: We allow this call in a destroyed state as the UI is // asked to go away after we get destroyed, so let it do that. try { mClient.requestHideFillUiWhenDestroyed(this.id, id); } catch (RemoteException e) { Slog.e(TAG, "Error requesting to hide fill UI", e); } mInlineSessionController.hideInlineSuggestionsUiLocked(id); } } // AutoFillUiCallback @Override public void cancelSession() { Loading services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java +8 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,7 @@ public final class AutoFillUI { void requestShowFillUi(AutofillId id, int width, int height, IAutofillWindowPresenter presenter); void requestHideFillUi(AutofillId id); void requestHideFillUiWhenDestroyed(AutofillId id); void startIntentSenderAndFinishSession(IntentSender intentSender); void startIntentSender(IntentSender intentSender, Intent intent); void dispatchUnhandledKey(AutofillId id, KeyEvent keyEvent); Loading Loading @@ -288,6 +289,13 @@ public final class AutoFillUI { } } @Override public void requestHideFillUiWhenDestroyed() { if (mCallback != null) { mCallback.requestHideFillUiWhenDestroyed(focusedId); } } @Override public void startIntentSender(IntentSender intentSender) { if (mCallback != null) { Loading services/autofill/java/com/android/server/autofill/ui/FillUi.java +2 −1 Original line number Diff line number Diff line Loading @@ -91,6 +91,7 @@ final class FillUi { void requestShowFillUi(int width, int height, IAutofillWindowPresenter windowPresenter); void requestHideFillUi(); void requestHideFillUiWhenDestroyed(); void startIntentSender(IntentSender intentSender); void dispatchUnhandledKey(KeyEvent keyEvent); void cancelSession(); Loading Loading @@ -482,7 +483,7 @@ final class FillUi { } mCallback.onDestroy(); if (notifyClient) { mCallback.requestHideFillUi(); mCallback.requestHideFillUiWhenDestroyed(); } mDestroyed = true; } Loading Loading
core/java/android/view/autofill/AutofillManager.java +8 −0 Original line number Diff line number Diff line Loading @@ -4213,6 +4213,14 @@ public final class AutofillManager { } } @Override public void requestHideFillUiWhenDestroyed(int sessionId, AutofillId id) { final AutofillManager afm = mAfm.get(); if (afm != null) { afm.post(() -> afm.requestHideFillUi(id, true)); } } @Override public void notifyNoFillUi(int sessionId, AutofillId id, int sessionFinishedState) { final AutofillManager afm = mAfm.get(); Loading
core/java/android/view/autofill/IAutoFillManagerClient.aidl +5 −0 Original line number Diff line number Diff line Loading @@ -78,6 +78,11 @@ oneway interface IAutoFillManagerClient { */ void requestHideFillUi(int sessionId, in AutofillId id); /** * Requests hiding the fill UI when it's destroyed */ void requestHideFillUiWhenDestroyed(int sessionId, in AutofillId id); /** * Notifies no fill UI will be shown, and also mark the state as finished if necessary (if * sessionFinishedState != 0). Loading
services/autofill/java/com/android/server/autofill/Session.java +15 −0 Original line number Diff line number Diff line Loading @@ -2401,6 +2401,21 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState } } @Override public void requestHideFillUiWhenDestroyed(AutofillId id) { synchronized (mLock) { // NOTE: We allow this call in a destroyed state as the UI is // asked to go away after we get destroyed, so let it do that. try { mClient.requestHideFillUiWhenDestroyed(this.id, id); } catch (RemoteException e) { Slog.e(TAG, "Error requesting to hide fill UI", e); } mInlineSessionController.hideInlineSuggestionsUiLocked(id); } } // AutoFillUiCallback @Override public void cancelSession() { Loading
services/autofill/java/com/android/server/autofill/ui/AutoFillUI.java +8 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,7 @@ public final class AutoFillUI { void requestShowFillUi(AutofillId id, int width, int height, IAutofillWindowPresenter presenter); void requestHideFillUi(AutofillId id); void requestHideFillUiWhenDestroyed(AutofillId id); void startIntentSenderAndFinishSession(IntentSender intentSender); void startIntentSender(IntentSender intentSender, Intent intent); void dispatchUnhandledKey(AutofillId id, KeyEvent keyEvent); Loading Loading @@ -288,6 +289,13 @@ public final class AutoFillUI { } } @Override public void requestHideFillUiWhenDestroyed() { if (mCallback != null) { mCallback.requestHideFillUiWhenDestroyed(focusedId); } } @Override public void startIntentSender(IntentSender intentSender) { if (mCallback != null) { Loading
services/autofill/java/com/android/server/autofill/ui/FillUi.java +2 −1 Original line number Diff line number Diff line Loading @@ -91,6 +91,7 @@ final class FillUi { void requestShowFillUi(int width, int height, IAutofillWindowPresenter windowPresenter); void requestHideFillUi(); void requestHideFillUiWhenDestroyed(); void startIntentSender(IntentSender intentSender); void dispatchUnhandledKey(KeyEvent keyEvent); void cancelSession(); Loading Loading @@ -482,7 +483,7 @@ final class FillUi { } mCallback.onDestroy(); if (notifyClient) { mCallback.requestHideFillUi(); mCallback.requestHideFillUiWhenDestroyed(); } mDestroyed = true; } Loading