Loading core/java/android/view/autofill/AutofillManager.java +1 −1 Original line number Diff line number Diff line Loading @@ -1773,7 +1773,7 @@ public final class AutofillManager { mForAugmentedAutofillOnly = false; } if ((flags & FLAG_SUPPORTS_FILL_DIALOG) != 0 && view != null) { if ((flags & FLAG_SUPPORTS_FILL_DIALOG) != 0) { flags |= FLAG_RESET_FILL_DIALOG_STATE; } Loading services/autofill/java/com/android/server/autofill/AutofillInlineSessionController.java +7 −0 Original line number Diff line number Diff line Loading @@ -206,4 +206,11 @@ final class AutofillInlineSessionController { } return false; } boolean isImeShowing() { if (mSession != null) { return mSession.isImeShowing(); } return false; } } services/autofill/java/com/android/server/autofill/AutofillInlineSuggestionsRequestSession.java +9 −0 Original line number Diff line number Diff line Loading @@ -106,6 +106,8 @@ final class AutofillInlineSuggestionsRequestSession { @GuardedBy("mLock") private boolean mImeSessionInvalidated = false; private boolean mImeShowing = false; AutofillInlineSuggestionsRequestSession( @NonNull InputMethodManagerInternal inputMethodManagerInternal, int userId, @NonNull ComponentName componentName, @NonNull Handler handler, @NonNull Object lock, Loading Loading @@ -320,6 +322,7 @@ final class AutofillInlineSuggestionsRequestSession { if (mDestroyed) { return; } mImeShowing = imeInputViewStarted; if (mImeCurrentFieldId != null) { boolean imeInputStartedChanged = (mImeInputStarted != imeInputStarted); boolean imeInputViewStartedChanged = (mImeInputViewStarted != imeInputViewStarted); Loading Loading @@ -364,6 +367,12 @@ final class AutofillInlineSuggestionsRequestSession { } } boolean isImeShowing() { synchronized (mLock) { return !mDestroyed && mImeShowing; } } /** * Internal implementation of {@link IInlineSuggestionsRequestCallback}. */ Loading services/autofill/java/com/android/server/autofill/Session.java +6 −0 Original line number Diff line number Diff line Loading @@ -4365,6 +4365,12 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState return false; } if (mInlineSessionController.isImeShowing()) { // IME is showing, fallback to normal suggestions UI // Note: only work when inline suggestions supported return false; } synchronized (mLock) { if (mLastFillDialogTriggerIds == null || !ArrayUtils.contains(mLastFillDialogTriggerIds, filledId)) { Loading Loading
core/java/android/view/autofill/AutofillManager.java +1 −1 Original line number Diff line number Diff line Loading @@ -1773,7 +1773,7 @@ public final class AutofillManager { mForAugmentedAutofillOnly = false; } if ((flags & FLAG_SUPPORTS_FILL_DIALOG) != 0 && view != null) { if ((flags & FLAG_SUPPORTS_FILL_DIALOG) != 0) { flags |= FLAG_RESET_FILL_DIALOG_STATE; } Loading
services/autofill/java/com/android/server/autofill/AutofillInlineSessionController.java +7 −0 Original line number Diff line number Diff line Loading @@ -206,4 +206,11 @@ final class AutofillInlineSessionController { } return false; } boolean isImeShowing() { if (mSession != null) { return mSession.isImeShowing(); } return false; } }
services/autofill/java/com/android/server/autofill/AutofillInlineSuggestionsRequestSession.java +9 −0 Original line number Diff line number Diff line Loading @@ -106,6 +106,8 @@ final class AutofillInlineSuggestionsRequestSession { @GuardedBy("mLock") private boolean mImeSessionInvalidated = false; private boolean mImeShowing = false; AutofillInlineSuggestionsRequestSession( @NonNull InputMethodManagerInternal inputMethodManagerInternal, int userId, @NonNull ComponentName componentName, @NonNull Handler handler, @NonNull Object lock, Loading Loading @@ -320,6 +322,7 @@ final class AutofillInlineSuggestionsRequestSession { if (mDestroyed) { return; } mImeShowing = imeInputViewStarted; if (mImeCurrentFieldId != null) { boolean imeInputStartedChanged = (mImeInputStarted != imeInputStarted); boolean imeInputViewStartedChanged = (mImeInputViewStarted != imeInputViewStarted); Loading Loading @@ -364,6 +367,12 @@ final class AutofillInlineSuggestionsRequestSession { } } boolean isImeShowing() { synchronized (mLock) { return !mDestroyed && mImeShowing; } } /** * Internal implementation of {@link IInlineSuggestionsRequestCallback}. */ Loading
services/autofill/java/com/android/server/autofill/Session.java +6 −0 Original line number Diff line number Diff line Loading @@ -4365,6 +4365,12 @@ final class Session implements RemoteFillService.FillServiceCallbacks, ViewState return false; } if (mInlineSessionController.isImeShowing()) { // IME is showing, fallback to normal suggestions UI // Note: only work when inline suggestions supported return false; } synchronized (mLock) { if (mLastFillDialogTriggerIds == null || !ArrayUtils.contains(mLastFillDialogTriggerIds, filledId)) { Loading