Merge "Add dispatchRequestTranslation() in WebViewProvider." into sc-dev

This commit is contained in:
Joanne Chung
2021-05-12 11:25:24 +00:00
committed by Android (Google) Code Review
3 changed files with 24 additions and 0 deletions

View File

@@ -14914,6 +14914,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();

View File

@@ -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) {

View File

@@ -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);