summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-04-25 15:55:31 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2023-04-25 15:55:31 +0000
commit90089c06d97821c5a6a502f87c17eaf3cdaf20b7 (patch)
tree9e72548f3be6a8302ba78952f18dde25d70323b3
parent7ad361050a34a1875f3de200774b52c111e33eee (diff)
parent1d57503f5e0da6b577df5bc806e34247b7b1dfda (diff)
downloadwebview_support_interfaces-androidx-navigation-release.tar.gz
Snap for 10001050 from 1d57503f5e0da6b577df5bc806e34247b7b1dfda to androidx-navigation-releaseandroidx-navigation-release
Change-Id: I35546ebc9d05237491465632683d20a3c891d7ce
-rw-r--r--BUILD.gn6
-rw-r--r--proguard.flags2
-rw-r--r--src/org/chromium/support_lib_boundary/DropDataContentProviderBoundaryInterface.java33
-rw-r--r--src/org/chromium/support_lib_boundary/FeatureFlagHolderBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/IsomorphicObjectBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface.java9
-rw-r--r--src/org/chromium/support_lib_boundary/ProcessGlobalConfigConstants.java45
-rw-r--r--src/org/chromium/support_lib_boundary/ProxyControllerBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/ScriptHandlerBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/ServiceWorkerClientBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/ServiceWorkerControllerBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/ServiceWorkerWebSettingsBoundaryInterface.java10
-rw-r--r--src/org/chromium/support_lib_boundary/StaticsBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/VisualStateCallbackBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebAuthnCallbackBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebMessageBoundaryInterface.java5
-rw-r--r--src/org/chromium/support_lib_boundary/WebMessageCallbackBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebMessageListenerBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebMessagePayloadBoundaryInterface.java34
-rw-r--r--src/org/chromium/support_lib_boundary/WebMessagePortBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebResourceRequestBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebSettingsBoundaryInterface.java18
-rw-r--r--src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebViewCookieManagerBoundaryInterface.java14
-rw-r--r--src/org/chromium/support_lib_boundary/WebViewProviderBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java3
-rw-r--r--src/org/chromium/support_lib_boundary/WebViewRendererBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebViewRendererClientBoundaryInterface.java2
-rw-r--r--src/org/chromium/support_lib_boundary/WebkitToCompatConverterBoundaryInterface.java6
-rw-r--r--src/org/chromium/support_lib_boundary/package-info.java2
-rw-r--r--src/org/chromium/support_lib_boundary/util/BoundaryInterfaceReflectionUtil.java2
-rw-r--r--src/org/chromium/support_lib_boundary/util/Features.java47
35 files changed, 233 insertions, 43 deletions
diff --git a/BUILD.gn b/BUILD.gn
index 348cbf5..43ae324 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -1,4 +1,4 @@
-# Copyright 2017 The Chromium Authors. All rights reserved.
+# Copyright 2017 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
@@ -7,9 +7,11 @@ import("//build/config/android/rules.gni")
android_library("boundary_interface_java") {
sources = [
+ "src/org/chromium/support_lib_boundary/DropDataContentProviderBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/FeatureFlagHolderBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/IsomorphicObjectBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface.java",
+ "src/org/chromium/support_lib_boundary/ProcessGlobalConfigConstants.java",
"src/org/chromium/support_lib_boundary/ProxyControllerBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/ScriptHandlerBoundaryInterface.java",
@@ -23,11 +25,13 @@ android_library("boundary_interface_java") {
"src/org/chromium/support_lib_boundary/WebMessageBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebMessageCallbackBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebMessageListenerBoundaryInterface.java",
+ "src/org/chromium/support_lib_boundary/WebMessagePayloadBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebMessagePortBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebResourceRequestBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebSettingsBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java",
+ "src/org/chromium/support_lib_boundary/WebViewCookieManagerBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebViewProviderBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java",
"src/org/chromium/support_lib_boundary/WebViewRendererBoundaryInterface.java",
diff --git a/proguard.flags b/proguard.flags
index 4a0d580..8938347 100644
--- a/proguard.flags
+++ b/proguard.flags
@@ -1,4 +1,4 @@
-# Copyright 2018 The Chromium Authors. All rights reserved.
+# 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.
diff --git a/src/org/chromium/support_lib_boundary/DropDataContentProviderBoundaryInterface.java b/src/org/chromium/support_lib_boundary/DropDataContentProviderBoundaryInterface.java
new file mode 100644
index 0000000..9e694a2
--- /dev/null
+++ b/src/org/chromium/support_lib_boundary/DropDataContentProviderBoundaryInterface.java
@@ -0,0 +1,33 @@
+// Copyright 2022 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.content.ContentProvider;
+import android.database.Cursor;
+import android.net.Uri;
+import android.os.Bundle;
+import android.os.ParcelFileDescriptor;
+
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
+import java.io.FileNotFoundException;
+
+/**
+ * Boundary interface for DropDataProvider.
+ */
+public interface DropDataContentProviderBoundaryInterface {
+ boolean onCreate();
+ String[] getStreamTypes(@NonNull Uri uri, @NonNull String mimeTypeFilter);
+ ParcelFileDescriptor openFile(@NonNull ContentProvider providerWrapper, @NonNull Uri uri)
+ throws FileNotFoundException;
+ Cursor query(@NonNull Uri uri, @Nullable String[] projection, @Nullable String selection,
+ @Nullable String[] selectionArgs, @Nullable String sortOrder);
+ String getType(@NonNull Uri uri);
+ Uri cache(byte[] imageBytes, String encodingFormat, String filename);
+ void setClearCachedDataIntervalMs(int milliseconds);
+ void onDragEnd(boolean imageInUse);
+ Bundle call(@NonNull String method, @Nullable String arg, @Nullable Bundle extras);
+} \ No newline at end of file
diff --git a/src/org/chromium/support_lib_boundary/FeatureFlagHolderBoundaryInterface.java b/src/org/chromium/support_lib_boundary/FeatureFlagHolderBoundaryInterface.java
index d2fa11e..df9dec7 100644
--- a/src/org/chromium/support_lib_boundary/FeatureFlagHolderBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/FeatureFlagHolderBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/IsomorphicObjectBoundaryInterface.java b/src/org/chromium/support_lib_boundary/IsomorphicObjectBoundaryInterface.java
index 7cccfc4..3063d44 100644
--- a/src/org/chromium/support_lib_boundary/IsomorphicObjectBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/IsomorphicObjectBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface.java b/src/org/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface.java
index e2da069..689982f 100644
--- a/src/org/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/JsReplyProxyBoundaryInterface.java
@@ -1,12 +1,19 @@
-// Copyright 2019 The Chromium Authors. All rights reserved.
+// Copyright 2019 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 java.lang.reflect.InvocationHandler;
+
/**
* Boundary interface for org.chromium.android_webview.WebMessageListener.
*/
public interface JsReplyProxyBoundaryInterface extends IsomorphicObjectBoundaryInterface {
+ /**
+ * Prefer using {@link #postMessageWithPayload}.
+ */
void postMessage(String message);
+
+ void postMessageWithPayload(/* MessagePayload */ InvocationHandler payload);
}
diff --git a/src/org/chromium/support_lib_boundary/ProcessGlobalConfigConstants.java b/src/org/chromium/support_lib_boundary/ProcessGlobalConfigConstants.java
new file mode 100644
index 0000000..1b8a7d2
--- /dev/null
+++ b/src/org/chromium/support_lib_boundary/ProcessGlobalConfigConstants.java
@@ -0,0 +1,45 @@
+// Copyright 2022 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 androidx.annotation.RestrictTo;
+import androidx.annotation.StringDef;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * Constants for ProcessGlobalConfig shared between chromium and AndroidX.
+ */
+public final class ProcessGlobalConfigConstants {
+ private ProcessGlobalConfigConstants() {}
+
+ /** @hide */
+ @RestrictTo(RestrictTo.Scope.LIBRARY)
+ @StringDef(value = {DATA_DIRECTORY_SUFFIX, DATA_DIRECTORY_BASE_PATH, CACHE_DIRECTORY_BASE_PATH})
+ @Retention(RetentionPolicy.SOURCE)
+ @Target({ElementType.PARAMETER, ElementType.METHOD})
+ public @interface ProcessGlobalConfigMapKey {}
+
+ /**
+ * Key for the data directory suffix in the process global config map that is read in chromium
+ * via reflection into AndroidX class.
+ */
+ public static final String DATA_DIRECTORY_SUFFIX = "DATA_DIRECTORY_SUFFIX";
+
+ /**
+ * Key for the data directory base path in the process global config map that is read in
+ * chromium via reflection into AndroidX class.
+ */
+ public static final String DATA_DIRECTORY_BASE_PATH = "DATA_DIRECTORY_BASE_PATH";
+
+ /**
+ * Key for the cache directory base path in the process global config map that is read in
+ * chromium via reflection into AndroidX class.
+ */
+ public static final String CACHE_DIRECTORY_BASE_PATH = "CACHE_DIRECTORY_BASE_PATH";
+} \ No newline at end of file
diff --git a/src/org/chromium/support_lib_boundary/ProxyControllerBoundaryInterface.java b/src/org/chromium/support_lib_boundary/ProxyControllerBoundaryInterface.java
index 07888ef..ff9ed8c 100644
--- a/src/org/chromium/support_lib_boundary/ProxyControllerBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/ProxyControllerBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java b/src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java
index 737ef36..0b88b28 100644
--- a/src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/SafeBrowsingResponseBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/ScriptHandlerBoundaryInterface.java b/src/org/chromium/support_lib_boundary/ScriptHandlerBoundaryInterface.java
index 0be98f8..7d2c8f2 100644
--- a/src/org/chromium/support_lib_boundary/ScriptHandlerBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/ScriptHandlerBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2020 The Chromium Authors. All rights reserved.
+// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/src/org/chromium/support_lib_boundary/ServiceWorkerClientBoundaryInterface.java b/src/org/chromium/support_lib_boundary/ServiceWorkerClientBoundaryInterface.java
index ed7d30d..43d09d7 100644
--- a/src/org/chromium/support_lib_boundary/ServiceWorkerClientBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/ServiceWorkerClientBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/ServiceWorkerControllerBoundaryInterface.java b/src/org/chromium/support_lib_boundary/ServiceWorkerControllerBoundaryInterface.java
index e25e3ed..077a8fd 100644
--- a/src/org/chromium/support_lib_boundary/ServiceWorkerControllerBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/ServiceWorkerControllerBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/ServiceWorkerWebSettingsBoundaryInterface.java b/src/org/chromium/support_lib_boundary/ServiceWorkerWebSettingsBoundaryInterface.java
index c7f60ab..f13f3a1 100644
--- a/src/org/chromium/support_lib_boundary/ServiceWorkerWebSettingsBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/ServiceWorkerWebSettingsBoundaryInterface.java
@@ -1,10 +1,10 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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 org.chromium.support_lib_boundary.WebSettingsBoundaryInterface.RequestedWithHeaderMode;
+import java.util.Set;
/**
* Boundary interface for ServiceWorkerWebSettings.
@@ -26,7 +26,7 @@ public interface ServiceWorkerWebSettingsBoundaryInterface {
boolean getBlockNetworkLoads();
- void setRequestedWithHeaderMode(@RequestedWithHeaderMode int mode);
- @RequestedWithHeaderMode
- int getRequestedWithHeaderMode();
+ void setRequestedWithHeaderOriginAllowList(Set<String> allowedOriginRules);
+
+ Set<String> getRequestedWithHeaderOriginAllowList();
}
diff --git a/src/org/chromium/support_lib_boundary/StaticsBoundaryInterface.java b/src/org/chromium/support_lib_boundary/StaticsBoundaryInterface.java
index e13b77a..8b281fc 100644
--- a/src/org/chromium/support_lib_boundary/StaticsBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/StaticsBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java b/src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java
index 84b7a1e..4f21973 100644
--- a/src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/TracingControllerBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/VisualStateCallbackBoundaryInterface.java b/src/org/chromium/support_lib_boundary/VisualStateCallbackBoundaryInterface.java
index 6fd25c5..add67f7 100644
--- a/src/org/chromium/support_lib_boundary/VisualStateCallbackBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/VisualStateCallbackBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/WebAuthnCallbackBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebAuthnCallbackBoundaryInterface.java
index 8b6efc1..6eeaa41 100644
--- a/src/org/chromium/support_lib_boundary/WebAuthnCallbackBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebAuthnCallbackBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2021 The Chromium Authors. All rights reserved.
+// Copyright 2021 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/src/org/chromium/support_lib_boundary/WebMessageBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebMessageBoundaryInterface.java
index dff7990..d4315d2 100644
--- a/src/org/chromium/support_lib_boundary/WebMessageBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebMessageBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
@@ -10,7 +10,10 @@ import java.lang.reflect.InvocationHandler;
* Boundary interface for WebMessage.
*/
public interface WebMessageBoundaryInterface extends FeatureFlagHolderBoundaryInterface {
+ @Deprecated
String getData();
+ /* MessagePayload */ InvocationHandler getMessagePayload();
+
/* WebMessagePort */ InvocationHandler[] getPorts();
}
diff --git a/src/org/chromium/support_lib_boundary/WebMessageCallbackBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebMessageCallbackBoundaryInterface.java
index acac2dc..18710ce 100644
--- a/src/org/chromium/support_lib_boundary/WebMessageCallbackBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebMessageCallbackBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/WebMessageListenerBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebMessageListenerBoundaryInterface.java
index 92a393f..6019027 100644
--- a/src/org/chromium/support_lib_boundary/WebMessageListenerBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebMessageListenerBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2019 The Chromium Authors. All rights reserved.
+// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
diff --git a/src/org/chromium/support_lib_boundary/WebMessagePayloadBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebMessagePayloadBoundaryInterface.java
new file mode 100644
index 0000000..4635438
--- /dev/null
+++ b/src/org/chromium/support_lib_boundary/WebMessagePayloadBoundaryInterface.java
@@ -0,0 +1,34 @@
+// Copyright 2022 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 androidx.annotation.IntDef;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/**
+ * Boundary interface for WebMessagePayload.
+ */
+public interface WebMessagePayloadBoundaryInterface extends FeatureFlagHolderBoundaryInterface {
+ @WebMessagePayloadType
+ int getType();
+
+ @Nullable
+ String getAsString();
+
+ @NonNull
+ byte[] getAsArrayBuffer();
+
+ @Retention(RetentionPolicy.SOURCE)
+ @IntDef(flag = true,
+ value = {WebMessagePayloadType.TYPE_STRING, WebMessagePayloadType.TYPE_ARRAY_BUFFER})
+ @interface WebMessagePayloadType {
+ int TYPE_STRING = 0;
+ int TYPE_ARRAY_BUFFER = 1;
+ }
+}
diff --git a/src/org/chromium/support_lib_boundary/WebMessagePortBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebMessagePortBoundaryInterface.java
index 3aacd26..e78adcf 100644
--- a/src/org/chromium/support_lib_boundary/WebMessagePortBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebMessagePortBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java
index 953d8cb..3830415 100644
--- a/src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebResourceErrorBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/WebResourceRequestBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebResourceRequestBoundaryInterface.java
index b91100a..30be829 100644
--- a/src/org/chromium/support_lib_boundary/WebResourceRequestBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebResourceRequestBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/WebSettingsBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebSettingsBoundaryInterface.java
index dd3f383..ef9eef8 100644
--- a/src/org/chromium/support_lib_boundary/WebSettingsBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebSettingsBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
@@ -11,6 +11,7 @@ package org.chromium.support_lib_boundary;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
+import java.util.Set;
/**
* Boundary interface for WebSettingsCompat.
@@ -56,12 +57,11 @@ public interface WebSettingsBoundaryInterface {
@WebAuthnSupport
int getWebAuthnSupport();
- @Retention(RetentionPolicy.SOURCE)
- @interface RequestedWithHeaderMode {
- int NO_HEADER = 0;
- int APP_PACKAGE_NAME = 1;
- }
- void setRequestedWithHeaderMode(@RequestedWithHeaderMode int mode);
- @RequestedWithHeaderMode
- int getRequestedWithHeaderMode();
+ void setRequestedWithHeaderOriginAllowList(Set<String> allowedOriginRules);
+ Set<String> getRequestedWithHeaderOriginAllowList();
+
+ void setEnterpriseAuthenticationAppLinkPolicyEnabled(boolean enabled);
+ boolean getEnterpriseAuthenticationAppLinkPolicyEnabled();
+
+ void enableRestrictSensitiveWebContent();
}
diff --git a/src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java
index fc60168..faaf51f 100644
--- a/src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebViewClientBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/WebViewCookieManagerBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebViewCookieManagerBoundaryInterface.java
new file mode 100644
index 0000000..f79cd22
--- /dev/null
+++ b/src/org/chromium/support_lib_boundary/WebViewCookieManagerBoundaryInterface.java
@@ -0,0 +1,14 @@
+// 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 java.util.List;
+
+/**
+ * Boundary interface for CookieManagerCompat.
+ */
+public interface WebViewCookieManagerBoundaryInterface {
+ List<String> getCookieInfo(String url);
+}
diff --git a/src/org/chromium/support_lib_boundary/WebViewProviderBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebViewProviderBoundaryInterface.java
index d524b31..629f36f 100644
--- a/src/org/chromium/support_lib_boundary/WebViewProviderBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebViewProviderBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java
index 902a04b..f7c7ef7 100644
--- a/src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebViewProviderFactoryBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
@@ -19,4 +19,5 @@ public interface WebViewProviderFactoryBoundaryInterface {
/* SupportLibraryTracingController */ InvocationHandler getTracingController();
/* SupportLibraryProxyController */ InvocationHandler getProxyController();
void setSupportLibraryVersion(String version);
+ /* DropDataContentProviderBoundaryInterface*/ InvocationHandler getDropDataProvider();
}
diff --git a/src/org/chromium/support_lib_boundary/WebViewRendererBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebViewRendererBoundaryInterface.java
index 829c6e1..db5819b 100644
--- a/src/org/chromium/support_lib_boundary/WebViewRendererBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebViewRendererBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/WebViewRendererClientBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebViewRendererClientBoundaryInterface.java
index 043ca66..d7b447d 100644
--- a/src/org/chromium/support_lib_boundary/WebViewRendererClientBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebViewRendererClientBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/WebkitToCompatConverterBoundaryInterface.java b/src/org/chromium/support_lib_boundary/WebkitToCompatConverterBoundaryInterface.java
index 1913b86..5d4c8ac 100644
--- a/src/org/chromium/support_lib_boundary/WebkitToCompatConverterBoundaryInterface.java
+++ b/src/org/chromium/support_lib_boundary/WebkitToCompatConverterBoundaryInterface.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
@@ -63,4 +63,8 @@ public interface WebkitToCompatConverterBoundaryInterface {
/* WebMessagePort */ Object webMessagePort);
/* WebMessagePort */ Object convertWebMessagePort(
/* SupportLibWebMessagePort */ InvocationHandler webMessagePort);
+
+ // CookieManager
+ /* SupportLibWebViewCookieManager */ InvocationHandler convertCookieManager(
+ Object cookieManager);
}
diff --git a/src/org/chromium/support_lib_boundary/package-info.java b/src/org/chromium/support_lib_boundary/package-info.java
index 053f844..1baeb36 100644
--- a/src/org/chromium/support_lib_boundary/package-info.java
+++ b/src/org/chromium/support_lib_boundary/package-info.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
diff --git a/src/org/chromium/support_lib_boundary/util/BoundaryInterfaceReflectionUtil.java b/src/org/chromium/support_lib_boundary/util/BoundaryInterfaceReflectionUtil.java
index 0be05d2..1432065 100644
--- a/src/org/chromium/support_lib_boundary/util/BoundaryInterfaceReflectionUtil.java
+++ b/src/org/chromium/support_lib_boundary/util/BoundaryInterfaceReflectionUtil.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.util;
diff --git a/src/org/chromium/support_lib_boundary/util/Features.java b/src/org/chromium/support_lib_boundary/util/Features.java
index 1415361..30a7bfa 100644
--- a/src/org/chromium/support_lib_boundary/util/Features.java
+++ b/src/org/chromium/support_lib_boundary/util/Features.java
@@ -1,4 +1,4 @@
-// Copyright 2018 The Chromium Authors. All rights reserved.
+// 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.
@@ -105,6 +105,18 @@ public class Features {
public static final String SAFE_BROWSING_RESPONSE_SHOW_INTERSTITIAL =
"SAFE_BROWSING_RESPONSE_SHOW_INTERSTITIAL";
+ /**
+ * Feature was renamed to WEB_MESSAGE_ARRAY_BUFFER.
+ */
+ public static final String WEB_MESSAGE_GET_MESSAGE_PAYLOAD = "WEB_MESSAGE_GET_MESSAGE_PAYLOAD";
+
+ // JsReplyProxy.postMessageWithPayload
+ // WebMessage.getMessagePayload
+ // WebMessagePayload.getAsArrayBuffer
+ // WebMessagePayload.getAsString
+ // WebMessagePayload.getType
+ public static final String WEB_MESSAGE_ARRAY_BUFFER = "WEB_MESSAGE_ARRAY_BUFFER";
+
// WebMessagePortCompat.postMessage
public static final String WEB_MESSAGE_PORT_POST_MESSAGE = "WEB_MESSAGE_PORT_POST_MESSAGE";
@@ -198,8 +210,41 @@ public class Features {
// WebSettingsCompat.getRequestedWithHeaderMode
// ServiceWorkerWebSettingsCompat.setRequestedWithHeaderMode
// ServiceWorkerWebSettingsCompat.getRequestedWithHeaderMode
+ /**
+ * @deprecated Feature was never launched. Do not reuse feature name.
+ */
+ @Deprecated()
public static final String REQUESTED_WITH_HEADER_CONTROL = "REQUESTED_WITH_HEADER_CONTROL";
+ // WebSettingsCompat.setRequestedWithHeaderAllowList
+ // WebSettingsCompat.getRequestedWithHeaderAllowList
+ // ServiceWorkerWebSettingsCompat.setRequestedWithHeaderAllowList
+ // ServiceWorkerWebSettingsCompat.getRequestedWithHeaderAllowList
+ public static final String REQUESTED_WITH_HEADER_ALLOW_LIST =
+ "REQUESTED_WITH_HEADER_ALLOW_LIST";
+
// WebViewCompat.getVariationsHeader
public static final String GET_VARIATIONS_HEADER = "GET_VARIATIONS_HEADER";
+
+ // WebSettingsCompat.setEnterpriseAuthenticationAppLinkPolicyEnabled
+ // WebSettingsCompat.getEnterpriseAuthenticationAppLinkPolicyEnabled
+ public static final String ENTERPRISE_AUTHENTICATION_APP_LINK_POLICY =
+ "ENTERPRISE_AUTHENTICATION_APP_LINK_POLICY";
+
+ // CookieManagerCompat.getCookieInfo
+ public static final String GET_COOKIE_INFO = "GET_COOKIE_INFO";
+
+ // DropDataContentProvider.onCreate
+ // DropDataContentProvider.getStreamTypes
+ // DropDataContentProvider.openFile
+ // DropDataContentProvider.query
+ // DropDataContentProvider.getType
+ // DropDataContentProvider.cache
+ // DropDataContentProvider.setClearCachedDataIntervalMs
+ // DropDataContentProvider.onDragEnd
+ // DropDataContentProvider.call
+ public static final String IMAGE_DRAG_DROP = "IMAGE_DRAG_DROP";
+
+ // WebSettingsCompat.enableRestrictSensitiveWebContent
+ public static final String RESTRICT_SENSITIVE_WEB_CONTENT = "RESTRICT_SENSITIVE_WEB_CONTENT";
}