0

Remove shadowDOM fenced frames Android WebView switch

The shadowDOM fenced frames implementation has been removed and there is
now only a single implementation (MPArch). We remove the
per-implementation switches for enabling fenced frames on Android WebView
and now just have the one.

Bug: 1262022
Change-Id: Ifde5b683c7e8940a570c7b6f0edd472eac6b631e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4166734
Commit-Queue: Kevin McNee <mcnee@chromium.org>
Reviewed-by: Bo Liu <boliu@chromium.org>
Reviewed-by: Shivani Sharma <shivanisha@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1094623}
This commit is contained in:
Kevin McNee
2023-01-19 19:58:13 +00:00
committed by Chromium LUCI CQ
parent 73a815bc9e
commit 348df785b3
5 changed files with 10 additions and 25 deletions
android_webview
common
java
src
org
chromium
javatests
src
org
chromium
android_webview
lib

@ -70,13 +70,9 @@ const char kWebViewDisablePackageAllowlistThrottling[] =
const char kWebViewSelectiveImageInversionDarkening[] =
"webview-selective-image-inversion-darkening";
// Enables MPArch-based FencedFrames. This also implies
// PrivacySandboxAdsAPIsOverride and SharedStorageAPI.
const char kWebViewMPArchFencedFrames[] = "webview-mparch-fenced-frames";
// Enables ShadowDOM-based FencedFrames. This also implies
// PrivacySandboxAdsAPIsOverride and SharedStorageAPI.
const char kWebViewShadowDOMFencedFrames[] = "webview-shadow-dom-fenced-frames";
// Enables FencedFrames. This also implies PrivacySandboxAdsAPIsOverride and
// SharedStorageAPI.
const char kWebViewFencedFrames[] = "webview-fenced-frames";
// Disables WebView from checking for app recovery mitigations.
const char kWebViewDisableAppRecovery[] = "webview-disable-app-recovery";

@ -21,8 +21,7 @@ extern const char kFinchSeedMinUpdatePeriod[];
extern const char kWebViewEnableModernCookieSameSite[];
extern const char kWebViewDisablePackageAllowlistThrottling[];
extern const char kWebViewSelectiveImageInversionDarkening[];
extern const char kWebViewMPArchFencedFrames[];
extern const char kWebViewShadowDOMFencedFrames[];
extern const char kWebViewFencedFrames[];
extern const char kWebViewDisableAppRecovery[];
extern const char kWebViewEnableAppRecovery[];

@ -101,11 +101,8 @@ public final class ProductionSupportedFlagList {
"Disable sending HTTP/2 SETTINGS parameters with reserved identifiers."),
Flag.commandLine(VariationsSwitches.ENABLE_FINCH_SEED_DELTA_COMPRESSION,
"Enables delta-compression when requesting a new seed from the server."),
Flag.commandLine(AwSwitches.WEBVIEW_MP_ARCH_FENCED_FRAMES,
"Enables MPArch-based fenced frames. Also implies SharedStorageAPI, "
+ "and PrivacySandboxAdsAPIsOverride"),
Flag.commandLine(AwSwitches.WEBVIEW_SHADOW_DOM_FENCED_FRAMES,
"Enables ShadowDOM-based fenced frames. Also implies SharedStorageAPI, "
Flag.commandLine(AwSwitches.WEBVIEW_FENCED_FRAMES,
"Enables fenced frames. Also implies SharedStorageAPI, "
+ "and PrivacySandboxAdsAPIsOverride"),
Flag.commandLine(AwSwitches.WEBVIEW_DISABLE_APP_RECOVERY,
"Disables WebView from checking for app recovery mitigations."),

@ -22,6 +22,7 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.chromium.android_webview.AwContents;
import org.chromium.android_webview.common.AwSwitches;
import org.chromium.android_webview.test.util.AwTestTouchUtils;
import org.chromium.android_webview.test.util.CommonResources;
import org.chromium.android_webview.test.util.GraphicsTestUtils;
@ -40,7 +41,7 @@ import java.util.concurrent.TimeoutException;
* Test for creating fenced frames in Android WebView.
*/
@DoNotBatch(reason = "Test instrumentation only supports one hardware compositing view.")
@CommandLineFlags.Add("webview-mparch-fenced-frames")
@CommandLineFlags.Add(AwSwitches.WEBVIEW_FENCED_FRAMES)
@RunWith(AwJUnit4ClassRunner.class)
public class FencedFrameTest {
@Rule

@ -232,16 +232,8 @@ absl::optional<int> AwMainDelegate::BasicStartupComplete() {
features.DisableIfNotSet(::features::kDefaultANGLEVulkan);
}
if (cl->HasSwitch(switches::kWebViewMPArchFencedFrames)) {
features.EnableIfNotSetWithParameter(blink::features::kFencedFrames,
"implementation_type", "mparch");
features.EnableIfNotSet(blink::features::kSharedStorageAPI);
features.EnableIfNotSet(::features::kPrivacySandboxAdsAPIsOverride);
}
if (cl->HasSwitch(switches::kWebViewShadowDOMFencedFrames)) {
features.EnableIfNotSetWithParameter(blink::features::kFencedFrames,
"implementation_type", "shadow_dom");
if (cl->HasSwitch(switches::kWebViewFencedFrames)) {
features.EnableIfNotSet(blink::features::kFencedFrames);
features.EnableIfNotSet(blink::features::kSharedStorageAPI);
features.EnableIfNotSet(::features::kPrivacySandboxAdsAPIsOverride);
}