Add dispatchRequestTranslation() in WebViewProvider.
This change doesn't introduce a new API, the change is just pushing down an existing API from View that we are missing to add for the webview. We should also provide this method to allow webview provider to provide their implementation if needed. Bug: 186617107 Test: manual CTS-Coverage-Bug: 177960696 Change-Id: If75285b3aafdb1f2a3d7c307a90bb783edf029b5
This commit is contained in:
@@ -14919,6 +14919,7 @@ package android.webkit {
|
||||
|
||||
public static interface WebViewProvider.ViewDelegate {
|
||||
method public default void autofill(android.util.SparseArray<android.view.autofill.AutofillValue>);
|
||||
method public default void dispatchCreateViewTranslationRequest(@NonNull java.util.Map<android.view.autofill.AutofillId,long[]>, @NonNull int[], @Nullable android.view.translation.TranslationCapability, @NonNull java.util.List<android.view.translation.ViewTranslationRequest>);
|
||||
method public boolean dispatchKeyEvent(android.view.KeyEvent);
|
||||
method public android.view.View findFocus(android.view.View);
|
||||
method public android.view.accessibility.AccessibilityNodeProvider getAccessibilityNodeProvider();
|
||||
|
||||
@@ -60,11 +60,13 @@ import android.view.WindowInsets;
|
||||
import android.view.accessibility.AccessibilityEvent;
|
||||
import android.view.accessibility.AccessibilityNodeInfo;
|
||||
import android.view.accessibility.AccessibilityNodeProvider;
|
||||
import android.view.autofill.AutofillId;
|
||||
import android.view.autofill.AutofillValue;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import android.view.inputmethod.InputConnection;
|
||||
import android.view.inspector.InspectableProperty;
|
||||
import android.view.textclassifier.TextClassifier;
|
||||
import android.view.translation.TranslationCapability;
|
||||
import android.view.translation.TranslationSpec.DataFormat;
|
||||
import android.view.translation.ViewTranslationRequest;
|
||||
import android.view.translation.ViewTranslationResponse;
|
||||
@@ -2868,6 +2870,16 @@ public class WebView extends AbsoluteLayout
|
||||
supportedFormats, requestsCollector);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void dispatchCreateViewTranslationRequest(@NonNull Map<AutofillId, long[]> viewIds,
|
||||
@NonNull @DataFormat int[] supportedFormats,
|
||||
@Nullable TranslationCapability capability,
|
||||
@NonNull List<ViewTranslationRequest> requests) {
|
||||
super.dispatchCreateViewTranslationRequest(viewIds, supportedFormats, capability, requests);
|
||||
mProvider.getViewDelegate().dispatchCreateViewTranslationRequest(viewIds, supportedFormats,
|
||||
capability, requests);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onVirtualViewTranslationResponses(
|
||||
@NonNull LongSparseArray<ViewTranslationResponse> response) {
|
||||
|
||||
@@ -45,10 +45,12 @@ import android.view.WindowInsets;
|
||||
import android.view.accessibility.AccessibilityEvent;
|
||||
import android.view.accessibility.AccessibilityNodeInfo;
|
||||
import android.view.accessibility.AccessibilityNodeProvider;
|
||||
import android.view.autofill.AutofillId;
|
||||
import android.view.autofill.AutofillValue;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import android.view.inputmethod.InputConnection;
|
||||
import android.view.textclassifier.TextClassifier;
|
||||
import android.view.translation.TranslationCapability;
|
||||
import android.view.translation.TranslationSpec.DataFormat;
|
||||
import android.view.translation.ViewTranslationRequest;
|
||||
import android.view.translation.ViewTranslationResponse;
|
||||
@@ -59,6 +61,7 @@ import android.webkit.WebView.VisualStateCallback;
|
||||
|
||||
import java.io.BufferedWriter;
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.Executor;
|
||||
import java.util.function.Consumer;
|
||||
@@ -377,6 +380,14 @@ public interface WebViewProvider {
|
||||
LongSparseArray<ViewTranslationResponse> response) {
|
||||
}
|
||||
|
||||
default void dispatchCreateViewTranslationRequest(
|
||||
@NonNull @SuppressWarnings("unused") Map<AutofillId, long[]> viewIds,
|
||||
@NonNull @SuppressWarnings("unused") @DataFormat int[] supportedFormats,
|
||||
@Nullable @SuppressWarnings("unused") TranslationCapability capability,
|
||||
@NonNull @SuppressWarnings("unused") List<ViewTranslationRequest> requests) {
|
||||
|
||||
}
|
||||
|
||||
public AccessibilityNodeProvider getAccessibilityNodeProvider();
|
||||
|
||||
public void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info);
|
||||
|
||||
Reference in New Issue
Block a user