summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorAdam He <adamhe@google.com>2020-03-18 17:28:32 -0700
committerAdam He <adamhe@google.com>2020-04-09 13:30:33 -0700
commit89afcd6f5d72ee2e634e2abd4397f71feb9fca74 (patch)
tree38fa1fbf1a6de4b0a569c7b18c14a7eae556d7fa /core/java/android
parent1fdf62b72f48c6f4d05636c20b6e5c2dad0708e1 (diff)
Pass inline suggestions renderer info Bundle to Frameworks and IME
Bug: 146454892 Test: manual verification Change-Id: I5db6c3795a4a295486e497f2d27eaa561e1a3887
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/service/autofill/IInlineSuggestionRenderService.aidl2
-rw-r--r--core/java/android/service/autofill/InlineSuggestionRenderService.java13
2 files changed, 15 insertions, 0 deletions
diff --git a/core/java/android/service/autofill/IInlineSuggestionRenderService.aidl b/core/java/android/service/autofill/IInlineSuggestionRenderService.aidl
index dd434b440af4..bf0bb9e2a41f 100644
--- a/core/java/android/service/autofill/IInlineSuggestionRenderService.aidl
+++ b/core/java/android/service/autofill/IInlineSuggestionRenderService.aidl
@@ -17,6 +17,7 @@
package android.service.autofill;
import android.os.IBinder;
+import android.os.RemoteCallback;
import android.service.autofill.IInlineSuggestionUiCallback;
import android.service.autofill.InlinePresentation;
@@ -29,4 +30,5 @@ oneway interface IInlineSuggestionRenderService {
void renderSuggestion(in IInlineSuggestionUiCallback callback,
in InlinePresentation presentation, int width, int height,
in IBinder hostInputToken, int displayId);
+ void getInlineSuggestionsRendererInfo(in RemoteCallback callback);
}
diff --git a/core/java/android/service/autofill/InlineSuggestionRenderService.java b/core/java/android/service/autofill/InlineSuggestionRenderService.java
index cba6608db1b8..e3ed21ff556d 100644
--- a/core/java/android/service/autofill/InlineSuggestionRenderService.java
+++ b/core/java/android/service/autofill/InlineSuggestionRenderService.java
@@ -30,6 +30,7 @@ import android.os.Bundle;
import android.os.Handler;
import android.os.IBinder;
import android.os.Looper;
+import android.os.RemoteCallback;
import android.os.RemoteException;
import android.util.Log;
import android.view.Display;
@@ -128,6 +129,11 @@ public abstract class InlineSuggestionRenderService extends Service {
}
}
+ private void handleGetInlineSuggestionsRendererInfo(@NonNull RemoteCallback callback) {
+ final Bundle rendererInfo = onGetInlineSuggestionsRendererInfo();
+ callback.sendResult(rendererInfo);
+ }
+
private void sendResult(@NonNull IInlineSuggestionUiCallback callback,
@Nullable SurfaceControlViewHost.SurfacePackage surface) {
try {
@@ -151,6 +157,13 @@ public abstract class InlineSuggestionRenderService extends Service {
InlineSuggestionRenderService.this, callback, presentation,
width, height, hostInputToken, displayId));
}
+
+ @Override
+ public void getInlineSuggestionsRendererInfo(@NonNull RemoteCallback callback) {
+ mHandler.sendMessage(obtainMessage(
+ InlineSuggestionRenderService::handleGetInlineSuggestionsRendererInfo,
+ InlineSuggestionRenderService.this, callback));
+ }
}.asBinder();
}