blob: 629f36fbd40b5159ff4cbfff4a74f54b377e1fad [file] [log] [blame]
// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.support_lib_boundary;
import android.net.Uri;
import android.webkit.WebChromeClient;
import android.webkit.WebViewClient;
import java.lang.reflect.InvocationHandler;
/**
*/
public interface WebViewProviderBoundaryInterface {
void insertVisualStateCallback(long requestId,
/* VisualStateCallback */ InvocationHandler callback);
/* WebMessagePort */ InvocationHandler[] createWebMessageChannel();
void postMessageToMainFrame(/* WebMessage */ InvocationHandler message, Uri targetOrigin);
void addWebMessageListener(String jsObjectName, String[] allowedOriginRules,
/* WebMessageListener */ InvocationHandler listener);
void removeWebMessageListener(String jsObjectName);
/* ScriptHandler */ InvocationHandler addDocumentStartJavaScript(
String script, String[] allowedOriginRules);
WebViewClient getWebViewClient();
WebChromeClient getWebChromeClient();
/* WebViewRenderer */ InvocationHandler getWebViewRenderer();
/* WebViewRendererClient */ InvocationHandler getWebViewRendererClient();
void setWebViewRendererClient(
/* WebViewRendererClient */ InvocationHandler webViewRendererClient);
}