Merge "Finish autofill integration with keyboard cleanup tasks"
diff --git a/core/java/android/inputmethodservice/InputMethodService.java b/core/java/android/inputmethodservice/InputMethodService.java
index fe4f860..ffb97c0 100644
--- a/core/java/android/inputmethodservice/InputMethodService.java
+++ b/core/java/android/inputmethodservice/InputMethodService.java
@@ -517,7 +517,9 @@
@Override
public void onCreateInlineSuggestionsRequest(ComponentName componentName,
AutofillId autofillId, IInlineSuggestionsRequestCallback cb) {
- Log.d(TAG, "InputMethodService received onCreateInlineSuggestionsRequest()");
+ if (DEBUG) {
+ Log.d(TAG, "InputMethodService received onCreateInlineSuggestionsRequest()");
+ }
handleOnCreateInlineSuggestionsRequest(componentName, autofillId, cb);
}
@@ -755,7 +757,12 @@
private void handleOnCreateInlineSuggestionsRequest(@NonNull ComponentName componentName,
@NonNull AutofillId autofillId, @NonNull IInlineSuggestionsRequestCallback callback) {
if (!mInputStarted) {
- Log.w(TAG, "onStartInput() not called yet");
+ try {
+ Log.w(TAG, "onStartInput() not called yet");
+ callback.onInlineSuggestionsUnsupported();
+ } catch (RemoteException e) {
+ Log.w(TAG, "Failed to call onInlineSuggestionsUnsupported.", e);
+ }
return;
}
@@ -768,8 +775,12 @@
private void handleOnInlineSuggestionsResponse(@NonNull ComponentName componentName,
@NonNull AutofillId autofillId, @NonNull InlineSuggestionsResponse response) {
if (!mInlineSuggestionsRequestInfo.validate(componentName)) {
- Log.d(TAG, "Response component=" + componentName + " differs from request component="
- + mInlineSuggestionsRequestInfo.mComponentName + ", ignoring response");
+ if (DEBUG) {
+ Log.d(TAG,
+ "Response component=" + componentName + " differs from request component="
+ + mInlineSuggestionsRequestInfo.mComponentName
+ + ", ignoring response");
+ }
return;
}
onInlineSuggestionsResponse(response);
@@ -841,7 +852,7 @@
*/
public boolean validate(ComponentName componentName) {
final boolean result = componentName.equals(mComponentName);
- if (!result) {
+ if (DEBUG && !result) {
Log.d(TAG, "Cached request info ComponentName=" + mComponentName
+ " differs from received ComponentName=" + componentName);
}
diff --git a/core/java/android/view/inputmethod/InputMethod.java b/core/java/android/view/inputmethod/InputMethod.java
index 1e5a3b0..cf494ae 100644
--- a/core/java/android/view/inputmethod/InputMethod.java
+++ b/core/java/android/view/inputmethod/InputMethod.java
@@ -63,6 +63,8 @@
* which is what clients use to communicate with the input method.
*/
public interface InputMethod {
+ /** @hide **/
+ public static final String TAG = "InputMethod";
/**
* This is the interface name that a service implementing an input
* method should say that it supports -- that is, this is the action it
@@ -111,6 +113,10 @@
/**
* Called to notify the IME that Autofill Frameworks requested an inline suggestions request.
*
+ * @param componentName {@link ComponentName} of current app/activity.
+ * @param autofillId {@link AutofillId} of currently focused field.
+ * @param cb {@link IInlineSuggestionsRequestCallback} used to pass back the request object.
+ *
* @hide
*/
default void onCreateInlineSuggestionsRequest(ComponentName componentName,
@@ -118,7 +124,7 @@
try {
cb.onInlineSuggestionsUnsupported();
} catch (RemoteException e) {
- Log.w("InputMethod", "RemoteException calling onInlineSuggestionsUnsupported: " + e);
+ Log.w(TAG, "Failed to call onInlineSuggestionsUnsupported.", e);
}
}
diff --git a/services/autofill/java/com/android/server/autofill/Session.java b/services/autofill/java/com/android/server/autofill/Session.java
index 2c8bc22..3b51329 100644
--- a/services/autofill/java/com/android/server/autofill/Session.java
+++ b/services/autofill/java/com/android/server/autofill/Session.java
@@ -646,8 +646,10 @@
@Override
public void onInlineSuggestionsUnsupported() throws RemoteException {
- Log.i(TAG, "inline suggestions request unsupported, "
- + "falling back to regular autofill");
+ if (sDebug) {
+ Log.d(TAG, "inline suggestions request unsupported, "
+ + "falling back to regular autofill");
+ }
final Session session = mSession.get();
if (session != null) {
synchronized (session.mLock) {
@@ -660,8 +662,9 @@
@Override
public void onInlineSuggestionsRequest(InlineSuggestionsRequest request,
IInlineSuggestionsResponseCallback callback) throws RemoteException {
- Log.i(TAG, "onInlineSuggestionsRequest() received: "
- + request);
+ if (sDebug) {
+ Log.d(TAG, "onInlineSuggestionsRequest() received: " + request);
+ }
final Session session = mSession.get();
if (session != null) {
synchronized (session.mLock) {
diff --git a/services/core/java/com/android/server/inputmethod/InputMethodManagerInternal.java b/services/core/java/com/android/server/inputmethod/InputMethodManagerInternal.java
index 44c8971..c40e8af 100644
--- a/services/core/java/com/android/server/inputmethod/InputMethodManagerInternal.java
+++ b/services/core/java/com/android/server/inputmethod/InputMethodManagerInternal.java
@@ -19,8 +19,6 @@
import android.annotation.NonNull;
import android.annotation.UserIdInt;
import android.content.ComponentName;
-import android.os.RemoteException;
-import android.util.Log;
import android.view.autofill.AutofillId;
import android.view.inputmethod.InlineSuggestionsRequest;
import android.view.inputmethod.InputMethodInfo;
@@ -99,12 +97,6 @@
@Override
public void onCreateInlineSuggestionsRequest(ComponentName componentName,
AutofillId autofillId, IInlineSuggestionsRequestCallback cb) {
- try {
- cb.onInlineSuggestionsUnsupported();
- } catch (RemoteException e) {
- Log.w("IMManagerInternal", "RemoteException calling"
- + " onInlineSuggestionsUnsupported: " + e);
- }
}
};
diff --git a/services/core/java/com/android/server/inputmethod/MultiClientInputMethodManagerService.java b/services/core/java/com/android/server/inputmethod/MultiClientInputMethodManagerService.java
index c13d55a..1f9379c 100644
--- a/services/core/java/com/android/server/inputmethod/MultiClientInputMethodManagerService.java
+++ b/services/core/java/com/android/server/inputmethod/MultiClientInputMethodManagerService.java
@@ -59,7 +59,6 @@
import android.text.TextUtils;
import android.util.ArrayMap;
import android.util.ArraySet;
-import android.util.Log;
import android.util.Slog;
import android.util.SparseArray;
import android.view.InputChannel;
@@ -198,8 +197,7 @@
//TODO(b/137800469): support multi client IMEs.
cb.onInlineSuggestionsUnsupported();
} catch (RemoteException e) {
- Log.w("MultiClientIMManager", "RemoteException calling"
- + " onInlineSuggestionsUnsupported: " + e);
+ Slog.w(TAG, "Failed to call onInlineSuggestionsUnsupported.", e);
}
}
});