From 674ab0adbdd0d5c343b25ccdad82f1f2e5a902c2 Mon Sep 17 00:00:00 2001 From: csagan5 <32685696+csagan5@users.noreply.github.com> Date: Thu, 13 May 2021 10:43:31 +0200 Subject: [PATCH] Draft for v91 patches --- build/RELEASE | 2 +- build/bromite_patches_list.txt | 2 - .../AImageReader-CFI-crash-mitigations.patch | 12 +- build/patches/AV1-codec-support.patch | 48 +- .../Add-AllowUserCertificates-flag.patch | 32 +- .../Add-DuckDuckGo-Lite-search-engine.patch | 12 +- .../Add-English-only-search-engine.patch | 6 +- .../Add-IsCleartextPermitted-flag.patch | 10 +- ...-allow-screenshots-in-Incognito-mode.patch | 18 +- .../Add-a-proxy-configuration-page.patch | 59 +- .../Add-an-always-incognito-mode.patch | 155 +- .../Add-bookmark-import-export-actions.patch | 132 +- ...dd-custom-tab-intents-privacy-option.patch | 46 +- build/patches/Add-exit-menu-item.patch | 36 +- .../Add-flag-for-save-data-header.patch | 10 +- ...nfigure-maximum-connections-per-host.patch | 10 +- ...ontrol-video-playback-resume-feature.patch | 6 +- .../Add-flag-to-disable-IPv6-probes.patch | 8 +- build/patches/Add-flag-to-disable-WebGL.patch | 6 +- ...sable-device-motion-orientation-APIs.patch | 34 +- ...dd-history-support-in-incognito-mode.patch | 60 +- .../Add-menu-item-to-bookmark-all-tabs.patch | 66 +- .../Add-menu-item-to-view-source.patch | 38 +- .../Add-option-to-force-tablet-UI.patch | 24 +- ...-to-not-persist-tabs-across-sessions.patch | 32 +- .../Allow-playing-audio-in-background.patch | 4 +- ...c-dns-flag-regardless-of-SDK-version.patch | 4 +- ...e-new-tab-page-for-default-home-page.patch | 2 +- ...ioBuffer-AnalyserNode-fp-mitigations.patch | 2 +- .../Automated-domain-substitution.patch | 5664 +++++++++++------ ...Block-gateway-attacks-via-websockets.patch | 6 +- .../Block-qjz9zk-or-trk-requests.patch | 20 +- .../Bromite-AdBlockUpdaterService.patch | 89 +- ...webRTC-policy-to-not-use-any-address.patch | 2 +- ...DRM-media-origin-IDs-preprovisioning.patch | 2 +- build/patches/Disable-FLoC-by-default.patch | 2 +- ...sts-for-single-word-Omnibar-searches.patch | 2 +- ...le-NTP-remote-suggestions-by-default.patch | 6 +- ...rrentBrowsingContextMedia-by-default.patch | 2 +- build/patches/Disable-all-promo-dialogs.patch | 4 +- .../Disable-feeds-support-by-default.patch | 14 +- ...media-router-and-remoting-by-default.patch | 4 +- ...ble-metrics-collection-for-NTP-tiles.patch | 12 +- .../Disable-metrics-on-all-I-O-threads.patch | 2 +- ...-omission-of-URL-elements-in-Omnibox.patch | 4 +- .../patches/Disable-plugins-enumeration.patch | 2 +- .../patches/Disable-previews-by-default.patch | 27 - ...e-references-to-fonts.googleapis.com.patch | 2 +- build/patches/Disable-safe-browsing.patch | 425 +- .../Disable-smart-selection-by-default.patch | 4 +- ...isable-some-signed-exchange-features.patch | 4 +- .../Disable-sync-services-menu-entry.patch | 13 +- .../Disable-text-fragments-by-default.patch | 26 +- ...Disable-the-DIAL-repeating-discovery.patch | 2 +- ...sable-third-party-cookies-by-default.patch | 2 +- .../Disable-unified-autoplay-feature.patch | 6 +- .../Do-not-compile-QR-code-sharing.patch | 10 +- .../Do-not-hide-component-extensions.patch | 2 +- .../Do-not-store-passwords-by-default.patch | 2 +- ...-SPPI-for-devices-with-enough-memory.patch | 2 +- ...e-darken-websites-checkbox-in-themes.patch | 4 +- ...fwrapv-in-Clang-for-non-UBSan-builds.patch | 4 +- .../Enable-network-isolation-features.patch | 2 +- ...-prefetch-privacy-changes-by-default.patch | 2 +- .../Enable-user-agent-freeze-by-default.patch | 2 +- .../patches/Hide-passwords-manager-link.patch | 2 +- ...of-autocomplete-matches-from-5-to-10.patch | 2 +- ...ripts-for-AMP-tracking-ads-and-video.patch | 16 +- .../Make-all-favicon-requests-on-demand.patch | 2 +- .../patches/Modify-default-preferences.patch | 14 +- ...nt-settings-back-to-privacy-settings.patch | 46 +- .../Multiple-fingerprinting-mitigations.patch | 54 +- ...uiltin-autocomplete-for-chrome-flags.patch | 14 +- .../Open-YouTube-links-in-Bromite.patch | 4 +- ...ders-in-DoH-requests-to-bare-minimum.patch | 39 +- build/patches/Remove-SMS-integration.patch | 10 +- .../Remove-binary-blob-integrations.patch | 1485 ++--- ...cklisted-URLs-upon-bookmark-creation.patch | 14 +- build/patches/Remove-help-menu-item.patch | 25 +- ...-offline-measurement-background-task.patch | 6 +- ...e-signin-and-data-saver-integrations.patch | 519 +- ...weblayer-dependency-on-Play-Services.patch | 2 +- ...ce-DoH-probe-domain-with-RIPE-domain.patch | 2 +- .../Restore-Search-Ready-Omnibox-flag.patch | 16 +- .../Restore-Simplified-NTP-launch.patch | 42 +- .../Restore-classic-new-tab-page.patch | 12 +- ...zontal-tab-switcher-experiment-logic.patch | 1217 ---- ...emove-disable-pull-to-refresh-effect.patch | 8 +- ...vert-flags-remove-num-raster-threads.patch | 10 +- ...moval-of-an-option-to-block-autoplay.patch | 30 +- ...tings-for-cookies-javascript-and-ads.patch | 8 +- .../Switch-to-fstack-protector-strong.patch | 2 +- build/patches/Timezone-customization.patch | 76 +- build/patches/Update-i18n-zh_CN-support.patch | 10 +- .../Use-4-tile-rows-never-show-logo.patch | 6 +- build/patches/User-agent-customization.patch | 52 +- ...build-remove-calling-untrusted-hooks.patch | 16 +- build/patches/disable-AdsBlockedInfoBar.patch | 6 +- .../disable-WebView-variations-support.patch | 2 +- ...fill-server-communication-by-default.patch | 2 +- ...IPv6-connectivity-probes-to-RIPE-DNS.patch | 2 +- ...t_run-deactivate-autoupdate-globally.patch | 2 +- build/patches/kill-Auth.patch | 16 +- .../kill-TOS-and-metrics-opt-out.patch | 12 +- build/patches/kill-Vision.patch | 4 +- ...romium-Disable-Google-host-detection.patch | 8 +- ...gled-chromium-Disable-profile-avatar.patch | 4 +- ...romium-Disable-translate-integration.patch | 129 +- 108 files changed, 5663 insertions(+), 5539 deletions(-) delete mode 100644 build/patches/Disable-previews-by-default.patch delete mode 100644 build/patches/Revert-Remove-horizontal-tab-switcher-experiment-logic.patch diff --git a/build/RELEASE b/build/RELEASE index 083818a3..d21f01d3 100644 --- a/build/RELEASE +++ b/build/RELEASE @@ -1 +1 @@ -90.0.4430.204 +91.0.4472.50 diff --git a/build/bromite_patches_list.txt b/build/bromite_patches_list.txt index 3e93a5e3..71b7c235 100644 --- a/build/bromite_patches_list.txt +++ b/build/bromite_patches_list.txt @@ -80,7 +80,6 @@ Offer-builtin-autocomplete-for-chrome-flags.patch Do-not-grant-notifications-to-default-search-engine.patch Add-flag-to-disable-IPv6-probes.patch Add-a-proxy-configuration-page.patch -Disable-previews-by-default.patch Use-4-tile-rows-never-show-logo.patch Disable-metrics-collection-for-NTP-tiles.patch Enable-SPPI-for-devices-with-enough-memory.patch @@ -107,7 +106,6 @@ Use-dummy-DFM-installer.patch Disable-feeds-support-by-default.patch Disable-autofill-assistant-by-default.patch Show-site-settings-for-cookies-javascript-and-ads.patch -Revert-Remove-horizontal-tab-switcher-experiment-logic.patch Disable-DRM-media-origin-IDs-preprovisioning.patch Disable-smart-selection-by-default.patch Enable-user-agent-freeze-by-default.patch diff --git a/build/patches/AImageReader-CFI-crash-mitigations.patch b/build/patches/AImageReader-CFI-crash-mitigations.patch index 089f46c1..edb3516a 100644 --- a/build/patches/AImageReader-CFI-crash-mitigations.patch +++ b/build/patches/AImageReader-CFI-crash-mitigations.patch @@ -82,7 +82,7 @@ diff --git a/base/android/android_image_reader_compat.h b/base/android/android_i diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -1909,7 +1909,7 @@ +@@ -1935,7 +1935,7 @@ { "name": "enable-image-reader", "owners": [ "vikassoni", "liberato" ], @@ -94,7 +94,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js diff --git a/gpu/config/gpu_driver_bug_list.json b/gpu/config/gpu_driver_bug_list.json --- a/gpu/config/gpu_driver_bug_list.json +++ b/gpu/config/gpu_driver_bug_list.json -@@ -3236,6 +3236,22 @@ +@@ -3206,6 +3206,22 @@ "dont_delete_source_texture_for_egl_image" ] }, @@ -171,7 +171,7 @@ diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc diff --git a/gpu/config/gpu_workaround_list.txt b/gpu/config/gpu_workaround_list.txt --- a/gpu/config/gpu_workaround_list.txt +++ b/gpu/config/gpu_workaround_list.txt -@@ -13,6 +13,7 @@ decode_encode_srgb_for_generatemipmap +@@ -14,6 +14,7 @@ decode_encode_srgb_for_generatemipmap depth_stencil_renderbuffer_resize_emulation disable_2d_canvas_auto_flush disable_accelerated_av1_decode @@ -182,7 +182,7 @@ diff --git a/gpu/config/gpu_workaround_list.txt b/gpu/config/gpu_workaround_list diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc --- a/gpu/ipc/service/gpu_init.cc +++ b/gpu/ipc/service/gpu_init.cc -@@ -488,6 +488,11 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line, +@@ -502,6 +502,11 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line, } } @@ -225,7 +225,7 @@ diff --git a/gpu/ipc/service/stream_texture_android.cc b/gpu/ipc/service/stream_ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc --- a/media/base/media_switches.cc +++ b/media/base/media_switches.cc -@@ -620,6 +620,10 @@ const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning", +@@ -619,6 +619,10 @@ const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning", const base::Feature kMediaDrmPreprovisioningAtStartup{ "MediaDrmPreprovisioningAtStartup", base::FEATURE_ENABLED_BY_DEFAULT}; @@ -239,7 +239,7 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc diff --git a/media/base/media_switches.h b/media/base/media_switches.h --- a/media/base/media_switches.h +++ b/media/base/media_switches.h -@@ -210,6 +210,7 @@ MEDIA_EXPORT extern const base::Feature kMediaControlsExpandGesture; +@@ -205,6 +205,7 @@ MEDIA_EXPORT extern const base::Feature kMediaControlsExpandGesture; MEDIA_EXPORT extern const base::Feature kMediaDrmPersistentLicense; MEDIA_EXPORT extern const base::Feature kMediaDrmPreprovisioning; MEDIA_EXPORT extern const base::Feature kMediaDrmPreprovisioningAtStartup; diff --git a/build/patches/AV1-codec-support.patch b/build/patches/AV1-codec-support.patch index 7bbbf8c5..2de62aef 100644 --- a/build/patches/AV1-codec-support.patch +++ b/build/patches/AV1-codec-support.patch @@ -69,10 +69,10 @@ diff --git a/third_party/libaom/libaom_srcs.gni b/third_party/libaom/libaom_srcs diff --git a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.asm b/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.asm --- a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.asm +++ b/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.asm -@@ -46,7 +46,7 @@ CONFIG_NN_V2 equ 0 - CONFIG_NORMAL_TILE_MODE equ 1 +@@ -47,7 +47,7 @@ CONFIG_NORMAL_TILE_MODE equ 1 CONFIG_OPTICAL_FLOW_API equ 0 CONFIG_OS_SUPPORT equ 1 + CONFIG_PARTITION_SEARCH_ORDER equ 0 -CONFIG_PIC equ 0 +CONFIG_PIC equ 1 CONFIG_RD_DEBUG equ 0 @@ -81,10 +81,10 @@ diff --git a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/a diff --git a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.h b/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.h --- a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.h +++ b/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.h -@@ -48,7 +48,7 @@ - #define CONFIG_NORMAL_TILE_MODE 1 +@@ -49,7 +49,7 @@ #define CONFIG_OPTICAL_FLOW_API 0 #define CONFIG_OS_SUPPORT 1 + #define CONFIG_PARTITION_SEARCH_ORDER 0 -#define CONFIG_PIC 0 +#define CONFIG_PIC 1 #define CONFIG_RD_DEBUG 0 @@ -93,10 +93,10 @@ diff --git a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/a diff --git a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.asm b/third_party/libaom/source/config/linux/arm-neon/config/aom_config.asm --- a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.asm +++ b/third_party/libaom/source/config/linux/arm-neon/config/aom_config.asm -@@ -46,7 +46,7 @@ CONFIG_NN_V2 equ 0 - CONFIG_NORMAL_TILE_MODE equ 1 +@@ -47,7 +47,7 @@ CONFIG_NORMAL_TILE_MODE equ 1 CONFIG_OPTICAL_FLOW_API equ 0 CONFIG_OS_SUPPORT equ 1 + CONFIG_PARTITION_SEARCH_ORDER equ 0 -CONFIG_PIC equ 0 +CONFIG_PIC equ 1 CONFIG_RD_DEBUG equ 0 @@ -105,10 +105,10 @@ diff --git a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.a diff --git a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.h b/third_party/libaom/source/config/linux/arm-neon/config/aom_config.h --- a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.h +++ b/third_party/libaom/source/config/linux/arm-neon/config/aom_config.h -@@ -48,7 +48,7 @@ - #define CONFIG_NORMAL_TILE_MODE 1 +@@ -49,7 +49,7 @@ #define CONFIG_OPTICAL_FLOW_API 0 #define CONFIG_OS_SUPPORT 1 + #define CONFIG_PARTITION_SEARCH_ORDER 0 -#define CONFIG_PIC 0 +#define CONFIG_PIC 1 #define CONFIG_RD_DEBUG 0 @@ -117,10 +117,10 @@ diff --git a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.h diff --git a/third_party/libaom/source/config/linux/arm/config/aom_config.asm b/third_party/libaom/source/config/linux/arm/config/aom_config.asm --- a/third_party/libaom/source/config/linux/arm/config/aom_config.asm +++ b/third_party/libaom/source/config/linux/arm/config/aom_config.asm -@@ -46,7 +46,7 @@ CONFIG_NN_V2 equ 0 - CONFIG_NORMAL_TILE_MODE equ 1 +@@ -47,7 +47,7 @@ CONFIG_NORMAL_TILE_MODE equ 1 CONFIG_OPTICAL_FLOW_API equ 0 CONFIG_OS_SUPPORT equ 1 + CONFIG_PARTITION_SEARCH_ORDER equ 0 -CONFIG_PIC equ 0 +CONFIG_PIC equ 1 CONFIG_RD_DEBUG equ 0 @@ -129,10 +129,10 @@ diff --git a/third_party/libaom/source/config/linux/arm/config/aom_config.asm b/ diff --git a/third_party/libaom/source/config/linux/arm/config/aom_config.h b/third_party/libaom/source/config/linux/arm/config/aom_config.h --- a/third_party/libaom/source/config/linux/arm/config/aom_config.h +++ b/third_party/libaom/source/config/linux/arm/config/aom_config.h -@@ -48,7 +48,7 @@ - #define CONFIG_NORMAL_TILE_MODE 1 +@@ -49,7 +49,7 @@ #define CONFIG_OPTICAL_FLOW_API 0 #define CONFIG_OS_SUPPORT 1 + #define CONFIG_PARTITION_SEARCH_ORDER 0 -#define CONFIG_PIC 0 +#define CONFIG_PIC 1 #define CONFIG_RD_DEBUG 0 @@ -141,10 +141,10 @@ diff --git a/third_party/libaom/source/config/linux/arm/config/aom_config.h b/th diff --git a/third_party/libaom/source/config/linux/arm64/config/aom_config.asm b/third_party/libaom/source/config/linux/arm64/config/aom_config.asm --- a/third_party/libaom/source/config/linux/arm64/config/aom_config.asm +++ b/third_party/libaom/source/config/linux/arm64/config/aom_config.asm -@@ -46,7 +46,7 @@ CONFIG_NN_V2 equ 0 - CONFIG_NORMAL_TILE_MODE equ 1 +@@ -47,7 +47,7 @@ CONFIG_NORMAL_TILE_MODE equ 1 CONFIG_OPTICAL_FLOW_API equ 0 CONFIG_OS_SUPPORT equ 1 + CONFIG_PARTITION_SEARCH_ORDER equ 0 -CONFIG_PIC equ 0 +CONFIG_PIC equ 1 CONFIG_RD_DEBUG equ 0 @@ -153,10 +153,10 @@ diff --git a/third_party/libaom/source/config/linux/arm64/config/aom_config.asm diff --git a/third_party/libaom/source/config/linux/arm64/config/aom_config.h b/third_party/libaom/source/config/linux/arm64/config/aom_config.h --- a/third_party/libaom/source/config/linux/arm64/config/aom_config.h +++ b/third_party/libaom/source/config/linux/arm64/config/aom_config.h -@@ -48,7 +48,7 @@ - #define CONFIG_NORMAL_TILE_MODE 1 +@@ -49,7 +49,7 @@ #define CONFIG_OPTICAL_FLOW_API 0 #define CONFIG_OS_SUPPORT 1 + #define CONFIG_PARTITION_SEARCH_ORDER 0 -#define CONFIG_PIC 0 +#define CONFIG_PIC 1 #define CONFIG_RD_DEBUG 0 @@ -165,10 +165,10 @@ diff --git a/third_party/libaom/source/config/linux/arm64/config/aom_config.h b/ diff --git a/third_party/libaom/source/config/linux/generic/config/aom_config.asm b/third_party/libaom/source/config/linux/generic/config/aom_config.asm --- a/third_party/libaom/source/config/linux/generic/config/aom_config.asm +++ b/third_party/libaom/source/config/linux/generic/config/aom_config.asm -@@ -46,7 +46,7 @@ CONFIG_NN_V2 equ 0 - CONFIG_NORMAL_TILE_MODE equ 1 +@@ -47,7 +47,7 @@ CONFIG_NORMAL_TILE_MODE equ 1 CONFIG_OPTICAL_FLOW_API equ 0 CONFIG_OS_SUPPORT equ 1 + CONFIG_PARTITION_SEARCH_ORDER equ 0 -CONFIG_PIC equ 0 +CONFIG_PIC equ 1 CONFIG_RD_DEBUG equ 0 @@ -177,10 +177,10 @@ diff --git a/third_party/libaom/source/config/linux/generic/config/aom_config.as diff --git a/third_party/libaom/source/config/linux/generic/config/aom_config.h b/third_party/libaom/source/config/linux/generic/config/aom_config.h --- a/third_party/libaom/source/config/linux/generic/config/aom_config.h +++ b/third_party/libaom/source/config/linux/generic/config/aom_config.h -@@ -48,7 +48,7 @@ - #define CONFIG_NORMAL_TILE_MODE 1 +@@ -49,7 +49,7 @@ #define CONFIG_OPTICAL_FLOW_API 0 #define CONFIG_OS_SUPPORT 1 + #define CONFIG_PARTITION_SEARCH_ORDER 0 -#define CONFIG_PIC 0 +#define CONFIG_PIC 1 #define CONFIG_RD_DEBUG 0 @@ -189,10 +189,10 @@ diff --git a/third_party/libaom/source/config/linux/generic/config/aom_config.h diff --git a/third_party/libaom/source/config/linux/x64/config/aom_config.asm b/third_party/libaom/source/config/linux/x64/config/aom_config.asm --- a/third_party/libaom/source/config/linux/x64/config/aom_config.asm +++ b/third_party/libaom/source/config/linux/x64/config/aom_config.asm -@@ -36,7 +36,7 @@ - %define CONFIG_NORMAL_TILE_MODE 1 +@@ -37,7 +37,7 @@ %define CONFIG_OPTICAL_FLOW_API 0 %define CONFIG_OS_SUPPORT 1 + %define CONFIG_PARTITION_SEARCH_ORDER 0 -%define CONFIG_PIC 0 +%define CONFIG_PIC 1 %define CONFIG_RD_DEBUG 0 @@ -201,10 +201,10 @@ diff --git a/third_party/libaom/source/config/linux/x64/config/aom_config.asm b/ diff --git a/third_party/libaom/source/config/linux/x64/config/aom_config.h b/third_party/libaom/source/config/linux/x64/config/aom_config.h --- a/third_party/libaom/source/config/linux/x64/config/aom_config.h +++ b/third_party/libaom/source/config/linux/x64/config/aom_config.h -@@ -48,7 +48,7 @@ - #define CONFIG_NORMAL_TILE_MODE 1 +@@ -49,7 +49,7 @@ #define CONFIG_OPTICAL_FLOW_API 0 #define CONFIG_OS_SUPPORT 1 + #define CONFIG_PARTITION_SEARCH_ORDER 0 -#define CONFIG_PIC 0 +#define CONFIG_PIC 1 #define CONFIG_RD_DEBUG 0 diff --git a/build/patches/Add-AllowUserCertificates-flag.patch b/build/patches/Add-AllowUserCertificates-flag.patch index 95ca93de..e49f22be 100644 --- a/build/patches/Add-AllowUserCertificates-flag.patch +++ b/build/patches/Add-AllowUserCertificates-flag.patch @@ -18,7 +18,7 @@ Subject: Add AllowUserCertificates flag diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -207,6 +207,7 @@ import org.chromium.content_public.browser.ScreenOrientationProvider; +@@ -209,6 +209,7 @@ import org.chromium.content_public.browser.ScreenOrientationProvider; import org.chromium.content_public.browser.SelectionPopupController; import org.chromium.content_public.browser.WebContents; import org.chromium.content_public.common.ContentSwitches; @@ -26,7 +26,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv import org.chromium.printing.PrintManagerDelegateImpl; import org.chromium.printing.PrintingController; import org.chromium.printing.PrintingControllerImpl; -@@ -866,6 +867,8 @@ public abstract class ChromeActivity +@@ -877,6 +878,8 @@ public abstract class ChromeActivity UpdateMenuItemHelper.getInstance().onStart(); ChromeActivitySessionTracker.getInstance().onStartWithNative(); ChromeCachedFlags.getInstance().cacheNativeFlags(); @@ -38,7 +38,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java -@@ -64,6 +64,7 @@ public class ChromeCachedFlags { +@@ -65,6 +65,7 @@ public class ChromeCachedFlags { // clang-format off List featuresToCache = Arrays.asList( @@ -49,9 +49,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/Chrom diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -2759,6 +2759,10 @@ const FeatureEntry kFeatureEntries[] = { - flag_descriptions::kCOLRV1FontsDescription, kOsAll, - FEATURE_VALUE_TYPE(blink::features::kCOLRV1Fonts)}, +@@ -2743,6 +2743,10 @@ const FeatureEntry kFeatureEntries[] = { + flag_descriptions::kCSSContainerQueriesDescription, kOsAll, + FEATURE_VALUE_TYPE(blink::features::kCSSContainerQueries)}, #if defined(OS_ANDROID) + {"allow-user-certificates", + flag_descriptions::kAllowUserCertificatesName, @@ -78,7 +78,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -45,6 +45,9 @@ namespace flag_descriptions { +@@ -46,6 +46,9 @@ namespace flag_descriptions { // Cross-platform ------------------------------------------------------------- @@ -96,30 +96,30 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse &feed::kXsurfaceMetricsReporting, &history::kHideFromApi3Transitions, + &kAllowUserCertificates, - &kAdjustWebApkInstallationSpace, + &kAddToHomescreenIPH, &kAllowNewIncognitoTabIntents, &kAllowRemoteContextForNotifications, @@ -333,6 +334,9 @@ const base::Feature* FindFeatureExposedToJava(const std::string& feature_name) { - } // namespace // Alphabetical: + +const base::Feature kAllowUserCertificates = { + "AllowUserCertificates", base::FEATURE_DISABLED_BY_DEFAULT}; + - const base::Feature kAdjustWebApkInstallationSpace = { - "AdjustWebApkInstallationSpace", base::FEATURE_DISABLED_BY_DEFAULT}; + const base::Feature kAddToHomescreenIPH{"AddToHomescreenIPH", + base::FEATURE_DISABLED_BY_DEFAULT}; diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h --- a/chrome/browser/flags/android/chrome_feature_list.h +++ b/chrome/browser/flags/android/chrome_feature_list.h -@@ -12,6 +12,7 @@ namespace chrome { +@@ -12,6 +12,7 @@ + namespace chrome { namespace android { - // Alphabetical: +extern const base::Feature kAllowUserCertificates; - extern const base::Feature kAdjustWebApkInstallationSpace; + // Alphabetical: + extern const base::Feature kAddToHomescreenIPH; extern const base::Feature kAllowNewIncognitoTabIntents; - extern const base::Feature kAllowRemoteContextForNotifications; diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java --- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java @@ -140,8 +140,8 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f /* Alphabetical: */ + public static final String ALLOW_USER_CERTIFICATES = "AllowUserCertificates"; public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR = "AdaptiveButtonInTopToolbar"; + public static final String ADD_TO_HOMESCREEN_IPH = "AddToHomescreenIPH"; public static final String ALLOW_NEW_INCOGNITO_TAB_INTENTS = "AllowNewIncognitoTabIntents"; - public static final String ALLOW_REMOTE_CONTEXT_FOR_NOTIFICATIONS = diff --git a/net/android/java/src/org/chromium/net/X509Util.java b/net/android/java/src/org/chromium/net/X509Util.java --- a/net/android/java/src/org/chromium/net/X509Util.java +++ b/net/android/java/src/org/chromium/net/X509Util.java diff --git a/build/patches/Add-DuckDuckGo-Lite-search-engine.patch b/build/patches/Add-DuckDuckGo-Lite-search-engine.patch index 56656a52..b5293f05 100644 --- a/build/patches/Add-DuckDuckGo-Lite-search-engine.patch +++ b/build/patches/Add-DuckDuckGo-Lite-search-engine.patch @@ -32,13 +32,13 @@ diff --git a/components/search_engines/search_engine_type.h b/components/search_ --- a/components/search_engines/search_engine_type.h +++ b/components/search_engines/search_engine_type.h @@ -65,6 +65,7 @@ enum SearchEngineType { - SEARCH_ENGINE_360, - SEARCH_ENGINE_COCCOC, - SEARCH_ENGINE_DUCKDUCKGO, + SEARCH_ENGINE_360 = 48, + SEARCH_ENGINE_COCCOC = 49, + SEARCH_ENGINE_DUCKDUCKGO = 50, + SEARCH_ENGINE_DUCKDUCKGOLIGHT, - SEARCH_ENGINE_PARSIJOO, - SEARCH_ENGINE_QWANT, - SEARCH_ENGINE_GIVERO, + SEARCH_ENGINE_PARSIJOO = 51, + SEARCH_ENGINE_QWANT = 52, + SEARCH_ENGINE_GIVERO = 53, diff --git a/components/search_engines/template_url_prepopulate_data.cc b/components/search_engines/template_url_prepopulate_data.cc --- a/components/search_engines/template_url_prepopulate_data.cc +++ b/components/search_engines/template_url_prepopulate_data.cc diff --git a/build/patches/Add-English-only-search-engine.patch b/build/patches/Add-English-only-search-engine.patch index 0f02c02a..82cc2674 100644 --- a/build/patches/Add-English-only-search-engine.patch +++ b/build/patches/Add-English-only-search-engine.patch @@ -45,9 +45,9 @@ diff --git a/components/search_engines/search_engine_type.h b/components/search_ --- a/components/search_engines/search_engine_type.h +++ b/components/search_engines/search_engine_type.h @@ -74,6 +74,7 @@ enum SearchEngineType { - SEARCH_ENGINE_OCEANHERO, - SEARCH_ENGINE_PRIVACYWALL, - SEARCH_ENGINE_ECOSIA, + SEARCH_ENGINE_OCEANHERO = 57, + SEARCH_ENGINE_PRIVACYWALL = 58, + SEARCH_ENGINE_ECOSIA = 59, + SEARCH_ENGINE_GOOGLE_EN, SEARCH_ENGINE_MAX // Bounding value needed for UMA histogram macro. diff --git a/build/patches/Add-IsCleartextPermitted-flag.patch b/build/patches/Add-IsCleartextPermitted-flag.patch index 51300c12..6b6a953e 100644 --- a/build/patches/Add-IsCleartextPermitted-flag.patch +++ b/build/patches/Add-IsCleartextPermitted-flag.patch @@ -14,7 +14,7 @@ Subject: Add IsCleartextPermitted flag diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -7367,6 +7367,11 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7359,6 +7359,11 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE( chrome::android::kBookmarksExportUseSaf)}, @@ -29,7 +29,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -1369,6 +1369,10 @@ const char kHostedAppShimCreationName[] = +@@ -1386,6 +1386,10 @@ const char kHostedAppShimCreationName[] = const char kHostedAppShimCreationDescription[] = "Create app shims on Mac when creating a hosted app."; @@ -43,7 +43,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -813,6 +813,9 @@ extern const char kHostedAppQuitNotificationDescription[]; +@@ -817,6 +817,9 @@ extern const char kHostedAppQuitNotificationDescription[]; extern const char kHostedAppShimCreationName[]; extern const char kHostedAppShimCreationDescription[]; @@ -56,7 +56,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio diff --git a/net/base/features.cc b/net/base/features.cc --- a/net/base/features.cc +++ b/net/base/features.cc -@@ -67,6 +67,9 @@ base::TimeDelta GetExtraTimeAbsolute() { +@@ -70,6 +70,9 @@ base::TimeDelta GetExtraTimeAbsolute() { const base::Feature kEnableTLS13EarlyData{"EnableTLS13EarlyData", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -69,7 +69,7 @@ diff --git a/net/base/features.cc b/net/base/features.cc diff --git a/net/base/features.h b/net/base/features.h --- a/net/base/features.h +++ b/net/base/features.h -@@ -28,6 +28,8 @@ NET_EXPORT extern const base::Feature kCapReferrerToOriginOnCrossOrigin; +@@ -34,6 +34,8 @@ NET_EXPORT extern const base::Feature kCapReferrerToOriginOnCrossOrigin; // Enables TLS 1.3 early data. NET_EXPORT extern const base::Feature kEnableTLS13EarlyData; diff --git a/build/patches/Add-a-flag-to-allow-screenshots-in-Incognito-mode.patch b/build/patches/Add-a-flag-to-allow-screenshots-in-Incognito-mode.patch index a35711f6..203dfd09 100644 --- a/build/patches/Add-a-flag-to-allow-screenshots-in-Incognito-mode.patch +++ b/build/patches/Add-a-flag-to-allow-screenshots-in-Incognito-mode.patch @@ -18,22 +18,22 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc @@ -3105,6 +3105,12 @@ const FeatureEntry kFeatureEntries[] = { + flag_descriptions::kDeprecateLowUsageCodecsName, + flag_descriptions::kDeprecateLowUsageCodecsDescription, kOsCrOS | kOsLinux, FEATURE_VALUE_TYPE(media::kDeprecateLowUsageCodecs)}, - #endif // BUILDFLAG(IS_CHROMEOS_ASH) - +#if defined(OS_ANDROID) + {switches::kEnableIncognitoSnapshotsInAndroidRecents, flag_descriptions::kEnableIncognitoSnapshotsInAndroidRecentsName, + flag_descriptions::kEnableIncognitoSnapshotsInAndroidRecentsDescription, kOsAndroid, + SINGLE_VALUE_TYPE(switches::kEnableIncognitoSnapshotsInAndroidRecents)}, +#endif + - #if (defined(OS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) && !defined(OS_ANDROID) - { - "enable-accelerated-video-decode", + #endif // defined(OS_CHROMEOS) + + #if defined(OS_LINUX) diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -589,6 +589,11 @@ const char kEnableAutofillCreditCardAuthenticationDescription[] = +@@ -605,6 +605,11 @@ const char kEnableAutofillCreditCardAuthenticationDescription[] = "authenticator (if available) to verify card ownership when retrieving " "credit cards from Google Payments."; @@ -48,7 +48,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -362,6 +362,9 @@ extern const char kEnableAutofillAddressSavePromptDescription[]; +@@ -369,6 +369,9 @@ extern const char kEnableAutofillAddressSavePromptDescription[]; extern const char kEnableAutofillCreditCardAblationExperimentDisplayName[]; extern const char kEnableAutofillCreditCardAblationExperimentDescription[]; @@ -75,7 +75,7 @@ diff --git a/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmp diff --git a/chrome/common/chrome_switches.cc b/chrome/common/chrome_switches.cc --- a/chrome/common/chrome_switches.cc +++ b/chrome/common/chrome_switches.cc -@@ -326,6 +326,9 @@ const char kHomePage[] = "homepage"; +@@ -335,6 +335,9 @@ const char kHomePage[] = "homepage"; // Causes the browser to launch directly in incognito mode. const char kIncognito[] = "incognito"; @@ -88,7 +88,7 @@ diff --git a/chrome/common/chrome_switches.cc b/chrome/common/chrome_switches.cc diff --git a/chrome/common/chrome_switches.h b/chrome/common/chrome_switches.h --- a/chrome/common/chrome_switches.h +++ b/chrome/common/chrome_switches.h -@@ -111,6 +111,7 @@ extern const char kForceFirstRun[]; +@@ -113,6 +113,7 @@ extern const char kForceFirstRun[]; extern const char kForceStackedTabStripLayout[]; extern const char kHomePage[]; extern const char kIncognito[]; diff --git a/build/patches/Add-a-proxy-configuration-page.patch b/build/patches/Add-a-proxy-configuration-page.patch index a2325659..1f47c1d5 100644 --- a/build/patches/Add-a-proxy-configuration-page.patch +++ b/build/patches/Add-a-proxy-configuration-page.patch @@ -11,7 +11,7 @@ for SimpleURLLoaders as well. --- chrome/android/java/res/values/values.xml | 3 + .../java/res/xml/privacy_preferences.xml | 4 + - .../privacy/settings/PrivacySettings.java | 5 +- + .../privacy/settings/PrivacySettings.java | 1 + .../chrome_autocomplete_provider_client.cc | 2 + chrome/browser/browser_resources.grd | 6 + chrome/browser/net/proxy_service_factory.cc | 23 +- @@ -33,7 +33,7 @@ for SimpleURLLoaders as well. .../proxy_config/proxy_config_dictionary.h | 7 +- net/proxy_resolution/proxy_config.cc | 52 ++- net/proxy_resolution/proxy_config.h | 3 + - 24 files changed, 997 insertions(+), 15 deletions(-) + 24 files changed, 994 insertions(+), 14 deletions(-) create mode 100644 chrome/browser/resources/proxy_config.css create mode 100644 chrome/browser/resources/proxy_config.html create mode 100644 chrome/browser/resources/proxy_config.js @@ -43,7 +43,7 @@ for SimpleURLLoaders as well. diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res/values/values.xml --- a/chrome/android/java/res/values/values.xml +++ b/chrome/android/java/res/values/values.xml -@@ -32,6 +32,9 @@ +@@ -29,6 +29,9 @@ 0 1 @@ -56,44 +56,35 @@ diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -7,6 +7,10 @@ - xmlns:app="http://schemas.android.com/apk/res-auto" - android:orderingFromXml="false"> +@@ -6,6 +6,10 @@ + + - builtins_to_provide; - builtins_to_provide.push_back( - base::ASCIIToUTF16(chrome::kChromeUIFlagsURL)); +@@ -344,6 +344,8 @@ std::vector ChromeAutocompleteProviderClient::GetBuiltinURLs() { + std::vector + ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { + std::vector builtins_to_provide; + builtins_to_provide.push_back( + base::ASCIIToUTF16(chrome::kChromeUIProxyConfigURL)); builtins_to_provide.push_back( @@ -102,7 +93,7 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd --- a/chrome/browser/browser_resources.grd +++ b/chrome/browser/browser_resources.grd -@@ -162,6 +162,12 @@ +@@ -88,6 +88,12 @@ @@ -182,7 +173,7 @@ diff --git a/chrome/browser/net/proxy_service_factory.h b/chrome/browser/net/pro diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -156,6 +156,8 @@ +@@ -155,6 +155,8 @@ #include "printing/buildflags/buildflags.h" #include "rlz/buildflags/buildflags.h" @@ -191,7 +182,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse #if BUILDFLAG(ENABLE_BACKGROUND_MODE) #include "chrome/browser/background/background_mode_manager.h" #endif -@@ -746,6 +748,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { +@@ -744,6 +746,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { PluginsResourceService::RegisterPrefs(registry); #endif @@ -203,7 +194,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse diff --git a/chrome/browser/prefs/chrome_command_line_pref_store.cc b/chrome/browser/prefs/chrome_command_line_pref_store.cc --- a/chrome/browser/prefs/chrome_command_line_pref_store.cc +++ b/chrome/browser/prefs/chrome_command_line_pref_store.cc -@@ -156,7 +156,7 @@ void ChromeCommandLinePrefStore::ApplyProxyMode() { +@@ -159,7 +159,7 @@ void ChromeCommandLinePrefStore::ApplyProxyMode() { SetValue( proxy_config::prefs::kProxy, std::make_unique(ProxyConfigDictionary::CreateFixedServers( @@ -634,7 +625,7 @@ new file mode 100644 diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -254,6 +254,8 @@ static_library("ui") { +@@ -255,6 +255,8 @@ static_library("ui") { "webui/metrics_handler.h", "webui/net_export_ui.cc", "webui/net_export_ui.h", @@ -646,7 +637,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc --- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc +++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc -@@ -52,6 +52,7 @@ +@@ -51,6 +51,7 @@ #include "chrome/browser/ui/webui/omnibox/omnibox_ui.h" #include "chrome/browser/ui/webui/policy/policy_ui.h" #include "chrome/browser/ui/webui/predictors/predictors_ui.h" @@ -654,7 +645,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom #include "chrome/browser/ui/webui/quota_internals/quota_internals_ui.h" #include "chrome/browser/ui/webui/signin_internals_ui.h" #include "chrome/browser/ui/webui/sync_internals/sync_internals_ui.h" -@@ -555,6 +556,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, +@@ -573,6 +574,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, return &NewWebUI; if (url.host_piece() == chrome::kChromeUINetExportHost) return &NewWebUI; @@ -1135,7 +1126,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons const char kChromeUIChromeURLsHost[] = "chrome-urls"; const char kChromeUIChromeURLsURL[] = "chrome://chrome-urls/"; const char kChromeUIComponentsHost[] = "components"; -@@ -327,6 +329,7 @@ bool IsSystemWebUIHost(base::StringPiece host) { +@@ -335,6 +337,7 @@ bool IsSystemWebUIHost(base::StringPiece host) { kChromeUIMobileSetupHost, kChromeUIMultiDeviceSetupHost, kChromeUINetworkHost, @@ -1143,7 +1134,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons kChromeUIOobeHost, kChromeUIOSCreditsHost, kChromeUIOSSettingsHost, -@@ -539,6 +542,7 @@ const char* const kChromeHostURLs[] = { +@@ -551,6 +554,7 @@ const char* const kChromeHostURLs[] = { #if !defined(OS_ANDROID) #if !BUILDFLAG(IS_CHROMEOS_ASH) kChromeUIAppLauncherPageHost, diff --git a/build/patches/Add-an-always-incognito-mode.patch b/build/patches/Add-an-always-incognito-mode.patch index 7d14995f..23837d3b 100644 --- a/build/patches/Add-an-always-incognito-mode.patch +++ b/build/patches/Add-an-always-incognito-mode.patch @@ -13,17 +13,17 @@ Enable incognito custom tabs and fix crashes for incognito/custom tab intents (c .../chrome/browser/ChromeTabbedActivity.java | 6 +- .../chrome/browser/app/ChromeActivity.java | 4 + .../AppMenuPropertiesDelegateImpl.java | 6 ++ - .../ChromeContextMenuPopulator.java | 9 ++- - .../CustomTabActivityLifecycleUmaTracker.java | 5 -- + .../ChromeContextMenuPopulator.java | 28 +++++-- + .../CustomTabActivityLifecycleUmaTracker.java | 25 ------ .../CustomTabIntentDataProvider.java | 5 +- .../browser/init/StartupTabPreloader.java | 14 +++- - .../privacy/settings/PrivacySettings.java | 2 + + .../privacy/settings/PrivacySettings.java | 1 + .../browser/tabmodel/ChromeTabCreator.java | 16 +++- .../browser/tabmodel/TabPersistentStore.java | 10 +++ .../webapps/WebappIntentDataProvider.java | 14 ++++ .../flags/android/chrome_feature_list.cc | 2 +- .../strings/android_chrome_strings.grd | 7 ++ - 16 files changed, 172 insertions(+), 14 deletions(-) + 16 files changed, 186 insertions(+), 38 deletions(-) create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni @@ -40,10 +40,10 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -18,6 +18,11 @@ - android:summary="@string/preload_pages_summary" - android:persistent="false" - android:order="1"/> +@@ -24,6 +24,11 @@ + android:key="secure_dns" + android:title="@string/settings_secure_dns_title" + android:fragment="org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings"/> + +@@ -1737,6 +1738,9 @@ public abstract class ChromeActivity throw new IllegalStateException( "Attempting to access TabCreator before initialization"); } @@ -184,7 +184,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java -@@ -557,6 +557,12 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate +@@ -359,6 +359,12 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate } private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) { @@ -210,32 +210,81 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr import org.chromium.chrome.browser.compositor.bottombar.ephemeraltab.EphemeralTabCoordinator; import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item; import org.chromium.chrome.browser.contextmenu.ChromeContextMenuPopulator.ContextMenuUma.Action; -@@ -344,7 +346,12 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { - if (FirstRunStatus.getFirstRunFlowComplete() && !isEmptyUrl(mParams.getUrl()) +@@ -332,6 +334,18 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { + params.getLinkUrl().getSpec()); + } + ++ /** ++ * Disallow opening in a new tab when in always-incognito mode. ++ */ ++ private static boolean canOpenNewTab() { ++ if (ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false) ++ /*&& !mItemDelegate.isIncognito()*/) { ++ return false; ++ } ++ return true; ++ } ++ ++ + @Override + public List> buildContextMenu() { + boolean hasSaveImage = false; +@@ -345,14 +359,18 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator { && UrlUtilities.isAcceptedScheme(mParams.getUrl().getSpec())) { if (mMode == ContextMenuMode.NORMAL) { -- linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); -+ if (ContextUtils.getAppSharedPreferences().getBoolean(AlwaysIncognitoLinkInterceptor.PREF_ALWAYS_INCOGNITO, false) -+ && !mItemDelegate.isIncognito()) { -+ // disallow open in new tab -+ } else -+ linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); -+ - if (!mItemDelegate.isIncognito() && mItemDelegate.isIncognitoSupported()) { - linkGroup.add(createListItem(Item.OPEN_IN_INCOGNITO_TAB)); + if (TabUiFeatureUtilities.ENABLE_TAB_GROUP_AUTO_CREATION.getValue()) { +- linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); ++ if (canOpenNewTab()) linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); + } else { + if (TabUiFeatureUtilities.showContextMenuOpenNewTabInGroupItemFirst()) { +- linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP)); +- linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); ++ if (canOpenNewTab()) { ++ linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP)); ++ linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); ++ } + } else { +- linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); +- linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP)); ++ if (canOpenNewTab()) { ++ linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB)); ++ linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP)); ++ } + } } + if (!mItemDelegate.isIncognito() && mItemDelegate.isIncognitoSupported()) { diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityLifecycleUmaTracker.java -@@ -34,11 +34,6 @@ public class CustomTabActivityLifecycleUmaTracker implements PauseResumeWithNati +@@ -39,31 +39,6 @@ public class CustomTabActivityLifecycleUmaTracker implements PauseResumeWithNati private boolean mIsInitialResume = true; private void recordIncognitoLaunchReason() { - IncognitoCustomTabIntentDataProvider incognitoProvider = - (IncognitoCustomTabIntentDataProvider) mIntentDataProvider; +- +- @IntentHandler.IncognitoCCTCallerId +- int incognitoCCTCallerId = incognitoProvider.getFeatureIdForMetricsCollection(); - RecordHistogram.recordEnumeratedHistogram("CustomTabs.IncognitoCCTCallerId", -- incognitoProvider.getFeatureIdForMetricsCollection(), -- IntentHandler.IncognitoCCTCallerId.NUM_ENTRIES); +- incognitoCCTCallerId, IntentHandler.IncognitoCCTCallerId.NUM_ENTRIES); +- +- // Record which 1P app launched Incognito CCT. +- if (incognitoCCTCallerId == IntentHandler.IncognitoCCTCallerId.GOOGLE_APPS) { +- String sendersPackageName = incognitoProvider.getSendersPackageName(); +- @IntentHandler.ExternalAppId +- int externalId = IntentHandler.mapPackageToExternalAppId(sendersPackageName); +- if (externalId != IntentHandler.ExternalAppId.OTHER) { +- RecordHistogram.recordEnumeratedHistogram("CustomTabs.ClientAppId.Incognito", +- externalId, IntentHandler.ExternalAppId.NUM_ENTRIES); +- } else { +- // Using package name didn't give any meaningful insight on who launched the +- // Incognito CCT, falling back to check if they provided EXTRA_APPLICATION_ID. +- externalId = +- IntentHandler.determineExternalIntentSource(incognitoProvider.getIntent()); +- RecordHistogram.recordEnumeratedHistogram("CustomTabs.ClientAppId.Incognito", +- externalId, IntentHandler.ExternalAppId.NUM_ENTRIES); +- } +- } } private void recordUserAction() { @@ -252,7 +301,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; -@@ -781,7 +784,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid +@@ -772,7 +775,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid @Override public boolean isIncognito() { @@ -312,18 +361,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment"; private static final String PREF_NETWORK_PREDICTIONS = "preload_pages"; private static final String PREF_SECURE_DNS = "secure_dns"; -@@ -49,6 +50,7 @@ public class PrivacySettings - private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data"; - private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; - private static final String[] NEW_PRIVACY_PREFERENCE_ORDER = {PREF_CLEAR_BROWSING_DATA, -+ PREF_ALWAYS_INCOGNITO, - PREF_CAN_MAKE_PAYMENT, PREF_NETWORK_PREDICTIONS, - PREF_SECURE_DNS, PREF_DO_NOT_TRACK, PREF_PRIVACY_SANDBOX}; - diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java -@@ -41,6 +41,10 @@ import org.chromium.ui.base.PageTransition; +@@ -43,6 +43,10 @@ import org.chromium.ui.base.PageTransition; import org.chromium.ui.base.WindowAndroid; import org.chromium.url.GURL; @@ -334,15 +375,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome /** * This class creates various kinds of new tabs and adds them to the right {@link TabModel}. */ -@@ -69,6 +73,7 @@ public class ChromeTabCreator extends TabCreator { - private final ChromeActivity mActivity; +@@ -71,6 +75,7 @@ public class ChromeTabCreator extends TabCreator { + private final Activity mActivity; private final StartupTabPreloader mStartupTabPreloader; private final boolean mIncognito; + private final TabObserver mExtraLogic; private WindowAndroid mNativeWindow; private TabModel mTabModel; -@@ -87,6 +92,10 @@ public class ChromeTabCreator extends TabCreator { +@@ -93,6 +98,10 @@ public class ChromeTabCreator extends TabCreator { mNativeWindow = nativeWindow; mTabDelegateFactorySupplier = tabDelegateFactory; mIncognito = incognito; @@ -352,8 +393,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome + mExtraLogic = null; mOverviewNTPCreator = overviewNTPCreator; mAsyncTabParamsManager = asyncTabParamsManager; - } -@@ -247,6 +256,8 @@ public class ChromeTabCreator extends TabCreator { + mTabModelSelectorSupplier = tabModelSelectorSupplier; +@@ -255,6 +264,8 @@ public class ChromeTabCreator extends TabCreator { if (creationState == TabCreationState.LIVE_IN_FOREGROUND && !openInForeground) { creationState = TabCreationState.LIVE_IN_BACKGROUND; } @@ -362,7 +403,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome mTabModel.addTab(tab, position, type, creationState); return tab; } finally { -@@ -281,6 +292,8 @@ public class ChromeTabCreator extends TabCreator { +@@ -289,6 +300,8 @@ public class ChromeTabCreator extends TabCreator { @TabCreationState int creationState = openInForeground ? TabCreationState.LIVE_IN_FOREGROUND : TabCreationState.LIVE_IN_BACKGROUND; @@ -371,7 +412,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome mTabModel.addTab(tab, position, type, creationState); return true; } -@@ -324,7 +337,6 @@ public class ChromeTabCreator extends TabCreator { +@@ -332,7 +345,6 @@ public class ChromeTabCreator extends TabCreator { // TODO(crbug.com/1081924): Clean up the launches from SearchActivity/Chrome. public Tab launchUrlFromExternalApp(String url, String referer, String headers, String appId, boolean forceNewTab, Intent intent, long intentTimestamp) { @@ -379,7 +420,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome boolean isLaunchedFromChrome = TextUtils.equals(appId, mActivity.getPackageName()); if (forceNewTab && !isLaunchedFromChrome) { -@@ -438,6 +450,8 @@ public class ChromeTabCreator extends TabCreator { +@@ -446,6 +458,8 @@ public class ChromeTabCreator extends TabCreator { .setSerializedCriticalPersistedTabData(serializedCriticalPersistedTabData) .build(); } @@ -391,7 +432,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java -@@ -17,6 +17,7 @@ import androidx.core.util.AtomicFile; +@@ -18,6 +18,7 @@ import androidx.core.util.AtomicFile; import org.chromium.base.Callback; import org.chromium.base.CallbackController; @@ -399,16 +440,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer import org.chromium.base.Log; import org.chromium.base.ObserverList; import org.chromium.base.StreamUtil; -@@ -52,6 +53,8 @@ import org.chromium.components.embedder_support.util.UrlUtilities; - import org.chromium.content_public.browser.LoadUrlParams; +@@ -56,6 +57,8 @@ import org.chromium.content_public.browser.LoadUrlParams; import org.chromium.content_public.browser.UiThreadTaskTraits; + import org.chromium.url.GURL; +import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor; + import java.io.BufferedInputStream; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; -@@ -646,6 +649,13 @@ public class TabPersistentStore { +@@ -686,6 +689,13 @@ public class TabPersistentStore { } } } @@ -425,7 +466,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProvider.java --- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProvider.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappIntentDataProvider.java -@@ -19,6 +19,9 @@ import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProv +@@ -21,6 +21,9 @@ import org.chromium.chrome.browser.browserservices.intents.WebappExtras; import org.chromium.chrome.browser.flags.ActivityType; import org.chromium.components.browser_ui.widget.TintedDrawable; @@ -435,7 +476,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI /** * Stores info about a web app. */ -@@ -32,6 +35,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider +@@ -34,6 +37,8 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider private final @ActivityType int mActivityType; private final Intent mIntent; @@ -444,7 +485,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI /** * Returns the toolbar color to use if a custom color is not specified by the webapp. */ -@@ -51,6 +56,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider +@@ -53,6 +58,10 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider mWebappExtras = webappExtras; mWebApkExtras = webApkExtras; mActivityType = (webApkExtras != null) ? ActivityType.WEB_APK : ActivityType.WEBAPP; @@ -455,7 +496,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI } @Override -@@ -138,6 +147,11 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider +@@ -140,6 +149,11 @@ public class WebappIntentDataProvider extends BrowserServicesIntentDataProvider return mWebApkExtras; } @@ -470,7 +511,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -404,7 +404,7 @@ const base::Feature kCCTIncognito{"CCTIncognito", +@@ -408,7 +408,7 @@ const base::Feature kCCTIncognito{"CCTIncognito", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kCCTIncognitoAvailableToThirdParty{ @@ -483,8 +524,8 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd @@ -893,6 +893,13 @@ Your Google account may have other forms of browsing history like searches and a - - Clears history and autocompletions in the address bar. + + Clears history from all signed-in devices. + + diff --git a/build/patches/Add-bookmark-import-export-actions.patch b/build/patches/Add-bookmark-import-export-actions.patch index 39bf2f6d..1accc1b7 100644 --- a/build/patches/Add-bookmark-import-export-actions.patch +++ b/build/patches/Add-bookmark-import-export-actions.patch @@ -16,13 +16,13 @@ Completely remove contacts picker permission from the file dialog .../browser/bookmarks/BookmarkBridge.java | 277 +++++++++++++++++ .../browser/bookmarks/BookmarkDelegate.java | 10 + .../browser/bookmarks/BookmarkManager.java | 22 ++ - .../browser/bookmarks/BookmarkPage.java | 9 +- - .../native_page/NativePageFactory.java | 3 +- + .../browser/bookmarks/BookmarkPage.java | 8 +- + .../native_page/NativePageFactory.java | 2 +- chrome/browser/BUILD.gn | 6 +- chrome/browser/about_flags.cc | 6 + .../android/bookmarks/bookmark_bridge.cc | 284 ++++++++++++++++++ .../android/bookmarks/bookmark_bridge.h | 28 +- - .../browser/bookmarks/bookmark_html_writer.cc | 7 +- + .../browser/bookmarks/bookmark_html_writer.cc | 8 +- .../dialogs/DownloadLocationCustomView.java | 7 +- .../DownloadLocationDialogCoordinator.java | 10 +- chrome/browser/flag_descriptions.cc | 5 + @@ -43,7 +43,7 @@ Completely remove contacts picker permission from the file dialog ui/shell_dialogs/select_file_dialog.h | 2 + .../select_file_dialog_android.cc | 6 + ui/shell_dialogs/select_file_dialog_android.h | 2 + - 37 files changed, 877 insertions(+), 23 deletions(-) + 37 files changed, 876 insertions(+), 23 deletions(-) diff --git a/base/android/content_uri_utils.cc b/base/android/content_uri_utils.cc --- a/base/android/content_uri_utils.cc @@ -131,7 +131,7 @@ diff --git a/base/android/java/src/org/chromium/base/ContentUriUtils.java b/base diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml -@@ -39,7 +39,6 @@ by a child template that "extends" this file. +@@ -38,7 +38,6 @@ by a child template that "extends" this file. {% endif %} @@ -228,7 +228,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm static final int EDIT_BOOKMARK_REQUEST_CODE = 14; public static final String INTENT_VISIT_BOOKMARK_ID = "BookmarkEditActivity.VisitBookmarkId"; -@@ -38,6 +43,20 @@ public class BookmarkActivity extends SnackbarActivity { +@@ -40,6 +45,20 @@ public class BookmarkActivity extends SnackbarActivity { if (TextUtils.isEmpty(url)) url = UrlConstants.BOOKMARKS_URL; mBookmarkManager.updateForUrl(url); setContentView(mBookmarkManager.getView()); @@ -249,7 +249,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm } @Override -@@ -54,6 +73,7 @@ public class BookmarkActivity extends SnackbarActivity { +@@ -56,6 +75,7 @@ public class BookmarkActivity extends SnackbarActivity { @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); @@ -257,7 +257,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm if (requestCode == EDIT_BOOKMARK_REQUEST_CODE && resultCode == RESULT_OK) { BookmarkId bookmarkId = BookmarkId.getBookmarkIdFromString(data.getStringExtra( INTENT_VISIT_BOOKMARK_ID)); -@@ -61,6 +81,14 @@ public class BookmarkActivity extends SnackbarActivity { +@@ -63,6 +83,14 @@ public class BookmarkActivity extends SnackbarActivity { } } @@ -631,7 +631,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm private BookmarkUndoController mUndoController; private final ObserverList mUIObservers = new ObserverList<>(); private BasicNativePage mNativePage; -@@ -328,6 +332,14 @@ public class BookmarkManager +@@ -331,6 +335,14 @@ public class BookmarkManager mNativePage = nativePage; } @@ -646,7 +646,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** * @return Current URL representing the UI state of bookmark manager. If no state has been shown * yet in this session, on phone return last used state stored in preference; on tablet -@@ -506,6 +518,16 @@ public class BookmarkManager +@@ -509,6 +521,16 @@ public class BookmarkManager } } @@ -676,18 +676,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** * A native page holding a {@link BookmarkManager} on _tablet_. -@@ -29,11 +32,15 @@ public class BookmarkPage extends BasicNativePage { +@@ -29,12 +32,15 @@ public class BookmarkPage extends BasicNativePage { * @param host A NativePageHost to load urls. */ - public BookmarkPage( -- ComponentName componentName, SnackbarManager snackbarManager, NativePageHost host) { -+ ComponentName componentName, SnackbarManager snackbarManager, NativePageHost host, -+ ChromeActivity activity) { + public BookmarkPage(ComponentName componentName, SnackbarManager snackbarManager, +- boolean isIncognito, NativePageHost host) { ++ boolean isIncognito, NativePageHost host, ChromeActivity activity) { super(host); - mManager = new BookmarkManager(host.getContext(), componentName, false, snackbarManager); + mManager = new BookmarkManager( + host.getContext(), componentName, false, isIncognito, snackbarManager); mManager.setBasicNativePage(this); -+ mManager.setWindow(activity.getWindowAndroid(), ++ mManager.setWindow(activity.getWindowAndroid(), + new ModalDialogManager( + new AppModalPresenter(activity), ModalDialogManager.ModalDialogType.APP)); mTitle = host.getContext().getResources().getString(R.string.bookmarks); @@ -696,20 +696,19 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java --- a/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/native_page/NativePageFactory.java -@@ -96,7 +96,8 @@ public class NativePageFactory { - +@@ -100,7 +100,7 @@ public class NativePageFactory { protected NativePage buildBookmarksPage(Tab tab) { return new BookmarkPage(mActivity.getComponentName(), mActivity.getSnackbarManager(), + mActivity.getTabModelSelector().isIncognitoSelected(), - new TabShim(tab, mActivity)); -+ new TabShim(tab, mActivity), -+ mActivity); ++ new TabShim(tab, mActivity), mActivity); } protected NativePage buildDownloadsPage(Tab tab) { diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -1876,6 +1876,8 @@ static_library("browser") { +@@ -1823,6 +1823,8 @@ static_library("browser") { "webapps/chrome_webapps_client.h", "window_placement/window_placement_permission_context.cc", "window_placement/window_placement_permission_context.h", @@ -718,7 +717,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn ] configs += [ -@@ -2958,6 +2960,8 @@ static_library("browser") { +@@ -2914,6 +2916,8 @@ static_library("browser") { "autofill/manual_filling_view_interface.h", "banners/android/chrome_app_banner_manager_android.cc", "banners/android/chrome_app_banner_manager_android.h", @@ -727,7 +726,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "browser_process_platform_part_android.cc", "browser_process_platform_part_android.h", "chrome_browser_field_trials_mobile.cc", -@@ -3444,8 +3448,6 @@ static_library("browser") { +@@ -3415,8 +3419,6 @@ static_library("browser") { "badging/badge_manager_factory.h", "banners/app_banner_manager_desktop.cc", "banners/app_banner_manager_desktop.h", @@ -739,9 +738,9 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -7312,6 +7312,12 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE( - optimization_guide::features::kOptimizationGuideModelDownloading)}, +@@ -7309,6 +7309,12 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(features::kDesktopPWAsAppIconShortcutsMenuUI)}, + #endif + {"export-bookmarks-use-saf", + flag_descriptions::kBookmarksExportUseSafName, @@ -755,7 +754,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browser/android/bookmarks/bookmark_bridge.cc --- a/chrome/browser/android/bookmarks/bookmark_bridge.cc +++ b/chrome/browser/android/bookmarks/bookmark_bridge.cc -@@ -39,6 +39,7 @@ +@@ -38,6 +38,7 @@ #include "components/bookmarks/common/android/bookmark_type.h" #include "components/bookmarks/common/bookmark_pref_names.h" #include "components/bookmarks/managed/managed_bookmark_service.h" @@ -763,7 +762,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse #include "components/dom_distiller/core/url_utils.h" #include "components/prefs/pref_service.h" #include "components/query_parser/query_parser.h" -@@ -48,6 +49,24 @@ +@@ -47,6 +48,24 @@ #include "content/public/browser/browser_thread.h" #include "content/public/browser/web_contents.h" @@ -788,7 +787,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse using base::android::AttachCurrentThread; using base::android::ConvertUTF8ToJavaString; using base::android::ConvertUTF16ToJavaString; -@@ -64,8 +83,93 @@ using bookmarks::BookmarkNode; +@@ -63,8 +82,93 @@ using bookmarks::BookmarkNode; using bookmarks::BookmarkType; using content::BrowserThread; @@ -882,7 +881,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse const int kInvalidId = -1; class BookmarkTitleComparer { -@@ -150,6 +254,10 @@ BookmarkBridge::~BookmarkBridge() { +@@ -149,6 +253,10 @@ BookmarkBridge::~BookmarkBridge() { if (partner_bookmarks_shim_) partner_bookmarks_shim_->RemoveObserver(this); reading_list_manager_->RemoveObserver(this); @@ -893,7 +892,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse } void BookmarkBridge::Destroy(JNIEnv*, const JavaParamRef&) { -@@ -540,6 +648,182 @@ jint BookmarkBridge::GetTotalBookmarkCount( +@@ -539,6 +647,182 @@ jint BookmarkBridge::GetTotalBookmarkCount( return count; } @@ -1080,7 +1079,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser --- a/chrome/browser/android/bookmarks/bookmark_bridge.h +++ b/chrome/browser/android/bookmarks/bookmark_bridge.h @@ -17,6 +17,7 @@ - #include "base/strings/string16.h" + #include "base/scoped_observer.h" #include "base/strings/utf_string_conversions.h" #include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h" +#include "chrome/browser/bookmarks/bookmark_html_writer.h" @@ -1173,16 +1172,17 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b #include "chrome/browser/bookmarks/bookmark_model_factory.h" #include "chrome/browser/favicon/favicon_service_factory.h" #include "chrome/browser/profiles/profile.h" -@@ -240,7 +241,11 @@ class Writer : public base::RefCountedThreadSafe { +@@ -240,7 +241,12 @@ class Writer : public base::RefCountedThreadSafe { // Opens the file, returning true on success. bool OpenFile() { int flags = base::File::FLAG_CREATE_ALWAYS | base::File::FLAG_WRITE; -- file_.reset(new base::File(path_, flags)); +- file_ = std::make_unique(path_, flags); + if (path_.IsContentUri()) { + file_ = std::make_unique(base::OpenContentUriForWrite(path_)); + } else { -+ file_.reset(new base::File(path_, flags)); ++ file_ = std::make_unique(path_, flags); + } ++ if (!file_->IsValid()) { PLOG(ERROR) << "Could not create " << path_; return false; @@ -1257,7 +1257,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -5183,6 +5183,11 @@ const char kWebrtcPipeWireCapturerDescription[] = +@@ -5224,6 +5224,11 @@ const char kWebrtcPipeWireCapturerDescription[] = "capturing the desktop content on the Wayland display server."; #endif // #if defined(WEBRTC_USE_PIPEWIRE) @@ -1272,7 +1272,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -3054,6 +3054,9 @@ extern const char kWebrtcPipeWireCapturerName[]; +@@ -3066,6 +3066,9 @@ extern const char kWebrtcPipeWireCapturerName[]; extern const char kWebrtcPipeWireCapturerDescription[]; #endif // #if defined(WEBRTC_USE_PIPEWIRE) @@ -1285,8 +1285,8 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -141,6 +141,7 @@ const base::Feature* kFeaturesExposedToJava[] = { - &kAppLaunchpad, +@@ -142,6 +142,7 @@ const base::Feature* kFeaturesExposedToJava[] = { + &kBackgroundThreadPool, &kBentoOffline, &kBookmarkBottomSheet, + &kBookmarksExportUseSaf, @@ -1307,7 +1307,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h --- a/chrome/browser/flags/android/chrome_feature_list.h +++ b/chrome/browser/flags/android/chrome_feature_list.h -@@ -155,6 +155,7 @@ extern const base::Feature kVoiceSearchAudioCapturePolicy; +@@ -157,6 +157,7 @@ extern const base::Feature kVoiceSearchAudioCapturePolicy; extern const base::Feature kVoiceButtonInTopToolbar; extern const base::Feature kVrBrowsingFeedback; extern const base::Feature kPrefetchNotificationSchedulingIntegration; @@ -1318,7 +1318,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java --- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java -@@ -504,6 +504,7 @@ public abstract class ChromeFeatureList { +@@ -500,6 +500,7 @@ public abstract class ChromeFeatureList { public static final String WEB_AUTH_PHONE_SUPPORT = "WebAuthenticationPhoneSupport"; public static final String WEB_FEED = "WebFeed"; public static final String XSURFACE_METRICS_REPORTING = "XsurfaceMetricsReporting"; @@ -1365,16 +1365,16 @@ diff --git a/chrome/browser/importer/profile_writer.h b/chrome/browser/importer/ --- a/chrome/browser/importer/profile_writer.h +++ b/chrome/browser/importer/profile_writer.h @@ -12,6 +12,7 @@ - #include "base/strings/string16.h" + #include "base/memory/ref_counted.h" #include "base/time/time.h" #include "build/build_config.h" +#include "components/bookmarks/browser/bookmark_model.h" #include "components/favicon_base/favicon_usage_data.h" #include "components/history/core/browser/history_types.h" #include "components/search_engines/template_url_service.h" -@@ -70,6 +71,11 @@ class ProfileWriter : public base::RefCountedThreadSafe { - const std::vector& bookmarks, - const base::string16& top_level_folder_name); +@@ -69,6 +70,11 @@ class ProfileWriter : public base::RefCountedThreadSafe { + virtual void AddBookmarks(const std::vector& bookmarks, + const std::u16string& top_level_folder_name); + virtual void AddBookmarksWithModel( + bookmarks::BookmarkModel* model, @@ -1387,7 +1387,7 @@ diff --git a/chrome/browser/importer/profile_writer.h b/chrome/browser/importer/ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java -@@ -91,6 +91,8 @@ public final class ChromePreferenceKeys { +@@ -109,6 +109,8 @@ public final class ChromePreferenceKeys { public static final String BOOKMARKS_LAST_USED_URL = "enhanced_bookmark_last_used_url"; public static final String BOOKMARKS_LAST_USED_PARENT = "enhanced_bookmark_last_used_parent_folder"; @@ -1396,14 +1396,14 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro /** * Whether Chrome is set as the default browser. -@@ -896,6 +898,7 @@ public final class ChromePreferenceKeys { - AUTOFILL_ASSISTANT_NUMBER_OF_LITE_SCRIPTS_CANCELED, +@@ -973,6 +975,7 @@ public final class ChromePreferenceKeys { AUTOFILL_ASSISTANT_PROACTIVE_HELP, - APPLICATION_OVERRIDE_LANGUAGE, + APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE, + APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO, + BOOKMARKS_LAST_EXPORT_URI, + APPLICATION_OVERRIDE_LANGUAGE, + CHROME_SURVEY_PROMPT_DISPLAYED_TIMESTAMP.pattern(), CLIPBOARD_SHARED_URI, - CONDITIONAL_TAB_STRIP_CONTINUOUS_DISMISS_COUNTER, - CONDITIONAL_TAB_STRIP_FEATURE_STATUS, diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd @@ -1435,7 +1435,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn --- a/chrome/common/BUILD.gn +++ b/chrome/common/BUILD.gn -@@ -402,6 +402,9 @@ static_library("common") { +@@ -404,6 +404,9 @@ static_library("common") { sources += [ "media/chrome_media_drm_bridge_client.cc", "media/chrome_media_drm_bridge_client.h", @@ -1448,7 +1448,7 @@ diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn --- a/chrome/utility/BUILD.gn +++ b/chrome/utility/BUILD.gn -@@ -79,8 +79,6 @@ static_library("utility") { +@@ -78,8 +78,6 @@ static_library("utility") { if (!is_android) { sources += [ @@ -1457,7 +1457,7 @@ diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn "importer/bookmarks_file_importer.cc", "importer/bookmarks_file_importer.h", "importer/external_process_importer_bridge.cc", -@@ -180,6 +178,11 @@ static_library("utility") { +@@ -179,6 +177,11 @@ static_library("utility") { } } @@ -1531,7 +1531,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im content, "\n", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL); @@ -126,6 +144,7 @@ void ImportBookmarksFile( - std::vector path; + std::vector path; size_t toolbar_folder_index = 0; std::string charset = "UTF-8"; // If no charset is specified, assume utf-8. + @@ -1554,7 +1554,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im diff --git a/chrome/utility/importer/bookmark_html_reader.h b/chrome/utility/importer/bookmark_html_reader.h --- a/chrome/utility/importer/bookmark_html_reader.h +++ b/chrome/utility/importer/bookmark_html_reader.h -@@ -51,6 +51,14 @@ void ImportBookmarksFile( +@@ -50,6 +50,14 @@ void ImportBookmarksFile( std::vector* search_engines, favicon_base::FaviconUsageDataList* favicons); @@ -1572,7 +1572,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.h b/chrome/utility/imp diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java --- a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java +++ b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java -@@ -35,6 +35,7 @@ import org.chromium.base.task.AsyncTask; +@@ -38,6 +38,7 @@ import org.chromium.base.task.AsyncTask; import org.chromium.base.task.PostTask; import org.chromium.base.task.TaskTraits; import org.chromium.ui.R; @@ -1580,7 +1580,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui import org.chromium.ui.UiUtils; import java.io.File; -@@ -53,6 +54,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -56,6 +57,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick private static final String TAG = "SelectFileDialog"; private static final String IMAGE_TYPE = "image"; private static final String VIDEO_TYPE = "video"; @@ -1588,7 +1588,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui private static final String AUDIO_TYPE = "audio"; private static final String ALL_TYPES = "*/*"; -@@ -143,6 +145,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -239,6 +241,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick mFileTypes = fileTypes; } @@ -1600,7 +1600,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui /** * Creates and starts an intent based on the passed fileTypes and capture value. * @param fileTypes MIME types requested (i.e. "image/*") -@@ -170,7 +177,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -266,7 +273,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick List missingPermissions = new ArrayList<>(); String storagePermission = Manifest.permission.READ_EXTERNAL_STORAGE; boolean shouldUsePhotoPicker = shouldUsePhotoPicker(); @@ -1609,7 +1609,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui if (!window.hasPermission(storagePermission)) missingPermissions.add(storagePermission); } else { if (((mSupportsImageCapture && shouldShowImageTypes()) -@@ -198,7 +205,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -294,7 +301,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick } // TODO(finnur): Remove once we figure out the cause of crbug.com/950024. @@ -1618,7 +1618,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui if (permissions.length != requestPermissions.length) { throw new RuntimeException( String.format("Permissions arrays misaligned: %d != %d", -@@ -212,7 +219,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -308,7 +315,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick } } @@ -1627,7 +1627,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui onFileNotSelected(); return; } -@@ -358,6 +365,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -504,6 +511,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick } if (!mimeTypes.contains(mimeType)) mimeTypes.add(mimeType); } @@ -1635,7 +1635,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui return mimeTypes; } -@@ -659,6 +667,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick +@@ -792,6 +800,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick return countAcceptTypesFor(superType) == mFileTypes.size(); } @@ -1662,7 +1662,7 @@ diff --git a/ui/android/java/strings/android_ui_strings.grd b/ui/android/java/st diff --git a/ui/shell_dialogs/select_file_dialog.h b/ui/shell_dialogs/select_file_dialog.h --- a/ui/shell_dialogs/select_file_dialog.h +++ b/ui/shell_dialogs/select_file_dialog.h -@@ -204,6 +204,8 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog +@@ -203,6 +203,8 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog void* params); bool HasMultipleFileTypeChoices(); diff --git a/build/patches/Add-custom-tab-intents-privacy-option.patch b/build/patches/Add-custom-tab-intents-privacy-option.patch index d98d8708..bd886f9c 100644 --- a/build/patches/Add-custom-tab-intents-privacy-option.patch +++ b/build/patches/Add-custom-tab-intents-privacy-option.patch @@ -3,40 +3,40 @@ Date: Wed, 29 Aug 2018 11:03:44 +0200 Subject: Add custom tab intents privacy option --- - chrome/android/java/res/xml/privacy_preferences.xml | 5 +++++ - .../chrome/browser/LaunchIntentDispatcher.java | 4 ++++ - .../browser/privacy/settings/PrivacySettings.java | 13 ++++++++++++- - .../ui/android/strings/android_chrome_strings.grd | 7 +++++++ - 4 files changed, 28 insertions(+), 1 deletion(-) + chrome/android/java/res/xml/privacy_preferences.xml | 5 +++++ + .../chrome/browser/LaunchIntentDispatcher.java | 4 ++++ + .../browser/privacy/settings/PrivacySettings.java | 10 ++++++++++ + .../ui/android/strings/android_chrome_strings.grd | 7 +++++++ + 4 files changed, 26 insertions(+) diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -28,6 +28,11 @@ +@@ -33,6 +33,11 @@ + android:fragment="org.chromium.chrome.browser.privacy.settings.DoNotTrackSettings" android:key="do_not_track" - android:title="@string/do_not_track_title" - android:order="3"/> + android:title="@string/do_not_track_title"/> + - Show original diff --git a/build/patches/Add-exit-menu-item.patch b/build/patches/Add-exit-menu-item.patch index e9600764..f713ce1c 100644 --- a/build/patches/Add-exit-menu-item.patch +++ b/build/patches/Add-exit-menu-item.patch @@ -5,18 +5,17 @@ Subject: Add exit menu item Corrected Exit functionality --- chrome/android/java/res/menu/main_menu.xml | 6 ++++++ - chrome/android/java/res/menu/main_menu_regroup.xml | 3 +++ .../org/chromium/chrome/browser/ChromeTabbedActivity.java | 4 ++++ .../src/org/chromium/chrome/browser/app/ChromeActivity.java | 6 ++++++ .../chrome/browser/init/ChromeLifetimeController.java | 6 +++++- .../browser/ui/android/strings/android_chrome_strings.grd | 3 +++ - 6 files changed, 27 insertions(+), 1 deletion(-) + 5 files changed, 24 insertions(+), 1 deletion(-) diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml -@@ -122,6 +122,9 @@ - android:icon="@drawable/vr_headset" /> +@@ -118,6 +118,9 @@ + android:icon="@drawable/gm_filled_cardboard_24" /> + -@@ -148,6 +151,9 @@ +@@ -144,6 +147,9 @@ @@ -35,23 +34,10 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -diff --git a/chrome/android/java/res/menu/main_menu_regroup.xml b/chrome/android/java/res/menu/main_menu_regroup.xml ---- a/chrome/android/java/res/menu/main_menu_regroup.xml -+++ b/chrome/android/java/res/menu/main_menu_regroup.xml -@@ -184,6 +184,9 @@ - android:icon="@drawable/vr_headset" /> - -+ - - - diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -189,6 +189,8 @@ import java.lang.annotation.RetentionPolicy; +@@ -196,6 +196,8 @@ import java.lang.annotation.RetentionPolicy; import java.util.List; import java.util.Locale; @@ -60,7 +46,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct /** * This is the main activity for ChromeMobile when not running in document mode. All the tabs * are accessible via a chrome specific tab switching UI. -@@ -1852,6 +1854,8 @@ public class ChromeTabbedActivity extends ChromeActivity + import org.chromium.chrome.browser.ChromeApplicationImpl; + import org.chromium.chrome.browser.ChromeKeyboardVisibilityDelegate; +@@ -2163,6 +2164,11 @@ public abstract class ChromeActivity return true; } @@ -111,7 +97,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLife diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -2954,6 +2954,9 @@ Data from your Incognito session will only be cleared from Chrome when you Settings diff --git a/build/patches/Add-flag-for-save-data-header.patch b/build/patches/Add-flag-for-save-data-header.patch index 71497e42..129fa279 100644 --- a/build/patches/Add-flag-for-save-data-header.patch +++ b/build/patches/Add-flag-for-save-data-header.patch @@ -14,7 +14,7 @@ Subject: Add flag for save-data-header diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -4476,6 +4476,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -4488,6 +4488,9 @@ const FeatureEntry kFeatureEntries[] = { #endif // BUILDFLAG(IS_CHROMEOS_ASH) #if defined(OS_ANDROID) @@ -27,7 +27,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -975,6 +975,10 @@ const char kDisableKeepaliveFetchDescription[] = +@@ -1000,6 +1000,10 @@ const char kDisableKeepaliveFetchDescription[] = "Disable fetch with keepalive set " "(https://fetch.spec.whatwg.org/#request-keepalive-flag)."; @@ -41,7 +41,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -557,6 +557,9 @@ extern const char kDiagnosticsAppDescription[]; +@@ -568,6 +568,9 @@ extern const char kDiagnosticsAppDescription[]; extern const char kDisableKeepaliveFetchName[]; extern const char kDisableKeepaliveFetchDescription[]; @@ -70,7 +70,7 @@ diff --git a/content/browser/loader/browser_initiated_resource_request.cc b/cont diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc --- a/services/network/public/cpp/features.cc +++ b/services/network/public/cpp/features.cc -@@ -149,6 +149,10 @@ const base::FeatureParam +@@ -156,6 +156,10 @@ const base::FeatureParam const base::Feature kDisableKeepaliveFetch{"DisableKeepaliveFetch", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -84,7 +84,7 @@ diff --git a/services/network/public/cpp/features.cc b/services/network/public/c diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h --- a/services/network/public/cpp/features.h +++ b/services/network/public/cpp/features.h -@@ -58,6 +58,8 @@ extern const base::FeatureParam +@@ -60,6 +60,8 @@ extern const base::FeatureParam COMPONENT_EXPORT(NETWORK_CPP) extern const base::Feature kDisableKeepaliveFetch; COMPONENT_EXPORT(NETWORK_CPP) diff --git a/build/patches/Add-flag-to-configure-maximum-connections-per-host.patch b/build/patches/Add-flag-to-configure-maximum-connections-per-host.patch index 4a6c6fa3..cca0908b 100644 --- a/build/patches/Add-flag-to-configure-maximum-connections-per-host.patch +++ b/build/patches/Add-flag-to-configure-maximum-connections-per-host.patch @@ -19,7 +19,7 @@ with limited CPU/memory resources and it is disabled by default. diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -865,6 +865,11 @@ const FeatureEntry::Choice kForceEffectiveConnectionTypeChoices[] = { +@@ -835,6 +835,11 @@ const FeatureEntry::Choice kForceEffectiveConnectionTypeChoices[] = { net::kEffectiveConnectionType4G}, }; @@ -31,7 +31,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc // Ensure that all effective connection types returned by Network Quality // Estimator (NQE) are also exposed via flags. static_assert(net::EFFECTIVE_CONNECTION_TYPE_LAST + 2 == -@@ -3755,6 +3760,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3742,6 +3747,9 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kAndroidPictureInPictureAPIName, flag_descriptions::kAndroidPictureInPictureAPIDescription, kOsAndroid, FEATURE_VALUE_TYPE(media::kPictureInPictureAPI)}, @@ -44,7 +44,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -1464,6 +1464,10 @@ const char kMediaHistoryDescription[] = +@@ -1484,6 +1484,10 @@ const char kMediaHistoryDescription[] = "Enables Media History which records data around media playbacks on " "websites."; @@ -58,7 +58,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -868,6 +868,9 @@ extern const char kLogJsConsoleMessagesDescription[]; +@@ -872,6 +872,9 @@ extern const char kLogJsConsoleMessagesDescription[]; extern const char kMediaHistoryName[]; extern const char kMediaHistoryDescription[]; @@ -96,7 +96,7 @@ diff --git a/components/network_session_configurator/common/network_features.h b diff --git a/components/network_session_configurator/common/network_switch_list.h b/components/network_session_configurator/common/network_switch_list.h --- a/components/network_session_configurator/common/network_switch_list.h +++ b/components/network_session_configurator/common/network_switch_list.h -@@ -22,6 +22,10 @@ NETWORK_SWITCH(kEnableUserAlternateProtocolPorts, +@@ -19,6 +19,10 @@ NETWORK_SWITCH(kEnableUserAlternateProtocolPorts, // Enables the QUIC protocol. This is a temporary testing flag. NETWORK_SWITCH(kEnableQuic, "enable-quic") diff --git a/build/patches/Add-flag-to-control-video-playback-resume-feature.patch b/build/patches/Add-flag-to-control-video-playback-resume-feature.patch index c6592d7b..0bb97cec 100644 --- a/build/patches/Add-flag-to-control-video-playback-resume-feature.patch +++ b/build/patches/Add-flag-to-control-video-playback-resume-feature.patch @@ -13,7 +13,7 @@ Disable it by default on Android as it is everywhere else diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -2671,6 +2671,10 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2652,6 +2652,10 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kWebRtcRemoteEventLogName, flag_descriptions::kWebRtcRemoteEventLogDescription, kOsDesktop, FEATURE_VALUE_TYPE(features::kWebRtcRemoteEventLog)}, @@ -27,7 +27,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -1032,6 +1032,11 @@ const char kEnablePciguardUiDescription[] = +@@ -1063,6 +1063,11 @@ const char kEnablePciguardUiDescription[] = "Enable toggling Pciguard settings through the Settings App. By default, " "this flag is enabled."; @@ -42,7 +42,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -594,6 +594,9 @@ extern const char kEnablePortalsDescription[]; +@@ -608,6 +608,9 @@ extern const char kEnablePortalsDescription[]; extern const char kEnablePortalsCrossOriginName[]; extern const char kEnablePortalsCrossOriginDescription[]; diff --git a/build/patches/Add-flag-to-disable-IPv6-probes.patch b/build/patches/Add-flag-to-disable-IPv6-probes.patch index 800b7a80..24596947 100644 --- a/build/patches/Add-flag-to-disable-IPv6-probes.patch +++ b/build/patches/Add-flag-to-disable-IPv6-probes.patch @@ -16,7 +16,7 @@ Subject: Add flag to disable IPv6 probes diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -4760,6 +4760,11 @@ const FeatureEntry kFeatureEntries[] = { +@@ -4747,6 +4747,11 @@ const FeatureEntry kFeatureEntries[] = { #endif // defined(OS_WIN) || defined(OS_MAC) || defined(OS_LINUX) || // defined(OS_CHROMEOS) @@ -31,7 +31,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -2926,6 +2926,10 @@ const char kContextualSearchRankerQueryDescription[] = +@@ -2979,6 +2979,10 @@ const char kContextualSearchRankerQueryDescription[] = const char kContextualSearchSecondTapName[] = "Contextual Search second tap triggering"; @@ -45,7 +45,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -664,6 +664,9 @@ extern const char kEnableWasmThreadsName[]; +@@ -677,6 +677,9 @@ extern const char kEnableWasmThreadsName[]; extern const char kEnableWasmThreadsDescription[]; extern const char kEnableWasmTieringName[]; @@ -109,7 +109,7 @@ diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc #include "net/log/net_log_with_source.h" #include "net/socket/client_socket_factory.h" #include "net/socket/datagram_client_socket.h" -@@ -3326,8 +3327,14 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) { +@@ -3339,8 +3340,14 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) { if (last_ipv6_probe_time_.is_null() || (tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() > kIPv6ProbePeriodMs) { diff --git a/build/patches/Add-flag-to-disable-WebGL.patch b/build/patches/Add-flag-to-disable-WebGL.patch index aead01c4..654e9be1 100644 --- a/build/patches/Add-flag-to-disable-WebGL.patch +++ b/build/patches/Add-flag-to-disable-WebGL.patch @@ -11,7 +11,7 @@ Subject: Add flag to disable WebGL diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -2624,6 +2624,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2605,6 +2605,9 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kAccelerated2dCanvasName, flag_descriptions::kAccelerated2dCanvasDescription, kOsAll, SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAccelerated2dCanvas)}, @@ -24,7 +24,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -562,6 +562,10 @@ const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement"; +@@ -578,6 +578,10 @@ const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement"; const char kEnableAudioFocusEnforcementDescription[] = "Enables enforcement of a single media session having audio focus at " "any one time. Requires #enable-media-session-service to be enabled too."; @@ -38,7 +38,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -347,6 +347,9 @@ extern const char kDisallowDocWrittenScriptsUiDescription[]; +@@ -354,6 +354,9 @@ extern const char kDocumentTransitionDescription[]; extern const char kEnableAccessibilityObjectModelName[]; extern const char kEnableAccessibilityObjectModelDescription[]; diff --git a/build/patches/Add-flags-to-disable-device-motion-orientation-APIs.patch b/build/patches/Add-flags-to-disable-device-motion-orientation-APIs.patch index f4f4c881..ccb5678d 100644 --- a/build/patches/Add-flags-to-disable-device-motion-orientation-APIs.patch +++ b/build/patches/Add-flags-to-disable-device-motion-orientation-APIs.patch @@ -20,7 +20,7 @@ legacy acceleration events. diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -2861,6 +2861,12 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2848,6 +2848,12 @@ const FeatureEntry kFeatureEntries[] = { {"enable-gpu-rasterization", flag_descriptions::kGpuRasterizationName, flag_descriptions::kGpuRasterizationDescription, kOsAll, MULTI_VALUE_TYPE(kEnableGpuRasterizationChoices)}, @@ -36,9 +36,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -821,6 +821,14 @@ const char kWinrtSensorsImplementationDescription[] = - "Enables usage of the Windows.Devices.Sensors WinRT APIs on Windows for " - "sensors"; +@@ -838,6 +838,14 @@ const char kWinrtGeolocationImplementationDescription[] = + "Enables usage of the Windows.Devices.Geolocation WinRT APIs on Windows " + "for geolocation"; +const char kEnableDeviceMotionName[] = "Enable device motion"; +const char kEnableDeviceMotionDescription[] = @@ -54,9 +54,9 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -494,6 +494,12 @@ extern const char kWinrtGeolocationImplementationDescription[]; - extern const char kWinrtSensorsImplementationName[]; - extern const char kWinrtSensorsImplementationDescription[]; +@@ -502,6 +502,12 @@ extern const char kNotificationsViaHelperAppDescription[]; + extern const char kWinrtGeolocationImplementationName[]; + extern const char kWinrtGeolocationImplementationDescription[]; +extern const char kEnableDeviceMotionName[]; +extern const char kEnableDeviceMotionDescription[]; @@ -83,7 +83,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features. diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc --- a/content/public/common/content_features.cc +++ b/content/public/common/content_features.cc -@@ -886,6 +886,16 @@ const base::Feature kWebOtpBackendAuto{"WebOtpBackendAuto", +@@ -890,6 +890,16 @@ const base::Feature kWebOtpBackendAuto{"WebOtpBackendAuto", // The JavaScript API for payments on the web. const base::Feature kWebPayments{"WebPayments", base::FEATURE_ENABLED_BY_DEFAULT}; @@ -103,7 +103,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h --- a/content/public/common/content_features.h +++ b/content/public/common/content_features.h -@@ -209,6 +209,8 @@ CONTENT_EXPORT extern const base::Feature kWebXrHandInput; +@@ -212,6 +212,8 @@ CONTENT_EXPORT extern const base::Feature kWebXrHandInput; CONTENT_EXPORT extern const base::Feature kWebXrHitTest; CONTENT_EXPORT extern const base::Feature kWebXrIncubations; @@ -116,18 +116,18 @@ diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_pa --- a/third_party/blink/public/platform/web_runtime_features.h +++ b/third_party/blink/public/platform/web_runtime_features.h @@ -97,6 +97,8 @@ class WebRuntimeFeatures { - BLINK_PLATFORM_EXPORT static void EnableCompositeRelativeKeyframes( - bool enable); - BLINK_PLATFORM_EXPORT static void EnableCookieDeprecationMessages(bool); -+ BLINK_PLATFORM_EXPORT static void EnableDeviceMotion(bool); -+ BLINK_PLATFORM_EXPORT static void EnableDeviceOrientation(bool); BLINK_PLATFORM_EXPORT static void EnableCookiesWithoutSameSiteMustBeSecure( bool); BLINK_PLATFORM_EXPORT static void EnableCanvas2dImageChromium(bool); ++ BLINK_PLATFORM_EXPORT static void EnableDeviceMotion(bool); ++ BLINK_PLATFORM_EXPORT static void EnableDeviceOrientation(bool); + BLINK_PLATFORM_EXPORT static void EnableCooperativeScheduling(bool); + BLINK_PLATFORM_EXPORT static void EnableCSSHexAlphaColor(bool); + BLINK_PLATFORM_EXPORT static void EnableSameSiteByDefaultCookies(bool); diff --git a/third_party/blink/renderer/modules/modules_initializer.cc b/third_party/blink/renderer/modules/modules_initializer.cc --- a/third_party/blink/renderer/modules/modules_initializer.cc +++ b/third_party/blink/renderer/modules/modules_initializer.cc -@@ -222,9 +222,13 @@ void ModulesInitializer::OnClearWindowObjectInMainWorld( +@@ -231,9 +231,13 @@ void ModulesInitializer::OnClearWindowObjectInMainWorld( Document& document, const Settings& settings) const { LocalDOMWindow& window = *document.domWindow(); @@ -147,7 +147,7 @@ diff --git a/third_party/blink/renderer/modules/modules_initializer.cc b/third_p diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.cc b/third_party/blink/renderer/platform/exported/web_runtime_features.cc --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc -@@ -195,6 +195,14 @@ void WebRuntimeFeatures::EnableKeyboardAccessibleTooltip(bool enable) { +@@ -187,6 +187,14 @@ void WebRuntimeFeatures::EnableKeyboardAccessibleTooltip(bool enable) { RuntimeEnabledFeatures::SetKeyboardAccessibleTooltipEnabled(enable); } @@ -165,7 +165,7 @@ diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.c diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -1437,6 +1437,14 @@ +@@ -1420,6 +1420,14 @@ name: "OffscreenCanvasCommit", status: "experimental", }, diff --git a/build/patches/Add-history-support-in-incognito-mode.patch b/build/patches/Add-history-support-in-incognito-mode.patch index b295d499..f759a8dd 100644 --- a/build/patches/Add-history-support-in-incognito-mode.patch +++ b/build/patches/Add-history-support-in-incognito-mode.patch @@ -3,20 +3,20 @@ Date: Fri, 7 Aug 2020 16:33:47 +0000 Subject: Add history support in incognito mode --- - .../java/res/xml/privacy_preferences.xml | 5 +++++ - .../privacy/settings/PrivacySettings.java | 19 +++++++++++++++++++ - chrome/browser/history/history_tab_helper.cc | 16 ++++++++++++++++ - chrome/browser/history/history_tab_helper.h | 4 ++++ - chrome/browser/prefs/browser_prefs.cc | 3 +++ - .../strings/android_chrome_strings.grd | 6 ++++++ - chrome/common/pref_names.cc | 5 +++++ - chrome/common/pref_names.h | 4 ++++ - 8 files changed, 62 insertions(+) + .../java/res/xml/privacy_preferences.xml | 5 +++++ + .../privacy/settings/PrivacySettings.java | 18 ++++++++++++++++++ + chrome/browser/history/history_tab_helper.cc | 16 ++++++++++++++++ + chrome/browser/history/history_tab_helper.h | 4 ++++ + chrome/browser/prefs/browser_prefs.cc | 3 +++ + .../android/strings/android_chrome_strings.grd | 6 ++++++ + chrome/common/pref_names.cc | 5 +++++ + chrome/common/pref_names.h | 4 ++++ + 8 files changed, 61 insertions(+) diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -32,6 +32,11 @@ +@@ -38,6 +38,11 @@ android:title="@string/close_tabs_on_exit_title" android:summary="@string/close_tabs_on_exit_summary" android:defaultValue="false" /> @@ -47,15 +47,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment"; private static final String PREF_NETWORK_PREDICTIONS = "preload_pages"; private static final String PREF_SECURE_DNS = "secure_dns"; -@@ -57,6 +60,7 @@ public class PrivacySettings - private static final String PREF_PROXY_OPTIONS = "proxy"; - private static final String[] NEW_PRIVACY_PREFERENCE_ORDER = {PREF_CLEAR_BROWSING_DATA, - PREF_ALWAYS_INCOGNITO, -+ PREF_INCOGNITO_TAB_HISTORY_ENABLED, - PREF_CAN_MAKE_PAYMENT, PREF_NETWORK_PREDICTIONS, - PREF_CLOSE_TABS_ON_EXIT, - PREF_SECURE_DNS, PREF_DO_NOT_TRACK, PREF_PRIVACY_SANDBOX, -@@ -118,6 +122,11 @@ public class PrivacySettings +@@ -100,6 +103,11 @@ public class PrivacySettings Preference secureDnsPref = findPreference(PREF_SECURE_DNS); secureDnsPref.setVisible(SecureDnsSettings.isUiEnabled()); @@ -67,7 +59,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting updateSummaries(); } -@@ -138,6 +147,9 @@ public class PrivacySettings +@@ -120,6 +128,9 @@ public class PrivacySettings SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit(); sharedPreferencesEditor.putBoolean(PREF_ALLOW_CUSTOM_TAB_INTENTS, (boolean)newValue); sharedPreferencesEditor.apply(); @@ -77,7 +69,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting } return true; -@@ -188,6 +200,13 @@ public class PrivacySettings +@@ -170,6 +181,13 @@ public class PrivacySettings (ChromeSwitchPreference) findPreference(PREF_CLOSE_TABS_ON_EXIT); closeTabsOnExitPref.setOnPreferenceChangeListener(this); closeTabsOnExitPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate); @@ -94,7 +86,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/history/history_tab_helper.cc --- a/chrome/browser/history/history_tab_helper.cc +++ b/chrome/browser/history/history_tab_helper.cc -@@ -28,6 +28,9 @@ +@@ -27,6 +27,9 @@ #if defined(OS_ANDROID) #include "chrome/browser/android/background_tab_manager.h" #include "components/feed/feed_feature_list.h" @@ -104,7 +96,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo #else #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_finder.h" -@@ -258,6 +261,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { +@@ -251,6 +254,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { history::HistoryService* HistoryTabHelper::GetHistoryService() { Profile* profile = Profile::FromBrowserContext(web_contents()->GetBrowserContext()); @@ -118,7 +110,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo if (profile->IsOffTheRecord()) return NULL; -@@ -265,6 +275,12 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { +@@ -258,6 +268,12 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { profile, ServiceAccessType::IMPLICIT_ACCESS); } @@ -135,7 +127,7 @@ diff --git a/chrome/browser/history/history_tab_helper.h b/chrome/browser/histor --- a/chrome/browser/history/history_tab_helper.h +++ b/chrome/browser/history/history_tab_helper.h @@ -10,6 +10,8 @@ - #include "base/time/time.h" + #include "build/build_config.h" #include "content/public/browser/web_contents_observer.h" #include "content/public/browser/web_contents_user_data.h" +#include "components/prefs/pref_registry_simple.h" @@ -143,9 +135,9 @@ diff --git a/chrome/browser/history/history_tab_helper.h b/chrome/browser/histor namespace history { struct HistoryAddPageArgs; -@@ -46,6 +48,8 @@ class HistoryTabHelper : public content::WebContentsObserver, - int nav_entry_id, - content::NavigationHandle* navigation_handle); +@@ -51,6 +53,8 @@ class HistoryTabHelper : public content::WebContentsObserver, + force_eligibile_tab_for_testing_ = force; + } + static void RegisterProfilePrefs(PrefRegistrySimple* registry); + @@ -155,7 +147,7 @@ diff --git a/chrome/browser/history/history_tab_helper.h b/chrome/browser/histor diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -208,6 +208,8 @@ +@@ -207,6 +207,8 @@ #endif #if defined(OS_ANDROID) @@ -164,7 +156,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse #include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h" #include "chrome/browser/android/explore_sites/history_statistics_reporter.h" #include "chrome/browser/android/ntp/recent_tabs_page_prefs.h" -@@ -1027,6 +1029,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, +@@ -1037,6 +1039,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, variations::VariationsService::RegisterProfilePrefs(registry); video_tutorials::RegisterPrefs(registry); feed::prefs::RegisterFeedSharedProfilePrefs(registry); @@ -191,8 +183,8 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc --- a/chrome/common/pref_names.cc +++ b/chrome/common/pref_names.cc -@@ -3152,6 +3152,11 @@ const char kShowCaretBrowsingDialog[] = - const char kLacrosAllowed[] = "lacros_allowed"; +@@ -3181,6 +3181,11 @@ const char kLacrosAllowed[] = "lacros_allowed"; + const char kLacrosLaunchSwitch[] = "lacros_launch_switch"; #endif +#if defined(OS_ANDROID) @@ -206,9 +198,9 @@ diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h -@@ -1131,6 +1131,10 @@ extern const char kFetchKeepaliveDurationOnShutdown[]; +@@ -1149,6 +1149,10 @@ extern const char kPdfAnnotationsEnabled[]; - extern const char kSuppressDifferentOriginSubframeJSDialogs[]; + extern const char kExplicitlyAllowedNetworkPorts[]; +#if defined(OS_ANDROID) +extern const char kIncognitoTabHistoryEnabled[]; diff --git a/build/patches/Add-menu-item-to-bookmark-all-tabs.patch b/build/patches/Add-menu-item-to-bookmark-all-tabs.patch index 203bad3f..ce1d0646 100644 --- a/build/patches/Add-menu-item-to-bookmark-all-tabs.patch +++ b/build/patches/Add-menu-item-to-bookmark-all-tabs.patch @@ -4,7 +4,6 @@ Subject: Add menu item to bookmark all tabs --- chrome/android/java/res/menu/main_menu.xml | 7 +++ - .../java/res/menu/main_menu_regroup.xml | 9 +++ .../chrome/browser/ChromeTabbedActivity.java | 26 ++++++++ .../browser/bookmarks/BookmarkBridge.java | 61 +++++++++++++++++++ .../browser/bookmarks/BookmarkUtils.java | 4 ++ @@ -19,12 +18,12 @@ Subject: Add menu item to bookmark all tabs components/bookmarks/browser/bookmark_model.h | 7 +++ components/bookmarks/browser/bookmark_node.cc | 13 ++++ components/bookmarks/browser/bookmark_node.h | 5 ++ - 16 files changed, 172 insertions(+), 1 deletion(-) + 15 files changed, 163 insertions(+), 1 deletion(-) diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml -@@ -57,6 +57,10 @@ +@@ -58,6 +58,10 @@ @@ -35,7 +34,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -@@ -145,6 +149,9 @@ +@@ -141,6 +145,9 @@ @@ -45,43 +44,10 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -diff --git a/chrome/android/java/res/menu/main_menu_regroup.xml b/chrome/android/java/res/menu/main_menu_regroup.xml ---- a/chrome/android/java/res/menu/main_menu_regroup.xml -+++ b/chrome/android/java/res/menu/main_menu_regroup.xml -@@ -89,6 +89,9 @@ - android:icon="@drawable/btn_star" /> - - -+ - -@@ -210,6 +213,9 @@ - -+ - -@@ -252,6 +258,9 @@ - -+ - diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -66,6 +66,8 @@ import org.chromium.chrome.browser.app.tabmodel.ChromeNextTabPolicySupplier; +@@ -70,6 +70,8 @@ import org.chromium.chrome.browser.app.tabmodel.ChromeNextTabPolicySupplier; import org.chromium.chrome.browser.app.tabmodel.TabModelOrchestrator; import org.chromium.chrome.browser.app.tabmodel.TabWindowManagerSingleton; import org.chromium.chrome.browser.app.tabmodel.TabbedModeTabModelOrchestrator; @@ -90,7 +56,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.bookmarks.BookmarkUtils; import org.chromium.chrome.browser.compositor.CompositorViewHolder; import org.chromium.chrome.browser.compositor.bottombar.ephemeraltab.EphemeralTabCoordinator; -@@ -1864,6 +1866,8 @@ public class ChromeTabbedActivity extends ChromeActivity topLevelFolders = new ArrayList<>(); BookmarkId desktopNodeId = bookmarkModel.getDesktopFolderId(); BookmarkId mobileNodeId = bookmarkModel.getMobileFolderId(); @@ -252,7 +218,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm BookmarkId othersNodeId = bookmarkModel.getOtherFolderId(); List specialFoldersIds = -@@ -528,6 +529,9 @@ public class BookmarkUtils { +@@ -533,6 +534,9 @@ public class BookmarkUtils { if (bookmarkModel.isFolderVisible(mobileNodeId)) { topLevelFolders.add(mobileNodeId); } @@ -265,7 +231,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browser/android/bookmarks/bookmark_bridge.cc --- a/chrome/browser/android/bookmarks/bookmark_bridge.cc +++ b/chrome/browser/android/bookmarks/bookmark_bridge.cc -@@ -422,6 +422,11 @@ void BookmarkBridge::GetTopLevelFolderIDs( +@@ -421,6 +421,11 @@ void BookmarkBridge::GetTopLevelFolderIDs( top_level_folders.push_back(node.get()); } @@ -277,7 +243,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse for (const auto& node : bookmark_model_->bookmark_bar_node()->children()) { if (node->is_folder()) top_level_folders.push_back(node.get()); -@@ -460,6 +465,7 @@ void BookmarkBridge::GetAllFoldersWithDepths( +@@ -459,6 +464,7 @@ void BookmarkBridge::GetAllFoldersWithDepths( // Vector to temporarily contain all child bookmarks at same level for sorting std::vector bookmarks = { bookmark_model_->mobile_node(), @@ -285,7 +251,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse bookmark_model_->bookmark_bar_node(), bookmark_model_->other_node(), }; -@@ -514,6 +520,17 @@ ScopedJavaLocalRef BookmarkBridge::GetMobileFolderId( +@@ -513,6 +519,17 @@ ScopedJavaLocalRef BookmarkBridge::GetMobileFolderId( return folder_id_obj; } @@ -332,7 +298,7 @@ diff --git a/chrome/browser/bookmarks/chrome_bookmark_client.cc b/chrome/browser diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -3017,6 +3017,9 @@ Data from your Incognito session will only be cleared from Chrome when you Track prices @@ -421,7 +387,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmar diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmarks/browser/bookmark_model.h --- a/components/bookmarks/browser/bookmark_model.h +++ b/components/bookmarks/browser/bookmark_model.h -@@ -117,6 +117,12 @@ class BookmarkModel : public BookmarkUndoProvider, +@@ -116,6 +116,12 @@ class BookmarkModel : public BookmarkUndoProvider, return mobile_node_; } @@ -434,7 +400,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark bool is_root_node(const BookmarkNode* node) const { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); return node == root_; -@@ -390,6 +396,7 @@ class BookmarkModel : public BookmarkUndoProvider, +@@ -389,6 +395,7 @@ class BookmarkModel : public BookmarkUndoProvider, BookmarkPermanentNode* bookmark_bar_node_ = nullptr; BookmarkPermanentNode* other_node_ = nullptr; BookmarkPermanentNode* mobile_node_ = nullptr; @@ -445,7 +411,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark diff --git a/components/bookmarks/browser/bookmark_node.cc b/components/bookmarks/browser/bookmark_node.cc --- a/components/bookmarks/browser/bookmark_node.cc +++ b/components/bookmarks/browser/bookmark_node.cc -@@ -42,6 +42,8 @@ const char BookmarkNode::kOtherBookmarksNodeGuid[] = +@@ -41,6 +41,8 @@ const char BookmarkNode::kOtherBookmarksNodeGuid[] = "00000000-0000-4000-a000-000000000003"; const char BookmarkNode::kMobileBookmarksNodeGuid[] = "00000000-0000-4000-a000-000000000004"; @@ -454,7 +420,7 @@ diff --git a/components/bookmarks/browser/bookmark_node.cc b/components/bookmark const char BookmarkNode::kManagedNodeGuid[] = "00000000-0000-4000-a000-000000000005"; -@@ -201,6 +203,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id, +@@ -199,6 +201,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id, visible_when_empty)); } diff --git a/build/patches/Add-menu-item-to-view-source.patch b/build/patches/Add-menu-item-to-view-source.patch index e3df968e..f559ddd7 100644 --- a/build/patches/Add-menu-item-to-view-source.patch +++ b/build/patches/Add-menu-item-to-view-source.patch @@ -5,13 +5,12 @@ Subject: Add menu item to view source --- chrome/android/java/res/menu/custom_tabs_menu.xml | 3 +++ chrome/android/java/res/menu/main_menu.xml | 3 +++ - chrome/android/java/res/menu/main_menu_regroup.xml | 3 +++ .../chrome/browser/ChromeTabbedActivity.java | 2 ++ .../chrome/browser/app/ChromeActivity.java | 5 +++++ .../app/appmenu/AppMenuPropertiesDelegateImpl.java | 14 ++++++++++++++ .../CustomTabAppMenuPropertiesDelegate.java | 1 + .../ui/android/strings/android_chrome_strings.grd | 3 +++ - 8 files changed, 34 insertions(+) + 7 files changed, 31 insertions(+) diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/java/res/menu/custom_tabs_menu.xml --- a/chrome/android/java/res/menu/custom_tabs_menu.xml @@ -29,20 +28,7 @@ diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml -@@ -94,6 +94,9 @@ - -+ - -diff --git a/chrome/android/java/res/menu/main_menu_regroup.xml b/chrome/android/java/res/menu/main_menu_regroup.xml ---- a/chrome/android/java/res/menu/main_menu_regroup.xml -+++ b/chrome/android/java/res/menu/main_menu_regroup.xml -@@ -145,6 +145,9 @@ +@@ -82,6 +82,9 @@ @@ -55,7 +41,7 @@ diff --git a/chrome/android/java/res/menu/main_menu_regroup.xml b/chrome/android diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -1881,6 +1881,8 @@ public class ChromeTabbedActivity extends ChromeActivity +@@ -2299,6 +2299,11 @@ public abstract class ChromeActivity return true; } @@ -82,15 +68,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java -@@ -537,6 +537,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate - } +@@ -344,6 +344,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate + isChromeScheme, isFileScheme, isContentScheme, isIncognito, url)); updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */); + updateViewSourceMenuItem(menu, currentTab); // Only display reader mode settings menu option if the current page is in reader mode. menu.findItem(R.id.reader_mode_prefs_id).setVisible(shouldShowReaderModePrefs(currentTab)); -@@ -950,6 +951,19 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate +@@ -755,6 +756,19 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate } } @@ -113,14 +99,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java -@@ -228,6 +228,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat +@@ -222,6 +222,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat + } + updateRequestDesktopSiteMenuItem(menu, currentTab, requestDesktopSiteVisible); - MenuItem homescreenItem = menu.findItem(R.id.add_to_homescreen_id); - MenuItem openWebApkItem = menu.findItem(R.id.open_webapk_id); + updateViewSourceMenuItem(menu, currentTab); - prepareAddToHomescreenMenuItem( - homescreenItem, null, openWebApkItem, menu, currentTab, addToHomeScreenVisible); + prepareAddToHomescreenMenuItem(menu, currentTab, addToHomeScreenVisible); } + } diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd diff --git a/build/patches/Add-option-to-force-tablet-UI.patch b/build/patches/Add-option-to-force-tablet-UI.patch index f51d372b..605ffff7 100644 --- a/build/patches/Add-option-to-force-tablet-UI.patch +++ b/build/patches/Add-option-to-force-tablet-UI.patch @@ -7,7 +7,7 @@ Subject: Add option to force tablet UI .../accessibility/settings/AccessibilitySettings.java | 10 ++++++++++ .../browser/toolbar/top/ToolbarControlContainer.java | 2 +- .../browser/preferences/ChromePreferenceKeys.java | 1 + - .../preferences/GrandfatheredChromePreferenceKeys.java | 1 + + .../preferences/LegacyChromePreferenceKeys.java | 1 + .../ui/android/strings/android_chrome_strings.grd | 6 ++++++ components/BUILD.gn | 4 ++-- ui/android/BUILD.gn | 1 + @@ -66,7 +66,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java --- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java -@@ -107,7 +107,7 @@ public class ToolbarControlContainer extends OptimizedFrameLayout implements Con +@@ -110,7 +110,7 @@ public class ToolbarControlContainer extends OptimizedFrameLayout implements Con // On tablet, draw a fake tab strip and toolbar until the compositor is // ready to draw the real tab strip. (On phone, the toolbar is made entirely // of Android views, which are already initialized.) @@ -78,7 +78,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/Too diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java -@@ -449,6 +449,7 @@ public final class ChromePreferenceKeys { +@@ -490,6 +490,7 @@ public final class ChromePreferenceKeys { public static final String FONT_USER_SET_FORCE_ENABLE_ZOOM = "user_set_force_enable_zoom"; public static final String HISTORY_SHOW_HISTORY_INFO = "history_home_show_info"; @@ -86,10 +86,10 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro /** Keys used to save settings related to homepage. */ public static final String HOMEPAGE_CUSTOM_URI = "homepage_custom_uri"; -diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/GrandfatheredChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/GrandfatheredChromePreferenceKeys.java ---- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/GrandfatheredChromePreferenceKeys.java -+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/GrandfatheredChromePreferenceKeys.java -@@ -100,6 +100,7 @@ public class GrandfatheredChromePreferenceKeys { +diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java +--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java ++++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java +@@ -99,6 +99,7 @@ public class LegacyChromePreferenceKeys { ChromePreferenceKeys.FLAGS_CACHED_SWAP_PIXEL_FORMAT_TO_FIX_CONVERT_FROM_TRANSLUCENT, ChromePreferenceKeys.FLAGS_CACHED_TAB_GROUPS_ANDROID_ENABLED, ChromePreferenceKeys.FONT_USER_FONT_SCALE_FACTOR, @@ -100,7 +100,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -1166,6 +1166,12 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1169,6 +1169,12 @@ Your Google account may have other forms of browsing history like searches and a Turn off @@ -116,7 +116,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/components/BUILD.gn b/components/BUILD.gn --- a/components/BUILD.gn +++ b/components/BUILD.gn -@@ -501,7 +501,7 @@ test("components_unittests") { +@@ -514,7 +514,7 @@ test("components_unittests") { # On LaCrOS, tests use ash-chrome as a window manager, thus the dependency. # On other platforms, no components should depend on Chrome. @@ -125,7 +125,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn assert_no_deps = [ "//chrome/*" ] } -@@ -748,7 +748,7 @@ if (!is_ios && !is_fuchsia) { +@@ -761,7 +761,7 @@ if (!is_ios && !is_fuchsia) { # On LaCrOS, tests use ash-chrome as a window manager, thus the dependency. # On other platforms, no components should depend on Chrome. @@ -137,10 +137,10 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn diff --git a/ui/android/BUILD.gn b/ui/android/BUILD.gn --- a/ui/android/BUILD.gn +++ b/ui/android/BUILD.gn -@@ -362,6 +362,7 @@ android_library("ui_no_recycler_view_java") { +@@ -364,6 +364,7 @@ android_library("ui_no_recycler_view_java") { + ":ui_java_resources", ":ui_utils_java", "//base:base_java", - "//base:jni_java", + "//chrome/browser/preferences:java", "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/androidx:androidx_appcompat_appcompat_java", diff --git a/build/patches/Add-option-to-not-persist-tabs-across-sessions.patch b/build/patches/Add-option-to-not-persist-tabs-across-sessions.patch index 1eaddcfb..95d3650b 100644 --- a/build/patches/Add-option-to-not-persist-tabs-across-sessions.patch +++ b/build/patches/Add-option-to-not-persist-tabs-across-sessions.patch @@ -3,16 +3,16 @@ Date: Sat, 7 Sep 2019 15:07:42 +0200 Subject: Add option to not persist tabs across sessions --- - .../android/java/res/xml/privacy_preferences.xml | 5 +++++ - .../chrome/browser/ChromeTabbedActivity.java | 4 +++- - .../privacy/settings/PrivacySettings.java | 16 +++++++++++++++- - .../android/strings/android_chrome_strings.grd | 6 ++++++ - 4 files changed, 29 insertions(+), 2 deletions(-) + .../android/java/res/xml/privacy_preferences.xml | 5 +++++ + .../chrome/browser/ChromeTabbedActivity.java | 4 +++- + .../browser/privacy/settings/PrivacySettings.java | 15 ++++++++++++++- + .../ui/android/strings/android_chrome_strings.grd | 6 ++++++ + 4 files changed, 28 insertions(+), 2 deletions(-) diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -23,6 +23,11 @@ +@@ -29,6 +29,11 @@ android:title="@string/always_incognito_title" android:summary="@string/always_incognito_summary" android:defaultValue="false" /> @@ -27,7 +27,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -1124,8 +1124,10 @@ public class ChromeTabbedActivity extends ChromeActivity IMAGE diff --git a/build/patches/Allow-playing-audio-in-background.patch b/build/patches/Allow-playing-audio-in-background.patch index 5fbdd1c0..886c2b78 100644 --- a/build/patches/Allow-playing-audio-in-background.patch +++ b/build/patches/Allow-playing-audio-in-background.patch @@ -10,7 +10,7 @@ Subject: Allow playing audio in background diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_impl.cc --- a/media/blink/webmediaplayer_impl.cc +++ b/media/blink/webmediaplayer_impl.cc -@@ -1105,6 +1105,12 @@ bool WebMediaPlayerImpl::HasAudio() const { +@@ -1104,6 +1104,12 @@ bool WebMediaPlayerImpl::HasAudio() const { return pipeline_metadata_.has_audio; } @@ -23,7 +23,7 @@ diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_imp void WebMediaPlayerImpl::EnabledAudioTracksChanged( const blink::WebVector& enabledTrackIds) { DCHECK(main_task_runner_->BelongsToCurrentThread()); -@@ -3457,7 +3463,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const { +@@ -3463,7 +3469,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const { // Audio only stream is allowed to play when in background. // TODO: We should check IsBackgroundOptimizationCandidate here. But we need // to move the logic of checking video frames out of that function. diff --git a/build/patches/Always-respect-async-dns-flag-regardless-of-SDK-version.patch b/build/patches/Always-respect-async-dns-flag-regardless-of-SDK-version.patch index 0533b8d4..16f596ff 100644 --- a/build/patches/Always-respect-async-dns-flag-regardless-of-SDK-version.patch +++ b/build/patches/Always-respect-async-dns-flag-regardless-of-SDK-version.patch @@ -11,7 +11,7 @@ Do not read experiment value for cronet async DNS configuration diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc --- a/chrome/browser/net/system_network_context_manager.cc +++ b/chrome/browser/net/system_network_context_manager.cc -@@ -155,7 +155,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAuthDynamicParams( +@@ -157,7 +157,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAuthDynamicParams( local_state->GetBoolean(prefs::kNtlmV2Enabled); #endif // defined(OS_POSIX) @@ -23,7 +23,7 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/brows diff --git a/components/cronet/url_request_context_config.cc b/components/cronet/url_request_context_config.cc --- a/components/cronet/url_request_context_config.cc +++ b/components/cronet/url_request_context_config.cc -@@ -582,7 +582,8 @@ void URLRequestContextConfig::ParseAndSetExperimentalOptions( +@@ -583,7 +583,8 @@ void URLRequestContextConfig::ParseAndSetExperimentalOptions( effective_experimental_options->Remove(it.key(), nullptr); continue; } diff --git a/build/patches/Always-use-new-tab-page-for-default-home-page.patch b/build/patches/Always-use-new-tab-page-for-default-home-page.patch index 5261b089..40ec28f5 100644 --- a/build/patches/Always-use-new-tab-page-for-default-home-page.patch +++ b/build/patches/Always-use-new-tab-page-for-default-home-page.patch @@ -10,7 +10,7 @@ Ignore any partner-provided home page. diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java --- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java -@@ -146,9 +146,6 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat +@@ -147,9 +147,6 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat * if the homepage button is force enabled via flag. */ public static String getDefaultHomepageUri() { diff --git a/build/patches/AudioBuffer-AnalyserNode-fp-mitigations.patch b/build/patches/AudioBuffer-AnalyserNode-fp-mitigations.patch index 4fc33446..c72e0b3e 100644 --- a/build/patches/AudioBuffer-AnalyserNode-fp-mitigations.patch +++ b/build/patches/AudioBuffer-AnalyserNode-fp-mitigations.patch @@ -46,7 +46,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.idl b/thir diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/third_party/blink/renderer/modules/webaudio/audio_context.cc --- a/third_party/blink/renderer/modules/webaudio/audio_context.cc +++ b/third_party/blink/renderer/modules/webaudio/audio_context.cc -@@ -406,7 +406,9 @@ double AudioContext::baseLatency() const { +@@ -450,7 +450,9 @@ double AudioContext::baseLatency() const { DCHECK(IsMainThread()); DCHECK(destination()); diff --git a/build/patches/Automated-domain-substitution.patch b/build/patches/Automated-domain-substitution.patch index 6db99b77..e915f51c 100644 --- a/build/patches/Automated-domain-substitution.patch +++ b/build/patches/Automated-domain-substitution.patch @@ -3,7 +3,7 @@ Date: Fri, 21 Aug 2020 13:41:07 +0200 Subject: Automated domain substitution --- - PRESUBMIT.py | 56 +- + PRESUBMIT.py | 64 +- .../cts_config/webview_cts_gcs_path.json | 24 +- android_webview/tools/generate_flag_labels.py | 2 +- android_webview/tools/record_netlog.py | 6 +- @@ -13,6 +13,8 @@ Subject: Automated domain substitution ash/ash_strings.grd | 10 +- ash/assistant/assistant_setup_controller.cc | 2 +- ash/assistant/util/deep_link_util.cc | 16 +- + .../scanning/resources/scanning_app.html | 2 +- + .../scanning/resources/scanning_app.js | 2 +- .../quick_answers_controller_impl.cc | 2 +- ash/resources/PRESUBMIT.py | 4 +- ...pcie_peripheral_notification_controller.cc | 2 +- @@ -66,7 +68,6 @@ Subject: Automated domain substitution build/whitespace_file.txt | 2 +- buildtools/README.txt | 4 +- buildtools/clang_format/README.txt | 6 +- - buildtools/ensure_gn_version.py | 2 +- cc/PRESUBMIT.py | 2 +- chrome/PRESUBMIT.py | 2 +- ...roid_chrome_autofill_assistant_strings.grd | 2 +- @@ -77,7 +78,7 @@ Subject: Automated domain substitution .../manifest/maps_go_manifest_config.json | 10 +- chrome/app/PRESUBMIT.py | 8 +- chrome/app/chromium_strings.grd | 14 +- - chrome/app/generated_resources.grd | 244 +-- + chrome/app/generated_resources.grd | 244 +- chrome/app/google_chrome_strings.grd | 14 +- chrome/app/resources/locale_settings.grd | 10 +- chrome/app/theme/PRESUBMIT.py | 4 +- @@ -88,19 +89,25 @@ Subject: Automated domain substitution .../digital_goods_factory_impl.cc | 2 +- .../apps/platform_apps/install_chrome_app.cc | 2 +- chrome/browser/ash/app_mode/fake_cws.cc | 2 +- - .../browser/ash/assistant/assistant_util.cc | 4 +- - .../easy_unlock/easy_unlock_key_names.cc | 2 +- - .../login/saml/password_sync_token_fetcher.cc | 2 +- - .../recommend_apps_fetcher_impl.cc | 2 +- - .../autofill/autofill_gstatic_reader.cc | 4 +- - .../browser_switcher_service.cc | 2 +- - chrome/browser/cart/cart_service.cc | 8 +- - .../browser/chrome_browser_application_mac.mm | 2 +- - .../chromeos/android_sms/android_sms_urls.cc | 16 +- .../auth/arc_background_auth_code_fetcher.cc | 2 +- .../arc/auth/arc_robot_auth_code_fetcher.cc | 2 +- - .../attestation/attestation_ca_client.cc | 8 +- + .../browser/ash/assistant/assistant_util.cc | 4 +- + .../ash/attestation/attestation_ca_client.cc | 8 +- .../backdrop_wallpaper_handlers.cc | 6 +- + .../easy_unlock/easy_unlock_key_names.cc | 2 +- + .../ash/login/marketing_backend_connector.cc | 4 +- + .../login/saml/password_sync_token_fetcher.cc | 2 +- + .../recommend_apps_fetcher_impl.cc | 2 +- + .../plugin_vm/plugin_vm_license_checker.cc | 4 +- + .../browser/ash/plugin_vm/plugin_vm_util.cc | 6 +- + .../autofill/autofill_gstatic_reader.cc | 4 +- + .../browser_switcher_service.cc | 2 +- + chrome/browser/buildflags.gni | 2 +- + chrome/browser/cart/cart_service.cc | 8 +- + .../cart_domain_cart_url_mapping.json | 2 +- + .../resources/cart_domain_name_mapping.json | 2 +- + .../browser/chrome_browser_application_mac.mm | 2 +- + .../chromeos/android_sms/android_sms_urls.cc | 16 +- .../child_accounts/child_user_service.cc | 2 +- .../resources/web_time_limit_error_page.html | 2 +- .../chromeos/crostini/crostini_util.cc | 2 +- @@ -111,14 +118,11 @@ Subject: Automated domain substitution .../first_run/drive_first_run_controller.cc | 4 +- chrome/browser/chromeos/hats/hats_dialog.cc | 2 +- .../input_method/assistive_suggester.cc | 12 +- - .../login/marketing_backend_connector.cc | 4 +- .../dns_latency_routine.cc | 2 +- .../dns_resolution_routine.cc | 2 +- .../http_firewall_routine.cc | 6 +- .../network_diagnostics_util.cc | 14 +- .../video_conferencing_routine.cc | 4 +- - .../plugin_vm/plugin_vm_license_checker.cc | 4 +- - .../chromeos/plugin_vm/plugin_vm_util.cc | 6 +- .../chromeos/policy/heartbeat_scheduler.cc | 4 +- .../policy/powerwash_requirements_checker.cc | 2 +- .../remote_commands/crd_host_delegate.cc | 10 +- @@ -155,7 +159,6 @@ Subject: Automated domain substitution .../instantmessaging/constants.h | 4 +- chrome/browser/net/dns_probe_runner.cc | 2 +- .../notification_platform_bridge_mac.mm | 2 +- - .../ads_page_load_metrics_observer.cc | 2 +- ...uction_proxy_metrics_observer_test_utils.h | 2 +- ...rvice_worker_page_load_metrics_observer.cc | 2 +- .../performance_hints_features.cc | 2 +- @@ -164,11 +167,11 @@ Subject: Automated domain substitution chrome/browser/policy/policy_test_utils.h | 2 +- .../prefetch_proxy/prefetch_proxy_params.cc | 6 +- .../profiles/profile_avatar_downloader.cc | 2 +- - chrome/browser/profiles/profile_window.cc | 2 +- .../push_messaging_constants.cc | 2 +- .../push_messaging_service_impl.cc | 2 +- chrome/browser/resources/PRESUBMIT.py | 2 +- .../resources/chromeos/about_os_credits.html | 6 +- + .../magnifier/magnifier.js | 2 +- .../chromevox/background/command_handler.js | 6 +- .../chromevox/options/options.css | 2 +- .../tools/webstore_extension_util.py | 10 +- @@ -192,8 +195,8 @@ Subject: Automated domain substitution .../input_method/google_xkb_manifest.json | 10 +- .../chromeos/login/arc_terms_of_service.js | 4 +- .../chromeos/login/marketing_opt_in.html | 2 +- - .../chromeos/login/offline_login.html | 2 +- - .../resources/chromeos/login/offline_login.js | 2 +- + .../login/screens/login/offline_login.html | 2 +- + .../login/screens/login/offline_login.js | 2 +- .../browser_tabs_metadata_form.js | 2 +- .../chromeos/wallpaper_manager/manifest.json | 2 +- .../zip_archiver/unpacker-test/README.txt | 2 +- @@ -204,18 +207,14 @@ Subject: Automated domain substitution chrome/browser/resources/downloads/icons.html | 2 +- .../resources/feedback/js/feedback_util.js | 10 +- .../feedback_webui/js/feedback_util.js | 10 +- - .../resources/gaia_auth_host/authenticator.js | 4 +- + .../resources/gaia_auth_host/authenticator.js | 2 +- .../saml_password_attributes.js | 2 +- .../resources/hangout_services/manifest.json | 2 +- - chrome/browser/resources/hats/hats.html | 2 +- .../manifest.json | 2 +- .../scope_approval_dialog.js | 6 +- chrome/browser/resources/inspect/inspect.html | 4 +- .../query_tiles/query_tiles_internals.html | 2 +- .../query_tiles/query_tiles_internals.js | 4 +- - .../browser/resources/local_ntp/customize.js | 2 +- - chrome/browser/resources/local_ntp/doodles.js | 4 +- - chrome/browser/resources/local_ntp/voice.js | 2 +- .../resources/media/mei_preload/manifest.json | 2 +- chrome/browser/resources/media/webrtc_logs.js | 2 +- .../shared/nearby_contact_visibility.js | 2 +- @@ -225,7 +224,7 @@ Subject: Automated domain substitution .../network_speech_synthesis/manifest.json | 2 +- .../network_speech_synthesis/tts_extension.js | 2 +- .../new_tab_page/doodle_share_dialog.js | 2 +- - .../new_tab_page/modules/drive/module.js | 8 +- + .../new_tab_page/modules/drive/module.js | 2 +- .../new_tab_page/voice_search_overlay.js | 2 +- chrome/browser/resources/omnibox/omnibox.html | 2 +- .../resources/omnibox/omnibox_output.js | 4 +- @@ -256,7 +255,7 @@ Subject: Automated domain substitution .../chrome_cleaner/srt_field_trial_win.cc | 6 +- .../chrome_enterprise_url_lookup_service.cc | 4 +- .../chrome_password_protection_service.cc | 4 +- - .../binary_upload_service.cc | 4 +- + .../binary_upload_service.cc | 6 +- .../check_client_download_request_base.cc | 4 +- .../download_protection/download_feedback.cc | 2 +- .../ppapi_download_request.cc | 6 +- @@ -266,8 +265,6 @@ Subject: Automated domain substitution .../background/ntp_background_service.cc | 6 +- .../search/background/ntp_backgrounds.cc | 10 +- chrome/browser/search/drive/drive_service.cc | 4 +- - chrome/browser/search/local_ntp_source.cc | 6 +- - chrome/browser/search/ntp_icon_source.cc | 2 +- .../sharing/shared_clipboard/feature_flags.cc | 2 +- .../sharing/web_push/web_push_sender.cc | 4 +- .../sharing/webrtc/ice_config_fetcher.cc | 12 +- @@ -283,8 +280,9 @@ Subject: Automated domain substitution .../supervised_user_service.cc | 2 +- .../supervised_user_url_filter.cc | 12 +- .../browser/tracing/crash_service_uploader.cc | 2 +- - .../strings/android_chrome_strings.grd | 40 +- + .../strings/android_chrome_strings.grd | 38 +- .../arc/arc_app_reinstall_app_result.cc | 2 +- + .../search/arc/recommend_apps_fetcher_impl.cc | 2 +- .../search/files/item_suggest_cache.cc | 2 +- .../search/files/item_suggest_cache.h | 2 +- .../ui/app_list/search/omnibox_provider.cc | 2 +- @@ -297,10 +295,10 @@ Subject: Automated domain substitution ...r_content_setting_bubble_model_delegate.cc | 4 +- .../browser_navigator_browsertest_chromeos.cc | 2 +- chrome/browser/ui/chrome_pages.cc | 2 +- - .../rosetta_required_infobar_delegate.mm | 2 +- .../browser/ui/cocoa/share_menu_controller.mm | 2 +- .../ui/commander/open_url_command_source.cc | 2 +- .../installation_error_infobar_delegate.cc | 2 +- + chrome/browser/ui/managed_ui.cc | 2 +- chrome/browser/ui/signin_view_controller.cc | 2 +- .../toolbar/media_router_contextual_menu.cc | 6 +- .../app_dialog/app_uninstall_dialog_view.cc | 2 +- @@ -318,7 +316,6 @@ Subject: Automated domain substitution .../assistant_optin/assistant_optin_utils.cc | 2 +- .../edu_coexistence_login_handler_chromeos.cc | 2 +- .../ui/webui/interstitials/interstitial_ui.cc | 2 +- - .../webui/management/management_ui_handler.cc | 2 +- .../ui/webui/new_tab_page/foo/foo_handler.cc | 12 +- .../ui/webui/new_tab_page/new_tab_page_ui.cc | 4 +- chrome/browser/ui/webui/ntp/new_tab_ui.cc | 2 +- @@ -328,7 +325,6 @@ Subject: Automated domain substitution .../settings_localized_strings_provider.cc | 2 +- .../ui/webui/welcome/google_apps_handler.cc | 12 +- .../webui/welcome/ntp_background_handler.cc | 2 +- - .../video_tutorials/internal/config.cc | 2 +- chrome/browser/vr/PRESUBMIT.py | 2 +- .../preinstalled_web_apps/gmail.cc | 6 +- .../preinstalled_web_apps/google_calendar.cc | 6 +- @@ -365,7 +361,7 @@ Subject: Automated domain substitution chrome/common/extensions/api/windows.json | 2 +- .../extensions/chrome_extensions_client.cc | 4 +- chrome/common/google_url_loader_throttle.cc | 4 +- - chrome/common/url_constants.cc | 232 +- + chrome/common/url_constants.cc | 236 +- .../gaiacp/associated_user_validator.cc | 2 +- .../gaiacp/gaia_credential_base.cc | 8 +- .../credential_provider/gaiacp/gcp_utils.cc | 4 +- @@ -434,6 +430,7 @@ Subject: Automated domain substitution .../shell_devtools_discovery_page.html | 2 +- .../browser/service/cast_service_simple.cc | 2 +- chromecast/browser/webui/cast_webui.cc | 4 +- + chromecast/chromecast.gni | 2 +- chromecast/common/extensions_api/i18n.json | 2 +- chromecast/common/extensions_api/tabs.json | 4 +- chromecast/common/extensions_api/windows.json | 2 +- @@ -445,11 +442,10 @@ Subject: Automated domain substitution .../resources/strings/camera_strings.grd | 2 +- .../resources/routine_section.js | 2 +- chromeos/components/drivefs/drivefs_auth.cc | 2 +- + .../media_app_ui/media_app_guest_ui.cc | 2 +- .../multidevice/stub_multidevice_util.cc | 2 +- chromeos/components/phonehub/url_constants.cc | 2 +- .../translation_result_loader.cc | 2 +- - .../scanning/resources/scanning_app.html | 2 +- - .../scanning/resources/scanning_app.js | 2 +- .../trial_group/trial_group_checker.cc | 2 +- .../simple_geolocation_provider.cc | 2 +- chromeos/printing/ppd_provider.h | 2 +- @@ -519,7 +515,6 @@ Subject: Automated domain substitution components/feedback/feedback_uploader.cc | 2 +- components/flags_ui/resources/flags.html | 4 +- components/gcm_driver/gcm_account_mapper.cc | 2 +- - components/gcm_driver/gcm_account_tracker.cc | 4 +- components/gcm_driver/gcm_client_impl.cc | 2 +- .../core/browser/browsing_history_service.cc | 4 +- .../history/core/browser/history_service.cc | 4 +- @@ -543,7 +538,12 @@ Subject: Automated domain substitution .../omnibox/browser/document_provider.cc | 10 +- .../browser/document_suggestions_service.cc | 4 +- .../omnibox/browser/zero_suggest_provider.cc | 2 +- + .../resources/omnibox_pedal_concepts.json | 22 +- + .../omnibox_pedal_concepts_en-GB.json | 20 +- + .../resources/omnibox_pedal_concepts_en.json | 20 +- + .../page_content_annotations_model_manager.cc | 2 +- .../core/optimization_guide_constants.cc | 4 +- + .../ads_page_load_metrics_observer.cc | 2 +- .../core/uma_page_load_metrics_observer.cc | 2 +- .../use_counter_page_load_metrics_observer.cc | 4 +- .../affiliation_fetcher.cc | 2 +- @@ -573,7 +573,7 @@ Subject: Automated domain substitution .../core/browser/browser_policy_connector.cc | 10 +- components/policy/core/browser/url_util.cc | 4 +- .../core/common/policy_loader_common.cc | 2 +- - .../policy/resources/policy_templates.json | 1948 ++++++++--------- + .../policy/resources/policy_templates.json | 1992 ++++++++--------- .../policy/resources/webui/policy_base.js | 2 +- .../policy/test_support/policy_testserver.py | 14 +- .../policy/tools/generate_extension_admx.py | 2 +- @@ -584,7 +584,6 @@ Subject: Automated domain substitution .../template_writers/writers/doc_writer.py | 10 +- .../writers/ios_app_config_writer.py | 2 +- .../writers/template_writer.py | 2 +- - .../query_tiles/internal/tile_config.cc | 2 +- components/quirks/quirks_client.cc | 2 +- components/resources/terms/terms_am.html | 4 +- components/resources/terms/terms_ar.html | 4 +- @@ -648,7 +647,6 @@ Subject: Automated domain substitution .../safe_search_api/stub_url_checker.cc | 2 +- components/safety_check/url_constants.cc | 2 +- .../content/ssl_blocking_page.h | 2 +- - .../browser/resources/interstitial_large.js | 2 +- .../core/controller_client.cc | 2 +- .../core/safe_browsing_loud_error_ui.cc | 4 +- .../security_interstitials/core/urls.cc | 4 +- @@ -693,6 +691,7 @@ Subject: Automated domain substitution .../service_worker/service_worker_metrics.cc | 8 +- .../speech/speech_recognition_engine.cc | 2 +- content/browser/speech/tts_mac.mm | 2 +- + .../browser/web_contents/web_contents_impl.cc | 2 +- .../browser/webauth/authenticator_common.cc | 8 +- .../zygote_host/zygote_host_impl_linux.cc | 2 +- content/public/PRESUBMIT.py | 4 +- @@ -723,7 +722,7 @@ Subject: Automated domain substitution google_apis/drive/drive_api_url_generator.cc | 4 +- google_apis/gaia/gaia_auth_fetcher.cc | 4 +- google_apis/gaia/gaia_auth_util.cc | 6 +- - google_apis/gaia/gaia_constants.cc | 64 +- + google_apis/gaia/gaia_constants.cc | 66 +- google_apis/gaia/gaia_oauth_client.cc | 6 +- google_apis/gaia/gaia_urls.cc | 8 +- google_apis/gcm/base/mcs_util.cc | 2 +- @@ -783,11 +782,13 @@ Subject: Automated domain substitution ios/net/crn_http_protocol_handler.mm | 2 +- .../omaha/test_omaha_service_provider.mm | 2 +- .../browser/signin/chrome_identity_service.mm | 4 +- - .../signin/fake_chrome_identity_service.mm | 4 +- + .../signin/fake_chrome_identity_service.mm | 2 +- + .../fake_chrome_identity_service_constants.mm | 2 +- ios/showcase/alert/sc_alert_coordinator.mm | 8 +- .../sc_infobar_modal_save_card_coordinator.mm | 2 +- .../fake_autocomplete_suggestion.mm | 4 +- .../http_server_files/simple_login_form.html | 2 +- + .../http_server_files/simple_signup_form.html | 2 +- .../data/http_server_files/window_open.html | 2 +- ios/web/navigation/navigation_manager_impl.mm | 6 +- ios/web_view/PRESUBMIT.py | 2 +- @@ -796,6 +797,7 @@ Subject: Automated domain substitution .../notifier/base/gaia_token_pre_xmpp_auth.cc | 2 +- jingle/notifier/base/notifier_options_util.cc | 4 +- media/PRESUBMIT.py | 4 +- + media/base/win/mf_initializer.cc | 2 +- mojo/PRESUBMIT.py | 2 +- native_client_sdk/PRESUBMIT.py | 2 +- .../src/build_tools/build_paths.py | 2 +- @@ -874,7 +876,7 @@ Subject: Automated domain substitution remoting/base/service_urls.cc | 8 +- .../notification/gstatic_json_fetcher.cc | 2 +- ...rome.remote_assistance-firefox.json.jinja2 | 2 +- - .../host/it2me/it2me_native_messaging_host.cc | 2 +- + remoting/host/it2me/it2me_constants.cc | 2 +- remoting/host/linux/linux_me2me_host.py | 4 +- remoting/host/linux/remoting_user_session.cc | 2 +- remoting/host/remoting_me2me_host.cc | 2 +- @@ -904,6 +906,7 @@ Subject: Automated domain substitution .../java/AndroidManifest.xml.jinja2 | 4 +- .../browser_test_commands_linux.txt | 2 +- .../chromoting_test_driver_commands_linux.txt | 4 +- + testing/generate_location_tags.py | 2 +- testing/merge_scripts/PRESUBMIT.py | 2 +- .../merge_scripts/code_coverage/PRESUBMIT.py | 2 +- .../code_coverage/merge_results.py | 2 +- @@ -916,7 +919,7 @@ Subject: Automated domain substitution testing/trigger_scripts/PRESUBMIT.py | 2 +- .../trigger_scripts/base_test_triggerer.py | 2 +- testing/variations/PRESUBMIT.py | 2 +- - .../variations/fieldtrial_testing_config.json | 20 +- + .../variations/fieldtrial_testing_config.json | 22 +- .../markdown/extensions/smarty.py | 2 +- .../abseil-cpp/absl/abseil.podspec.gen.py | 2 +- third_party/abseil-cpp/conanfile.py | 2 +- @@ -939,12 +942,89 @@ Subject: Automated domain substitution third_party/afl/src/libtokencap/Makefile | 2 +- third_party/afl/src/llvm_mode/Makefile | 6 +- .../afl/src/llvm_mode/afl-clang-fast.c | 4 +- + .../android_arch_core_common/3pp/fetch.py | 2 +- + .../android_arch_core_runtime/3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../com_android_support_design/3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../com_android_support_loader/3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../com_android_support_multidex/3pp/fetch.py | 2 +- + .../com_android_support_print/3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../com_android_tools_common/3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../com_android_tools_sdk_common/3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- + .../3pp/fetch.py | 2 +- .../Android_SDK_License-December_9_2016.txt | 4 +- .../development/scripts/PRESUBMIT.py | 2 +- third_party/blink/PRESUBMIT.py | 4 +- .../common/loader/record_load_histograms.cc | 2 +- .../public/common/scheduler/PRESUBMIT.py | 2 +- - .../public/mojom/feature_policy/PRESUBMIT.py | 2 +- + .../mojom/permissions_policy/PRESUBMIT.py | 2 +- .../public/mojom/use_counter/PRESUBMIT.py | 2 +- .../public/mojom/web_feature/PRESUBMIT.py | 2 +- .../blink/public/strings/blink_strings.grd | 8 +- @@ -975,14 +1055,13 @@ Subject: Automated domain substitution .../renderer/core/dom/events/event_target.cc | 4 +- .../blink/renderer/core/events/touch_event.cc | 2 +- .../blink/renderer/core/events/wheel_event.cc | 2 +- - .../blink/renderer/core/frame/deprecation.cc | 50 +- + .../blink/renderer/core/frame/deprecation.cc | 46 +- .../blink/renderer/core/frame/local_frame.cc | 4 +- .../renderer/core/html/html_iframe_element.cc | 2 +- .../renderer/core/html/html_link_element.cc | 4 +- .../core/html/media/autoplay_policy.cc | 4 +- .../core/html/media/html_media_element.cc | 4 +- .../core/html/portal/html_portal_element.cc | 4 +- - .../renderer/core/loader/document_loader.cc | 2 +- .../renderer/core/loader/frame_loader.cc | 4 +- .../core/loader/mixed_content_checker.cc | 2 +- .../core/loader/subresource_filter.cc | 2 +- @@ -1177,7 +1256,6 @@ Subject: Automated domain substitution third_party/polymer/v1_0/PRESUBMIT.py | 2 +- .../iron-flex-layout/iron-flex-layout.html | 2 +- .../iron-icon/iron-icon.html | 2 +- - .../iron-location/iron-location-extracted.js | 2 +- .../neon-animation/neon-animated-pages.html | 2 +- .../paper-progress/paper-progress.html | 2 +- .../paper-ripple/paper-ripple.html | 2 +- @@ -1246,7 +1324,7 @@ Subject: Automated domain substitution .../tensorflow_text/core/ops/rouge_l_op.cc | 2 +- .../metrics/text_similarity_metric_ops.py | 2 +- third_party/wpt_tools/wpt/tools/lint/rules.py | 4 +- - .../tools/third_party/pywebsocket3/setup.py | 4 +- + .../tools/third_party/pywebsocket3/setup.py | 2 +- .../wpt/tools/webdriver/webdriver/client.py | 2 +- .../wpt_tools/wpt/tools/wpt/android.py | 2 +- .../wpt_tools/wpt/tools/wpt/browser.py | 28 +- @@ -1295,6 +1373,7 @@ Subject: Automated domain substitution .../open_my_editor/ext/background.js | 26 +- .../open_my_editor/ext/manifest.json | 6 +- tools/clang/scripts/build.py | 4 +- + tools/clang/scripts/include-analysis.html | 4 +- tools/clang/scripts/package.py | 2 +- tools/clang/scripts/update.py | 2 +- tools/code_coverage/coverage.py | 8 +- @@ -1311,7 +1390,7 @@ Subject: Automated domain substitution tools/generate_stubs/generate_stubs.py | 2 +- tools/git/suggest_owners.py | 6 +- tools/gn/bootstrap/bootstrap.py | 2 +- - tools/gn/roll_gn.py | 6 +- + tools/gn/roll_gn.py | 2 +- tools/grit/PRESUBMIT.py | 2 +- tools/grit/grit/format/rc.py | 2 +- tools/grit/grit/tool/android2grd.py | 4 +- @@ -1329,6 +1408,7 @@ Subject: Automated domain substitution tools/json_to_struct/PRESUBMIT.py | 2 +- tools/licenses.py | 38 +- tools/linux/PRESUBMIT.py | 2 +- + tools/mac/download_symbols.py | 4 +- tools/mb/mb.py | 4 +- tools/mb/mb_config.pyl | 6 +- tools/md_browser/base.css | 4 +- @@ -1372,6 +1452,7 @@ Subject: Automated domain substitution .../sample_traffic_annotation.cc | 2 +- .../scripts/update_annotations_doc.py | 4 +- .../scripts/update_annotations_sheet.py | 6 +- + tools/typescript/PRESUBMIT.py | 2 +- tools/usb_gadget/gadget.py | 2 +- tools/usb_gadget/msos20_descriptors.py | 2 +- tools/variations/bisect_variations.py | 2 +- @@ -1401,8 +1482,8 @@ Subject: Automated domain substitution ui/base/ime/character_composer_sequences.txt | 2 +- .../keycodes/keyboard_code_conversion_mac.mm | 2 +- ui/file_manager/audio_player/manifest.json | 2 +- - ui/file_manager/base/js/mock_chrome.js | 4 +- ui/file_manager/base/tools/PRESUBMIT.py | 2 +- + .../file_manager/common/js/mock_chrome.js | 4 +- .../cws_widget/cws_widget_container.js | 4 +- .../foreground/elements/icons.html | 2 +- .../foreground/js/web_store_utils.js | 4 +- @@ -1425,7 +1506,7 @@ Subject: Automated domain substitution weblayer/browser/default_search_engine.cc | 2 +- ...weblayer_security_blocking_page_factory.cc | 2 +- weblayer/shell/app/shell_main_params.cc | 2 +- - 1422 files changed, 4414 insertions(+), 4414 deletions(-) + 1503 files changed, 4541 insertions(+), 4541 deletions(-) diff --git a/PRESUBMIT.py b/PRESUBMIT.py --- a/PRESUBMIT.py @@ -1439,7 +1520,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py for more details about the presubmit API built into depot_tools. """ PRESUBMIT_VERSION = '2.0.0' -@@ -180,7 +180,7 @@ _BANNED_OBJC_FUNCTIONS = ( +@@ -191,7 +191,7 @@ _BANNED_OBJC_FUNCTIONS = ( ( 'The use of -[NSView addTrackingRect:owner:userData:assumeInside:] is' 'prohibited. Please use CrTrackingArea instead.', @@ -1448,7 +1529,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), False, ), -@@ -189,7 +189,7 @@ _BANNED_OBJC_FUNCTIONS = ( +@@ -200,7 +200,7 @@ _BANNED_OBJC_FUNCTIONS = ( ( 'The use of NSTrackingAreas is prohibited. Please use CrTrackingArea', 'instead.', @@ -1457,7 +1538,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), False, ), -@@ -198,7 +198,7 @@ _BANNED_OBJC_FUNCTIONS = ( +@@ -209,7 +209,7 @@ _BANNED_OBJC_FUNCTIONS = ( ( 'The use of -[NSView convertPointFromBase:] is almost certainly wrong.', 'Please use |convertPoint:(point) fromView:nil| instead.', @@ -1466,7 +1547,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), True, ), -@@ -207,7 +207,7 @@ _BANNED_OBJC_FUNCTIONS = ( +@@ -218,7 +218,7 @@ _BANNED_OBJC_FUNCTIONS = ( ( 'The use of -[NSView convertPointToBase:] is almost certainly wrong.', 'Please use |convertPoint:(point) toView:nil| instead.', @@ -1475,7 +1556,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), True, ), -@@ -216,7 +216,7 @@ _BANNED_OBJC_FUNCTIONS = ( +@@ -227,7 +227,7 @@ _BANNED_OBJC_FUNCTIONS = ( ( 'The use of -[NSView convertRectFromBase:] is almost certainly wrong.', 'Please use |convertRect:(point) fromView:nil| instead.', @@ -1484,7 +1565,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), True, ), -@@ -225,7 +225,7 @@ _BANNED_OBJC_FUNCTIONS = ( +@@ -236,7 +236,7 @@ _BANNED_OBJC_FUNCTIONS = ( ( 'The use of -[NSView convertRectToBase:] is almost certainly wrong.', 'Please use |convertRect:(point) toView:nil| instead.', @@ -1493,7 +1574,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), True, ), -@@ -234,7 +234,7 @@ _BANNED_OBJC_FUNCTIONS = ( +@@ -245,7 +245,7 @@ _BANNED_OBJC_FUNCTIONS = ( ( 'The use of -[NSView convertSizeFromBase:] is almost certainly wrong.', 'Please use |convertSize:(point) fromView:nil| instead.', @@ -1502,7 +1583,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), True, ), -@@ -243,7 +243,7 @@ _BANNED_OBJC_FUNCTIONS = ( +@@ -254,7 +254,7 @@ _BANNED_OBJC_FUNCTIONS = ( ( 'The use of -[NSView convertSizeToBase:] is almost certainly wrong.', 'Please use |convertSize:(point) toView:nil| instead.', @@ -1511,7 +1592,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), True, ), -@@ -556,7 +556,7 @@ _BANNED_CPP_FUNCTIONS = ( +@@ -520,7 +520,7 @@ _BANNED_CPP_FUNCTIONS = ( ( "Don't use CallJavascriptFunctionUnsafe() in new code. Instead, use", 'AllowJavascript(), OnJavascriptAllowed()/OnJavascriptDisallowed(),', @@ -1520,7 +1601,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), False, ( -@@ -1215,7 +1215,7 @@ _DEPRECATED_MOJO_TYPES = ( +@@ -1188,7 +1188,7 @@ _DEPRECATED_MOJO_TYPES = ( _IPC_ENUM_TRAITS_DEPRECATED = ( 'You are using IPC_ENUM_TRAITS() in your code. It has been deprecated.\n' @@ -1529,7 +1610,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py 'security-tips-for-ipc') _LONG_PATH_ERROR = ( -@@ -1368,7 +1368,7 @@ _KNOWN_ROBOTS = set( +@@ -1343,7 +1343,7 @@ _KNOWN_ROBOTS = set( 'wpt-autoroller', 'chrome-weblayer-builder') ) | set('%s@skia-public.iam.gserviceaccount.com' % s for s in ('chromium-autoroll', 'chromium-release-autoroll') @@ -1538,7 +1619,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py for s in ('chromium-internal-autoroll',)) -@@ -1724,7 +1724,7 @@ def CheckNoDEPSGIT(input_api, output_api): +@@ -1670,7 +1670,7 @@ def CheckNoDEPSGIT(input_api, output_api): 'Never commit changes to .DEPS.git. This file is maintained by an\n' 'automated system based on what\'s in DEPS and your changes will be\n' 'overwritten.\n' @@ -1547,7 +1628,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py 'get-the-code#Rolling_DEPS\n' 'for more information')] return [] -@@ -1935,7 +1935,7 @@ def CheckNoPragmaOnce(input_api, output_api): +@@ -1881,7 +1881,7 @@ def CheckNoPragmaOnce(input_api, output_api): if files: return [output_api.PresubmitError( 'Do not use #pragma once in header files.\n' @@ -1556,7 +1637,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py files)] return [] -@@ -2120,7 +2120,7 @@ def CheckForVersionControlConflicts(input_api, output_api): +@@ -2066,7 +2066,7 @@ def CheckForVersionControlConflicts(input_api, output_api): def CheckGoogleSupportAnswerUrlOnUpload(input_api, output_api): @@ -1565,7 +1646,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py errors = [] for f in input_api.AffectedFiles(): for line_num, line in f.ChangedContents(): -@@ -2229,7 +2229,7 @@ def CheckNoAbbreviationInPngFileName(input_api, output_api): +@@ -2175,7 +2175,7 @@ def CheckNoAbbreviationInPngFileName(input_api, output_api): results.append(output_api.PresubmitError( 'The name of PNG files should not have abbreviations. \n' 'Use _hover.png, _center.png, instead of _h.png, _c.png.\n' @@ -1574,7 +1655,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py return results -@@ -2992,7 +2992,7 @@ def CheckSecurityOwners(input_api, output_api): +@@ -2947,7 +2947,7 @@ def CheckSecurityOwners(input_api, output_api): if to_check: # If there are any OWNERS files to check, there are IPC-related changes in # this CL. Auto-CC the review list. @@ -1583,7 +1664,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py # Go through the OWNERS files to check, filtering out rules that are already # present in that OWNERS file. -@@ -3292,7 +3292,7 @@ def _CheckAndroidToastUsage(input_api, output_api): +@@ -3248,7 +3248,7 @@ def _CheckAndroidToastUsage(input_api, output_api): 'android.widget.Toast usage is detected. Android toasts use hardware' ' acceleration, and can be\ncostly on low-end devices. Please use' ' org.chromium.ui.widget.Toast instead.\n' @@ -1592,7 +1673,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py errors)) return results -@@ -3426,7 +3426,7 @@ def _CheckAndroidTestJUnitFrameworkImport(input_api, output_api): +@@ -3382,7 +3382,7 @@ def _CheckAndroidTestJUnitFrameworkImport(input_api, output_api): if errors: results.append(output_api.PresubmitError( 'APIs from junit.framework.* are deprecated, please use JUnit4 framework' @@ -1601,7 +1682,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ' if you have any question.', errors)) return results -@@ -3457,7 +3457,7 @@ def _CheckAndroidTestJUnitInheritance(input_api, output_api): +@@ -3413,7 +3413,7 @@ def _CheckAndroidTestJUnitInheritance(input_api, output_api): results.append(output_api.PresubmitPromptWarning( 'The newly created files include Test classes that inherits from base' ' class. Please do not use inheritance in JUnit4 tests or add new' @@ -1610,7 +1691,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ' questions.', errors)) return results -@@ -3481,7 +3481,7 @@ def _CheckAndroidTestAnnotationUsage(input_api, output_api): +@@ -3437,7 +3437,7 @@ def _CheckAndroidTestAnnotationUsage(input_api, output_api): 'Annotations in android.test.suitebuilder.annotation have been' ' deprecated since API level 24. Please use android.support.test.filters' ' from //third_party/android_support_test_runner:runner_java instead.' @@ -1619,7 +1700,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py return results -@@ -3501,7 +3501,7 @@ def _CheckAndroidNewMdpiAssetLocation(input_api, output_api): +@@ -3457,7 +3457,7 @@ def _CheckAndroidNewMdpiAssetLocation(input_api, output_api): 'MDPI assets should be placed in /res/drawable-mdpi/ or ' '/res/drawable-ldrtl-mdpi/\ninstead of /res/drawable/ and' '/res/drawable-ldrtl/.\n' @@ -1628,7 +1709,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py return results -@@ -4036,7 +4036,7 @@ def CheckGnGlobForward(input_api, output_api): +@@ -3992,7 +3992,7 @@ def CheckGnGlobForward(input_api, output_api): long_text=('The variables "visibilty" and "test_only" should be ' 'explicitly listed in forward_variables_from(). For more ' 'details, see:\n' @@ -1637,7 +1718,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py 'build/docs/writing_gn_templates.md' '#Using-forward_variables_from'))] return [] -@@ -4240,7 +4240,7 @@ def CheckFuzzTargetsOnUpload(input_api, output_api): +@@ -4154,7 +4154,7 @@ def CheckFuzzTargetsOnUpload(input_api, output_api): 'LLVMFuzzerInitialize should not be used, unless your fuzz target needs ' 'to access command line arguments passed to the fuzzer. Instead, prefer ' 'static initialization and shared resources as documented in ' @@ -1646,7 +1727,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py 'libfuzzer/efficient_fuzzing.md#simplifying-initialization_cleanup.\n' % ( ', '.join(EXPORTED_SYMBOLS), REQUIRED_HEADER) ) -@@ -4275,7 +4275,7 @@ def _CheckNewImagesWarning(input_api, output_api): +@@ -4189,7 +4189,7 @@ def _CheckNewImagesWarning(input_api, output_api): errors.append(output_api.PresubmitPromptWarning( 'It looks like you are trying to commit some images. If these are ' 'non-test-only images, please make sure to read and apply the tips in ' @@ -1655,7 +1736,16 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py 'binary_size/optimization_advice.md#optimizing-images\nThis check is ' 'FYI only and will not block your CL on the CQ.', image_paths)) return errors -@@ -4559,7 +4559,7 @@ def CheckForInvalidIfDefinedMacros(input_api, output_api): +@@ -4283,7 +4283,7 @@ _NON_INCLUSIVE_TERMS = ( + '"# nocheck" or ""', + 'at the end of the offending line will bypass this PRESUBMIT error', + 'but avoid using this whenever possible. Reach out to', +- 'community@chromium.org if you have questions'), ++ 'community@ch40m1um.qjz9zk if you have questions'), + True),) + + def ChecksCommon(input_api, output_api): +@@ -4500,7 +4500,7 @@ def CheckForInvalidIfDefinedMacros(input_api, output_api): def CheckForIPCRules(input_api, output_api): """Check for same IPC rules described in @@ -1664,7 +1754,28 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py """ base_pattern = r'IPC_ENUM_TRAITS\(' inclusion_pattern = input_api.re.compile(r'(%s)' % base_pattern) -@@ -4803,7 +4803,7 @@ def CheckChangeOnCommit(input_api, output_api): +@@ -4752,7 +4752,7 @@ def CheckForUseOfChromeAppsDeprecations(input_api, output_api): + 'chrome.bluetoothLowEnergy', + 'chrome.bluetoothSocket', + 'chrome.browser', +- 'chrome.commands', ++ 'ch40me.qjz9zkmands', + 'chrome.contextMenus', + 'chrome.documentScan', + 'chrome.events', +@@ -4801,9 +4801,9 @@ def CheckForUseOfChromeAppsDeprecations(input_api, output_api): + return [output_api.PresubmitPromptWarning('You are adding/modifying code' + 'related to technologies which will soon be deprecated (Chrome Apps, NaCl,' + ' PNaCl, PPAPI). See this blog post for more details:\n' +- 'https://blog.chromium.org/2020/08/changes-to-chrome-app-support-timeline.html\n' ++ 'https://blog.ch40m1um.qjz9zk/2020/08/changes-to-chrome-app-support-timeline.html\n' + 'and this documentation for options to replace these technologies:\n' +- 'https://developer.chrome.com/docs/apps/migration/\n'+ ++ 'https://developer.ch40me.qjz9zk/docs/apps/migration/\n'+ + '\n'.join(problems))] + + return [] +@@ -4870,7 +4870,7 @@ def CheckChangeOnCommit(input_api, output_api): results.extend(input_api.canned_checks.CheckTreeIsOpen( input_api, output_api, @@ -1673,7 +1784,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py results.extend( input_api.canned_checks.CheckPatchFormatted(input_api, output_api)) -@@ -5135,7 +5135,7 @@ def CheckStrings(input_api, output_api): +@@ -5202,7 +5202,7 @@ def CheckStrings(input_api, output_api): if icu_syntax_errors: results.append(output_api.PresubmitPromptWarning( 'ICU syntax errors were found in the following strings (problems or ' @@ -1778,7 +1889,7 @@ diff --git a/android_webview/tools/cts_config/webview_cts_gcs_path.json b/androi diff --git a/android_webview/tools/generate_flag_labels.py b/android_webview/tools/generate_flag_labels.py --- a/android_webview/tools/generate_flag_labels.py +++ b/android_webview/tools/generate_flag_labels.py -@@ -244,7 +244,7 @@ double-check this picked the correct labels for your new features (labels are +@@ -245,7 +245,7 @@ double-check this picked the correct labels for your new features (labels are case-sensitive!), add these to enums.xml, run `git-cl format`, and then follow these steps as a final check: @@ -1892,7 +2003,7 @@ diff --git a/ash/ash_strings.grd b/ash/ash_strings.grd Connected devices settings -@@ -2743,7 +2743,7 @@ This file contains the strings for ash. +@@ -2752,7 +2752,7 @@ This file contains the strings for ash. Multiple sign-in has been disabled @@ -1901,7 +2012,7 @@ diff --git a/ash/ash_strings.grd b/ash/ash_strings.grd Sign out -@@ -3069,7 +3069,7 @@ Here are some things you can try to get started. +@@ -3075,7 +3075,7 @@ Here are some things you can try to get started. Unlock device to perform the notification action @@ -1963,6 +2074,30 @@ diff --git a/ash/assistant/util/deep_link_util.cc b/ash/assistant/util/deep_link if (!IsWebDeepLinkType(type, params)) return base::nullopt; +diff --git a/ash/content/scanning/resources/scanning_app.html b/ash/content/scanning/resources/scanning_app.html +--- a/ash/content/scanning/resources/scanning_app.html ++++ b/ash/content/scanning/resources/scanning_app.html +@@ -260,7 +260,7 @@ + [[i18n(toastMessageKey_)]] + +diff --git a/ash/content/scanning/resources/scanning_app.js b/ash/content/scanning/resources/scanning_app.js +--- a/ash/content/scanning/resources/scanning_app.js ++++ b/ash/content/scanning/resources/scanning_app.js +@@ -40,7 +40,7 @@ import {ScanningBrowserProxy, ScanningBrowserProxyImpl} from './scanning_browser + * URL for the Scanning help page. + * @const {string} + */ +-const HELP_PAGE_LINK = 'http://support.google.com/chromebook?p=chrome_scanning'; ++const HELP_PAGE_LINK = 'http://support.9oo91e.qjz9zk/chromebook?p=chrome_scanning'; + + /** + * @fileoverview diff --git a/ash/quick_answers/quick_answers_controller_impl.cc b/ash/quick_answers/quick_answers_controller_impl.cc --- a/ash/quick_answers/quick_answers_controller_impl.cc +++ b/ash/quick_answers/quick_answers_controller_impl.cc @@ -1973,8 +2108,8 @@ diff --git a/ash/quick_answers/quick_answers_controller_impl.cc b/ash/quick_answ - "https://goto.google.com/quick-answers-dogfood-bugs"; + "https://goto.9oo91e.qjz9zk/quick-answers-dogfood-bugs"; - // TODO(yanxiao): move the string to grd source file. - constexpr char kNoResult[] = "See result in Assistant"; + std::u16string IntentTypeToString(IntentType intent_type) { + switch (intent_type) { diff --git a/ash/resources/PRESUBMIT.py b/ash/resources/PRESUBMIT.py --- a/ash/resources/PRESUBMIT.py +++ b/ash/resources/PRESUBMIT.py @@ -1993,7 +2128,7 @@ diff --git a/ash/resources/PRESUBMIT.py b/ash/resources/PRESUBMIT.py diff --git a/ash/system/pcie_peripheral/pcie_peripheral_notification_controller.cc b/ash/system/pcie_peripheral/pcie_peripheral_notification_controller.cc --- a/ash/system/pcie_peripheral/pcie_peripheral_notification_controller.cc +++ b/ash/system/pcie_peripheral/pcie_peripheral_notification_controller.cc -@@ -29,7 +29,7 @@ namespace ash { +@@ -30,7 +30,7 @@ namespace ash { namespace { const char kNotifierPciePeripheral[] = "ash.pcie_peripheral"; const char kLearnMoreHelpUrl[] = @@ -2155,7 +2290,7 @@ diff --git a/build/android/gyp/lint.py b/build/android/gyp/lint.py diff --git a/build/android/gyp/proguard.py b/build/android/gyp/proguard.py --- a/build/android/gyp/proguard.py +++ b/build/android/gyp/proguard.py -@@ -375,7 +375,7 @@ def _OptimizeWithR8(options, +@@ -377,7 +377,7 @@ def _OptimizeWithR8(options, fail_on_output=options.warnings_as_errors) except build_utils.CalledProcessError as err: debugging_link = ('\n\nR8 failed. Please see {}.'.format( @@ -2164,7 +2299,7 @@ diff --git a/build/android/gyp/proguard.py b/build/android/gyp/proguard.py 'android/docs/java_optimization.md#Debugging-common-failures\n')) raise build_utils.CalledProcessError(err.cwd, err.args, err.output + debugging_link) -@@ -527,7 +527,7 @@ out/Release/apks/YourApk.apk > dex.txt +@@ -529,7 +529,7 @@ out/Release/apks/YourApk.apk > dex.txt stderr += """ You may need to update build configs to run FragmentActivityReplacer for additional targets. See @@ -2176,7 +2311,7 @@ diff --git a/build/android/gyp/proguard.py b/build/android/gyp/proguard.py diff --git a/build/android/gyp/util/diff_utils.py b/build/android/gyp/util/diff_utils.py --- a/build/android/gyp/util/diff_utils.py +++ b/build/android/gyp/util/diff_utils.py -@@ -101,10 +101,10 @@ def CheckExpectations(actual_data, options): +@@ -102,10 +102,10 @@ def CheckExpectations(actual_data, options, custom_msg=''): else: fail_msg = """ Expectations need updating: @@ -2187,8 +2322,8 @@ diff --git a/build/android/gyp/util/diff_utils.py b/build/android/gyp/util/diff_ -https://bugs.chromium.org/p/chromium/issues/detail?id=984616 +https://bugs.ch40m1um.qjz9zk/p/chromium/issues/detail?id=984616 - To update expectations, run: - ########### START ########### + {} + diff --git a/build/android/gyp/util/protoresources.py b/build/android/gyp/util/protoresources.py --- a/build/android/gyp/util/protoresources.py +++ b/build/android/gyp/util/protoresources.py @@ -2216,7 +2351,7 @@ diff --git a/build/android/incremental_install/installer.py b/build/android/incr diff --git a/build/android/pylib/base/result_sink.py b/build/android/pylib/base/result_sink.py --- a/build/android/pylib/base/result_sink.py +++ b/build/android/pylib/base/result_sink.py -@@ -110,7 +110,7 @@ class ResultSinkClient(object): +@@ -127,7 +127,7 @@ class ResultSinkClient(object): 'name': test_id, 'location': { 'file_name': test_file, @@ -2366,7 +2501,7 @@ diff --git a/build/android/pylib/utils/google_storage_helper.py b/build/android/ diff --git a/build/android/pylib/utils/maven_downloader.py b/build/android/pylib/utils/maven_downloader.py --- a/build/android/pylib/utils/maven_downloader.py +++ b/build/android/pylib/utils/maven_downloader.py -@@ -33,7 +33,7 @@ class MavenDownloader(object): +@@ -36,7 +36,7 @@ class MavenDownloader(object): # Google Play service are only distributed there, but third party libraries # could use Maven Central or JCenter for example. The default Maven remote # is Maven Central. @@ -2402,7 +2537,7 @@ diff --git a/build/android/resource_sizes.py b/build/android/resource_sizes.py diff --git a/build/android/test_runner.py b/build/android/test_runner.py --- a/build/android/test_runner.py +++ b/build/android/test_runner.py -@@ -1031,7 +1031,7 @@ def RunTestsInPlatformMode(args, result_sink_client=None): +@@ -1034,7 +1034,7 @@ def RunTestsInPlatformMode(args, result_sink_client=None): result_html_string, _, _ = test_results_presentation.result_details( json_path=json_file.name, test_name=args.command, @@ -2462,7 +2597,7 @@ diff --git a/build/chromeos/PRESUBMIT.py b/build/chromeos/PRESUBMIT.py diff --git a/build/chromeos/test_runner.py b/build/chromeos/test_runner.py --- a/build/chromeos/test_runner.py +++ b/build/chromeos/test_runner.py -@@ -912,7 +912,7 @@ def main(): +@@ -911,7 +911,7 @@ def main(): tast_test_parser = subparsers.add_parser( 'tast', help='Runs a device-side set of Tast tests. For more details, see: ' @@ -2474,7 +2609,7 @@ diff --git a/build/chromeos/test_runner.py b/build/chromeos/test_runner.py diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni --- a/build/config/android/rules.gni +++ b/build/config/android/rules.gni -@@ -1705,7 +1705,7 @@ if (enable_java_templates) { +@@ -1710,7 +1710,7 @@ if (enable_java_templates) { # * public.txt # * annotations.zip # * assets/ @@ -2508,7 +2643,7 @@ diff --git a/build/config/chromeos/rules.gni b/build/config/chromeos/rules.gni template("generate_runner_script") { forward_variables_from(invoker, [ -@@ -339,7 +339,7 @@ template("tast_test") { +@@ -340,7 +340,7 @@ template("tast_test") { if (!defined(tast_attr_expr) && !defined(tast_tests)) { # The following expression filters out all non-critical tests. See the link # below for more details: @@ -2517,15 +2652,15 @@ diff --git a/build/config/chromeos/rules.gni b/build/config/chromeos/rules.gni tast_attr_expr = "\"group:mainline\" && \"dep:chrome\"" if (defined(enable_tast_informational_tests) && -@@ -403,7 +403,7 @@ template("lacros_tast_test") { +@@ -421,7 +421,7 @@ template("lacros_tast_test") { # use it for testing. To support running lacros tast tests from Chromium CI, # a Var is added to support pointing the tast tests to use a specified # pre-deployed lacros-chrome. The location is decided by: - # https://source.chromium.org/chromium/chromium/src/+/master:third_party/chromite/scripts/deploy_chrome.py;l=80;drc=86f1234a4be8e9574442e076cdc835897f7bea61 + # https://source.ch40m1um.qjz9zk/chromium/chromium/src/+/master:third_party/chromite/scripts/deploy_chrome.py;l=80;drc=86f1234a4be8e9574442e076cdc835897f7bea61 tast_vars = [ "lacrosDeployedBinary=/usr/local/lacros-chrome" ] - data_deps = [ - "//chrome", # Builds the browser. + + # Lacros tast tests may have different test expectations based on whether diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni --- a/build/config/compiler/compiler.gni +++ b/build/config/compiler/compiler.gni @@ -2538,7 +2673,7 @@ diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler enable_cet_shadow_stack = target_cpu == "x64" } -@@ -215,7 +215,7 @@ declare_args() { +@@ -216,7 +216,7 @@ declare_args() { # results independent of the checkout and build directory names, which # in turn is important for goma compile hit rate. # Setting this to true may make it harder to debug binaries on Linux, see @@ -2574,7 +2709,7 @@ diff --git a/build/config/ozone.gni b/build/config/ozone.gni diff --git a/build/config/sanitizers/sanitizers.gni b/build/config/sanitizers/sanitizers.gni --- a/build/config/sanitizers/sanitizers.gni +++ b/build/config/sanitizers/sanitizers.gni -@@ -79,7 +79,7 @@ declare_args() { +@@ -76,7 +76,7 @@ declare_args() { use_cfi_recover = false # Compile for fuzzing with LLVM LibFuzzer. @@ -2598,7 +2733,7 @@ diff --git a/build/config/win/control_flow_guard.gni b/build/config/win/control_ diff --git a/build/fuchsia/binary_sizes.py b/build/fuchsia/binary_sizes.py --- a/build/fuchsia/binary_sizes.py +++ b/build/fuchsia/binary_sizes.py -@@ -95,7 +95,7 @@ def CreateTestResults(test_status, timestamp): +@@ -96,7 +96,7 @@ def CreateTestResults(test_status, timestamp): """Create test results data to write to JSON test results file. The JSON data format is defined in @@ -2634,7 +2769,7 @@ diff --git a/build/linux/sysroot_scripts/install-sysroot.py b/build/linux/sysroo diff --git a/build/mac_toolchain.py b/build/mac_toolchain.py --- a/build/mac_toolchain.py +++ b/build/mac_toolchain.py -@@ -81,7 +81,7 @@ def RequestCipdAuthentication(): +@@ -90,7 +90,7 @@ def RequestCipdAuthentication(): print() print('and follow the instructions.') print() @@ -2750,18 +2885,6 @@ diff --git a/buildtools/clang_format/README.txt b/buildtools/clang_format/README gsutil documentation: - https://developers.google.com/storage/docs/gsutil + https://developers.9oo91e.qjz9zk/storage/docs/gsutil -diff --git a/buildtools/ensure_gn_version.py b/buildtools/ensure_gn_version.py ---- a/buildtools/ensure_gn_version.py -+++ b/buildtools/ensure_gn_version.py -@@ -94,7 +94,7 @@ def main(): - % (cmd_str, out.strip())) - print("Force-installing %s to update it." % desired_revision) - -- url = 'https://chrome-infra-packages.appspot.com/dl/gn/gn/%s/+/%s' % ( -+ url = 'https://chrome-infra-packages.8pp2p8t.qjz9zk/dl/gn/gn/%s/+/%s' % ( - platform, args.version) - try: - zipdata = urllib.urlopen(url).read() diff --git a/cc/PRESUBMIT.py b/cc/PRESUBMIT.py --- a/cc/PRESUBMIT.py +++ b/cc/PRESUBMIT.py @@ -2936,7 +3059,7 @@ diff --git a/chrome/app/PRESUBMIT.py b/chrome/app/PRESUBMIT.py diff --git a/chrome/app/chromium_strings.grd b/chrome/app/chromium_strings.grd --- a/chrome/app/chromium_strings.grd +++ b/chrome/app/chromium_strings.grd -@@ -329,7 +329,7 @@ If you update this file, be sure also to update google_chrome_strings.grd. --> +@@ -326,7 +326,7 @@ If you update this file, be sure also to update google_chrome_strings.grd. --> To send a number from here to your Android phone, sign in to Chromium on both devices. @@ -2945,16 +3068,16 @@ diff --git a/chrome/app/chromium_strings.grd b/chrome/app/chromium_strings.grd Make sure you are signed in to Chromium on your $1Pixel XL and then try sending again. -@@ -576,7 +576,7 @@ Chromium is unable to recover your settings. +@@ -572,7 +572,7 @@ Chromium is unable to recover your settings. - Also clear data from Chromium ($1www.google.com) + Also clear data from Chromium ($1www.9oo91e.qjz9zk) + - -@@ -686,10 +686,10 @@ Chromium is unable to recover your settings. +@@ -667,10 +667,10 @@ Chromium is unable to recover your settings. You're signed in to Chromium! @@ -2967,7 +3090,7 @@ diff --git a/chrome/app/chromium_strings.grd b/chrome/app/chromium_strings.grd Someone previously signed in to Chromium on this computer as $1user@example.com. Please create a new Chromium user to keep your information separate. -@@ -734,7 +734,7 @@ Chromium is unable to recover your settings. +@@ -720,7 +720,7 @@ Chromium is unable to recover your settings. @@ -2976,7 +3099,7 @@ diff --git a/chrome/app/chromium_strings.grd b/chrome/app/chromium_strings.grd -@@ -759,10 +759,10 @@ Chromium is unable to recover your settings. +@@ -745,10 +745,10 @@ Chromium is unable to recover your settings. $1Elisa is already signed in to this Chromium profile. To keep your browsing separate, Chromium can create your own profile for you. @@ -2987,14 +3110,14 @@ diff --git a/chrome/app/chromium_strings.grd b/chrome/app/chromium_strings.grd - This will create a new Chromium profile for $1foo@gmail.com + This will create a new Chromium profile for $1foo@9ma1l.qjz9zk - + diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd --- a/chrome/app/generated_resources.grd +++ b/chrome/app/generated_resources.grd -@@ -389,16 +389,16 @@ are declared in tools/grit/grit_rule.gni. - - +@@ -392,16 +392,16 @@ are declared in tools/grit/grit_rule.gni. + Permission request expired + - $1google.com wants to + $19oo91e.qjz9zk wants to @@ -3013,7 +3136,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources This file -@@ -580,7 +580,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -583,7 +583,7 @@ are declared in tools/grit/grit_rule.gni. Open link as @@ -3022,7 +3145,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Open link in $1Gmail App -@@ -730,7 +730,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -737,7 +737,7 @@ are declared in tools/grit/grit_rule.gni. Search image with Google Lens @@ -3031,7 +3154,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Suggest password... -@@ -805,7 +805,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -812,7 +812,7 @@ are declared in tools/grit/grit_rule.gni. Open Link as @@ -3040,7 +3163,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Open Link in $1Gmail App -@@ -967,7 +967,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -978,7 +978,7 @@ are declared in tools/grit/grit_rule.gni. Search Image with Google Lens @@ -3049,7 +3172,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Suggest Password... -@@ -1183,7 +1183,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -1194,7 +1194,7 @@ are declared in tools/grit/grit_rule.gni. @@ -3058,7 +3181,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Move window to desk -@@ -1302,7 +1302,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -1319,7 +1319,7 @@ are declared in tools/grit/grit_rule.gni. Review @@ -3067,7 +3190,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -2647,10 +2647,10 @@ are declared in tools/grit/grit_rule.gni. +@@ -2690,10 +2690,10 @@ are declared in tools/grit/grit_rule.gni. Images were blocked on this page. @@ -3080,7 +3203,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking cookies -@@ -2659,7 +2659,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -2702,7 +2702,7 @@ are declared in tools/grit/grit_rule.gni. Continue allowing cookies @@ -3089,7 +3212,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking images -@@ -2671,28 +2671,28 @@ are declared in tools/grit/grit_rule.gni. +@@ -2714,28 +2714,28 @@ are declared in tools/grit/grit_rule.gni. Pop-ups blocked: @@ -3125,7 +3248,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Always block camera and microphone access -@@ -2713,19 +2713,19 @@ are declared in tools/grit/grit_rule.gni. +@@ -2756,19 +2756,19 @@ are declared in tools/grit/grit_rule.gni. Continue blocking camera access @@ -3150,7 +3273,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Pop-up blocked -@@ -2737,7 +2737,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -2780,7 +2780,7 @@ are declared in tools/grit/grit_rule.gni. JavaScript was blocked on this page. @@ -3159,7 +3282,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking JavaScript -@@ -2746,7 +2746,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -2789,7 +2789,7 @@ are declared in tools/grit/grit_rule.gni. Sound was muted on this page @@ -3168,7 +3291,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue muting sound -@@ -2858,7 +2858,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -2901,7 +2901,7 @@ are declared in tools/grit/grit_rule.gni. @@ -3177,7 +3300,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources &General -@@ -3388,13 +3388,13 @@ are declared in tools/grit/grit_rule.gni. +@@ -3431,13 +3431,13 @@ are declared in tools/grit/grit_rule.gni. @@ -3194,7 +3317,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Share this tab instead -@@ -3599,10 +3599,10 @@ are declared in tools/grit/grit_rule.gni. +@@ -3642,10 +3642,10 @@ are declared in tools/grit/grit_rule.gni. Incognito Tab: $1Google @@ -3207,7 +3330,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Plugin: $1Unknown Plugin -@@ -3611,7 +3611,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -3654,7 +3654,7 @@ are declared in tools/grit/grit_rule.gni. Plugin Broker: $1Unknown Plugin @@ -3216,7 +3339,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Spare Renderer -@@ -3647,16 +3647,16 @@ are declared in tools/grit/grit_rule.gni. +@@ -3690,16 +3690,16 @@ are declared in tools/grit/grit_rule.gni. Print: $1Google Maps @@ -3237,7 +3360,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources App: $1com.android.systemui -@@ -3857,13 +3857,13 @@ are declared in tools/grit/grit_rule.gni. +@@ -3900,13 +3900,13 @@ are declared in tools/grit/grit_rule.gni. These items may be dangerous @@ -3253,7 +3376,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources The app "$1Gmail" was automatically removed. -@@ -3875,10 +3875,10 @@ are declared in tools/grit/grit_rule.gni. +@@ -3918,10 +3918,10 @@ are declared in tools/grit/grit_rule.gni. @@ -3266,7 +3389,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources It can: -@@ -4017,22 +4017,22 @@ are declared in tools/grit/grit_rule.gni. +@@ -4060,22 +4060,22 @@ are declared in tools/grit/grit_rule.gni. Change your home page to: $1home.page.com/home.html @@ -3295,7 +3418,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Read and change your data on a number of websites -@@ -4041,10 +4041,10 @@ are declared in tools/grit/grit_rule.gni. +@@ -4084,10 +4084,10 @@ are declared in tools/grit/grit_rule.gni. Read your data on a number of websites @@ -3308,7 +3431,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Read and change anything you type -@@ -4393,7 +4393,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -4436,7 +4436,7 @@ are declared in tools/grit/grit_rule.gni. When you click the extension @@ -3317,7 +3440,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources On all sites -@@ -4446,7 +4446,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -4480,7 +4480,7 @@ are declared in tools/grit/grit_rule.gni. When You Click the Extension @@ -3326,7 +3449,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources On All Sites -@@ -4731,7 +4731,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -4773,7 +4773,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Change back to $1DuckDuckGo? @@ -3335,20 +3458,16 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -4974,10 +4974,10 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5016,7 +5016,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Update password for $1example.com? - $1Username $2***** will be saved to your Google Account, $3user@gmail.com + $1Username $2***** will be saved to your Google Account, $3user@9ma1l.qjz9zk - - -- $1Username $2***** will be saved to $3user@gmail.com -+ $1Username $2***** will be saved to $3user@9ma1l.qjz9zk Passwords are saved in your Google Account so you can use them on any device -@@ -5314,7 +5314,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5331,7 +5331,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3357,7 +3476,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Pa&ste and search for “$1flowers” -@@ -5325,7 +5325,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5342,7 +5342,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3366,7 +3485,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Pa&ste and Search for “$1flowers” -@@ -5335,7 +5335,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5352,7 +5352,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3375,7 +3494,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Press $1Tab to send commands to $2Google Talk -@@ -5344,16 +5344,16 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5361,16 +5361,16 @@ Keep your key file in a safe place. You will need it to create new versions of y Tab @@ -3395,12 +3514,12 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Clear input -@@ -5716,10 +5716,10 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5736,10 +5736,10 @@ Keep your key file in a safe place. You will need it to create new versions of y Why am I seeing this? -- You’re seeing this item based on your previous activity using Google services. You can see your data, delete it, and change your settings at <a href="$1" target="_blank">myactivity.google.com</a>. -+ You’re seeing this item based on your previous activity using Google services. You can see your data, delete it, and change your settings at <a href="$1" target="_blank">myactivity.9oo91e.qjz9zk</a>. +- You're seeing this item based on your previous activity using Google services. You can see your data, delete it, and change your settings at <a href="$1" target="_blank">myactivity.google.com</a>. ++ You're seeing this item based on your previous activity using Google services. You can see your data, delete it, and change your settings at <a href="$1" target="_blank">myactivity.9oo91e.qjz9zk</a>. - Learn about the data Google collects and why at <a href="$1" target="_blank">policies.google.com</a>. @@ -3408,7 +3527,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Close -@@ -5916,7 +5916,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5966,7 +5966,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Stay in Chrome @@ -3417,7 +3536,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -6005,7 +6005,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6070,7 +6070,7 @@ Keep your key file in a safe place. You will need it to create new versions of y This site has been blocked from seeing text and images copied to the clipboard @@ -3426,7 +3545,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking this site from seeing the clipboard -@@ -6105,7 +6105,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6173,7 +6173,7 @@ Keep your key file in a safe place. You will need it to create new versions of y The page has become unresponsive. You can wait for it to become responsive or close it. @@ -3435,7 +3554,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Close -@@ -6142,7 +6142,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6210,7 +6210,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Automatically sign in to websites using stored credentials. When the feature is disabled, you will be asked for confirmation every time before signing in to a website. @@ -3444,7 +3563,16 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -6497,7 +6497,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6374,7 +6374,7 @@ Keep your key file in a safe place. You will need it to create new versions of y + Update password for %1$sexample.com + + +- Passwords are saved in your Google Account (%1$suser@gmail.com) so you can use them on any device ++ Passwords are saved in your Google Account (%1$suser@9ma1l.qjz9zk) so you can use them on any device + + + +@@ -6558,7 +6558,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Clear browsing data @@ -3453,7 +3581,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Cleared Chrome data -@@ -6507,7 +6507,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6568,7 +6568,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3462,7 +3590,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Some passwords were not deleted -@@ -6716,7 +6716,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6792,7 +6792,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Uploading ($127%)... @@ -3471,7 +3599,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -7018,31 +7018,31 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -7100,31 +7100,31 @@ Keep your key file in a safe place. You will need it to create new versions of y $1html5rocks.com is sharing your screen. @@ -3508,7 +3636,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Hide -@@ -7070,7 +7070,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -7152,7 +7152,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3517,7 +3645,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -7078,10 +7078,10 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -7160,10 +7160,10 @@ Keep your key file in a safe place. You will need it to create new versions of y Sign in to Security Device @@ -3530,7 +3658,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Please sign in to $1Software Security Device. -@@ -8106,7 +8106,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8201,7 +8201,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Work @@ -3539,7 +3667,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -8115,10 +8115,10 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8210,10 +8210,10 @@ Keep your key file in a safe place. You will need it to create new versions of y Can't sign in @@ -3552,7 +3680,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Close -@@ -8143,13 +8143,13 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8238,13 +8238,13 @@ Keep your key file in a safe place. You will need it to create new versions of y This wasn't me. @@ -3568,7 +3696,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Cancel -@@ -8198,7 +8198,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8293,7 +8293,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Open $1Adobe Acrobat? @@ -3577,7 +3705,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources A website wants to open this application. -@@ -8209,8 +8209,8 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8304,8 +8304,8 @@ Keep your key file in a safe place. You will need it to create new versions of y Cancel @@ -3588,7 +3716,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -8235,7 +8235,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8330,7 +8330,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Date Modified @@ -3597,7 +3725,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -8374,7 +8374,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -8481,7 +8481,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3606,7 +3734,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources On - sync everything -@@ -8804,7 +8804,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -8923,7 +8923,7 @@ Please help our engineers fix this problem. Tell us what happened right before y Wrong index. @@ -3615,7 +3743,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -9221,7 +9221,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9340,7 +9340,7 @@ Please help our engineers fix this problem. Tell us what happened right before y This site has been blocked from accessing your location. @@ -3624,7 +3752,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking this site from accessing your location -@@ -9261,7 +9261,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9380,7 +9380,7 @@ Please help our engineers fix this problem. Tell us what happened right before y This site has been blocked from having full control of MIDI devices. @@ -3633,7 +3761,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking this site from having full control of MIDI devices -@@ -9350,7 +9350,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9469,7 +9469,7 @@ Please help our engineers fix this problem. Tell us what happened right before y View and manage saved passwords in your $1Google Account @@ -3642,7 +3770,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -9382,10 +9382,10 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9501,10 +9501,10 @@ Please help our engineers fix this problem. Tell us what happened right before y Undo @@ -3655,7 +3783,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -9496,19 +9496,19 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9615,19 +9615,19 @@ Please help our engineers fix this problem. Tell us what happened right before y An extension triggered full screen. @@ -3678,7 +3806,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources This page has disabled your mouse cursor. -@@ -9532,10 +9532,10 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9651,10 +9651,10 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3691,7 +3819,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Open $1search links -@@ -9572,7 +9572,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9691,7 +9691,7 @@ Please help our engineers fix this problem. Tell us what happened right before y This site has been blocked from using motion sensors. @@ -3700,7 +3828,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking sensor access -@@ -9599,7 +9599,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9718,7 +9718,7 @@ Please help our engineers fix this problem. Tell us what happened right before y Continue allowing sensor access @@ -3709,7 +3837,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -9818,7 +9818,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9937,7 +9937,7 @@ Please help our engineers fix this problem. Tell us what happened right before y $1Google Hangouts wants to share the contents of your screen. @@ -3718,7 +3846,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Share audio -@@ -9849,7 +9849,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9971,7 +9971,7 @@ Please help our engineers fix this problem. Tell us what happened right before y Share this tab @@ -3727,7 +3855,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Share audio -@@ -9883,7 +9883,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10005,7 +10005,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3736,7 +3864,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -9955,8 +9955,8 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10077,8 +10077,8 @@ Please help our engineers fix this problem. Tell us what happened right before y $1Google Photos - Serial port connected @@ -3747,7 +3875,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources $1Google Search - Crashed -@@ -10164,7 +10164,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10286,7 +10286,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3756,7 +3884,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources $1Nexus 5 detected -@@ -10205,7 +10205,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10327,7 +10327,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3765,7 +3893,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources "$1Chrome Extension Name" wants to pair -@@ -10251,7 +10251,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10373,7 +10373,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3774,7 +3902,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources "$1Chrome Extension Name" wants to connect -@@ -10291,7 +10291,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10413,7 +10413,7 @@ Please help our engineers fix this problem. Tell us what happened right before y No nearby devices found. @@ -3783,7 +3911,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Allow -@@ -10323,7 +10323,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10445,7 +10445,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3792,7 +3920,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources "$1Chrome Extension Name" wants to connect to a serial port -@@ -10348,7 +10348,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10470,7 +10470,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3801,7 +3929,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources "$1Chrome Extension Name" wants to connect to a HID device -@@ -10370,7 +10370,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10488,7 +10488,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3810,7 +3938,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources No matching font found. -@@ -10508,7 +10508,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10612,7 +10612,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3819,7 +3947,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources wants to see the make and model of your Security Key -@@ -10683,13 +10683,13 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10787,13 +10787,13 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3835,7 +3963,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Pick an option -@@ -10783,7 +10783,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10893,7 +10893,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3844,7 +3972,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Didn't get it? -@@ -10894,7 +10894,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11004,7 +11004,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3853,7 +3981,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Select an account to sign in -@@ -10910,7 +10910,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11020,7 +11020,7 @@ Please help our engineers fix this problem. Tell us what happened right before y Your security key can't be used with this site @@ -3862,7 +3990,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Your security key does not have enough space for any more accounts. -@@ -10919,13 +10919,13 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11029,13 +11029,13 @@ Please help our engineers fix this problem. Tell us what happened right before y Allow this site to see your security key? @@ -3878,7 +4006,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Allow -@@ -11119,7 +11119,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11232,7 +11232,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3890,7 +4018,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources diff --git a/chrome/app/google_chrome_strings.grd b/chrome/app/google_chrome_strings.grd --- a/chrome/app/google_chrome_strings.grd +++ b/chrome/app/google_chrome_strings.grd -@@ -335,7 +335,7 @@ chromium_strings.grd. --> +@@ -332,7 +332,7 @@ chromium_strings.grd. --> To send a number from here to your Android phone, sign in to Chrome on both devices. @@ -3899,16 +4027,16 @@ diff --git a/chrome/app/google_chrome_strings.grd b/chrome/app/google_chrome_str Make sure you are signed in to Chrome on your $1Pixel XL and then try sending again. -@@ -583,7 +583,7 @@ Google Chrome is unable to recover your settings. +@@ -580,7 +580,7 @@ Google Chrome is unable to recover your settings. - Also clear data from Chrome ($1www.google.com) + Also clear data from Chrome ($1www.9oo91e.qjz9zk) + - -@@ -693,10 +693,10 @@ Google Chrome is unable to recover your settings. +@@ -675,10 +675,10 @@ Google Chrome is unable to recover your settings. You're signed in to Chrome! @@ -3921,7 +4049,7 @@ diff --git a/chrome/app/google_chrome_strings.grd b/chrome/app/google_chrome_str Someone previously signed in to Chrome on this computer as $1user@example.com. Please create a new Chrome user to keep your information separate. -@@ -741,7 +741,7 @@ Google Chrome is unable to recover your settings. +@@ -728,7 +728,7 @@ Google Chrome is unable to recover your settings. @@ -3930,7 +4058,7 @@ diff --git a/chrome/app/google_chrome_strings.grd b/chrome/app/google_chrome_str -@@ -766,10 +766,10 @@ Google Chrome is unable to recover your settings. +@@ -753,10 +753,10 @@ Google Chrome is unable to recover your settings. $1Elisa is already signed in to this Chrome profile. To keep your browsing separate, Chrome can create your own profile for you. @@ -3941,8 +4069,8 @@ diff --git a/chrome/app/google_chrome_strings.grd b/chrome/app/google_chrome_str - This will create a new Chrome profile for $1foo@gmail.com + This will create a new Chrome profile for $1foo@9ma1l.qjz9zk - + diff --git a/chrome/app/resources/locale_settings.grd b/chrome/app/resources/locale_settings.grd --- a/chrome/app/resources/locale_settings.grd +++ b/chrome/app/resources/locale_settings.grd @@ -4001,7 +4129,7 @@ diff --git a/chrome/app/theme/PRESUBMIT.py b/chrome/app/theme/PRESUBMIT.py diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -317,14 +317,14 @@ const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = { +@@ -319,14 +319,14 @@ const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = { const FeatureEntry::Choice kTraceUploadURL[] = { {flags_ui::kGenericExperimentChoiceDisabled, "", ""}, {flag_descriptions::kTraceUploadUrlChoiceOther, switches::kTraceUploadURL, @@ -4020,7 +4148,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc const FeatureEntry::Choice kPassiveListenersChoices[] = { {flags_ui::kGenericExperimentChoiceDefault, "", ""}, -@@ -3616,7 +3616,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3601,7 +3601,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kSyncSandboxDescription, kOsAll, SINGLE_VALUE_TYPE_AND_VALUE( switches::kSyncServiceURL, @@ -4029,7 +4157,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc #if !defined(OS_ANDROID) {"load-media-router-component-extension", flag_descriptions::kLoadMediaRouterComponentExtensionName, -@@ -3862,7 +3862,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3857,7 +3857,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kSetMarketUrlForTestingName, flag_descriptions::kSetMarketUrlForTestingDescription, kOsAndroid, SINGLE_VALUE_TYPE_AND_VALUE(switches::kMarketUrlForTesting, @@ -4110,10 +4238,34 @@ diff --git a/chrome/browser/ash/app_mode/fake_cws.cc b/chrome/browser/ash/app_mo "protocol=\"2.0\" server=\"prod\">" "" "$APPS" +diff --git a/chrome/browser/ash/arc/auth/arc_background_auth_code_fetcher.cc b/chrome/browser/ash/arc/auth/arc_background_auth_code_fetcher.cc +--- a/chrome/browser/ash/arc/auth/arc_background_auth_code_fetcher.cc ++++ b/chrome/browser/ash/arc/auth/arc_background_auth_code_fetcher.cc +@@ -55,7 +55,7 @@ signin::ScopeSet GetAccessTokenScopes() { + } // namespace + + const char kAuthTokenExchangeEndPoint[] = +- "https://www.googleapis.com/oauth2/v4/ExchangeToken"; ++ "https://www.9oo91eapis.qjz9zk/oauth2/v4/ExchangeToken"; + + ArcBackgroundAuthCodeFetcher::ArcBackgroundAuthCodeFetcher( + scoped_refptr url_loader_factory, +diff --git a/chrome/browser/ash/arc/auth/arc_robot_auth_code_fetcher.cc b/chrome/browser/ash/arc/auth/arc_robot_auth_code_fetcher.cc +--- a/chrome/browser/ash/arc/auth/arc_robot_auth_code_fetcher.cc ++++ b/chrome/browser/ash/arc/auth/arc_robot_auth_code_fetcher.cc +@@ -24,7 +24,7 @@ namespace { + + // OAuth2 Client id of Android. + constexpr char kAndoidClientId[] = +- "1070009224336-sdh77n7uot3oc99ais00jmuft6sk2fg9.apps.googleusercontent.com"; ++ "1070009224336-sdh77n7uot3oc99ais00jmuft6sk2fg9.apps.9oo91eusercontent.qjz9zk"; + + policy::DeviceManagementService* GetDeviceManagementService() { + policy::BrowserPolicyConnectorChromeOS* const connector = diff --git a/chrome/browser/ash/assistant/assistant_util.cc b/chrome/browser/ash/assistant/assistant_util.cc --- a/chrome/browser/ash/assistant/assistant_util.cc +++ b/chrome/browser/ash/assistant/assistant_util.cc -@@ -119,8 +119,8 @@ bool IsEmailDomainSupported(const Profile* profile) { +@@ -118,8 +118,8 @@ bool IsEmailDomainSupported(const Profile* profile) { const std::string email = GetUser(profile)->GetAccountId().GetUserEmail(); DCHECK(!email.empty()); @@ -4124,6 +4276,53 @@ diff --git a/chrome/browser/ash/assistant/assistant_util.cc b/chrome/browser/ash gaia::IsGoogleInternalAccountEmail(email)); } +diff --git a/chrome/browser/ash/attestation/attestation_ca_client.cc b/chrome/browser/ash/attestation/attestation_ca_client.cc +--- a/chrome/browser/ash/attestation/attestation_ca_client.cc ++++ b/chrome/browser/ash/attestation/attestation_ca_client.cc +@@ -31,15 +31,15 @@ const char kAttestationServerTest[] = "test"; + + // Endpoints for the default Google Privacy CA operations. + const char kDefaultEnrollRequestURL[] = +- "https://chromeos-ca.gstatic.com/enroll"; ++ "https://chromeos-ca.95tat1c.qjz9zk/enroll"; + const char kDefaultCertificateRequestURL[] = +- "https://chromeos-ca.gstatic.com/sign"; ++ "https://chromeos-ca.95tat1c.qjz9zk/sign"; + + // Endpoints for the test Google Privacy CA operations. + const char kTestEnrollRequestURL[] = +- "https://asbestos-qa.corp.google.com/enroll"; ++ "https://asbestos-qa.corp.9oo91e.qjz9zk/enroll"; + const char kTestCertificateRequestURL[] = +- "https://asbestos-qa.corp.google.com/sign"; ++ "https://asbestos-qa.corp.9oo91e.qjz9zk/sign"; + + const char kMimeContentType[] = "application/octet-stream"; + +diff --git a/chrome/browser/ash/backdrop_wallpaper_handlers/backdrop_wallpaper_handlers.cc b/chrome/browser/ash/backdrop_wallpaper_handlers/backdrop_wallpaper_handlers.cc +--- a/chrome/browser/ash/backdrop_wallpaper_handlers/backdrop_wallpaper_handlers.cc ++++ b/chrome/browser/ash/backdrop_wallpaper_handlers/backdrop_wallpaper_handlers.cc +@@ -25,17 +25,17 @@ constexpr char kProtoMimeType[] = "application/x-protobuf"; + + // The url to download the proto of the complete list of wallpaper collections. + constexpr char kBackdropCollectionsUrl[] = +- "https://clients3.google.com/cast/chromecast/home/wallpaper/" ++ "https://clients3.9oo91e.qjz9zk/cast/chromecast/home/wallpaper/" + "collections?rt=b"; + + // The url to download the proto of a specific wallpaper collection. + constexpr char kBackdropImagesUrl[] = +- "https://clients3.google.com/cast/chromecast/home/wallpaper/" ++ "https://clients3.9oo91e.qjz9zk/cast/chromecast/home/wallpaper/" + "collection-images?rt=b"; + + // The url to download the proto of the info of a surprise me wallpaper. + constexpr char kBackdropSurpriseMeImageUrl[] = +- "https://clients3.google.com/cast/chromecast/home/wallpaper/" ++ "https://clients3.9oo91e.qjz9zk/cast/chromecast/home/wallpaper/" + "image?rt=b"; + + // The label used to return exclusive content or filter unwanted images. diff --git a/chrome/browser/ash/login/easy_unlock/easy_unlock_key_names.cc b/chrome/browser/ash/login/easy_unlock/easy_unlock_key_names.cc --- a/chrome/browser/ash/login/easy_unlock/easy_unlock_key_names.cc +++ b/chrome/browser/ash/login/easy_unlock/easy_unlock_key_names.cc @@ -4136,6 +4335,22 @@ diff --git a/chrome/browser/ash/login/easy_unlock/easy_unlock_key_names.cc b/chr const char kPermitTypeLicence[] = "licence"; } // namespace key_names +diff --git a/chrome/browser/ash/login/marketing_backend_connector.cc b/chrome/browser/ash/login/marketing_backend_connector.cc +--- a/chrome/browser/ash/login/marketing_backend_connector.cc ++++ b/chrome/browser/ash/login/marketing_backend_connector.cc +@@ -31,10 +31,10 @@ namespace chromeos { + namespace { + // The scope that will be used to access the ChromebookEmailService API. + const char kChromebookOAuth2Scope[] = +- "https://www.googleapis.com/auth/chromebook.email"; ++ "https://www.9oo91eapis.qjz9zk/auth/chromebook.email"; + + // API Endpoint +-const char kAccessPointsApiEndpoint[] = "https://accesspoints.googleapis.com/"; ++const char kAccessPointsApiEndpoint[] = "https://accesspoints.9oo91eapis.qjz9zk/"; + const char kChromebookEmailServicePath[] = "v2/chromebookEmailPreferences"; + constexpr size_t kResponseMaxBodySize = 4 * 1024 * 1024; // 4MiB + diff --git a/chrome/browser/ash/login/saml/password_sync_token_fetcher.cc b/chrome/browser/ash/login/saml/password_sync_token_fetcher.cc --- a/chrome/browser/ash/login/saml/password_sync_token_fetcher.cc +++ b/chrome/browser/ash/login/saml/password_sync_token_fetcher.cc @@ -4160,6 +4375,44 @@ diff --git a/chrome/browser/ash/login/screens/recommend_apps/recommend_apps_fetc constexpr int kResponseErrorNotEnoughApps = 5; +diff --git a/chrome/browser/ash/plugin_vm/plugin_vm_license_checker.cc b/chrome/browser/ash/plugin_vm/plugin_vm_license_checker.cc +--- a/chrome/browser/ash/plugin_vm/plugin_vm_license_checker.cc ++++ b/chrome/browser/ash/plugin_vm/plugin_vm_license_checker.cc +@@ -33,8 +33,8 @@ namespace plugin_vm { + namespace { + + constexpr char kValidationOAuth2Scope[] = +- "https://www.googleapis.com/auth/applicense.bytebot"; +-constexpr char kValidationEndpoint[] = "https://bytebot.googleapis.com/"; ++ "https://www.9oo91eapis.qjz9zk/auth/applicense.bytebot"; ++constexpr char kValidationEndpoint[] = "https://bytebot.9oo91eapis.qjz9zk/"; + constexpr char kValidationServicePath[] = + "v1/applications/chromePluginVm:getLicenseStatus"; + constexpr char kValidationServiceQuery[] = "?checkOnly=true&access_token="; +diff --git a/chrome/browser/ash/plugin_vm/plugin_vm_util.cc b/chrome/browser/ash/plugin_vm/plugin_vm_util.cc +--- a/chrome/browser/ash/plugin_vm/plugin_vm_util.cc ++++ b/chrome/browser/ash/plugin_vm/plugin_vm_util.cc +@@ -127,7 +127,7 @@ void RemoveDriveDownloadDirectoryIfExists() { + base::Optional GetIdFromDriveUrl(const GURL& url) { + const std::string& spec = url.spec(); + +- const std::string kOpenUrlBase = "https://drive.google.com/open?"; ++ const std::string kOpenUrlBase = "https://drive.9oo91e.qjz9zk/open?"; + if (base::StartsWith(spec, kOpenUrlBase, + base::CompareCase::INSENSITIVE_ASCII)) { + // e.g. https://drive.google.com/open?id=[ID] +@@ -139,9 +139,9 @@ base::Optional GetIdFromDriveUrl(const GURL& url) { + + // These will match some invalid URLs, which is fine. + const std::string kViewUrlPatternWithDomain = +- "https://drive.google.com/a/*/file/d/*/view*"; ++ "https://drive.9oo91e.qjz9zk/a/*/file/d/*/view*"; + const std::string kViewUrlPatternWithoutDomain = +- "https://drive.google.com/file/d/*/view*"; ++ "https://drive.9oo91e.qjz9zk/file/d/*/view*"; + if (base::MatchPattern(spec, kViewUrlPatternWithDomain) || + base::MatchPattern(spec, kViewUrlPatternWithoutDomain)) { + // e.g. https://drive.google.com/a/example.org/file/d/[ID]/view?usp=sharing diff --git a/chrome/browser/autofill/autofill_gstatic_reader.cc b/chrome/browser/autofill/autofill_gstatic_reader.cc --- a/chrome/browser/autofill/autofill_gstatic_reader.cc +++ b/chrome/browser/autofill/autofill_gstatic_reader.cc @@ -4187,10 +4440,22 @@ diff --git a/chrome/browser/browser_switcher/browser_switcher_service.cc b/chrom "/what-is-enterprise-mode" trigger: "1 minute after browser startup, and then refreshes every 30 " +diff --git a/chrome/browser/buildflags.gni b/chrome/browser/buildflags.gni +--- a/chrome/browser/buildflags.gni ++++ b/chrome/browser/buildflags.gni +@@ -15,7 +15,7 @@ declare_args() { + # TODO(crbug.com/1054060) + enable_chromium_updater = false + +- # TODO(stahon@microsoft.com) Remove this when app_session_service is enabled ++ # TODO(stahon@m1cr050ft.qjz9zk) Remove this when app_session_service is enabled + # across the board. Until then, this buildflag allows some platforms to use + # app_session_service and some not. + enable_app_session_service = diff --git a/chrome/browser/cart/cart_service.cc b/chrome/browser/cart/cart_service.cc --- a/chrome/browser/cart/cart_service.cc +++ b/chrome/browser/cart/cart_service.cc -@@ -206,23 +206,23 @@ void CartService::AddCartsWithFakeData() { +@@ -255,7 +255,7 @@ void CartService::AddCartsWithFakeData() { // Polulate and add some carts with fake data. double time_now = base::Time::Now().ToDoubleT(); cart_db::ChromeCartContentProto dummy_proto1; @@ -4199,7 +4464,9 @@ diff --git a/chrome/browser/cart/cart_service.cc b/chrome/browser/cart/cart_serv dummy_proto1.set_key(std::string(kFakeDataPrefix) + eTLDPlusOne(dummy_url1)); dummy_proto1.set_merchant("Cart Foo"); dummy_proto1.set_merchant_cart_url(dummy_url1.spec()); - dummy_proto1.set_timestamp(time_now + 6); +@@ -264,17 +264,17 @@ void CartService::AddCartsWithFakeData() { + l10n_util::GetStringFUTF8(IDS_NTP_MODULES_CART_DISCOUNT_CHIP_AMOUNT, + u"15%")); dummy_proto1.add_product_image_urls( - "https://encrypted-tbn3.gstatic.com/" + "https://encrypted-tbn3.95tat1c.qjz9zk/" @@ -4218,6 +4485,30 @@ diff --git a/chrome/browser/cart/cart_service.cc b/chrome/browser/cart/cart_serv "shopping?q=tbn:ANd9GcT2ew6Aydzu5VzRV756ORGha6fyjKp_On7iTlr_" "tL9vODnlNtFo_xsxj6_lCop-3J0Vk44lHfk-AxoBJDABVHPVFN-" "EiWLcZvzkdpHFqcurm7fBVmWtYKo2rg&usqp=CAY"); +diff --git a/chrome/browser/cart/resources/cart_domain_cart_url_mapping.json b/chrome/browser/cart/resources/cart_domain_cart_url_mapping.json +--- a/chrome/browser/cart/resources/cart_domain_cart_url_mapping.json ++++ b/chrome/browser/cart/resources/cart_domain_cart_url_mapping.json +@@ -61,7 +61,7 @@ + "lululemon.com": "https://shop.lululemon.com/shop/mybag", + "lulus.com": "https://www.lulus.com/checkout/bag", + "macys.com": "https://www.macys.com/my-bag", +-"microsoft.com": "https://www.microsoft.com/en-us/store/cart", ++"m1cr050ft.qjz9zk": "https://www.m1cr050ft.qjz9zk/en-us/store/cart", + "midwayusa.com": "https://www.midwayusa.com/cart", + "neimanmarcus.com": "https://www.neimanmarcus.com/checkout/cart.jsp", + "newegg.com": "https://secure.newegg.com/shop/cart", +diff --git a/chrome/browser/cart/resources/cart_domain_name_mapping.json b/chrome/browser/cart/resources/cart_domain_name_mapping.json +--- a/chrome/browser/cart/resources/cart_domain_name_mapping.json ++++ b/chrome/browser/cart/resources/cart_domain_name_mapping.json +@@ -61,7 +61,7 @@ + "lululemon.com": "lululemon", + "lulus.com": "Lulus", + "macys.com": "Macy's", +-"microsoft.com": "Microsoft", ++"m1cr050ft.qjz9zk": "Microsoft", + "midwayusa.com": "MidwayUSA", + "neimanmarcus.com": "Neiman Marcus", + "newegg.com": "Newegg", diff --git a/chrome/browser/chrome_browser_application_mac.mm b/chrome/browser/chrome_browser_application_mac.mm --- a/chrome/browser/chrome_browser_application_mac.mm +++ b/chrome/browser/chrome_browser_application_mac.mm @@ -4271,77 +4562,6 @@ diff --git a/chrome/browser/chromeos/android_sms/android_sms_urls.cc b/chrome/br break; } return stream; -diff --git a/chrome/browser/chromeos/arc/auth/arc_background_auth_code_fetcher.cc b/chrome/browser/chromeos/arc/auth/arc_background_auth_code_fetcher.cc ---- a/chrome/browser/chromeos/arc/auth/arc_background_auth_code_fetcher.cc -+++ b/chrome/browser/chromeos/arc/auth/arc_background_auth_code_fetcher.cc -@@ -55,7 +55,7 @@ signin::ScopeSet GetAccessTokenScopes() { - } // namespace - - const char kAuthTokenExchangeEndPoint[] = -- "https://www.googleapis.com/oauth2/v4/ExchangeToken"; -+ "https://www.9oo91eapis.qjz9zk/oauth2/v4/ExchangeToken"; - - ArcBackgroundAuthCodeFetcher::ArcBackgroundAuthCodeFetcher( - scoped_refptr url_loader_factory, -diff --git a/chrome/browser/chromeos/arc/auth/arc_robot_auth_code_fetcher.cc b/chrome/browser/chromeos/arc/auth/arc_robot_auth_code_fetcher.cc ---- a/chrome/browser/chromeos/arc/auth/arc_robot_auth_code_fetcher.cc -+++ b/chrome/browser/chromeos/arc/auth/arc_robot_auth_code_fetcher.cc -@@ -24,7 +24,7 @@ namespace { - - // OAuth2 Client id of Android. - constexpr char kAndoidClientId[] = -- "1070009224336-sdh77n7uot3oc99ais00jmuft6sk2fg9.apps.googleusercontent.com"; -+ "1070009224336-sdh77n7uot3oc99ais00jmuft6sk2fg9.apps.9oo91eusercontent.qjz9zk"; - - policy::DeviceManagementService* GetDeviceManagementService() { - policy::BrowserPolicyConnectorChromeOS* const connector = -diff --git a/chrome/browser/chromeos/attestation/attestation_ca_client.cc b/chrome/browser/chromeos/attestation/attestation_ca_client.cc ---- a/chrome/browser/chromeos/attestation/attestation_ca_client.cc -+++ b/chrome/browser/chromeos/attestation/attestation_ca_client.cc -@@ -31,15 +31,15 @@ const char kAttestationServerTest[] = "test"; - - // Endpoints for the default Google Privacy CA operations. - const char kDefaultEnrollRequestURL[] = -- "https://chromeos-ca.gstatic.com/enroll"; -+ "https://chromeos-ca.95tat1c.qjz9zk/enroll"; - const char kDefaultCertificateRequestURL[] = -- "https://chromeos-ca.gstatic.com/sign"; -+ "https://chromeos-ca.95tat1c.qjz9zk/sign"; - - // Endpoints for the test Google Privacy CA operations. - const char kTestEnrollRequestURL[] = -- "https://asbestos-qa.corp.google.com/enroll"; -+ "https://asbestos-qa.corp.9oo91e.qjz9zk/enroll"; - const char kTestCertificateRequestURL[] = -- "https://asbestos-qa.corp.google.com/sign"; -+ "https://asbestos-qa.corp.9oo91e.qjz9zk/sign"; - - const char kMimeContentType[] = "application/octet-stream"; - -diff --git a/chrome/browser/chromeos/backdrop_wallpaper_handlers/backdrop_wallpaper_handlers.cc b/chrome/browser/chromeos/backdrop_wallpaper_handlers/backdrop_wallpaper_handlers.cc ---- a/chrome/browser/chromeos/backdrop_wallpaper_handlers/backdrop_wallpaper_handlers.cc -+++ b/chrome/browser/chromeos/backdrop_wallpaper_handlers/backdrop_wallpaper_handlers.cc -@@ -25,17 +25,17 @@ constexpr char kProtoMimeType[] = "application/x-protobuf"; - - // The url to download the proto of the complete list of wallpaper collections. - constexpr char kBackdropCollectionsUrl[] = -- "https://clients3.google.com/cast/chromecast/home/wallpaper/" -+ "https://clients3.9oo91e.qjz9zk/cast/chromecast/home/wallpaper/" - "collections?rt=b"; - - // The url to download the proto of a specific wallpaper collection. - constexpr char kBackdropImagesUrl[] = -- "https://clients3.google.com/cast/chromecast/home/wallpaper/" -+ "https://clients3.9oo91e.qjz9zk/cast/chromecast/home/wallpaper/" - "collection-images?rt=b"; - - // The url to download the proto of the info of a surprise me wallpaper. - constexpr char kBackdropSurpriseMeImageUrl[] = -- "https://clients3.google.com/cast/chromecast/home/wallpaper/" -+ "https://clients3.9oo91e.qjz9zk/cast/chromecast/home/wallpaper/" - "image?rt=b"; - - // The label used to return exclusive content or filter unwanted images. diff --git a/chrome/browser/chromeos/child_accounts/child_user_service.cc b/chrome/browser/chromeos/child_accounts/child_user_service.cc --- a/chrome/browser/chromeos/child_accounts/child_user_service.cc +++ b/chrome/browser/chromeos/child_accounts/child_user_service.cc @@ -4393,15 +4613,15 @@ diff --git a/chrome/browser/chromeos/customization/customization_document.cc b/c diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc b/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc --- a/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc +++ b/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc -@@ -863,7 +863,7 @@ void FileManagerPrivateInternalGetDownloadUrlFunction::OnGotDownloadUrl( +@@ -858,7 +858,7 @@ void FileManagerPrivateInternalGetDownloadUrlFunction::OnGotDownloadUrl( const CoreAccountId& account_id = - identity_manager->GetPrimaryAccountId(signin::ConsentLevel::kNotRequired); + identity_manager->GetPrimaryAccountId(signin::ConsentLevel::kSignin); std::vector scopes; - scopes.emplace_back("https://www.googleapis.com/auth/drive.readonly"); + scopes.emplace_back("https://www.9oo91eapis.qjz9zk/auth/drive.readonly"); scoped_refptr url_loader_factory = - content::BrowserContext::GetDefaultStoragePartition( + content::BrowserContext::GetDefaultStoragePartition(browser_context()) diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc b/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc --- a/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc +++ b/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc @@ -4473,7 +4693,7 @@ diff --git a/chrome/browser/chromeos/first_run/drive_first_run_controller.cc b/c diff --git a/chrome/browser/chromeos/hats/hats_dialog.cc b/chrome/browser/chromeos/hats/hats_dialog.cc --- a/chrome/browser/chromeos/hats/hats_dialog.cc +++ b/chrome/browser/chromeos/hats/hats_dialog.cc -@@ -38,7 +38,7 @@ const int kDefaultWidth = 340; +@@ -39,7 +39,7 @@ const int kDefaultWidth = 340; const int kDefaultHeight = 260; constexpr char kCrOSHaTSURL[] = @@ -4508,22 +4728,6 @@ diff --git a/chrome/browser/chromeos/input_method/assistive_suggester.cc b/chrom }; const char* kTestUrls[] = { -diff --git a/chrome/browser/chromeos/login/marketing_backend_connector.cc b/chrome/browser/chromeos/login/marketing_backend_connector.cc ---- a/chrome/browser/chromeos/login/marketing_backend_connector.cc -+++ b/chrome/browser/chromeos/login/marketing_backend_connector.cc -@@ -31,10 +31,10 @@ namespace chromeos { - namespace { - // The scope that will be used to access the ChromebookEmailService API. - const char kChromebookOAuth2Scope[] = -- "https://www.googleapis.com/auth/chromebook.email"; -+ "https://www.9oo91eapis.qjz9zk/auth/chromebook.email"; - - // API Endpoint --const char kAccessPointsApiEndpoint[] = "https://accesspoints.googleapis.com/"; -+const char kAccessPointsApiEndpoint[] = "https://accesspoints.9oo91eapis.qjz9zk/"; - const char kChromebookEmailServicePath[] = "v2/chromebookEmailPreferences"; - constexpr size_t kResponseMaxBodySize = 4 * 1024 * 1024; // 4MiB - diff --git a/chrome/browser/chromeos/net/network_diagnostics/dns_latency_routine.cc b/chrome/browser/chromeos/net/network_diagnostics/dns_latency_routine.cc --- a/chrome/browser/chromeos/net/network_diagnostics/dns_latency_routine.cc +++ b/chrome/browser/chromeos/net/network_diagnostics/dns_latency_routine.cc @@ -4624,44 +4828,6 @@ diff --git a/chrome/browser/chromeos/net/network_diagnostics/video_conferencing_ const base::TimeDelta kTimeoutAfterHostResolution = base::TimeDelta::FromSeconds(10); -diff --git a/chrome/browser/chromeos/plugin_vm/plugin_vm_license_checker.cc b/chrome/browser/chromeos/plugin_vm/plugin_vm_license_checker.cc ---- a/chrome/browser/chromeos/plugin_vm/plugin_vm_license_checker.cc -+++ b/chrome/browser/chromeos/plugin_vm/plugin_vm_license_checker.cc -@@ -33,8 +33,8 @@ namespace plugin_vm { - namespace { - - constexpr char kValidationOAuth2Scope[] = -- "https://www.googleapis.com/auth/applicense.bytebot"; --constexpr char kValidationEndpoint[] = "https://bytebot.googleapis.com/"; -+ "https://www.9oo91eapis.qjz9zk/auth/applicense.bytebot"; -+constexpr char kValidationEndpoint[] = "https://bytebot.9oo91eapis.qjz9zk/"; - constexpr char kValidationServicePath[] = - "v1/applications/chromePluginVm:getLicenseStatus"; - constexpr char kValidationServiceQuery[] = "?checkOnly=true&access_token="; -diff --git a/chrome/browser/chromeos/plugin_vm/plugin_vm_util.cc b/chrome/browser/chromeos/plugin_vm/plugin_vm_util.cc ---- a/chrome/browser/chromeos/plugin_vm/plugin_vm_util.cc -+++ b/chrome/browser/chromeos/plugin_vm/plugin_vm_util.cc -@@ -127,7 +127,7 @@ void RemoveDriveDownloadDirectoryIfExists() { - base::Optional GetIdFromDriveUrl(const GURL& url) { - const std::string& spec = url.spec(); - -- const std::string kOpenUrlBase = "https://drive.google.com/open?"; -+ const std::string kOpenUrlBase = "https://drive.9oo91e.qjz9zk/open?"; - if (base::StartsWith(spec, kOpenUrlBase, - base::CompareCase::INSENSITIVE_ASCII)) { - // e.g. https://drive.google.com/open?id=[ID] -@@ -139,9 +139,9 @@ base::Optional GetIdFromDriveUrl(const GURL& url) { - - // These will match some invalid URLs, which is fine. - const std::string kViewUrlPatternWithDomain = -- "https://drive.google.com/a/*/file/d/*/view*"; -+ "https://drive.9oo91e.qjz9zk/a/*/file/d/*/view*"; - const std::string kViewUrlPatternWithoutDomain = -- "https://drive.google.com/file/d/*/view*"; -+ "https://drive.9oo91e.qjz9zk/file/d/*/view*"; - if (base::MatchPattern(spec, kViewUrlPatternWithDomain) || - base::MatchPattern(spec, kViewUrlPatternWithoutDomain)) { - // e.g. https://drive.google.com/a/example.org/file/d/[ID]/view?usp=sharing diff --git a/chrome/browser/chromeos/policy/heartbeat_scheduler.cc b/chrome/browser/chromeos/policy/heartbeat_scheduler.cc --- a/chrome/browser/chromeos/policy/heartbeat_scheduler.cc +++ b/chrome/browser/chromeos/policy/heartbeat_scheduler.cc @@ -4689,7 +4855,7 @@ diff --git a/chrome/browser/chromeos/policy/powerwash_requirements_checker.cc b/ - "https://support.google.com/chromebook?p=factory_reset"; + "https://support.9oo91e.qjz9zk/chromebook?p=factory_reset"; - base::string16 GetEnterpriseManager() { + std::u16string GetEnterpriseManager() { policy::BrowserPolicyConnectorChromeOS* connector = diff --git a/chrome/browser/chromeos/policy/remote_commands/crd_host_delegate.cc b/chrome/browser/chromeos/policy/remote_commands/crd_host_delegate.cc --- a/chrome/browser/chromeos/policy/remote_commands/crd_host_delegate.cc @@ -4735,7 +4901,7 @@ diff --git a/chrome/browser/chromeos/u2f_notification.cc b/chrome/browser/chrome diff --git a/chrome/browser/custom_handlers/protocol_handler_registry.cc b/chrome/browser/custom_handlers/protocol_handler_registry.cc --- a/chrome/browser/custom_handlers/protocol_handler_registry.cc +++ b/chrome/browser/custom_handlers/protocol_handler_registry.cc -@@ -222,11 +222,11 @@ void ProtocolHandlerRegistry::InstallDefaultsForChromeOS() { +@@ -291,11 +291,11 @@ void ProtocolHandlerRegistry::InstallDefaultsForChromeOS() { AddPredefinedHandler( ProtocolHandler::CreateProtocolHandler( "mailto", @@ -4752,8 +4918,8 @@ diff --git a/chrome/browser/custom_handlers/protocol_handler_registry.cc b/chrom diff --git a/chrome/browser/data_reduction_proxy/data_reduction_proxy_chrome_settings.cc b/chrome/browser/data_reduction_proxy/data_reduction_proxy_chrome_settings.cc --- a/chrome/browser/data_reduction_proxy/data_reduction_proxy_chrome_settings.cc +++ b/chrome/browser/data_reduction_proxy/data_reduction_proxy_chrome_settings.cc -@@ -61,7 +61,7 @@ - namespace { +@@ -68,7 +68,7 @@ void DeletePreviewsOptOutDatabaseOnDBThread( + } // Assume that any proxy host ending with this suffix is a Data Reduction Proxy. -const char kDataReductionProxyDefaultHostSuffix[] = ".googlezip.net"; @@ -4761,7 +4927,7 @@ diff --git a/chrome/browser/data_reduction_proxy/data_reduction_proxy_chrome_set // Searches |proxy_list| for any Data Reduction Proxies, even if they don't // match a currently configured Data Reduction Proxy. -@@ -178,7 +178,7 @@ DataReductionProxyChromeSettings::MigrateDataReductionProxyOffProxyPrefsHelper( +@@ -185,7 +185,7 @@ DataReductionProxyChromeSettings::MigrateDataReductionProxyOffProxyPrefsHelper( // could be implied, so searching for ".googlezip.net:" in the PAC script // indicates whether there's a proxy in that PAC script with a host of the // form "*.googlezip.net". @@ -4798,7 +4964,7 @@ diff --git a/chrome/browser/download/mixed_content_download_blocking.cc b/chrome diff --git a/chrome/browser/enterprise/connectors/connectors_service.cc b/chrome/browser/enterprise/connectors/connectors_service.cc --- a/chrome/browser/enterprise/connectors/connectors_service.cc +++ b/chrome/browser/enterprise/connectors/connectors_service.cc -@@ -44,7 +44,7 @@ const char kServiceProviderConfig[] = R"({ +@@ -138,7 +138,7 @@ const char kServiceProviderConfig[] = R"({ "version": { "1": { "analysis": { @@ -4807,7 +4973,7 @@ diff --git a/chrome/browser/enterprise/connectors/connectors_service.cc b/chrome "supported_tags": [ { "name": "malware", -@@ -97,7 +97,7 @@ const char kServiceProviderConfig[] = R"({ +@@ -191,7 +191,7 @@ const char kServiceProviderConfig[] = R"({ ] }, "reporting": { @@ -4819,7 +4985,7 @@ diff --git a/chrome/browser/enterprise/connectors/connectors_service.cc b/chrome diff --git a/chrome/browser/enterprise/connectors/file_system/signin_dialog_delegate.cc b/chrome/browser/enterprise/connectors/file_system/signin_dialog_delegate.cc --- a/chrome/browser/enterprise/connectors/file_system/signin_dialog_delegate.cc +++ b/chrome/browser/enterprise/connectors/file_system/signin_dialog_delegate.cc -@@ -38,7 +38,7 @@ namespace { +@@ -39,7 +39,7 @@ namespace { // 4/ This URI is used by other native apps for the same purpose. // 5/ It is controlled by Google. bool IsOAuth2RedirectURI(const GURL& url) { @@ -4842,13 +5008,13 @@ diff --git a/chrome/browser/enterprise/reporting/extension_request/extension_req // ExtensionRequestNotification::NotifyType. @@ -68,7 +68,7 @@ void ExtensionRequestNotification::Show(NotificationCloseCallback callback) { kNotificationTitles[notify_type_], extension_ids_.size()); - const base::string16 body = l10n_util::GetPluralStringFUTF16( + const std::u16string body = l10n_util::GetPluralStringFUTF16( kNotificationBodies[notify_type_], extension_ids_.size()); - GURL original_url("https://chrome.google.com/webstore"); + GURL original_url("https://chrome.9oo91e.qjz9zk/webstore"); - gfx::Image icon(gfx::CreateVectorIcon( - vector_icons::kBusinessIcon, message_center::kSmallImageSize, - ui::NativeTheme::GetInstanceForWeb()->GetSystemColor( + // TODO(crbug.com/1187930): Eliminate the use of `gfx::kChromeIconGrey` and + // instead retrieve the icon color via a ui::ColorProvider once message center + // has been updated to use the ColorProvider infrastructure. diff --git a/chrome/browser/error_reporting/chrome_js_error_report_processor_nonchromeos.cc b/chrome/browser/error_reporting/chrome_js_error_report_processor_nonchromeos.cc --- a/chrome/browser/error_reporting/chrome_js_error_report_processor_nonchromeos.cc +++ b/chrome/browser/error_reporting/chrome_js_error_report_processor_nonchromeos.cc @@ -4919,7 +5085,7 @@ diff --git a/chrome/browser/extensions/chrome_extension_browser_constants.cc b/c diff --git a/chrome/browser/extensions/external_pref_loader.cc b/chrome/browser/extensions/external_pref_loader.cc --- a/chrome/browser/extensions/external_pref_loader.cc +++ b/chrome/browser/extensions/external_pref_loader.cc -@@ -331,7 +331,7 @@ void ExternalPrefLoader::LoadOnFileThread() { +@@ -333,7 +333,7 @@ void ExternalPrefLoader::LoadOnFileThread() { if (!prefs->empty()) LOG(WARNING) << "You are using an old-style extension deployment method " "(external_extensions.json), which will soon be " @@ -4931,7 +5097,7 @@ diff --git a/chrome/browser/extensions/external_pref_loader.cc b/chrome/browser/ diff --git a/chrome/browser/extensions/install_signer.cc b/chrome/browser/extensions/install_signer.cc --- a/chrome/browser/extensions/install_signer.cc +++ b/chrome/browser/extensions/install_signer.cc -@@ -65,7 +65,7 @@ const int kSignatureFormatVersion = 2; +@@ -67,7 +67,7 @@ const int kSignatureFormatVersion = 2; const size_t kSaltBytes = 32; const char kBackendUrl[] = @@ -4991,7 +5157,7 @@ diff --git a/chrome/browser/feedback/feedback_uploader_chrome.cc b/chrome/browse diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -544,7 +544,7 @@ const char kDetectTargetEmbeddingLookalikesName[] = +@@ -556,7 +556,7 @@ const char kDetectTargetEmbeddingLookalikesName[] = "Detect target embedding domains as lookalikes."; const char kDetectTargetEmbeddingLookalikesDescription[] = "Shows a lookalike interstitial when navigating to target embedding domains" @@ -5000,7 +5166,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti const char kDeviceDiscoveryNotificationsName[] = "Device Discovery Notifications"; -@@ -2136,7 +2136,7 @@ const char kIntensiveWakeUpThrottlingName[] = +@@ -2157,7 +2157,7 @@ const char kIntensiveWakeUpThrottlingName[] = const char kIntensiveWakeUpThrottlingDescription[] = "When enabled, wake ups from DOM Timers are limited to 1 per minute in a " "page that has been hidden for 5 minutes. For additional details, see " @@ -5012,7 +5178,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/importer/edge_importer_browsertest_win.cc b/chrome/browser/importer/edge_importer_browsertest_win.cc --- a/chrome/browser/importer/edge_importer_browsertest_win.cc +++ b/chrome/browser/importer/edge_importer_browsertest_win.cc -@@ -169,7 +169,7 @@ IN_PROC_BROWSER_TEST_F(EdgeImporterBrowserTest, EdgeImporter) { +@@ -171,7 +171,7 @@ IN_PROC_BROWSER_TEST_F(EdgeImporterBrowserTest, EdgeImporter) { L"SubLink", "http://www.links-sublink.com/"}, {true, 1, {"Links"}, L"TheLink", "http://www.links-thelink.com/"}, @@ -5021,7 +5187,7 @@ diff --git a/chrome/browser/importer/edge_importer_browsertest_win.cc b/chrome/b {false, 0, {}, L"TheLink", "http://www.links-thelink.com/"}, {false, 1, {"SubFolder"}, L"Title", "http://www.link.com/"}, {false, 0, {}, L"WithPortAndQuery", "http://host:8080/cgi?q=query"}, -@@ -185,7 +185,7 @@ IN_PROC_BROWSER_TEST_F(EdgeImporterBrowserTest, EdgeImporter) { +@@ -187,7 +187,7 @@ IN_PROC_BROWSER_TEST_F(EdgeImporterBrowserTest, EdgeImporter) { L"http://www.links-sublink.com"}, {L"http://www.links-thelink.com/favicon.ico", L"http://www.links-thelink.com"}, @@ -5030,7 +5196,7 @@ diff --git a/chrome/browser/importer/edge_importer_browsertest_win.cc b/chrome/b {L"http://www.links-thelink.com/favicon.ico", L"http://www.links-thelink.com"}, {L"http://www.link.com/favicon.ico", L"http://www.link.com"}, -@@ -238,11 +238,11 @@ IN_PROC_BROWSER_TEST_F(EdgeImporterBrowserTest, EdgeImporterLegacyFallback) { +@@ -240,11 +240,11 @@ IN_PROC_BROWSER_TEST_F(EdgeImporterBrowserTest, EdgeImporterLegacyFallback) { return; const BookmarkInfo kEdgeBookmarks[] = { @@ -5070,19 +5236,19 @@ diff --git a/chrome/browser/importer/ie_importer_browsertest_win.cc b/chrome/bro + {false, 0, {}, L"c", "http://www.9oo91e.qjz9zk/3"}, }; - const base::char16 kIEIdentifyUrl[] = -@@ -111,8 +111,8 @@ struct FaviconGroup { + const char16_t kIEIdentifyUrl[] = +@@ -109,8 +109,8 @@ struct FaviconGroup { }; const FaviconGroup kIEFaviconGroup[2] = { -- {L"http://www.google.com/favicon.ico", -- {L"http://www.google.com/", -+ {L"http://www.9oo91e.qjz9zk/favicon.ico", -+ {L"http://www.9oo91e.qjz9zk/", - L"http://www.subfolder.com/"}}, - {L"http://example.com/favicon.ico", - {L"http://host:8080/cgi?q=query", -@@ -406,13 +406,13 @@ IN_PROC_BROWSER_TEST_F(IEImporterBrowserTest, IEImporter) { +- {u"http://www.google.com/favicon.ico", +- {u"http://www.google.com/", u"http://www.subfolder.com/"}}, ++ {u"http://www.9oo91e.qjz9zk/favicon.ico", ++ {u"http://www.9oo91e.qjz9zk/", u"http://www.subfolder.com/"}}, + {u"http://example.com/favicon.ico", + {u"http://host:8080/cgi?q=query", u"http://chinese-title-favorite/"}}, + }; +@@ -402,13 +402,13 @@ IN_PROC_BROWSER_TEST_F(IEImporterBrowserTest, IEImporter) { NULL); CreateDirectory(path.AppendASCII("\x0061").value().c_str(), NULL); ASSERT_TRUE(CreateUrlFileWithFavicon(path.AppendASCII("Google Home Page.url"), @@ -5099,7 +5265,7 @@ diff --git a/chrome/browser/importer/ie_importer_browsertest_win.cc b/chrome/bro ASSERT_TRUE(CreateUrlFile(path.AppendASCII("TheLink.url"), L"http://www.links-thelink.com/")); ASSERT_TRUE(CreateUrlFileWithFavicon(path.AppendASCII("WithPortAndQuery.url"), -@@ -428,7 +428,7 @@ IN_PROC_BROWSER_TEST_F(IEImporterBrowserTest, IEImporter) { +@@ -424,7 +424,7 @@ IN_PROC_BROWSER_TEST_F(IEImporterBrowserTest, IEImporter) { links_path.AppendASCII("SubFolderOfLinks").AppendASCII("SubLink.url"), L"http://www.links-sublink.com/")); ASSERT_TRUE(CreateUrlFile(path.AppendASCII("IEDefaultLink.url"), @@ -5108,7 +5274,7 @@ diff --git a/chrome/browser/importer/ie_importer_browsertest_win.cc b/chrome/bro base::WriteFile(path.AppendASCII("InvalidUrlFile.url"), "x", 1); base::WriteFile(path.AppendASCII("PlainTextFile.txt"), "x", 1); -@@ -487,13 +487,13 @@ IN_PROC_BROWSER_TEST_F(IEImporterBrowserTest, +@@ -481,13 +481,13 @@ IN_PROC_BROWSER_TEST_F(IEImporterBrowserTest, CreateDirectory(path.value().c_str(), NULL); CreateDirectory(path.AppendASCII("b").value().c_str(), NULL); ASSERT_TRUE(CreateUrlFile(path.AppendASCII("a.url"), @@ -5129,7 +5295,7 @@ diff --git a/chrome/browser/importer/ie_importer_browsertest_win.cc b/chrome/bro diff --git a/chrome/browser/local_discovery/service_discovery_client_mac.mm b/chrome/browser/local_discovery/service_discovery_client_mac.mm --- a/chrome/browser/local_discovery/service_discovery_client_mac.mm +++ b/chrome/browser/local_discovery/service_discovery_client_mac.mm -@@ -399,7 +399,7 @@ void ParseNetService(NSNetService* service, ServiceDescription& description) { +@@ -401,7 +401,7 @@ void ParseNetService(NSNetService* service, ServiceDescription& description) { // weak delegate during deallocation, so a subsequently-deallocated delegate // attempts to clear the pointer to itself in an NSNetServiceBrowser that's // already gone. @@ -5138,7 +5304,7 @@ diff --git a/chrome/browser/local_discovery/service_discovery_client_mac.mm b/ch [_browser setDelegate:nil]; // Ensure the delegate clears all references to itself, which it had added as -@@ -513,7 +513,7 @@ void ParseNetService(NSNetService* service, ServiceDescription& description) { +@@ -515,7 +515,7 @@ void ParseNetService(NSNetService* service, ServiceDescription& description) { // delegate during deallocation, so a subsequently-deallocated delegate // attempts to clear the pointer to itself in an NSNetService that's already // gone. @@ -5164,7 +5330,7 @@ diff --git a/chrome/browser/media/router/providers/cast/cast_media_route_provide diff --git a/chrome/browser/media/router/providers/dial/dial_media_route_provider.cc b/chrome/browser/media/router/providers/dial/dial_media_route_provider.cc --- a/chrome/browser/media/router/providers/dial/dial_media_route_provider.cc +++ b/chrome/browser/media/router/providers/dial/dial_media_route_provider.cc -@@ -686,12 +686,12 @@ std::vector DialMediaRouteProvider::GetOrigins( +@@ -688,12 +688,12 @@ std::vector DialMediaRouteProvider::GetOrigins( base::flat_map>> origin_allowlist( {{"YouTube", @@ -5222,7 +5388,7 @@ diff --git a/chrome/browser/media/webrtc/webrtc_log_uploader.cc b/chrome/browser diff --git a/chrome/browser/nacl_host/nacl_infobar_delegate.cc b/chrome/browser/nacl_host/nacl_infobar_delegate.cc --- a/chrome/browser/nacl_host/nacl_infobar_delegate.cc +++ b/chrome/browser/nacl_host/nacl_infobar_delegate.cc -@@ -32,7 +32,7 @@ base::string16 NaClInfoBarDelegate::GetLinkText() const { +@@ -32,7 +32,7 @@ std::u16string NaClInfoBarDelegate::GetLinkText() const { } GURL NaClInfoBarDelegate::GetLinkURL() const { @@ -5230,7 +5396,7 @@ diff --git a/chrome/browser/nacl_host/nacl_infobar_delegate.cc b/chrome/browser/ + return GURL("https://support.9oo91e.qjz9zk/chrome/?p=ib_nacl"); } - base::string16 NaClInfoBarDelegate::GetMessageText() const { + std::u16string NaClInfoBarDelegate::GetMessageText() const { diff --git a/chrome/browser/nearby_sharing/client/nearby_share_client_impl.cc b/chrome/browser/nearby_sharing/client/nearby_share_client_impl.cc --- a/chrome/browser/nearby_sharing/client/nearby_share_client_impl.cc +++ b/chrome/browser/nearby_sharing/client/nearby_share_client_impl.cc @@ -5283,7 +5449,7 @@ diff --git a/chrome/browser/net/dns_probe_runner.cc b/chrome/browser/net/dns_pro diff --git a/chrome/browser/notifications/notification_platform_bridge_mac.mm b/chrome/browser/notifications/notification_platform_bridge_mac.mm --- a/chrome/browser/notifications/notification_platform_bridge_mac.mm +++ b/chrome/browser/notifications/notification_platform_bridge_mac.mm -@@ -321,7 +321,7 @@ void NotificationPlatformBridgeMac::CloseAllNotificationsForProfile( +@@ -324,7 +324,7 @@ void NotificationPlatformBridgeMac::CloseAllNotificationsForProfile( // Overriden from _NSUserNotificationCenterDelegatePrivate. // Emitted when a user closes a notification from the notification center. // This is an undocumented method introduced in 10.8 according to @@ -5292,30 +5458,18 @@ diff --git a/chrome/browser/notifications/notification_platform_bridge_mac.mm b/ - (void)userNotificationCenter:(NSUserNotificationCenter*)center didRemoveDeliveredNotifications:(NSArray*)notifications { for (NSUserNotification* notification in notifications) { -diff --git a/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer.cc b/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer.cc ---- a/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer.cc -+++ b/chrome/browser/page_load_metrics/observers/ad_metrics/ads_page_load_metrics_observer.cc -@@ -110,7 +110,7 @@ void RecordFeatureUsage(content::RenderFrameHost* rfh, - std::string GetHeavyAdReportMessage(const ad_metrics::FrameTreeData& frame_data, - bool will_unload_adframe) { - const char kChromeStatusMessage[] = -- "See https://www.chromestatus.com/feature/4800491902992384?utm_source=devtools"; -+ "See https://www.ch40mestatus.qjz9zk/feature/4800491902992384?utm_source=devtools"; - const char kReportingOnlyMessage[] = - "A future version of Chrome may remove this ad"; - const char kInterventionMessage[] = "Ad was removed"; diff --git a/chrome/browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer_test_utils.h b/chrome/browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer_test_utils.h --- a/chrome/browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer_test_utils.h +++ b/chrome/browser/page_load_metrics/observers/data_reduction_proxy_metrics_observer_test_utils.h -@@ -23,7 +23,7 @@ +@@ -22,7 +22,7 @@ namespace data_reduction_proxy { -const char kDefaultTestUrl[] = "http://google.com"; +const char kDefaultTestUrl[] = "http://9oo91e.qjz9zk"; - // Attaches a new |PreviewsUserData| to the given |navigation_handle|. - previews::PreviewsUserData* PreviewsDataForNavigationHandle( + page_load_metrics::mojom::ResourceDataUpdatePtr + CreateDataReductionProxyResource(bool was_cached, diff --git a/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc b/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc --- a/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc +++ b/chrome/browser/page_load_metrics/observers/service_worker_page_load_metrics_observer.cc @@ -5409,7 +5563,7 @@ diff --git a/chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_params.cc b/c diff --git a/chrome/browser/profiles/profile_avatar_downloader.cc b/chrome/browser/profiles/profile_avatar_downloader.cc --- a/chrome/browser/profiles/profile_avatar_downloader.cc +++ b/chrome/browser/profiles/profile_avatar_downloader.cc -@@ -19,7 +19,7 @@ +@@ -20,7 +20,7 @@ namespace { const char kHighResAvatarDownloadUrlPrefix[] = @@ -5418,18 +5572,6 @@ diff --git a/chrome/browser/profiles/profile_avatar_downloader.cc b/chrome/brows } ProfileAvatarDownloader::ProfileAvatarDownloader(size_t icon_index, -diff --git a/chrome/browser/profiles/profile_window.cc b/chrome/browser/profiles/profile_window.cc ---- a/chrome/browser/profiles/profile_window.cc -+++ b/chrome/browser/profiles/profile_window.cc -@@ -296,7 +296,7 @@ bool IsLockAvailable(Profile* profile) { - - // TODO(mlerman): Prohibit only users who authenticate using SAML. Until then, - // prohibited users who use hosted domains (aside from google.com). -- if (hosted_domain != kNoHostedDomainFound && hosted_domain != "google.com") { -+ if (hosted_domain != kNoHostedDomainFound && hosted_domain != "9oo91e.qjz9zk") { - return false; - } - diff --git a/chrome/browser/push_messaging/push_messaging_constants.cc b/chrome/browser/push_messaging/push_messaging_constants.cc --- a/chrome/browser/push_messaging/push_messaging_constants.cc +++ b/chrome/browser/push_messaging/push_messaging_constants.cc @@ -5445,7 +5587,7 @@ diff --git a/chrome/browser/push_messaging/push_messaging_constants.cc b/chrome/ diff --git a/chrome/browser/push_messaging/push_messaging_service_impl.cc b/chrome/browser/push_messaging/push_messaging_service_impl.cc --- a/chrome/browser/push_messaging/push_messaging_service_impl.cc +++ b/chrome/browser/push_messaging/push_messaging_service_impl.cc -@@ -92,7 +92,7 @@ const char kSilentPushUnsupportedMessage[] = +@@ -93,7 +93,7 @@ const char kSilentPushUnsupportedMessage[] = "Chrome currently only supports the Push API for subscriptions that will " "result in user-visible messages. You can indicate this by calling " "pushManager.subscribe({userVisibleOnly: true}) instead. See " @@ -5484,6 +5626,18 @@ diff --git a/chrome/browser/resources/chromeos/about_os_credits.html b/chrome/br The template is used to generate a device-dependent about_os_credits.html when a CrOS image is built.

+diff --git a/chrome/browser/resources/chromeos/accessibility/accessibility_common/magnifier/magnifier.js b/chrome/browser/resources/chromeos/accessibility/accessibility_common/magnifier/magnifier.js +--- a/chrome/browser/resources/chromeos/accessibility/accessibility_common/magnifier/magnifier.js ++++ b/chrome/browser/resources/chromeos/accessibility/accessibility_common/magnifier/magnifier.js +@@ -79,7 +79,7 @@ export class Magnifier { + this.isInitializing_ = false; + }, Magnifier.IGNORE_FOCUS_UPDATES_INITIALIZATION_MS); + +- chrome.commandLinePrivate.hasSwitch( ++ ch40me.qjz9zkmandLinePrivate.hasSwitch( + 'enable-magnifier-debug-draw-rect', (enabled) => { + if (enabled) { + this.magnifierDebugDrawRect_ = true; diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox/background/command_handler.js b/chrome/browser/resources/chromeos/accessibility/chromevox/background/command_handler.js --- a/chrome/browser/resources/chromeos/accessibility/chromevox/background/command_handler.js +++ b/chrome/browser/resources/chromeos/accessibility/chromevox/background/command_handler.js @@ -5496,7 +5650,7 @@ diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox/backgroun 'labels=Type-Bug,Pri-2,OS-Chrome&' + 'components=OS>Accessibility>ChromeVox&' + 'description='; -@@ -1476,13 +1476,13 @@ CommandHandler.init = function() { +@@ -1480,13 +1480,13 @@ CommandHandler.init = function() { } }); @@ -5585,12 +5739,12 @@ diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox_manifest. diff --git a/chrome/browser/resources/chromeos/accessibility/common/tutorial/chromevox_tutorial.js b/chrome/browser/resources/chromeos/accessibility/common/tutorial/chromevox_tutorial.js --- a/chrome/browser/resources/chromeos/accessibility/common/tutorial/chromevox_tutorial.js +++ b/chrome/browser/resources/chromeos/accessibility/common/tutorial/chromevox_tutorial.js -@@ -581,15 +581,15 @@ Polymer({ - const resources = [ +@@ -685,15 +685,15 @@ Polymer({ { msgId: 'next_command_reference', -- link: 'https://www.chromevox.com/next_keyboard_shortcuts.html' -+ link: 'https://www.ch40mevox.qjz9zk/next_keyboard_shortcuts.html' + link: +- 'https://support.google.com/chromebook/answer/7031755#zippy=%2Cmove-through-a-page-with-keyboard-shortcuts' ++ 'https://support.9oo91e.qjz9zk/chromebook/answer/7031755#zippy=%2Cmove-through-a-page-with-keyboard-shortcuts' }, { msgId: 'chrome_keyboard_shortcuts', @@ -5619,16 +5773,16 @@ diff --git a/chrome/browser/resources/chromeos/accessibility/select_to_speak/opt diff --git a/chrome/browser/resources/chromeos/accessibility/select_to_speak/select_to_speak.js b/chrome/browser/resources/chromeos/accessibility/select_to_speak/select_to_speak.js --- a/chrome/browser/resources/chromeos/accessibility/select_to_speak/select_to_speak.js +++ b/chrome/browser/resources/chromeos/accessibility/select_to_speak/select_to_speak.js -@@ -47,7 +47,7 @@ const FLOATING_MENU_BUTTON_CLASS_NAME = 'FloatingMenuButton'; +@@ -23,7 +23,7 @@ const SelectToSpeakState = chrome.accessibilityPrivate.SelectToSpeakState; // Matches one of the known GSuite apps which need the clipboard to find and // read selected text. Includes sandbox and non-sandbox versions. const GSUITE_APP_REGEXP = - /^https:\/\/docs\.(?:sandbox\.)?google\.com\/(?:(?:presentation)|(?:document)|(?:spreadsheets)|(?:drawings)){1}\//; + /^https:\/\/docs\.(?:sandbox\.)?9oo91e\.qjz9zk\/(?:(?:presentation)|(?:document)|(?:spreadsheets)|(?:drawings)){1}\//; - // A RGBA hex string for the default background shading color, which is black at - // 40% opacity (hex 66). This should be equivalent to using -@@ -253,7 +253,7 @@ export class SelectToSpeak { + // Settings key for system speech rate setting. + const SPEECH_RATE_KEY = 'settings.tts.speech_rate'; +@@ -177,7 +177,7 @@ export class SelectToSpeak { this.enableLanguageDetectionIntegration_ = false; // TODO(chrishall): do we want to (also?) expose this in preferences? @@ -5637,7 +5791,7 @@ diff --git a/chrome/browser/resources/chromeos/accessibility/select_to_speak/sel 'enable-experimental-accessibility-language-detection', (result) => { this.enableLanguageDetectionIntegration_ = result; }); -@@ -893,8 +893,8 @@ export class SelectToSpeak { +@@ -686,8 +686,8 @@ export class SelectToSpeak { chrome.tabs.query( { url: [ @@ -5816,7 +5970,7 @@ diff --git a/chrome/browser/resources/chromeos/arc_support/playstore.js b/chrome diff --git a/chrome/browser/resources/chromeos/assistant_optin/assistant_related_info.js b/chrome/browser/resources/chromeos/assistant_optin/assistant_related_info.js --- a/chrome/browser/resources/chromeos/assistant_optin/assistant_related_info.js +++ b/chrome/browser/resources/chromeos/assistant_optin/assistant_related_info.js -@@ -73,7 +73,7 @@ Polymer({ +@@ -57,7 +57,7 @@ Polymer({ * @private {string} */ urlTemplate_: @@ -5825,7 +5979,7 @@ diff --git a/chrome/browser/resources/chromeos/assistant_optin/assistant_related /** * Whether try to reload with the default url when a 404 error occurred. -@@ -246,7 +246,7 @@ Polymer({ +@@ -226,7 +226,7 @@ Polymer({ 'icon-src', 'data:text/html;charset=utf-8,' + encodeURIComponent(this.$.zippy.getWrappedIcon( @@ -6128,15 +6282,15 @@ diff --git a/chrome/browser/resources/chromeos/echo/manifest.json b/chrome/brows diff --git a/chrome/browser/resources/chromeos/edu_coexistence/edu_coexistence_ui.js b/chrome/browser/resources/chromeos/edu_coexistence/edu_coexistence_ui.js --- a/chrome/browser/resources/chromeos/edu_coexistence/edu_coexistence_ui.js +++ b/chrome/browser/resources/chromeos/edu_coexistence/edu_coexistence_ui.js -@@ -111,7 +111,7 @@ Polymer({ +@@ -143,7 +143,7 @@ Polymer({ // Don't show the "Next" button if the EDU authentication got forwarded to // a non-Google SSO page. - this.showGaiaNextButton_ = currentUrl.hostname.endsWith('.google.com'); + this.showGaiaNextButton_ = currentUrl.hostname.endsWith('.9oo91e.qjz9zk'); - } else { // Hide the GAIA Buttons. + this.showGaiaButtons_ = false; diff --git a/chrome/browser/resources/chromeos/emoji_picker/icons.html b/chrome/browser/resources/chromeos/emoji_picker/icons.html --- a/chrome/browser/resources/chromeos/emoji_picker/icons.html +++ b/chrome/browser/resources/chromeos/emoji_picker/icons.html @@ -6212,7 +6366,7 @@ diff --git a/chrome/browser/resources/chromeos/login/arc_terms_of_service.js b/c diff --git a/chrome/browser/resources/chromeos/login/marketing_opt_in.html b/chrome/browser/resources/chromeos/login/marketing_opt_in.html --- a/chrome/browser/resources/chromeos/login/marketing_opt_in.html +++ b/chrome/browser/resources/chromeos/login/marketing_opt_in.html -@@ -131,7 +131,7 @@ +@@ -146,7 +146,7 @@
Google LLC, 1600 Amphitheatre Parkway, Mountain View, CA 94043, USA
@@ -6220,11 +6374,11 @@ diff --git a/chrome/browser/resources/chromeos/login/marketing_opt_in.html b/chr +
www.9oo91e.qjz9zk
- , 'password': } If user did not type domain |email| will be added by @@ -6233,9 +6387,9 @@ diff --git a/chrome/browser/resources/chromeos/login/offline_login.html b/chrome Methods: 'focus' - focuses current screen (email input or password input); 'setEmail' - accepts an argument |email|. If |email| is empty it sets -diff --git a/chrome/browser/resources/chromeos/login/offline_login.js b/chrome/browser/resources/chromeos/login/offline_login.js ---- a/chrome/browser/resources/chromeos/login/offline_login.js -+++ b/chrome/browser/resources/chromeos/login/offline_login.js +diff --git a/chrome/browser/resources/chromeos/login/screens/login/offline_login.js b/chrome/browser/resources/chromeos/login/screens/login/offline_login.js +--- a/chrome/browser/resources/chromeos/login/screens/login/offline_login.js ++++ b/chrome/browser/resources/chromeos/login/screens/login/offline_login.js @@ -4,7 +4,7 @@ (function() { @@ -6392,45 +6546,46 @@ diff --git a/chrome/browser/resources/feedback/js/feedback_util.js b/chrome/brow diff --git a/chrome/browser/resources/feedback_webui/js/feedback_util.js b/chrome/browser/resources/feedback_webui/js/feedback_util.js --- a/chrome/browser/resources/feedback_webui/js/feedback_util.js +++ b/chrome/browser/resources/feedback_webui/js/feedback_util.js -@@ -6,29 +6,29 @@ +@@ -6,30 +6,30 @@ * @const */ - const FEEDBACK_LANDING_PAGE = + export const FEEDBACK_LANDING_PAGE = - 'https://support.google.com/chrome/go/feedback_confirmation'; + 'https://support.9oo91e.qjz9zk/chrome/go/feedback_confirmation'; /** @type {string} * @const */ - const FEEDBACK_LANDING_PAGE_TECHSTOP = + export const FEEDBACK_LANDING_PAGE_TECHSTOP = - 'https://support.google.com/pixelbook/answer/7659411'; + 'https://support.9oo91e.qjz9zk/pixelbook/answer/7659411'; /** @type {string} * @const */ - const FEEDBACK_LEGAL_HELP_URL = + export const FEEDBACK_LEGAL_HELP_URL = - 'https://support.google.com/legal/answer/3110420'; + 'https://support.9oo91e.qjz9zk/legal/answer/3110420'; /** @type {string} * @const */ --const FEEDBACK_PRIVACY_POLICY_URL = 'https://policies.google.com/privacy'; -+const FEEDBACK_PRIVACY_POLICY_URL = 'https://policies.9oo91e.qjz9zk/privacy'; + export const FEEDBACK_PRIVACY_POLICY_URL = +- 'https://policies.google.com/privacy'; ++ 'https://policies.9oo91e.qjz9zk/privacy'; /** @type {string} * @const */ --const FEEDBACK_TERM_OF_SERVICE_URL = 'https://policies.google.com/terms'; -+const FEEDBACK_TERM_OF_SERVICE_URL = 'https://policies.9oo91e.qjz9zk/terms'; +-export const FEEDBACK_TERM_OF_SERVICE_URL = 'https://policies.google.com/terms'; ++export const FEEDBACK_TERM_OF_SERVICE_URL = 'https://policies.9oo91e.qjz9zk/terms'; /** * Opens the supplied url in an app window. It uses the url as the window ID. diff --git a/chrome/browser/resources/gaia_auth_host/authenticator.js b/chrome/browser/resources/gaia_auth_host/authenticator.js --- a/chrome/browser/resources/gaia_auth_host/authenticator.js +++ b/chrome/browser/resources/gaia_auth_host/authenticator.js -@@ -671,7 +671,7 @@ cr.define('cr.login', function() { +@@ -678,7 +678,7 @@ cr.define('cr.login', function() { url = appendParam( url, 'continue', data.gaiaUrl + 'programmatic_auth_chromeos?hl=' + data.hl + @@ -6439,15 +6594,6 @@ diff --git a/chrome/browser/resources/gaia_auth_host/authenticator.js b/chrome/b 'client_id=' + encodeURIComponent(data.clientId) + '&access_type=offline'); -@@ -1006,7 +1006,7 @@ cr.define('cr.login', function() { - // TODO(https://crbug.com/837107): remove this once API is fully - // stabilized. - // @example.com is used in tests. -- if (!this.services_ && !this.email_.endsWith('@gmail.com') && -+ if (!this.services_ && !this.email_.endsWith('@9ma1l.qjz9zk') && - !this.email_.endsWith('@example.com')) { - console.warn('Forcing empty services.'); - this.services_ = []; diff --git a/chrome/browser/resources/gaia_auth_host/saml_password_attributes.js b/chrome/browser/resources/gaia_auth_host/saml_password_attributes.js --- a/chrome/browser/resources/gaia_auth_host/saml_password_attributes.js +++ b/chrome/browser/resources/gaia_auth_host/saml_password_attributes.js @@ -6472,18 +6618,6 @@ diff --git a/chrome/browser/resources/hangout_services/manifest.json b/chrome/br ] }, "background": { -diff --git a/chrome/browser/resources/hats/hats.html b/chrome/browser/resources/hats/hats.html ---- a/chrome/browser/resources/hats/hats.html -+++ b/chrome/browser/resources/hats/hats.html -@@ -38,7 +38,7 @@ - // the iframe's disposal to make sure the iframe is already loaded, - // which means the answer has been posted to the server. - // TODO(weili): Once this issue is fixed in HaTS library -- // (https://b.corp.google.com/issues/143494318), remove the following -+ // (https://b.corp.9oo91e.qjz9zk/issues/143494318), remove the following - // work around. - const element = document.querySelector(`iframe[id^='closure_frame']`); - if (element === null) { diff --git a/chrome/browser/resources/identity_scope_approval_dialog/manifest.json b/chrome/browser/resources/identity_scope_approval_dialog/manifest.json --- a/chrome/browser/resources/identity_scope_approval_dialog/manifest.json +++ b/chrome/browser/resources/identity_scope_approval_dialog/manifest.json @@ -6524,16 +6658,16 @@ diff --git a/chrome/browser/resources/identity_scope_approval_dialog/scope_appro diff --git a/chrome/browser/resources/inspect/inspect.html b/chrome/browser/resources/inspect/inspect.html --- a/chrome/browser/resources/inspect/inspect.html +++ b/chrome/browser/resources/inspect/inspect.html -@@ -48,7 +48,7 @@ found in the LICENSE file. +@@ -46,7 +46,7 @@ found in the LICENSE file. - -@@ -111,7 +111,7 @@ +@@ -109,7 +109,7 @@ on-click="onPromoteUpdaterTap_">
[[promoteUpdaterStatus_.text]] @@ -6955,7 +7030,7 @@ diff --git a/chrome/browser/resources/settings/about_page/about_page.html b/chro diff --git a/chrome/browser/resources/settings/appearance_page/appearance_page.js b/chrome/browser/resources/settings/appearance_page/appearance_page.js --- a/chrome/browser/resources/settings/appearance_page/appearance_page.js +++ b/chrome/browser/resources/settings/appearance_page/appearance_page.js -@@ -287,7 +287,7 @@ Polymer({ +@@ -310,7 +310,7 @@ Polymer({ this.themeSublabel_ = info.name; }); @@ -6967,7 +7042,7 @@ diff --git a/chrome/browser/resources/settings/appearance_page/appearance_page.j diff --git a/chrome/browser/resources/settings/autofill_page/passwords_list_handler.js b/chrome/browser/resources/settings/autofill_page/passwords_list_handler.js --- a/chrome/browser/resources/settings/autofill_page/passwords_list_handler.js +++ b/chrome/browser/resources/settings/autofill_page/passwords_list_handler.js -@@ -377,7 +377,7 @@ Polymer({ +@@ -365,7 +365,7 @@ Polymer({ shouldShowMoveToAccountOption_() { const isFirstSignedInAccountPassword = !!this.activePassword_ && this.activePassword_.entry.urls.origin.includes( @@ -7017,12 +7092,12 @@ diff --git a/chrome/browser/resources/settings/chromeos/device_page/stylus.js b/ diff --git a/chrome/browser/resources/settings/chromeos/os_a11y_page/manage_a11y_page.html b/chrome/browser/resources/settings/chromeos/os_a11y_page/manage_a11y_page.html --- a/chrome/browser/resources/settings/chromeos/os_a11y_page/manage_a11y_page.html +++ b/chrome/browser/resources/settings/chromeos/os_a11y_page/manage_a11y_page.html -@@ -375,7 +375,7 @@ +@@ -382,7 +382,7 @@ if="[[shouldShowAdditionalFeaturesLink_(isGuest_, isKioskModeActive_)]]"> -+ href="https://chrome.9oo91e.qjz9zk/webstore/category/collection/accessibility"> +- href="https://chrome.google.com/webstore/category/collection/3p_accessibility_extensions"> ++ href="https://chrome.9oo91e.qjz9zk/webstore/category/collection/3p_accessibility_extensions">
$i18n{additionalFeaturesTitle}
@@ -7041,7 +7116,7 @@ diff --git a/chrome/browser/resources/settings/chromeos/os_about_page/channel_sw diff --git a/chrome/browser/resources/settings/chromeos/os_about_page/os_about_page.html b/chrome/browser/resources/settings/chromeos/os_about_page/os_about_page.html --- a/chrome/browser/resources/settings/chromeos/os_about_page/os_about_page.html +++ b/chrome/browser/resources/settings/chromeos/os_about_page/os_about_page.html -@@ -118,7 +118,7 @@ +@@ -116,7 +116,7 @@ currentUpdateStatusEvent_, targetChannel_)]]">
percent_encoded_email; url::RawCanonOutputT percent_encoded_account_url; -@@ -906,7 +906,7 @@ GURL ChromePasswordProtectionService::GetDefaultChangePasswordURL() const { +@@ -912,7 +912,7 @@ GURL ChromePasswordProtectionService::GetDefaultChangePasswordURL() const { url::EncodeURIComponent(account_url.c_str(), account_url.length(), &percent_encoded_account_url); GURL change_password_url = GURL(base::StringPrintf( @@ -7198,7 +7273,7 @@ diff --git a/chrome/browser/safe_browsing/chrome_password_protection_service.cc diff --git a/chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_service.cc b/chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_service.cc --- a/chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_service.cc +++ b/chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_service.cc -@@ -47,10 +47,10 @@ namespace { +@@ -47,13 +47,13 @@ namespace { const int kScanningTimeoutSeconds = 5 * 60; // 5 minutes const char kSbEnterpriseUploadUrl[] = @@ -7209,12 +7284,16 @@ diff --git a/chrome/browser/safe_browsing/cloud_content_scanning/binary_upload_s - "https://safebrowsing.google.com/safebrowsing/uploads/app"; + "https://safebrowsing.9oo91e.qjz9zk/safebrowsing/uploads/app"; - bool IsAdvancedProtectionRequest(const BinaryUploadService::Request& request) { + const char kSbConsumerUploadUrl[] = +- "https://safebrowsing.google.com/safebrowsing/uploads/consumer"; ++ "https://safebrowsing.9oo91e.qjz9zk/safebrowsing/uploads/consumer"; + + bool IsConsumerScanRequest(const BinaryUploadService::Request& request) { for (const std::string& tag : request.content_analysis_request().tags()) { diff --git a/chrome/browser/safe_browsing/download_protection/check_client_download_request_base.cc b/chrome/browser/safe_browsing/download_protection/check_client_download_request_base.cc --- a/chrome/browser/safe_browsing/download_protection/check_client_download_request_base.cc +++ b/chrome/browser/safe_browsing/download_protection/check_client_download_request_base.cc -@@ -467,14 +467,14 @@ void CheckClientDownloadRequestBase::SendRequest() { +@@ -458,14 +458,14 @@ void CheckClientDownloadRequestBase::SendRequest() { "This request is triggered when a download is about to complete, " "the download is not allowlisted, and its file extension is " "supported by download protection service (e.g. executables, " @@ -7273,7 +7352,7 @@ diff --git a/chrome/browser/safe_browsing/download_protection/ppapi_download_req diff --git a/chrome/browser/safe_browsing/incident_reporting/incident_report_uploader_impl.cc b/chrome/browser/safe_browsing/incident_reporting/incident_report_uploader_impl.cc --- a/chrome/browser/safe_browsing/incident_reporting/incident_report_uploader_impl.cc +++ b/chrome/browser/safe_browsing/incident_reporting/incident_report_uploader_impl.cc -@@ -24,7 +24,7 @@ namespace safe_browsing { +@@ -25,7 +25,7 @@ namespace safe_browsing { namespace { const char kSbIncidentReportUrl[] = @@ -7282,7 +7361,7 @@ diff --git a/chrome/browser/safe_browsing/incident_reporting/incident_report_upl constexpr net::NetworkTrafficAnnotationTag kSafeBrowsingIncidentTrafficAnnotation = -@@ -39,7 +39,7 @@ constexpr net::NetworkTrafficAnnotationTag +@@ -40,7 +40,7 @@ constexpr net::NetworkTrafficAnnotationTag "Chrome." data: "A description of the incident, possible causes and related system " @@ -7294,7 +7373,7 @@ diff --git a/chrome/browser/safe_browsing/incident_reporting/incident_report_upl diff --git a/chrome/browser/safe_browsing/settings_reset_prompt/default_settings_fetcher.cc b/chrome/browser/safe_browsing/settings_reset_prompt/default_settings_fetcher.cc --- a/chrome/browser/safe_browsing/settings_reset_prompt/default_settings_fetcher.cc +++ b/chrome/browser/safe_browsing/settings_reset_prompt/default_settings_fetcher.cc -@@ -26,7 +26,7 @@ namespace safe_browsing { +@@ -27,7 +27,7 @@ namespace safe_browsing { namespace { #if BUILDFLAG(GOOGLE_CHROME_BRANDING) @@ -7381,17 +7460,17 @@ diff --git a/chrome/browser/search/background/ntp_backgrounds.cc b/chrome/browse diff --git a/chrome/browser/search/drive/drive_service.cc b/chrome/browser/search/drive/drive_service.cc --- a/chrome/browser/search/drive/drive_service.cc +++ b/chrome/browser/search/drive/drive_service.cc -@@ -15,7 +15,7 @@ +@@ -16,7 +16,7 @@ namespace { // The scope required for an access token in order to query ItemSuggest. -constexpr char kDriveScope[] = "https://www.googleapis.com/auth/drive.readonly"; +constexpr char kDriveScope[] = "https://www.9oo91eapis.qjz9zk/auth/drive.readonly"; - // TODO(crbug/1171898): Will need to change and verify client_info in the - // future. - constexpr char kRequestBody[] = R"({ -@@ -29,7 +29,7 @@ constexpr char kRequestBody[] = R"({ - })"; + #if OS_LINUX + constexpr char kPlatform[] = "LINUX"; + #elif OS_WIN +@@ -40,7 +40,7 @@ constexpr char kRequestBody[] = R"({ + })"; // Maximum accepted size of an ItemSuggest response. 1MB. constexpr int kMaxResponseSize = 1024 * 1024; -const char server_url[] = "https://appsitemsuggest-pa.googleapis.com/v1/items"; @@ -7399,48 +7478,6 @@ diff --git a/chrome/browser/search/drive/drive_service.cc b/chrome/browser/searc constexpr net::NetworkTrafficAnnotationTag kTrafficAnnotation = net::DefineNetworkTrafficAnnotation("drive_service", R"( semantics { -diff --git a/chrome/browser/search/local_ntp_source.cc b/chrome/browser/search/local_ntp_source.cc ---- a/chrome/browser/search/local_ntp_source.cc -+++ b/chrome/browser/search/local_ntp_source.cc -@@ -96,7 +96,7 @@ const int kLocalResource = -1; - - const char kConfigDataFilename[] = "config.js"; - const char kDoodleScriptFilename[] = "doodle.js"; --const char kGoogleUrl[] = "https://www.google.com/"; -+const char kGoogleUrl[] = "https://www.9oo91e.qjz9zk/"; - const char kMainHtmlFilename[] = "local-ntp.html"; - const char kNtpBackgroundCollectionScriptFilename[] = - "ntp-background-collections.js"; -@@ -960,7 +960,7 @@ void LocalNtpSource::StartDataRequest( - base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); - command_line->AppendSwitchASCII( - search_provider_logos::switches::kGoogleDoodleUrl, -- "https://www.gstatic.com/chrome/ntp/doodle_test/ddljson_desktop" + -+ "https://www.95tat1c.qjz9zk/chrome/ntp/doodle_test/ddljson_desktop" + - force_doodle_param + ".json"); - } - -@@ -1132,7 +1132,7 @@ std::string LocalNtpSource::GetContentSecurityPolicyForNTP() { - // switcher and the notifications dropdown from the One Google Bar, and/or - // the iframe for interactive Doodles. - std::string child_src_csp = base::StringPrintf( -- "child-src %s https://*.google.com/ %s;", -+ "child-src %s https://*.9oo91e.qjz9zk/ %s;", - chrome::kChromeSearchMostVisitedUrl, google_base_url.spec().c_str()); - - // Restrict scripts in the main page to those listed here. However, -diff --git a/chrome/browser/search/ntp_icon_source.cc b/chrome/browser/search/ntp_icon_source.cc ---- a/chrome/browser/search/ntp_icon_source.cc -+++ b/chrome/browser/search/ntp_icon_source.cc -@@ -85,7 +85,7 @@ const int kMaxIconSizeDip = 192; - // URL to the server favicon service. "alt=404" means the service will return a - // 404 if an icon can't be found. - const char kServerFaviconURL[] = -- "https://s2.googleusercontent.com/s2/favicons?domain_url=%s&alt=404&sz=32"; -+ "https://s2.9oo91eusercontent.qjz9zk/s2/favicons?domain_url=%s&alt=404&sz=32"; - - // Used to parse the specification from the path. - struct ParsedNtpIconPath { diff --git a/chrome/browser/sharing/shared_clipboard/feature_flags.cc b/chrome/browser/sharing/shared_clipboard/feature_flags.cc --- a/chrome/browser/sharing/shared_clipboard/feature_flags.cc +++ b/chrome/browser/sharing/shared_clipboard/feature_flags.cc @@ -7506,7 +7543,7 @@ diff --git a/chrome/browser/sharing/webrtc/ice_config_fetcher.cc b/chrome/browse diff --git a/chrome/browser/signin/signin_ui_util.cc b/chrome/browser/signin/signin_ui_util.cc --- a/chrome/browser/signin/signin_ui_util.cc +++ b/chrome/browser/signin/signin_ui_util.cc -@@ -195,7 +195,7 @@ void InitializePrefsForProfile(Profile* profile) { +@@ -197,7 +197,7 @@ void InitializePrefsForProfile(Profile* profile) { void ShowSigninErrorLearnMorePage(Profile* profile) { static const char kSigninErrorLearnMoreUrl[] = @@ -7542,15 +7579,15 @@ diff --git a/chrome/browser/ssl/sct_reporting_service.cc b/chrome/browser/ssl/sc diff --git a/chrome/browser/subresource_redirect/subresource_redirect_util.cc b/chrome/browser/subresource_redirect/subresource_redirect_util.cc --- a/chrome/browser/subresource_redirect/subresource_redirect_util.cc +++ b/chrome/browser/subresource_redirect/subresource_redirect_util.cc -@@ -100,7 +100,7 @@ GURL GetRobotsServerURL(const url::Origin& origin) { - auto lite_page_robots_origin = base::GetFieldTrialParamValueByFeature( - blink::features::kSubresourceRedirect, "lite_page_robots_origin"); - GURL lite_page_robots_url(lite_page_robots_origin.empty() -- ? "https://litepages.googlezip.net/" -+ ? "https://litepages.9oo91e21p.qjz9zk/" - : lite_page_robots_origin); +@@ -51,7 +51,7 @@ GURL GetLitePageRobotsOrigin() { + "lite_page_robots_origin"); + } + if (lite_page_robots_origin.empty()) +- lite_page_robots_origin = "https://litepages.googlezip.net/"; ++ lite_page_robots_origin = "https://litepages.9oo91e21p.qjz9zk/"; + return GURL(lite_page_robots_origin); + } - std::string query_str = diff --git a/chrome/browser/supervised_user/child_accounts/family_info_fetcher.cc b/chrome/browser/supervised_user/child_accounts/family_info_fetcher.cc --- a/chrome/browser/supervised_user/child_accounts/family_info_fetcher.cc +++ b/chrome/browser/supervised_user/child_accounts/family_info_fetcher.cc @@ -7681,7 +7718,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro CHAR-LIMIT guidelines: Certain strings need character limits to prevent a long translation from breaking the UI. -@@ -895,7 +895,7 @@ Privacy Sandbox is still in active development and is available in selected regi +@@ -892,7 +892,7 @@ Privacy Sandbox is still in active development and is available in selected regi Choose another provider @@ -7690,7 +7727,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro This setting is disabled on managed browsers -@@ -925,7 +925,7 @@ Privacy Sandbox is still in active development and is available in selected regi +@@ -922,7 +922,7 @@ Privacy Sandbox is still in active development and is available in selected regi The selected data has been removed from Chrome and your synced devices. @@ -7710,9 +7747,9 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro - Clears history from all signed-in devices. Your Google Account may have other forms of browsing history at <link>myactivity.google.com</link>. + Clears history from all signed-in devices. Your Google Account may have other forms of browsing history at <link>myactivity.9oo91e.qjz9zk</link>. - - Saved passwords -@@ -1022,7 +1022,7 @@ Your Google account may have other forms of browsing history like searches and a + + To clear <link1>search</link1> or other forms of history, visit <link2>My Google Activity</link2> +@@ -1025,7 +1025,7 @@ Your Google account may have other forms of browsing history like searches and a Basic @@ -7721,7 +7758,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro Blocked site -@@ -1417,7 +1417,7 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1435,7 +1435,7 @@ Your Google account may have other forms of browsing history like searches and a In Lite mode, Chrome loads pages faster and uses up to 60 percent less data. To optimize the pages that you visit, Chrome sends your web traffic to Google. <link>Learn more</link> @@ -7730,7 +7767,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro Turn on Lite mode -@@ -1586,10 +1586,10 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1622,10 +1622,10 @@ Your Google account may have other forms of browsing history like searches and a Waiting for details of parents. @@ -7743,7 +7780,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro Content -@@ -1648,22 +1648,22 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1684,22 +1684,22 @@ Your Google account may have other forms of browsing history like searches and a Google Terms of Service @@ -7770,7 +7807,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro -@@ -1680,7 +1680,7 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1716,7 +1716,7 @@ Your Google account may have other forms of browsing history like searches and a Also clear your Chrome data from this device @@ -7779,7 +7816,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro Contacting Google. This may take a minute… -@@ -1828,7 +1828,7 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

@@ -7788,7 +7825,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro <link>Get help</link> while scanning for devices… -@@ -1873,7 +1873,7 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

@@ -7797,16 +7834,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro Unknown or unsupported device (%1$sA1:B2:C3:D4:E5:F6) -@@ -2324,7 +2324,7 @@ To change this setting, <resetlink>reset sync

- -- <link>Load original page</link> from %1$sgoogle.com -+ <link>Load original page</link> from %1$s9oo91e.qjz9zk - - - You are viewing a preview of this page -@@ -3640,7 +3640,7 @@ Data from your Incognito session will only be cleared from Chrome when you @@ -7815,7 +7843,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro No compatible devices found -@@ -3679,7 +3679,7 @@ Data from your Incognito session will only be cleared from Chrome when you @@ -7824,7 +7852,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro Got it -@@ -3934,7 +3934,7 @@ Data from your Incognito session will only be cleared from Chrome when you %1$sTanya's Pixel 2... @@ -7836,7 +7864,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/browser/ui/app_list/search/arc/arc_app_reinstall_app_result.cc b/chrome/browser/ui/app_list/search/arc/arc_app_reinstall_app_result.cc --- a/chrome/browser/ui/app_list/search/arc/arc_app_reinstall_app_result.cc +++ b/chrome/browser/ui/app_list/search/arc/arc_app_reinstall_app_result.cc -@@ -26,7 +26,7 @@ namespace app_list { +@@ -27,7 +27,7 @@ namespace app_list { namespace { constexpr char kPlayStoreAppUrlPrefix[] = @@ -7845,6 +7873,18 @@ diff --git a/chrome/browser/ui/app_list/search/arc/arc_app_reinstall_app_result. // We choose a default app reinstallation relevance; This ranks app reinstall // app result as a top result typically. +diff --git a/chrome/browser/ui/app_list/search/arc/recommend_apps_fetcher_impl.cc b/chrome/browser/ui/app_list/search/arc/recommend_apps_fetcher_impl.cc +--- a/chrome/browser/ui/app_list/search/arc/recommend_apps_fetcher_impl.cc ++++ b/chrome/browser/ui/app_list/search/arc/recommend_apps_fetcher_impl.cc +@@ -28,7 +28,7 @@ namespace app_list { + namespace { + + constexpr const char kGetAppListUrl[] = +- "https://android.clients.google.com/fdfe/chrome/" ++ "https://android.clients.9oo91e.qjz9zk/fdfe/chrome/" + "getfastreinstallappslist?cfecu=false"; + + // These are error codes from the json response of the API. diff --git a/chrome/browser/ui/app_list/search/files/item_suggest_cache.cc b/chrome/browser/ui/app_list/search/files/item_suggest_cache.cc --- a/chrome/browser/ui/app_list/search/files/item_suggest_cache.cc +++ b/chrome/browser/ui/app_list/search/files/item_suggest_cache.cc @@ -7855,8 +7895,8 @@ diff --git a/chrome/browser/ui/app_list/search/files/item_suggest_cache.cc b/chr -constexpr char kDriveScope[] = "https://www.googleapis.com/auth/drive.readonly"; +constexpr char kDriveScope[] = "https://www.9oo91eapis.qjz9zk/auth/drive.readonly"; - constexpr char kRequestBody[] = R"({ - 'client_info': { + bool IsDisabledByPolicy(const Profile* profile) { + return profile->GetPrefs()->GetBoolean(drive::prefs::kDisableDrive); diff --git a/chrome/browser/ui/app_list/search/files/item_suggest_cache.h b/chrome/browser/ui/app_list/search/files/item_suggest_cache.h --- a/chrome/browser/ui/app_list/search/files/item_suggest_cache.h +++ b/chrome/browser/ui/app_list/search/files/item_suggest_cache.h @@ -7867,8 +7907,8 @@ diff --git a/chrome/browser/ui/app_list/search/files/item_suggest_cache.h b/chro - "https://appsitemsuggest-pa.googleapis.com/v1/items"}; + "https://appsitemsuggest-pa.9oo91eapis.qjz9zk/v1/items"}; - static constexpr base::FeatureParam kMinMinutesBetweenUpdates{ - &kExperiment, "min_minutes_between_updates", 15}; + // Specifies the ItemSuggest backend that should be used to serve our + // requests. diff --git a/chrome/browser/ui/app_list/search/omnibox_provider.cc b/chrome/browser/ui/app_list/search/omnibox_provider.cc --- a/chrome/browser/ui/app_list/search/omnibox_provider.cc +++ b/chrome/browser/ui/app_list/search/omnibox_provider.cc @@ -7880,7 +7920,7 @@ diff --git a/chrome/browser/ui/app_list/search/omnibox_provider.cc b/chrome/brow + return host == "drive.9oo91e.qjz9zk" || host == "docs.9oo91e.qjz9zk"; } - } // namespace + int ProviderTypes() { diff --git a/chrome/browser/ui/ash/ambient/ambient_client_impl.cc b/chrome/browser/ui/ash/ambient/ambient_client_impl.cc --- a/chrome/browser/ui/ash/ambient/ambient_client_impl.cc +++ b/chrome/browser/ui/ash/ambient/ambient_client_impl.cc @@ -7896,7 +7936,7 @@ diff --git a/chrome/browser/ui/ash/ambient/ambient_client_impl.cc b/chrome/brows const user_manager::User* GetActiveUser() { return user_manager::UserManager::Get()->GetActiveUser(); -@@ -69,8 +69,8 @@ bool IsEmailDomainSupported(const user_manager::User* user) { +@@ -68,8 +68,8 @@ bool IsEmailDomainSupported(const user_manager::User* user) { const std::string email = user->GetAccountId().GetUserEmail(); DCHECK(!email.empty()); @@ -8000,7 +8040,7 @@ diff --git a/chrome/browser/ui/browser_navigator_browsertest_chromeos.cc b/chrom diff --git a/chrome/browser/ui/chrome_pages.cc b/chrome/browser/ui/chrome_pages.cc --- a/chrome/browser/ui/chrome_pages.cc +++ b/chrome/browser/ui/chrome_pages.cc -@@ -282,7 +282,7 @@ void ShowHelpForProfile(Profile* profile, HelpSource source) { +@@ -280,7 +280,7 @@ void ShowHelpForProfile(Profile* profile, HelpSource source) { #if BUILDFLAG(GOOGLE_CHROME_BRANDING) void ShowChromeTips(Browser* browser) { @@ -8009,18 +8049,6 @@ diff --git a/chrome/browser/ui/chrome_pages.cc b/chrome/browser/ui/chrome_pages. ShowSingletonTab(browser, GURL(kChromeTipsURL)); } #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) -diff --git a/chrome/browser/ui/cocoa/rosetta_required_infobar_delegate.mm b/chrome/browser/ui/cocoa/rosetta_required_infobar_delegate.mm ---- a/chrome/browser/ui/cocoa/rosetta_required_infobar_delegate.mm -+++ b/chrome/browser/ui/cocoa/rosetta_required_infobar_delegate.mm -@@ -57,7 +57,7 @@ base::string16 RosettaRequiredInfoBarDelegate::GetLinkText() const { - } - - GURL RosettaRequiredInfoBarDelegate::GetLinkURL() const { -- return GURL("https://support.google.com/chrome/?p=mac_ARM"); -+ return GURL("https://support.9oo91e.qjz9zk/chrome/?p=mac_ARM"); - } - - base::string16 RosettaRequiredInfoBarDelegate::GetMessageText() const { diff --git a/chrome/browser/ui/cocoa/share_menu_controller.mm b/chrome/browser/ui/cocoa/share_menu_controller.mm --- a/chrome/browser/ui/cocoa/share_menu_controller.mm +++ b/chrome/browser/ui/cocoa/share_menu_controller.mm @@ -8036,19 +8064,19 @@ diff --git a/chrome/browser/ui/cocoa/share_menu_controller.mm b/chrome/browser/u diff --git a/chrome/browser/ui/commander/open_url_command_source.cc b/chrome/browser/ui/commander/open_url_command_source.cc --- a/chrome/browser/ui/commander/open_url_command_source.cc +++ b/chrome/browser/ui/commander/open_url_command_source.cc -@@ -27,7 +27,7 @@ CommandSource::CommandResults OpenURLCommandSource::GetCommands( - } command_map[] = { +@@ -20,7 +20,7 @@ std::vector> CreateTitleURLMap() { + return { #if BUILDFLAG(GOOGLE_CHROME_BRANDING) - {"Chrome Help", -- "https://support.google.com/chrome/?p=help&ctx=menu#topic=9796470"}, -+ "https://support.9oo91e.qjz9zk/chrome/?p=help&ctx=menu#topic=9796470"}, - // GSuite - {"New Google Doc", "https://docs.new"}, - {"New Google Sheet", "https://sheets.new"}, + {u"Chrome Help", +- GURL("https://support.google.com/chrome/?p=help&ctx=menu#topic=9796470")}, ++ GURL("https://support.9oo91e.qjz9zk/chrome/?p=help&ctx=menu#topic=9796470")}, + // GSuite + {u"New Google Doc", GURL("https://docs.new")}, + {u"New Google Sheet", GURL("https://sheets.new")}, diff --git a/chrome/browser/ui/extensions/installation_error_infobar_delegate.cc b/chrome/browser/ui/extensions/installation_error_infobar_delegate.cc --- a/chrome/browser/ui/extensions/installation_error_infobar_delegate.cc +++ b/chrome/browser/ui/extensions/installation_error_infobar_delegate.cc -@@ -38,7 +38,7 @@ base::string16 InstallationErrorInfoBarDelegate::GetLinkText() const { +@@ -38,7 +38,7 @@ std::u16string InstallationErrorInfoBarDelegate::GetLinkText() const { } GURL InstallationErrorInfoBarDelegate::GetLinkURL() const { @@ -8056,7 +8084,19 @@ diff --git a/chrome/browser/ui/extensions/installation_error_infobar_delegate.cc + return GURL("https://support.9oo91e.qjz9zk/chrome_webstore/?p=crx_warning"); } - base::string16 InstallationErrorInfoBarDelegate::GetMessageText() const { + std::u16string InstallationErrorInfoBarDelegate::GetMessageText() const { +diff --git a/chrome/browser/ui/managed_ui.cc b/chrome/browser/ui/managed_ui.cc +--- a/chrome/browser/ui/managed_ui.cc ++++ b/chrome/browser/ui/managed_ui.cc +@@ -57,7 +57,7 @@ base::Optional GetEnterpriseAccountDomain(Profile* profile) { + const std::string domain = + enterprise_util::GetDomainFromEmail(profile->GetProfileUserName()); + // Heuristic for most common consumer Google domains -- these are not managed. +- if (domain.empty() || domain == "gmail.com" || domain == "googlemail.com") ++ if (domain.empty() || domain == "9ma1l.qjz9zk" || domain == "9oo91email.qjz9zk") + return base::nullopt; + return domain; + } diff --git a/chrome/browser/ui/signin_view_controller.cc b/chrome/browser/ui/signin_view_controller.cc --- a/chrome/browser/ui/signin_view_controller.cc +++ b/chrome/browser/ui/signin_view_controller.cc @@ -8072,7 +8112,7 @@ diff --git a/chrome/browser/ui/signin_view_controller.cc b/chrome/browser/ui/sig diff --git a/chrome/browser/ui/toolbar/media_router_contextual_menu.cc b/chrome/browser/ui/toolbar/media_router_contextual_menu.cc --- a/chrome/browser/ui/toolbar/media_router_contextual_menu.cc +++ b/chrome/browser/ui/toolbar/media_router_contextual_menu.cc -@@ -138,11 +138,11 @@ bool MediaRouterContextualMenu::IsCommandIdVisible(int command_id) const { +@@ -122,11 +122,11 @@ bool MediaRouterContextualMenu::IsCommandIdVisible(int command_id) const { void MediaRouterContextualMenu::ExecuteCommand(int command_id, int event_flags) { const char kAboutPageUrl[] = @@ -8090,7 +8130,7 @@ diff --git a/chrome/browser/ui/toolbar/media_router_contextual_menu.cc b/chrome/ diff --git a/chrome/browser/ui/views/apps/app_dialog/app_uninstall_dialog_view.cc b/chrome/browser/ui/views/apps/app_dialog/app_uninstall_dialog_view.cc --- a/chrome/browser/ui/views/apps/app_dialog/app_uninstall_dialog_view.cc +++ b/chrome/browser/ui/views/apps/app_dialog/app_uninstall_dialog_view.cc -@@ -228,7 +228,7 @@ void AppUninstallDialogView::InitializeCheckbox(const GURL& app_start_url) { +@@ -230,7 +230,7 @@ void AppUninstallDialogView::InitializeCheckbox(const GURL& app_start_url) { [](Profile* profile) { NavigateParams params( profile, @@ -8102,7 +8142,7 @@ diff --git a/chrome/browser/ui/views/apps/app_dialog/app_uninstall_dialog_view.c diff --git a/chrome/browser/ui/views/hats/hats_next_web_dialog.cc b/chrome/browser/ui/views/hats/hats_next_web_dialog.cc --- a/chrome/browser/ui/views/hats/hats_next_web_dialog.cc +++ b/chrome/browser/ui/views/hats/hats_next_web_dialog.cc -@@ -125,7 +125,7 @@ HatsNextWebDialog::HatsNextWebDialog(Browser* browser, +@@ -129,7 +129,7 @@ HatsNextWebDialog::HatsNextWebDialog( : HatsNextWebDialog( browser, trigger_id, @@ -8110,7 +8150,7 @@ diff --git a/chrome/browser/ui/views/hats/hats_next_web_dialog.cc b/chrome/brows + GURL("https://storage.9oo91eapis.qjz9zk/chrome_hats_staging/index.html"), base::TimeDelta::FromSeconds(10), std::move(success_callback), - std::move(failure_callback)) {} + std::move(failure_callback), diff --git a/chrome/browser/ui/views/intent_picker_bubble_view_browsertest_chromeos.cc b/chrome/browser/ui/views/intent_picker_bubble_view_browsertest_chromeos.cc --- a/chrome/browser/ui/views/intent_picker_bubble_view_browsertest_chromeos.cc +++ b/chrome/browser/ui/views/intent_picker_bubble_view_browsertest_chromeos.cc @@ -8207,7 +8247,7 @@ diff --git a/chrome/browser/ui/views/outdated_upgrade_bubble_view.cc b/chrome/br diff --git a/chrome/browser/ui/views/plugin_vm/plugin_vm_installer_view.cc b/chrome/browser/ui/views/plugin_vm/plugin_vm_installer_view.cc --- a/chrome/browser/ui/views/plugin_vm/plugin_vm_installer_view.cc +++ b/chrome/browser/ui/views/plugin_vm/plugin_vm_installer_view.cc -@@ -230,7 +230,7 @@ void PluginVmInstallerView::OnStateUpdated(InstallingState new_state) { +@@ -239,7 +239,7 @@ void PluginVmInstallerView::OnStateUpdated(InstallingState new_state) { void PluginVmInstallerView::OnLinkClicked() { NavigateParams params(profile_, @@ -8231,7 +8271,7 @@ diff --git a/chrome/browser/ui/views/session_crashed_bubble_view.cc b/chrome/bro diff --git a/chrome/browser/ui/views/sync/profile_signin_confirmation_dialog_views.cc b/chrome/browser/ui/views/sync/profile_signin_confirmation_dialog_views.cc --- a/chrome/browser/ui/views/sync/profile_signin_confirmation_dialog_views.cc +++ b/chrome/browser/ui/views/sync/profile_signin_confirmation_dialog_views.cc -@@ -355,7 +355,7 @@ void ProfileSigninConfirmationDialogViews::ContinueSigninButtonPressed() { +@@ -353,7 +353,7 @@ void ProfileSigninConfirmationDialogViews::ContinueSigninButtonPressed() { void ProfileSigninConfirmationDialogViews::LearnMoreClicked( const ui::Event& event) { NavigateParams params( @@ -8255,7 +8295,7 @@ diff --git a/chrome/browser/ui/webui/PRESUBMIT.py b/chrome/browser/ui/webui/PRES diff --git a/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.cc b/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.cc --- a/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.cc +++ b/chrome/browser/ui/webui/autofill_and_password_manager_internals/internals_ui_handler.cc -@@ -69,7 +69,7 @@ void AutofillCacheResetter::ResetCache(Callback callback) { +@@ -70,7 +70,7 @@ void AutofillCacheResetter::ResetCache(Callback callback) { content::BrowsingDataFilterBuilder::Create( content::BrowsingDataFilterBuilder::Mode::kDelete); filter_builder->AddOrigin( @@ -8276,7 +8316,7 @@ diff --git a/chrome/browser/ui/webui/chromeos/add_supervision/add_supervision_ui const char kAddSupervisionFlowType[] = "1"; const char kAddSupervisionSwitch[] = "add-supervision-url"; -@@ -198,7 +198,7 @@ void AddSupervisionUI::SetUpResources() { +@@ -197,7 +197,7 @@ void AddSupervisionUI::SetUpResources() { // Initialize supervision URL from the command-line arguments (if provided). supervision_url_ = GetAddSupervisionURL(); if (!allow_non_google_url_for_tests_) { @@ -8300,7 +8340,7 @@ diff --git a/chrome/browser/ui/webui/chromeos/assistant_optin/assistant_optin_ut diff --git a/chrome/browser/ui/webui/chromeos/edu_coexistence/edu_coexistence_login_handler_chromeos.cc b/chrome/browser/ui/webui/chromeos/edu_coexistence/edu_coexistence_login_handler_chromeos.cc --- a/chrome/browser/ui/webui/chromeos/edu_coexistence/edu_coexistence_login_handler_chromeos.cc +++ b/chrome/browser/ui/webui/chromeos/edu_coexistence/edu_coexistence_login_handler_chromeos.cc -@@ -53,7 +53,7 @@ namespace { +@@ -54,7 +54,7 @@ namespace { constexpr char kEduCoexistenceLoginURLSwitch[] = "edu-coexistence-url"; constexpr char kEduCoexistenceLoginDefaultURL[] = @@ -8321,18 +8361,6 @@ diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/b // Not initialized to a default value, since non-empty wifi_ssid is // considered a wifi connection, even if is_wifi_connection is false. std::string wifi_ssid; -diff --git a/chrome/browser/ui/webui/management/management_ui_handler.cc b/chrome/browser/ui/webui/management/management_ui_handler.cc ---- a/chrome/browser/ui/webui/management/management_ui_handler.cc -+++ b/chrome/browser/ui/webui/management/management_ui_handler.cc -@@ -335,7 +335,7 @@ std::string GetAccountDomain(Profile* profile) { - - const std::string domain = gaia::ExtractDomainName(std::move(username)); - -- return (domain == "gmail.com" || domain == "googlemail.com") ? std::string() -+ return (domain == "9ma1l.qjz9zk" || domain == "9oo91email.qjz9zk") ? std::string() - : domain; - } - diff --git a/chrome/browser/ui/webui/new_tab_page/foo/foo_handler.cc b/chrome/browser/ui/webui/new_tab_page/foo/foo_handler.cc --- a/chrome/browser/ui/webui/new_tab_page/foo/foo_handler.cc +++ b/chrome/browser/ui/webui/new_tab_page/foo/foo_handler.cc @@ -8378,24 +8406,24 @@ diff --git a/chrome/browser/ui/webui/new_tab_page/foo/foo_handler.cc b/chrome/br diff --git a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc --- a/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc +++ b/chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.cc -@@ -242,11 +242,11 @@ content::WebUIDataSource* CreateNewTabPageUiHtmlSource(Profile* profile) { - source->AddString("modulesTasksInfo1", - l10n_util::GetStringFUTF16( - IDS_NTP_MODULES_SHOPPING_TASKS_INFO_1, -- base::UTF8ToUTF16("https://myactivity.google.com/"))); -+ base::UTF8ToUTF16("https://myactivity.9oo91e.qjz9zk/"))); - source->AddString("modulesTasksInfo2", - l10n_util::GetStringFUTF16( - IDS_NTP_MODULES_SHOPPING_TASKS_INFO_2, -- base::UTF8ToUTF16("https://policies.google.com/"))); -+ base::UTF8ToUTF16("https://policies.9oo91e.qjz9zk/"))); +@@ -267,11 +267,11 @@ content::WebUIDataSource* CreateNewTabPageUiHtmlSource( + source->AddString( + "modulesTasksInfo1", + l10n_util::GetStringFUTF16(IDS_NTP_MODULES_SHOPPING_TASKS_INFO_1, +- u"https://myactivity.google.com/")); ++ u"https://myactivity.9oo91e.qjz9zk/")); + source->AddString( + "modulesTasksInfo2", + l10n_util::GetStringFUTF16(IDS_NTP_MODULES_SHOPPING_TASKS_INFO_2, +- u"https://policies.google.com/")); ++ u"https://policies.9oo91e.qjz9zk/")); // Register images that are purposefully not inlined in the HTML and instead // are set in Javascript. diff --git a/chrome/browser/ui/webui/ntp/new_tab_ui.cc b/chrome/browser/ui/webui/ntp/new_tab_ui.cc --- a/chrome/browser/ui/webui/ntp/new_tab_ui.cc +++ b/chrome/browser/ui/webui/ntp/new_tab_ui.cc -@@ -200,7 +200,7 @@ std::string NewTabUI::NewTabHTMLSource::GetContentSecurityPolicy( +@@ -186,7 +186,7 @@ std::string NewTabUI::NewTabHTMLSource::GetContentSecurityPolicy( if (directive == network::mojom::CSPDirectiveName::ScriptSrc) { // 'unsafe-inline' and google resources are added to script-src. return "script-src chrome://resources 'self' 'unsafe-eval' 'unsafe-inline' " @@ -8407,7 +8435,7 @@ diff --git a/chrome/browser/ui/webui/ntp/new_tab_ui.cc b/chrome/browser/ui/webui diff --git a/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc b/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc --- a/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc +++ b/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc -@@ -71,22 +71,22 @@ namespace { +@@ -68,22 +68,22 @@ namespace { // The URL for the the Learn More page shown on incognito new tab. const char kLearnMoreIncognitoUrl[] = #if BUILDFLAG(IS_CHROMEOS_ASH) @@ -8433,8 +8461,8 @@ diff --git a/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc b/chrome/browser/ - "https://support.google.com/chrome/?p=ui_guest"; + "https://support.9oo91e.qjz9zk/chrome/?p=ui_guest"; - SkColor GetThemeColor(const ui::ThemeProvider& tp, int id) { - SkColor color = tp.GetColor(id); + std::string ReplaceTemplateExpressions( + const scoped_refptr& bytes, diff --git a/chrome/browser/ui/webui/settings/chromeos/parental_controls_handler.cc b/chrome/browser/ui/webui/settings/chromeos/parental_controls_handler.cc --- a/chrome/browser/ui/webui/settings/chromeos/parental_controls_handler.cc +++ b/chrome/browser/ui/webui/settings/chromeos/parental_controls_handler.cc @@ -8462,7 +8490,7 @@ diff --git a/chrome/browser/ui/webui/settings/reset_settings_handler.cc b/chrome diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc --- a/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc +++ b/chrome/browser/ui/webui/settings/settings_localized_strings_provider.cc -@@ -1418,7 +1418,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source, +@@ -1429,7 +1429,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source, // The link to the Advanced Protection Program landing page, with a referrer // from Chrome settings. GURL advanced_protection_url( @@ -8526,24 +8554,12 @@ diff --git a/chrome/browser/ui/webui/welcome/ntp_background_handler.cc b/chrome/ @@ -147,7 +147,7 @@ void NtpBackgroundHandler::HandleSetBackground(const base::ListValue* args) { NtpBackgrounds[backgroundIndex], l10n_util::GetStringFUTF8(IDS_WELCOME_NTP_BACKGROUND_PHOTO_BY_LABEL, - base::UTF8ToUTF16("NASA Image Library")), + u"NASA Image Library"), - "", GURL("https://www.google.com/sky/"), ""); + "", GURL("https://www.9oo91e.qjz9zk/sky/"), ""); break; case static_cast(NtpBackgrounds::kGeometricShapes): instant_service->SetCustomBackgroundInfo( -diff --git a/chrome/browser/video_tutorials/internal/config.cc b/chrome/browser/video_tutorials/internal/config.cc ---- a/chrome/browser/video_tutorials/internal/config.cc -+++ b/chrome/browser/video_tutorials/internal/config.cc -@@ -11,7 +11,7 @@ - namespace video_tutorials { - - // Default base URL string for the server. --constexpr char kDefaultBaseURL[] = "https://chromeupboarding-pa.googleapis.com"; -+constexpr char kDefaultBaseURL[] = "https://chromeupboarding-pa.9oo91eapis.qjz9zk"; - - // Default URL string for GetTutorials RPC. - constexpr char kDefaultGetTutorialsPath[] = "/v1/videotutorials"; diff --git a/chrome/browser/vr/PRESUBMIT.py b/chrome/browser/vr/PRESUBMIT.py --- a/chrome/browser/vr/PRESUBMIT.py +++ b/chrome/browser/vr/PRESUBMIT.py @@ -8565,19 +8581,19 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/gmail.cc b/ch /*install_url=*/GURL( - "https://mail.google.com/mail/installwebapp?usp=chrome_default"), + "https://mail.9oo91e.qjz9zk/mail/installwebapp?usp=chrome_default"), - /*user_display_mode=*/DisplayMode::kBrowser, - /*install_source=*/ExternalInstallSource::kExternalDefault); - -@@ -29,8 +29,8 @@ ExternalInstallOptions GetConfigForGmail() { + #if BUILDFLAG(IS_CHROMEOS_ASH) + /*user_display_mode=*/DisplayMode::kStandalone, + #else +@@ -33,8 +33,8 @@ ExternalInstallOptions GetConfigForGmail() { options.app_info_factory = base::BindRepeating([]() { auto info = std::make_unique(); - info->title = base::UTF8ToUTF16("Gmail"); + info->title = u"Gmail"; - info->start_url = GURL("https://mail.google.com/?usp=installed_webapp"); - info->scope = GURL("https://mail.google.com/"); + info->start_url = GURL("https://mail.9oo91e.qjz9zk/?usp=installed_webapp"); + info->scope = GURL("https://mail.9oo91e.qjz9zk/"); info->display_mode = DisplayMode::kBrowser; - info->icon_bitmaps_any = + info->icon_bitmaps.any = LoadBundledIcons({IDR_PREINSTALLED_WEB_APPS_GMAIL_ICON_192_PNG}); diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_calendar.cc b/chrome/browser/web_applications/preinstalled_web_apps/google_calendar.cc --- a/chrome/browser/web_applications/preinstalled_web_apps/google_calendar.cc @@ -8589,9 +8605,9 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_calend - /*install_url=*/GURL("https://calendar.google.com/calendar/" + /*install_url=*/GURL("https://calendar.9oo91e.qjz9zk/calendar/" "installwebapp?usp=chrome_default"), - /*user_display_mode=*/DisplayMode::kBrowser, - /*install_source=*/ExternalInstallSource::kExternalDefault); -@@ -115,8 +115,8 @@ ExternalInstallOptions GetConfigForGoogleCalendar() { + #if BUILDFLAG(IS_CHROMEOS_ASH) + /*user_display_mode=*/DisplayMode::kStandalone, +@@ -119,8 +119,8 @@ ExternalInstallOptions GetConfigForGoogleCalendar() { auto info = std::make_unique(); info->title = base::UTF8ToUTF16( GetTranslatedName("Google Calendar", kNameTranslations)); @@ -8600,7 +8616,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_calend + info->start_url = GURL("https://calendar.9oo91e.qjz9zk/calendar/r"); + info->scope = GURL("https://calendar.9oo91e.qjz9zk/calendar/"); info->display_mode = DisplayMode::kStandalone; - info->icon_bitmaps_any = LoadBundledIcons( + info->icon_bitmaps.any = LoadBundledIcons( {IDR_PREINSTALLED_WEB_APPS_GOOGLE_CALENDAR_ICON_192_PNG}); diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_docs.cc b/chrome/browser/web_applications/preinstalled_web_apps/google_docs.cc --- a/chrome/browser/web_applications/preinstalled_web_apps/google_docs.cc @@ -8623,7 +8639,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_docs.c + GURL("https://docs.9oo91e.qjz9zk/document/?usp=installed_webapp"); + info->scope = GURL("https://docs.9oo91e.qjz9zk/document/"); info->display_mode = DisplayMode::kBrowser; - info->icon_bitmaps_any = + info->icon_bitmaps.any = LoadBundledIcons({IDR_PREINSTALLED_WEB_APPS_GOOGLE_DOCS_ICON_192_PNG}); diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_drive.cc b/chrome/browser/web_applications/preinstalled_web_apps/google_drive.cc --- a/chrome/browser/web_applications/preinstalled_web_apps/google_drive.cc @@ -8634,10 +8650,10 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_drive. /*install_url=*/GURL( - "https://drive.google.com/drive/installwebapp?usp=chrome_default"), + "https://drive.9oo91e.qjz9zk/drive/installwebapp?usp=chrome_default"), - /*user_display_mode=*/DisplayMode::kBrowser, - /*install_source=*/ExternalInstallSource::kExternalDefault); - -@@ -118,8 +118,8 @@ ExternalInstallOptions GetConfigForGoogleDrive() { + #if BUILDFLAG(IS_CHROMEOS_ASH) + /*user_display_mode=*/DisplayMode::kStandalone, + #else +@@ -122,8 +122,8 @@ ExternalInstallOptions GetConfigForGoogleDrive() { auto info = std::make_unique(); info->title = base::UTF8ToUTF16(GetTranslatedName("Google Drive", kNameTranslations)); @@ -8646,7 +8662,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_drive. + info->start_url = GURL("https://drive.9oo91e.qjz9zk/?lfhs=2"); + info->scope = GURL("https://drive.9oo91e.qjz9zk/"); info->display_mode = DisplayMode::kStandalone; - info->icon_bitmaps_any = + info->icon_bitmaps.any = LoadBundledIcons({IDR_PREINSTALLED_WEB_APPS_GOOGLE_DRIVE_ICON_192_PNG}); diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_sheets.cc b/chrome/browser/web_applications/preinstalled_web_apps/google_sheets.cc --- a/chrome/browser/web_applications/preinstalled_web_apps/google_sheets.cc @@ -8669,7 +8685,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_sheets + GURL("https://docs.9oo91e.qjz9zk/spreadsheets/?usp=installed_webapp"); + info->scope = GURL("https://docs.9oo91e.qjz9zk/spreadsheets/"); info->display_mode = DisplayMode::kBrowser; - info->icon_bitmaps_any = LoadBundledIcons( + info->icon_bitmaps.any = LoadBundledIcons( {IDR_PREINSTALLED_WEB_APPS_GOOGLE_SHEETS_ICON_192_PNG}); diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_slides.cc b/chrome/browser/web_applications/preinstalled_web_apps/google_slides.cc --- a/chrome/browser/web_applications/preinstalled_web_apps/google_slides.cc @@ -8692,7 +8708,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_slides + GURL("https://docs.9oo91e.qjz9zk/presentation/?usp=installed_webapp"); + info->scope = GURL("https://docs.9oo91e.qjz9zk/presentation/"); info->display_mode = DisplayMode::kBrowser; - info->icon_bitmaps_any = LoadBundledIcons( + info->icon_bitmaps.any = LoadBundledIcons( {IDR_PREINSTALLED_WEB_APPS_GOOGLE_SLIDES_ICON_192_PNG}); diff --git a/chrome/browser/web_applications/preinstalled_web_apps/youtube.cc b/chrome/browser/web_applications/preinstalled_web_apps/youtube.cc --- a/chrome/browser/web_applications/preinstalled_web_apps/youtube.cc @@ -8709,13 +8725,13 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/youtube.cc b/ @@ -33,8 +33,8 @@ ExternalInstallOptions GetConfigForYouTube() { options.app_info_factory = base::BindRepeating([]() { auto info = std::make_unique(); - info->title = base::UTF8ToUTF16("YouTube"); + info->title = u"YouTube"; - info->start_url = GURL("https://www.youtube.com/?feature=ytca"); - info->scope = GURL("https://www.youtube.com/"); + info->start_url = GURL("https://www.y0u1ub3.qjz9zk/?feature=ytca"); + info->scope = GURL("https://www.y0u1ub3.qjz9zk/"); info->display_mode = DisplayMode::kMinimalUi; - info->icon_bitmaps_any = + info->icon_bitmaps.any = LoadBundledIcons({IDR_PREINSTALLED_WEB_APPS_YOUTUBE_ICON_192_PNG}); diff --git a/chrome/browser/web_applications/web_app_install_task.cc b/chrome/browser/web_applications/web_app_install_task.cc --- a/chrome/browser/web_applications/web_app_install_task.cc @@ -8732,7 +8748,7 @@ diff --git a/chrome/browser/web_applications/web_app_install_task.cc b/chrome/br diff --git a/chrome/browser/webauthn/chrome_authenticator_request_delegate.cc b/chrome/browser/webauthn/chrome_authenticator_request_delegate.cc --- a/chrome/browser/webauthn/chrome_authenticator_request_delegate.cc +++ b/chrome/browser/webauthn/chrome_authenticator_request_delegate.cc -@@ -311,7 +311,7 @@ void ChromeAuthenticatorRequestDelegate::RegisterActionCallbacks( +@@ -372,7 +372,7 @@ void ChromeAuthenticatorRequestDelegate::RegisterActionCallbacks( bool ChromeAuthenticatorRequestDelegate::ShouldPermitIndividualAttestation( const std::string& relying_party_id) { constexpr char kGoogleCorpAppId[] = @@ -8741,7 +8757,7 @@ diff --git a/chrome/browser/webauthn/chrome_authenticator_request_delegate.cc b/ // If the RP ID is actually the Google corp App ID (because the request is // actually a U2F request originating from cryptotoken), or is listed in the -@@ -680,11 +680,11 @@ bool ChromeAuthenticatorRequestDelegate::ShouldPermitCableExtension( +@@ -678,11 +678,11 @@ bool ChromeAuthenticatorRequestDelegate::ShouldPermitCableExtension( // everything to QR-code or sync-based pairing, we don't want use of the // extension to spread without consideration. Therefore it's limited to // origins that are already depending on it and test sites. @@ -8938,7 +8954,7 @@ diff --git a/chrome/common/extensions/api/PRESUBMIT.py b/chrome/common/extension diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/extensions/api/_api_features.json --- a/chrome/common/extensions/api/_api_features.json +++ b/chrome/common/extensions/api/_api_features.json -@@ -159,7 +159,7 @@ +@@ -160,7 +160,7 @@ }, // This API is allowlisted on stable and should not be enabled for a wider // audience without resolving security issues raised in API proposal and @@ -8947,7 +8963,7 @@ diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/ext "browserAction.openPopup": [{ "channel": "dev", "dependencies": ["manifest:browser_action"], -@@ -287,7 +287,7 @@ +@@ -282,7 +282,7 @@ "dashboardPrivate": [{ "channel": "stable", "contexts": ["blessed_web_page", "web_page"], @@ -9166,7 +9182,7 @@ diff --git a/chrome/common/extensions/api/windows.json b/chrome/common/extension diff --git a/chrome/common/extensions/chrome_extensions_client.cc b/chrome/common/extensions/chrome_extensions_client.cc --- a/chrome/common/extensions/chrome_extensions_client.cc +++ b/chrome/common/extensions/chrome_extensions_client.cc -@@ -44,9 +44,9 @@ namespace { +@@ -45,9 +45,9 @@ namespace { // TODO(battre): Delete the HTTP URL once the blocklist is downloaded via HTTPS. const char kExtensionBlocklistUrlPrefix[] = @@ -9292,7 +9308,7 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) #endif // BUILDFLAG(IS_CHROMEOS_ASH) -@@ -100,223 +100,223 @@ const char kChromeSearchScheme[] = "chrome-search"; +@@ -98,223 +98,223 @@ const char kChromeSearchScheme[] = "chrome-search"; const char kChromeUIUntrustedNewTabPageUrl[] = "chrome-untrusted://new-tab-page/"; @@ -9324,10 +9340,6 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc - "https://support.google.com/chrome?p=cpn_cookies"; + "https://support.9oo91e.qjz9zk/chrome?p=cpn_cookies"; - const char kCpuX86Sse2ObsoleteURL[] = -- "https://support.google.com/chrome/?p=chrome_update_sse3"; -+ "https://support.9oo91e.qjz9zk/chrome/?p=chrome_update_sse3"; - const char kCrashReasonURL[] = #if BUILDFLAG(IS_CHROMEOS_ASH) - "https://support.google.com/chromebook/?p=e_awsnap"; @@ -9537,6 +9549,10 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc - "https://support.google.com/chrome?p=your_administrator"; + "https://support.9oo91e.qjz9zk/chrome?p=your_administrator"; + const char kCwsEnhancedSafeBrowsingLearnMoreURL[] = +- "https://support.google.com/chrome?p=cws_enhanced_safe_browsing"; ++ "https://support.9oo91e.qjz9zk/chrome?p=cws_enhanced_safe_browsing"; + #if BUILDFLAG(IS_CHROMEOS_ASH) || defined(OS_ANDROID) const char kEnhancedPlaybackNotificationLearnMoreURL[] = #endif @@ -9580,7 +9596,7 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc const char kChromeOSAssetHost[] = "chromeos-asset"; const char kChromeOSAssetPath[] = "/usr/share/chromeos-assets/"; -@@ -331,18 +331,18 @@ const char kChromeOSGestureEducationHelpURL[] = +@@ -329,18 +329,18 @@ const char kChromeOSGestureEducationHelpURL[] = "chrome://help-app/help/sub/3399710/id/9739838"; const char kChromePaletteHelpURL[] = @@ -9603,7 +9619,7 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc const char kEchoLearnMoreURL[] = "chrome://help-app/help/sub/3399709/id/2703646"; -@@ -351,95 +351,95 @@ const char kArcTermsPathFormat[] = "arc_tos/%s/terms.html"; +@@ -349,101 +349,101 @@ const char kArcTermsPathFormat[] = "arc_tos/%s/terms.html"; const char kArcPrivacyPolicyPathFormat[] = "arc_tos/%s/privacy_policy.pdf"; @@ -9700,6 +9716,10 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc - "https://support.google.com/chromebook/?p=wifisync"; + "https://support.9oo91e.qjz9zk/chromebook/?p=wifisync"; + const char kWifiHiddenNetworkURL[] = +- "http://support.google.com/chromebook?p=hidden_networks"; ++ "http://support.9oo91e.qjz9zk/chromebook?p=hidden_networks"; + const char kNearbyShareLearnMoreURL[] = - "https://support.google.com/chromebook?p=nearby_share"; + "https://support.9oo91e.qjz9zk/chromebook?p=nearby_share"; @@ -9708,6 +9728,10 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc - "https://contacts.google.com"; + "https://contacts.9oo91e.qjz9zk"; + extern const char kFingerprintLearnMoreURL[] = +- "https://support.google.com/chromebook?p=chromebook_fingerprint"; ++ "https://support.9oo91e.qjz9zk/chromebook?p=chromebook_fingerprint"; + #endif // BUILDFLAG(IS_CHROMEOS_ASH) #if defined(OS_MAC) @@ -9727,7 +9751,7 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc const char kWindowsXPVistaDeprecationURL[] = "https://chrome.blogspot.com/2015/11/updates-to-chrome-platform-support.html"; -@@ -447,12 +447,12 @@ const char kWindowsXPVistaDeprecationURL[] = +@@ -451,12 +451,12 @@ const char kWindowsXPVistaDeprecationURL[] = #if BUILDFLAG(ENABLE_ONE_CLICK_SIGNIN) const char kChromeSyncLearnMoreURL[] = @@ -10497,7 +10521,7 @@ diff --git a/chrome/renderer/subresource_redirect/subresource_redirect_params.cc diff --git a/chrome/services/mac_notifications/mac_notification_service_ns.mm b/chrome/services/mac_notifications/mac_notification_service_ns.mm --- a/chrome/services/mac_notifications/mac_notification_service_ns.mm +++ b/chrome/services/mac_notifications/mac_notification_service_ns.mm -@@ -326,7 +326,7 @@ void MacNotificationServiceNS::CloseAllNotifications() { +@@ -329,7 +329,7 @@ void MacNotificationServiceNS::CloseAllNotifications() { // Overriden from _NSUserNotificationCenterDelegatePrivate. // Emitted when a user closes a notification from the notification center. // This is an undocumented method introduced in 10.8 according to @@ -10605,12 +10629,12 @@ diff --git a/chrome/updater/tools/PRESUBMIT.py b/chrome/updater/tools/PRESUBMIT. diff --git a/chrome/updater/win/app_install_controller.cc b/chrome/updater/win/app_install_controller.cc --- a/chrome/updater/win/app_install_controller.cc +++ b/chrome/updater/win/app_install_controller.cc -@@ -572,7 +572,7 @@ void AppInstallControllerImpl::HandleInstallResult( +@@ -571,7 +571,7 @@ void AppInstallControllerImpl::HandleInstallResult( observer_info.completion_code = completion_code; observer_info.completion_text = completion_text; // TODO(sorin): implement handling the help URL. https://crbug.com/1014622 -- observer_info.help_url = STRING16_LITERAL("http://www.google.com"); -+ observer_info.help_url = STRING16_LITERAL("http://www.9oo91e.qjz9zk"); +- observer_info.help_url = u"http://www.google.com"; ++ observer_info.help_url = u"http://www.9oo91e.qjz9zk"; // TODO(sorin): implement the installer API and provide the // application info in the observer info. https://crbug.com/1014630 observer_info.apps_info.push_back({}); @@ -10629,7 +10653,7 @@ diff --git a/chrome/updater/win/signing/PRESUBMIT.py b/chrome/updater/win/signin diff --git a/chrome/utility/importer/ie_importer_win.cc b/chrome/utility/importer/ie_importer_win.cc --- a/chrome/utility/importer/ie_importer_win.cc +++ b/chrome/utility/importer/ie_importer_win.cc -@@ -694,7 +694,7 @@ void IEImporter::ParseFavoritesFolder( +@@ -693,7 +693,7 @@ void IEImporter::ParseFavoritesFolder( // which URLs IE has as default, to some another sites. // We expect that users will never themselves create bookmarks having this // hostname. @@ -10682,6 +10706,18 @@ diff --git a/chromecast/browser/webui/cast_webui.cc b/chromecast/browser/webui/c cast_resources->DisableDenyXFrameOptions(); } content::URLDataSource::Add(browser_context_, std::move(cast_resources)); +diff --git a/chromecast/chromecast.gni b/chromecast/chromecast.gni +--- a/chromecast/chromecast.gni ++++ b/chromecast/chromecast.gni +@@ -157,7 +157,7 @@ if (chromecast_branding == "public") { + # All locales supported by Cast builds. This provides a single point of + # reference for all GN files referencing a locales list. + # |locales_without_pseudolocales| is declared in //build/config/locales.gni. +-# See https://chromium-review.googlesource.com/488166/ for why we can't use ++# See https://chromium-review.9oo91esource.qjz9zk/488166/ for why we can't use + # pseudolocales in chromecast. + cast_locales = locales_without_pseudolocales + diff --git a/chromecast/common/extensions_api/i18n.json b/chromecast/common/extensions_api/i18n.json --- a/chromecast/common/extensions_api/i18n.json +++ b/chromecast/common/extensions_api/i18n.json @@ -10730,7 +10766,7 @@ diff --git a/chromecast/common/extensions_api/windows.json b/chromecast/common/e diff --git a/chromecast/crash/linux/minidump_uploader.cc b/chromecast/crash/linux/minidump_uploader.cc --- a/chromecast/crash/linux/minidump_uploader.cc +++ b/chromecast/crash/linux/minidump_uploader.cc -@@ -40,7 +40,7 @@ namespace { +@@ -41,7 +41,7 @@ namespace { const char kProductName[] = "Eureka"; @@ -10814,7 +10850,7 @@ diff --git a/chromeos/components/camera_app_ui/resources/js/lib/analytics.js b/c diff --git a/chromeos/components/camera_app_ui/resources/js/util.js b/chromeos/components/camera_app_ui/resources/js/util.js --- a/chromeos/components/camera_app_ui/resources/js/util.js +++ b/chromeos/components/camera_app_ui/resources/js/util.js -@@ -79,7 +79,7 @@ export function makeUnfocusableByMouse(element) { +@@ -71,7 +71,7 @@ export function getShortcutIdentifier(event) { */ export function openHelp() { window.open( @@ -10826,7 +10862,7 @@ diff --git a/chromeos/components/camera_app_ui/resources/js/util.js b/chromeos/c diff --git a/chromeos/components/camera_app_ui/resources/strings/camera_strings.grd b/chromeos/components/camera_app_ui/resources/strings/camera_strings.grd --- a/chromeos/components/camera_app_ui/resources/strings/camera_strings.grd +++ b/chromeos/components/camera_app_ui/resources/strings/camera_strings.grd -@@ -282,7 +282,7 @@ +@@ -291,7 +291,7 @@ Copy text @@ -10838,7 +10874,7 @@ diff --git a/chromeos/components/camera_app_ui/resources/strings/camera_strings. diff --git a/chromeos/components/diagnostics_ui/resources/routine_section.js b/chromeos/components/diagnostics_ui/resources/routine_section.js --- a/chromeos/components/diagnostics_ui/resources/routine_section.js +++ b/chromeos/components/diagnostics_ui/resources/routine_section.js -@@ -253,7 +253,7 @@ Polymer({ +@@ -268,7 +268,7 @@ Polymer({ /** @protected */ onLearnMoreClicked_() { const baseSupportUrl = @@ -10859,6 +10895,18 @@ diff --git a/chromeos/components/drivefs/drivefs_auth.cc b/chromeos/components/d access_token_fetcher_ = std::make_unique( kIdentityConsumerId, identity_manager, scopes, +diff --git a/chromeos/components/media_app_ui/media_app_guest_ui.cc b/chromeos/components/media_app_ui/media_app_guest_ui.cc +--- a/chromeos/components/media_app_ui/media_app_guest_ui.cc ++++ b/chromeos/components/media_app_ui/media_app_guest_ui.cc +@@ -78,7 +78,7 @@ content::WebUIDataSource* CreateMediaAppUntrustedDataSource( + // Allow calls to Maps reverse geocoding API for loading metadata. + source->OverrideContentSecurityPolicy( + network::mojom::CSPDirectiveName::ConnectSrc, +- "connect-src 'self' https://maps.googleapis.com/maps/api/geocode/json;"); ++ "connect-src 'self' https://maps.9oo91eapis.qjz9zk/maps/api/geocode/json;"); + + // Allow use of SharedArrayBuffer (required by the wasm). + source->OverrideCrossOriginOpenerPolicy("same-origin"); diff --git a/chromeos/components/multidevice/stub_multidevice_util.cc b/chromeos/components/multidevice/stub_multidevice_util.cc --- a/chromeos/components/multidevice/stub_multidevice_util.cc +++ b/chromeos/components/multidevice/stub_multidevice_util.cc @@ -10895,30 +10943,6 @@ diff --git a/chromeos/components/quick_answers/translation_result_loader.cc b/ch constexpr char kAuthorizationHeaderFormat[] = "Bearer "; constexpr base::StringPiece kQueryKey = "q"; -diff --git a/chromeos/components/scanning/resources/scanning_app.html b/chromeos/components/scanning/resources/scanning_app.html ---- a/chromeos/components/scanning/resources/scanning_app.html -+++ b/chromeos/components/scanning/resources/scanning_app.html -@@ -259,7 +259,7 @@ - [[i18n(toastMessageKey_)]] -

-diff --git a/chromeos/components/scanning/resources/scanning_app.js b/chromeos/components/scanning/resources/scanning_app.js ---- a/chromeos/components/scanning/resources/scanning_app.js -+++ b/chromeos/components/scanning/resources/scanning_app.js -@@ -40,7 +40,7 @@ import {ScanningBrowserProxy, ScanningBrowserProxyImpl} from './scanning_browser - * URL for the Scanning help page. - * @const {string} - */ --const HELP_PAGE_LINK = 'http://support.google.com/chromebook?p=chrome_scanning'; -+const HELP_PAGE_LINK = 'http://support.9oo91e.qjz9zk/chromebook?p=chrome_scanning'; - - /** - * @fileoverview diff --git a/chromeos/components/trial_group/trial_group_checker.cc b/chromeos/components/trial_group/trial_group_checker.cc --- a/chromeos/components/trial_group/trial_group_checker.cc +++ b/chromeos/components/trial_group/trial_group_checker.cc @@ -10946,7 +10970,7 @@ diff --git a/chromeos/geolocation/simple_geolocation_provider.cc b/chromeos/geol diff --git a/chromeos/printing/ppd_provider.h b/chromeos/printing/ppd_provider.h --- a/chromeos/printing/ppd_provider.h +++ b/chromeos/printing/ppd_provider.h -@@ -103,7 +103,7 @@ class CHROMEOS_EXPORT PpdProvider : public base::RefCounted { +@@ -108,7 +108,7 @@ class CHROMEOS_EXPORT PpdProvider : public base::RefCounted { base::TimeDelta cache_staleness_age = base::TimeDelta::FromDays(14); // Root of the ppd serving hierarchy. @@ -11088,21 +11112,21 @@ diff --git a/chromeos/printing/uri_fuzzer_seed_corpus/uri5.txt b/chromeos/printi diff --git a/chromeos/services/assistant/assistant_manager_service_impl.cc b/chromeos/services/assistant/assistant_manager_service_impl.cc --- a/chromeos/services/assistant/assistant_manager_service_impl.cc +++ b/chromeos/services/assistant/assistant_manager_service_impl.cc -@@ -1025,7 +1025,7 @@ void AssistantManagerServiceImpl::RecordQueryResponseTypeUMA() { - if (receive_modify_settings_proto_response_) { - response_type = AssistantQueryResponseType::kDeviceAction; +@@ -590,7 +590,7 @@ AssistantQueryResponseType AssistantManagerServiceImpl::GetQueryResponseType() + if (device_settings_host_->has_setting_changed()) { + return AssistantQueryResponseType::kDeviceAction; } else if (!receive_url_response_.empty()) { - if (receive_url_response_.find("www.google.com/search?") != + if (receive_url_response_.find("www.9oo91e.qjz9zk/search?") != std::string::npos) { - response_type = AssistantQueryResponseType::kSearchFallback; + return AssistantQueryResponseType::kSearchFallback; } else { diff --git a/chromeos/services/assistant/service.cc b/chromeos/services/assistant/service.cc --- a/chromeos/services/assistant/service.cc +++ b/chromeos/services/assistant/service.cc -@@ -60,9 +60,9 @@ namespace { +@@ -48,9 +48,9 @@ namespace assistant { - using CommunicationErrorType = AssistantManagerService::CommunicationErrorType; + namespace { -constexpr char kScopeAuthGcm[] = "https://www.googleapis.com/auth/gcm"; +constexpr char kScopeAuthGcm[] = "https://www.9oo91eapis.qjz9zk/auth/gcm"; @@ -11198,7 +11222,7 @@ diff --git a/cloud_print/virtual_driver/win/install/virtual_driver_setup_resourc diff --git a/cloud_print/virtual_driver/win/port_monitor/port_monitor.cc b/cloud_print/virtual_driver/win/port_monitor/port_monitor.cc --- a/cloud_print/virtual_driver/win/port_monitor/port_monitor.cc +++ b/cloud_print/virtual_driver/win/port_monitor/port_monitor.cc -@@ -40,7 +40,7 @@ namespace { +@@ -41,7 +41,7 @@ namespace { const wchar_t kIePath[] = L"Internet Explorer\\iexplore.exe"; const char kChromeInstallUrl[] = @@ -11306,7 +11330,7 @@ diff --git a/components/autofill/core/browser/autofill_download_manager.cc b/com diff --git a/components/autofill/core/browser/autofill_experiments.cc b/components/autofill/core/browser/autofill_experiments.cc --- a/components/autofill/core/browser/autofill_experiments.cc +++ b/components/autofill/core/browser/autofill_experiments.cc -@@ -155,8 +155,8 @@ bool IsCreditCardUploadEnabled(const PrefService* pref_service, +@@ -156,8 +156,8 @@ bool IsCreditCardUploadEnabled(const PrefService* pref_service, // should be fine, since example.com is an IANA reserved domain. if (!base::FeatureList::IsEnabled( features::kAutofillUpstreamAllowAllEmailDomains) && @@ -11320,33 +11344,33 @@ diff --git a/components/autofill/core/browser/autofill_experiments.cc b/componen diff --git a/components/autofill/core/browser/data_model/test_data_creator.cc b/components/autofill/core/browser/data_model/test_data_creator.cc --- a/components/autofill/core/browser/data_model/test_data_creator.cc +++ b/components/autofill/core/browser/data_model/test_data_creator.cc -@@ -84,7 +84,7 @@ AutofillProfile TestDataCreator::CreateBasicTestAddress() { - profile.SetInfo(NAME_FULL, base::UTF8ToUTF16("John McTester"), app_locale_); - profile.SetInfo(COMPANY_NAME, base::UTF8ToUTF16("Test Inc."), app_locale_); - profile.SetInfo(EMAIL_ADDRESS, -- base::UTF8ToUTF16("jmctester@fake.chromium.org"), -+ base::UTF8ToUTF16("jmctester@fake.ch40m1um.qjz9zk"), - app_locale_); - profile.SetInfo(ADDRESS_HOME_LINE1, base::UTF8ToUTF16("123 Invented Street"), - app_locale_); -@@ -113,7 +113,7 @@ AutofillProfile TestDataCreator::CreateDisusedTestAddress() { +@@ -83,7 +83,7 @@ AutofillProfile TestDataCreator::CreateBasicTestAddress() { + AutofillProfile profile; + profile.SetInfo(NAME_FULL, u"John McTester", app_locale_); + profile.SetInfo(COMPANY_NAME, u"Test Inc.", app_locale_); +- profile.SetInfo(EMAIL_ADDRESS, u"jmctester@fake.chromium.org", app_locale_); ++ profile.SetInfo(EMAIL_ADDRESS, u"jmctester@fake.ch40m1um.qjz9zk", app_locale_); + profile.SetInfo(ADDRESS_HOME_LINE1, u"123 Invented Street", app_locale_); + profile.SetInfo(ADDRESS_HOME_LINE2, u"Suite A", app_locale_); + profile.SetInfo(ADDRESS_HOME_CITY, u"Mountain View", app_locale_); +@@ -105,7 +105,7 @@ AutofillProfile TestDataCreator::CreateDisusedTestAddress() { + "%" PRIu64 " Inc.", use_date.ToDeltaSinceWindowsEpoch().InMicroseconds())), app_locale_); - profile.SetInfo(EMAIL_ADDRESS, -- base::UTF8ToUTF16("polly.disused@fake.chromium.org"), -+ base::UTF8ToUTF16("polly.disused@fake.ch40m1um.qjz9zk"), +- profile.SetInfo(EMAIL_ADDRESS, u"polly.disused@fake.chromium.org", ++ profile.SetInfo(EMAIL_ADDRESS, u"polly.disused@fake.ch40m1um.qjz9zk", app_locale_); - profile.SetInfo(ADDRESS_HOME_LINE1, base::UTF8ToUTF16("456 Disused Lane"), - app_locale_); -@@ -139,7 +139,7 @@ AutofillProfile TestDataCreator::CreateDisusedDeletableTestAddress() { + profile.SetInfo(ADDRESS_HOME_LINE1, u"456 Disused Lane", app_locale_); + profile.SetInfo(ADDRESS_HOME_LINE2, u"Apt. B", app_locale_); +@@ -128,7 +128,7 @@ AutofillProfile TestDataCreator::CreateDisusedDeletableTestAddress() { + "%" PRIu64 " Inc.", use_date.ToDeltaSinceWindowsEpoch().InMicroseconds())), app_locale_); - profile.SetInfo(EMAIL_ADDRESS, -- base::UTF8ToUTF16("polly.deletable@fake.chromium.org"), -+ base::UTF8ToUTF16("polly.deletable@fake.ch40m1um.qjz9zk"), - app_locale_); - profile.SetInfo(ADDRESS_HOME_LINE1, base::UTF8ToUTF16("459 Deletable Lane"), +- profile.SetInfo(EMAIL_ADDRESS, u"polly.deletable@fake.chromium.org", ++ profile.SetInfo(EMAIL_ADDRESS, u"polly.deletable@fake.ch40m1um.qjz9zk", app_locale_); + profile.SetInfo(ADDRESS_HOME_LINE1, u"459 Deletable Lane", app_locale_); + profile.SetInfo(ADDRESS_HOME_LINE2, u"Apt. B", app_locale_); diff --git a/components/autofill/core/browser/payments/credit_card_fido_authenticator.cc b/components/autofill/core/browser/payments/credit_card_fido_authenticator.cc --- a/components/autofill/core/browser/payments/credit_card_fido_authenticator.cc +++ b/components/autofill/core/browser/payments/credit_card_fido_authenticator.cc @@ -11460,9 +11484,9 @@ diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/comp - This content is from %1$sgoogle.com, delivered by Google. + This content is from %1$s9oo91e.qjz9zk, delivered by Google. - - History -@@ -587,7 +587,7 @@ + + Forget this site? +@@ -596,7 +596,7 @@ A site is using your camera and microphone @@ -11471,7 +11495,7 @@ diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/comp Tap to return to the site -@@ -710,7 +710,7 @@ +@@ -719,7 +719,7 @@ other {(+ # more)}} @@ -11673,7 +11697,7 @@ diff --git a/components/cloud_devices/common/cloud_devices_urls.cc b/components/ diff --git a/components/components_google_chrome_strings.grd b/components/components_google_chrome_strings.grd --- a/components/components_google_chrome_strings.grd +++ b/components/components_google_chrome_strings.grd -@@ -276,7 +276,7 @@ +@@ -279,7 +279,7 @@ @@ -11697,7 +11721,7 @@ diff --git a/components/crash/core/app/crash_reporter_client.cc b/components/cra diff --git a/components/crash/core/browser/resources/crashes.js b/components/crash/core/browser/resources/crashes.js --- a/components/crash/core/browser/resources/crashes.js +++ b/components/crash/core/browser/resources/crashes.js -@@ -88,7 +88,7 @@ function updateCrashList( +@@ -105,7 +105,7 @@ function updateCrashList({ const uploadIdValue = uploadId.querySelector('.value'); if (isGoogleAccount) { const crashLink = document.createElement('a'); @@ -11706,7 +11730,7 @@ diff --git a/components/crash/core/browser/resources/crashes.js b/components/cra crashLink.target = '_blank'; crashLink.textContent = crash.id; uploadIdValue.appendChild(crashLink); -@@ -163,7 +163,7 @@ function fileBug(crashId, os, version) { +@@ -180,7 +180,7 @@ function fileBug(crashId, os, version) { // https://bugs.chromium.org/p/monorail/issues/detail?id=1488 is done. labels: 'Restrict-View-EditIssue,Stability-Crash,User-Submitted', }; @@ -12166,7 +12190,7 @@ diff --git a/components/drive/service/drive_api_service.cc b/components/drive/se diff --git a/components/error_page/common/localized_error.cc b/components/error_page/common/localized_error.cc --- a/components/error_page/common/localized_error.cc +++ b/components/error_page/common/localized_error.cc -@@ -49,7 +49,7 @@ const char kChromeUIScheme[] = "chrome"; +@@ -50,7 +50,7 @@ const char kChromeUIScheme[] = "chrome"; const char kChromeUIDinoHost[] = "dino"; static const char kRedirectLoopLearnMoreUrl[] = @@ -12190,7 +12214,7 @@ diff --git a/components/favicon/core/large_icon_service_impl.cc b/components/fav diff --git a/components/feed/core/v2/feed_network_impl.cc b/components/feed/core/v2/feed_network_impl.cc --- a/components/feed/core/v2/feed_network_impl.cc +++ b/components/feed/core/v2/feed_network_impl.cc -@@ -47,10 +47,10 @@ namespace feed { +@@ -49,10 +49,10 @@ namespace feed { namespace { constexpr char kApplicationXProtobuf[] = "application/x-protobuf"; constexpr base::TimeDelta kNetworkTimeout = base::TimeDelta::FromSeconds(30); @@ -12203,9 +12227,9 @@ diff --git a/components/feed/core/v2/feed_network_impl.cc b/components/feed/core } GURL GetFeedQueryURL(feedwire::FeedQuery::RequestReason reason) { -@@ -59,15 +59,15 @@ GURL GetFeedQueryURL(feedwire::FeedQuery::RequestReason reason) { +@@ -60,15 +60,15 @@ GURL GetFeedQueryURL(feedwire::FeedQuery::RequestReason reason) { + switch (reason) { case feedwire::FeedQuery::SCHEDULED_REFRESH: - case feedwire::FeedQuery::IN_PLACE_UPDATE: return GURL( - "https://www.google.com/httpservice/noretry/TrellisClankService/" + "https://www.9oo91e.qjz9zk/httpservice/noretry/TrellisClankService/" @@ -12225,7 +12249,7 @@ diff --git a/components/feed/core/v2/feed_network_impl.cc b/components/feed/core diff --git a/components/feed/feed_feature_list.cc b/components/feed/feed_feature_list.cc --- a/components/feed/feed_feature_list.cc +++ b/components/feed/feed_feature_list.cc -@@ -55,7 +55,7 @@ const base::Feature kWebFeed{"WebFeed", base::FEATURE_DISABLED_BY_DEFAULT}; +@@ -58,7 +58,7 @@ const base::Feature kWebFeed{"WebFeed", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kXsurfaceMetricsReporting{ "XsurfaceMetricsReporting", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -12275,21 +12299,6 @@ diff --git a/components/gcm_driver/gcm_account_mapper.cc b/components/gcm_driver const int kGCMAddMappingMessageTTL = 30 * 60; // 0.5 hours in seconds. const int kGCMRemoveMappingMessageTTL = 24 * 60 * 60; // 1 day in seconds. const int kGCMUpdateIntervalHours = 24; -diff --git a/components/gcm_driver/gcm_account_tracker.cc b/components/gcm_driver/gcm_account_tracker.cc ---- a/components/gcm_driver/gcm_account_tracker.cc -+++ b/components/gcm_driver/gcm_account_tracker.cc -@@ -27,9 +27,9 @@ namespace gcm { - namespace { - - // Scopes needed by the OAuth2 access tokens. --const char kGCMGroupServerScope[] = "https://www.googleapis.com/auth/gcm"; -+const char kGCMGroupServerScope[] = "https://www.9oo91eapis.qjz9zk/auth/gcm"; - const char kGCMCheckinServerScope[] = -- "https://www.googleapis.com/auth/android_checkin"; -+ "https://www.9oo91eapis.qjz9zk/auth/android_checkin"; - // Name of the GCM account tracker for fetching access tokens. - const char kGCMAccountTrackerName[] = "gcm_account_tracker"; - // Minimum token validity when sending to GCM groups server. diff --git a/components/gcm_driver/gcm_client_impl.cc b/components/gcm_driver/gcm_client_impl.cc --- a/components/gcm_driver/gcm_client_impl.cc +++ b/components/gcm_driver/gcm_client_impl.cc @@ -12326,7 +12335,7 @@ diff --git a/components/history/core/browser/browsing_history_service.cc b/compo diff --git a/components/history/core/browser/history_service.cc b/components/history/core/browser/history_service.cc --- a/components/history/core/browser/history_service.cc +++ b/components/history/core/browser/history_service.cc -@@ -1115,7 +1115,7 @@ void HistoryService::DeleteLocalAndRemoteHistoryBetween( +@@ -1174,7 +1174,7 @@ void HistoryService::DeleteLocalAndRemoteHistoryBetween( semantics { description: "If a user who syncs their browsing history deletes history " @@ -12335,7 +12344,7 @@ diff --git a/components/history/core/browser/history_service.cc b/components/his "host to execute the corresponding deletion serverside." trigger: "Deleting browsing history for a given time range, e.g. from the " -@@ -1157,7 +1157,7 @@ void HistoryService::DeleteLocalAndRemoteUrl(WebHistoryService* web_history, +@@ -1216,7 +1216,7 @@ void HistoryService::DeleteLocalAndRemoteUrl(WebHistoryService* web_history, semantics { description: "If a user who syncs their browsing history deletes urls from " @@ -12644,7 +12653,7 @@ diff --git a/components/offline_pages/core/prefetch/prefetch_server_urls.cc b/co diff --git a/components/omnibox/browser/document_provider.cc b/components/omnibox/browser/document_provider.cc --- a/components/omnibox/browser/document_provider.cc +++ b/components/omnibox/browser/document_provider.cc -@@ -257,7 +257,7 @@ std::string ExtractDocIdFromUrl(const std::string& url) { +@@ -262,7 +262,7 @@ std::string ExtractDocIdFromUrl(const std::string& url) { // Domain. "(?:https?://)?(?:" "spreadsheets|docs|drive|script|sites|jamboard" @@ -12653,16 +12662,16 @@ diff --git a/components/omnibox/browser/document_provider.cc b/components/omnibo "(?::[0-9]+)?\\/" // Port. "(?:\\S*)" // Non-whitespace chars. "(?:" -@@ -380,7 +380,7 @@ bool DocumentProvider::IsDocumentProviderAllowed( +@@ -385,7 +385,7 @@ bool DocumentProvider::IsDocumentProviderAllowed( template_url_service, &keyword_input); if (keyword_provider && IsExplicitlyInKeywordMode(input, keyword_provider->keyword()) && -- !base::StartsWith(input.text(), base::ASCIIToUTF16("drive.google.com"), -+ !base::StartsWith(input.text(), base::ASCIIToUTF16("drive.9oo91e.qjz9zk"), +- !base::StartsWith(input.text(), u"drive.google.com", ++ !base::StartsWith(input.text(), u"drive.9oo91e.qjz9zk", base::CompareCase::SENSITIVE)) { return false; } -@@ -936,7 +936,7 @@ ACMatchClassifications DocumentProvider::Classify( +@@ -941,7 +941,7 @@ ACMatchClassifications DocumentProvider::Classify( // static const GURL DocumentProvider::GetURLForDeduping(const GURL& url) { // Early exit to avoid unnecessary and more involved checks. @@ -12671,7 +12680,7 @@ diff --git a/components/omnibox/browser/document_provider.cc b/components/omnibo return GURL(); // We aim to prevent duplicate Drive URLs to appear between the Drive document -@@ -947,7 +947,7 @@ const GURL DocumentProvider::GetURLForDeduping(const GURL& url) { +@@ -952,7 +952,7 @@ const GURL DocumentProvider::GetURLForDeduping(const GURL& url) { // Drive redirects are already handled by the regex in |ExtractDocIdFromUrl|. // The below logic handles google.com redirects; e.g., google.com/url/q= std::string url_str; @@ -12680,7 +12689,7 @@ diff --git a/components/omnibox/browser/document_provider.cc b/components/omnibo if ((!net::GetValueForKeyInQuery(url, "q", &url_str) || url_str.empty()) && (!net::GetValueForKeyInQuery(url, "url", &url_str) || url_str.empty())) return GURL(); -@@ -964,5 +964,5 @@ const GURL DocumentProvider::GetURLForDeduping(const GURL& url) { +@@ -969,5 +969,5 @@ const GURL DocumentProvider::GetURLForDeduping(const GURL& url) { // Canonicalize to the /open form without any extra args. // This is similar to what we expect from the server. @@ -12690,7 +12699,7 @@ diff --git a/components/omnibox/browser/document_provider.cc b/components/omnibo diff --git a/components/omnibox/browser/document_suggestions_service.cc b/components/omnibox/browser/document_suggestions_service.cc --- a/components/omnibox/browser/document_suggestions_service.cc +++ b/components/omnibox/browser/document_suggestions_service.cc -@@ -83,7 +83,7 @@ void DocumentSuggestionsService::CreateDocumentSuggestionsRequest( +@@ -81,7 +81,7 @@ void DocumentSuggestionsService::CreateDocumentSuggestionsRequest( std::string endpoint = base::GetFieldTrialParamValueByFeature( omnibox::kDocumentProvider, "DocumentProviderEndpoint"); if (endpoint.empty()) @@ -12699,7 +12708,7 @@ diff --git a/components/omnibox/browser/document_suggestions_service.cc b/compon const GURL suggest_url = GURL(endpoint); DCHECK(suggest_url.is_valid()); -@@ -126,7 +126,7 @@ void DocumentSuggestionsService::CreateDocumentSuggestionsRequest( +@@ -124,7 +124,7 @@ void DocumentSuggestionsService::CreateDocumentSuggestionsRequest( request.get()); // Create and fetch an OAuth2 token. @@ -12711,7 +12720,7 @@ diff --git a/components/omnibox/browser/document_suggestions_service.cc b/compon diff --git a/components/omnibox/browser/zero_suggest_provider.cc b/components/omnibox/browser/zero_suggest_provider.cc --- a/components/omnibox/browser/zero_suggest_provider.cc +++ b/components/omnibox/browser/zero_suggest_provider.cc -@@ -93,7 +93,7 @@ void LogOmniboxZeroSuggestRequest( +@@ -92,7 +92,7 @@ void LogOmniboxZeroSuggestRequest( const int kDefaultZeroSuggestRelevance = 100; // Used for testing whether zero suggest is ever available. @@ -12720,6 +12729,306 @@ diff --git a/components/omnibox/browser/zero_suggest_provider.cc b/components/om // Metric name tracking the omnibox suggestion eligibility. constexpr char kOmniboxZeroSuggestEligibleHistogramName[] = +diff --git a/components/omnibox/resources/omnibox_pedal_concepts.json b/components/omnibox/resources/omnibox_pedal_concepts.json +--- a/components/omnibox/resources/omnibox_pedal_concepts.json ++++ b/components/omnibox/resources/omnibox_pedal_concepts.json +@@ -104,7 +104,7 @@ + "id": 13, + "name": "CREATE_GOOGLE_DOC", + "enabled": true, +- "url": "https://docs.google.com/document/u/0/create?usp=chrome_actions", ++ "url": "https://docs.9oo91e.qjz9zk/document/u/0/create?usp=chrome_actions", + "description": "Create a new Google Doc quickly (like doc.new)\n\nUser-facing strings for this Pedal:\nIDS_OMNIBOX_PEDAL_CREATE_GOOGLE_DOC_HINT\nIDS_OMNIBOX_PEDAL_CREATE_GOOGLE_DOC_SUGGESTION_CONTENTS\nIDS_ACC_OMNIBOX_PEDAL_CREATE_GOOGLE_DOC_SUFFIX\nIDS_ACC_OMNIBOX_PEDAL_CREATE_GOOGLE_DOC", + "tags": "google" + }, +@@ -112,7 +112,7 @@ + "id": 14, + "name": "CREATE_GOOGLE_SHEET", + "enabled": true, +- "url": "https://docs.google.com/spreadsheets/u/0/create?usp=chrome_actions", ++ "url": "https://docs.9oo91e.qjz9zk/spreadsheets/u/0/create?usp=chrome_actions", + "description": "Create a new Google Sheet quickly (like sheet.new)\n", + "tags": "google" + }, +@@ -120,7 +120,7 @@ + "id": 15, + "name": "CREATE_GOOGLE_SLIDE", + "enabled": true, +- "url": "https://docs.google.com/presentation/u/0/create?usp=chrome_actions", ++ "url": "https://docs.9oo91e.qjz9zk/presentation/u/0/create?usp=chrome_actions", + "description": "Create new Google Slides quickly (like slide.new)", + "tags": "google" + }, +@@ -128,7 +128,7 @@ + "id": 16, + "name": "CREATE_GOOGLE_CALENDAR_EVENT", + "enabled": true, +- "url": "https://calendar.google.com/calendar/u/0/r/eventedit?usp=chrome_actions", ++ "url": "https://calendar.9oo91e.qjz9zk/calendar/u/0/r/eventedit?usp=chrome_actions", + "description": "Create a new Google Calendar event quickly (like cal.new)", + "tags": "google" + }, +@@ -136,7 +136,7 @@ + "id": 17, + "name": "CREATE_GOOGLE_SITE", + "enabled": true, +- "url": "https://sites.google.com/u/0/create?usp=chrome_actions", ++ "url": "https://sites.9oo91e.qjz9zk/u/0/create?usp=chrome_actions", + "description": "Create a new Google Site quickly (like site.new)", + "tags": "google" + }, +@@ -144,7 +144,7 @@ + "id": 18, + "name": "CREATE_GOOGLE_KEEP_NOTE", + "enabled": true, +- "url": "https://keep.google.com/u/0/?usp=chrome_actions#NEWNOTE", ++ "url": "https://keep.9oo91e.qjz9zk/u/0/?usp=chrome_actions#NEWNOTE", + "description": "Create a new Google Keep note quickly (like keep.new)", + "tags": "google" + }, +@@ -152,7 +152,7 @@ + "id": 19, + "name": "CREATE_GOOGLE_FORM", + "enabled": true, +- "url": "https://docs.google.com/forms/u/0/create?usp=chrome_actions", ++ "url": "https://docs.9oo91e.qjz9zk/forms/u/0/create?usp=chrome_actions", + "description": "Create a new Google Form quickly (like form.new)", + "tags": "google" + }, +@@ -160,7 +160,7 @@ + "id": 20, + "name": "COMPOSE_EMAIL_IN_GMAIL", + "enabled": true, +- "url": "https://mail.google.com/mail/u/0/?usp=dot_new#inbox?compose=new", ++ "url": "https://mail.9oo91e.qjz9zk/mail/u/0/?usp=dot_new#inbox?compose=new", + "description": "Create an email in Gmail quickly (like mail.new)", + "tags": "google" + }, +@@ -168,7 +168,7 @@ + "id": 21, + "name": "SEE_CHROME_TIPS", + "enabled": true, +- "url": "https://www.google.com/chrome/tips/", ++ "url": "https://www.9oo91e.qjz9zk/chrome/tips/", + "description": "Learn about new Chrome features", + "tags": "" + }, +@@ -176,7 +176,7 @@ + "id": 22, + "name": "MANAGE_GOOGLE_ACCOUNT", + "enabled": true, +- "url": "https://myaccount.google.com/?utm_source=ga-chrome-actions&utm_medium=manageGA", ++ "url": "https://myaccount.9oo91e.qjz9zk/?utm_source=ga-chrome-actions&utm_medium=manageGA", + "description": "Manage your Google Account", + "tags": "google" + }, +@@ -192,7 +192,7 @@ + "id": 24, + "name": "CHANGE_GOOGLE_PASSWORD", + "enabled": true, +- "url": "https://myaccount.google.com/signinoptions/password?utm_source=ga-chrome-actions&utm_medium=changePW", ++ "url": "https://myaccount.9oo91e.qjz9zk/signinoptions/password?utm_source=ga-chrome-actions&utm_medium=changePW", + "description": "Change the password for your Google Account", + "tags": "google" + } +diff --git a/components/omnibox/resources/omnibox_pedal_concepts_en-GB.json b/components/omnibox/resources/omnibox_pedal_concepts_en-GB.json +--- a/components/omnibox/resources/omnibox_pedal_concepts_en-GB.json ++++ b/components/omnibox/resources/omnibox_pedal_concepts_en-GB.json +@@ -1099,7 +1099,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new Google Doc quickly", + "spoken_button_focus_announcement": "Create doc button, press Enter to create a new Google Doc quickly" + }, +- "url": "https://docs.google.com/document/u/0/create?usp=chrome_actions" ++ "url": "https://docs.9oo91e.qjz9zk/document/u/0/create?usp=chrome_actions" + }, + { + "id": 14, +@@ -1180,7 +1180,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new Google Sheet quickly", + "spoken_button_focus_announcement": "Create sheet button, press Enter to create a new Google Sheet quickly" + }, +- "url": "https://docs.google.com/spreadsheets/u/0/create?usp=chrome_actions" ++ "url": "https://docs.9oo91e.qjz9zk/spreadsheets/u/0/create?usp=chrome_actions" + }, + { + "id": 15, +@@ -1256,7 +1256,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new Google presentation in Slides quickly", + "spoken_button_focus_announcement": "Create presentation button, press Enter to create a new Google presentation in Slides quickly" + }, +- "url": "https://docs.google.com/presentation/u/0/create?usp=chrome_actions" ++ "url": "https://docs.9oo91e.qjz9zk/presentation/u/0/create?usp=chrome_actions" + }, + { + "id": 16, +@@ -1338,7 +1338,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new event in Google Calendar quickly", + "spoken_button_focus_announcement": "Create event button, press Enter to create a new event in Google Calendar quickly" + }, +- "url": "https://calendar.google.com/calendar/u/0/r/eventedit?usp=chrome_actions" ++ "url": "https://calendar.9oo91e.qjz9zk/calendar/u/0/r/eventedit?usp=chrome_actions" + }, + { + "id": 17, +@@ -1405,7 +1405,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new site in Google Site quickly", + "spoken_button_focus_announcement": "Create site button, press Enter to create a new site in Google Site quickly" + }, +- "url": "https://sites.google.com/u/0/create?usp=chrome_actions" ++ "url": "https://sites.9oo91e.qjz9zk/u/0/create?usp=chrome_actions" + }, + { + "id": 18, +@@ -1475,7 +1475,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new note in Google Keep quickly", + "spoken_button_focus_announcement": "Create note button, press Enter to create a new note in Google Keep quickly" + }, +- "url": "https://keep.google.com/u/0/?usp=chrome_actions#NEWNOTE" ++ "url": "https://keep.9oo91e.qjz9zk/u/0/?usp=chrome_actions#NEWNOTE" + }, + { + "id": 19, +@@ -1548,7 +1548,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new form in Google Form quickly", + "spoken_button_focus_announcement": "Create form button, press Enter to create a new form in Google Form quickly" + }, +- "url": "https://docs.google.com/forms/u/0/create?usp=chrome_actions" ++ "url": "https://docs.9oo91e.qjz9zk/forms/u/0/create?usp=chrome_actions" + }, + { + "id": 21, +@@ -1622,7 +1622,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to learn about Chrome features", + "spoken_button_focus_announcement": "See Chrome tips button, press Enter to learn about Chrome features" + }, +- "url": "https://www.google.com/chrome/tips/" ++ "url": "https://www.9oo91e.qjz9zk/chrome/tips/" + }, + { + "id": 22, +@@ -1674,7 +1674,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to manage your info, privacy, and security in your Google Account", + "spoken_button_focus_announcement": "Manage Google Account, press Enter to manage your info, privacy, and security in your Google Account" + }, +- "url": "https://myaccount.google.com/?utm_source=ga-chrome-actions&utm_medium=manageGA" ++ "url": "https://myaccount.9oo91e.qjz9zk/?utm_source=ga-chrome-actions&utm_medium=manageGA" + }, + { + "id": 24, +@@ -1743,7 +1743,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to change the password for your Google Account", + "spoken_button_focus_announcement": "Change Google password button, press Enter to change the password for your Google Account" + }, +- "url": "https://myaccount.google.com/signinoptions/password?utm_source=ga-chrome-actions&utm_medium=changePW" ++ "url": "https://myaccount.9oo91e.qjz9zk/signinoptions/password?utm_source=ga-chrome-actions&utm_medium=changePW" + } + ], + "ignore_group": { +diff --git a/components/omnibox/resources/omnibox_pedal_concepts_en.json b/components/omnibox/resources/omnibox_pedal_concepts_en.json +--- a/components/omnibox/resources/omnibox_pedal_concepts_en.json ++++ b/components/omnibox/resources/omnibox_pedal_concepts_en.json +@@ -1117,7 +1117,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new Google Doc quickly", + "spoken_button_focus_announcement": "Create doc button, press Enter to create a new Google Doc quickly" + }, +- "url": "https://docs.google.com/document/u/0/create?usp=chrome_actions" ++ "url": "https://docs.9oo91e.qjz9zk/document/u/0/create?usp=chrome_actions" + }, + { + "id": 14, +@@ -1198,7 +1198,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new Google Sheet quickly", + "spoken_button_focus_announcement": "Create sheet button, press Enter to create a new Google Sheet quickly" + }, +- "url": "https://docs.google.com/spreadsheets/u/0/create?usp=chrome_actions" ++ "url": "https://docs.9oo91e.qjz9zk/spreadsheets/u/0/create?usp=chrome_actions" + }, + { + "id": 15, +@@ -1274,7 +1274,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new Google presentation in Slides quickly", + "spoken_button_focus_announcement": "Create presentation button, press Enter to create a new Google presentation in Slides quickly" + }, +- "url": "https://docs.google.com/presentation/u/0/create?usp=chrome_actions" ++ "url": "https://docs.9oo91e.qjz9zk/presentation/u/0/create?usp=chrome_actions" + }, + { + "id": 16, +@@ -1356,7 +1356,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new event in Google Calendar quickly", + "spoken_button_focus_announcement": "Create event button, press Enter to create a new event in Google Calendar quickly" + }, +- "url": "https://calendar.google.com/calendar/u/0/r/eventedit?usp=chrome_actions" ++ "url": "https://calendar.9oo91e.qjz9zk/calendar/u/0/r/eventedit?usp=chrome_actions" + }, + { + "id": 17, +@@ -1423,7 +1423,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new site in Google Site quickly", + "spoken_button_focus_announcement": "Create site button, press Enter to create a new site in Google Site quickly" + }, +- "url": "https://sites.google.com/u/0/create?usp=chrome_actions" ++ "url": "https://sites.9oo91e.qjz9zk/u/0/create?usp=chrome_actions" + }, + { + "id": 18, +@@ -1493,7 +1493,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new note in Google Keep quickly", + "spoken_button_focus_announcement": "Create note button, press Enter to create a new note in Google Keep quickly" + }, +- "url": "https://keep.google.com/u/0/?usp=chrome_actions#NEWNOTE" ++ "url": "https://keep.9oo91e.qjz9zk/u/0/?usp=chrome_actions#NEWNOTE" + }, + { + "id": 19, +@@ -1566,7 +1566,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to create a new form in Google Form quickly", + "spoken_button_focus_announcement": "Create form button, press Enter to create a new form in Google Form quickly" + }, +- "url": "https://docs.google.com/forms/u/0/create?usp=chrome_actions" ++ "url": "https://docs.9oo91e.qjz9zk/forms/u/0/create?usp=chrome_actions" + }, + { + "id": 21, +@@ -1640,7 +1640,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to learn about Chrome features", + "spoken_button_focus_announcement": "See Chrome tips button, press Enter to learn about Chrome features" + }, +- "url": "https://www.google.com/chrome/tips/" ++ "url": "https://www.9oo91e.qjz9zk/chrome/tips/" + }, + { + "id": 22, +@@ -1692,7 +1692,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to manage your info, privacy, and security in your Google Account", + "spoken_button_focus_announcement": "Manage Google Account, press Enter to manage your info, privacy, and security in your Google Account" + }, +- "url": "https://myaccount.google.com/?utm_source=ga-chrome-actions&utm_medium=manageGA" ++ "url": "https://myaccount.9oo91e.qjz9zk/?utm_source=ga-chrome-actions&utm_medium=manageGA" + }, + { + "id": 24, +@@ -1761,7 +1761,7 @@ + "spoken_suggestion_description_suffix": "$1, press Tab then Enter to change the password for your Google Account", + "spoken_button_focus_announcement": "Change Google password button, press Enter to change the password for your Google Account" + }, +- "url": "https://myaccount.google.com/signinoptions/password?utm_source=ga-chrome-actions&utm_medium=changePW" ++ "url": "https://myaccount.9oo91e.qjz9zk/signinoptions/password?utm_source=ga-chrome-actions&utm_medium=changePW" + } + ], + "ignore_group": { +diff --git a/components/optimization_guide/content/browser/page_content_annotations_model_manager.cc b/components/optimization_guide/content/browser/page_content_annotations_model_manager.cc +--- a/components/optimization_guide/content/browser/page_content_annotations_model_manager.cc ++++ b/components/optimization_guide/content/browser/page_content_annotations_model_manager.cc +@@ -15,7 +15,7 @@ namespace optimization_guide { + namespace { + + const char kPageTopicsModelMetadataTypeUrl[] = +- "type.googleapis.com/" ++ "type.9oo91eapis.qjz9zk/" + "google.internal.chrome.optimizationguide.v1.PageTopicsModelMetadata"; + + // The ID of the NONE category in the taxonomy. This node always exists. diff --git a/components/optimization_guide/core/optimization_guide_constants.cc b/components/optimization_guide/core/optimization_guide_constants.cc --- a/components/optimization_guide/core/optimization_guide_constants.cc +++ b/components/optimization_guide/core/optimization_guide_constants.cc @@ -12736,10 +13045,22 @@ diff --git a/components/optimization_guide/core/optimization_guide_constants.cc const char kLoadedHintLocalHistogramString[] = "OptimizationGuide.LoadedHint.Result"; +diff --git a/components/page_load_metrics/browser/observers/ad_metrics/ads_page_load_metrics_observer.cc b/components/page_load_metrics/browser/observers/ad_metrics/ads_page_load_metrics_observer.cc +--- a/components/page_load_metrics/browser/observers/ad_metrics/ads_page_load_metrics_observer.cc ++++ b/components/page_load_metrics/browser/observers/ad_metrics/ads_page_load_metrics_observer.cc +@@ -111,7 +111,7 @@ std::string GetHeavyAdReportMessage(const FrameTreeData& frame_data, + bool will_unload_adframe) { + const char kChromeStatusMessage[] = + "See " +- "https://www.chromestatus.com/feature/" ++ "https://www.ch40mestatus.qjz9zk/feature/" + "4800491902992384?utm_source=devtools"; + const char kReportingOnlyMessage[] = + "A future version of Chrome may remove this ad"; diff --git a/components/page_load_metrics/browser/observers/core/uma_page_load_metrics_observer.cc b/components/page_load_metrics/browser/observers/core/uma_page_load_metrics_observer.cc --- a/components/page_load_metrics/browser/observers/core/uma_page_load_metrics_observer.cc +++ b/components/page_load_metrics/browser/observers/core/uma_page_load_metrics_observer.cc -@@ -82,7 +82,7 @@ std::unique_ptr FirstInputDelayTraceData( +@@ -84,7 +84,7 @@ std::unique_ptr FirstInputDelayTraceData( // language settings update fully launches. #if BUILDFLAG(IS_CHROMEOS_ASH) void RecordVisitToLanguageSettingsSupportPage(const GURL& url) { @@ -12919,7 +13240,7 @@ diff --git a/components/password_manager/core/browser/password_scripts_fetcher_i diff --git a/components/password_manager/core/browser/password_store.cc b/components/password_manager/core/browser/password_store.cc --- a/components/password_manager/core/browser/password_store.cc +++ b/components/password_manager/core/browser/password_store.cc -@@ -297,10 +297,10 @@ void PasswordStore::GetLogins(const FormDigest& form, +@@ -296,10 +296,10 @@ void PasswordStore::GetLogins(const FormDigest& form, // TODO(mdm): actually delete them at some point, say M24 or so. base::Time cutoff; // the null time if (form.scheme == PasswordForm::Scheme::kHtml && @@ -13013,7 +13334,7 @@ diff --git a/components/password_manager/ios/test_helpers.cc b/components/passwo - form_data.action = GURL("http://www.google.com/a/Login"); + form_data.url = GURL("http://www.9oo91e.qjz9zk/a/LoginAuth"); + form_data.action = GURL("http://www.9oo91e.qjz9zk/a/Login"); - form_data.name = base::ASCIIToUTF16("login_form"); + form_data.name = u"login_form"; autofill::FormFieldData field; diff --git a/components/payments/content/utility/payment_method_manifest_parser_fuzzer.cc b/components/payments/content/utility/payment_method_manifest_parser_fuzzer.cc @@ -13060,7 +13381,7 @@ diff --git a/components/payments/core/method_strings.cc b/components/payments/co diff --git a/components/permissions/permission_context_base.cc b/components/permissions/permission_context_base.cc --- a/components/permissions/permission_context_base.cc +++ b/components/permissions/permission_context_base.cc -@@ -47,33 +47,33 @@ const char kPermissionBlockedKillSwitchMessage[] = +@@ -48,33 +48,33 @@ const char kPermissionBlockedKillSwitchMessage[] = const char kPermissionBlockedRepeatedDismissalsMessage[] = "%s permission has been blocked as the user has dismissed the permission " "prompt several times. This can be reset in Site Settings. See " @@ -13092,7 +13413,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm "information."; #endif - const char kPermissionBlockedFeaturePolicyMessage[] = + const char kPermissionBlockedPermissionsPolicyMessage[] = "%s permission has been blocked because of a permissions policy applied to" - " the current document. See https://goo.gl/EuHzyv for more details."; + " the current document. See https://goo.gl.qjz9zk/EuHzyv for more details."; @@ -13102,7 +13423,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm diff --git a/components/permissions/permission_request_manager.cc b/components/permissions/permission_request_manager.cc --- a/components/permissions/permission_request_manager.cc +++ b/components/permissions/permission_request_manager.cc -@@ -43,28 +43,28 @@ const char kAbusiveNotificationRequestsEnforcementMessage[] = +@@ -44,28 +44,28 @@ const char kAbusiveNotificationRequestsEnforcementMessage[] = "the site tends to show permission requests that mislead, trick, or force " "users into allowing notifications. You should fix the issues as soon as " "possible and submit your site for another review. Learn more at " @@ -13150,7 +13471,7 @@ diff --git a/components/permissions/prediction_service/prediction_service_common diff --git a/components/policy/core/browser/browser_policy_connector.cc b/components/policy/core/browser/browser_policy_connector.cc --- a/components/policy/core/browser/browser_policy_connector.cc +++ b/components/policy/core/browser/browser_policy_connector.cc -@@ -35,22 +35,22 @@ namespace { +@@ -36,22 +36,22 @@ namespace { // The URL for the device management server. const char kDefaultDeviceManagementServerUrl[] = @@ -13181,7 +13502,7 @@ diff --git a/components/policy/core/browser/browser_policy_connector.cc b/compon diff --git a/components/policy/core/browser/url_util.cc b/components/policy/core/browser/url_util.cc --- a/components/policy/core/browser/url_util.cc +++ b/components/policy/core/browser/url_util.cc -@@ -44,13 +44,13 @@ const char kGoogleAmpCachePathPattern[] = "/[a-z]/(s/)?(.*)"; +@@ -45,13 +45,13 @@ const char kGoogleAmpCachePathPattern[] = "/[a-z]/(s/)?(.*)"; const char kGoogleAmpViewerPathPattern[] = "/amp/(s/)?(.*)"; // Host, path prefix, and query regex pattern for Google web cache URLs. @@ -13239,7 +13560,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli If you enable this setting, $1Google Chrome and ARC-apps ignore all proxy-related options specified from the command line. -@@ -591,7 +591,7 @@ +@@ -596,7 +596,7 @@ }, { 'name': 'ChromeFrameRendererSettings', @@ -13248,7 +13569,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'group', 'caption': '''Default HTML renderer for $3Google Chrome Frame''', 'desc': '''Allows you to configure the default HTML renderer when $3Google Chrome Frame is installed. -@@ -606,7 +606,7 @@ +@@ -611,7 +611,7 @@ }, { 'name': 'ChromeFrameContentTypes', @@ -13257,7 +13578,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'group', 'caption': '''Allow $3Google Chrome Frame to handle the following content types''', 'desc': '''Allow $3Google Chrome Frame to handle the following content types.''', -@@ -1227,7 +1227,7 @@ +@@ -1243,7 +1243,7 @@ }, { 'name': 'HomepageLocation', @@ -13266,7 +13587,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:81-'], -@@ -1236,7 +1236,7 @@ +@@ -1252,7 +1252,7 @@ 'dynamic_refresh': True, 'per_profile': True, }, @@ -13275,7 +13596,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 1, 'caption': '''Configure the home page URL''', 'tags': [], -@@ -1253,7 +1253,7 @@ +@@ -1269,7 +1269,7 @@ }, { 'name': 'HomepageIsNewTabPage', @@ -13284,7 +13605,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:8-', 'chrome_os:11-'], -@@ -1274,7 +1274,7 @@ +@@ -1290,7 +1290,7 @@ }, { 'name': 'NewTabPageLocation', @@ -13293,7 +13614,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:58-', 'chrome_os:58-'], -@@ -1282,7 +1282,7 @@ +@@ -1298,7 +1298,7 @@ 'dynamic_refresh': True, 'per_profile': True, }, @@ -13302,7 +13623,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 360, 'caption': '''Configure the New Tab page URL''', 'tags': [], -@@ -1301,7 +1301,7 @@ +@@ -1317,7 +1317,7 @@ }, { 'name': 'DefaultBrowserSettingEnabled', @@ -13311,7 +13632,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win7:11-', 'chrome.mac:11-', 'chrome.linux:11-'], -@@ -1317,12 +1317,12 @@ +@@ -1333,12 +1333,12 @@ Leaving the policy unset means $1Google Chrome lets users control whether it's the default and, if not, whether user notifications should appear. @@ -13326,7 +13647,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.win:8-'], -@@ -1345,7 +1345,7 @@ +@@ -1361,7 +1361,7 @@ }, { 'name': 'AlternateErrorPagesEnabled', @@ -13335,7 +13656,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -1368,7 +1368,7 @@ +@@ -1384,7 +1384,7 @@ }, { 'name': 'SearchSuggestEnabled', @@ -13344,7 +13665,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -1392,7 +1392,7 @@ +@@ -1408,7 +1408,7 @@ }, { 'name': 'NativeWindowOcclusionEnabled', @@ -13353,7 +13674,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -1420,7 +1420,7 @@ +@@ -1436,7 +1436,7 @@ }, { 'name': 'WindowOcclusionEnabled', @@ -13362,7 +13683,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -1456,7 +1456,7 @@ +@@ -1472,7 +1472,7 @@ }, { 'name': 'DnsPrefetchingEnabled', @@ -13371,7 +13692,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:8-53', 'chrome_os:11-53', 'android:30-53'], -@@ -1482,7 +1482,7 @@ +@@ -1498,7 +1498,7 @@ }, { 'name': 'NetworkPredictionOptions', @@ -13380,7 +13701,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -1522,7 +1522,7 @@ +@@ -1538,7 +1538,7 @@ }, { 'name': 'WPADQuickCheckEnabled', @@ -13389,7 +13710,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ 'chrome.*:35-', 'chrome_os:35-' ], -@@ -1553,7 +1553,7 @@ +@@ -1569,7 +1569,7 @@ }, { 'name': 'DisableSpdy', @@ -13398,7 +13719,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:8-53', 'chrome_os:11-53', 'android:30-53'], -@@ -1578,7 +1578,7 @@ +@@ -1594,7 +1594,7 @@ }, { 'name': 'DisabledSchemes', @@ -13407,7 +13728,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -1605,7 +1605,7 @@ +@@ -1621,7 +1621,7 @@ }, { 'name': 'GloballyScopeHTTPAuthCacheEnabled', @@ -13416,7 +13737,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:80-', 'chrome_os:80-'], -@@ -1629,7 +1629,7 @@ +@@ -1645,7 +1645,7 @@ }, { 'name': 'DNSInterceptionChecksEnabled', @@ -13425,7 +13746,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:80-', 'chrome_os:80-'], -@@ -1660,7 +1660,7 @@ +@@ -1676,7 +1676,7 @@ }, { 'name': 'IntranetRedirectBehavior', @@ -13434,7 +13755,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -1707,7 +1707,7 @@ +@@ -1723,7 +1723,7 @@ }, { 'name': 'Http09OnNonDefaultPortsEnabled', @@ -13443,7 +13764,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:54-77', 'chrome_os:54-77'], -@@ -1732,7 +1732,7 @@ +@@ -1748,7 +1748,7 @@ }, { 'name': 'JavascriptEnabled', @@ -13452,7 +13773,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:8-', 'chrome_os:11-', 'android:30-'], -@@ -1755,7 +1755,7 @@ +@@ -1771,7 +1771,7 @@ }, { 'name': 'IncognitoEnabled', @@ -13461,7 +13782,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:11-', 'chrome_os:11-', 'android:30-'], -@@ -1779,7 +1779,7 @@ +@@ -1795,7 +1795,7 @@ }, { 'name': 'IncognitoModeAvailability', @@ -13470,7 +13791,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -1832,7 +1832,7 @@ +@@ -1848,7 +1848,7 @@ }, { 'name': 'SavingBrowserHistoryDisabled', @@ -13479,7 +13800,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -1855,7 +1855,7 @@ +@@ -1871,7 +1871,7 @@ }, { 'name': 'AllowDeletingBrowserHistory', @@ -13488,7 +13809,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:57-', 'chrome_os:57-'], -@@ -1873,7 +1873,7 @@ +@@ -1889,7 +1889,7 @@ }, { 'name': 'AllowDinosaurEasterEgg', @@ -13497,7 +13818,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:48-', 'chrome.*:48-'], -@@ -1892,7 +1892,7 @@ +@@ -1908,7 +1908,7 @@ }, { 'name': 'ForceLegacyDefaultReferrerPolicy', @@ -13506,7 +13827,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:80-87', 'chrome_os:80-87'], -@@ -1915,7 +1915,7 @@ +@@ -1931,7 +1931,7 @@ }, { 'name': 'RemoteAccessClientFirewallTraversal', @@ -13515,7 +13836,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:14-16', 'chrome_os:14-16'], -@@ -1938,7 +1938,7 @@ +@@ -1954,7 +1954,7 @@ }, { 'name': 'RemoteAccessHostClientDomain', @@ -13524,7 +13845,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:22-', 'chrome_os:41-'], -@@ -1956,7 +1956,7 @@ +@@ -1972,7 +1972,7 @@ }, { 'name': 'RemoteAccessHostClientDomainList', @@ -13533,7 +13854,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -1982,7 +1982,7 @@ +@@ -1998,7 +1998,7 @@ }, { 'name': 'RemoteAccessHostFirewallTraversal', @@ -13542,7 +13863,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:14-', 'chrome_os:41-'], -@@ -2001,7 +2001,7 @@ +@@ -2017,7 +2017,7 @@ }, { 'name': 'RemoteAccessHostDomain', @@ -13551,7 +13872,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:22-', 'chrome_os:41-'], -@@ -2019,7 +2019,7 @@ +@@ -2035,7 +2035,7 @@ }, { 'name': 'RemoteAccessHostDomainList', @@ -13560,7 +13881,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -2045,7 +2045,7 @@ +@@ -2061,7 +2061,7 @@ }, { 'name': 'RemoteAccessHostRequireTwoFactor', @@ -13569,7 +13890,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:22-22'], -@@ -2068,7 +2068,7 @@ +@@ -2084,7 +2084,7 @@ }, { 'name': 'RemoteAccessHostTalkGadgetPrefix', @@ -13578,7 +13899,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:22-75', 'chrome_os:41-75'], -@@ -2084,17 +2084,17 @@ +@@ -2100,17 +2100,17 @@ 'tags': [], 'desc': '''Configures the TalkGadget prefix that will be used by remote access hosts and prevents users from changing it. @@ -13600,7 +13921,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:23-'], -@@ -2113,7 +2113,7 @@ +@@ -2129,7 +2129,7 @@ }, { 'name': 'RemoteAccessHostAllowClientPairing', @@ -13609,7 +13930,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:30-'], -@@ -2132,7 +2132,7 @@ +@@ -2148,7 +2148,7 @@ }, { 'name': 'RemoteAccessHostAllowGnubbyAuth', @@ -13618,7 +13939,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:35-'], -@@ -2154,7 +2154,7 @@ +@@ -2170,7 +2170,7 @@ }, { 'name': 'RemoteAccessHostAllowRelayedConnection', @@ -13627,7 +13948,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:36-', 'chrome_os:86-'], -@@ -2173,7 +2173,7 @@ +@@ -2189,7 +2189,7 @@ }, { 'name': 'RemoteAccessHostUdpPortRange', @@ -13636,7 +13957,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:36-', 'chrome_os:41-'], -@@ -2194,7 +2194,7 @@ +@@ -2210,7 +2210,7 @@ }, { 'name': 'RemoteAccessHostMatchUsername', @@ -13645,7 +13966,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.linux:25-', 'chrome.mac:25-'], -@@ -2213,7 +2213,7 @@ +@@ -2229,7 +2229,7 @@ }, { 'name': 'RemoteAccessHostTokenUrl', @@ -13654,7 +13975,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:28-'], -@@ -2235,7 +2235,7 @@ +@@ -2251,7 +2251,7 @@ }, { 'name': 'RemoteAccessHostTokenValidationUrl', @@ -13663,7 +13984,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:28-'], -@@ -2255,7 +2255,7 @@ +@@ -2271,7 +2271,7 @@ }, { 'name': 'RemoteAccessHostTokenValidationCertificateIssuer', @@ -13672,7 +13993,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:28-'], -@@ -2273,7 +2273,7 @@ +@@ -2289,7 +2289,7 @@ }, { 'name': 'RemoteAccessHostDebugOverridePolicies', @@ -13681,7 +14002,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:25-47','chrome_os:42-47'], -@@ -2293,7 +2293,7 @@ +@@ -2309,7 +2309,7 @@ }, { 'name': 'RemoteAccessHostAllowUiAccessForRemoteAssistance', @@ -13690,7 +14011,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:55-'], -@@ -2313,7 +2313,7 @@ +@@ -2329,7 +2329,7 @@ }, { 'name': 'RemoteAccessHostAllowFileTransfer', @@ -13699,7 +14020,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:74-'], -@@ -2333,7 +2333,7 @@ +@@ -2349,7 +2349,7 @@ }, { 'name': 'RemoteAccessHostEnableUserInterface', @@ -13708,7 +14029,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:88-'], -@@ -2354,7 +2354,7 @@ +@@ -2370,7 +2370,7 @@ }, { 'name': 'RemoteAccessHostAllowRemoteAccessConnections', @@ -13717,7 +14038,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:89-'], -@@ -2384,7 +2384,7 @@ +@@ -2400,7 +2400,7 @@ }, { 'name': 'RemoteAccessHostMaximumSessionDurationMinutes', @@ -13726,7 +14047,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 30, 'maximum': 10080 }, 'supported_on': ['chrome.*:89-'], -@@ -2404,7 +2404,7 @@ +@@ -2420,7 +2420,7 @@ }, { 'name': 'DeviceAllowMGSToStoreDisplayProperties', @@ -13735,7 +14056,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type' : 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:90-'], -@@ -2431,7 +2431,7 @@ +@@ -2447,7 +2447,7 @@ }, { 'name': 'PrintingEnabled', @@ -13744,7 +14065,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -2455,7 +2455,7 @@ +@@ -2471,7 +2471,7 @@ }, { 'name': 'CloudPrintProxyEnabled', @@ -13753,7 +14074,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:17-'], -@@ -2473,7 +2473,7 @@ +@@ -2489,7 +2489,7 @@ }, { 'name': 'PrintingAllowedColorModes', @@ -13762,7 +14083,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -2514,7 +2514,7 @@ +@@ -2530,7 +2530,7 @@ }, { 'name': 'PrintingAllowedDuplexModes', @@ -13771,7 +14092,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -2557,7 +2557,7 @@ +@@ -2573,7 +2573,7 @@ }, { 'name': 'PrintingAllowedPinModes', @@ -13780,7 +14101,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -2598,7 +2598,7 @@ +@@ -2614,7 +2614,7 @@ }, { 'name': 'PrintingAllowedBackgroundGraphicsModes', @@ -13789,7 +14110,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -2639,7 +2639,7 @@ +@@ -2655,7 +2655,7 @@ }, { 'name': 'PrintingColorDefault', @@ -13798,7 +14119,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -2674,7 +2674,7 @@ +@@ -2690,7 +2690,7 @@ }, { 'name': 'PrintingDuplexDefault', @@ -13807,7 +14128,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -2715,7 +2715,7 @@ +@@ -2731,7 +2731,7 @@ }, { 'name': 'PrintingPinDefault', @@ -13816,7 +14137,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -2750,7 +2750,7 @@ +@@ -2766,7 +2766,7 @@ }, { 'name': 'PrintingBackgroundGraphicsDefault', @@ -13825,7 +14146,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -2785,7 +2785,7 @@ +@@ -2801,7 +2801,7 @@ }, { 'name': 'PrintingPaperSizeDefault', @@ -13834,7 +14155,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -2971,7 +2971,7 @@ +@@ -2987,7 +2987,7 @@ }, { 'name': 'PrintingSendUsernameAndFilenameEnabled', @@ -13843,7 +14164,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:72-'], -@@ -2990,7 +2990,7 @@ +@@ -3006,7 +3006,7 @@ }, { 'name': 'PrintingMaxSheetsAllowed', @@ -13852,7 +14173,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 1 }, 'supported_on': ['chrome_os:84-'], -@@ -3008,7 +3008,7 @@ +@@ -3024,7 +3024,7 @@ }, { 'name': 'AppCacheForceEnabled', @@ -13861,7 +14182,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:84-', 'chrome_os:84-', 'android:84-', 'webview_android:84-'], -@@ -3026,7 +3026,7 @@ +@@ -3042,7 +3042,7 @@ }, { 'name': 'PrintJobHistoryExpirationPeriod', @@ -13870,7 +14191,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': -1 }, 'supported_on': ['chrome_os:79-'], -@@ -3048,7 +3048,7 @@ +@@ -3064,7 +3064,7 @@ }, { 'name': 'PrintingAPIExtensionsWhitelist', @@ -13879,7 +14200,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -3072,7 +3072,7 @@ +@@ -3088,7 +3088,7 @@ }, { 'name': 'PrintingAPIExtensionsAllowlist', @@ -13888,7 +14209,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -3093,7 +3093,7 @@ +@@ -3109,7 +3109,7 @@ }, { 'name': 'ForceSafeSearch', @@ -13897,7 +14218,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:25-', 'chrome_os:25-', 'android:30-'], -@@ -3117,7 +3117,7 @@ +@@ -3133,7 +3133,7 @@ }, { 'name': 'ForceGoogleSafeSearch', @@ -13906,7 +14227,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:41-', 'chrome_os:41-', 'android:41-'], -@@ -3136,7 +3136,7 @@ +@@ -3152,7 +3152,7 @@ }, { 'name': 'ForceYouTubeSafetyMode', @@ -13915,7 +14236,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:41-', 'chrome_os:41-', 'android:41-'], -@@ -3161,7 +3161,7 @@ +@@ -3177,7 +3177,7 @@ }, { 'name': 'ForceYouTubeRestrict', @@ -13924,7 +14245,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -3205,7 +3205,7 @@ +@@ -3221,7 +3221,7 @@ }, { 'name': 'SafeBrowsingEnabled', @@ -13933,7 +14254,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -3230,7 +3230,7 @@ +@@ -3246,7 +3246,7 @@ If you set this policy, users can't change it or override the "Enable phishing and malware protection" setting in Chrome. If not set, "Enable phishing and malware protection" is set to True, but the user can change it. @@ -13942,7 +14263,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli If the policy SafeBrowsingProtectionLevel is set, the value of the policy SafeBrowsingEnabled is ignored. -@@ -3238,7 +3238,7 @@ +@@ -3254,7 +3254,7 @@ }, { 'name': 'SafeBrowsingProtectionLevel', @@ -13951,7 +14272,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -3288,12 +3288,12 @@ +@@ -3304,12 +3304,12 @@ If this policy is left not set, Safe Browsing will operate in Standard Protection mode but users can change this setting. @@ -13966,7 +14287,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -3321,7 +3321,7 @@ +@@ -3337,7 +3337,7 @@ }, { 'name': 'PasswordManagerEnabled', @@ -13975,7 +14296,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -3348,7 +3348,7 @@ +@@ -3364,7 +3364,7 @@ }, { 'name': 'PasswordManagerAllowShowPasswords', @@ -13984,7 +14305,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:8-50', 'chrome_os:11-50'], -@@ -3371,7 +3371,7 @@ +@@ -3387,7 +3387,7 @@ }, { 'name': 'PasswordLeakDetectionEnabled', @@ -13993,7 +14314,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -3396,7 +3396,7 @@ +@@ -3412,7 +3412,7 @@ }, { 'name': 'AutoFillEnabled', @@ -14002,7 +14323,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -3424,7 +3424,7 @@ +@@ -3440,7 +3440,7 @@ }, { 'name': 'AutofillAddressEnabled', @@ -14011,7 +14332,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -3448,7 +3448,7 @@ +@@ -3464,7 +3464,7 @@ }, { 'name': 'AutofillCreditCardEnabled', @@ -14020,7 +14341,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -3472,7 +3472,7 @@ +@@ -3488,7 +3488,7 @@ }, { 'name': 'DisabledPlugins', @@ -14029,7 +14350,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -3503,7 +3503,7 @@ +@@ -3519,7 +3519,7 @@ }, { 'name': 'EnabledPlugins', @@ -14038,7 +14359,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -3534,7 +3534,7 @@ +@@ -3550,7 +3550,7 @@ }, { 'name': 'DisabledPluginsExceptions', @@ -14047,7 +14368,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -3567,7 +3567,7 @@ +@@ -3583,7 +3583,7 @@ }, { 'name': 'AlwaysOpenPdfExternally', @@ -14056,7 +14377,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:55-'], -@@ -3585,7 +3585,7 @@ +@@ -3601,7 +3601,7 @@ }, { 'name': 'DisablePluginFinder', @@ -14065,7 +14386,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:11-64', 'chrome_os:11-64'], -@@ -3605,7 +3605,7 @@ +@@ -3621,7 +3621,7 @@ }, { 'name': 'SyncDisabled', @@ -14074,7 +14395,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:8-', 'chrome_os:11-'], -@@ -3629,7 +3629,7 @@ +@@ -3645,7 +3645,7 @@ }, { 'name': 'SyncTypesListDisabled', @@ -14083,7 +14404,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -3650,7 +3650,7 @@ +@@ -3666,7 +3666,7 @@ }, { 'name': 'RoamingProfileSupportEnabled', @@ -14092,7 +14413,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:57-', 'chrome.mac:88-', 'chrome.linux:88-'], -@@ -3669,7 +3669,7 @@ +@@ -3685,7 +3685,7 @@ }, { 'name': 'RoamingProfileLocation', @@ -14101,7 +14422,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.win:57-', 'chrome.mac:88-', 'chrome.linux:88-'], -@@ -3685,7 +3685,7 @@ +@@ -3701,7 +3701,7 @@ If you set this policy, $1Google Chrome will use the provided directory to store the roaming copy of the profiles if the RoamingProfileSupportEnabled policy has been enabled. If the RoamingProfileSupportEnabled policy is disabled or left unset the value stored in this policy is not used. @@ -14110,7 +14431,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli On non-Windows platforms, this policy must be set for roaming profiles to work. -@@ -3694,7 +3694,7 @@ +@@ -3710,7 +3710,7 @@ }, { 'name': 'SigninAllowed', @@ -14119,7 +14440,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:27-', 'android:38-'], -@@ -3715,7 +3715,7 @@ +@@ -3731,7 +3731,7 @@ }, { 'name': 'EnableDeprecatedWebBasedSignin', @@ -14128,7 +14449,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:35-42'], -@@ -3738,7 +3738,7 @@ +@@ -3754,7 +3754,7 @@ }, { 'name': 'UserDataDir', @@ -14137,7 +14458,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.win:11-', 'chrome.mac:11-'], -@@ -3757,14 +3757,14 @@ +@@ -3773,14 +3773,14 @@ If you set this policy, $1Google Chrome will use the provided directory regardless whether the user has specified the '--user-data-dir' flag or not. To avoid data loss or other unexpected errors this policy should not be set to a directory used for other purposes, because $1Google Chrome manages its contents. @@ -14154,7 +14475,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:13-'], -@@ -3780,12 +3780,12 @@ +@@ -3796,12 +3796,12 @@ If not set, $1Google Chrome uses the default cache directory, but users can change that setting with the --disk-cache-dir command line flag. @@ -14169,7 +14490,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome.*:17-'], -@@ -3806,7 +3806,7 @@ +@@ -3822,7 +3822,7 @@ }, { 'name': 'MediaCacheSize', @@ -14178,7 +14499,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome.*:17-71'], -@@ -3828,7 +3828,7 @@ +@@ -3844,7 +3844,7 @@ }, { 'name': 'DownloadRestrictions', @@ -14187,7 +14508,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -3885,12 +3885,12 @@ +@@ -3901,12 +3901,12 @@ * No special restrictions means the downloads go through the usual security restrictions based on safety analysis results. @@ -14202,7 +14523,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:11-', 'chrome_os:35-'], -@@ -3907,13 +3907,13 @@ +@@ -3923,13 +3923,13 @@ Leaving the policy unset means Chrome uses the default download directory, and users can change it. @@ -14218,7 +14539,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -3940,7 +3940,7 @@ +@@ -3956,7 +3956,7 @@ }, { 'name': 'AutoOpenAllowedForURLs', @@ -14227,7 +14548,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -3963,11 +3963,11 @@ +@@ -3979,11 +3979,11 @@ If this policy isn't set, all downloads where the file type is in AutoOpenFileTypes will automatically open. @@ -14241,7 +14562,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -4000,13 +4000,13 @@ +@@ -4016,13 +4016,13 @@ If this policy is not set, no protocols can launch without a prompt by default. Users may opt out of prompts on a per-protocol/per-site basis unless the ExternalProtocolDialogShowAlwaysOpenCheckbox policy is set to Disabled. This policy has no impact on per-protocol/per-site prompt exemptions set by users. @@ -14257,7 +14578,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:61-'], -@@ -4041,7 +4041,7 @@ +@@ -4057,7 +4057,7 @@ }, { 'name': 'ClearSiteDataOnExit', @@ -14266,7 +14587,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:11-28', 'chrome_os:11-28'], -@@ -4060,7 +4060,7 @@ +@@ -4076,7 +4076,7 @@ }, { 'name': 'CaptivePortalAuthenticationIgnoresProxy', @@ -14275,7 +14596,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:41-'], -@@ -4080,7 +4080,7 @@ +@@ -4096,7 +4096,7 @@ }, { 'name': 'ProxyMode', @@ -14284,7 +14605,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -4148,11 +4148,11 @@ +@@ -4164,11 +4164,11 @@ Leaving the policy unset lets users choose the proxy settings. @@ -14298,7 +14619,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -4208,7 +4208,7 @@ +@@ -4224,7 +4224,7 @@ If you choose manual proxy settings, you can specify further options in 'Address or URL of proxy server', 'URL to a proxy .pac file' and 'Comma-separated list of proxy bypass rules'. Only the HTTP proxy server with the highest priority is available for ARC-apps. For detailed examples, visit: @@ -14307,7 +14628,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli If you enable this setting, $1Google Chrome ignores all proxy-related options specified from the command line. -@@ -4217,7 +4217,7 @@ +@@ -4233,7 +4233,7 @@ }, { 'name': 'ProxyServer', @@ -14316,7 +14637,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -4240,12 +4240,12 @@ +@@ -4256,12 +4256,12 @@ Leave this policy unset if you selected any other mode for setting proxy policies. @@ -14331,7 +14652,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -4268,12 +4268,12 @@ +@@ -4284,12 +4284,12 @@ Leave this policy unset if you selected any other mode for setting proxy policies. @@ -14346,7 +14667,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -4296,13 +4296,13 @@ +@@ -4312,13 +4312,13 @@ Leave this policy unset if you selected any other mode for setting proxy policies. @@ -14362,7 +14683,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -4349,12 +4349,12 @@ +@@ -4365,12 +4365,12 @@ * fixed_server, the ProxyServer and ProxyBypassList fields are used. * pac_script, the ProxyPacUrl and ProxyBypassList fields are used. @@ -14377,7 +14698,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:9-','android:46-','chrome_os:62-'], -@@ -4384,7 +4384,7 @@ +@@ -4400,7 +4400,7 @@ }, { 'name': 'DisableAuthNegotiateCnameLookup', @@ -14386,7 +14707,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:9-','android:46-','chrome_os:62-'], -@@ -4402,7 +4402,7 @@ +@@ -4418,7 +4418,7 @@ }, { 'name': 'EnableAuthNegotiatePort', @@ -14395,7 +14716,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:9-','chrome_os:62-'], -@@ -4420,7 +4420,7 @@ +@@ -4436,7 +4436,7 @@ }, { 'name': 'BasicAuthOverHttpEnabled', @@ -14404,7 +14725,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:88-','chrome_os:88-'], -@@ -4451,7 +4451,7 @@ +@@ -4467,7 +4467,7 @@ }, { 'name': 'AuthServerWhitelist', @@ -14413,7 +14734,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:9-','android:46-','webview_android:49-','chrome_os:62-'], -@@ -4474,7 +4474,7 @@ +@@ -4490,7 +4490,7 @@ }, { 'name': 'AuthServerAllowlist', @@ -14422,7 +14743,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:86-','android:86-','webview_android:86-','chrome_os:86-'], -@@ -4494,7 +4494,7 @@ +@@ -4510,7 +4510,7 @@ }, { 'name': 'AuthNegotiateDelegateWhitelist', @@ -14431,7 +14752,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:9-','android:46-','chrome_os:62-'], -@@ -4515,7 +4515,7 @@ +@@ -4531,7 +4531,7 @@ }, { 'name': 'AuthNegotiateDelegateAllowlist', @@ -14440,7 +14761,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:86-','android:86-','chrome_os:86-'], -@@ -4533,7 +4533,7 @@ +@@ -4549,7 +4549,7 @@ }, { 'name': 'AuthNegotiateDelegateByKdcPolicy', @@ -14449,7 +14770,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.linux:74-','chrome.mac:74-','chrome_os:74-'], -@@ -4553,7 +4553,7 @@ +@@ -4569,7 +4569,7 @@ }, { 'name': 'BrowserLabsEnabled', @@ -14458,7 +14779,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema' : {'type': 'boolean'}, 'supported_on': ['chrome.*:89-'], -@@ -4585,7 +4585,7 @@ +@@ -4601,7 +4601,7 @@ }, { 'name': 'GSSAPILibraryName', @@ -14467,7 +14788,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.linux:9-'], -@@ -4603,7 +4603,7 @@ +@@ -4619,7 +4619,7 @@ }, { 'name': 'AuthAndroidNegotiateAccountType', @@ -14476,7 +14797,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['android:46-','webview_android:49-'], -@@ -4615,13 +4615,13 @@ +@@ -4631,13 +4631,13 @@ 'id': 305, 'caption': '''Account type for HTTP Negotiate authentication''', 'tags': [], @@ -14492,7 +14813,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:13-','chrome_os:62-'], -@@ -4641,7 +4641,7 @@ +@@ -4657,7 +4657,7 @@ }, { 'name': 'NtlmV2Enabled', @@ -14501,7 +14822,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.linux:63-','chrome.mac:63-','chrome_os:63-','android:63-','webview_android:63-'], -@@ -4672,7 +4672,7 @@ +@@ -4688,7 +4688,7 @@ }, { 'name': 'ExtensionInstallBlacklist', @@ -14510,7 +14831,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -4698,7 +4698,7 @@ +@@ -4714,7 +4714,7 @@ { 'name': 'ExtensionInstallBlocklist', @@ -14519,7 +14840,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -4722,7 +4722,7 @@ +@@ -4738,7 +4738,7 @@ }, { 'name': 'ExtensionInstallAllowlist', @@ -14528,7 +14849,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -4746,7 +4746,7 @@ +@@ -4762,7 +4762,7 @@ }, { 'name': 'ExtensionInstallWhitelist', @@ -14537,7 +14858,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -4769,7 +4769,7 @@ +@@ -4785,7 +4785,7 @@ }, { 'name': 'ExtensionInstallForcelist', @@ -14546,7 +14867,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -4780,7 +4780,7 @@ +@@ -4796,7 +4796,7 @@ 'dynamic_refresh': True, 'per_profile': True, }, @@ -14555,7 +14876,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 34, 'caption': '''Configure the list of force-installed apps and extensions''', 'tags': ['full-admin-access'], -@@ -4796,15 +4796,15 @@ +@@ -4812,15 +4812,15 @@ The source code of any extension may be altered by users through developer tools, potentially rendering the extension dysfunctional. If this is a concern, set the DeveloperToolsDisabled policy. @@ -14574,7 +14895,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -4822,14 +4822,14 @@ +@@ -4838,14 +4838,14 @@ 'tags': ['full-admin-access', 'system-security'], 'desc': '''Setting the policy specifies which URLs may install extensions, apps, and themes. Before $1Google Chrome 21, users could click on a link to a *.crx file, and $1Google Chrome would offer to install the file after a few warnings. Afterwards, such files must be downloaded and dragged to the $1Google Chrome settings page. This setting allows specific URLs to have the old, easier installation flow. @@ -14591,7 +14912,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'deprecated': True, 'schema': { 'type': 'boolean' }, -@@ -4850,7 +4850,7 @@ +@@ -4866,7 +4866,7 @@ }, { 'name': 'ExtensionAllowedTypes', @@ -14600,7 +14921,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -4903,7 +4903,7 @@ +@@ -4919,7 +4919,7 @@ }, { 'name': 'ExtensionSettings', @@ -14609,7 +14930,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -4998,7 +4998,7 @@ +@@ -5014,7 +5014,7 @@ }, }, }, @@ -14618,7 +14939,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome.*:62-', 'chrome_os:62-'], 'features': { 'dynamic_refresh': True, -@@ -5055,13 +5055,13 @@ +@@ -5071,13 +5071,13 @@ 'tags': [], 'desc': '''Setting the policy controls extension management settings for $1Google Chrome, including any controlled by existing extension-related policies. The policy supersedes any legacy policies that might be set. @@ -14634,7 +14955,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:80-'], -@@ -5079,12 +5079,12 @@ +@@ -5095,12 +5095,12 @@ Disabling this setting or leaving it unset allows external extensions to be installed. @@ -14649,7 +14970,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:8-', 'chrome_os:11-'], -@@ -5103,7 +5103,7 @@ +@@ -5119,7 +5119,7 @@ }, { 'name': 'DeveloperToolsDisabled', @@ -14658,7 +14979,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:9-', 'chrome_os:11-'], -@@ -5129,7 +5129,7 @@ +@@ -5145,7 +5145,7 @@ }, { 'name': 'DeveloperToolsAvailability', @@ -14667,7 +14988,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5168,7 +5168,7 @@ +@@ -5217,7 +5217,7 @@ }, { 'name': 'RestoreOnStartup', @@ -14676,7 +14997,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5211,7 +5211,7 @@ +@@ -5260,7 +5260,7 @@ }, { 'name': 'RestoreOnStartupURLs', @@ -14685,7 +15006,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -5223,7 +5223,7 @@ +@@ -5272,7 +5272,7 @@ 'dynamic_refresh': True, 'per_profile': True, }, @@ -14694,7 +15015,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 38, 'caption': '''URLs to open on startup''', 'tags': [], -@@ -5235,7 +5235,7 @@ +@@ -5284,7 +5284,7 @@ }, { 'name': 'BlockThirdPartyCookies', @@ -14703,7 +15024,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:10-', 'chrome_os:11-', 'android:83-'], -@@ -5269,7 +5269,7 @@ +@@ -5318,7 +5318,7 @@ }, { 'name': 'DefaultSearchProviderEnabled', @@ -14712,7 +15033,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -5294,7 +5294,7 @@ +@@ -5343,7 +5343,7 @@ }, { 'name': 'DefaultSearchProviderContextMenuAccessAllowed', @@ -14721,7 +15042,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:85-', 'chrome_os:85-'], -@@ -5316,7 +5316,7 @@ +@@ -5365,7 +5365,7 @@ }, { 'name': 'DefaultSearchProviderName', @@ -14730,7 +15051,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5339,7 +5339,7 @@ +@@ -5388,7 +5388,7 @@ }, { 'name': 'DefaultSearchProviderKeyword', @@ -14739,7 +15060,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5362,7 +5362,7 @@ +@@ -5411,7 +5411,7 @@ }, { 'name': 'DefaultSearchProviderSearchURL', @@ -14748,7 +15069,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5385,7 +5385,7 @@ +@@ -5434,7 +5434,7 @@ }, { 'name': 'DefaultSearchProviderSuggestURL', @@ -14757,7 +15078,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5408,7 +5408,7 @@ +@@ -5457,7 +5457,7 @@ }, { 'name': 'DefaultSearchProviderInstantURL', @@ -14766,7 +15087,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:10-63', 'chrome_os:11-63', 'android:30-63'], -@@ -5431,7 +5431,7 @@ +@@ -5480,7 +5480,7 @@ }, { 'name': 'DefaultSearchProviderIconURL', @@ -14775,7 +15096,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5454,7 +5454,7 @@ +@@ -5503,7 +5503,7 @@ }, { 'name': 'DefaultSearchProviderEncodings', @@ -14784,7 +15105,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -5480,7 +5480,7 @@ +@@ -5529,7 +5529,7 @@ }, { 'name': 'DefaultSearchProviderAlternateURLs', @@ -14793,7 +15114,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -5506,7 +5506,7 @@ +@@ -5555,7 +5555,7 @@ }, { 'name': 'DefaultSearchProviderSearchTermsReplacementKey', @@ -14802,7 +15123,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:25-63', 'chrome_os:25-63', 'android:30-63'], -@@ -5527,7 +5527,7 @@ +@@ -5576,7 +5576,7 @@ }, { 'name': 'DefaultSearchProviderImageURL', @@ -14811,7 +15132,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5550,7 +5550,7 @@ +@@ -5599,7 +5599,7 @@ }, { 'name': 'DefaultSearchProviderNewTabURL', @@ -14820,7 +15141,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5573,7 +5573,7 @@ +@@ -5622,7 +5622,7 @@ }, { 'name': 'DefaultSearchProviderSearchURLPostParams', @@ -14829,7 +15150,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5596,7 +5596,7 @@ +@@ -5645,7 +5645,7 @@ }, { 'name': 'DefaultSearchProviderSuggestURLPostParams', @@ -14838,7 +15159,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5619,7 +5619,7 @@ +@@ -5668,7 +5668,7 @@ }, { 'name': 'DefaultSearchProviderInstantURLPostParams', @@ -14847,7 +15168,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:29-63', 'chrome_os:29-63', 'android:30-63'], -@@ -5640,7 +5640,7 @@ +@@ -5689,7 +5689,7 @@ }, { 'name': 'DefaultSearchProviderImageURLPostParams', @@ -14856,7 +15177,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -5663,7 +5663,7 @@ +@@ -5712,7 +5712,7 @@ }, { 'name': 'DefaultCookiesSetting', @@ -14865,7 +15186,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5709,7 +5709,7 @@ +@@ -5758,7 +5758,7 @@ }, { 'name': 'DefaultImagesSetting', @@ -14874,7 +15195,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5742,7 +5742,7 @@ +@@ -5791,7 +5791,7 @@ }, { 'name': 'DefaultJavaScriptSetting', @@ -14883,7 +15204,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5775,7 +5775,7 @@ +@@ -5824,7 +5824,7 @@ }, { 'name': 'DefaultPluginsSetting', @@ -14892,7 +15213,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5816,7 +5816,7 @@ +@@ -5865,7 +5865,7 @@ }, { 'name': 'DefaultPopupsSetting', @@ -14901,7 +15222,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5854,7 +5854,7 @@ +@@ -5903,7 +5903,7 @@ }, { 'name': 'DefaultNotificationsSetting', @@ -14910,7 +15231,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5892,7 +5892,7 @@ +@@ -5941,7 +5941,7 @@ }, { 'name': 'DefaultGeolocationSetting', @@ -14919,7 +15240,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5931,7 +5931,7 @@ +@@ -5980,7 +5980,7 @@ }, { 'name': 'DefaultMediaStreamSetting', @@ -14928,7 +15249,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5965,7 +5965,7 @@ +@@ -6014,7 +6014,7 @@ }, { 'name': 'DefaultWebBluetoothGuardSetting', @@ -14937,7 +15258,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -5999,7 +5999,7 @@ +@@ -6048,7 +6048,7 @@ }, { 'name': 'DefaultKeygenSetting', @@ -14946,7 +15267,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -6033,7 +6033,7 @@ +@@ -6082,7 +6082,7 @@ }, { 'name': 'DefaultSensorsSetting', @@ -14955,7 +15276,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -6067,7 +6067,7 @@ +@@ -6116,7 +6116,7 @@ }, { 'name': 'DefaultWebUsbGuardSetting', @@ -14964,7 +15285,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -6101,7 +6101,7 @@ +@@ -6150,7 +6150,7 @@ }, { 'name': 'WebUsbAllowDevicesForUrls', @@ -14973,16 +15294,16 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -6133,7 +6133,7 @@ +@@ -6182,7 +6182,7 @@ }, 'example_value': [{ 'devices': [{'vendor_id': 1234, 'product_id': 5678}], -- 'urls': ['https://google.com', 'https://requesting.com,https://embedded.com'], -+ 'urls': ['https://9oo91e.qjz9zk', 'https://requesting.com,https://embedded.com'], +- 'urls': ['https://google.com'], ++ 'urls': ['https://9oo91e.qjz9zk'], }], 'id': 486, 'caption': '''Automatically grant permission to these sites to connect to USB devices with the given vendor and product IDs.''', -@@ -6148,7 +6148,7 @@ +@@ -6199,7 +6199,7 @@ }, { 'name': 'DeviceLoginScreenWebUsbAllowDevicesForUrls', @@ -14991,16 +15312,16 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -6181,7 +6181,7 @@ +@@ -6232,7 +6232,7 @@ }, 'example_value': [{ 'devices': [{'vendor_id': 1234, 'product_id': 5678}], -- 'urls': ['https://google.com', 'https://requesting.com,https://embedded.com'], -+ 'urls': ['https://9oo91e.qjz9zk', 'https://requesting.com,https://embedded.com'], +- 'urls': ['https://google.com'], ++ 'urls': ['https://9oo91e.qjz9zk'], }], 'id': 603, 'caption': '''Automatically grant permission to these sites to connect to USB devices with the given vendor and product IDs on the login screen.''', -@@ -6194,7 +6194,7 @@ +@@ -6247,7 +6247,7 @@ }, { 'name': 'WebUsbAskForUrls', @@ -15009,7 +15330,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6215,11 +6215,11 @@ +@@ -6268,11 +6268,11 @@ URL patterns must not conflict with WebUsbAskForUrls. Neither policy takes precedence if a URL matches with both. @@ -15023,7 +15344,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6240,11 +6240,11 @@ +@@ -6293,11 +6293,11 @@ URL patterns can't conflict with WebUsbAskForUrls. Neither policy takes precedence if a URL matches with both. @@ -15037,7 +15358,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -6278,7 +6278,7 @@ +@@ -6331,7 +6331,7 @@ }, { 'name': 'SerialAskForUrls', @@ -15046,7 +15367,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6301,11 +6301,11 @@ +@@ -6354,11 +6354,11 @@ URL patterns must not conflict with SerialBlockedForUrls. Neither policy takes precedence if a URL matches with both. @@ -15060,10 +15381,65 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6328,11 +6328,11 @@ +@@ -6381,11 +6381,11 @@ URL patterns can't conflict with SerialAskForUrls. Neither policy takes precedence if a URL matches with both. +- For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. * is not an accepted value for this policy.''', ++ For detailed information on valid url patterns, please see https://cloud.9oo91e.qjz9zk/docs/chrome-enterprise/policies/url-patterns. * is not an accepted value for this policy.''', + }, + { + 'name': 'SerialAllowAllPortsForUrls', +- 'owners': ['reillyg@chromium.org', 'file://content/browser/serial/OWNERS'], ++ 'owners': ['reillyg@ch40m1um.qjz9zk', 'file://content/browser/serial/OWNERS'], + 'type': 'list', + 'schema': { + 'type': 'array', +@@ -6408,7 +6408,7 @@ + }, + { + 'name': 'SerialAllowUsbDevicesForUrls', +- 'owners': ['reillyg@chromium.org', 'file://content/browser/serial/OWNERS'], ++ 'owners': ['reillyg@ch40m1um.qjz9zk', 'file://content/browser/serial/OWNERS'], + 'type': 'dict', + 'schema': { + 'type': 'array', +@@ -6462,7 +6462,7 @@ + }, + { + 'name': 'DefaultFileHandlingGuardSetting', +- 'owners': ['huangdarwin@chromium.org', 'cmp@chromium.org'], ++ 'owners': ['huangdarwin@ch40m1um.qjz9zk', 'cmp@ch40m1um.qjz9zk'], + 'type': 'int-enum', + 'schema': { + 'type': 'integer', +@@ -6496,7 +6496,7 @@ + }, + { + 'name': 'FileHandlingAllowedForUrls', +- 'owners': ['huangdarwin@chromium.org', 'cmp@chromium.org'], ++ 'owners': ['huangdarwin@ch40m1um.qjz9zk', 'cmp@ch40m1um.qjz9zk'], + 'type': 'list', + 'schema': { + 'type': 'array', +@@ -6519,11 +6519,11 @@ + + URL patterns must not conflict with FileHandlingBlockedForUrls. Neither policy takes precedence if a URL matches with both. + +- For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. * is not an accepted value for this policy.''', ++ For detailed information on valid url patterns, please see https://cloud.9oo91e.qjz9zk/docs/chrome-enterprise/policies/url-patterns. * is not an accepted value for this policy.''', + }, + { + 'name': 'FileHandlingBlockedForUrls', +- 'owners': ['huangdarwin@chromium.org', 'cmp@chromium.org'], ++ 'owners': ['huangdarwin@ch40m1um.qjz9zk', 'cmp@ch40m1um.qjz9zk'], + 'type': 'list', + 'schema': { + 'type': 'array', +@@ -6546,11 +6546,11 @@ + + URL patterns must not conflict with FileHandlingAllowedForUrls. Neither policy takes precedence if a URL matches with both. + - For detailed information on valid url patterns, please see https://cloud.google.com/docs/chrome-enterprise/policies/url-patterns. * is not an accepted value for this policy.''', + For detailed information on valid url patterns, please see https://cloud.9oo91e.qjz9zk/docs/chrome-enterprise/policies/url-patterns. * is not an accepted value for this policy.''', }, @@ -15074,7 +15450,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -6366,7 +6366,7 @@ +@@ -6584,7 +6584,7 @@ }, { 'name': 'DefaultFileSystemWriteGuardSetting', @@ -15083,7 +15459,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -6400,7 +6400,7 @@ +@@ -6618,7 +6618,7 @@ }, { 'name': 'FileSystemReadAskForUrls', @@ -15092,7 +15468,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6421,11 +6421,11 @@ +@@ -6639,11 +6639,11 @@ URL patterns must not conflict with FileSystemReadBlockedForUrls. Neither policy takes precedence if a URL matches with both. @@ -15106,7 +15482,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6446,11 +6446,11 @@ +@@ -6664,11 +6664,11 @@ URL patterns can't conflict with FileSystemReadAskForUrls. Neither policy takes precedence if a URL matches with both. @@ -15120,7 +15496,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6471,11 +6471,11 @@ +@@ -6689,11 +6689,11 @@ URL patterns must not conflict with FileSystemWriteBlockedForUrls. Neither policy takes precedence if a URL matches with both. @@ -15134,7 +15510,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6496,11 +6496,11 @@ +@@ -6714,11 +6714,11 @@ URL patterns can't conflict with FileSystemWriteAskForUrls. Neither policy takes precedence if a URL matches with both. @@ -15148,7 +15524,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6560,7 +6560,7 @@ +@@ -6778,7 +6778,7 @@ }, { 'name': 'DeviceLoginScreenAutoSelectCertificateForUrls', @@ -15157,7 +15533,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6615,11 +6615,11 @@ +@@ -6833,11 +6833,11 @@ If this policy is left not set, no auto-selection will be done for any site. @@ -15171,7 +15547,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6644,11 +6644,11 @@ +@@ -6862,11 +6862,11 @@ See also policies CookiesBlockedForUrls and CookiesSessionOnlyForUrls. Note that there must be no conflicting URL patterns between these three policies - it is unspecified which policy takes precedence. @@ -15185,7 +15561,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6673,11 +6673,11 @@ +@@ -6891,11 +6891,11 @@ While no specific policy takes precedence, see CookiesAllowedForUrls and CookiesSessionOnlyForUrls. URL patterns among these 3 policies must not conflict. @@ -15199,7 +15575,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6704,11 +6704,11 @@ +@@ -6922,11 +6922,11 @@ While no specific policy takes precedence, see CookiesBlockedForUrls and CookiesAllowedForUrls. URL patterns among these 3 policies must not conflict. @@ -15213,7 +15589,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6727,13 +6727,13 @@ +@@ -6945,13 +6945,13 @@ Leaving the policy unset means DefaultImagesSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15229,7 +15605,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6752,13 +6752,13 @@ +@@ -6970,13 +6970,13 @@ Leaving the policy unset means DefaultImagesSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15245,7 +15621,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6777,11 +6777,11 @@ +@@ -6995,11 +6995,11 @@ Leaving the policy unset means DefaultJavaScriptSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15259,7 +15635,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6800,11 +6800,11 @@ +@@ -7018,11 +7018,11 @@ Leaving the policy unset means DefaultJavaScriptSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15273,7 +15649,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6824,11 +6824,11 @@ +@@ -7042,11 +7042,11 @@ If this policy is left not set the global default value will be used for all sites either from the 'DefaultKeygenSetting' policy if it is set, or the user's personal configuration otherwise. @@ -15287,7 +15663,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6848,11 +6848,11 @@ +@@ -7066,11 +7066,11 @@ If this policy is left not set the global default value will be used for all sites either from the 'DefaultKeygenSetting' policy if it is set, or the user's personal configuration otherwise. @@ -15301,7 +15677,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -6883,13 +6883,13 @@ +@@ -7101,13 +7101,13 @@ 'id': 623, 'caption': '''Default legacy SameSite cookie behavior setting''', 'tags': [], @@ -15317,7 +15693,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -6908,7 +6908,7 @@ +@@ -7126,7 +7126,7 @@ 'id': 624, 'caption': '''Revert to legacy SameSite behavior for cookies on these sites''', 'tags': [], @@ -15326,7 +15702,16 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli For cookies on domains not covered by the patterns specified here, or for all cookies if this policy is not set, the global default value will be used either from the LegacySameSiteCookieBehaviorEnabled policy, if it is set, or the user's personal configuration otherwise. -@@ -6917,9 +6917,9 @@ +@@ -7134,7 +7134,7 @@ + }, + { + 'name': 'LensCameraAssistedSearchEnabled', +- 'owners': [ 'yusuyoutube@google.com', 'benwgold@google.com', 'wylieb@chromium.org', 'fgorski@chromium.org', 'lens-chrome@google.com'], ++ 'owners': [ 'yusuyoutube@9oo91e.qjz9zk', 'benwgold@9oo91e.qjz9zk', 'wylieb@ch40m1um.qjz9zk', 'fgorski@ch40m1um.qjz9zk', 'lens-chrome@9oo91e.qjz9zk'], + 'type': 'main', + 'schema': { 'type': 'boolean' }, + 'future_on': ['android'], +@@ -7162,9 +7162,9 @@ { 'name': 'InsecurePrivateNetworkRequestsAllowed', 'owners': [ @@ -15339,7 +15724,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli ], 'type': 'main', 'schema': { 'type': 'boolean' }, -@@ -6946,7 +6946,7 @@ +@@ -7191,7 +7191,7 @@ 2) Its IP address is private and the other is public. In the future, depending on spec evolution, this policy might apply to all cross-origin requests directed at private IPs or localhost. @@ -15348,7 +15733,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli When this policy is either not set or set to false, the default behavior for requests from insecure contexts to more-private network endpoints will depend on the user's personal configuration for the BlockInsecurePrivateNetworkRequests feature, which may be set by a field trial or on the command line. -@@ -6955,9 +6955,9 @@ +@@ -7200,9 +7200,9 @@ { 'name': 'InsecurePrivateNetworkRequestsAllowedForUrls', 'owners': [ @@ -15361,7 +15746,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli ], 'type': 'list', 'schema': { -@@ -6986,11 +6986,11 @@ +@@ -7231,11 +7231,11 @@ Note that this policy only affects insecure origins, so secure origins (e.g. https://example.com) included in this list will be ignored. @@ -15375,7 +15760,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7010,11 +7010,11 @@ +@@ -7255,11 +7255,11 @@ Leaving the policy unset means DefaultPluginsSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15389,7 +15774,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7034,11 +7034,11 @@ +@@ -7279,11 +7279,11 @@ Leaving the policy unset means DefaultPluginsSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15403,7 +15788,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7062,11 +7062,11 @@ +@@ -7307,11 +7307,11 @@ Leaving the policy unset means DefaultPopupsSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15417,7 +15802,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -7096,7 +7096,7 @@ +@@ -7341,7 +7341,7 @@ 'can_be_recommended': True, 'can_be_mandatory' : False, }, @@ -15426,7 +15811,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 268, 'caption': '''Register protocol handlers''', 'tags': [], -@@ -7107,7 +7107,7 @@ +@@ -7352,7 +7352,7 @@ }, { 'name': 'PopupsBlockedForUrls', @@ -15435,7 +15820,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7131,11 +7131,11 @@ +@@ -7376,11 +7376,11 @@ Leaving the policy unset means DefaultPopupsSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15449,7 +15834,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7154,11 +7154,11 @@ +@@ -7399,11 +7399,11 @@ Leaving the policy unset means DefaultJavaScriptSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15463,7 +15848,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7177,11 +7177,11 @@ +@@ -7422,11 +7422,11 @@ Leaving the policy unset means DefaultJavaScriptSetting applies for all sites, if it's set. If not, the user's personal setting applies. @@ -15477,7 +15862,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7202,7 +7202,7 @@ +@@ -7447,7 +7447,7 @@ If the same URL pattern exists in both this policy and the SensorsBlockedForUrls policy, the latter is prioritized and access to motion or light sensors will be blocked. @@ -15486,7 +15871,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, { 'name': 'SensorsBlockedForUrls', -@@ -7227,11 +7227,11 @@ +@@ -7472,11 +7472,11 @@ If the same URL pattern exists in both this policy and the SensorsAllowedForUrls policy, this policy is prioritized and access to motion or light sensors will be blocked. @@ -15500,7 +15885,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7259,7 +7259,7 @@ +@@ -7504,7 +7504,7 @@ }, { 'name': 'NativeMessagingBlocklist', @@ -15509,7 +15894,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7284,7 +7284,7 @@ +@@ -7529,7 +7529,7 @@ }, { 'name': 'NativeMessagingWhitelist', @@ -15518,7 +15903,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7312,7 +7312,7 @@ +@@ -7557,7 +7557,7 @@ }, { 'name': 'NativeMessagingAllowlist', @@ -15527,7 +15912,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7337,7 +7337,7 @@ +@@ -7582,7 +7582,7 @@ }, { 'name': 'NativeMessagingUserLevelHosts', @@ -15536,7 +15921,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:34-'], -@@ -7355,7 +7355,7 @@ +@@ -7600,7 +7600,7 @@ }, { 'name': 'Disable3DAPIs', @@ -15545,7 +15930,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:9-', 'chrome_os:11-'], -@@ -7373,7 +7373,7 @@ +@@ -7618,7 +7618,7 @@ }, { 'name': 'PolicyRefreshRate', @@ -15554,7 +15939,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 1800000, 'maximum': 86400000 }, 'supported_on': ['chrome_os:11-', 'chrome.*:79-', 'ios:90-'], -@@ -7393,7 +7393,7 @@ +@@ -7638,7 +7638,7 @@ }, { 'name': 'MaxInvalidationFetchDelay', @@ -15563,7 +15948,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 1000, 'maximum': 300000 }, 'supported_on': ['chrome.*:30-', 'chrome_os:30-'], -@@ -7412,7 +7412,7 @@ +@@ -7657,7 +7657,7 @@ }, { 'name': 'ChromeFrameRendererSettings', @@ -15572,7 +15957,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -7444,7 +7444,7 @@ +@@ -7689,7 +7689,7 @@ }, { 'name': 'RenderInChromeFrameList', @@ -15581,7 +15966,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7463,11 +7463,11 @@ +@@ -7708,11 +7708,11 @@ If this policy is not set the default renderer will be used for all sites as specified by the 'ChromeFrameRendererSettings' policy. @@ -15595,7 +15980,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7486,11 +7486,11 @@ +@@ -7731,11 +7731,11 @@ If this policy is not set the default renderer will be used for all sites as specified by the 'ChromeFrameRendererSettings' policy. @@ -15609,7 +15994,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_frame:19-32'], -@@ -7508,7 +7508,7 @@ +@@ -7753,7 +7753,7 @@ }, { 'name': 'SkipMetadataCheck', @@ -15618,7 +16003,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_frame:31-32'], -@@ -7530,7 +7530,7 @@ +@@ -7775,7 +7775,7 @@ }, { 'name': 'ChromeFrameContentTypes', @@ -15627,7 +16012,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -7551,7 +7551,7 @@ +@@ -7796,7 +7796,7 @@ }, { 'name': 'ChromeOsLockOnIdleSuspend', @@ -15636,7 +16021,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:9-'], -@@ -7572,7 +7572,7 @@ +@@ -7817,7 +7817,7 @@ }, { 'name': 'ChromeOsMultiProfileUserBehavior', @@ -15645,7 +16030,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -7626,7 +7626,7 @@ +@@ -7871,7 +7871,7 @@ }, { 'name': 'SecondaryGoogleAccountSigninAllowed', @@ -15654,7 +16039,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:65-'], -@@ -7651,7 +7651,7 @@ +@@ -7896,7 +7896,7 @@ }, { 'name': 'ForceLogoutUnauthenticatedUserEnabled', @@ -15663,7 +16048,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:81-'], -@@ -7671,7 +7671,7 @@ +@@ -7916,7 +7916,7 @@ }, { 'name': 'SecurityTokenSessionBehavior', @@ -15672,7 +16057,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -7707,7 +7707,7 @@ +@@ -7952,7 +7952,7 @@ }, { 'name': 'SecurityTokenSessionNotificationSeconds', @@ -15681,7 +16066,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 0, 'maximum': 9999 }, 'supported_on': ['chrome_os:90-'], -@@ -7723,7 +7723,7 @@ +@@ -7968,7 +7968,7 @@ }, { 'name': 'TargetBlankImpliesNoOpener', @@ -15690,7 +16075,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:88-', 'chrome_os:88-', 'android:88-'], -@@ -7752,11 +7752,11 @@ +@@ -7997,11 +7997,11 @@ This policy will be removed in $1Google Chrome version 95. @@ -15704,7 +16089,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:11-28', 'chrome_os:11-28'], -@@ -7784,7 +7784,7 @@ +@@ -8029,7 +8029,7 @@ }, { 'name': 'AppRecommendationZeroStateEnabled', @@ -15713,7 +16098,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:75-'], -@@ -7804,7 +7804,7 @@ +@@ -8049,7 +8049,7 @@ }, { 'name': 'TranslateEnabled', @@ -15722,7 +16107,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -7828,7 +7828,7 @@ +@@ -8073,7 +8073,7 @@ }, { 'name': 'AllowOutdatedPlugins', @@ -15731,7 +16116,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:12-87', 'chrome_os:12-87'], -@@ -7847,7 +7847,7 @@ +@@ -8092,7 +8092,7 @@ }, { 'name': 'AlwaysAuthorizePlugins', @@ -15740,7 +16125,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:13-64', 'chrome_os:13-64'], -@@ -7866,7 +7866,7 @@ +@@ -8111,7 +8111,7 @@ }, { 'name': 'RunAllFlashInAllowMode', @@ -15748,8 +16133,8 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli + 'owners': ['file://components/policy/resources/OWNERS', 'pastarmovj@ch40m1um.qjz9zk'], 'type': 'main', 'schema': { 'type': 'boolean' }, - 'supported_on': ['chrome.*:63-', 'chrome_os:63-'], -@@ -7886,7 +7886,7 @@ + 'supported_on': ['chrome.*:63-88', 'chrome_os:63-88'], +@@ -8134,7 +8134,7 @@ }, { 'name': 'BookmarkBarEnabled', @@ -15758,7 +16143,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:12-', 'chrome_os:12-'], -@@ -7905,7 +7905,7 @@ +@@ -8153,7 +8153,7 @@ }, { 'name': 'EditBookmarksEnabled', @@ -15767,7 +16152,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -7928,7 +7928,7 @@ +@@ -8176,7 +8176,7 @@ }, { 'name': 'ShowAppsShortcutInBookmarkBar', @@ -15776,7 +16161,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:37-'], -@@ -7961,7 +7961,7 @@ +@@ -8209,7 +8209,7 @@ }, { 'name': 'AllowFileSelectionDialogs', @@ -15785,7 +16170,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:12-'], -@@ -7990,7 +7990,7 @@ +@@ -8238,7 +8238,7 @@ }, { 'name': 'SecurityKeyPermitAttestation', @@ -15794,7 +16179,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'tags': ['website-sharing'], 'type': 'list', 'schema': { -@@ -8011,7 +8011,7 @@ +@@ -8259,7 +8259,7 @@ }, { 'name': 'GCFUserDataDir', @@ -15803,7 +16188,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_frame:12-32'], -@@ -8027,14 +8027,14 @@ +@@ -8275,14 +8275,14 @@ If you set this policy, $3Google Chrome Frame will use the provided directory. @@ -15820,7 +16205,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:11-'], -@@ -8055,7 +8055,7 @@ +@@ -8303,7 +8303,7 @@ }, { 'name': 'ImportBookmarks', @@ -15829,7 +16214,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:15-'], -@@ -8076,7 +8076,7 @@ +@@ -8324,7 +8324,7 @@ }, { 'name': 'ImportHistory', @@ -15838,7 +16223,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:15-'], -@@ -8097,7 +8097,7 @@ +@@ -8345,7 +8345,7 @@ }, { 'name': 'ImportHomepage', @@ -15847,7 +16232,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:15-'], -@@ -8116,7 +8116,7 @@ +@@ -8364,7 +8364,7 @@ }, { 'name': 'ImportSearchEngine', @@ -15856,7 +16241,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:15-'], -@@ -8136,7 +8136,7 @@ +@@ -8384,7 +8384,7 @@ }, { 'name': 'ImportSavedPasswords', @@ -15865,7 +16250,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:15-'], -@@ -8156,7 +8156,7 @@ +@@ -8404,7 +8404,7 @@ }, { 'name': 'ImportAutofillFormData', @@ -15874,7 +16259,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:39-'], -@@ -8176,7 +8176,7 @@ +@@ -8424,7 +8424,7 @@ }, { 'name': 'MaxConnectionsPerProxy', @@ -15883,7 +16268,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome.*:14-'], -@@ -8195,7 +8195,7 @@ +@@ -8443,7 +8443,7 @@ }, { 'name': 'HideWebStorePromo', @@ -15892,7 +16277,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:15-21', 'chrome_os:15-21'], -@@ -8213,7 +8213,7 @@ +@@ -8461,7 +8461,7 @@ }, { 'name': 'URLBlacklist', @@ -15901,7 +16286,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -8236,7 +8236,7 @@ +@@ -8484,7 +8484,7 @@ 'tags': ['filtering'], 'desc': '''This policy is deprecated, please use the 'URLBlocklist' policy instead. @@ -15910,7 +16295,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli From $1Google Chrome version 73, you can block javascript://* URLs. However, it affects only JavaScript entered in the address bar (or, for example, bookmarklets). In-page JavaScript URLs with dynamically loaded data aren't subject to this policy. For example, if you block example.com/abc, then example.com can still load example.com/abc using XMLHTTPRequest. -@@ -8245,7 +8245,7 @@ +@@ -8493,7 +8493,7 @@ }, { 'name': 'URLWhitelist', @@ -15919,7 +16304,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -8268,7 +8268,7 @@ +@@ -8516,7 +8516,7 @@ 'tags': [], 'desc': '''This policy is deprecated, please use the 'URLAllowlist' policy instead. @@ -15928,7 +16313,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli This policy also allows enabling the automatic invocation by the browser of external application registered as protocol handlers for the listed protocols like "tel:" or "ssh:". -@@ -8279,7 +8279,7 @@ +@@ -8527,7 +8527,7 @@ }, { 'name': 'URLBlocklist', @@ -15937,7 +16322,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -8300,7 +8300,7 @@ +@@ -8548,7 +8548,7 @@ 'id': 736, 'caption': '''Block access to a list of URLs''', 'tags': ['filtering'], @@ -15946,7 +16331,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli From $1Google Chrome version 73, you can block javascript://* URLs. However, it affects only JavaScript entered in the address bar (or, for example, bookmarklets). In-page JavaScript URLs with dynamically loaded data aren't subject to this policy. For example, if you block example.com/abc, then example.com can still load example.com/abc using XMLHTTPRequest. -@@ -8309,7 +8309,7 @@ +@@ -8557,7 +8557,7 @@ }, { 'name': 'URLAllowlist', @@ -15955,7 +16340,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -8330,7 +8330,7 @@ +@@ -8578,7 +8578,7 @@ 'id': 737, 'caption': '''Allow access to a list of URLs''', 'tags': [], @@ -15964,7 +16349,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli This policy also allows enabling the automatic invocation by the browser of external application registered as protocol handlers for the listed protocols like "tel:" or "ssh:". -@@ -8341,7 +8341,7 @@ +@@ -8589,7 +8589,7 @@ }, { 'name': 'PolicyAtomicGroupsEnabled', @@ -15973,7 +16358,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:78-', 'chrome_os:78-'], -@@ -8361,7 +8361,7 @@ +@@ -8609,7 +8609,7 @@ }, { 'name': 'PolicyListMultipleSourceMergeList', @@ -15982,7 +16367,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -8389,7 +8389,7 @@ +@@ -8637,7 +8637,7 @@ }, { 'name': 'PolicyDictionaryMultipleSourceMergeList', @@ -15991,7 +16376,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum-list', 'schema': { 'type': 'array', -@@ -8457,7 +8457,7 @@ +@@ -8705,7 +8705,7 @@ }, { 'name': 'EnableExperimentalPolicies', @@ -16000,7 +16385,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -8486,10 +8486,10 @@ +@@ -8734,10 +8734,10 @@ }, { 'name': 'OpenNetworkConfiguration', @@ -16013,7 +16398,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:16-'], 'features': { 'dynamic_refresh': True, -@@ -8504,10 +8504,10 @@ +@@ -8752,10 +8752,10 @@ }, { 'name': 'DeviceOpenNetworkConfiguration', @@ -16026,52 +16411,52 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:16-'], 'device_only': True, 'features': { -@@ -8522,7 +8522,7 @@ +@@ -8770,7 +8770,7 @@ }, { 'name': 'DeviceKerberosEncryptionTypes', -- 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'fsandrade@chromium.org'], -+ 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'fsandrade@ch40m1um.qjz9zk'], +- 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'fsandrade@chromium.org'], ++ 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'fsandrade@ch40m1um.qjz9zk'], 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -8569,7 +8569,7 @@ +@@ -8817,7 +8817,7 @@ }, { 'name': 'DeviceUserPolicyLoopbackProcessingMode', -- 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'tomdobro@chromium.org'], -+ 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'tomdobro@ch40m1um.qjz9zk'], +- 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'tomdobro@chromium.org'], ++ 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'tomdobro@ch40m1um.qjz9zk'], 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -8612,7 +8612,7 @@ +@@ -8860,7 +8860,7 @@ }, { 'name': 'DeviceMachinePasswordChangeRate', -- 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'fsandrade@chromium.org'], -+ 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'fsandrade@ch40m1um.qjz9zk'], +- 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'fsandrade@chromium.org'], ++ 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'fsandrade@ch40m1um.qjz9zk'], 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 0, 'maximum': 9999 }, 'supported_on': ['chrome_os:66-'], -@@ -8635,7 +8635,7 @@ +@@ -8883,7 +8883,7 @@ }, { 'name': 'DeviceGpoCacheLifetime', -- 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'tomdobro@chromium.org'], -+ 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'tomdobro@ch40m1um.qjz9zk'], +- 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'tomdobro@chromium.org'], ++ 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'tomdobro@ch40m1um.qjz9zk'], 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 0, 'maximum': 9999 }, 'supported_on': ['chrome_os:73-'], -@@ -8658,7 +8658,7 @@ +@@ -8906,7 +8906,7 @@ }, { 'name': 'DeviceAuthDataCacheLifetime', -- 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'fsandrade@chromium.org'], -+ 'owners': ['file://chrome/browser/chromeos/authpolicy/OWNERS', 'fsandrade@ch40m1um.qjz9zk'], +- 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'fsandrade@chromium.org'], ++ 'owners': ['file://chrome/browser/ash/authpolicy/OWNERS', 'fsandrade@ch40m1um.qjz9zk'], 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 0, 'maximum': 9999 }, 'supported_on': ['chrome_os:73-'], -@@ -8681,7 +8681,7 @@ +@@ -8929,7 +8929,7 @@ }, { 'name': 'CloudPrintSubmitEnabled', @@ -16080,7 +16465,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:17-'], -@@ -8701,7 +8701,7 @@ +@@ -8949,7 +8949,7 @@ }, { 'name': 'EnterpriseWebStoreURL', @@ -16089,7 +16474,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:17-28', 'chrome_os:17-28'], -@@ -8718,7 +8718,7 @@ +@@ -8966,7 +8966,7 @@ }, { 'name': 'EnterpriseWebStoreName', @@ -16098,7 +16483,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:17-28', 'chrome_os:17-28'], -@@ -8735,7 +8735,7 @@ +@@ -8983,7 +8983,7 @@ }, { 'name': 'DisablePrintPreview', @@ -16107,7 +16492,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:18-'], -@@ -8753,7 +8753,7 @@ +@@ -9001,7 +9001,7 @@ }, { 'name': 'PrintHeaderFooter', @@ -16116,7 +16501,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:70-', 'chrome.*:70-'], -@@ -8772,7 +8772,7 @@ +@@ -9020,7 +9020,7 @@ }, { 'name': 'DefaultPrinterSelection', @@ -16125,7 +16510,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'validation_schema': { -@@ -8813,7 +8813,7 @@ +@@ -9061,7 +9061,7 @@ }, { 'name': 'DisableSSLRecordSplitting', @@ -16134,7 +16519,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:18-46', 'chrome_os:18-46'], -@@ -8832,7 +8832,7 @@ +@@ -9080,7 +9080,7 @@ }, { 'name': 'EnableOnlineRevocationChecks', @@ -16143,7 +16528,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:19-', 'chrome_os:19-'], -@@ -8852,7 +8852,7 @@ +@@ -9100,7 +9100,7 @@ }, { 'name': 'RequireOnlineRevocationChecksForLocalAnchors', @@ -16152,7 +16537,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:30-', 'chrome.linux:30-', 'chrome.win:30-'], -@@ -8881,7 +8881,7 @@ +@@ -9129,7 +9129,7 @@ }, { 'name': 'EnableSha1ForLocalAnchors', @@ -16161,7 +16546,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:54-71', 'chrome_os:54-71', 'android:54-71'], -@@ -8902,7 +8902,7 @@ +@@ -9150,7 +9150,7 @@ }, { 'name': 'EnableCommonNameFallbackForLocalAnchors', @@ -16170,7 +16555,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:58-65', 'chrome_os:58-65', 'android:58-65'], -@@ -8923,7 +8923,7 @@ +@@ -9171,7 +9171,7 @@ }, { 'name': 'EnableSymantecLegacyInfrastructure', @@ -16179,7 +16564,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:66-75', 'chrome_os:66-75', 'android:66-75'], -@@ -8946,7 +8946,7 @@ +@@ -9194,7 +9194,7 @@ }, { 'name': 'BuiltinCertificateVerifierEnabled', @@ -16188,7 +16573,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:77-83', 'chrome.linux:79-83', 'chrome.mac:83-'], -@@ -8971,7 +8971,7 @@ +@@ -9219,7 +9219,7 @@ }, { 'name': 'ForceEphemeralProfiles', @@ -16197,7 +16582,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:32-'], -@@ -8993,7 +8993,7 @@ +@@ -9241,7 +9241,7 @@ }, { 'name': 'GaiaOfflineSigninTimeLimitDays', @@ -16206,7 +16591,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': -1, 'maximum': 365 }, 'supported_on': ['chrome_os:90-'], -@@ -9018,7 +9018,7 @@ +@@ -9266,7 +9266,7 @@ }, { 'name': 'SAMLOfflineSigninTimeLimit', @@ -16215,7 +16600,25 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': -1 }, 'supported_on': ['chrome_os:34-'], -@@ -9042,7 +9042,7 @@ +@@ -9290,7 +9290,7 @@ + }, + { + 'name': 'GaiaLockScreenOfflineSigninTimeLimitDays', +- 'owners': ['ayag@chromium.org', 'chromeos-commercial-identity@google.com', 'file://components/policy/resources/OWNERS'], ++ 'owners': ['ayag@ch40m1um.qjz9zk', 'chromeos-commercial-identity@9oo91e.qjz9zk', 'file://components/policy/resources/OWNERS'], + 'type': 'int', + 'schema': { + 'type': 'integer', +@@ -9321,7 +9321,7 @@ + }, + { + 'name': 'SamlLockScreenOfflineSigninTimeLimitDays', +- 'owners': ['ayag@chromium.org', 'chromeos-commercial-identity@google.com', 'file://components/policy/resources/OWNERS'], ++ 'owners': ['ayag@ch40m1um.qjz9zk', 'chromeos-commercial-identity@9oo91e.qjz9zk', 'file://components/policy/resources/OWNERS'], + 'type': 'int', + 'schema': { + 'type': 'integer', +@@ -9352,7 +9352,7 @@ }, { 'name': 'AutoCleanUpStrategy', @@ -16224,7 +16627,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -9082,7 +9082,7 @@ +@@ -9392,7 +9392,7 @@ }, { 'name': 'ReportDeviceVersionInfo', @@ -16233,7 +16636,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:18-'], -@@ -9102,7 +9102,7 @@ +@@ -9412,7 +9412,7 @@ }, { 'name': 'ReportDeviceActivityTimes', @@ -16242,7 +16645,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:18-'], -@@ -9122,7 +9122,7 @@ +@@ -9432,7 +9432,7 @@ }, { 'name': 'ReportDeviceBootMode', @@ -16251,7 +16654,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:18-'], -@@ -9142,7 +9142,7 @@ +@@ -9452,7 +9452,7 @@ }, { 'name': 'ReportDeviceLocation', @@ -16260,7 +16663,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'future_on': ['chrome_os'], -@@ -9162,7 +9162,7 @@ +@@ -9472,7 +9472,7 @@ }, { 'name': 'ReportDeviceNetworkInterfaces', @@ -16269,7 +16672,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:29-'], -@@ -9182,7 +9182,7 @@ +@@ -9492,7 +9492,7 @@ }, { 'name': 'ReportDeviceUsers', @@ -16278,7 +16681,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:32-'], -@@ -9202,7 +9202,7 @@ +@@ -9512,7 +9512,7 @@ }, { 'name': 'ReportDeviceHardwareStatus', @@ -16287,7 +16690,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:42-'], -@@ -9222,7 +9222,7 @@ +@@ -9532,7 +9532,7 @@ }, { 'name': 'ReportDeviceSessionStatus', @@ -16296,7 +16699,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:42-'], -@@ -9242,7 +9242,7 @@ +@@ -9552,7 +9552,7 @@ }, { 'name': 'ReportDeviceGraphicsStatus', @@ -16305,7 +16708,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:81-'], -@@ -9265,7 +9265,7 @@ +@@ -9575,7 +9575,7 @@ }, { 'name': 'ReportDeviceCrashReportInfo', @@ -16314,7 +16717,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:83-'], -@@ -9288,7 +9288,7 @@ +@@ -9598,7 +9598,7 @@ }, { 'name': 'ReportDeviceOsUpdateStatus', @@ -16323,7 +16726,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -9310,7 +9310,7 @@ +@@ -9620,7 +9620,7 @@ }, { 'name': 'ReportDevicePowerStatus', @@ -16332,7 +16735,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:73-'], -@@ -9330,7 +9330,7 @@ +@@ -9640,7 +9640,7 @@ }, { 'name': 'ReportDeviceStorageStatus', @@ -16341,7 +16744,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:73-'], -@@ -9350,7 +9350,7 @@ +@@ -9660,7 +9660,7 @@ }, { 'name': 'ReportDeviceBoardStatus', @@ -16350,7 +16753,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:73-'], -@@ -9370,7 +9370,7 @@ +@@ -9680,7 +9680,7 @@ }, { 'name': 'ReportDeviceCpuInfo', @@ -16359,7 +16762,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:81-'], -@@ -9392,7 +9392,7 @@ +@@ -9702,7 +9702,7 @@ }, { 'name': 'ReportDeviceTimezoneInfo', @@ -16368,7 +16771,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:83-'], -@@ -9413,7 +9413,7 @@ +@@ -9723,7 +9723,7 @@ }, { 'name': 'ReportDeviceMemoryInfo', @@ -16377,7 +16780,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:83-'], -@@ -9434,7 +9434,7 @@ +@@ -9744,7 +9744,7 @@ }, { 'name': 'ReportDeviceBacklightInfo', @@ -16386,7 +16789,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:83-'], -@@ -9455,7 +9455,7 @@ +@@ -9765,7 +9765,7 @@ }, { 'name': 'ReportDeviceAppInfo', @@ -16395,7 +16798,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -9476,7 +9476,7 @@ +@@ -9786,7 +9786,7 @@ }, { 'name': 'ReportDeviceBluetoothInfo', @@ -16404,7 +16807,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -9497,7 +9497,7 @@ +@@ -9807,7 +9807,7 @@ }, { 'name': 'ReportDeviceFanInfo', @@ -16413,7 +16816,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -9518,7 +9518,7 @@ +@@ -9828,7 +9828,7 @@ }, { 'name': 'ReportDeviceVpdInfo', @@ -16422,7 +16825,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -9540,7 +9540,7 @@ +@@ -9850,7 +9850,7 @@ }, { 'name': 'ReportDeviceSystemInfo', @@ -16431,7 +16834,16 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:86-'], -@@ -9561,7 +9561,7 @@ +@@ -9871,7 +9871,7 @@ + }, + { + 'name': 'ReportDevicePrintJobs', +- 'owners': ['mattme@google.com', 'file://components/policy/resources/OWNERS'], ++ 'owners': ['mattme@9oo91e.qjz9zk', 'file://components/policy/resources/OWNERS'], + 'type': 'main', + 'schema': { 'type': 'boolean' }, + 'future_on': ['chrome_os'], +@@ -9903,7 +9903,7 @@ }, { 'name': 'ReportUploadFrequency', @@ -16440,7 +16852,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 60000 }, 'supported_on': ['chrome_os:42-'], -@@ -9581,7 +9581,7 @@ +@@ -9923,7 +9923,7 @@ }, { 'name': 'ReportArcStatusEnabled', @@ -16449,7 +16861,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:55-'], -@@ -9600,7 +9600,7 @@ +@@ -9942,7 +9942,7 @@ }, { 'name': 'ReportCrostiniUsageEnabled', @@ -16458,7 +16870,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:70-'], -@@ -9619,7 +9619,7 @@ +@@ -9961,7 +9961,7 @@ }, { 'name': 'HeartbeatEnabled', @@ -16467,7 +16879,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:43-'], -@@ -9639,7 +9639,7 @@ +@@ -9981,7 +9981,7 @@ }, { 'name': 'HeartbeatFrequency', @@ -16476,7 +16888,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 30000 }, 'supported_on': ['chrome_os:43-'], -@@ -9659,7 +9659,7 @@ +@@ -10001,7 +10001,7 @@ }, { 'name': 'LogUploadEnabled', @@ -16485,7 +16897,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:46-'], -@@ -9679,7 +9679,7 @@ +@@ -10021,7 +10021,7 @@ }, { 'name': 'DeviceUserWhitelist', @@ -16494,7 +16906,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -9692,11 +9692,11 @@ +@@ -10034,11 +10034,11 @@ 'dynamic_refresh': True, }, 'deprecated': True, @@ -16508,7 +16920,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli If this policy is not configured, there are no restrictions on which users are allowed to sign in. Note that creating new users still requires the DeviceAllowNewUsers policy to be configured appropriately. -@@ -9707,7 +9707,7 @@ +@@ -10049,7 +10049,7 @@ }, { 'name': 'DeviceUserAllowlist', @@ -16517,7 +16929,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -9719,11 +9719,11 @@ +@@ -10061,11 +10061,11 @@ 'features': { 'dynamic_refresh': True, }, @@ -16531,7 +16943,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli If this policy is not configured, there are no restrictions on which users are allowed to sign in. Note that creating new users still requires the DeviceAllowNewUsers policy to be configured appropriately. If DeviceFamilyLinkAccountsAllowed is enabled, Family Link users will be allowed additionally to the accounts defined in this policy.''', -@@ -9731,7 +9731,7 @@ +@@ -10073,7 +10073,7 @@ }, { 'name': 'DeviceAllowNewUsers', @@ -16540,7 +16952,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:12-'], -@@ -9750,7 +9750,7 @@ +@@ -10092,7 +10092,7 @@ }, { 'name': 'DeviceGuestModeEnabled', @@ -16549,7 +16961,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:12-'], -@@ -9768,7 +9768,7 @@ +@@ -10110,7 +10110,7 @@ }, { 'name': 'DeviceShowUserNamesOnSignin', @@ -16558,7 +16970,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:12-'], -@@ -9788,7 +9788,7 @@ +@@ -10130,7 +10130,7 @@ }, { 'name': 'DeviceDataRoamingEnabled', @@ -16567,7 +16979,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:12-'], -@@ -9806,7 +9806,7 @@ +@@ -10148,7 +10148,7 @@ }, { 'name': 'DeviceMetricsReportingEnabled', @@ -16576,7 +16988,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:14-'], -@@ -9828,7 +9828,7 @@ +@@ -10170,7 +10170,7 @@ }, { 'name': 'ChromeOsReleaseChannel', @@ -16585,7 +16997,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -9866,7 +9866,7 @@ +@@ -10208,7 +10208,7 @@ }, { 'name': 'ChromeOsReleaseChannelDelegated', @@ -16594,7 +17006,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:19-'], -@@ -9884,7 +9884,7 @@ +@@ -10226,7 +10226,7 @@ }, { 'name': 'DeviceReleaseLtsTag', @@ -16603,7 +17015,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:86-'], -@@ -9900,7 +9900,7 @@ +@@ -10242,7 +10242,7 @@ }, { 'name': 'DeviceChannelDowngradeBehavior', @@ -16612,7 +17024,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -9945,7 +9945,7 @@ +@@ -10287,7 +10287,7 @@ }, { 'name': 'DeviceEphemeralUsersEnabled', @@ -16621,7 +17033,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:19-'], -@@ -9961,7 +9961,7 @@ +@@ -10303,7 +10303,7 @@ }, { 'name': 'DeviceStartUpUrls', @@ -16630,7 +17042,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -9973,7 +9973,7 @@ +@@ -10315,7 +10315,7 @@ 'dynamic_refresh': True, }, 'deprecated': True, @@ -16639,7 +17051,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 137, 'caption': '''Load specified urls on demo login''', 'tags': [], -@@ -9983,7 +9983,7 @@ +@@ -10325,7 +10325,7 @@ }, { 'name': 'DeviceIdleLogoutTimeout', @@ -16648,7 +17060,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:19-40'], -@@ -10004,7 +10004,7 @@ +@@ -10346,7 +10346,7 @@ }, { 'name': 'DeviceIdleLogoutWarningDuration', @@ -16657,7 +17069,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:19-40'], -@@ -10025,7 +10025,7 @@ +@@ -10367,7 +10367,7 @@ }, { 'name': 'DeviceLoginScreenSaverId', @@ -16666,7 +17078,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:19-40'], -@@ -10044,7 +10044,7 @@ +@@ -10386,7 +10386,7 @@ }, { 'name': 'DeviceLoginScreenSaverTimeout', @@ -16675,7 +17087,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:19-40'], -@@ -10065,7 +10065,7 @@ +@@ -10407,7 +10407,7 @@ }, { 'name': 'DeviceAppPack', @@ -16684,7 +17096,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -10077,7 +10077,7 @@ +@@ -10419,7 +10419,7 @@ 'dynamic_refresh': True, }, 'deprecated': True, @@ -16693,7 +17105,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 135, 'caption': '''List of AppPack extensions''', 'tags': [], -@@ -10089,7 +10089,7 @@ +@@ -10431,7 +10431,7 @@ }, { 'name': 'DeviceAutoUpdateDisabled', @@ -16702,7 +17114,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:19-'], -@@ -10109,7 +10109,7 @@ +@@ -10451,7 +10451,7 @@ }, { 'name': 'DeviceAutoUpdateP2PEnabled', @@ -16711,7 +17123,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:31-'], -@@ -10125,7 +10125,7 @@ +@@ -10467,7 +10467,7 @@ }, { 'name': 'DeviceRollbackAllowedMilestones', @@ -16720,7 +17132,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -10153,7 +10153,7 @@ +@@ -10495,7 +10495,7 @@ }, { 'name': 'DeviceRollbackToTargetVersion', @@ -16729,7 +17141,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -10192,7 +10192,7 @@ +@@ -10534,7 +10534,7 @@ }, { 'name': 'DeviceTargetVersionPrefix', @@ -16738,7 +17150,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:19-'], -@@ -10217,7 +10217,7 @@ +@@ -10559,7 +10559,7 @@ }, { 'name': 'DeviceUpdateScatterFactor', @@ -16747,7 +17159,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:20-'], -@@ -10233,7 +10233,7 @@ +@@ -10575,7 +10575,7 @@ }, { 'name': 'DeviceUpdateAllowedConnectionTypes', @@ -16756,7 +17168,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -10254,7 +10254,7 @@ +@@ -10596,7 +10596,7 @@ }, { 'name': 'DeviceUpdateHttpDownloadsEnabled', @@ -16765,7 +17177,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean', -@@ -10274,7 +10274,7 @@ +@@ -10616,7 +10616,7 @@ }, { 'name': 'DeviceLocalAccounts', @@ -16774,7 +17186,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -10296,7 +10296,7 @@ +@@ -10638,7 +10638,7 @@ }, { 'name': 'DeviceLocalAccountAutoLoginId', @@ -16783,7 +17195,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:26-'], -@@ -10315,7 +10315,7 @@ +@@ -10657,7 +10657,7 @@ }, { 'name': 'DeviceLocalAccountAutoLoginDelay', @@ -16792,7 +17204,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:26-'], -@@ -10336,7 +10336,7 @@ +@@ -10678,7 +10678,7 @@ }, { 'name': 'DeviceLocalAccountAutoLoginBailoutEnabled', @@ -16801,7 +17213,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:28-'], -@@ -10355,7 +10355,7 @@ +@@ -10697,7 +10697,7 @@ }, { 'name': 'DeviceLocalAccountPromptForNetworkWhenOffline', @@ -16810,7 +17222,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:33-'], -@@ -10374,7 +10374,7 @@ +@@ -10716,7 +10716,7 @@ }, { 'name': 'DeviceLocalAccountManagedSessionEnabled', @@ -16819,7 +17231,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:70-'], -@@ -10388,7 +10388,7 @@ +@@ -10730,7 +10730,7 @@ 'caption': '''Allow managed session on device''', 'tags': [], 'desc': '''Note that this policy is deprecated and will be removed in $2Google Chrome OS version 88. Public sessions are no longer supported. Please use DeviceLocalAccounts to configure managed-guest sessions instead. @@ -16828,7 +17240,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli If this policy is set to true or left unset, managed guest session will take on "Managed Session" behaviour which lifts many of the restrictions that are in place for regular "Public Sessions". -@@ -10396,7 +10396,7 @@ +@@ -10738,7 +10738,7 @@ }, { 'name': 'DeviceBlockDevmode', @@ -16837,7 +17249,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:37-'], -@@ -10415,7 +10415,7 @@ +@@ -10757,7 +10757,7 @@ 'arc_support': 'This policy controls $2Google Chrome OS developer mode only. If you want to prevent access to Android Developer Options, you need to set the DeveloperToolsDisabled policy.', }, { 'name': 'ManagedGuestSessionAutoLaunchNotificationReduced', @@ -16846,7 +17258,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:83-88'], -@@ -10439,7 +10439,7 @@ +@@ -10781,7 +10781,7 @@ }, { 'name': 'ManagedGuestSessionPrivacyWarningsEnabled', @@ -16855,7 +17267,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'device_only': True, 'type': 'main', 'schema': { 'type': 'boolean' }, -@@ -10463,7 +10463,7 @@ +@@ -10805,7 +10805,7 @@ }, { 'name': 'BackgroundModeEnabled', @@ -16864,7 +17276,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:19-', 'chrome.linux:19-'], -@@ -10484,7 +10484,7 @@ +@@ -10826,7 +10826,7 @@ }, { 'name': 'DriveDisabled', @@ -16873,7 +17285,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:19-'], -@@ -10503,7 +10503,7 @@ +@@ -10845,7 +10845,7 @@ }, { 'name': 'DriveDisabledOverCellular', @@ -16882,7 +17294,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:19-'], -@@ -10522,7 +10522,7 @@ +@@ -10864,7 +10864,7 @@ }, { 'name': 'PinnedLauncherApps', @@ -16891,7 +17303,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -10534,20 +10534,20 @@ +@@ -10876,20 +10876,20 @@ 'dynamic_refresh': True, 'per_profile': True, }, @@ -16915,7 +17327,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:21-'], -@@ -10567,7 +10567,7 @@ +@@ -10909,7 +10909,7 @@ }, { 'name': 'DisableSafeBrowsingProceedAnyway', @@ -16924,7 +17336,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -10588,11 +10588,11 @@ +@@ -10930,11 +10930,11 @@ Setting the policy to Disabled or leaving it unset means users can choose to proceed to the flagged site after the warning appears. @@ -16938,7 +17350,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:44-84', 'chrome_os:44-84'], -@@ -10609,11 +10609,11 @@ +@@ -10951,11 +10951,11 @@ Setting this policy to false stops users from choosing to send some system information and page content to Google servers. If this setting is true or not configured, then users will be allowed to send some system information and page content to Safe Browsing to help detect dangerous apps and sites. @@ -16952,7 +17364,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:22-', 'chrome_os:22-'], -@@ -10649,7 +10649,7 @@ +@@ -10991,7 +10991,7 @@ }, { 'name': 'ExternalStorageDisabled', @@ -16961,7 +17373,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:22-'], -@@ -10667,7 +10667,7 @@ +@@ -11009,7 +11009,7 @@ }, { 'name': 'ExternalStorageReadOnly', @@ -16970,7 +17382,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 343, 'type': 'main', 'schema': { 'type': 'boolean' }, -@@ -10685,7 +10685,7 @@ +@@ -11027,7 +11027,7 @@ }, { 'name': 'AudioOutputAllowed', @@ -16979,7 +17391,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:23-'], -@@ -10705,7 +10705,7 @@ +@@ -11047,7 +11047,7 @@ }, { 'name': 'AudioCaptureAllowed', @@ -16988,7 +17400,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:25-', 'chrome_os:23-'], -@@ -10726,7 +10726,7 @@ +@@ -11068,7 +11068,7 @@ }, { 'name': 'AudioCaptureAllowedUrls', @@ -16997,7 +17409,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -10743,11 +10743,11 @@ +@@ -11085,11 +11085,11 @@ 'tags': ['website-sharing'], 'desc': '''Setting the policy means you specify the URL list whose patterns get matched to the security origin of the requesting URL. A match grants access to audio capture devices without prompt @@ -17011,7 +17423,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:25-', 'chrome_os:25-'], -@@ -10767,7 +10767,7 @@ +@@ -11109,7 +11109,7 @@ }, { 'name': 'VideoCaptureAllowedUrls', @@ -17020,7 +17432,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -10784,11 +10784,11 @@ +@@ -11126,11 +11126,11 @@ 'tags': ['website-sharing'], 'desc': '''Setting the policy means you specify the URL list whose patterns get matched to the security origin of the requesting URL. A match grants access to video capture devices without prompt @@ -17034,7 +17446,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:22-', 'chrome.*:22-'], -@@ -10804,7 +10804,7 @@ +@@ -11146,7 +11146,7 @@ }, { 'name': 'SystemTimezone', @@ -17043,7 +17455,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:22-'], -@@ -10824,7 +10824,7 @@ +@@ -11166,7 +11166,7 @@ }, { 'name': 'SystemUse24HourClock', @@ -17052,7 +17464,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:30-'], -@@ -10846,7 +10846,7 @@ +@@ -11188,7 +11188,7 @@ }, { 'name': 'TouchVirtualKeyboardEnabled', @@ -17061,7 +17473,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:37-' ], -@@ -10868,7 +10868,7 @@ +@@ -11210,7 +11210,7 @@ }, { 'name': 'ShowLogoutButtonInTray', @@ -17070,7 +17482,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:25-'], -@@ -10886,7 +10886,7 @@ +@@ -11228,7 +11228,7 @@ }, { 'name': 'BuiltInDnsClientEnabled', @@ -17079,7 +17491,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -10912,7 +10912,7 @@ +@@ -11254,7 +11254,7 @@ }, { 'name': 'DnsOverHttpsMode', @@ -17088,7 +17500,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -10967,7 +10967,7 @@ +@@ -11309,7 +11309,7 @@ }, { 'name': 'DnsOverHttpsTemplates', @@ -17097,7 +17509,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -10995,7 +10995,7 @@ +@@ -11337,7 +11337,7 @@ }, { 'name': 'ShelfAutoHideBehavior', @@ -17106,7 +17518,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -11032,7 +11032,7 @@ +@@ -11374,7 +11374,7 @@ }, { 'name': 'ShelfAlignment', @@ -17115,7 +17527,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', # In shelf_prefs.cc, there are 3 const char[] defining kShelfAlignmentLocal values: # ash::kShelfAlignmentBottom = "Bottom", ash::kShelfAlignmnetLeft = "Left", -@@ -11087,7 +11087,7 @@ +@@ -11429,7 +11429,7 @@ }, { 'name': 'SystemFeaturesDisableList', @@ -17124,7 +17536,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum-list', 'schema': { 'type': 'array', -@@ -11155,7 +11155,7 @@ +@@ -11509,7 +11509,7 @@ }, { 'name': 'SystemFeaturesDisableMode', @@ -17133,7 +17545,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -11197,7 +11197,7 @@ +@@ -11551,7 +11551,7 @@ }, { 'name': 'FloatingAccessibilityMenuEnabled', @@ -17142,7 +17554,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:84-'], -@@ -11217,7 +11217,7 @@ +@@ -11571,7 +11571,7 @@ }, { 'name': 'UserDisplayName', @@ -17151,7 +17563,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:25-'], -@@ -11239,7 +11239,7 @@ +@@ -11593,7 +11593,7 @@ }, { 'name': 'SessionLengthLimit', @@ -17160,7 +17572,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:25-'], -@@ -11261,7 +11261,7 @@ +@@ -11615,7 +11615,7 @@ }, { 'name': 'FullscreenAllowed', @@ -17169,7 +17581,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:31-', 'chrome.linux:31-', 'chrome_os:31-'], -@@ -11282,7 +11282,7 @@ +@@ -11636,7 +11636,7 @@ 'id': 804, 'name': 'FullscreenAlertEnabled', 'caption': '''Enable fullscreen alert''', @@ -17178,7 +17590,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean'}, 'supported_on': ['chrome_os:88-'], -@@ -11313,7 +11313,7 @@ +@@ -11667,7 +11667,7 @@ }, { 'name': 'ScreenDimDelayAC', @@ -17187,7 +17599,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11344,7 +11344,7 @@ +@@ -11698,7 +11698,7 @@ }, { 'name': 'ScreenOffDelayAC', @@ -17196,7 +17608,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11375,7 +11375,7 @@ +@@ -11729,7 +11729,7 @@ }, { 'name': 'ScreenLockDelayAC', @@ -17205,7 +17617,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11408,7 +11408,7 @@ +@@ -11762,7 +11762,7 @@ }, { 'name': 'IdleWarningDelayAC', @@ -17214,7 +17626,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11439,7 +11439,7 @@ +@@ -11793,7 +11793,7 @@ }, { 'name': 'IdleDelayAC', @@ -17223,7 +17635,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11468,7 +11468,7 @@ +@@ -11822,7 +11822,7 @@ }, { 'name': 'ScreenDimDelayBattery', @@ -17232,7 +17644,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11499,7 +11499,7 @@ +@@ -11853,7 +11853,7 @@ }, { 'name': 'ScreenOffDelayBattery', @@ -17241,7 +17653,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11530,7 +11530,7 @@ +@@ -11884,7 +11884,7 @@ }, { 'name': 'ScreenLockDelayBattery', @@ -17250,7 +17662,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11563,7 +11563,7 @@ +@@ -11917,7 +11917,7 @@ }, { 'name': 'IdleWarningDelayBattery', @@ -17259,7 +17671,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11594,7 +11594,7 @@ +@@ -11948,7 +11948,7 @@ }, { 'name': 'IdleDelayBattery', @@ -17268,7 +17680,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -11623,7 +11623,7 @@ +@@ -11977,7 +11977,7 @@ }, { 'name': 'IdleAction', @@ -17277,7 +17689,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -11670,7 +11670,7 @@ +@@ -12024,7 +12024,7 @@ }, { 'name': 'IdleActionAC', @@ -17286,7 +17698,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -11719,7 +11719,7 @@ +@@ -12073,7 +12073,7 @@ }, { 'name': 'IdleActionBattery', @@ -17295,7 +17707,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -11768,7 +11768,7 @@ +@@ -12122,7 +12122,7 @@ }, { 'name': 'LidCloseAction', @@ -17304,7 +17716,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -11813,7 +11813,7 @@ +@@ -12167,7 +12167,7 @@ }, { 'name': 'PowerManagementUsesAudioActivity', @@ -17313,7 +17725,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:26-'], -@@ -11831,7 +11831,7 @@ +@@ -12185,7 +12185,7 @@ }, { 'name': 'PowerManagementUsesVideoActivity', @@ -17322,7 +17734,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:26-'], -@@ -11850,7 +11850,7 @@ +@@ -12204,7 +12204,7 @@ }, { 'name': 'PresentationIdleDelayScale', @@ -17331,7 +17743,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:26-28'], -@@ -11867,7 +11867,7 @@ +@@ -12221,7 +12221,7 @@ }, { 'name': 'PresentationScreenDimDelayScale', @@ -17340,7 +17752,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:29-'], -@@ -11887,7 +11887,7 @@ +@@ -12241,7 +12241,7 @@ }, { 'name': 'AllowWakeLocks', @@ -17349,7 +17761,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:71-'], -@@ -11916,7 +11916,7 @@ +@@ -12270,7 +12270,7 @@ }, { 'name': 'AllowScreenWakeLocks', @@ -17358,7 +17770,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:28-'], -@@ -11945,7 +11945,7 @@ +@@ -12299,7 +12299,7 @@ }, { 'name': 'UserActivityScreenDimDelayScale', @@ -17367,7 +17779,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:29-'], -@@ -11965,7 +11965,7 @@ +@@ -12319,7 +12319,7 @@ }, { 'name': 'WaitForInitialUserActivity', @@ -17376,7 +17788,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:32-'], -@@ -11983,7 +11983,7 @@ +@@ -12337,7 +12337,7 @@ }, { 'name': 'PowerManagementIdleSettings', @@ -17385,7 +17797,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -12087,7 +12087,7 @@ +@@ -12441,7 +12441,7 @@ }, { 'name': 'ScreenLockDelays', @@ -17394,7 +17806,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -12124,7 +12124,7 @@ +@@ -12478,7 +12478,7 @@ }, { 'name': 'DeviceLoginScreenPowerManagement', @@ -17403,7 +17815,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -12212,7 +12212,7 @@ +@@ -12566,7 +12566,7 @@ }, { 'name': 'DeviceAllowRedeemChromeOsRegistrationOffers', @@ -17412,7 +17824,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:26-'], -@@ -12241,7 +12241,7 @@ +@@ -12595,7 +12595,7 @@ }, { 'name': 'TermsOfServiceURL', @@ -17421,7 +17833,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:26-'], -@@ -12261,7 +12261,7 @@ +@@ -12615,7 +12615,7 @@ }, { 'name': 'ShowAccessibilityOptionsInSystemTrayMenu', @@ -17430,7 +17842,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:27-'], -@@ -12282,7 +12282,7 @@ +@@ -12636,7 +12636,7 @@ }, { 'name': 'DeviceLoginScreenShowOptionsInSystemTrayMenu', @@ -17439,7 +17851,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:80-'], -@@ -12303,7 +12303,7 @@ +@@ -12657,7 +12657,7 @@ }, { 'name': 'LargeCursorEnabled', @@ -17448,7 +17860,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:29-'], -@@ -12322,7 +12322,7 @@ +@@ -12676,7 +12676,7 @@ }, { 'name': 'SpokenFeedbackEnabled', @@ -17457,7 +17869,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:29-'], -@@ -12341,7 +12341,7 @@ +@@ -12695,7 +12695,7 @@ }, { 'name': 'HighContrastEnabled', @@ -17466,7 +17878,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:29-'], -@@ -12360,7 +12360,7 @@ +@@ -12714,7 +12714,7 @@ }, { 'name': 'DeviceLoginScreenAccessibilityShortcutsEnabled', @@ -17475,7 +17887,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:81-'], -@@ -12385,7 +12385,7 @@ +@@ -12739,7 +12739,7 @@ }, { 'name': 'AccessibilityShortcutsEnabled', @@ -17484,7 +17896,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:81-'], -@@ -12410,7 +12410,7 @@ +@@ -12764,7 +12764,7 @@ }, { 'name': 'VirtualKeyboardEnabled', @@ -17493,7 +17905,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:34-'], -@@ -12429,7 +12429,7 @@ +@@ -12783,7 +12783,7 @@ }, { 'name': 'VirtualKeyboardFeatures', @@ -17502,7 +17914,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -12481,7 +12481,7 @@ +@@ -12835,7 +12835,7 @@ }, { 'name': 'StickyKeysEnabled', @@ -17511,7 +17923,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:76-'], -@@ -12500,7 +12500,7 @@ +@@ -12854,7 +12854,7 @@ }, { 'name': 'SelectToSpeakEnabled', @@ -17520,7 +17932,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:77-'], -@@ -12525,7 +12525,7 @@ +@@ -12879,7 +12879,7 @@ }, { 'name': 'DictationEnabled', @@ -17529,7 +17941,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:78-'], -@@ -12550,7 +12550,7 @@ +@@ -12904,7 +12904,7 @@ }, { 'name': 'KeyboardFocusHighlightEnabled', @@ -17538,7 +17950,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:78-'], -@@ -12577,7 +12577,7 @@ +@@ -12931,7 +12931,7 @@ }, { 'name': 'CursorHighlightEnabled', @@ -17547,7 +17959,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:78-'], -@@ -12604,7 +12604,7 @@ +@@ -12958,7 +12958,7 @@ }, { 'name': 'CaretHighlightEnabled', @@ -17556,7 +17968,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:78-'], -@@ -12631,7 +12631,7 @@ +@@ -12985,7 +12985,7 @@ }, { 'name': 'MonoAudioEnabled', @@ -17565,7 +17977,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:78-'], -@@ -12658,7 +12658,7 @@ +@@ -13012,7 +13012,7 @@ }, { 'name': 'AutoclickEnabled', @@ -17574,7 +17986,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:78-'], -@@ -12685,7 +12685,7 @@ +@@ -13039,7 +13039,7 @@ }, { 'name': 'KeyboardDefaultToFunctionKeys', @@ -17583,7 +17995,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:35-'], -@@ -12704,7 +12704,7 @@ +@@ -13058,7 +13058,7 @@ }, { 'name': 'ScreenMagnifierType', @@ -17592,7 +18004,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -12743,7 +12743,7 @@ +@@ -13097,7 +13097,7 @@ }, { 'name': 'DeviceLoginScreenDefaultLargeCursorEnabled', @@ -17601,7 +18013,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:29-'], -@@ -12765,7 +12765,7 @@ +@@ -13119,7 +13119,7 @@ }, { 'name': 'DeviceLoginScreenLargeCursorEnabled', @@ -17610,7 +18022,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:78-'], -@@ -12790,7 +12790,7 @@ +@@ -13144,7 +13144,7 @@ }, { 'name': 'DeviceLoginScreenDefaultSpokenFeedbackEnabled', @@ -17619,7 +18031,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:29-'], -@@ -12812,7 +12812,7 @@ +@@ -13166,7 +13166,7 @@ }, { 'name': 'DeviceLoginScreenSpokenFeedbackEnabled', @@ -17628,7 +18040,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -12837,7 +12837,7 @@ +@@ -13191,7 +13191,7 @@ }, { 'name': 'DeviceLoginScreenDefaultHighContrastEnabled', @@ -17637,7 +18049,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:29-'], -@@ -12859,7 +12859,7 @@ +@@ -13213,7 +13213,7 @@ }, { 'name': 'DeviceLoginScreenHighContrastEnabled', @@ -17646,7 +18058,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -12884,7 +12884,7 @@ +@@ -13238,7 +13238,7 @@ }, { 'name': 'DeviceLoginScreenDefaultVirtualKeyboardEnabled', @@ -17655,7 +18067,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:34-'], -@@ -12909,7 +12909,7 @@ +@@ -13263,7 +13263,7 @@ }, { 'name': 'DeviceLoginScreenVirtualKeyboardEnabled', @@ -17664,7 +18076,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -12934,7 +12934,7 @@ +@@ -13288,7 +13288,7 @@ }, { 'name': 'PrimaryMouseButtonSwitch', @@ -17673,7 +18085,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:81-'], -@@ -12959,7 +12959,7 @@ +@@ -13313,7 +13313,7 @@ }, { 'name': 'DeviceLoginScreenPrimaryMouseButtonSwitch', @@ -17682,7 +18094,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:81-'], -@@ -12984,7 +12984,7 @@ +@@ -13338,7 +13338,7 @@ }, { 'name': 'SharedClipboardEnabled', @@ -17691,7 +18103,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:79-', 'chrome_os:79-', 'android:79-'], -@@ -13010,7 +13010,7 @@ +@@ -13364,7 +13364,7 @@ }, { 'name': 'DeviceLoginScreenDefaultScreenMagnifierType', @@ -17700,7 +18112,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -13054,7 +13054,7 @@ +@@ -13408,7 +13408,7 @@ }, { 'name': 'DeviceLoginScreenScreenMagnifierType', @@ -17709,7 +18121,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -13101,7 +13101,7 @@ +@@ -13455,7 +13455,7 @@ }, { 'name': 'DeviceLoginScreenDictationEnabled', @@ -17718,7 +18130,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -13126,7 +13126,7 @@ +@@ -13480,7 +13480,7 @@ }, { 'name': 'DeviceLoginScreenSelectToSpeakEnabled', @@ -17727,7 +18139,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -13151,7 +13151,7 @@ +@@ -13505,7 +13505,7 @@ }, { 'name': 'DeviceLoginScreenCursorHighlightEnabled', @@ -17736,7 +18148,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -13176,7 +13176,7 @@ +@@ -13530,7 +13530,7 @@ }, { 'name': 'DeviceLoginScreenCaretHighlightEnabled', @@ -17745,7 +18157,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -13201,7 +13201,7 @@ +@@ -13555,7 +13555,7 @@ }, { 'name': 'DeviceLoginScreenMonoAudioEnabled', @@ -17754,7 +18166,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -13228,7 +13228,7 @@ +@@ -13582,7 +13582,7 @@ }, { 'name': 'DeviceLoginScreenAutoclickEnabled', @@ -17763,7 +18175,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -13255,7 +13255,7 @@ +@@ -13609,7 +13609,7 @@ }, { 'name': 'DeviceLoginScreenStickyKeysEnabled', @@ -17772,7 +18184,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -13280,7 +13280,7 @@ +@@ -13634,7 +13634,7 @@ }, { 'name': 'DeviceLoginScreenKeyboardFocusHighlightEnabled', @@ -17781,7 +18193,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -13307,7 +13307,7 @@ +@@ -13661,7 +13661,7 @@ }, { 'name': 'HideWebStoreIcon', @@ -17790,7 +18202,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:26-', 'chrome_os:68-'], -@@ -13327,7 +13327,7 @@ +@@ -13681,7 +13681,7 @@ }, { 'name': 'DeviceStartUpFlags', @@ -17799,7 +18211,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -13349,7 +13349,7 @@ +@@ -13703,7 +13703,7 @@ }, { 'name': 'UptimeLimit', @@ -17808,7 +18220,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:29-'], -@@ -13370,7 +13370,7 @@ +@@ -13724,7 +13724,7 @@ }, { 'name': 'RebootAfterUpdate', @@ -17817,7 +18229,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:29-'], -@@ -13394,7 +13394,7 @@ +@@ -13748,7 +13748,7 @@ }, { 'name': 'VariationsRestrictParameter', @@ -17826,7 +18238,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:27-', 'android:34-'], -@@ -13415,7 +13415,7 @@ +@@ -13769,7 +13769,7 @@ }, { 'name': 'DeviceVariationsRestrictParameter', @@ -17835,7 +18247,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:28-'], -@@ -13436,7 +13436,7 @@ +@@ -13790,7 +13790,7 @@ }, { 'name': 'ChromeVariations', @@ -17844,7 +18256,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -13473,7 +13473,7 @@ +@@ -13827,7 +13827,7 @@ 'tags': [], 'desc': '''Configuring this policy allows to specify which variations are allowed to be applied in $1Google Chrome. @@ -17853,7 +18265,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli Setting the VariationsEnabled (value 0), or leaving the policy not set allows all variations to be applied to the browser. -@@ -13483,7 +13483,7 @@ +@@ -13837,7 +13837,7 @@ }, { 'name': 'DeviceChromeVariations', @@ -17862,7 +18274,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -13518,7 +13518,7 @@ +@@ -13872,7 +13872,7 @@ 'tags': [], 'desc': '''Configuring this policy allows to specify which variations are allowed to be applied on an enterprise-managed $2Google Chrome OS device. @@ -17871,7 +18283,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli Setting the VariationsEnabled (value 0), or leaving the policy not set allows all variations to be applied to $2Google Chrome OS. -@@ -13528,7 +13528,7 @@ +@@ -13882,7 +13882,7 @@ }, { 'name': 'AttestationEnabledForDevice', @@ -17880,7 +18292,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:28-'], -@@ -13547,7 +13547,7 @@ +@@ -13901,7 +13901,7 @@ }, { 'name': 'AttestationEnabledForUser', @@ -17889,7 +18301,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:28-'], -@@ -13565,7 +13565,7 @@ +@@ -13919,7 +13919,7 @@ }, { 'name': 'AttestationExtensionAllowlist', @@ -17898,7 +18310,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -13586,7 +13586,7 @@ +@@ -13940,7 +13940,7 @@ }, { 'name': 'AttestationExtensionWhitelist', @@ -17907,7 +18319,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -13610,7 +13610,7 @@ +@@ -13964,7 +13964,7 @@ }, { 'name': 'AttestationForContentProtectionEnabled', @@ -17916,7 +18328,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:31-'], -@@ -13629,7 +13629,7 @@ +@@ -13983,7 +13983,7 @@ }, { 'name': 'SuppressChromeFrameTurndownPrompt', @@ -17925,7 +18337,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'caption': '''Suppress the $3Google Chrome Frame turndown prompt''', 'tags': [], 'desc': '''Suppresses the turndown prompt that appears when a site is rendered by $3Google Chrome Frame.''', -@@ -13645,7 +13645,7 @@ +@@ -13999,7 +13999,7 @@ }, { 'name': 'SupervisedUsersEnabled', @@ -17934,7 +18346,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'deprecated': True, -@@ -13668,7 +13668,7 @@ +@@ -14022,7 +14022,7 @@ }, { 'name': 'SupervisedUserCreationEnabled', @@ -17943,7 +18355,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'deprecated': True, -@@ -13691,7 +13691,7 @@ +@@ -14045,7 +14045,7 @@ # It, however, needs to be here both because this is the source of the list of Chrome's App # Restrictions on Android, and to avoid possible future naming conflicts with policies. 'name': 'SupervisedUserContentProviderEnabled', @@ -17952,7 +18364,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'deprecated': True, -@@ -13710,7 +13710,7 @@ +@@ -14064,7 +14064,7 @@ }, { 'name': 'ManagedBookmarks', @@ -17961,7 +18373,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -13743,20 +13743,20 @@ +@@ -14097,20 +14097,20 @@ "toplevel_name": "My managed bookmarks folder" }, { "name": "Google", @@ -17986,7 +18398,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli } ] } -@@ -13764,13 +13764,13 @@ +@@ -14118,13 +14118,13 @@ 'id': 227, 'caption': '''Managed Bookmarks''', 'tags': [], @@ -18002,7 +18414,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['android:31-'], -@@ -13788,7 +13788,7 @@ +@@ -14142,7 +14142,7 @@ }, { 'name': 'UserAvatarImage', @@ -18011,7 +18423,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'external', 'schema': { 'type': 'object', -@@ -13825,7 +13825,7 @@ +@@ -14179,7 +14179,7 @@ }, { 'name': 'WallpaperImage', @@ -18020,7 +18432,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'external', 'schema': { 'type': 'object', -@@ -13860,7 +13860,7 @@ +@@ -14214,7 +14214,7 @@ }, { 'name': 'EnableDeprecatedWebPlatformFeatures', @@ -18029,7 +18441,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum-list', 'schema': { 'type': 'array', -@@ -13899,7 +13899,7 @@ +@@ -14253,7 +14253,7 @@ }, { 'name': 'DeviceTransferSAMLCookies', @@ -18038,7 +18450,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:38-'], -@@ -13925,7 +13925,7 @@ +@@ -14279,7 +14279,7 @@ }, { 'name': 'EasyUnlockAllowed', @@ -18047,7 +18459,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:38-'], -@@ -13946,7 +13946,7 @@ +@@ -14300,7 +14300,7 @@ }, { 'name': 'SessionLocales', @@ -18056,7 +18468,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -13974,7 +13974,7 @@ +@@ -14328,7 +14328,7 @@ }, { 'name': 'BrowserGuestModeEnabled', @@ -18065,7 +18477,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:38-'], -@@ -13992,7 +13992,7 @@ +@@ -14346,7 +14346,7 @@ }, { 'name': 'BrowserGuestModeEnforced', @@ -18074,7 +18486,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:77-'], -@@ -14010,7 +14010,7 @@ +@@ -14364,7 +14364,7 @@ }, { 'name': 'BrowserAddPersonEnabled', @@ -18083,7 +18495,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:39-'], -@@ -14028,7 +14028,7 @@ +@@ -14382,7 +14382,7 @@ }, { 'name': 'ForceBrowserSignin', @@ -18092,7 +18504,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'deprecated': True, 'schema': { 'type': 'boolean' }, -@@ -14049,7 +14049,7 @@ +@@ -14403,7 +14403,7 @@ }, { 'name': 'BrowserSignin', @@ -18101,7 +18513,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -14088,13 +14088,13 @@ +@@ -14442,13 +14442,13 @@ If the policy is set to "Enable browser sign-in," then the user is allowed to sign in to the browser. On all platforms except iOS, the user is automatically signed in to the browser when signed in to Google web services like Gmail. Being signed in to the browser means the user's account information will be kept by the browser. However, it does not mean that $1Google Chrome Sync will be turned on by default; the user must separately opt-in to use this feature. Enabling this policy will prevent the user from turning off the setting that allows browser sign-in. To control the availability of $1Google Chrome Sync, use the SyncDisabled policy. @@ -18117,7 +18529,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -14142,7 +14142,7 @@ +@@ -14496,7 +14496,7 @@ }, { 'name': 'SSLVersionFallbackMin', @@ -18126,7 +18538,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -14187,7 +14187,7 @@ +@@ -14541,7 +14541,7 @@ }, { 'name': 'SSLVersionMax', @@ -18135,7 +18547,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -14230,7 +14230,7 @@ +@@ -14619,7 +14619,7 @@ }, { 'name': 'CertificateTransparencyEnforcementDisabledForUrls', @@ -18144,7 +18556,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -14253,11 +14253,11 @@ +@@ -14642,11 +14642,11 @@ Leaving the policy unset means that if certificates requiring disclosure through Certificate Transparency aren't disclosed, then $1Google Chrome doesn't trust those certificates. @@ -18158,7 +18570,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -14290,7 +14290,7 @@ +@@ -14679,7 +14679,7 @@ }, { 'name': 'CertificateTransparencyEnforcementDisabledForLegacyCas', @@ -18167,7 +18579,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -14317,7 +14317,7 @@ +@@ -14706,7 +14706,7 @@ }, { 'name': 'RC4Enabled', @@ -18176,7 +18588,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean', -@@ -14342,7 +14342,7 @@ +@@ -14731,7 +14731,7 @@ }, { 'name': 'DHEEnabled', @@ -18185,7 +18597,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean', -@@ -14369,7 +14369,7 @@ +@@ -14758,7 +14758,7 @@ }, { 'name': 'ContextualSearchEnabled', @@ -18194,7 +18606,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -14400,7 +14400,7 @@ +@@ -14789,7 +14789,7 @@ }, { 'name': 'DeviceRebootOnShutdown', @@ -18203,7 +18615,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:41-'], -@@ -14418,7 +14418,7 @@ +@@ -14807,7 +14807,7 @@ }, { 'name': 'ExtensionCacheSize', @@ -18212,7 +18624,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:43-'], -@@ -14437,7 +14437,7 @@ +@@ -14826,7 +14826,7 @@ }, { 'name': 'DeviceLoginScreenDomainAutoComplete', @@ -18221,7 +18633,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ 'chrome_os:44-'], -@@ -14455,7 +14455,7 @@ +@@ -14844,7 +14844,7 @@ }, { 'name': 'ForceMaximizeOnFirstRun', @@ -18230,7 +18642,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:43-'], -@@ -14473,7 +14473,7 @@ +@@ -14862,7 +14862,7 @@ }, { 'name': 'SSLErrorOverrideAllowed', @@ -18239,7 +18651,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:44-', 'chrome_os:44-', 'android:44-'], -@@ -14491,7 +14491,7 @@ +@@ -14880,7 +14880,7 @@ }, { 'name': 'SSLErrorOverrideAllowedForOrigins', @@ -18248,7 +18660,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -14512,11 +14512,11 @@ +@@ -14901,11 +14901,11 @@ Leaving the policy unset means SSLErrorOverrideAllowed applies for all sites. @@ -18262,7 +18674,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:43-', 'chrome_os:43-'], -@@ -14534,7 +14534,7 @@ +@@ -14923,7 +14923,7 @@ }, { 'name': 'KeyPermissions', @@ -18271,7 +18683,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -14577,7 +14577,7 @@ +@@ -14966,7 +14966,7 @@ }, { 'name': 'WelcomePageOnOSUpgradeEnabled', @@ -18280,7 +18692,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome.win:45-62'], 'type': 'main', 'schema': { 'type': 'boolean' }, -@@ -14596,7 +14596,7 @@ +@@ -14985,7 +14985,7 @@ }, { 'name': 'HardwareAccelerationModeEnabled', @@ -18289,7 +18701,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:46-'], -@@ -14614,7 +14614,7 @@ +@@ -15003,7 +15003,7 @@ }, { 'name': 'UnifiedDesktopEnabledByDefault', @@ -18298,7 +18710,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:47-'], -@@ -14633,7 +14633,7 @@ +@@ -15022,7 +15022,7 @@ }, { 'name': 'DisplayRotationDefault', @@ -18307,7 +18719,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -14678,7 +14678,7 @@ +@@ -15067,7 +15067,7 @@ }, { 'name': 'ArcEnabled', @@ -18316,7 +18728,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:50-'], -@@ -14696,7 +14696,7 @@ +@@ -15085,7 +15085,7 @@ }, { 'name': 'ArcPolicy', @@ -18325,7 +18737,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'description_schema': { -@@ -14756,7 +14756,7 @@ +@@ -15145,7 +15145,7 @@ }, { 'name': 'AllowKioskAppControlChromeVersion', @@ -18334,7 +18746,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:51-'], -@@ -14778,7 +14778,7 @@ +@@ -15167,7 +15167,7 @@ }, { 'name': 'LoginAuthenticationBehavior', @@ -18343,7 +18755,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -14814,7 +14814,7 @@ +@@ -15203,7 +15203,7 @@ }, { 'name': 'UsbDetachableWhitelist', @@ -18352,7 +18764,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -14855,7 +14855,7 @@ +@@ -15244,7 +15244,7 @@ }, { 'name': 'UsbDetachableAllowlist', @@ -18361,7 +18773,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -14892,7 +14892,7 @@ +@@ -15281,7 +15281,7 @@ }, { 'name': 'DeviceAllowBluetooth', @@ -18370,7 +18782,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:52-'], -@@ -14912,7 +14912,7 @@ +@@ -15301,7 +15301,7 @@ }, { 'name': 'SuppressUnsupportedOSWarning', @@ -18379,7 +18791,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'caption': '''Suppress the unsupported OS warning''', 'desc': '''Setting the policy to Enabled suppresses the warning that appears when $1Google Chrome is running on an unsupported computer or operating system. -@@ -14930,7 +14930,7 @@ +@@ -15319,7 +15319,7 @@ }, { 'name': 'DeviceQuirksDownloadEnabled', @@ -18388,7 +18800,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:51-'], -@@ -14964,7 +14964,7 @@ +@@ -15353,7 +15353,7 @@ }, { 'name': 'SystemTimezoneAutomaticDetection', @@ -18397,7 +18809,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -15018,7 +15018,7 @@ +@@ -15407,7 +15407,7 @@ }, { 'name': 'TaskManagerEndProcessEnabled', @@ -18406,7 +18818,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'caption': '''Enable ending processes in Task Manager''', 'desc': '''Setting the policy to Disabled prevents users from ending processes in the Task Manager. -@@ -15036,7 +15036,7 @@ +@@ -15425,7 +15425,7 @@ }, { 'name': 'DeviceShowLowDiskSpaceNotification', @@ -18415,7 +18827,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:86-'], -@@ -15074,7 +15074,7 @@ +@@ -15463,7 +15463,7 @@ }, { 'name': 'NetworkThrottlingEnabled', @@ -18424,7 +18836,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'device_only': True, 'caption': '''Enable throttling network bandwidth''', 'desc': '''Setting the policy turns network throttling on or off. This means that the system is throttled to achieve the provided upload and download rates (in kbits/s). It applies to all users and interfaces on the device.''', -@@ -15109,7 +15109,7 @@ +@@ -15498,7 +15498,7 @@ }, { 'name': 'DeviceWiFiFastTransitionEnabled', @@ -18433,7 +18845,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'device_only': True, 'caption': '''Enable 802.11r Fast Transition''', 'desc': '''Setting the policy to Enabled means that Fast Transition is used when the wireless access point supports it. It applies to all users and interfaces on the device. -@@ -15128,7 +15128,7 @@ +@@ -15517,7 +15517,7 @@ }, { 'name': 'DeviceWiFiAllowed', @@ -18442,7 +18854,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'device_only': True, 'caption': '''Enable WiFi''', 'desc': '''Setting the policy to Disabled means $2Google Chrome OS turns off Wi-Fi, and users can't change it. -@@ -15147,7 +15147,7 @@ +@@ -15536,7 +15536,7 @@ }, { 'name': 'DeviceDockMacAddressSource', @@ -18451,7 +18863,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'caption': '''Device MAC address source when docked''', 'desc': '''Setting the policy lets the administrator change the MAC (media access control) address when connecting a device to the dock. When a dock is connected to some device models, by default, the device's designated dock's MAC address helps identify the device on Ethernet. -@@ -15192,7 +15192,7 @@ +@@ -15581,7 +15581,7 @@ }, { 'name': 'LoginVideoCaptureAllowedUrls', @@ -18460,7 +18872,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -15216,7 +15216,7 @@ +@@ -15605,7 +15605,7 @@ }, { 'name': 'DeviceLoginScreenExtensions', @@ -18469,7 +18881,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -15227,7 +15227,7 @@ +@@ -15616,7 +15616,7 @@ 'features': { 'dynamic_refresh': True, }, @@ -18478,7 +18890,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 336, 'caption': '''Configure the list of installed apps and extensions on the login screen''', 'tags': ['full-admin-access'], -@@ -15240,13 +15240,13 @@ +@@ -15629,13 +15629,13 @@ If an app or extension that previously had been force-installed is removed from this list, it is automatically uninstalled by $1Google Chrome. @@ -18495,7 +18907,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'caption': '''Permit locking the screen''', 'desc': '''Setting the policy to Enabled or leaving it unset lets users who authenticate with a password lock the screen. -@@ -15264,7 +15264,7 @@ +@@ -15653,7 +15653,7 @@ }, { 'name': 'ArcCertificatesSyncMode', @@ -18504,7 +18916,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -15297,7 +15297,7 @@ +@@ -15686,7 +15686,7 @@ }, { 'name': 'AllowedDomainsForApps', @@ -18513,7 +18925,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:51-', 'chrome_os:51-', 'android:51-'], -@@ -15306,7 +15306,7 @@ +@@ -15695,7 +15695,7 @@ 'dynamic_refresh': True, 'per_profile': True, }, @@ -18522,7 +18934,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 331, 'caption': '''Define domains allowed to access G Suite''', 'tags': ['filtering'], -@@ -15316,11 +15316,11 @@ +@@ -15705,11 +15705,11 @@ Users cannot change or override this setting. @@ -18536,7 +18948,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ 'chrome.*:52-74', 'chrome_os:52-74' ], -@@ -15355,7 +15355,7 @@ +@@ -15744,7 +15744,7 @@ }, { 'name': 'EnableMediaRouter', @@ -18545,7 +18957,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:52-', 'chrome_os:52-', 'android:52-'], -@@ -15373,7 +15373,7 @@ +@@ -15762,7 +15762,7 @@ }, { 'name': 'ShowCastIconInToolbar', @@ -18554,7 +18966,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:58-', 'chrome_os:58-'], -@@ -15393,7 +15393,7 @@ +@@ -15782,7 +15782,7 @@ }, { 'name': 'MediaRouterCastAllowAllIPs', @@ -18563,7 +18975,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:67-', 'chrome_os:67-'], -@@ -15413,7 +15413,7 @@ +@@ -15802,7 +15802,7 @@ }, { 'name': 'ArcBackupRestoreEnabled', @@ -18572,7 +18984,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:53-67'], -@@ -15431,7 +15431,7 @@ +@@ -15820,7 +15820,7 @@ }, { 'name': 'ArcLocationServiceEnabled', @@ -18581,7 +18993,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:57-67'], -@@ -15449,7 +15449,7 @@ +@@ -15838,7 +15838,7 @@ }, { 'name': 'NTPContentSuggestionsEnabled', @@ -18590,7 +19002,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['android:54-'], -@@ -15480,7 +15480,7 @@ +@@ -15869,7 +15869,7 @@ }, { 'name': 'NTPCustomBackgroundEnabled', @@ -18599,7 +19011,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:80-', 'chrome_os:80-'], -@@ -15511,7 +15511,7 @@ +@@ -15900,7 +15900,7 @@ }, { 'name': 'NTPCardsVisible', @@ -18608,7 +19020,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:88-', 'chrome_os:88-'], -@@ -15550,7 +15550,7 @@ +@@ -15939,7 +15939,7 @@ }, { 'name': 'WebRtcUdpPortRange', @@ -18617,7 +19029,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:54-', 'chrome_os:54-', 'android:54-'], -@@ -15568,7 +15568,7 @@ +@@ -15957,7 +15957,7 @@ }, { 'name': 'WebRtcLocalIpsAllowedUrls', @@ -18626,7 +19038,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -15590,7 +15590,7 @@ +@@ -15979,7 +15979,7 @@ }, { 'name': 'WebRestrictionsAuthority', @@ -18635,7 +19047,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 341, 'type': 'string', 'schema' : { 'type': 'string' }, -@@ -15606,7 +15606,7 @@ +@@ -15995,7 +15995,7 @@ }, { 'name': 'ComponentUpdatesEnabled', @@ -18644,7 +19056,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:54-', 'chrome_os:54-'], -@@ -15622,11 +15622,11 @@ +@@ -16011,11 +16011,11 @@ If set to False, updates to components are disabled. However, some components are exempt from this policy: updates to any component that does not contain executable code, or does not significantly alter the behavior of the browser, or is critical for its security will not be disabled. Examples of such components include the certificate revocation lists and Safe Browsing data. @@ -18658,7 +19070,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -15650,7 +15650,7 @@ +@@ -16039,7 +16039,7 @@ 'properties': { 'effective_model': { 'type': 'string', @@ -18667,7 +19079,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, 'autoconf': { 'type': 'boolean', -@@ -15706,7 +15706,7 @@ +@@ -16095,7 +16095,7 @@ }, { 'name': 'Printers', @@ -18676,7 +19088,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -15730,7 +15730,7 @@ +@@ -16119,7 +16119,7 @@ 'properties': { 'effective_model': { 'type': 'string', @@ -18685,7 +19097,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, 'autoconf': { 'type': 'boolean', -@@ -15783,7 +15783,7 @@ +@@ -16172,7 +16172,7 @@ }, { 'name': 'NativePrintersBulkConfiguration', @@ -18694,7 +19106,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 382, 'type': 'external', 'schema': { -@@ -15816,7 +15816,7 @@ +@@ -16205,7 +16205,7 @@ }, { 'name': 'PrintersBulkConfiguration', @@ -18703,7 +19115,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 770, 'type': 'external', 'schema': { -@@ -15846,7 +15846,7 @@ +@@ -16235,7 +16235,7 @@ }, { 'name': 'NativePrintersBulkAccessMode', @@ -18712,7 +19124,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 383, 'supported_on': ['chrome_os:65-'], 'type': 'int-enum', -@@ -15894,7 +15894,7 @@ +@@ -16283,7 +16283,7 @@ }, { 'name': 'PrintersBulkAccessMode', @@ -18721,7 +19133,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 772, 'supported_on': ['chrome_os:86-'], 'type': 'int-enum', -@@ -15939,7 +15939,7 @@ +@@ -16328,7 +16328,7 @@ }, { 'name': 'NativePrintersBulkBlacklist', @@ -18730,7 +19142,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:65-'], 'id': 384, 'type': 'list', -@@ -15961,7 +15961,7 @@ +@@ -16350,7 +16350,7 @@ }, { 'name': 'PrintersBulkBlocklist', @@ -18739,7 +19151,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:86-'], 'id': 779, 'type': 'list', -@@ -15980,7 +15980,7 @@ +@@ -16369,7 +16369,7 @@ }, { 'name': 'NativePrintersBulkWhitelist', @@ -18748,7 +19160,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:65-'], 'id': 385, 'type': 'list', -@@ -16002,7 +16002,7 @@ +@@ -16391,7 +16391,7 @@ }, { 'name': 'PrintersBulkAllowlist', @@ -18757,7 +19169,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:86-'], 'id': 780, 'type': 'list', -@@ -16021,7 +16021,7 @@ +@@ -16410,7 +16410,7 @@ }, { 'name': 'DeviceNativePrinters', @@ -18766,7 +19178,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 386, 'device_only': True, 'type': 'external', -@@ -16059,7 +16059,7 @@ +@@ -16448,7 +16448,7 @@ }, { 'name': 'DeviceNativePrintersAccessMode', @@ -18775,7 +19187,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 387, 'device_only': True, 'supported_on': ['chrome_os:73-'], -@@ -16107,7 +16107,7 @@ +@@ -16496,7 +16496,7 @@ }, { 'name': 'DeviceNativePrintersBlacklist', @@ -18784,7 +19196,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:73-'], 'device_only': True, 'id': 388, -@@ -16129,7 +16129,7 @@ +@@ -16518,7 +16518,7 @@ }, { 'name': 'DeviceNativePrintersWhitelist', @@ -18793,7 +19205,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:73-'], 'device_only': True, 'id': 389, -@@ -16152,7 +16152,7 @@ +@@ -16541,7 +16541,7 @@ }, { 'name': 'DevicePrinters', @@ -18802,7 +19214,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 743, 'device_only': True, 'type': 'external', -@@ -16187,7 +16187,7 @@ +@@ -16576,7 +16576,7 @@ }, { 'name': 'DevicePrintersAccessMode', @@ -18811,7 +19223,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 733, 'device_only': True, 'supported_on': ['chrome_os:87-'], -@@ -16232,7 +16232,7 @@ +@@ -16621,7 +16621,7 @@ }, { 'name': 'DevicePrintersBlocklist', @@ -18820,7 +19232,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:87-'], 'device_only': True, 'id': 734, -@@ -16251,7 +16251,7 @@ +@@ -16640,7 +16640,7 @@ }, { 'name': 'DevicePrintersAllowlist', @@ -18829,7 +19241,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:87-'], 'device_only': True, 'id': 735, -@@ -16271,7 +16271,7 @@ +@@ -16660,7 +16660,7 @@ }, { 'name': 'TPMFirmwareUpdateSettings', @@ -18838,7 +19250,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:63-'], 'device_only': True, 'id': 390, -@@ -16324,7 +16324,7 @@ +@@ -16713,7 +16713,7 @@ }, { 'name': 'MinimumRequiredChromeVersion', @@ -18847,7 +19259,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:64-81'], 'device_only': True, 'type': 'string', -@@ -16350,7 +16350,7 @@ +@@ -16739,7 +16739,7 @@ }, { 'name': 'DeviceMinimumVersion', @@ -18856,7 +19268,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:86-'], 'device_only': True, 'type': 'dict', -@@ -16434,7 +16434,7 @@ +@@ -16823,7 +16823,7 @@ }, { 'name': 'DeviceMinimumVersionAueMessage', @@ -18865,7 +19277,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:86-'], 'device_only': True, 'type': 'string', -@@ -16458,7 +16458,7 @@ +@@ -16847,7 +16847,7 @@ }, { 'name': 'QuickUnlockModeAllowlist', @@ -18874,7 +19286,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -16496,7 +16496,7 @@ +@@ -16885,7 +16885,7 @@ }, { 'name': 'QuickUnlockModeWhitelist', @@ -18883,7 +19295,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -16537,7 +16537,7 @@ +@@ -16926,7 +16926,7 @@ }, { 'name': 'QuickUnlockTimeout', @@ -18892,7 +19304,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -16580,7 +16580,7 @@ +@@ -16969,7 +16969,7 @@ }, { 'name': 'PinUnlockMinimumLength', @@ -18901,7 +19313,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:57-'], -@@ -16598,7 +16598,7 @@ +@@ -16987,7 +16987,7 @@ }, { 'name': 'PinUnlockMaximumLength', @@ -18910,7 +19322,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'supported_on': ['chrome_os:57-'], -@@ -16616,7 +16616,7 @@ +@@ -17005,7 +17005,7 @@ }, { 'name': 'PinUnlockWeakPinsAllowed', @@ -18919,7 +19331,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:57-'], -@@ -16634,7 +16634,7 @@ +@@ -17023,7 +17023,7 @@ }, { 'name': 'DeviceWallpaperImage', @@ -18928,7 +19340,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'external', 'schema': { 'type': 'object', -@@ -16667,7 +16667,7 @@ +@@ -17056,7 +17056,7 @@ }, { 'name': 'DeviceLoginScreenLocales', @@ -18937,7 +19349,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -16688,7 +16688,7 @@ +@@ -17077,7 +17077,7 @@ }, { 'name': 'DeviceLoginScreenInputMethods', @@ -18946,7 +19358,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -16709,7 +16709,7 @@ +@@ -17098,7 +17098,7 @@ }, { 'name': 'DeviceLoginScreenSystemInfoEnforced', @@ -18955,7 +19367,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:79-'], -@@ -16732,7 +16732,7 @@ +@@ -17121,7 +17121,7 @@ }, { 'name': 'SmsMessagesAllowed', @@ -18964,7 +19376,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:70-'], -@@ -16753,7 +16753,7 @@ +@@ -17142,7 +17142,7 @@ }, { 'name': 'WifiSyncAndroidAllowed', @@ -18973,7 +19385,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:89-'], -@@ -16776,7 +16776,7 @@ +@@ -17165,7 +17165,7 @@ }, { 'name': 'SmartLockSigninAllowed', @@ -18982,7 +19394,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:71-'], -@@ -16797,7 +16797,7 @@ +@@ -17186,7 +17186,7 @@ }, { 'name': 'InstantTetheringAllowed', @@ -18991,7 +19403,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:60-'], -@@ -16818,7 +16818,7 @@ +@@ -17207,7 +17207,7 @@ }, { 'name': 'PhoneHubAllowed', @@ -19000,7 +19412,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:89-'], -@@ -16839,7 +16839,7 @@ +@@ -17228,7 +17228,7 @@ }, { 'name': 'PhoneHubNotificationsAllowed', @@ -19009,7 +19421,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:89-'], -@@ -16859,7 +16859,7 @@ +@@ -17248,7 +17248,7 @@ }, { 'name': 'PhoneHubTaskContinuationAllowed', @@ -19018,7 +19430,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:89-'], -@@ -16879,7 +16879,7 @@ +@@ -17268,7 +17268,7 @@ }, { 'name': 'NearbyShareAllowed', @@ -19027,7 +19439,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'future_on': ['chrome_os'], -@@ -16900,7 +16900,7 @@ +@@ -17289,7 +17289,7 @@ }, { 'name': 'DevicePciPeripheralDataAccessEnabled', @@ -19036,7 +19448,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:90-'], -@@ -16932,7 +16932,7 @@ +@@ -17321,7 +17321,7 @@ }, { 'name': 'BrowserNetworkTimeQueriesEnabled', @@ -19045,7 +19457,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:60-'], -@@ -16961,7 +16961,7 @@ +@@ -17350,7 +17350,7 @@ }, { 'name': 'DeviceSecondFactorAuthentication', @@ -19054,7 +19466,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -17004,7 +17004,7 @@ +@@ -17393,7 +17393,7 @@ }, { 'name': 'PrintPreviewUseSystemDefaultPrinter', @@ -19063,7 +19475,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': [ -@@ -17036,7 +17036,7 @@ +@@ -17425,7 +17425,7 @@ }, { 'name': 'DeviceEcryptfsMigrationStrategy', @@ -19072,7 +19484,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -17082,7 +17082,7 @@ +@@ -17471,7 +17471,7 @@ }, { 'name': 'EcryptfsMigrationStrategy', @@ -19081,7 +19493,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -17138,7 +17138,7 @@ +@@ -17527,7 +17527,7 @@ }, { 'name': 'SchedulerConfiguration', @@ -19090,7 +19502,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -17175,7 +17175,7 @@ +@@ -17564,7 +17564,7 @@ }, { 'name': 'NoteTakingAppsLockScreenWhitelist', @@ -19099,7 +19511,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -17205,7 +17205,7 @@ +@@ -17594,7 +17594,7 @@ }, { 'name': 'NoteTakingAppsLockScreenAllowlist', @@ -19108,7 +19520,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -17232,7 +17232,7 @@ +@@ -17621,7 +17621,7 @@ }, { 'name': 'CastReceiverEnabled', @@ -19117,7 +19529,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'future_on': ['chrome_os'], -@@ -17252,7 +17252,7 @@ +@@ -17641,7 +17641,7 @@ }, { 'name': 'CastReceiverName', @@ -19126,7 +19538,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'future_on': ['chrome_os'], -@@ -17272,7 +17272,7 @@ +@@ -17661,7 +17661,7 @@ }, { 'name': 'DeviceOffHours', @@ -19135,7 +19547,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -17355,7 +17355,7 @@ +@@ -17744,7 +17744,7 @@ }, { 'name': 'CloudPolicyOverridesPlatformPolicy', @@ -19144,7 +19556,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean'}, 'supported_on': [ -@@ -17379,7 +17379,7 @@ +@@ -17768,7 +17768,7 @@ }, { 'name': 'PromptForDownloadLocation', @@ -19153,7 +19565,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean'}, 'supported_on': ['chrome.*:64-', 'chrome_os:64-'], -@@ -17397,7 +17397,7 @@ +@@ -17786,7 +17786,7 @@ }, { 'name': 'UnaffiliatedArcAllowed', @@ -19162,7 +19574,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:64-'], -@@ -17415,7 +17415,7 @@ +@@ -17804,7 +17804,7 @@ }, { 'name': 'DeviceArcDataSnapshotHours', @@ -19171,7 +19583,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -17467,7 +17467,7 @@ +@@ -17856,7 +17856,7 @@ }, { 'name': 'IsolateOrigins', @@ -19180,7 +19592,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:63-', 'chrome_os:63-'], -@@ -17488,7 +17488,7 @@ +@@ -17877,7 +17877,7 @@ }, { 'name': 'SitePerProcess', @@ -19189,7 +19601,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:63-', 'chrome_os:63-'], -@@ -17509,7 +17509,7 @@ +@@ -17898,7 +17898,7 @@ }, { 'name': 'DeviceLoginScreenIsolateOrigins', @@ -19198,7 +19610,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:66-76'], -@@ -17532,7 +17532,7 @@ +@@ -17921,7 +17921,7 @@ }, { 'name': 'DeviceLoginScreenSitePerProcess', @@ -19207,7 +19619,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:66-76'], -@@ -17553,7 +17553,7 @@ +@@ -17942,7 +17942,7 @@ }, { 'name': 'IsolateOriginsAndroid', @@ -19216,7 +19628,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['android:68-'], -@@ -17576,7 +17576,7 @@ +@@ -17965,7 +17965,7 @@ }, { 'name': 'SitePerProcessAndroid', @@ -19225,7 +19637,21 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['android:68-'], -@@ -17599,7 +17599,7 @@ +@@ -17988,7 +17988,7 @@ + }, + { + 'name': 'SharedArrayBufferUnrestrictedAccessAllowed', +- 'owners': ['bbudge@chromium.org', 'vahl@chromium.org'], ++ 'owners': ['bbudge@ch40m1um.qjz9zk', 'vahl@ch40m1um.qjz9zk'], + 'type': 'main', + 'schema': { 'type': 'boolean' }, + 'supported_on': ['chrome.*:91-', 'chrome_os:91-'], +@@ -18017,11 +18017,11 @@ + isolated context. Chrome will require cross-origin isolation when using + SharedArrayBuffers from Chrome 91 onward (2021-05-25) for Web Compatibility + reasons. Additional details can be found on: +- https://developer.chrome.com/blog/enabling-shared-array-buffer/.''', ++ https://developer.ch40me.qjz9zk/blog/enabling-shared-array-buffer/.''', }, { 'name': 'WebDriverOverridesIncompatiblePolicies', @@ -19234,7 +19660,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:65-79'], -@@ -17629,7 +17629,7 @@ +@@ -18051,7 +18051,7 @@ }, { 'name': 'UnsafelyTreatInsecureOriginAsSecure', @@ -19243,7 +19669,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -17676,7 +17676,7 @@ +@@ -18098,7 +18098,7 @@ }, { 'name': 'DefaultDownloadDirectory', @@ -19252,7 +19678,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:64-', 'chrome_os:64-'], -@@ -17694,11 +17694,11 @@ +@@ -18116,11 +18116,11 @@ Leaving the policy unset means Chrome uses its platform-specific default directory. @@ -19266,7 +19692,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome_os:65-'], -@@ -17717,7 +17717,7 @@ +@@ -18139,7 +18139,7 @@ }, { 'name': 'AbusiveExperienceInterventionEnforce', @@ -19275,7 +19701,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:65-', 'chrome_os:65-'], -@@ -17746,7 +17746,7 @@ +@@ -18168,7 +18168,7 @@ }, { 'name': 'SpellcheckLanguage', @@ -19284,7 +19710,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -17777,7 +17777,7 @@ +@@ -18199,7 +18199,7 @@ }, { 'name': 'SpellcheckLanguageBlacklist', @@ -19293,7 +19719,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -17811,7 +17811,7 @@ +@@ -18233,7 +18233,7 @@ }, { 'name': 'SpellcheckLanguageBlocklist', @@ -19302,7 +19728,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -17842,7 +17842,7 @@ +@@ -18264,7 +18264,7 @@ }, { 'name': 'ThirdPartyBlockingEnabled', @@ -19311,7 +19737,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:65-'], -@@ -17862,7 +17862,7 @@ +@@ -18284,7 +18284,7 @@ }, { 'name': 'SpellcheckEnabled', @@ -19320,7 +19746,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:65-', 'chrome_os:65-'], -@@ -17898,7 +17898,7 @@ +@@ -18320,7 +18320,7 @@ }, { 'name': 'AdsSettingForIntrusiveAdsSites', @@ -19329,7 +19755,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -17932,7 +17932,7 @@ +@@ -18354,7 +18354,7 @@ }, { 'name': 'RestrictAccountsToPatterns', @@ -19338,7 +19764,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -17943,7 +17943,7 @@ +@@ -18365,7 +18365,7 @@ 'dynamic_refresh': True, 'per_profile': False, }, @@ -19347,7 +19773,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 410, 'caption': '''Restrict accounts that are visible in $1Google Chrome''', 'tags': [], -@@ -17957,7 +17957,7 @@ +@@ -18379,7 +18379,7 @@ }, { 'name': 'PasswordProtectionWarningTrigger', @@ -19356,7 +19782,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -18006,7 +18006,7 @@ +@@ -18428,7 +18428,7 @@ { 'id': 419, 'name': 'RelaunchNotification', @@ -19365,7 +19791,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'tags': [], 'features': { 'dynamic_refresh': True, -@@ -18041,7 +18041,7 @@ +@@ -18463,7 +18463,7 @@ { 'id': 420, 'name': 'RelaunchNotificationPeriod', @@ -19374,7 +19800,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'tags': [], 'features': { 'dynamic_refresh': True, -@@ -18062,7 +18062,7 @@ +@@ -18484,7 +18484,7 @@ { 'id': 567, 'name': 'RelaunchHeadsUpPeriod', @@ -19383,7 +19809,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'tags': [], 'features': { 'dynamic_refresh': True, -@@ -18080,7 +18080,7 @@ +@@ -18502,7 +18502,7 @@ }, { 'name': 'VirtualMachinesAllowed', @@ -19392,7 +19818,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:66-'], -@@ -18099,7 +18099,7 @@ +@@ -18521,7 +18521,7 @@ }, { 'name': 'CrostiniAllowed', @@ -19401,7 +19827,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:70-'], -@@ -18115,7 +18115,7 @@ +@@ -18537,7 +18537,7 @@ }, { 'name': 'DeviceUnaffiliatedCrostiniAllowed', @@ -19410,7 +19836,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:70-'], -@@ -18131,7 +18131,7 @@ +@@ -18553,7 +18553,7 @@ }, { 'name': 'CrostiniExportImportUIAllowed', @@ -19419,7 +19845,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:74-'], -@@ -18147,7 +18147,7 @@ +@@ -18569,7 +18569,7 @@ }, { 'name': 'CrostiniRootAccessAllowed', @@ -19428,7 +19854,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'future_on': ['chrome_os'], -@@ -18166,7 +18166,7 @@ +@@ -18588,7 +18588,7 @@ }, { 'name': 'CrostiniAnsiblePlaybook', @@ -19437,7 +19863,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'external', 'schema': { 'type': 'object', -@@ -18206,7 +18206,7 @@ +@@ -18628,7 +18628,7 @@ }, { 'name': 'CrostiniArcAdbSideloadingAllowed', @@ -19446,7 +19872,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -18244,7 +18244,7 @@ +@@ -18666,7 +18666,7 @@ }, { 'name': 'DeviceCrostiniArcAdbSideloadingAllowed', @@ -19455,7 +19881,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'device_only': True, 'type': 'int-enum', 'schema': { -@@ -18285,7 +18285,7 @@ +@@ -18707,7 +18707,7 @@ }, { 'name': 'CrostiniPortForwardingAllowed', @@ -19464,7 +19890,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -18305,7 +18305,7 @@ +@@ -18727,7 +18727,7 @@ }, { 'name': 'SafeBrowsingWhitelistDomains', @@ -19473,7 +19899,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -18331,7 +18331,7 @@ +@@ -18753,7 +18753,7 @@ }, { 'name': 'SafeBrowsingAllowlistDomains', @@ -19482,7 +19908,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -18354,7 +18354,7 @@ +@@ -18776,7 +18776,7 @@ }, { 'name': 'PasswordProtectionLoginURLs', @@ -19491,7 +19917,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -18369,15 +18369,15 @@ +@@ -18791,15 +18791,15 @@ 'id': 423, 'caption': '''Configure the list of enterprise login URLs where password protection service should capture salted hashes of passwords.''', 'tags': [], @@ -19510,7 +19936,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:69-', 'chrome_os:69-'], -@@ -18389,15 +18389,15 @@ +@@ -18811,15 +18811,15 @@ 'id': 424, 'caption': '''Configure the change password URL.''', 'tags': [], @@ -19529,7 +19955,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:66-', 'chrome_os:66-', 'android: 87-'], -@@ -18415,12 +18415,12 @@ +@@ -18837,12 +18837,12 @@ If you set this policy, users can't change it. If not set, users can decide whether to send reports or not. @@ -19544,7 +19970,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': ['chrome.*:66-80'], -@@ -18440,7 +18440,7 @@ +@@ -18862,7 +18862,7 @@ }, { 'name': 'CloudManagementEnrollmentToken', @@ -19553,7 +19979,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'supported_on': [ -@@ -18458,11 +18458,11 @@ +@@ -18880,11 +18880,11 @@ 'tags': [], 'desc': '''Setting the policy means $1Google Chrome tries to register itself with Chrome Browser Cloud Management. The value of this policy is an enrollment token you can retrieve from the Google Admin console. @@ -19567,7 +19993,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:72-'], -@@ -18479,11 +18479,11 @@ +@@ -18901,11 +18901,11 @@ Setting the policy to Disabled or leaving it unset renders Chrome Browser Cloud Management optional and doesn't block $1Google Chrome launch process if failed. @@ -19581,7 +20007,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:66-', 'chrome.linux:66-', 'chrome.mac:66-', 'chrome_os:66-'], -@@ -18503,7 +18503,7 @@ +@@ -18925,7 +18925,7 @@ }, { 'name': 'AutoplayWhitelist', @@ -19590,7 +20016,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -18523,11 +18523,11 @@ +@@ -18945,11 +18945,11 @@ Setting the policy lets videos play automatically (without user consent) with audio content in $1Google Chrome. If AutoplayAllowed policy is set to True, then this policy has no effect. If AutoplayAllowed is set to False, then any URL patterns set in this policy can still play. If this policy changes while $1Google Chrome is running, it only applies to newly opened tabs. @@ -19604,7 +20030,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -18544,11 +18544,11 @@ +@@ -18966,11 +18966,11 @@ 'tags': [], 'desc': '''Setting the policy lets videos play automatically (without user consent) with audio content in $1Google Chrome. If AutoplayAllowed policy is set to True, then this policy has no effect. If AutoplayAllowed is set to False, then any URL patterns set in this policy can still play. If this policy changes while $1Google Chrome is running, it only applies to newly opened tabs. @@ -19618,7 +20044,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:67-67', 'chrome_os:67-67'], -@@ -18563,13 +18563,13 @@ +@@ -18985,13 +18985,13 @@ 'tags': [], 'desc': '''Deprecated in M68. Use DefaultPopupsSetting instead. @@ -19634,7 +20060,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:67-'], -@@ -18593,7 +18593,7 @@ +@@ -19015,7 +19015,7 @@ }, { 'name': 'UserPrintersAllowed', @@ -19643,7 +20069,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:86-'], -@@ -18614,7 +18614,7 @@ +@@ -19036,7 +19036,7 @@ }, { 'name': 'DeviceSamlLoginAuthenticationType', @@ -19652,7 +20078,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -18651,7 +18651,7 @@ +@@ -19073,7 +19073,7 @@ }, { 'name': 'ChromeCleanupEnabled', @@ -19661,7 +20087,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:68-'], -@@ -18671,7 +18671,7 @@ +@@ -19093,7 +19093,7 @@ }, { 'name': 'ChromeCleanupReportingEnabled', @@ -19670,7 +20096,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:68-'], -@@ -18693,7 +18693,7 @@ +@@ -19115,7 +19115,7 @@ }, { 'name': 'AllowedLanguages', @@ -19679,7 +20105,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -18717,7 +18717,7 @@ +@@ -19139,7 +19139,7 @@ }, { 'name': 'AllowedInputMethods', @@ -19688,7 +20114,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -18741,7 +18741,7 @@ +@@ -19163,7 +19163,7 @@ }, { 'name': 'ArcAppInstallEventLoggingEnabled', @@ -19697,7 +20123,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:67-'], -@@ -18758,7 +18758,7 @@ +@@ -19180,7 +19180,7 @@ }, { 'name': 'ExtensionInstallEventLoggingEnabled', @@ -19706,7 +20132,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -18776,7 +18776,7 @@ +@@ -19198,7 +19198,7 @@ }, { 'name': 'UsageTimeLimit', @@ -19715,7 +20141,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -18945,7 +18945,7 @@ +@@ -19367,7 +19367,7 @@ }, { 'name': 'ArcBackupRestoreServiceEnabled', @@ -19724,7 +20150,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -18987,7 +18987,7 @@ +@@ -19409,7 +19409,7 @@ }, { 'name': 'ArcGoogleLocationServicesEnabled', @@ -19733,7 +20159,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -19029,7 +19029,7 @@ +@@ -19451,7 +19451,7 @@ }, { 'name': 'EnableSyncConsent', @@ -19742,7 +20168,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean'}, 'supported_on': ['chrome_os:66-'], -@@ -19047,7 +19047,7 @@ +@@ -19469,7 +19469,7 @@ }, { 'name': 'ContextualSuggestionsEnabled', @@ -19751,7 +20177,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['android:69-75'], -@@ -19068,7 +19068,7 @@ +@@ -19490,7 +19490,7 @@ }, { 'name': 'DeviceAutoUpdateTimeRestrictions', @@ -19760,7 +20186,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -19155,7 +19155,7 @@ +@@ -19577,7 +19577,7 @@ { 'id': 454, 'name': 'PromotionalTabsEnabled', @@ -19769,7 +20195,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'tags': [], 'features': { 'dynamic_refresh': True, -@@ -19174,7 +19174,7 @@ +@@ -19596,7 +19596,7 @@ }, { 'name': 'SafeSitesFilterBehavior', @@ -19778,7 +20204,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -19212,7 +19212,7 @@ +@@ -19634,7 +19634,7 @@ }, { 'name': 'OverrideSecurityRestrictionsOnInsecureOrigin', @@ -19787,7 +20213,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -19236,7 +19236,7 @@ +@@ -19658,7 +19658,7 @@ }, { 'name': 'DeviceUpdateStagingSchedule', @@ -19796,7 +20222,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -19281,7 +19281,7 @@ +@@ -19703,7 +19703,7 @@ }, { 'name': 'TabFreezingEnabled', @@ -19805,7 +20231,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:79-79', 'chrome_os:79-79'], -@@ -19296,13 +19296,13 @@ +@@ -19718,13 +19718,13 @@ 'tags': [], 'desc': '''Controls whether $1Google Chrome can freeze tabs that have been in the background for at least 5 minutes. @@ -19821,7 +20247,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:69-', 'chrome_os:69-', 'android:70-', 'ios:90-'], -@@ -19323,7 +19323,7 @@ +@@ -19745,7 +19745,7 @@ { 'id': 462, 'name': 'NetworkFileSharesAllowed', @@ -19830,7 +20256,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean', }, 'tags': [], -@@ -19338,7 +19338,7 @@ +@@ -19760,7 +19760,7 @@ }, { 'name': 'WebRtcEventLogCollectionAllowed', @@ -19839,7 +20265,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:70-', 'chrome_os:70-'], -@@ -19358,7 +19358,7 @@ +@@ -19780,7 +19780,7 @@ }, { 'name': 'PowerSmartDimEnabled', @@ -19848,7 +20274,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:70-'], -@@ -19376,7 +19376,7 @@ +@@ -19798,7 +19798,7 @@ }, { 'name': 'CoalesceH2ConnectionsWithClientCertificatesForHosts', @@ -19857,7 +20283,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -19401,7 +19401,7 @@ +@@ -19823,7 +19823,7 @@ { 'id': 467, 'name': 'NetBiosShareDiscoveryEnabled', @@ -19866,7 +20292,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean', }, 'tags': [], -@@ -19419,7 +19419,7 @@ +@@ -19841,7 +19841,7 @@ }, { 'name': 'ManagedConfigurationPerOrigin', @@ -19875,7 +20301,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -19439,12 +19439,12 @@ +@@ -19861,12 +19861,12 @@ 'per_profile': True, }, 'example_value': [{ @@ -19891,7 +20317,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'managed_configuration_hash' : 'djio12easd89u12aws' }], 'id': 813, -@@ -19457,7 +19457,7 @@ +@@ -19879,7 +19879,7 @@ }, { 'name': 'WebAppInstallForceList', @@ -19900,7 +20326,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -19484,14 +19484,14 @@ +@@ -19906,14 +19906,14 @@ 'per_profile': True, }, 'example_value': [{ @@ -19918,7 +20344,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'default_launch_container': 'window', 'fallback_app_name': 'Editor' }], -@@ -19524,7 +19524,7 @@ +@@ -19946,7 +19946,7 @@ { 'id': 470, 'name': 'ReportVersionData', @@ -19927,7 +20353,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean' }, 'tags': ['admin-sharing'], -@@ -19549,7 +19549,7 @@ +@@ -19971,7 +19971,7 @@ { 'id': 471, 'name': 'ReportPolicyData', @@ -19936,7 +20362,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean' }, 'tags': ['admin-sharing'], -@@ -19574,7 +19574,7 @@ +@@ -19996,7 +19996,7 @@ { 'id': 472, 'name': 'ReportMachineIDData', @@ -19945,7 +20371,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean' }, 'tags': ['admin-sharing'], -@@ -19598,7 +19598,7 @@ +@@ -20020,7 +20020,7 @@ { 'id': 473, 'name': 'ReportUserIDData', @@ -19954,7 +20380,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean' }, 'tags': ['admin-sharing'], -@@ -19623,7 +19623,7 @@ +@@ -20045,7 +20045,7 @@ { 'id': 499, 'name': 'ReportExtensionsAndPluginsData', @@ -19963,7 +20389,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean' }, 'tags': ['admin-sharing'], -@@ -19648,7 +19648,7 @@ +@@ -20070,7 +20070,7 @@ { 'id': 500, 'name': 'ReportSafeBrowsingData', @@ -19972,7 +20398,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean' }, 'tags': ['admin-sharing'], -@@ -19674,7 +19674,7 @@ +@@ -20096,7 +20096,7 @@ { 'id': 608, 'name': 'CloudExtensionRequestEnabled', @@ -19981,7 +20407,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean' }, 'tags': ['admin-sharing', 'google-sharing'], -@@ -19700,7 +19700,7 @@ +@@ -20122,7 +20122,7 @@ { 'id': 493, 'name': 'CloudReportingEnabled', @@ -19990,7 +20416,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean' }, 'tags': ['admin-sharing', 'google-sharing'], -@@ -19726,7 +19726,7 @@ +@@ -20148,7 +20148,7 @@ }, { 'name': 'EnterpriseHardwarePlatformAPIEnabled', @@ -19999,7 +20425,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:71-', 'chrome_os:71-', 'android:71-'], -@@ -19746,7 +19746,7 @@ +@@ -20168,7 +20168,7 @@ }, { 'name': 'VpnConfigAllowed', @@ -20008,7 +20434,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:71-'], -@@ -19765,7 +19765,7 @@ +@@ -20187,7 +20187,7 @@ { 'id': 489, 'name': 'NTLMShareAuthenticationEnabled', @@ -20017,7 +20443,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': {'type': 'boolean', }, 'tags': [], -@@ -19783,7 +19783,7 @@ +@@ -20205,7 +20205,7 @@ }, { 'name': 'NetworkFileSharesPreconfiguredShares', @@ -20026,7 +20452,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -19828,7 +19828,7 @@ +@@ -20250,7 +20250,7 @@ }, { 'name': 'ScreenBrightnessPercent', @@ -20035,7 +20461,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -19868,7 +19868,7 @@ +@@ -20290,7 +20290,7 @@ { 'id': 494, 'name': 'AlternativeBrowserPath', @@ -20044,7 +20470,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': {'type': 'string'}, 'features': { -@@ -19886,7 +19886,7 @@ +@@ -20308,7 +20308,7 @@ { 'id': 495, 'name': 'AlternativeBrowserParameters', @@ -20053,7 +20479,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -19917,7 +19917,7 @@ +@@ -20339,7 +20339,7 @@ { 'id': 530, 'name': 'BrowserSwitcherChromePath', @@ -20062,7 +20488,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': {'type': 'string'}, 'features': { -@@ -19937,7 +19937,7 @@ +@@ -20359,7 +20359,7 @@ { 'id': 531, 'name': 'BrowserSwitcherChromeParameters', @@ -20071,7 +20497,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -19964,7 +19964,7 @@ +@@ -20386,7 +20386,7 @@ { 'id': 496, 'name': 'BrowserSwitcherUrlList', @@ -20080,7 +20506,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -19991,7 +19991,7 @@ +@@ -20413,7 +20413,7 @@ { 'id': 497, 'name': 'BrowserSwitcherUrlGreylist', @@ -20089,7 +20515,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -20018,7 +20018,7 @@ +@@ -20440,7 +20440,7 @@ { 'id': 498, 'name': 'BrowserSwitcherUseIeSitelist', @@ -20098,7 +20524,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'example_value': True, -@@ -20035,12 +20035,12 @@ +@@ -20457,12 +20457,12 @@ When this policy is false or unset, $1Google Chrome does not use Internet Explorer®'s SiteList policy as a source of rules for switching browsers. @@ -20113,7 +20539,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'example_value': 'http://example.com/sitelist.xml', -@@ -20055,12 +20055,12 @@ +@@ -20477,12 +20477,12 @@ Leaving it unset (or set to a invalid URL) means $1Google Chrome doesn't use the policy as a source of rules for switching browsers. @@ -20128,7 +20554,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string' }, 'example_value': 'http://example.com/greylist.xml', -@@ -20075,12 +20075,12 @@ +@@ -20497,12 +20497,12 @@ Leaving it unset (or set to a invalid URL) means $1Google Chrome doesn't use the policy as a source of rules for not switching browsers. @@ -20143,7 +20569,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer' }, 'example_value': 10000, -@@ -20098,7 +20098,7 @@ +@@ -20520,7 +20520,7 @@ { 'id': 517, 'name': 'BrowserSwitcherEnabled', @@ -20152,7 +20578,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'example_value': True, -@@ -20116,7 +20116,7 @@ +@@ -20538,7 +20538,7 @@ { 'id': 519, 'name': 'BrowserSwitcherKeepLastChromeTab', @@ -20161,7 +20587,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'example_value': False, -@@ -20133,7 +20133,7 @@ +@@ -20555,7 +20555,7 @@ }, { 'name': 'DeviceDisplayResolution', @@ -20170,7 +20596,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -20174,7 +20174,7 @@ +@@ -20596,7 +20596,7 @@ }, { 'name': 'PluginVmAllowed', @@ -20179,7 +20605,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:72-'], -@@ -20192,7 +20192,7 @@ +@@ -20614,7 +20614,7 @@ }, { 'name': 'UserPluginVmAllowed', @@ -20188,7 +20614,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:84-'], -@@ -20212,7 +20212,7 @@ +@@ -20634,7 +20634,7 @@ }, { 'name': 'PluginVmLicenseKey', @@ -20197,7 +20623,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'sensitiveValue': True, -@@ -20231,7 +20231,7 @@ +@@ -20653,7 +20653,7 @@ }, { 'name': 'PluginVmUserId', @@ -20206,7 +20632,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'sensitiveValue': True, -@@ -20250,7 +20250,7 @@ +@@ -20672,7 +20672,7 @@ }, { 'name': 'PluginVmImage', @@ -20215,7 +20641,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -20281,7 +20281,7 @@ +@@ -20703,7 +20703,7 @@ }, { 'name': 'PluginVmDataCollectionAllowed', @@ -20224,7 +20650,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -20300,7 +20300,7 @@ +@@ -20722,7 +20722,7 @@ }, { 'name': 'PluginVmRequiredFreeDiskSpace', @@ -20233,7 +20659,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -20323,7 +20323,7 @@ +@@ -20745,7 +20745,7 @@ }, { 'name': 'ParentAccessCodeConfig', @@ -20242,7 +20668,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'sensitiveValue': True, -@@ -20401,7 +20401,7 @@ +@@ -20823,7 +20823,7 @@ }, { 'name': 'ClientCertificateManagementAllowed', @@ -20251,7 +20677,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -20441,7 +20441,7 @@ +@@ -20863,7 +20863,7 @@ { 'id': 520, 'name': 'DeviceRebootOnUserSignout', @@ -20260,7 +20686,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -20488,7 +20488,7 @@ +@@ -20910,7 +20910,7 @@ }, { 'name': 'ForceNetworkInProcess', @@ -20269,7 +20695,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:72-83'], -@@ -20505,7 +20505,7 @@ +@@ -20927,7 +20927,7 @@ }, { 'name': 'AssistantOnboardingMode', @@ -20278,7 +20704,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum', 'schema': { 'type': 'string', -@@ -20545,7 +20545,7 @@ +@@ -20967,7 +20967,7 @@ }, { 'name': 'VoiceInteractionContextEnabled', @@ -20287,7 +20713,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:74-'], -@@ -20563,7 +20563,7 @@ +@@ -20985,7 +20985,7 @@ }, { 'name': 'VoiceInteractionHotwordEnabled', @@ -20296,7 +20722,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:74-'], -@@ -20581,7 +20581,7 @@ +@@ -21003,7 +21003,7 @@ }, { 'name': 'VoiceInteractionQuickAnswersEnabled', @@ -20305,7 +20731,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:84-88'], -@@ -20604,7 +20604,7 @@ +@@ -21026,7 +21026,7 @@ }, { 'name': 'DeviceWilcoDtcAllowed', @@ -20314,7 +20740,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:74-'], -@@ -20623,7 +20623,7 @@ +@@ -21045,7 +21045,7 @@ }, { 'name': 'AllowPopupsDuringPageUnload', @@ -20323,7 +20749,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'deprecated': True, -@@ -20643,11 +20643,11 @@ +@@ -21065,11 +21065,11 @@ This policy was removed in Chrome 88 and is ignored if set. @@ -20337,7 +20763,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'external', 'schema': { 'type': 'object', -@@ -20676,7 +20676,7 @@ +@@ -21098,7 +21098,7 @@ }, { 'name': 'DevicePowerPeakShiftEnabled', @@ -20346,7 +20772,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:75-'], -@@ -20697,7 +20697,7 @@ +@@ -21119,7 +21119,7 @@ }, { 'name': 'DevicePowerPeakShiftBatteryThreshold', @@ -20355,7 +20781,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -20720,7 +20720,7 @@ +@@ -21142,7 +21142,7 @@ }, { 'name': 'DevicePowerPeakShiftDayConfig', @@ -20364,7 +20790,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -20799,7 +20799,7 @@ +@@ -21221,7 +21221,7 @@ }, { 'name': 'DeviceBootOnAcEnabled', @@ -20373,7 +20799,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:75-'], -@@ -20820,7 +20820,7 @@ +@@ -21242,7 +21242,7 @@ }, { 'name': 'DeviceUsbPowerShareEnabled', @@ -20382,7 +20808,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:75-'], -@@ -20845,7 +20845,7 @@ +@@ -21267,7 +21267,7 @@ }, { 'name': 'SignedHTTPExchangeEnabled', @@ -20391,7 +20817,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:75-', 'chrome_os:75-'], -@@ -20874,7 +20874,7 @@ +@@ -21296,7 +21296,7 @@ }, { 'name': 'ContextAwareAccessSignalsAllowlist', @@ -20400,7 +20826,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'future_on': ['chrome.*'], 'type': 'list', 'schema': { -@@ -20900,11 +20900,11 @@ +@@ -21322,11 +21322,11 @@ Note: Wildcards, *, are allowed. @@ -20414,7 +20840,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string', -@@ -20927,7 +20927,7 @@ +@@ -21349,7 +21349,7 @@ }, { 'name': 'SamlInSessionPasswordChangeEnabled', @@ -20423,7 +20849,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:76-'], -@@ -20960,7 +20960,7 @@ +@@ -21382,7 +21382,7 @@ }, { 'name': 'LockScreenReauthenticationEnabled', @@ -20432,7 +20858,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -20979,7 +20979,7 @@ +@@ -21401,7 +21401,7 @@ }, { 'name': 'UserFeedbackAllowed', @@ -20441,7 +20867,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean', -@@ -21010,7 +21010,7 @@ +@@ -21432,7 +21432,7 @@ }, { 'name': 'SamlPasswordExpirationAdvanceWarningDays', @@ -20450,7 +20876,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -21037,7 +21037,7 @@ +@@ -21459,7 +21459,7 @@ }, { 'name': 'DeviceAdvancedBatteryChargeModeEnabled', @@ -20459,7 +20885,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:75-'], -@@ -21058,7 +21058,7 @@ +@@ -21480,7 +21480,7 @@ }, { 'name': 'DeviceAdvancedBatteryChargeModeDayConfig', @@ -20468,7 +20894,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -21125,7 +21125,7 @@ +@@ -21547,7 +21547,7 @@ }, { 'name': 'DeviceBatteryChargeMode', @@ -20477,7 +20903,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -21176,7 +21176,7 @@ +@@ -21598,7 +21598,7 @@ }, { 'name': 'DeviceBatteryChargeCustomStartCharging', @@ -20486,7 +20912,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -21199,7 +21199,7 @@ +@@ -21621,7 +21621,7 @@ }, { 'name': 'DeviceBatteryChargeCustomStopCharging', @@ -20495,7 +20921,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -21222,7 +21222,7 @@ +@@ -21644,7 +21644,7 @@ }, { 'name': 'DeviceScheduledUpdateCheck', @@ -20504,7 +20930,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'device_only': True, 'type': 'dict', 'schema': { -@@ -21268,7 +21268,7 @@ +@@ -21690,7 +21690,7 @@ }, { 'name': 'KerberosEnabled', @@ -20513,7 +20939,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:87-'], -@@ -21289,7 +21289,7 @@ +@@ -21711,7 +21711,7 @@ }, { 'name': 'KerberosRememberPasswordEnabled', @@ -20522,7 +20948,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:87-'], -@@ -21310,7 +21310,7 @@ +@@ -21732,7 +21732,7 @@ }, { 'name': 'KerberosAddAccountsAllowed', @@ -20531,7 +20957,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:87-'], -@@ -21331,7 +21331,7 @@ +@@ -21753,7 +21753,7 @@ }, { 'name': 'KerberosAccounts', @@ -20540,7 +20966,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -21408,7 +21408,7 @@ +@@ -21830,7 +21830,7 @@ }, { 'name': 'CommandLineFlagSecurityWarningsEnabled', @@ -20549,7 +20975,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:76-'], -@@ -21439,7 +21439,7 @@ +@@ -21861,7 +21861,7 @@ }, { 'name': 'StartupBrowserWindowLaunchSuppressed', @@ -20558,7 +20984,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:76-'], -@@ -21460,7 +21460,7 @@ +@@ -21882,7 +21882,7 @@ { 'id': 571, 'name': 'DevicePowerwashAllowed', @@ -20567,7 +20993,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean', -@@ -21480,7 +21480,7 @@ +@@ -21902,7 +21902,7 @@ }, { 'name': 'ExternalPrintServers', @@ -20576,7 +21002,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'external', 'schema': { 'type': 'object', -@@ -21525,7 +21525,7 @@ +@@ -21947,7 +21947,7 @@ }, { 'name': 'DeviceExternalPrintServers', @@ -20585,7 +21011,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'external', 'schema': { 'type': 'object', -@@ -21574,7 +21574,7 @@ +@@ -21996,7 +21996,7 @@ }, { 'name': 'VmManagementCliAllowed', @@ -20594,7 +21020,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:77-'], -@@ -21594,7 +21594,7 @@ +@@ -22016,7 +22016,7 @@ }, { 'name': 'CACertificateManagementAllowed', @@ -20603,7 +21029,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -21632,7 +21632,7 @@ +@@ -22054,7 +22054,7 @@ { 'id': 581, 'name': 'LockScreenMediaPlaybackEnabled', @@ -20612,7 +21038,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean', -@@ -21652,7 +21652,7 @@ +@@ -22074,7 +22074,7 @@ }, { 'name': 'OnFileDownloadedEnterpriseConnector', @@ -20621,7 +21047,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -21787,7 +21787,7 @@ +@@ -22209,7 +22209,7 @@ }, { 'name': 'OnFileAttachedEnterpriseConnector', @@ -20630,7 +21056,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -21922,7 +21922,7 @@ +@@ -22344,7 +22344,7 @@ }, { 'name': 'OnBulkDataEntryEnterpriseConnector', @@ -20639,7 +21065,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -22053,7 +22053,7 @@ +@@ -22475,7 +22475,7 @@ }, { 'name': 'OnSecurityEventEnterpriseConnector', @@ -20648,7 +21074,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -22090,7 +22090,7 @@ +@@ -22512,7 +22512,7 @@ }, { 'name': 'EnterpriseRealTimeUrlCheckMode', @@ -20657,7 +21083,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -22132,7 +22132,7 @@ +@@ -22554,7 +22554,7 @@ }, { 'name': 'RendererCodeIntegrityEnabled', @@ -20666,7 +21092,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:78-'], -@@ -22148,11 +22148,11 @@ +@@ -22570,11 +22570,11 @@ Setting the policy to Disabled has a detrimental effect on $1Google Chrome's security and stability as unknown and potentially hostile code can load inside $1Google Chrome's renderer processes. Only turn off the policy if there are compatibility issues with third-party software that must run inside $1Google Chrome's renderer processes. @@ -20680,7 +21106,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -22178,7 +22178,7 @@ +@@ -22600,7 +22600,7 @@ }, { 'name': 'AllowSyncXHRInPageDismissal', @@ -20689,7 +21115,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:78-', 'chrome_os:78-', 'android:78-'], -@@ -22199,11 +22199,11 @@ +@@ -22621,11 +22621,11 @@ This policy will be removed in Chrome 93. @@ -20703,7 +21129,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', -@@ -22229,7 +22229,7 @@ +@@ -22651,7 +22651,7 @@ { 'id': 626, 'name': 'TLS13HardeningForLocalAnchorsEnabled', @@ -20712,7 +21138,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean', -@@ -22254,7 +22254,7 @@ +@@ -22676,7 +22676,7 @@ }, { 'name': 'AudioSandboxEnabled', @@ -20721,7 +21147,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:79-', 'chrome.linux:79-', 'chrome.mac:79-'], -@@ -22275,7 +22275,7 @@ +@@ -22697,7 +22697,7 @@ }, { 'name': 'CorsMitigationList', @@ -20730,7 +21156,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -22293,19 +22293,19 @@ +@@ -22715,19 +22715,19 @@ 'tags': [], 'desc': '''Enable CORS check mitigations in the new CORS implementation, allowing Extensions to keep compatible behavior, and allowing $1Google Chrome to send specified headers without CORS checks. @@ -20753,7 +21179,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:79-83', 'chrome_os:79-83'], -@@ -22326,13 +22326,13 @@ +@@ -22748,13 +22748,13 @@ This policy will be removed after a couple of milestones. @@ -20769,7 +21195,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:79-'], 'id': 631, 'features': { -@@ -22360,7 +22360,7 @@ +@@ -22782,7 +22782,7 @@ }, { 'name': 'ExternalPrintServersAllowlist', @@ -20778,7 +21204,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:86-'], 'id': 750, 'features': { -@@ -22385,7 +22385,7 @@ +@@ -22807,7 +22807,7 @@ }, { 'name': 'DeviceExternalPrintServersAllowlist', @@ -20787,7 +21213,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'future_on': ['chrome_os'], # TODO(https://crbug.com/1100777): Remove |future|. 'id': 731, -@@ -22412,7 +22412,7 @@ +@@ -22834,7 +22834,7 @@ }, { 'name': 'ExternalProtocolDialogShowAlwaysOpenCheckbox', @@ -20796,7 +21222,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean', -@@ -22445,7 +22445,7 @@ +@@ -22867,7 +22867,7 @@ }, { 'name': 'DefaultInsecureContentSetting', @@ -20805,7 +21231,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -22480,7 +22480,7 @@ +@@ -22902,7 +22902,7 @@ }, { 'name': 'InsecureContentAllowedForUrls', @@ -20814,7 +21240,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -22499,11 +22499,11 @@ +@@ -22921,11 +22921,11 @@ If this policy is left not set blockable mixed content will be blocked and optionally blockable mixed content will be upgraded, and users will be allowed to set exceptions to allow it for specific sites. @@ -20828,7 +21254,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -22522,11 +22522,11 @@ +@@ -22944,11 +22944,11 @@ If this policy is left not set blockable mixed content will be blocked and optionally blockable mixed content will be upgraded, but users will be allowed to set exceptions to allow it for specific sites. @@ -20837,12 +21263,12 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, { 'name': 'DeviceWebBasedAttestationAllowedUrls', -- 'owners': ['miersh@google.com', 'pmarko@chromium.org', 'file://chrome/browser/chromeos/login/OWNERS'], -+ 'owners': ['miersh@9oo91e.qjz9zk', 'pmarko@ch40m1um.qjz9zk', 'file://chrome/browser/chromeos/login/OWNERS'], +- 'owners': ['miersh@google.com', 'pmarko@chromium.org', 'file://chrome/browser/ash/login/OWNERS'], ++ 'owners': ['miersh@9oo91e.qjz9zk', 'pmarko@ch40m1um.qjz9zk', 'file://chrome/browser/ash/login/OWNERS'], 'device_only': True, 'type': 'list', 'schema': { -@@ -22550,11 +22550,11 @@ +@@ -22972,11 +22972,11 @@ URLs must have HTTPS scheme, e.g. "https://example.com". @@ -20851,12 +21277,12 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, { 'name': 'DeviceShowNumericKeyboardForPassword', -- 'owners': ['raleksandrov@google.com', 'file://chrome/browser/chromeos/login/OWNERS'], -+ 'owners': ['raleksandrov@9oo91e.qjz9zk', 'file://chrome/browser/chromeos/login/OWNERS'], +- 'owners': ['raleksandrov@google.com', 'file://chrome/browser/ash/login/OWNERS'], ++ 'owners': ['raleksandrov@9oo91e.qjz9zk', 'file://chrome/browser/ash/login/OWNERS'], 'type' : 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:80-'], -@@ -22572,7 +22572,7 @@ +@@ -22994,7 +22994,7 @@ }, { 'name': 'PerAppTimeLimits', @@ -20865,25 +21291,25 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -22699,7 +22699,7 @@ +@@ -23121,7 +23121,7 @@ }, { 'name': 'WebComponentsV0Enabled', -- 'owners': ['masonfreed@chromium.org', 'chrishtr@chromium.org'], -+ 'owners': ['masonfreed@ch40m1um.qjz9zk', 'chrishtr@ch40m1um.qjz9zk'], +- 'owners': ['masonf@chromium.org', 'chrishtr@chromium.org'], ++ 'owners': ['masonf@ch40m1um.qjz9zk', 'chrishtr@ch40m1um.qjz9zk'], 'type': 'main', 'schema': { 'type': 'boolean' }, 'example_value': True, -@@ -22722,7 +22722,7 @@ +@@ -23144,7 +23144,7 @@ }, { 'name': 'UseLegacyFormControls', -- 'owners': ['masonfreed@chromium.org', 'chrishtr@chromium.org', 'hwi@chromium.org', 'nsull@google.com'], -+ 'owners': ['masonfreed@ch40m1um.qjz9zk', 'chrishtr@ch40m1um.qjz9zk', 'hwi@ch40m1um.qjz9zk', 'nsull@9oo91e.qjz9zk'], +- 'owners': ['masonf@chromium.org', 'chrishtr@chromium.org', 'hwi@chromium.org', 'nsull@google.com'], ++ 'owners': ['masonf@ch40m1um.qjz9zk', 'chrishtr@ch40m1um.qjz9zk', 'hwi@ch40m1um.qjz9zk', 'nsull@9oo91e.qjz9zk'], 'type': 'main', 'schema': { 'type': 'boolean' }, 'example_value': True, -@@ -22745,7 +22745,7 @@ +@@ -23167,7 +23167,7 @@ }, { 'name': 'ClickToCallEnabled', @@ -20892,7 +21318,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:79-', 'chrome_os:79-'], -@@ -22757,7 +22757,7 @@ +@@ -23179,7 +23179,7 @@ 'id': 645, 'caption': '''Enable the Click to Call Feature''', 'tags': [], @@ -20901,7 +21327,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli If this policy is set to enabled, the capability of sending phone numbers to Android devices will be enabled for the Chrome user. -@@ -22769,7 +22769,7 @@ +@@ -23191,7 +23191,7 @@ }, { 'name': 'UserDataSnapshotRetentionLimit', @@ -20910,7 +21336,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 0 }, 'supported_on': ['chrome.*:83-'], -@@ -22790,7 +22790,7 @@ +@@ -23212,7 +23212,7 @@ }, { 'name': 'PrinterTypeDenyList', @@ -20919,7 +21345,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum-list', 'schema': { 'type': 'array', -@@ -22855,7 +22855,7 @@ +@@ -23277,7 +23277,7 @@ }, { 'name': 'PrintRasterizationMode', @@ -20928,7 +21354,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -22895,7 +22895,7 @@ +@@ -23317,7 +23317,7 @@ }, { 'name': 'DeletePrintJobHistoryAllowed', @@ -20937,7 +21363,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -22918,7 +22918,7 @@ +@@ -23340,7 +23340,7 @@ }, { 'name': 'AmbientAuthenticationInPrivateModesEnabled', @@ -20946,7 +21372,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -22973,7 +22973,7 @@ +@@ -23395,7 +23395,7 @@ }, { 'name': 'PaymentMethodQueryEnabled', @@ -20955,7 +21381,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:80-', 'chrome_os:80-', 'android:80-'], -@@ -22993,7 +22993,7 @@ +@@ -23415,7 +23415,7 @@ }, { 'name': 'StricterMixedContentTreatmentEnabled', @@ -20964,7 +21390,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:80-', 'chrome_os:80-'], -@@ -23015,7 +23015,7 @@ +@@ -23437,7 +23437,7 @@ }, { 'name': 'PerAppTimeLimitsWhitelist', @@ -20973,7 +21399,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 658, 'features': { 'dynamic_refresh': True, -@@ -23059,8 +23059,8 @@ +@@ -23481,8 +23481,8 @@ 'url_list': [ "chrome://*", "file://*", @@ -20984,7 +21410,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli ], 'app_list': [ { -@@ -23089,7 +23089,7 @@ +@@ -23511,7 +23511,7 @@ }, { 'name': 'PerAppTimeLimitsAllowlist', @@ -20993,7 +21419,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'id': 762, 'features': { 'dynamic_refresh': True, -@@ -23132,8 +23132,8 @@ +@@ -23554,8 +23554,8 @@ 'url_list': [ "chrome://*", "file://*", @@ -21004,7 +21430,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli ], 'app_list': [ { -@@ -23160,7 +23160,7 @@ +@@ -23582,7 +23582,7 @@ }, { 'name': 'LocalDiscoveryEnabled', @@ -21013,7 +21439,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:81-87', 'chrome_os:81-87'], -@@ -23193,7 +23193,7 @@ +@@ -23615,7 +23615,7 @@ }, { 'name': 'ScreenCaptureAllowed', @@ -21022,7 +21448,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:81-', 'chrome_os:81-'], -@@ -23215,7 +23215,7 @@ +@@ -23637,7 +23637,7 @@ }, { 'name': 'AdvancedProtectionDeepScanningEnabled', @@ -21031,7 +21457,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:81-81'], -@@ -23234,7 +23234,7 @@ +@@ -23656,7 +23656,7 @@ }, { 'name': 'SystemProxySettings', @@ -21040,7 +21466,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'supported_on': ['chrome_os:87-'], 'device_only': True, 'id': 672, -@@ -23290,7 +23290,7 @@ +@@ -23712,7 +23712,7 @@ }, { 'name': 'DeviceLoginScreenPrivacyScreenEnabled', @@ -21049,7 +21475,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'device_only': True, 'type': 'main', 'schema': { 'type': 'boolean' }, -@@ -23318,7 +23318,7 @@ If this policy is left unset, the privacy screen is disabled initially, but rema +@@ -23740,7 +23740,7 @@ If this policy is left unset, the privacy screen is disabled initially, but rema }, { 'name': 'PrivacyScreenEnabled', @@ -21058,7 +21484,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:83-'], -@@ -23345,7 +23345,7 @@ If this policy is left unset, privacy screen is disabled initially but can be co +@@ -23767,7 +23767,7 @@ If this policy is left unset, privacy screen is disabled initially but can be co }, { 'name': 'AllowNativeNotifications', @@ -21067,7 +21493,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.linux:83-'], -@@ -23400,7 +23400,7 @@ If set to False, $1Google Chrome will not +@@ -23822,7 +23822,7 @@ If set to False, $1Google Chrome will not }, { 'name': 'RequiredClientCertificateForUser', @@ -21076,7 +21502,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -23452,7 +23452,7 @@ If set to False, $1Google Chrome will not +@@ -23874,7 +23874,7 @@ If set to False, $1Google Chrome will not }, { 'name': 'RequiredClientCertificateForDevice', @@ -21085,7 +21511,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -23504,7 +23504,7 @@ If set to False, $1Google Chrome will not +@@ -23926,7 +23926,7 @@ If set to False, $1Google Chrome will not }, { 'name': 'AdvancedProtectionAllowed', @@ -21094,7 +21520,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:83-', 'chrome_os:83-'], -@@ -23521,7 +23521,7 @@ If set to False, $1Google Chrome will not +@@ -23943,7 +23943,7 @@ If set to False, $1Google Chrome will not }, { 'name': 'ScrollToTextFragmentEnabled', @@ -21103,7 +21529,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:83-', 'chrome_os:83-', 'android:83-'], -@@ -23542,7 +23542,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -23964,7 +23964,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'LoginDisplayPasswordButtonEnabled', @@ -21112,7 +21538,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:86-'], -@@ -23561,7 +23561,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -23983,7 +23983,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'AccessibilityImageLabelsEnabled', @@ -21121,7 +21547,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:84-', 'chrome.*:84-'], -@@ -23612,7 +23612,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24034,7 +24034,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'IntensiveWakeUpThrottlingEnabled', @@ -21130,7 +21556,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-', 'chrome.*:85-', 'android:85-'], -@@ -23650,7 +23650,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24072,7 +24072,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'BackForwardCacheEnabled', @@ -21139,7 +21565,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['android:86-'], -@@ -23685,7 +23685,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24107,7 +24107,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'PinUnlockAutosubmitEnabled', @@ -21148,7 +21574,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:86-'], -@@ -23711,7 +23711,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24133,7 +24133,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'EmojiSuggestionEnabled', @@ -21157,7 +21583,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:86-'], -@@ -23730,7 +23730,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24152,7 +24152,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'UserAgentClientHintsEnabled', @@ -21166,7 +21592,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:84-', 'chrome.*:84-', 'android:84-'], -@@ -23753,7 +23753,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24175,7 +24175,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'SuggestedContentEnabled', @@ -21175,7 +21601,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:85-'], -@@ -23775,7 +23775,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24197,7 +24197,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'ShowFullUrlsInAddressBar', @@ -21184,7 +21610,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:86-', 'chrome.*:86-'], -@@ -23798,7 +23798,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24220,7 +24220,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'InsecureFormsWarningsEnabled', @@ -21193,7 +21619,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:86-', 'chrome_os:86-', 'android:86-'], -@@ -23817,7 +23817,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24239,7 +24239,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'LookalikeWarningAllowlistDomains', @@ -21202,7 +21628,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'list', 'schema': { 'type': 'array', -@@ -23843,7 +23843,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24265,7 +24265,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'CCTToSDialogEnabled', @@ -21211,7 +21637,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['android:86-86'], -@@ -23873,7 +23873,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24295,7 +24295,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'TosDialogBehavior', @@ -21220,7 +21646,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -23916,7 +23916,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24338,7 +24338,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'CloudPrintWarningsSuppressed', @@ -21229,7 +21655,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:86-87', 'chrome_os:86-87'], -@@ -23946,7 +23946,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24368,7 +24368,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'EnableDeprecatedPrivetPrinting', @@ -21238,7 +21664,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:89-93', 'chrome_os:89-93'], -@@ -23975,7 +23975,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24397,7 +24397,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'DataLeakPreventionRulesList', @@ -21247,7 +21673,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -24060,18 +24060,18 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24482,18 +24482,18 @@ If you disable this policy, web page scrolling to specific text fragments via UR 'sources': { 'urls': [ 'salesforce.com', @@ -21272,7 +21698,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'company.com' ] }, -@@ -24104,8 +24104,8 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24526,8 +24526,8 @@ If you disable this policy, web page scrolling to specific text fragments via UR 'sources': { 'urls': [ 'salesforce.com', @@ -21283,7 +21709,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'company.com' ] }, -@@ -24150,13 +24150,13 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24572,13 +24572,13 @@ If you disable this policy, web page scrolling to specific text fragments via UR Notes: - PRIVACY_SCREEN restriction doesn't block the ability to turn on privacy screen, but enforces it when the restriction class is set to BLOCK. - Destinations cannot be empty in case one of the restrictions is CLIPBOARD, but they don't make any difference for the remaining restrictions. @@ -21299,7 +21725,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:87-', 'chrome_os:87-'], -@@ -24189,7 +24189,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24611,7 +24611,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'MediaRecommendationsEnabled', @@ -21308,7 +21734,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:87-', 'chrome_os:87-'], -@@ -24216,7 +24216,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24638,7 +24638,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'DeviceFamilyLinkAccountsAllowed', @@ -21317,7 +21743,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:87-'], -@@ -24240,7 +24240,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24662,7 +24662,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'EduCoexistenceToSVersion', @@ -21326,7 +21752,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string', 'schema': { 'type': 'string', -@@ -24265,7 +24265,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24687,7 +24687,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'BrowsingDataLifetime', @@ -21335,7 +21761,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -24319,7 +24319,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24741,7 +24741,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'LacrosAllowed', @@ -21344,7 +21770,16 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:88-'], -@@ -24351,7 +24351,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24773,7 +24773,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR + }, + { + 'name': 'LacrosSecondaryProfilesAllowed', +- 'owners': ['asumaneev@google.com'], ++ 'owners': ['asumaneev@9oo91e.qjz9zk'], + 'type': 'main', + 'schema': { 'type': 'boolean' }, + # TODO(crbug.com/1179280): remove chrome.linux support once +@@ -24809,7 +24809,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'IntegratedWebAuthenticationAllowed', @@ -21353,7 +21788,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:89-'], -@@ -24382,7 +24382,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24840,7 +24840,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'ClearBrowsingDataOnExitList', @@ -21362,7 +21797,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'string-enum-list', 'schema': { 'type': 'array', -@@ -24471,7 +24471,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24929,7 +24929,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'ProfilePickerOnStartupAvailability', @@ -21371,7 +21806,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int-enum', 'schema': { 'type': 'integer', -@@ -24518,7 +24518,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -24976,7 +24976,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'SigninInterceptionEnabled', @@ -21380,7 +21815,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.*:89-'], -@@ -24553,7 +24553,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -25011,7 +25011,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'WebXRImmersiveArEnabled', @@ -21389,7 +21824,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['android:90-'], -@@ -24586,7 +24586,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -25044,7 +25044,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'SendDownloadToCloudEnterpriseConnector', @@ -21398,7 +21833,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'array', -@@ -24671,7 +24671,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -25131,7 +25131,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'DeviceSystemWideTracingEnabled', @@ -21407,7 +21842,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome_os:90-'], -@@ -24705,7 +24705,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -25165,7 +25165,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'WebAppSettings', @@ -21416,7 +21851,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'dict', 'schema': { 'type': 'object', -@@ -24763,7 +24763,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -25223,7 +25223,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'FetchKeepaliveDurationSecondsOnShutdown', @@ -21425,7 +21860,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'int', 'schema': { 'type': 'integer', 'minimum': 0, 'maximum': 5 }, 'default': 0, -@@ -24785,7 +24785,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -25246,7 +25246,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'SuppressDifferentOriginSubframeDialogs', @@ -21433,8 +21868,8 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli + 'owners': ['carlosil@ch40m1um.qjz9zk', 'meacer@ch40m1um.qjz9zk'], 'type': 'main', 'schema': { 'type': 'boolean' }, - 'future_on': [ -@@ -24812,14 +24812,14 @@ If you disable this policy, web page scrolling to specific text fragments via UR + 'supported_on': ['chrome.*:91-', 'chrome_os:91-', 'android:91-'], +@@ -25269,7 +25269,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR 'id': 829, 'caption': '''Suppress JavaScript Dialogs triggered from different origin subframes''', 'tags': [], @@ -21442,7 +21877,26 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli + 'desc': '''As described in https://www.ch40mestatus.qjz9zk/feature/5148698084376576 , JavaScript modal dialogs, triggered by $6window.alert, $6window.confirm, and $6window.prompt, will be blocked in $1Google Chrome if triggered from a subframe whose origin is different from the main frame origin. This policy allows overriding that change. If the policy is set to enabled or unset, JavaScript dialogs triggered from a different origin subframe will be blocked. - If the policy is set to disabled, JavaScript dialogs triggered from a different origin subframe will not be blocked.''', + If the policy is set to disabled, JavaScript dialogs triggered from a different origin subframe will not be blocked. +@@ -25278,7 +25278,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR + }, + { + 'name': 'DeviceBorealisAllowed', +- 'owners': ['hollingum@google.com', 'dca@google.com'], ++ 'owners': ['hollingum@9oo91e.qjz9zk', 'dca@9oo91e.qjz9zk'], + 'type': 'main', + 'schema': { 'type': 'boolean' }, + 'supported_on': ['chrome_os:91-'], +@@ -25307,7 +25307,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR + }, + { + 'name': 'UserBorealisAllowed', +- 'owners': ['hollingum@google.com ', 'dca@google.com'], ++ 'owners': ['hollingum@9oo91e.qjz9zk ', 'dca@9oo91e.qjz9zk'], + 'type': 'main', + 'schema': { 'type': 'boolean' }, + 'supported_on': ['chrome_os:91-'], +@@ -25336,7 +25336,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR }, { 'name': 'AudioProcessHighPriorityEnabled', @@ -21451,7 +21905,61 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli 'type': 'main', 'schema': { 'type': 'boolean' }, 'supported_on': ['chrome.win:90-'], -@@ -24943,7 +24943,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -25373,7 +25373,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR + }, + { + 'name': 'ForcedLanguages', +- 'owners': ['igorruvinov@chromium.org', 'pastarmovj@chromium.org'], ++ 'owners': ['igorruvinov@ch40m1um.qjz9zk', 'pastarmovj@ch40m1um.qjz9zk'], + 'type': 'list', + 'schema': { + 'type': 'array', +@@ -25397,7 +25397,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR + }, + { + 'name': 'BrowserThemeColor', +- 'owners': ['igorruvinov@google.com', 'ydago@google.com', 'pastarmovj@google.com'], ++ 'owners': ['igorruvinov@9oo91e.qjz9zk', 'ydago@9oo91e.qjz9zk', 'pastarmovj@9oo91e.qjz9zk'], + 'type': 'string', + 'schema': { + 'type': 'string', +@@ -25421,7 +25421,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR + }, + { + 'name': 'WebRtcIPHandling', +- 'owners': ['file://third_party/blink/renderer/modules/peerconnection/OWNERS', 'toprice@chromium.org'], ++ 'owners': ['file://third_party/blink/renderer/modules/peerconnection/OWNERS', 'toprice@ch40m1um.qjz9zk'], + 'type': 'string-enum', + 'schema': { + 'type': 'string', +@@ -25463,7 +25463,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR + }, + { + 'name': 'PdfAnnotationsEnabled', +- 'owners': ['thestig@chromium.org', 'file://pdf/OWNERS'], ++ 'owners': ['thestig@ch40m1um.qjz9zk', 'file://pdf/OWNERS'], + 'type': 'main', + 'schema': { 'type': 'boolean' }, + 'supported_on': ['chrome_os:91-'], +@@ -25494,7 +25494,7 @@ If you disable this policy, web page scrolling to specific text fragments via UR + }, + { + 'name': 'DeviceAllowedBluetoothServices', +- 'owners': ['howardchung@google.com', 'alainm@chromium.org', 'mcchou@chromium.org'], ++ 'owners': ['howardchung@9oo91e.qjz9zk', 'alainm@ch40m1um.qjz9zk', 'mcchou@ch40m1um.qjz9zk'], + 'type': 'list', + 'schema': { + 'type': 'array', +@@ -25518,7 +25518,7 @@ When this policy is set, $2Google Chrome OS< + }, + { + 'name': 'ExplicitlyAllowedNetworkPorts', +- 'owners': ['ricea@chromium.org', 'yhirano@chromium.org'], ++ 'owners': ['ricea@ch40m1um.qjz9zk', 'yhirano@ch40m1um.qjz9zk'], + 'type': 'string-enum-list', # this would be 'int-enum-list' if it was supported. + 'schema': { + 'type': 'array', +@@ -25656,7 +25656,7 @@ When this policy is set, $2Google Chrome OS< }, 'doc_banner': { 'desc': '''A banner shown at the top of the policy documentation''', @@ -21460,7 +21968,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, 'doc_intro': { 'desc': '''Introduction text for the generated policy documentation''', -@@ -24951,13 +24951,13 @@ If you disable this policy, web page scrolling to specific text fragments via UR +@@ -25664,13 +25664,13 @@ When this policy is set, $2Google Chrome OS< These policies are strictly intended to be used to configure instances of $1Google Chrome internal to your organization. Use of these policies outside of your organization (for example, in a publicly distributed program) is considered malware and will likely be labeled as malware by Google and anti-virus vendors. @@ -21476,7 +21984,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, 'doc_policy_in_atomic_group': { 'desc': '''Label notifying that a policy is part of an atomic policy group''', -@@ -25029,11 +25029,11 @@ The recommended way to configure policy on Windows is via GPO, although provisio +@@ -25742,11 +25742,11 @@ The recommended way to configure policy on Windows is via GPO, although provisio }, 'doc_complex_policies_on_windows': { 'desc': '''Text pointing the user to a help article for complex policies on Windows''', @@ -21490,7 +21998,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, 'doc_legacy_single_line_label': { 'desc': '''A label for the legacy single-line textbox for a policy also has a more user-friendly multi-line textbox. See http://crbug/829328''', -@@ -25053,7 +25053,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio +@@ -25766,7 +25766,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio }, 'doc_schema_description_link': { 'desc': '''Text pointing the user to the expanded documentation page for this policy, containing the information about schema and formatting.''', @@ -21499,7 +22007,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, 'deprecated_policy_group_caption': { 'desc': '''Localized name for the deprecated policies folder, for Microsoft's Group Policy Editor.''', -@@ -25065,7 +25065,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio +@@ -25778,7 +25778,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio }, 'deprecated_policy_desc': { 'desc': '''Description shared by all deprecated policies, in Microsoft Windows' Group Policy Editor.''', @@ -21508,7 +22016,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, 'removed_policy_group_caption': { 'desc': '''Localized name for the removed policies folder, for Microsoft's Group Policy Editor.''', -@@ -25077,7 +25077,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio +@@ -25790,7 +25790,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio }, 'removed_policy_desc': { 'desc': '''Description shared by all removed policies, in Microsoft Windows' Group Policy Editor.''', @@ -21517,7 +22025,7 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli }, }, # Legacy device policies that don't have a 1:1 mapping between template and -@@ -25377,7 +25377,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio +@@ -26093,7 +26093,7 @@ The recommended way to configure policy on Windows is via GPO, although provisio { 'id': 6, 'name': 'RestoreOnStartup', @@ -21529,15 +22037,15 @@ diff --git a/components/policy/resources/policy_templates.json b/components/poli diff --git a/components/policy/resources/webui/policy_base.js b/components/policy/resources/webui/policy_base.js --- a/components/policy/resources/webui/policy_base.js +++ b/components/policy/resources/webui/policy_base.js -@@ -608,7 +608,7 @@ cr.define('policy', function() { - name, - link: knownPolicyNames === policyNames.chrome.policyNames && - knownPolicyNamesSet.has(name) ? -- `https://cloud.google.com/docs/chrome-enterprise/policies/?policy=${ -+ `https://cloud.9oo91e.qjz9zk/docs/chrome-enterprise/policies/?policy=${ - name}` : - undefined, - }, +@@ -612,7 +612,7 @@ export class Page { + name, + link: knownPolicyNames === policyNames.chrome.policyNames && + knownPolicyNamesSet.has(name) ? +- `https://cloud.google.com/docs/chrome-enterprise/policies/?policy=${ ++ `https://cloud.9oo91e.qjz9zk/docs/chrome-enterprise/policies/?policy=${ + name}` : + undefined, + }, diff --git a/components/policy/test_support/policy_testserver.py b/components/policy/test_support/policy_testserver.py --- a/components/policy/test_support/policy_testserver.py +++ b/components/policy/test_support/policy_testserver.py @@ -21736,18 +22244,6 @@ diff --git a/components/policy/tools/template_writers/writers/template_writer.py + url = ('https://cloud.9oo91e.qjz9zk/docs/chrome-enterprise/policies/?policy=' + policy['name']) return schema_description_link_text.replace('$6', url) if url else '' -diff --git a/components/query_tiles/internal/tile_config.cc b/components/query_tiles/internal/tile_config.cc ---- a/components/query_tiles/internal/tile_config.cc -+++ b/components/query_tiles/internal/tile_config.cc -@@ -12,7 +12,7 @@ - namespace query_tiles { - - // Default base URL string for the Query Tiles server. --constexpr char kDefaultBaseURL[] = "https://chromeupboarding-pa.googleapis.com"; -+constexpr char kDefaultBaseURL[] = "https://chromeupboarding-pa.9oo91eapis.qjz9zk"; - - // Default URL string for GetQueryTiles RPC. - constexpr char kDefaultGetQueryTilePath[] = "/v1/querytiles"; diff --git a/components/quirks/quirks_client.cc b/components/quirks/quirks_client.cc --- a/components/quirks/quirks_client.cc +++ b/components/quirks/quirks_client.cc @@ -22595,27 +23091,27 @@ diff --git a/components/resources/terms/terms_zh-TW.html b/components/resources/ diff --git a/components/safe_browsing/content/browser/client_side_detection_service.cc b/components/safe_browsing/content/browser/client_side_detection_service.cc --- a/components/safe_browsing/content/browser/client_side_detection_service.cc +++ b/components/safe_browsing/content/browser/client_side_detection_service.cc -@@ -53,7 +53,7 @@ const int ClientSideDetectionService::kNegativeCacheIntervalDays = 1; +@@ -59,7 +59,7 @@ const int ClientSideDetectionService::kNegativeCacheIntervalDays = 1; const int ClientSideDetectionService::kPositiveCacheIntervalMinutes = 30; const char ClientSideDetectionService::kClientReportPhishingUrl[] = - "https://sb-ssl.google.com/safebrowsing/clientreport/phishing"; + "https://sb-ssl.9oo91e.qjz9zk/safebrowsing/clientreport/phishing"; - struct ClientSideDetectionService::ClientPhishingReportInfo { - std::unique_ptr loader; + constexpr char kAuthHeaderBearer[] = "Bearer "; + diff --git a/components/safe_browsing/content/triggers/trigger_util.cc b/components/safe_browsing/content/triggers/trigger_util.cc --- a/components/safe_browsing/content/triggers/trigger_util.cc +++ b/components/safe_browsing/content/triggers/trigger_util.cc -@@ -32,7 +32,7 @@ bool DetectGoogleAd(content::RenderFrameHost* render_frame_host, - } +@@ -34,7 +34,7 @@ bool DetectGoogleAd(content::RenderFrameHost* render_frame_host, } -- return frame_url.host_piece() == "tpc.googlesyndication.com" && -+ return frame_url.host_piece() == "tpc.9oo91esyndication.qjz9zk" && + return base::EndsWith(frame_url.host_piece(), +- ".safeframe.googlesyndication.com", ++ ".safeframe.9oo91esyndication.qjz9zk", + base::CompareCase::SENSITIVE) && base::StartsWith(frame_url.path_piece(), "/safeframe", base::CompareCase::SENSITIVE); - } diff --git a/components/safe_browsing/core/browser/safe_browsing_token_fetcher.h b/components/safe_browsing/core/browser/safe_browsing_token_fetcher.h --- a/components/safe_browsing/core/browser/safe_browsing_token_fetcher.h +++ b/components/safe_browsing/core/browser/safe_browsing_token_fetcher.h @@ -22652,7 +23148,7 @@ diff --git a/components/safe_browsing/core/db/v4_protocol_manager_util.cc b/comp diff --git a/components/safe_browsing/core/password_protection/password_protection_service_base.cc b/components/safe_browsing/core/password_protection/password_protection_service_base.cc --- a/components/safe_browsing/core/password_protection/password_protection_service_base.cc +++ b/components/safe_browsing/core/password_protection/password_protection_service_base.cc -@@ -38,7 +38,7 @@ namespace { +@@ -39,7 +39,7 @@ namespace { // Keys for storing password protection verdict into a DictionaryValue. const int kRequestTimeoutMs = 10000; const char kPasswordProtectionRequestUrl[] = @@ -22661,7 +23157,7 @@ diff --git a/components/safe_browsing/core/password_protection/password_protecti } // namespace -@@ -52,8 +52,8 @@ PasswordProtectionServiceBase::PasswordProtectionServiceBase( +@@ -63,8 +63,8 @@ PasswordProtectionServiceBase::PasswordProtectionServiceBase( if (history_service) history_service_observation_.Observe(history_service); @@ -22675,7 +23171,7 @@ diff --git a/components/safe_browsing/core/password_protection/password_protecti diff --git a/components/safe_browsing/core/realtime/url_lookup_service.cc b/components/safe_browsing/core/realtime/url_lookup_service.cc --- a/components/safe_browsing/core/realtime/url_lookup_service.cc +++ b/components/safe_browsing/core/realtime/url_lookup_service.cc -@@ -103,7 +103,7 @@ bool RealTimeUrlLookupService::CanCheckSafeBrowsingDb() const { +@@ -129,7 +129,7 @@ void RealTimeUrlLookupService::Shutdown() { GURL RealTimeUrlLookupService::GetRealTimeLookupUrl() const { return GURL( @@ -22722,7 +23218,7 @@ diff --git a/components/safety_check/url_constants.cc b/components/safety_check/ diff --git a/components/security_interstitials/content/ssl_blocking_page.h b/components/security_interstitials/content/ssl_blocking_page.h --- a/components/security_interstitials/content/ssl_blocking_page.h +++ b/components/security_interstitials/content/ssl_blocking_page.h -@@ -32,7 +32,7 @@ class SSLErrorUI; +@@ -31,7 +31,7 @@ class SSLErrorUI; // chrome://connection-help expands the right section if the user can't reach // the help center. const char kSymantecSupportUrl[] = @@ -22731,18 +23227,6 @@ diff --git a/components/security_interstitials/content/ssl_blocking_page.h b/com // This class is responsible for showing/hiding the interstitial page that is // shown when a certificate error happens. -diff --git a/components/security_interstitials/core/browser/resources/interstitial_large.js b/components/security_interstitials/core/browser/resources/interstitial_large.js ---- a/components/security_interstitials/core/browser/resources/interstitial_large.js -+++ b/components/security_interstitials/core/browser/resources/interstitial_large.js -@@ -239,7 +239,7 @@ function setupEvents() { - loadTimeData.getString('lookalikeRequestHostname') + - ' could be fake or fraudulent.\n\n' + - 'If you believe this is shown in error please visit ' + -- 'https://bugs.chromium.org/p/chromium/issues/entry?' + -+ 'https://bugs.ch40m1um.qjz9zk/p/chromium/issues/entry?' + - 'template=Safety+Tips+Appeals'); - } - diff --git a/components/security_interstitials/core/controller_client.cc b/components/security_interstitials/core/controller_client.cc --- a/components/security_interstitials/core/controller_client.cc +++ b/components/security_interstitials/core/controller_client.cc @@ -22826,7 +23310,7 @@ diff --git a/components/shared_highlighting/core/common/disabled_sites.cc b/comp diff --git a/components/signin/core/browser/chrome_connected_header_helper.cc b/components/signin/core/browser/chrome_connected_header_helper.cc --- a/components/signin/core/browser/chrome_connected_header_helper.cc +++ b/components/signin/core/browser/chrome_connected_header_helper.cc -@@ -144,8 +144,8 @@ bool ChromeConnectedHeaderHelper::IsDriveOrigin(const GURL& url) { +@@ -148,8 +148,8 @@ bool ChromeConnectedHeaderHelper::IsDriveOrigin(const GURL& url) { if (!url.SchemeIsCryptographic()) return false; @@ -22853,10 +23337,10 @@ diff --git a/components/signin/ios/browser/account_consistency_service.mm b/comp // Returns the registered, organization-identifying host, but no subdomains, // from the given GURL. Returns an empty string if the GURL is invalid. -@@ -177,8 +177,8 @@ AccountConsistencyService::AccountConsistencyHandler::ShouldAllowRequest( +@@ -176,8 +176,8 @@ AccountConsistencyService::AccountConsistencyHandler::ShouldAllowRequest( + if (base::FeatureList::IsEnabled(signin::kRestoreGaiaCookiesOnUserAction) && signin::IsUrlEligibleForMirrorCookie(url) && - identity_manager_->HasPrimaryAccount( - signin::ConsentLevel::kNotRequired)) { + identity_manager_->HasPrimaryAccount(signin::ConsentLevel::kSignin)) { - // CHROME_CONNECTED cookies are added asynchronously on google.com and - // youtube.com domains when Chrome detects that the user is signed-in. By + // CHROME_CONNECTED cookies are added asynchronously on 9oo91e.qjz9zk and @@ -22864,7 +23348,7 @@ diff --git a/components/signin/ios/browser/account_consistency_service.mm b/comp // continuing to fulfill the navigation once the cookie request is sent, // Chrome adopts a best-effort strategy for signing the user into the web if // necessary. -@@ -210,7 +210,7 @@ void AccountConsistencyService::AccountConsistencyHandler::ShouldAllowResponse( +@@ -209,7 +209,7 @@ void AccountConsistencyService::AccountConsistencyHandler::ShouldAllowResponse( // Chrome monitors GAIA cookies when navigating to Google associated domains // to ensure that signed-in users remain signed-in to their Google services on @@ -22873,7 +23357,7 @@ diff --git a/components/signin/ios/browser/account_consistency_service.mm b/comp if (google_util::IsGoogleAssociatedDomainUrl(url)) { // TODO(crbug.com/1131027): Disable GAIA cookie restore on Google URLs that // may display cookie consent in the content area that conflict with the -@@ -570,7 +570,7 @@ void AccountConsistencyService::OnChromeConnectedCookieFinished( +@@ -566,7 +566,7 @@ void AccountConsistencyService::OnChromeConnectedCookieFinished( void AccountConsistencyService::AddChromeConnectedCookies() { DCHECK(!browser_state_->IsOffTheRecord()); // These cookie requests are preventive. Chrome cannot be sure that @@ -22885,13 +23369,15 @@ diff --git a/components/signin/ios/browser/account_consistency_service.mm b/comp diff --git a/components/signin/public/base/test_signin_client.cc b/components/signin/public/base/test_signin_client.cc --- a/components/signin/public/base/test_signin_client.cc +++ b/components/signin/public/base/test_signin_client.cc -@@ -113,5 +113,5 @@ void TestSigninClient::SetDiceMigrationCompleted() { +@@ -118,7 +118,7 @@ void TestSigninClient::SetDiceMigrationCompleted() { } bool TestSigninClient::IsNonEnterpriseUser(const std::string& email) { - return gaia::ExtractDomainName(email) == "gmail.com"; + return gaia::ExtractDomainName(email) == "9ma1l.qjz9zk"; } + + #if BUILDFLAG(IS_CHROMEOS_LACROS) diff --git a/components/signin/public/identity_manager/access_token_fetcher.cc b/components/signin/public/identity_manager/access_token_fetcher.cc --- a/components/signin/public/identity_manager/access_token_fetcher.cc +++ b/components/signin/public/identity_manager/access_token_fetcher.cc @@ -23227,7 +23713,7 @@ diff --git a/content/app/resources/README.txt b/content/app/resources/README.txt diff --git a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm --- a/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm +++ b/content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm -@@ -748,7 +748,7 @@ void ExtractUnderlines(NSAttributedString* string, +@@ -752,7 +752,7 @@ void ExtractUnderlines(NSAttributedString* string, // TODO(suzhe): We should send mouse events to the input method first if it // wants to handle them. But it won't work without implementing method // - (NSUInteger)characterIndexForPoint:. @@ -23296,7 +23782,7 @@ diff --git a/content/browser/portal/portal_navigation_throttle.cc b/content/brow diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc --- a/content/browser/renderer_host/navigation_request.cc +++ b/content/browser/renderer_host/navigation_request.cc -@@ -3937,7 +3937,7 @@ NavigationRequest::CheckCredentialedSubresource() const { +@@ -4378,7 +4378,7 @@ NavigationRequest::CheckCredentialedSubresource() const { const char* console_message = "Subresource requests whose URLs contain embedded credentials (e.g. " "`https://user:pass@host/`) are blocked. See " @@ -23305,7 +23791,7 @@ diff --git a/content/browser/renderer_host/navigation_request.cc b/content/brows "details."; parent->AddMessageToConsole(blink::mojom::ConsoleMessageLevel::kWarning, console_message); -@@ -3965,7 +3965,7 @@ NavigationRequest::CheckLegacyProtocolInSubresource() const { +@@ -4406,7 +4406,7 @@ NavigationRequest::CheckLegacyProtocolInSubresource() const { const char* console_message = "Subresource requests using legacy protocols (like `ftp:`) are blocked. " "Please deliver web-accessible resources over modern protocols like " @@ -23314,7 +23800,7 @@ diff --git a/content/browser/renderer_host/navigation_request.cc b/content/brows "details."; parent->AddMessageToConsole(blink::mojom::ConsoleMessageLevel::kWarning, console_message); -@@ -4199,7 +4199,7 @@ void NavigationRequest::RecordDownloadUseCountersPrePolicyCheck( +@@ -4638,7 +4638,7 @@ void NavigationRequest::RecordDownloadUseCountersPrePolicyCheck( base::StringPrintf( "Navigating a cross-origin opener to a download (%s) is " "deprecated, see " @@ -23326,7 +23812,7 @@ diff --git a/content/browser/renderer_host/navigation_request.cc b/content/brows diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc --- a/content/browser/renderer_host/render_frame_host_impl.cc +++ b/content/browser/renderer_host/render_frame_host_impl.cc -@@ -321,7 +321,7 @@ int g_next_accessibility_reset_token = 1; +@@ -327,7 +327,7 @@ int g_next_accessibility_reset_token = 1; // WebView, WebLayer, Fuchsia web.ContextProvider and CastOS content shell. bool g_allow_injecting_javascript = false; @@ -23395,7 +23881,7 @@ diff --git a/content/browser/service_worker/service_worker_metrics.cc b/content/ diff --git a/content/browser/speech/speech_recognition_engine.cc b/content/browser/speech/speech_recognition_engine.cc --- a/content/browser/speech/speech_recognition_engine.cc +++ b/content/browser/speech/speech_recognition_engine.cc -@@ -30,7 +30,7 @@ namespace content { +@@ -31,7 +31,7 @@ namespace content { namespace { const char kWebServiceBaseUrl[] = @@ -23416,10 +23902,22 @@ diff --git a/content/browser/speech/tts_mac.mm b/content/browser/speech/tts_mac. // where Nuance voices don't retain the utterance string and // crash when trying to call willSpeakWord. @interface SingleUseSpeechSynthesizer : NSSpeechSynthesizer { +diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc +--- a/content/browser/web_contents/web_contents_impl.cc ++++ b/content/browser/web_contents/web_contents_impl.cc +@@ -6485,7 +6485,7 @@ void WebContentsImpl::RunJavaScriptDialog( + base::StringPrintf( + "A different origin subframe tried to create a JavaScript " + "dialog. This is no longer allowed and was blocked. See " +- "https://www.chromestatus.com/feature/5148698084376576 for " ++ "https://www.ch40mestatus.qjz9zk/feature/5148698084376576 for " + "more details.")); + } + } diff --git a/content/browser/webauth/authenticator_common.cc b/content/browser/webauth/authenticator_common.cc --- a/content/browser/webauth/authenticator_common.cc +++ b/content/browser/webauth/authenticator_common.cc -@@ -171,12 +171,12 @@ base::Optional ProcessAppIdExtension(std::string appid, +@@ -178,12 +178,12 @@ base::Optional ProcessAppIdExtension(std::string appid, // special-case AppIDs. Firefox also does this: // https://groups.google.com/forum/#!msg/mozilla.dev.platform/Uiu3fwnA2xw/201ynAiPAQAJ const GURL kGstatic1 = @@ -23435,7 +23933,7 @@ diff --git a/content/browser/webauth/authenticator_common.cc b/content/browser/w (appid_url.EqualsIgnoringRef(kGstatic1) || appid_url.EqualsIgnoringRef(kGstatic2))) { return appid; -@@ -729,7 +729,7 @@ std::string SerializeWebAuthnCollectedClientDataToJson( +@@ -724,7 +724,7 @@ std::string SerializeWebAuthnCollectedClientDataToJson( ret.append(R"(,"other_keys_can_be_added_here":")"); ret.append( "do not compare clientDataJSON against a template. See " @@ -23504,7 +24002,7 @@ diff --git a/content/renderer/pepper/pepper_media_device_manager.cc b/content/re diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc --- a/content/renderer/render_thread_impl.cc +++ b/content/renderer/render_thread_impl.cc -@@ -413,17 +413,17 @@ void RenderThreadImpl::HistogramCustomizer::SetCommonHost( +@@ -423,17 +423,17 @@ void RenderThreadImpl::HistogramCustomizer::SetCommonHost( std::string RenderThreadImpl::HistogramCustomizer::HostToCustomHistogramSuffix( const std::string& host) { @@ -23528,7 +24026,7 @@ diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_th return ".youtube"; if (IsAlexaTop10NonGoogleSite(host)) return ".top10"; -@@ -442,7 +442,7 @@ bool RenderThreadImpl::HistogramCustomizer::IsAlexaTop10NonGoogleSite( +@@ -452,7 +452,7 @@ bool RenderThreadImpl::HistogramCustomizer::IsAlexaTop10NonGoogleSite( net::registry_controlled_domains::GetDomainAndRegistry( host, net::registry_controlled_domains::INCLUDE_PRIVATE_REGISTRIES); @@ -23621,8 +24119,8 @@ diff --git a/device/fido/fido_test_data.h b/device/fido/fido_test_data.h diff --git a/device/gamepad/xbox_controller_mac.mm b/device/gamepad/xbox_controller_mac.mm --- a/device/gamepad/xbox_controller_mac.mm +++ b/device/gamepad/xbox_controller_mac.mm -@@ -175,7 +175,7 @@ const size_t kXboxOneElite2ButtonDataBytes = 34; - const size_t kXboxAdaptiveButtonDataBytes = 50; +@@ -195,7 +195,7 @@ const size_t kXboxSeriesXOldFirmwareButtonDataBytes = 40; + const size_t kXboxSeriesXButtonDataBytes = 44; // From MSDN: -// http://msdn.microsoft.com/en-us/library/windows/desktop/ee417001(v=vs.85).aspx#dead_zone @@ -23685,7 +24183,7 @@ diff --git a/extensions/browser/PRESUBMIT.py b/extensions/browser/PRESUBMIT.py diff --git a/extensions/browser/api/web_request/web_request_permissions.cc b/extensions/browser/api/web_request/web_request_permissions.cc --- a/extensions/browser/api/web_request/web_request_permissions.cc +++ b/extensions/browser/api/web_request/web_request_permissions.cc -@@ -200,7 +200,7 @@ bool IsSensitiveGoogleClientUrl(const extensions::WebRequestInfo& request) { +@@ -197,7 +197,7 @@ bool IsSensitiveGoogleClientUrl(const extensions::WebRequestInfo& request) { // TODO(battre) Merge this, CanExtensionAccessURL and // PermissionsData::CanAccessPage into one function. @@ -23694,7 +24192,7 @@ diff --git a/extensions/browser/api/web_request/web_request_permissions.cc b/ext static constexpr char kClient[] = "clients"; constexpr size_t kGoogleComLength = base::size(kGoogleCom) - 1; constexpr size_t kClientLength = base::size(kClient) - 1; -@@ -341,7 +341,7 @@ bool WebRequestPermissions::HideRequest( +@@ -338,7 +338,7 @@ bool WebRequestPermissions::HideRequest( extension_urls::IsBlacklistUpdateUrl(url) || extension_urls::IsSafeBrowsingUrl(url::Origin::Create(url), url.path_piece()) || @@ -23717,7 +24215,7 @@ diff --git a/extensions/browser/suggest_permission_util.cc b/extensions/browser/ + "https://developer.ch40me.qjz9zk/apps/declare_permissions.html"; void SuggestAPIPermissionInDevToolsConsole( - APIPermission::ID permission, + mojom::APIPermissionID permission, diff --git a/extensions/browser/updater/extension_downloader.cc b/extensions/browser/updater/extension_downloader.cc --- a/extensions/browser/updater/extension_downloader.cc +++ b/extensions/browser/updater/extension_downloader.cc @@ -23803,7 +24301,7 @@ diff --git a/extensions/common/csp_validator.cc b/extensions/common/csp_validato diff --git a/extensions/common/extension_urls.cc b/extensions/common/extension_urls.cc --- a/extensions/common/extension_urls.cc +++ b/extensions/common/extension_urls.cc -@@ -26,9 +26,9 @@ bool IsSourceFromAnExtension(const base::string16& source) { +@@ -26,9 +26,9 @@ bool IsSourceFromAnExtension(const std::u16string& source) { namespace extension_urls { @@ -23831,7 +24329,7 @@ diff --git a/extensions/common/extension_urls.cc b/extensions/common/extension_u diff --git a/extensions/common/manifest_constants.cc b/extensions/common/manifest_constants.cc --- a/extensions/common/manifest_constants.cc +++ b/extensions/common/manifest_constants.cc -@@ -493,7 +493,7 @@ const char kInvalidManifestVersion[] = +@@ -491,7 +491,7 @@ const char kInvalidManifestVersion[] = "zero."; const char kInvalidManifestVersionOld[] = "The 'manifest_version' key must be present and set to * (without quotes). " @@ -23922,7 +24420,7 @@ diff --git a/google_apis/gaia/gaia_auth_util.cc b/google_apis/gaia/gaia_auth_uti diff --git a/google_apis/gaia/gaia_constants.cc b/google_apis/gaia/gaia_constants.cc --- a/google_apis/gaia/gaia_constants.cc +++ b/google_apis/gaia/gaia_constants.cc -@@ -25,117 +25,117 @@ const char kSyncService[] = "chromiumsync"; +@@ -25,119 +25,119 @@ const char kSyncService[] = "chromiumsync"; const char kRemotingService[] = "chromoting"; // OAuth scopes. @@ -24061,9 +24559,12 @@ diff --git a/google_apis/gaia/gaia_constants.cc b/google_apis/gaia/gaia_constant - "https://www.googleapis.com/auth/nearbysharing-pa"; + "https://www.9oo91eapis.qjz9zk/auth/nearbysharing-pa"; - // OAuth2 scope for access to GCM account tracker. + // OAuth2 scopes for access to GCM account tracker. -const char kGCMGroupServerOAuth2Scope[] = "https://www.googleapis.com/auth/gcm"; +const char kGCMGroupServerOAuth2Scope[] = "https://www.9oo91eapis.qjz9zk/auth/gcm"; + const char kGCMCheckinServerOAuth2Scope[] = +- "https://www.googleapis.com/auth/android_checkin"; ++ "https://www.9oo91eapis.qjz9zk/auth/android_checkin"; // OAuth2 scope for access to readonly Chrome web store. const char kChromeWebstoreOAuth2Scope[] = @@ -24317,7 +24818,7 @@ diff --git a/gpu/vulkan/PRESUBMIT.py b/gpu/vulkan/PRESUBMIT.py diff --git a/headless/lib/browser/protocol/headless_handler.cc b/headless/lib/browser/protocol/headless_handler.cc --- a/headless/lib/browser/protocol/headless_handler.cc +++ b/headless/lib/browser/protocol/headless_handler.cc -@@ -109,7 +109,7 @@ void HeadlessHandler::BeginFrame(Maybe in_frame_time_ticks, +@@ -112,7 +112,7 @@ void HeadlessHandler::BeginFrame(Maybe in_frame_time_ticks, callback->sendFailure( Response::ServerError("Command is only supported with " "--run-all-compositor-stages-before-draw, see " @@ -24463,7 +24964,7 @@ diff --git a/ios/build/bots/scripts/xcode_util.py b/ios/build/bots/scripts/xcode diff --git a/ios/build/chrome_build.gni b/ios/build/chrome_build.gni --- a/ios/build/chrome_build.gni +++ b/ios/build/chrome_build.gni -@@ -50,7 +50,7 @@ declare_args() { +@@ -42,7 +42,7 @@ declare_args() { # Value of the encryption export compliance code. See "Cryptography and # U.S. Export Compliance" in "Submitting the App to App Review" in the @@ -24484,7 +24985,7 @@ diff --git a/ios/chrome/app/strings/ios_chromium_strings.grd b/ios/chrome/app/st Cleared Chromium data -@@ -257,7 +257,7 @@ locale. The strings in this file are specific to iOS. +@@ -275,7 +275,7 @@ locale. The strings in this file are specific to iOS. Data from Chromium sync @@ -24493,7 +24994,7 @@ diff --git a/ios/chrome/app/strings/ios_chromium_strings.grd b/ios/chrome/app/st Clear your Chromium data from this device? -@@ -266,7 +266,7 @@ locale. The strings in this file are specific to iOS. +@@ -284,7 +284,7 @@ locale. The strings in this file are specific to iOS. You are signing in with an account managed by $1doe.com and giving its administrator control over your Chromium data. Your data will become permanently tied to this account. Signing out of Chromium will delete your data from this device, but it will remain stored in your Google Account. @@ -24502,12 +25003,12 @@ diff --git a/ios/chrome/app/strings/ios_chromium_strings.grd b/ios/chrome/app/st Tip: BEGIN_LINKBEGIN_LINKMove Chromium to your dockEND_LINKEND_LINK -@@ -344,7 +344,7 @@ locale. The strings in this file are specific to iOS. - Choose whether to clear your Chromium data from this device or keep it. +@@ -362,7 +362,7 @@ locale. The strings in this file are specific to iOS. + Choose whether to clear your Chromium data from this device or keep it -- Your account is managed by $1google.com, so your Chromium data will be cleared from this device. -+ Your account is managed by $19oo91e.qjz9zk, so your Chromium data will be cleared from this device. +- Your account is managed by $1google.com, so your Chromium data will be cleared from this device ++ Your account is managed by $19oo91e.qjz9zk, so your Chromium data will be cleared from this device Use Chromium Everywhere @@ -24523,7 +25024,7 @@ diff --git a/ios/chrome/app/strings/ios_google_chrome_strings.grd b/ios/chrome/a Cleared Chrome data -@@ -257,7 +257,7 @@ locale. The strings in this file are specific to iOS. +@@ -275,7 +275,7 @@ locale. The strings in this file are specific to iOS. Data from Chrome sync @@ -24532,7 +25033,7 @@ diff --git a/ios/chrome/app/strings/ios_google_chrome_strings.grd b/ios/chrome/a Clear your Chrome data from this device? -@@ -266,7 +266,7 @@ locale. The strings in this file are specific to iOS. +@@ -284,7 +284,7 @@ locale. The strings in this file are specific to iOS. You are signing in with an account managed by $1doe.com and giving its administrator control over your Chrome data. Your data will become permanently tied to this account. Signing out of Chrome will delete your data from this device, but it will remain stored in your Google Account. @@ -24541,12 +25042,12 @@ diff --git a/ios/chrome/app/strings/ios_google_chrome_strings.grd b/ios/chrome/a Tip: BEGIN_LINKBEGIN_LINKMove Chrome to your dockEND_LINKEND_LINK -@@ -344,7 +344,7 @@ locale. The strings in this file are specific to iOS. - Choose whether to clear your Chrome data from this device or keep it. +@@ -362,7 +362,7 @@ locale. The strings in this file are specific to iOS. + Choose whether to clear your Chrome data from this device or keep it -- Your account is managed by $1google.com, so your Chrome data will be cleared from this device. -+ Your account is managed by $19oo91e.qjz9zk, so your Chrome data will be cleared from this device. +- Your account is managed by $1google.com, so your Chrome data will be cleared from this device ++ Your account is managed by $19oo91e.qjz9zk, so your Chrome data will be cleared from this device Use Chrome Everywhere @@ -24582,7 +25083,7 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios All Time -@@ -703,7 +703,7 @@ locale. The strings in this file are specific to iOS. +@@ -715,7 +715,7 @@ locale. The strings in this file are specific to iOS. By signing out, your bookmarks, history, passwords, and other Chrome data will no longer be synced to your Google Account. @@ -24591,7 +25092,7 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios This will sign you out, turn off sync, and clear all Chrome data from this device. Your synced data will remain in your Google Account. -@@ -913,7 +913,7 @@ Because your account is managed by $1google.com$1google.com @@ -24600,7 +25101,7 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios Password -@@ -1067,7 +1067,7 @@ Because your account is managed by $1google.com$1google.com @@ -24609,7 +25110,7 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios Remove -@@ -1282,7 +1282,7 @@ Handoff must also be enabled in the General section of Settings, and your device +@@ -1306,7 +1306,7 @@ Handoff must also be enabled in the General section of Settings, and your device Continue @@ -24618,7 +25119,7 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios Add existing data to $1john@doe.com. -@@ -1491,7 +1491,7 @@ While in incognito, sites can't use cookies to see your browsing activity across +@@ -1518,7 +1518,7 @@ While in incognito, sites can't use cookies to see your browsing activity across Privacy Notice @@ -24627,7 +25128,7 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios Page load progress bar, $120% loaded. -@@ -1542,7 +1542,7 @@ While in incognito, sites can't use cookies to see your browsing activity across +@@ -1569,7 +1569,7 @@ While in incognito, sites can't use cookies to see your browsing activity across Added to Reading List @@ -24636,7 +25137,7 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios Available offline -@@ -1790,7 +1790,7 @@ Follow the steps below: +@@ -1817,7 +1817,7 @@ Follow the steps below: Turned off by your organization. @@ -24645,7 +25146,7 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios Check Passwords -@@ -2244,12 +2244,12 @@ To change this setting, BEGIN_LINKreset syncBEGIN_LINKreset sync @@ -24660,7 +25161,7 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios Your data was encrypted with your sync passphrase on $2Sept 1, 2012. Enter it to start sync. -@@ -2508,7 +2508,7 @@ Your data was encrypted with your sync passphrase on $2Sept +@@ -2550,7 +2550,7 @@ Your data was encrypted with your sync passphrase on $2Sept Help @@ -24672,24 +25173,24 @@ diff --git a/ios/chrome/app/strings/ios_strings.grd b/ios/chrome/app/strings/ios diff --git a/ios/chrome/browser/autofill/BUILD.gn b/ios/chrome/browser/autofill/BUILD.gn --- a/ios/chrome/browser/autofill/BUILD.gn +++ b/ios/chrome/browser/autofill/BUILD.gn -@@ -241,7 +241,7 @@ bundle_data("unit_tests_bundle_data") { - "//components/test/data/autofill/heuristics/input/049_register_ebay.com.html", - "//components/test/data/autofill/heuristics/input/050_register_ecomm.dell.com.html", - "//components/test/data/autofill/heuristics/input/051_register_epson.com.html", -- "//components/test/data/autofill/heuristics/input/052_register_google.com.html", -+ "//components/test/data/autofill/heuristics/input/052_register_9oo91e.qjz9zk.html", - "//components/test/data/autofill/heuristics/input/053_register_gymboree.com.html", - "//components/test/data/autofill/heuristics/input/054_register_hotels.com.html", - "//components/test/data/autofill/heuristics/input/055_register_imdb.com.html", -@@ -418,7 +418,7 @@ bundle_data("unit_tests_bundle_data") { - "//components/test/data/autofill/heuristics/output/049_register_ebay.com.out", - "//components/test/data/autofill/heuristics/output/050_register_ecomm.dell.com.out", - "//components/test/data/autofill/heuristics/output/051_register_epson.com.out", -- "//components/test/data/autofill/heuristics/output/052_register_google.com.out", -+ "//components/test/data/autofill/heuristics/output/052_register_9oo91e.qjz9zk.out", - "//components/test/data/autofill/heuristics/output/053_register_gymboree.com.out", - "//components/test/data/autofill/heuristics/output/054_register_hotels.com.out", - "//components/test/data/autofill/heuristics/output/055_register_imdb.com.out", +@@ -187,7 +187,7 @@ autofill_test_files = [ + "//components/test/data/autofill/heuristics/input/049_register_ebay.com.html", + "//components/test/data/autofill/heuristics/input/050_register_ecomm.dell.com.html", + "//components/test/data/autofill/heuristics/input/051_register_epson.com.html", +- "//components/test/data/autofill/heuristics/input/052_register_google.com.html", ++ "//components/test/data/autofill/heuristics/input/052_register_9oo91e.qjz9zk.html", + "//components/test/data/autofill/heuristics/input/053_register_gymboree.com.html", + "//components/test/data/autofill/heuristics/input/054_register_hotels.com.html", + "//components/test/data/autofill/heuristics/input/055_register_imdb.com.html", +@@ -364,7 +364,7 @@ autofill_test_files = [ + "//components/test/data/autofill/heuristics/output/049_register_ebay.com.out", + "//components/test/data/autofill/heuristics/output/050_register_ecomm.dell.com.out", + "//components/test/data/autofill/heuristics/output/051_register_epson.com.out", +- "//components/test/data/autofill/heuristics/output/052_register_google.com.out", ++ "//components/test/data/autofill/heuristics/output/052_register_9oo91e.qjz9zk.out", + "//components/test/data/autofill/heuristics/output/053_register_gymboree.com.out", + "//components/test/data/autofill/heuristics/output/054_register_hotels.com.out", + "//components/test/data/autofill/heuristics/output/055_register_imdb.com.out", diff --git a/ios/chrome/browser/autofill/automation/automation_action.mm b/ios/chrome/browser/autofill/automation/automation_action.mm --- a/ios/chrome/browser/autofill/automation/automation_action.mm +++ b/ios/chrome/browser/autofill/automation/automation_action.mm @@ -24795,7 +25296,7 @@ diff --git a/ios/chrome/browser/crash_report/breadcrumbs/breadcrumb_manager_tab_ diff --git a/ios/chrome/browser/flags/about_flags.mm b/ios/chrome/browser/flags/about_flags.mm --- a/ios/chrome/browser/flags/about_flags.mm +++ b/ios/chrome/browser/flags/about_flags.mm -@@ -308,7 +308,7 @@ const flags_ui::FeatureEntry kFeatureEntries[] = { +@@ -382,7 +382,7 @@ const flags_ui::FeatureEntry kFeatureEntries[] = { flag_descriptions::kSyncSandboxDescription, flags_ui::kOsIos, SINGLE_VALUE_TYPE_AND_VALUE( switches::kSyncServiceURL, @@ -24804,7 +25305,7 @@ diff --git a/ios/chrome/browser/flags/about_flags.mm b/ios/chrome/browser/flags/ {"wallet-service-use-sandbox", flag_descriptions::kWalletServiceUseSandboxName, flag_descriptions::kWalletServiceUseSandboxDescription, flags_ui::kOsIos, -@@ -712,7 +712,7 @@ void AppendSwitchesFromExperimentalSettings(base::CommandLine* command_line) { +@@ -805,7 +805,7 @@ void AppendSwitchesFromExperimentalSettings(base::CommandLine* command_line) { base::SysUTF8ToNSString(policy::key::kDefaultSearchProviderEnabled) : @YES, base::SysUTF8ToNSString(policy::key::kDefaultSearchProviderSearchURL) : @@ -24816,8 +25317,8 @@ diff --git a/ios/chrome/browser/flags/about_flags.mm b/ios/chrome/browser/flags/ diff --git a/ios/chrome/browser/geolocation/omnibox_geolocation_controller.mm b/ios/chrome/browser/geolocation/omnibox_geolocation_controller.mm --- a/ios/chrome/browser/geolocation/omnibox_geolocation_controller.mm +++ b/ios/chrome/browser/geolocation/omnibox_geolocation_controller.mm -@@ -229,7 +229,7 @@ const char* const kGeolocationAuthorizationActionNewUser = - } +@@ -112,7 +112,7 @@ const char* const kGeolocationAuthorizationActionNewUser = + #pragma mark - Private - (BOOL)URLIsAuthorizationPromptingURL:(const GURL&)url { - // Per PRD: "Show a modal dialog upon reaching google.com or a search results @@ -24846,7 +25347,7 @@ diff --git a/ios/chrome/browser/search_engines/search_engine_tab_helper.mm b/ios // Generates a keyword from |item|. This code is based on: -// https://cs.chromium.org/chromium/src/chrome/browser/ui/search_engines/search_engine_tab_helper.cc +// https://cs.ch40m1um.qjz9zk/chromium/src/chrome/browser/ui/search_engines/search_engine_tab_helper.cc - base::string16 GenerateKeywordFromNavigationItem( + std::u16string GenerateKeywordFromNavigationItem( const web::NavigationItem* item) { // Don't autogenerate keywords for pages that are the result of form @@ -155,7 +155,7 @@ void SearchEngineTabHelper::OnJsMessage(const base::DictionaryValue& message, @@ -24965,7 +25466,7 @@ diff --git a/ios/chrome/browser/ui/content_suggestions/content_suggestions_app_i diff --git a/ios/chrome/browser/ui/content_suggestions/ntp_home_mediator.mm b/ios/chrome/browser/ui/content_suggestions/ntp_home_mediator.mm --- a/ios/chrome/browser/ui/content_suggestions/ntp_home_mediator.mm +++ b/ios/chrome/browser/ui/content_suggestions/ntp_home_mediator.mm -@@ -72,16 +72,16 @@ +@@ -77,16 +77,16 @@ namespace { // URL for 'Manage Activity' item in the Discover feed menu. const char kFeedManageActivityURL[] = @@ -24989,7 +25490,7 @@ diff --git a/ios/chrome/browser/ui/content_suggestions/ntp_home_mediator.mm b/io diff --git a/ios/chrome/browser/ui/ntp/incognito_view.mm b/ios/chrome/browser/ui/ntp/incognito_view.mm --- a/ios/chrome/browser/ui/ntp/incognito_view.mm +++ b/ios/chrome/browser/ui/ntp/incognito_view.mm -@@ -42,7 +42,7 @@ const CGFloat kLayoutGuideMinHeight = 12.0; +@@ -43,7 +43,7 @@ const CGFloat kLayoutGuideMinHeight = 12.0; // The URL for the the Learn More page shown on incognito new tab. // Taken from ntp_resource_cache.cc. const char kLearnMoreIncognitoUrl[] = @@ -25129,7 +25630,7 @@ diff --git a/ios/public/provider/chrome/browser/omaha/test_omaha_service_provide diff --git a/ios/public/provider/chrome/browser/signin/chrome_identity_service.mm b/ios/public/provider/chrome/browser/signin/chrome_identity_service.mm --- a/ios/public/provider/chrome/browser/signin/chrome_identity_service.mm +++ b/ios/public/provider/chrome/browser/signin/chrome_identity_service.mm -@@ -108,13 +108,13 @@ void ChromeIdentityService::GetHostedDomainForIdentity( +@@ -107,13 +107,13 @@ void ChromeIdentityService::GetHostedDomainForIdentity( NSString* ChromeIdentityService::GetCachedHostedDomainForIdentity( ChromeIdentity* identity) { @@ -25148,17 +25649,26 @@ diff --git a/ios/public/provider/chrome/browser/signin/chrome_identity_service.m diff --git a/ios/public/provider/chrome/browser/signin/fake_chrome_identity_service.mm b/ios/public/provider/chrome/browser/signin/fake_chrome_identity_service.mm --- a/ios/public/provider/chrome/browser/signin/fake_chrome_identity_service.mm +++ b/ios/public/provider/chrome/browser/signin/fake_chrome_identity_service.mm -@@ -123,8 +123,8 @@ NSString* FakeGetHostedDomainForIdentity(ChromeIdentity* identity) { +@@ -124,7 +124,7 @@ NSString* FakeGetHostedDomainForIdentity(ChromeIdentity* identity) { @end namespace ios { --NSString* const kManagedIdentityEmailSuffix = @"@google.com"; -NSString* const kIdentityEmailFormat = @"%@@gmail.com"; -+NSString* const kManagedIdentityEmailSuffix = @"@9oo91e.qjz9zk"; +NSString* const kIdentityEmailFormat = @"%@@9ma1l.qjz9zk"; NSString* const kIdentityGaiaIDFormat = @"%@ID"; FakeChromeIdentityService::FakeChromeIdentityService() +diff --git a/ios/public/provider/chrome/browser/signin/fake_chrome_identity_service_constants.mm b/ios/public/provider/chrome/browser/signin/fake_chrome_identity_service_constants.mm +--- a/ios/public/provider/chrome/browser/signin/fake_chrome_identity_service_constants.mm ++++ b/ios/public/provider/chrome/browser/signin/fake_chrome_identity_service_constants.mm +@@ -10,6 +10,6 @@ + + namespace ios { + +-NSString* const kManagedIdentityEmailSuffix = @"@google.com"; ++NSString* const kManagedIdentityEmailSuffix = @"@9oo91e.qjz9zk"; + + } // namespace ios diff --git a/ios/showcase/alert/sc_alert_coordinator.mm b/ios/showcase/alert/sc_alert_coordinator.mm --- a/ios/showcase/alert/sc_alert_coordinator.mm +++ b/ios/showcase/alert/sc_alert_coordinator.mm @@ -25243,6 +25753,18 @@ diff --git a/ios/testing/data/http_server_files/simple_login_form.html b/ios/tes +diff --git a/ios/testing/data/http_server_files/simple_signup_form.html b/ios/testing/data/http_server_files/simple_signup_form.html +--- a/ios/testing/data/http_server_files/simple_signup_form.html ++++ b/ios/testing/data/http_server_files/simple_signup_form.html +@@ -2,7 +2,7 @@ + + + Signup form. +-
++ + + + diff --git a/ios/testing/data/http_server_files/window_open.html b/ios/testing/data/http_server_files/window_open.html --- a/ios/testing/data/http_server_files/window_open.html +++ b/ios/testing/data/http_server_files/window_open.html @@ -25258,7 +25780,7 @@ diff --git a/ios/testing/data/http_server_files/window_open.html b/ios/testing/d diff --git a/ios/web/navigation/navigation_manager_impl.mm b/ios/web/navigation/navigation_manager_impl.mm --- a/ios/web/navigation/navigation_manager_impl.mm +++ b/ios/web/navigation/navigation_manager_impl.mm -@@ -893,10 +893,10 @@ void NavigationManagerImpl::Reload(ReloadType reload_type, +@@ -863,10 +863,10 @@ void NavigationManagerImpl::Reload(ReloadType reload_type, // request url of the transient item, or pending item if transient doesn't // exist, or last committed item if both of them don't exist. The reason is // that a server side redirect may change the item's url. @@ -25299,7 +25821,7 @@ diff --git a/ios/web_view/internal/cwv_flags.mm b/ios/web_view/internal/cwv_flag diff --git a/ios/web_view/internal/cwv_web_view.mm b/ios/web_view/internal/cwv_web_view.mm --- a/ios/web_view/internal/cwv_web_view.mm +++ b/ios/web_view/internal/cwv_web_view.mm -@@ -778,7 +778,7 @@ BOOL gChromeLongPressAndForceTouchHandlingEnabled = YES; +@@ -820,7 +820,7 @@ BOOL gChromeLongPressAndForceTouchHandlingEnabled = YES; // e.g., triggered by JavaScript "window.open()" function. In that case, if // |self| is not created by the WKWebViewConfiguration provided by WebKit's // delegate method @@ -25359,6 +25881,18 @@ diff --git a/media/PRESUBMIT.py b/media/PRESUBMIT.py return [] +diff --git a/media/base/win/mf_initializer.cc b/media/base/win/mf_initializer.cc +--- a/media/base/win/mf_initializer.cc ++++ b/media/base/win/mf_initializer.cc +@@ -44,7 +44,7 @@ class MediaFoundationSession { + LOG_IF(ERROR, !has_media_foundation_) + << "Failed to start Media Foundation, accelerated media functionality " + "may be disabled. If you're using Windows N, see " +- "https://support.microsoft.com/en-us/topic/" ++ "https://support.m1cr050ft.qjz9zk/en-us/topic/" + "media-feature-pack-for-windows-10-n-may-2020-ebbdf559-b84c-0fc2-" + "bd51-e23c9f6a4439 for information on how to install the Media " + "Feature Pack. Error: " diff --git a/mojo/PRESUBMIT.py b/mojo/PRESUBMIT.py --- a/mojo/PRESUBMIT.py +++ b/mojo/PRESUBMIT.py @@ -26302,7 +26836,7 @@ diff --git a/net/dns/dns_test_util.h b/net/dns/dns_test_util.h diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc --- a/net/dns/dns_transaction.cc +++ b/net/dns/dns_transaction.cc -@@ -382,7 +382,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate { +@@ -383,7 +383,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate { data: "The domain name that is being requested" destination: OTHER destination_other: "The user configured DNS over HTTPS server, which" @@ -26385,7 +26919,7 @@ diff --git a/net/quic/crypto/proof_verifier_chromium.cc b/net/quic/crypto/proof_ diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc --- a/net/quic/quic_stream_factory.cc +++ b/net/quic/quic_stream_factory.cc -@@ -2164,10 +2164,10 @@ QuicStreamFactory::CreateCryptoConfigHandle( +@@ -2217,10 +2217,10 @@ QuicStreamFactory::CreateCryptoConfigHandle( quic::QuicCryptoClientConfig* crypto_config = crypto_config_owner->config(); crypto_config->set_user_agent_id(params_.user_agent_id); @@ -26403,7 +26937,7 @@ diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc diff --git a/net/spdy/spdy_session.cc b/net/spdy/spdy_session.cc --- a/net/spdy/spdy_session.cc +++ b/net/spdy/spdy_session.cc -@@ -2949,7 +2949,7 @@ void SpdySession::RecordProtocolErrorHistogram( +@@ -3044,7 +3044,7 @@ void SpdySession::RecordProtocolErrorHistogram( SpdyProtocolErrorDetails details) { UMA_HISTOGRAM_ENUMERATION("Net.SpdySessionErrorDetails2", details, NUM_SPDY_PROTOCOL_ERROR_DETAILS); @@ -26730,18 +27264,18 @@ diff --git a/remoting/host/it2me/com.google.chrome.remote_assistance-firefox.jso + "remotedesktop@9oo91e.qjz9zk" ] } -diff --git a/remoting/host/it2me/it2me_native_messaging_host.cc b/remoting/host/it2me/it2me_native_messaging_host.cc ---- a/remoting/host/it2me/it2me_native_messaging_host.cc -+++ b/remoting/host/it2me/it2me_native_messaging_host.cc -@@ -75,7 +75,7 @@ const base::FilePath::CharType kElevatedHostBinaryName[] = - #endif // defined(OS_WIN) - - constexpr char kAnonymousUserName[] = "anonymous_user"; --const char kRemotingBotJid[] = "remoting@bot.talk.google.com"; -+const char kRemotingBotJid[] = "remoting@bot.talk.9oo91e.qjz9zk"; - - // Helper functions to run |callback| asynchronously on the correct thread - // using |task_runner|. +diff --git a/remoting/host/it2me/it2me_constants.cc b/remoting/host/it2me/it2me_constants.cc +--- a/remoting/host/it2me/it2me_constants.cc ++++ b/remoting/host/it2me/it2me_constants.cc +@@ -18,7 +18,7 @@ const char kConnectMessage[] = "connect"; + const char kUserName[] = "userName"; + const char kAuthServiceWithToken[] = "authServiceWithToken"; + const char kLocalJid[] = "localJid"; +-const char kDirectoryBotJidValue[] = "remoting@bot.talk.google.com"; ++const char kDirectoryBotJidValue[] = "remoting@bot.talk.9oo91e.qjz9zk"; + const char kSuppressUserDialogs[] = "suppressUserDialogs"; + const char kSuppressNotifications[] = "suppressNotifications"; + const char kTerminateUponInput[] = "terminateUponInput"; diff --git a/remoting/host/linux/linux_me2me_host.py b/remoting/host/linux/linux_me2me_host.py --- a/remoting/host/linux/linux_me2me_host.py +++ b/remoting/host/linux/linux_me2me_host.py @@ -26890,7 +27424,7 @@ diff --git a/remoting/ios/facade/remoting_oauth_authentication.mm b/remoting/ios diff --git a/remoting/protocol/fake_session.cc b/remoting/protocol/fake_session.cc --- a/remoting/protocol/fake_session.cc +++ b/remoting/protocol/fake_session.cc -@@ -15,7 +15,7 @@ +@@ -17,7 +17,7 @@ namespace remoting { namespace protocol { @@ -26902,7 +27436,7 @@ diff --git a/remoting/protocol/fake_session.cc b/remoting/protocol/fake_session. diff --git a/remoting/resources/remoting_strings.grd b/remoting/resources/remoting_strings.grd --- a/remoting/resources/remoting_strings.grd +++ b/remoting/resources/remoting_strings.grd -@@ -541,7 +541,7 @@ +@@ -549,7 +549,7 @@ Welcome to Chrome Remote Desktop @@ -26911,7 +27445,7 @@ diff --git a/remoting/resources/remoting_strings.grd b/remoting/resources/remoti Follow the instructions to set up your computer for remote access After setup is complete, refresh this page, then you'll be able to access the computer by choosing your device and entering the PIN -@@ -640,7 +640,7 @@ +@@ -648,7 +648,7 @@ @@ -26920,7 +27454,7 @@ diff --git a/remoting/resources/remoting_strings.grd b/remoting/resources/remoti -@@ -653,7 +653,7 @@ +@@ -661,7 +661,7 @@ @@ -26967,7 +27501,7 @@ diff --git a/remoting/tools/build/remoting_localize.py b/remoting/tools/build/re diff --git a/remoting/tools/zip2msi.py b/remoting/tools/zip2msi.py --- a/remoting/tools/zip2msi.py +++ b/remoting/tools/zip2msi.py -@@ -123,7 +123,7 @@ def QuoteArgument(arg): +@@ -125,7 +125,7 @@ def QuoteArgument(arg): So that the Win32 CommandLineToArgv function will turn the escaped result back into the original string. @@ -27039,7 +27573,7 @@ diff --git a/sandbox/linux/suid/sandbox.c b/sandbox/linux/suid/sandbox.c diff --git a/sandbox/policy/win/sandbox_win.cc b/sandbox/policy/win/sandbox_win.cc --- a/sandbox/policy/win/sandbox_win.cc +++ b/sandbox/policy/win/sandbox_win.cc -@@ -490,7 +490,7 @@ NtQueryObject g_QueryObject = NULL; +@@ -489,7 +489,7 @@ NtQueryObject g_QueryObject = NULL; static const char* kDuplicateHandleWarning = "You are attempting to duplicate a privileged handle into a sandboxed" @@ -27260,7 +27794,7 @@ diff --git a/testing/PRESUBMIT.py b/testing/PRESUBMIT.py diff --git a/testing/android/native_test/java/AndroidManifest.xml.jinja2 b/testing/android/native_test/java/AndroidManifest.xml.jinja2 --- a/testing/android/native_test/java/AndroidManifest.xml.jinja2 +++ b/testing/android/native_test/java/AndroidManifest.xml.jinja2 -@@ -25,8 +25,8 @@ found in the LICENSE file. +@@ -26,8 +26,8 @@ found in the LICENSE file. "#id". See https://github.com/WICG/scroll-to-text-fragment. String fragment = new_url.FragmentIdentifier(); -@@ -4337,6 +4341,7 @@ void Document::SetURL(const KURL& url) { +@@ -4346,6 +4350,7 @@ void Document::SetURL(const KURL& url) { else new_url.SetFragmentIdentifier(fragment.Substring(0, start_pos)); } @@ -97,7 +97,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink diff --git a/third_party/blink/renderer/core/page/scrolling/text_fragment_anchor_metrics_test.cc b/third_party/blink/renderer/core/page/scrolling/text_fragment_anchor_metrics_test.cc --- a/third_party/blink/renderer/core/page/scrolling/text_fragment_anchor_metrics_test.cc +++ b/third_party/blink/renderer/core/page/scrolling/text_fragment_anchor_metrics_test.cc -@@ -1254,34 +1254,25 @@ TEST_P(TextFragmentRelatedMetricTest, ElementIdSuccessFailureCounts) { +@@ -1248,34 +1248,25 @@ TEST_P(TextFragmentRelatedMetricTest, ElementIdSuccessFailureCounts) { // result of the element-id fragment if a text directive is successfully // parsed. If the feature is off we treat the text directive as an element-id // and should count the result. @@ -145,7 +145,7 @@ diff --git a/third_party/blink/renderer/core/page/scrolling/text_fragment_anchor diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -2020,8 +2020,7 @@ +@@ -2010,8 +2010,7 @@ }, { name: "TextFragmentIdentifiers", diff --git a/build/patches/Disable-the-DIAL-repeating-discovery.patch b/build/patches/Disable-the-DIAL-repeating-discovery.patch index 4fa94c0a..96f98fbe 100644 --- a/build/patches/Disable-the-DIAL-repeating-discovery.patch +++ b/build/patches/Disable-the-DIAL-repeating-discovery.patch @@ -15,7 +15,7 @@ diff --git a/chrome/browser/media/router/discovery/dial/dial_registry.cc b/chrom dial_ = CreateDialService(); dial_->AddObserver(this); - DoDiscovery(); -- repeating_timer_.reset(new base::RepeatingTimer()); +- repeating_timer_ = std::make_unique(); - repeating_timer_->Start(FROM_HERE, refresh_interval_delta_, this, - &DialRegistry::DoDiscovery); } diff --git a/build/patches/Disable-third-party-cookies-by-default.patch b/build/patches/Disable-third-party-cookies-by-default.patch index 7d98f250..2344f50a 100644 --- a/build/patches/Disable-third-party-cookies-by-default.patch +++ b/build/patches/Disable-third-party-cookies-by-default.patch @@ -10,7 +10,7 @@ author: Chad Miller diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc --- a/chrome/browser/prefs/browser_prefs.cc +++ b/chrome/browser/prefs/browser_prefs.cc -@@ -632,7 +632,7 @@ void RegisterProfilePrefsForMigration( +@@ -601,7 +601,7 @@ void RegisterProfilePrefsForMigration( registry->RegisterDictionaryPref(kObservedSessionTime); diff --git a/build/patches/Disable-unified-autoplay-feature.patch b/build/patches/Disable-unified-autoplay-feature.patch index 1bc9e6e4..7511f1dc 100644 --- a/build/patches/Disable-unified-autoplay-feature.patch +++ b/build/patches/Disable-unified-autoplay-feature.patch @@ -9,15 +9,15 @@ Subject: Disable unified autoplay feature diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc --- a/media/base/media_switches.cc +++ b/media/base/media_switches.cc -@@ -453,7 +453,7 @@ const base::Feature kUseR16Texture{"use-r16-texture", +@@ -457,7 +457,7 @@ const base::Feature kUseR16Texture{"use-r16-texture", // Enables the Unified Autoplay policy by overriding the platform's default // autoplay policy. const base::Feature kUnifiedAutoplay{"UnifiedAutoplay", - base::FEATURE_ENABLED_BY_DEFAULT}; + base::FEATURE_DISABLED_BY_DEFAULT}; - // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is - // complete. + #if defined(OS_LINUX) + // Enable vaapi video decoding on linux. This is already enabled by default on -- 2.17.1 diff --git a/build/patches/Do-not-compile-QR-code-sharing.patch b/build/patches/Do-not-compile-QR-code-sharing.patch index aff736b1..45d5620a 100644 --- a/build/patches/Do-not-compile-QR-code-sharing.patch +++ b/build/patches/Do-not-compile-QR-code-sharing.patch @@ -10,7 +10,7 @@ Subject: Do not compile QR code sharing diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java --- a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java +++ b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java -@@ -24,7 +24,6 @@ import org.chromium.chrome.browser.profiles.Profile; +@@ -25,7 +25,6 @@ import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.share.ChromeShareExtras; import org.chromium.chrome.browser.share.link_to_text.LinkToTextCoordinator; import org.chromium.chrome.browser.share.long_screenshots.LongScreenshotsCoordinator; @@ -18,7 +18,7 @@ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/s import org.chromium.chrome.browser.share.screenshot.ScreenshotCoordinator; import org.chromium.chrome.browser.share.send_tab_to_self.SendTabToSelfCoordinator; import org.chromium.chrome.browser.share.share_sheet.ShareSheetPropertyModelBuilder.ContentType; -@@ -241,10 +240,6 @@ class ChromeProvidedSharingOptionsProvider { +@@ -254,10 +253,6 @@ class ChromeProvidedSharingOptionsProvider { ChromeFeatureList.PREEMPTIVE_LINK_TO_TEXT_GENERATION)) { mOrderedFirstPartyOptions.add(createHighlightsFirstPartyOption()); } @@ -29,7 +29,7 @@ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/s if (UserPrefs.get(Profile.getLastUsedRegularProfile()).getBoolean(Pref.PRINTING_ENABLED)) { mOrderedFirstPartyOptions.add(createPrintingFirstPartyOption()); } -@@ -391,18 +386,6 @@ class ChromeProvidedSharingOptionsProvider { +@@ -404,18 +399,6 @@ class ChromeProvidedSharingOptionsProvider { .build(); } @@ -51,10 +51,10 @@ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/s diff --git a/chrome/browser/share/android/java_sources.gni b/chrome/browser/share/android/java_sources.gni --- a/chrome/browser/share/android/java_sources.gni +++ b/chrome/browser/share/android/java_sources.gni -@@ -19,24 +19,6 @@ share_java_sources = [ - "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/LongScreenshotsEntry.java", +@@ -20,24 +20,6 @@ share_java_sources = [ "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/LongScreenshotsTabService.java", "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/LongScreenshotsTabServiceFactory.java", + "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/ScreenshotBoundsManager.java", - "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/QRCodeGenerationRequest.java", - "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/QrCodeCoordinator.java", - "//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/qrcode/QrCodeDialog.java", diff --git a/build/patches/Do-not-hide-component-extensions.patch b/build/patches/Do-not-hide-component-extensions.patch index 880d900d..4ff2d70d 100644 --- a/build/patches/Do-not-hide-component-extensions.patch +++ b/build/patches/Do-not-hide-component-extensions.patch @@ -9,7 +9,7 @@ Subject: Do not hide component extensions diff --git a/extensions/common/extension.cc b/extensions/common/extension.cc --- a/extensions/common/extension.cc +++ b/extensions/common/extension.cc -@@ -419,9 +419,8 @@ bool Extension::ShouldDisplayInNewTabPage() const { +@@ -423,9 +423,8 @@ bool Extension::ShouldDisplayInNewTabPage() const { } bool Extension::ShouldExposeViaManagementAPI() const { diff --git a/build/patches/Do-not-store-passwords-by-default.patch b/build/patches/Do-not-store-passwords-by-default.patch index b11508ce..9283d18a 100644 --- a/build/patches/Do-not-store-passwords-by-default.patch +++ b/build/patches/Do-not-store-passwords-by-default.patch @@ -9,7 +9,7 @@ Subject: Do not store passwords by default diff --git a/components/password_manager/core/browser/password_manager.cc b/components/password_manager/core/browser/password_manager.cc --- a/components/password_manager/core/browser/password_manager.cc +++ b/components/password_manager/core/browser/password_manager.cc -@@ -208,10 +208,10 @@ FormData SimplifiedFormDataFromFormStructure( +@@ -198,10 +198,10 @@ FormData SimplifiedFormDataFromFormStructure( void PasswordManager::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref( diff --git a/build/patches/Enable-SPPI-for-devices-with-enough-memory.patch b/build/patches/Enable-SPPI-for-devices-with-enough-memory.patch index d31242a2..ffebf66c 100644 --- a/build/patches/Enable-SPPI-for-devices-with-enough-memory.patch +++ b/build/patches/Enable-SPPI-for-devices-with-enough-memory.patch @@ -10,7 +10,7 @@ Subject: Enable SPPI for devices with enough memory diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc --- a/chrome/common/chrome_features.cc +++ b/chrome/common/chrome_features.cc -@@ -845,11 +845,7 @@ const base::Feature kShow10_10ObsoleteInfobar{ +@@ -841,11 +841,7 @@ const base::Feature kShow10_10ObsoleteInfobar{ // browser_features, as they are only used on the browser side. const base::Feature kSitePerProcess { "site-per-process", diff --git a/build/patches/Enable-darken-websites-checkbox-in-themes.patch b/build/patches/Enable-darken-websites-checkbox-in-themes.patch index a30e7682..7e361773 100644 --- a/build/patches/Enable-darken-websites-checkbox-in-themes.patch +++ b/build/patches/Enable-darken-websites-checkbox-in-themes.patch @@ -11,7 +11,7 @@ Unexpire #darken-websites-checkbox-in-themes-setting diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -1109,7 +1109,7 @@ +@@ -1110,7 +1110,7 @@ { "name": "disable-keepalive-fetch", "owners": [ "yhirano" ], @@ -23,7 +23,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -511,7 +511,7 @@ const base::Feature kContextualSearchTranslations{ +@@ -520,7 +520,7 @@ const base::Feature kContextualSearchTranslations{ "ContextualSearchTranslations", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kDarkenWebsitesCheckboxInThemesSetting{ diff --git a/build/patches/Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch b/build/patches/Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch index 65e113ae..b5b899eb 100644 --- a/build/patches/Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch +++ b/build/patches/Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch @@ -42,8 +42,8 @@ Excerpt from https://github.com/bromite/bromite/issues/226 diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn -@@ -319,6 +319,10 @@ config("compiler") { - } +@@ -328,6 +328,10 @@ config("compiler") { + ldflags += [ "-fuse-ld=lld" ] } + if (is_clang && !is_ubsan && !is_ubsan_security) { diff --git a/build/patches/Enable-network-isolation-features.patch b/build/patches/Enable-network-isolation-features.patch index 715f89ce..091564de 100644 --- a/build/patches/Enable-network-isolation-features.patch +++ b/build/patches/Enable-network-isolation-features.patch @@ -13,7 +13,7 @@ PartitionNelAndReportingByNetworkIsolationKey diff --git a/net/base/features.cc b/net/base/features.cc --- a/net/base/features.cc +++ b/net/base/features.cc -@@ -71,30 +71,30 @@ const base::Feature kNetworkQualityEstimator{"NetworkQualityEstimator", +@@ -74,30 +74,30 @@ const base::Feature kNetworkQualityEstimator{"NetworkQualityEstimator", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kSplitCacheByNetworkIsolationKey{ diff --git a/build/patches/Enable-prefetch-privacy-changes-by-default.patch b/build/patches/Enable-prefetch-privacy-changes-by-default.patch index 7e4875fb..ff8b1860 100644 --- a/build/patches/Enable-prefetch-privacy-changes-by-default.patch +++ b/build/patches/Enable-prefetch-privacy-changes-by-default.patch @@ -9,7 +9,7 @@ Subject: Enable prefetch-privacy-changes by default diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -334,7 +334,7 @@ const base::Feature kComputePressure{"ComputePressure", +@@ -357,7 +357,7 @@ const base::Feature kComputePressure{"ComputePressure", // Prefetch request properties are updated to be privacy-preserving. See // crbug.com/988956. const base::Feature kPrefetchPrivacyChanges{"PrefetchPrivacyChanges", diff --git a/build/patches/Enable-user-agent-freeze-by-default.patch b/build/patches/Enable-user-agent-freeze-by-default.patch index 7194e7a9..ff0a87e7 100644 --- a/build/patches/Enable-user-agent-freeze-by-default.patch +++ b/build/patches/Enable-user-agent-freeze-by-default.patch @@ -9,7 +9,7 @@ Subject: Enable user-agent freeze by default diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc --- a/third_party/blink/common/features.cc +++ b/third_party/blink/common/features.cc -@@ -56,7 +56,7 @@ const base::Feature kFreezePurgeMemoryAllPagesFrozen{ +@@ -63,7 +63,7 @@ const base::Feature kFreezePurgeMemoryAllPagesFrozen{ // Freezes the user-agent as part of https://github.com/WICG/ua-client-hints. const base::Feature kFreezeUserAgent{"FreezeUserAgent", diff --git a/build/patches/Hide-passwords-manager-link.patch b/build/patches/Hide-passwords-manager-link.patch index 5266bc61..9e2f8b10 100644 --- a/build/patches/Hide-passwords-manager-link.patch +++ b/build/patches/Hide-passwords-manager-link.patch @@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage PreferenceGroup passwordParent; if (mSearchQuery == null) { -@@ -390,7 +390,7 @@ public class PasswordSettings +@@ -394,7 +394,7 @@ public class PasswordSettings return; } diff --git a/build/patches/Increase-number-of-autocomplete-matches-from-5-to-10.patch b/build/patches/Increase-number-of-autocomplete-matches-from-5-to-10.patch index 719a629c..2cac8722 100644 --- a/build/patches/Increase-number-of-autocomplete-matches-from-5-to-10.patch +++ b/build/patches/Increase-number-of-autocomplete-matches-from-5-to-10.patch @@ -11,7 +11,7 @@ Patch from https://github.com/Eloston/ungoogled-chromium/issues/814#issuecomment diff --git a/components/omnibox/browser/autocomplete_result.cc b/components/omnibox/browser/autocomplete_result.cc --- a/components/omnibox/browser/autocomplete_result.cc +++ b/components/omnibox/browser/autocomplete_result.cc -@@ -69,7 +69,8 @@ struct MatchGURLHash { +@@ -67,7 +67,8 @@ struct MatchGURLHash { // static size_t AutocompleteResult::GetMaxMatches(bool is_zero_suggest) { #if (defined(OS_ANDROID)) diff --git a/build/patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch b/build/patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch index 0f911e10..07685bd6 100644 --- a/build/patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch +++ b/build/patches/Inject-scripts-for-AMP-tracking-ads-and-video.patch @@ -40,8 +40,8 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink +#include "extensions/video_bg_play.h" #include "third_party/blink/renderer/core/page/scrolling/snap_coordinator.h" #include "third_party/blink/renderer/core/page/scrolling/text_fragment_anchor.h" - #include "third_party/blink/renderer/core/page/scrolling/text_fragment_selector_generator.h" -@@ -340,6 +341,8 @@ + #include "third_party/blink/renderer/core/page/scrolling/text_fragment_handler.h" +@@ -343,6 +344,8 @@ #include "third_party/blink/renderer/platform/wtf/text/string_buffer.h" #include "third_party/blink/renderer/platform/wtf/text/text_encoding_registry.h" @@ -50,7 +50,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink #ifndef NDEBUG using WeakDocumentSet = blink::HeapHashSet>; static WeakDocumentSet& liveDocumentSet(); -@@ -6850,6 +6853,61 @@ void Document::setAllowDeclarativeShadowRoots(bool val) { +@@ -6864,6 +6867,61 @@ void Document::setAllowDeclarativeShadowRoots(bool val) { val ? AllowState::kAllow : AllowState::kDeny; } @@ -112,7 +112,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink void Document::FinishedParsing() { DCHECK(!GetScriptableDocumentParser() || !parser_->IsParsing()); DCHECK(!GetScriptableDocumentParser() || ready_state_ != kLoading); -@@ -6902,6 +6960,10 @@ void Document::FinishedParsing() { +@@ -6916,6 +6974,10 @@ void Document::FinishedParsing() { frame->Loader().FinishedParsing(); @@ -120,13 +120,13 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink + injectScripts(); + } + - TRACE_EVENT_INSTANT1("devtools.timeline", "MarkDOMContent", - TRACE_EVENT_SCOPE_THREAD, "data", - inspector_mark_load_event::Data(frame)); + DEVTOOLS_TIMELINE_TRACE_EVENT_INSTANT( + "MarkDOMContent", inspector_mark_load_event::Data, frame); + probe::DomContentLoadedEventFired(frame); diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/renderer/core/dom/document.h --- a/third_party/blink/renderer/core/dom/document.h +++ b/third_party/blink/renderer/core/dom/document.h -@@ -1721,6 +1721,9 @@ class CORE_EXPORT Document : public ContainerNode, +@@ -1726,6 +1726,9 @@ class CORE_EXPORT Document : public ContainerNode, void AddAXContext(AXContext*); void RemoveAXContext(AXContext*); diff --git a/build/patches/Make-all-favicon-requests-on-demand.patch b/build/patches/Make-all-favicon-requests-on-demand.patch index 366ade7c..24978e98 100644 --- a/build/patches/Make-all-favicon-requests-on-demand.patch +++ b/build/patches/Make-all-favicon-requests-on-demand.patch @@ -48,7 +48,7 @@ diff --git a/components/favicon/core/favicon_database.cc b/components/favicon/co + return true; } - bool FaviconDatabase::TouchOnDemandFavicon(const GURL& icon_url, + bool FaviconDatabase::SetFaviconsOutOfDateBetween(base::Time begin, -- 2.17.1 diff --git a/build/patches/Modify-default-preferences.patch b/build/patches/Modify-default-preferences.patch index e4150bb1..97abcf48 100644 --- a/build/patches/Modify-default-preferences.patch +++ b/build/patches/Modify-default-preferences.patch @@ -20,7 +20,7 @@ Subject: Modify default preferences diff --git a/chrome/browser/background/background_mode_manager.cc b/chrome/browser/background/background_mode_manager.cc --- a/chrome/browser/background/background_mode_manager.cc +++ b/chrome/browser/background/background_mode_manager.cc -@@ -362,7 +362,7 @@ void BackgroundModeManager::RegisterPrefs(PrefRegistrySimple* registry) { +@@ -373,7 +373,7 @@ void BackgroundModeManager::RegisterPrefs(PrefRegistrySimple* registry) { registry->RegisterBooleanPref(prefs::kChromeCreatedLoginItem, false); registry->RegisterBooleanPref(prefs::kMigratedLoginItemPref, false); #endif @@ -32,7 +32,7 @@ diff --git a/chrome/browser/background/background_mode_manager.cc b/chrome/brows diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc --- a/chrome/browser/chrome_content_browser_client.cc +++ b/chrome/browser/chrome_content_browser_client.cc -@@ -1264,7 +1264,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs( +@@ -1318,7 +1318,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs( void ChromeContentBrowserClient::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false); @@ -68,7 +68,7 @@ diff --git a/chrome/browser/net/prediction_options.h b/chrome/browser/net/predic diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profile.cc --- a/chrome/browser/profiles/profile.cc +++ b/chrome/browser/profiles/profile.cc -@@ -247,7 +247,7 @@ const char Profile::kProfileKey[] = "__PROFILE__"; +@@ -265,7 +265,7 @@ const char Profile::kProfileKey[] = "__PROFILE__"; void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref( prefs::kSearchSuggestEnabled, @@ -121,7 +121,7 @@ diff --git a/chrome/service/cloud_print/connector_settings.cc b/chrome/service/c diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/autofill/core/browser/autofill_manager.cc --- a/components/autofill/core/browser/autofill_manager.cc +++ b/components/autofill/core/browser/autofill_manager.cc -@@ -975,10 +975,7 @@ void AutofillManager::OnQueryFormFieldAutofillImpl( +@@ -974,10 +974,7 @@ void AutofillManager::OnQueryFormFieldAutofillImpl( // suggestions available. // TODO(mathp): Differentiate between number of suggestions available // (current metric) and number shown to the user. @@ -133,7 +133,7 @@ diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/a } } -@@ -1556,8 +1553,8 @@ void AutofillManager::Reset() { +@@ -1552,8 +1549,8 @@ void AutofillManager::Reset() { credit_card_access_manager_ = std::make_unique( driver(), client(), personal_data_, credit_card_form_event_logger_.get()); @@ -159,7 +159,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto diff --git a/components/bookmarks/browser/bookmark_utils.cc b/components/bookmarks/browser/bookmark_utils.cc --- a/components/bookmarks/browser/bookmark_utils.cc +++ b/components/bookmarks/browser/bookmark_utils.cc -@@ -441,12 +441,12 @@ bool DoesBookmarkContainWords(const base::string16& title, +@@ -440,12 +440,12 @@ bool DoesBookmarkContainWords(const std::u16string& title, void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref( prefs::kShowBookmarkBar, @@ -177,7 +177,7 @@ diff --git a/components/bookmarks/browser/bookmark_utils.cc b/components/bookmar diff --git a/components/safe_browsing/core/common/safe_browsing_prefs.cc b/components/safe_browsing/core/common/safe_browsing_prefs.cc --- a/components/safe_browsing/core/common/safe_browsing_prefs.cc +++ b/components/safe_browsing/core/common/safe_browsing_prefs.cc -@@ -196,9 +196,9 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { +@@ -190,9 +190,9 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) { registry->RegisterBooleanPref( prefs::kSafeBrowsingSawInterstitialScoutReporting, false); registry->RegisterBooleanPref( diff --git a/build/patches/Move-some-account-settings-back-to-privacy-settings.patch b/build/patches/Move-some-account-settings-back-to-privacy-settings.patch index f45b5448..2c3a7f68 100644 --- a/build/patches/Move-some-account-settings-back-to-privacy-settings.patch +++ b/build/patches/Move-some-account-settings-back-to-privacy-settings.patch @@ -4,17 +4,17 @@ Subject: Move some account settings back to privacy settings Search suggestions, autofill assistant and contextual search --- - .../java/res/xml/privacy_preferences.xml | 20 ++++++ - .../privacy/settings/PrivacySettings.java | 64 ++++++++++++++++++- - 2 files changed, 82 insertions(+), 2 deletions(-) + .../java/res/xml/privacy_preferences.xml | 20 +++++++ + .../privacy/settings/PrivacySettings.java | 59 ++++++++++++++++++- + 2 files changed, 78 insertions(+), 1 deletion(-) diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml --- a/chrome/android/java/res/xml/privacy_preferences.xml +++ b/chrome/android/java/res/xml/privacy_preferences.xml -@@ -63,4 +63,24 @@ +@@ -56,4 +56,24 @@ + android:key="privacy_sandbox" android:title="@string/prefs_privacy_sandbox" - android:fragment="org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment" - android:order="7"/> + android:fragment="org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment"/> + + (quads); } -@@ -2092,6 +2097,9 @@ FloatRect Element::GetBoundingClientRectNoLifecycleUpdate() const { +@@ -2109,6 +2114,9 @@ FloatRect Element::GetBoundingClientRectNoLifecycleUpdate() const { DCHECK(element_layout_object); GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result, *element_layout_object); @@ -332,7 +332,7 @@ diff --git a/third_party/blink/renderer/core/html/canvas/text_metrics.h b/third_ diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc --- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc +++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc -@@ -22,6 +22,7 @@ +@@ -23,6 +23,7 @@ #include "third_party/blink/renderer/platform/graphics/skia/skia_utils.h" #include "third_party/blink/renderer/platform/graphics/stroke_data.h" #include "third_party/blink/renderer/platform/heap/heap.h" @@ -340,7 +340,7 @@ diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_c namespace blink { -@@ -1978,6 +1979,12 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( +@@ -2005,6 +2006,12 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( snapshot->PaintImageForCurrentFrame().GetSkImageInfo().bounds(); DCHECK(!bounds.intersect(SkIRect::MakeXYWH(sx, sy, sw, sh))); } @@ -356,9 +356,9 @@ diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_c diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc --- a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc +++ b/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering_context_2d.cc -@@ -964,9 +964,15 @@ TextMetrics* CanvasRenderingContext2D::measureText(const String& text) { - else - direction = ToTextDirection(GetState().GetDirection(), canvas()); +@@ -968,9 +968,15 @@ TextMetrics* CanvasRenderingContext2D::measureText(const String& text) { + TextDirection direction = + ToTextDirection(GetState().GetDirection(), canvas()); - return MakeGarbageCollected(font, direction, + TextMetrics* text_metrics = MakeGarbageCollected(font, direction, @@ -376,7 +376,7 @@ diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn --- a/third_party/blink/renderer/platform/BUILD.gn +++ b/third_party/blink/renderer/platform/BUILD.gn -@@ -1615,7 +1615,9 @@ component("platform") { +@@ -1619,7 +1619,9 @@ component("platform") { "//third_party/blink/renderer:non_test_config", ] @@ -387,7 +387,7 @@ diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/re allow_circular_includes_from = [ "//third_party/blink/renderer/platform/blob", -@@ -1681,6 +1683,7 @@ component("platform") { +@@ -1685,6 +1687,7 @@ component("platform") { "//third_party/blink/public/strings", "//third_party/blink/renderer/platform/wtf", "//third_party/ced", @@ -398,8 +398,8 @@ diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/re diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.cc b/third_party/blink/renderer/platform/exported/web_runtime_features.cc --- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc +++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc -@@ -671,4 +671,16 @@ void WebRuntimeFeatures::EnableCSSColorSchemeUARendering(bool enable) { - RuntimeEnabledFeatures::SetCSSColorSchemeUARenderingEnabled(enable); +@@ -671,4 +671,16 @@ void WebRuntimeFeatures::EnableDocumentTransition(bool enable) { + RuntimeEnabledFeatures::SetDocumentTransitionEnabled(enable); } +void WebRuntimeFeatures::EnableFingerprintingClientRectsNoise(bool enable) { @@ -631,9 +631,9 @@ diff --git a/third_party/blink/renderer/platform/graphics/static_bitmap_image.h diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 --- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 +++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -919,6 +919,15 @@ - name: "FeaturePolicyReporting", - status: "experimental" +@@ -921,6 +921,15 @@ + origin_trial_allows_third_party: true, + status: "experimental", }, + { + name: "FingerprintingClientRectsNoise", @@ -645,8 +645,8 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 + name: "FingerprintingCanvasImageDataNoise", + }, { - name: "FeaturePolicyVibrateFeature" - }, + // Also enabled when blink::features::kFileHandlingAPI is overridden + // on the command line (or via chrome://flags). diff --git a/third_party/ungoogled/BUILD.gn b/third_party/ungoogled/BUILD.gn new file mode 100644 --- /dev/null diff --git a/build/patches/Offer-builtin-autocomplete-for-chrome-flags.patch b/build/patches/Offer-builtin-autocomplete-for-chrome-flags.patch index 51f5acc1..74db9985 100644 --- a/build/patches/Offer-builtin-autocomplete-for-chrome-flags.patch +++ b/build/patches/Offer-builtin-autocomplete-for-chrome-flags.patch @@ -9,15 +9,15 @@ Subject: Offer builtin autocomplete for chrome://flags diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc --- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc +++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc -@@ -330,6 +330,8 @@ std::vector ChromeAutocompleteProviderClient::GetBuiltinURLs() { - std::vector - ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { - std::vector builtins_to_provide; +@@ -330,6 +330,8 @@ std::vector ChromeAutocompleteProviderClient::GetBuiltinURLs() { + #if !defined(OS_ANDROID) + std::u16string settings(base::ASCIIToUTF16(chrome::kChromeUISettingsHost) + + u"/"); + builtins_to_provide.push_back( + base::ASCIIToUTF16(chrome::kChromeUIFlagsURL)); - builtins_to_provide.push_back( - base::ASCIIToUTF16(chrome::kChromeUIChromeURLsURL)); - #if !defined(OS_ANDROID) + for (size_t i = 0; i < base::size(kChromeSettingsSubPages); i++) { + builtins.push_back(settings + + base::ASCIIToUTF16(kChromeSettingsSubPages[i])); -- 2.17.1 diff --git a/build/patches/Open-YouTube-links-in-Bromite.patch b/build/patches/Open-YouTube-links-in-Bromite.patch index 0d5826d6..a5a71fea 100644 --- a/build/patches/Open-YouTube-links-in-Bromite.patch +++ b/build/patches/Open-YouTube-links-in-Bromite.patch @@ -9,7 +9,7 @@ Subject: Open YouTube links in Bromite diff --git a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java --- a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java +++ b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java -@@ -572,6 +572,7 @@ public class ExternalNavigationHandler { +@@ -534,6 +534,7 @@ public class ExternalNavigationHandler { startActivity(intent, false, mDelegate); return OverrideUrlLoadingResult.forExternalIntent(); } @@ -17,7 +17,7 @@ diff --git a/components/external_intents/android/java/src/org/chromium/component } private static void loadUrlWithReferrer( -@@ -1230,6 +1231,13 @@ public class ExternalNavigationHandler { +@@ -1227,6 +1228,13 @@ public class ExternalNavigationHandler { OverrideUrlLoadingAsyncActionType.UI_GATING_BROWSER_NAVIGATION); } diff --git a/build/patches/Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch b/build/patches/Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch index d21a7f0e..dce607bf 100644 --- a/build/patches/Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch +++ b/build/patches/Reduce-HTTP-headers-in-DoH-requests-to-bare-minimum.patch @@ -3,10 +3,10 @@ Date: Sat, 28 Apr 2018 08:30:26 +0200 Subject: Reduce HTTP headers in DoH requests to bare minimum --- - net/base/load_flags_list.h | 9 +++++++++ - net/dns/dns_transaction.cc | 2 +- - net/url_request/url_request_http_job.cc | 16 +++++++++++----- - 3 files changed, 21 insertions(+), 6 deletions(-) + net/base/load_flags_list.h | 9 +++++++++ + net/dns/dns_transaction.cc | 2 +- + net/url_request/url_request_http_job.cc | 8 +++++++- + 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/net/base/load_flags_list.h b/net/base/load_flags_list.h --- a/net/base/load_flags_list.h @@ -27,7 +27,7 @@ diff --git a/net/base/load_flags_list.h b/net/base/load_flags_list.h diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc --- a/net/dns/dns_transaction.cc +++ b/net/dns/dns_transaction.cc -@@ -411,7 +411,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate { +@@ -413,7 +413,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate { // Disable secure DNS for any DoH server hostname lookups to avoid deadlock. request_->SetDisableSecureDns(true); request_->SetLoadFlags(request_->load_flags() | LOAD_DISABLE_CACHE | @@ -62,24 +62,23 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque AddExtraHeaders(); AddCookieHeaderAndStart(); -@@ -499,10 +503,12 @@ void URLRequestHttpJob::AddExtraHeaders() { - } else { - // Advertise "br" encoding only if transferred data is opaque to proxy. - bool advertise_brotli = false; -- if (request()->context()->enable_brotli()) { -- if (request()->url().SchemeIsCryptographic() || -- IsLocalhost(request()->url())) { -- advertise_brotli = true; +@@ -513,6 +517,7 @@ void URLRequestHttpJob::AddExtraHeaders() { + if (request_->Supports(SourceStream::SourceType::TYPE_DEFLATE)) { + advertised_encoding_names.push_back("deflate"); + } + if (!(request_info_.load_flags & LOAD_MINIMAL_HEADERS)) { -+ if (request()->context()->enable_brotli()) { -+ if (request()->url().SchemeIsCryptographic() || -+ IsLocalhost(request()->url())) { -+ advertise_brotli = true; -+ } + // Advertise "br" encoding only if transferred data is opaque to proxy. + if (request()->context()->enable_brotli() && + request_->Supports(SourceStream::SourceType::TYPE_BROTLI)) { +@@ -521,6 +526,7 @@ void URLRequestHttpJob::AddExtraHeaders() { + advertised_encoding_names.push_back("br"); } } - -@@ -520,7 +526,7 @@ void URLRequestHttpJob::AddExtraHeaders() { ++ } // minimal headers + if (!advertised_encoding_names.empty()) { + // Tell the server what compression formats are supported. + request_info_.extra_headers.SetHeader( +@@ -530,7 +536,7 @@ void URLRequestHttpJob::AddExtraHeaders() { } } diff --git a/build/patches/Remove-SMS-integration.patch b/build/patches/Remove-SMS-integration.patch index 6f3ef0ed..a18a05e2 100644 --- a/build/patches/Remove-SMS-integration.patch +++ b/build/patches/Remove-SMS-integration.patch @@ -38,7 +38,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/sms/Sm if (mBackend == GmsBackend.AUTO || mBackend == GmsBackend.USER_CONSENT) { mUserConsentReceiver = new SmsUserConsentReceiver(this, mContext); } -@@ -133,13 +121,6 @@ public class SmsProviderGms { +@@ -138,13 +126,6 @@ public class SmsProviderGms { } public Wrappers.SmsRetrieverClientWrapper getClient() { @@ -52,7 +52,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/sms/Sm return mClient; } -@@ -161,4 +142,4 @@ public class SmsProviderGms { +@@ -166,4 +147,4 @@ public class SmsProviderGms { void onCancel(long nativeSmsProviderGms); void onNotAvailable(long nativeSmsProviderGms); } @@ -206,11 +206,11 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/sms/Sm + }*/ } - public void onPermissionDone(WindowAndroid window, int resultCode) { + public void onPermissionDone(WindowAndroid window, int resultCode, boolean isLocalRequest) { @@ -134,7 +115,7 @@ public class SmsVerificationReceiver extends BroadcastReceiver { * task. */ - public void onRetrieverTaskFailure(WindowAndroid window, Exception e) { + public void onRetrieverTaskFailure(WindowAndroid window, boolean isLocalRequest, Exception e) { - if (DEBUG) Log.d(TAG, "Task failed. Attempting recovery.", e); + /*if (DEBUG) Log.d(TAG, "Task failed. Attempting recovery.", e); BackendAvailability availability = BackendAvailability.AVAILABLE; @@ -225,7 +225,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/sms/Sm + Log.w(TAG, "Unexpected exception", e); } - public void listen(WindowAndroid window) { + public void listen(WindowAndroid window, boolean isLocalRequest) { - Wrappers.SmsRetrieverClientWrapper client = mProvider.getClient(); + /* Wrappers.SmsRetrieverClientWrapper client = mProvider.getClient(); Task task = client.startSmsCodeBrowserRetriever(); diff --git a/build/patches/Remove-binary-blob-integrations.patch b/build/patches/Remove-binary-blob-integrations.patch index bebc6406..2b99b557 100644 --- a/build/patches/Remove-binary-blob-integrations.patch +++ b/build/patches/Remove-binary-blob-integrations.patch @@ -23,7 +23,7 @@ Parts of this patch were developed by csagan5, uazo and others. --- ...em_webview_bundle.AndroidManifest.expected | 6 - chrome/android/BUILD.gn | 36 -- - chrome/android/chrome_java_sources.gni | 8 - + chrome/android/chrome_java_sources.gni | 5 - chrome/android/java/AndroidManifest.xml | 68 --- .../org/chromium/chrome/browser/AppHooks.java | 14 +- .../browser/PlayServicesVersionInfo.java | 12 +- @@ -31,20 +31,18 @@ Parts of this patch were developed by csagan5, uazo and others. .../ExternalNavigationDelegateImpl.java | 8 +- .../gcore/ChromeGoogleApiClientImpl.java | 25 +- .../browser/gcore/GoogleApiClientHelper.java | 82 +-- - .../instantapps/InstantAppsHandler.java | 56 -- + .../instantapps/InstantAppsHandler.java | 59 -- .../browser/omaha/UpdateStatusProvider.java | 10 +- .../inline/FakeAppUpdateManagerWrapper.java | 60 +- .../inline/InlineUpdateControllerFactory.java | 16 - .../inline/PlayInlineUpdateController.java | 226 +------- .../settings/PasswordSettings.java | 14 - - .../browser/webauth/AuthenticatorImpl.java | 29 +- .../modules/chrome_feature_modules.gni | 3 - chrome/browser/BUILD.gn | 2 - - chrome/browser/language/android/BUILD.gn | 1 - - .../browser/language/AppLocaleUtils.java | 24 - + chrome/browser/language/android/BUILD.gn | 2 - + .../browser/language/AppLocaleUtils.java | 28 - .../prefetch/prefetch_service_factory.cc | 16 - .../push_messaging_service_factory.cc | 8 +- - .../browser/signin/services/android/BUILD.gn | 1 - chrome/browser/ui/BUILD.gn | 3 - .../webui/chrome_web_ui_controller_factory.cc | 3 - chrome/test/android/BUILD.gn | 2 - @@ -81,10 +79,11 @@ Parts of this patch were developed by csagan5, uazo and others. .../remoting/RemotingSessionController.java | 26 - .../test/android/cast_emulator/BUILD.gn | 1 - components/module_installer/android/BUILD.gn | 2 - - .../signin/core/browser/android/BUILD.gn | 1 - - components/signin/public/android/BUILD.gn | 2 - + components/signin/public/android/BUILD.gn | 4 - .../signin/GmsAvailabilityException.java | 4 +- .../signin/SystemAccountManagerDelegate.java | 21 +- + components/webauthn/android/BUILD.gn | 5 - + .../webauthn/AuthenticatorImpl.java | 33 +- .../push_messaging/push_messaging_manager.cc | 6 +- content/public/android/BUILD.gn | 4 - content/public/common/content_features.cc | 2 +- @@ -94,10 +93,11 @@ Parts of this patch were developed by csagan5, uazo and others. services/BUILD.gn | 9 - services/device/geolocation/BUILD.gn | 3 - services/shape_detection/BUILD.gn | 4 - - third_party/android_deps/BUILD.gn | 520 +----------------- + third_party/android_deps/BUILD.gn | 526 +----------------- + .../preconditions/javatests/BUILD.gn | 1 - .../gms/ChromiumPlayServicesAvailability.java | 10 +- third_party/google_android_play_core/BUILD.gn | 5 - - 76 files changed, 71 insertions(+), 2595 deletions(-) + 76 files changed, 69 insertions(+), 2618 deletions(-) delete mode 100644 components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskGcmTaskService.java delete mode 100644 components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BackgroundTaskSchedulerGcmNetworkManager.java @@ -127,7 +127,7 @@ diff --git a/android_webview/expectations/system_webview_bundle.AndroidManifest. diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -277,20 +277,10 @@ android_library("chrome_java") { +@@ -280,19 +280,9 @@ android_library("chrome_java") { ":partner_location_descriptor_proto_java", ":update_proto_java", ":usage_stats_proto_java", @@ -141,14 +141,13 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn - "$google_play_services_package:google_play_services_iid_java", - "$google_play_services_package:google_play_services_tasks_java", "//base:base_java", - "//base:jni_java", "//cc:cc_java", "//chrome/android/features/keyboard_accessory:public_java", - "//chrome/android/modules/cablev2_authenticator/public:java", "//chrome/android/modules/image_editor/provider:java", "//chrome/android/modules/stack_unwinder/provider:java", "//chrome/android/webapk/libs/client:client_java", -@@ -539,7 +529,6 @@ android_library("chrome_java") { +@@ -553,7 +543,6 @@ android_library("chrome_java") { "//third_party/blink/public/mojom:android_mojo_bindings_java", "//third_party/blink/public/mojom:mojom_platform_java", "//third_party/gif_player:gif_player_java", @@ -156,7 +155,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//third_party/metrics_proto:metrics_proto_java", "//ui/android:ui_java", "//ui/base/mojom:mojom_java", -@@ -804,11 +793,6 @@ junit_binary("chrome_junit_tests") { +@@ -822,11 +811,6 @@ junit_binary("chrome_junit_tests") { ":chrome_app_java_resources", ":chrome_java", ":partner_location_descriptor_proto_java", @@ -168,9 +167,9 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", -@@ -1059,14 +1043,6 @@ android_library("chrome_test_java") { - ":chrome_app_java_resources", +@@ -1104,14 +1088,6 @@ android_library("chrome_test_java") { ":chrome_test_util_java", + ":chrome_test_util_jni", ":partner_location_descriptor_proto_java", - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", @@ -182,8 +181,8 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn - "$google_play_services_package:google_play_services_tasks_java", "//base:base_java", "//base:base_java_test_support", - "//base:jni_java", -@@ -2059,7 +2035,6 @@ android_library("browser_java_test_support") { + "//base/test:test_support_java", +@@ -2128,7 +2104,6 @@ android_library("browser_java_test_support") { ] deps = [ ":chrome_java", @@ -191,8 +190,8 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//base:base_java", "//base:base_java_test_support", "//chrome/browser/profiles/android:java", -@@ -2200,8 +2175,6 @@ android_library("base_monochrome_module_java") { - # enable_chrome_module is true and //chrome code is in a DFM. +@@ -2269,8 +2244,6 @@ android_library("base_monochrome_module_java") { + # is in a DFM. android_library("base_module_java") { sources = [ - "java/src/com/google/ipc/invalidation/ticl/android2/channel/GcmRegistrationTaskService.java", @@ -200,7 +199,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "java/src/org/chromium/chrome/browser/ChromeBackupAgent.java", "java/src/org/chromium/chrome/browser/DeferredStartupHandler.java", "java/src/org/chromium/chrome/browser/base/DexFixer.java", -@@ -2212,8 +2185,6 @@ android_library("base_module_java") { +@@ -2281,8 +2254,6 @@ android_library("base_module_java") { "java/src/org/chromium/chrome/browser/base/SplitCompatBackupAgent.java", "java/src/org/chromium/chrome/browser/base/SplitCompatContentProvider.java", "java/src/org/chromium/chrome/browser/base/SplitCompatCustomTabsService.java", @@ -209,7 +208,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "java/src/org/chromium/chrome/browser/base/SplitCompatIntentService.java", "java/src/org/chromium/chrome/browser/base/SplitCompatJobService.java", "java/src/org/chromium/chrome/browser/base/SplitCompatMinidumpUploadJobService.java", -@@ -2240,15 +2211,10 @@ android_library("base_module_java") { +@@ -2309,15 +2280,10 @@ android_library("base_module_java") { "java/src/org/chromium/chrome/browser/photo_picker/DecoderService.java", "java/src/org/chromium/chrome/browser/prerender/ChromePrerenderService.java", "java/src/org/chromium/chrome/browser/provider/ChromeBrowserProvider.java", @@ -223,9 +222,9 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn - "$google_play_services_package:google_firebase_firebase_messaging_java", - "$google_play_services_package:google_play_services_gcm_java", "//base:base_java", - "//base:jni_java", "//chrome/browser/download/android:file_provider_java", -@@ -2265,7 +2231,6 @@ android_library("base_module_java") { + "//chrome/browser/flags:java", +@@ -2333,7 +2299,6 @@ android_library("base_module_java") { "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/androidx:androidx_collection_collection_java", "//third_party/androidx:androidx_fragment_fragment_java", @@ -233,7 +232,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//ui/android:ui_no_recycler_view_java", # Deps needed for child processes. -@@ -2284,7 +2249,6 @@ android_library("base_module_java") { +@@ -2352,7 +2317,6 @@ android_library("base_module_java") { # Deps to pull services into base module. # TODO(crbug.com/1126301): Consider moving these to the chrome module to # reduce base dex size. @@ -247,12 +246,12 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java @@ -16,7 +16,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/ChromeActionModeHandler.java", "java/src/org/chromium/chrome/browser/ChromeActivitySessionTracker.java", - "java/src/org/chromium/chrome/browser/ChromeApplication.java", + "java/src/org/chromium/chrome/browser/ChromeApplicationImpl.java", - "java/src/org/chromium/chrome/browser/ChromeBackgroundServiceImpl.java", "java/src/org/chromium/chrome/browser/ChromeBackupAgentImpl.java", "java/src/org/chromium/chrome/browser/ChromeBackupWatcher.java", "java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java", -@@ -1199,10 +1198,6 @@ chrome_java_sources = [ +@@ -1166,10 +1165,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/searchwidget/SearchWidgetProvider.java", "java/src/org/chromium/chrome/browser/send_tab_to_self/SendTabToSelfShareActivity.java", "java/src/org/chromium/chrome/browser/services/AccountsChangedReceiver.java", @@ -263,20 +262,10 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/org/chromium/chrome/browser/settings/MainSettings.java", "java/src/org/chromium/chrome/browser/settings/SettingsActivity.java", "java/src/org/chromium/chrome/browser/settings/SettingsLauncherImpl.java", -@@ -1423,9 +1418,6 @@ chrome_java_sources = [ - "java/src/org/chromium/chrome/browser/webapps/WebappRegistry.java", - "java/src/org/chromium/chrome/browser/webauth/AuthenticatorFactory.java", - "java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java", -- "java/src/org/chromium/chrome/browser/webauth/Fido2ApiHandler.java", -- "java/src/org/chromium/chrome/browser/webauth/Fido2CredentialRequest.java", -- "java/src/org/chromium/chrome/browser/webauth/Fido2Helper.java", - "java/src/org/chromium/chrome/browser/webauth/HandlerResponseCallback.java", - "java/src/org/chromium/chrome/browser/webauth/authenticator/CableAuthenticatorActivity.java", - "java/src/org/chromium/chrome/browser/webshare/ShareServiceImplementationFactory.java", diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml -@@ -80,23 +80,18 @@ by a child template that "extends" this file. +@@ -79,21 +79,16 @@ by a child template that "extends" this file. @@ -294,13 +283,11 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro - - - {% block extra_uses_permissions %} -@@ -706,16 +701,6 @@ by a child template that "extends" this file. +@@ -713,16 +708,6 @@ by a child template that "extends" this file. @@ -317,7 +304,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro @@ -333,7 +320,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro @@ -360,7 +347,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro -@@ -978,28 +934,10 @@ by a child template that "extends" this file. +@@ -985,28 +941,10 @@ by a child template that "extends" this file. android:exported="false" android:permission="android.permission.BIND_JOB_SERVICE"/> @@ -389,7 +376,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro -@@ -1196,12 +1134,6 @@ by a child template that "extends" this file. +@@ -1210,12 +1148,6 @@ by a child template that "extends" this file. {% endif %} @@ -415,7 +402,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java b import org.chromium.base.ContextUtils; import org.chromium.base.annotations.CalledByNative; import org.chromium.chrome.browser.customtabs.CustomTabsConnection; -@@ -285,16 +282,7 @@ public abstract class AppHooks { +@@ -298,16 +295,7 @@ public abstract class AppHooks { * same as {@link GoogleApiAvailability#isGooglePlayServicesAvailable()}. */ public int isGoogleApiAvailableWithMinApkVersion(int minApkVersion) { @@ -491,7 +478,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/background_task diff --git a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/externalnav/ExternalNavigationDelegateImpl.java -@@ -218,12 +218,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat +@@ -219,12 +219,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat @Override public void maybeAdjustInstantAppExtras(Intent intent, boolean isIntentToInstantApp) { @@ -717,7 +704,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/gcore/GoogleApi diff --git a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java --- a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/instantapps/InstantAppsHandler.java -@@ -40,31 +40,9 @@ public class InstantAppsHandler { +@@ -40,31 +40,6 @@ public class InstantAppsHandler { // TODO(mariakhomenko): Use system once we roll to O SDK. private static final int FLAG_DO_NOT_LAUNCH = 0x00000200; @@ -734,9 +721,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/Ins - protected static final String TRUSTED_REFERRER_PKG_EXTRA = - "com.google.android.gms.instantapps.TRUSTED_REFERRER_PKG"; - - public static final String IS_GOOGLE_SEARCH_REFERRER = - "com.google.android.gms.instantapps.IS_GOOGLE_SEARCH_REFERRER"; - +- public static final String IS_GOOGLE_SEARCH_REFERRER = +- "com.google.android.gms.instantapps.IS_GOOGLE_SEARCH_REFERRER"; +- - private static final String BROWSER_LAUNCH_REASON = - "com.google.android.gms.instantapps.BROWSER_LAUNCH_REASON"; - @@ -746,10 +733,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/Ins - "com.google.android.instantapps.START", "com.google.android.instantapps.nmr1.INSTALL", - "com.google.android.instantapps.nmr1.VIEW"}; - - /** Finch experiment name. */ - private static final String INSTANT_APPS_EXPERIMENT_NAME = "InstantApps"; + // Only two possible call sources for fallback intents, set boundary at n+1. + private static final int SOURCE_BOUNDARY = 3; -@@ -93,14 +71,6 @@ public class InstantAppsHandler { +@@ -84,14 +59,6 @@ public class InstantAppsHandler { * @return Whether the given intent is going to open an Instant App. */ public static boolean isIntentToInstantApp(Intent intent) { @@ -764,7 +751,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/Ins return false; } -@@ -135,20 +105,6 @@ public class InstantAppsHandler { +@@ -126,20 +93,6 @@ public class InstantAppsHandler { * @param intent The current intent. */ private void maybeRecordFallbackStats(Intent intent) { @@ -785,7 +772,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/Ins } /** -@@ -183,14 +139,6 @@ public class InstantAppsHandler { +@@ -174,14 +127,6 @@ public class InstantAppsHandler { return false; } @@ -800,7 +787,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/Ins if (IntentUtils.safeGetBooleanExtra( intent, IntentHandler.EXTRA_OPEN_NEW_INCOGNITO_TAB, false) || IntentUtils.safeHasExtra(intent, ShortcutHelper.EXTRA_SOURCE) -@@ -215,7 +163,6 @@ public class InstantAppsHandler { +@@ -206,7 +151,6 @@ public class InstantAppsHandler { } Intent callbackIntent = new Intent(intent); @@ -808,7 +795,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/instantapps/Ins callbackIntent.putExtra(INSTANT_APP_START_TIME_EXTRA, startTime); return tryLaunchingInstantApp(context, intent, isCustomTabsIntent, callbackIntent); -@@ -318,12 +265,9 @@ public class InstantAppsHandler { +@@ -309,12 +253,9 @@ public class InstantAppsHandler { Intent iaIntent = data.getIntent(); if (data.getReferrer() != null) { iaIntent.putExtra(Intent.EXTRA_REFERRER, data.getReferrer()); @@ -1305,7 +1292,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage import org.chromium.components.browser_ui.settings.ChromeBasePreference; import org.chromium.components.browser_ui.settings.ChromeSwitchPreference; import org.chromium.components.browser_ui.settings.SearchUtils; -@@ -559,19 +558,6 @@ public class PasswordSettings +@@ -565,19 +564,6 @@ public class PasswordSettings } private void displaySecurityKeyLink() { @@ -1325,59 +1312,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage } private Context getStyledContext() { -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/webauth/AuthenticatorImpl.java -@@ -102,14 +102,7 @@ public class AuthenticatorImpl extends HandlerResponseCallback implements Authen - - mMakeCredentialCallback = callback; - Context context = ContextUtils.getApplicationContext(); -- if (PackageUtils.getPackageVersion(context, GMSCORE_PACKAGE_NAME) -- < Fido2ApiHandler.GMSCORE_MIN_VERSION) { -- onError(AuthenticatorStatus.NOT_IMPLEMENTED); -- return; -- } -- -- mIsOperationPending = true; -- Fido2ApiHandler.getInstance().makeCredential(options, mRenderFrameHost, mOrigin, this); -+ onError(AuthenticatorStatus.NOT_IMPLEMENTED); - } - - /** -@@ -137,14 +130,7 @@ public class AuthenticatorImpl extends HandlerResponseCallback implements Authen - mGetAssertionCallback = callback; - Context context = ContextUtils.getApplicationContext(); - -- if (PackageUtils.getPackageVersion(context, GMSCORE_PACKAGE_NAME) -- < Fido2ApiHandler.GMSCORE_MIN_VERSION) { -- onError(AuthenticatorStatus.NOT_IMPLEMENTED); -- return; -- } -- -- mIsOperationPending = true; -- Fido2ApiHandler.getInstance().getAssertion(options, mRenderFrameHost, mOrigin, this); -+ onError(AuthenticatorStatus.NOT_IMPLEMENTED); - } - - /** -@@ -177,15 +163,8 @@ public class AuthenticatorImpl extends HandlerResponseCallback implements Authen - return; - } - -- if (PackageUtils.getPackageVersion(context, GMSCORE_PACKAGE_NAME) -- < Fido2ApiHandler.GMSCORE_MIN_VERSION) { -- callback.call(false); -- return; -- } -- -- mIsUserVerifyingPlatformAuthenticatorAvailableCallbackQueue.add(callback); -- Fido2ApiHandler.getInstance().isUserVerifyingPlatformAuthenticatorAvailable( -- mRenderFrameHost, this); -+ callback.call(false); -+ return; - } - - /** diff --git a/chrome/android/modules/chrome_feature_modules.gni b/chrome/android/modules/chrome_feature_modules.gni --- a/chrome/android/modules/chrome_feature_modules.gni +++ b/chrome/android/modules/chrome_feature_modules.gni @@ -1401,7 +1335,7 @@ diff --git a/chrome/android/modules/chrome_feature_modules.gni b/chrome/android/ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -5926,8 +5926,6 @@ static_library("browser") { +@@ -5943,8 +5943,6 @@ static_library("browser") { "offline_pages/offliner_helper.h", "offline_pages/offliner_user_data.cc", "offline_pages/offliner_user_data.h", @@ -1413,7 +1347,12 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/language/android/BUILD.gn b/chrome/browser/language/android/BUILD.gn --- a/chrome/browser/language/android/BUILD.gn +++ b/chrome/browser/language/android/BUILD.gn -@@ -13,7 +13,6 @@ android_library("base_module_java") { +@@ -9,12 +9,10 @@ android_library("base_module_java") { + sources = [ + "java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java", + "java/src/org/chromium/chrome/browser/language/GlobalAppLocaleController.java", +- "java/src/org/chromium/chrome/browser/language/LanguageSplitInstaller.java", + ] deps = [ "//base:base_java", "//chrome/browser/preferences:java", @@ -1424,42 +1363,38 @@ diff --git a/chrome/browser/language/android/BUILD.gn b/chrome/browser/language/ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java --- a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java +++ b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java -@@ -8,10 +8,6 @@ import android.content.Context; - import android.preference.PreferenceManager; - import android.text.TextUtils; - --import com.google.android.play.core.splitinstall.SplitInstallManager; --import com.google.android.play.core.splitinstall.SplitInstallManagerFactory; --import com.google.android.play.core.splitinstall.SplitInstallRequest; +@@ -52,32 +52,4 @@ public class AppLocaleUtils { + return PreferenceManager.getDefaultSharedPreferences(base).getString( + ChromePreferenceKeys.APPLICATION_OVERRIDE_LANGUAGE, SYSTEM_LANGUAGE_VALUE); + } - - import org.chromium.base.BundleUtils; - import org.chromium.base.ContextUtils; - import org.chromium.chrome.browser.preferences.ChromePreferenceKeys; -@@ -69,25 +65,5 @@ public class AppLocaleUtils { - public static void setAppLanguagePref(String languageName) { - SharedPreferencesManager.getInstance().writeString( - ChromePreferenceKeys.APPLICATION_OVERRIDE_LANGUAGE, languageName); -- if (BundleUtils.isBundle()) { -- ensureLanguageSplitInstalled(languageName); -- } +- /** +- * Set the application language shared preference and download the language split if needed. If +- * set to null the system language will be used. +- * @param languageName String BCP-47 code of language to download. +- */ +- public static void setAppLanguagePref(String languageName) { +- setAppLanguagePref(languageName, success -> {}); - } - - /** -- * For bundle builds ensure that the language split for languageName is downloaded. +- * Set the application language shared preference and download the language split using the +- * provided listener for callbacks. If called from an APK build where no bundle needs to be +- * downloaded the listener's on complete function is immediately called, triggering the success +- * UI. If languageName is null the system language will be used. +- * @param languageName String BCP-47 code of language to download. +- * @param listener LanguageSplitInstaller.InstallListener to use for callbacks. - */ -- private static void ensureLanguageSplitInstalled(String languageName) { -- SplitInstallManager splitInstallManager = -- SplitInstallManagerFactory.create(ContextUtils.getApplicationContext()); -- -- // TODO(perrier): check if languageName is already installed. https://crbug.com/1103806 -- if (!TextUtils.equals(languageName, SYSTEM_LANGUAGE_VALUE)) { -- SplitInstallRequest installRequest = -- SplitInstallRequest.newBuilder() -- .addLanguage(Locale.forLanguageTag(languageName)) -- .build(); -- splitInstallManager.startInstall(installRequest); +- public static void setAppLanguagePref( +- String languageName, LanguageSplitInstaller.InstallListener listener) { +- SharedPreferencesManager.getInstance().writeString( +- ChromePreferenceKeys.APPLICATION_OVERRIDE_LANGUAGE, languageName); +- if (BundleUtils.isBundle() && !TextUtils.equals(languageName, SYSTEM_LANGUAGE_VALUE)) { +- LanguageSplitInstaller.getInstance().installLanguage(languageName, listener); +- } else { +- listener.onComplete(true); - } - } +- } } diff --git a/chrome/browser/offline_pages/prefetch/prefetch_service_factory.cc b/chrome/browser/offline_pages/prefetch/prefetch_service_factory.cc --- a/chrome/browser/offline_pages/prefetch/prefetch_service_factory.cc @@ -1512,21 +1447,10 @@ diff --git a/chrome/browser/push_messaging/push_messaging_service_factory.cc b/c } // static -diff --git a/chrome/browser/signin/services/android/BUILD.gn b/chrome/browser/signin/services/android/BUILD.gn ---- a/chrome/browser/signin/services/android/BUILD.gn -+++ b/chrome/browser/signin/services/android/BUILD.gn -@@ -27,7 +27,6 @@ android_library("java") { - ] - deps = [ - ":java_resources", -- "$google_play_services_package:google_play_services_auth_base_java", - "//base:base_java", - "//base:jni_java", - "//chrome/browser/preferences:java", diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn --- a/chrome/browser/ui/BUILD.gn +++ b/chrome/browser/ui/BUILD.gn -@@ -230,8 +230,6 @@ static_library("ui") { +@@ -231,8 +231,6 @@ static_library("ui") { "webui/flags/flags_ui.h", "webui/flags/flags_ui_handler.cc", "webui/flags/flags_ui_handler.h", @@ -1535,8 +1459,8 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn "webui/internals/internals_ui.cc", "webui/internals/internals_ui.h", "webui/interstitials/interstitial_ui.cc", -@@ -439,7 +437,6 @@ static_library("ui") { - "//components/feedback", +@@ -445,7 +443,6 @@ static_library("ui") { + "//components/feedback/content", "//components/find_in_page", "//components/flags_ui", - "//components/gcm_driver", @@ -1554,7 +1478,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom #include "chrome/browser/ui/webui/internals/internals_ui.h" #include "chrome/browser/ui/webui/interstitials/interstitial_ui.h" #include "chrome/browser/ui/webui/invalidations/invalidations_ui.h" -@@ -540,8 +539,6 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, +@@ -558,8 +557,6 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, return &NewWebUI; if (url.host_piece() == chrome::kChromeUIFlagsHost) return &NewWebUI; @@ -1566,7 +1490,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom diff --git a/chrome/test/android/BUILD.gn b/chrome/test/android/BUILD.gn --- a/chrome/test/android/BUILD.gn +++ b/chrome/test/android/BUILD.gn -@@ -259,8 +259,6 @@ android_library("chrome_java_test_support") { +@@ -258,8 +258,6 @@ android_library("chrome_java_test_support") { ] deps = [ @@ -1617,7 +1541,7 @@ diff --git a/components/background_task_scheduler/internal/BUILD.gn b/components "//base:base_java", "//components/background_task_scheduler:background_task_scheduler_task_ids_java", "//components/background_task_scheduler:public_java", -@@ -99,10 +93,6 @@ if (is_android) { +@@ -98,10 +92,6 @@ if (is_android) { deps = [ ":internal_java", @@ -2247,9 +2171,9 @@ diff --git a/components/gcm_driver/instance_id/android/BUILD.gn b/components/gcm deps = [ - "$google_play_services_package:google_play_services_iid_java", "//base:base_java", - "//base:jni_java", "//components/gcm_driver/android:gcm_driver_java", -@@ -28,14 +27,12 @@ android_library("instance_id_driver_java") { + "//third_party/androidx:androidx_annotation_annotation_java", +@@ -27,14 +26,12 @@ android_library("instance_id_driver_java") { sources = [ "java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java", @@ -2377,9 +2301,9 @@ diff --git a/components/media_router/browser/android/BUILD.gn b/components/media - "$google_play_services_package:google_play_services_cast_framework_java", - "$google_play_services_package:google_play_services_cast_java", "//base:base_java", - "//base:jni_java", "//components/browser_ui/media/android:java", -@@ -76,8 +72,6 @@ android_library("java") { + "//content/public/android:content_java", +@@ -75,8 +71,6 @@ android_library("java") { android_library("cast_options_provider_java") { sources = [ "java/src/org/chromium/components/media_router/caf/CastOptionsProvider.java" ] deps = [ @@ -2388,7 +2312,7 @@ diff --git a/components/media_router/browser/android/BUILD.gn b/components/media ] } -@@ -143,9 +137,6 @@ java_library("junit") { +@@ -142,9 +136,6 @@ java_library("junit") { deps = [ ":java", ":test_support_java", @@ -3844,15 +3768,15 @@ diff --git a/components/media_router/test/android/cast_emulator/BUILD.gn b/compo diff --git a/components/module_installer/android/BUILD.gn b/components/module_installer/android/BUILD.gn --- a/components/module_installer/android/BUILD.gn +++ b/components/module_installer/android/BUILD.gn -@@ -37,7 +37,6 @@ android_library("module_installer_java") { - "//base:jni_java", +@@ -36,7 +36,6 @@ android_library("module_installer_java") { + "//base:base_java", "//components/crash/android:java", "//third_party/androidx:androidx_annotation_annotation_java", - "//third_party/google_android_play_core:com_google_android_play_core_java", ] annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ] -@@ -60,7 +59,6 @@ junit_binary("module_installer_junit_tests") { +@@ -59,7 +58,6 @@ junit_binary("module_installer_junit_tests") { "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", @@ -3860,17 +3784,6 @@ diff --git a/components/module_installer/android/BUILD.gn b/components/module_in "//third_party/hamcrest:hamcrest_java", ] } -diff --git a/components/signin/core/browser/android/BUILD.gn b/components/signin/core/browser/android/BUILD.gn ---- a/components/signin/core/browser/android/BUILD.gn -+++ b/components/signin/core/browser/android/BUILD.gn -@@ -6,7 +6,6 @@ import("//build/config/android/rules.gni") - - android_library("java") { - deps = [ -- "$google_play_services_package:google_play_services_base_java", - "//base:base_java", - "//base:jni_java", - "//net/android:net_java", diff --git a/components/signin/public/android/BUILD.gn b/components/signin/public/android/BUILD.gn --- a/components/signin/public/android/BUILD.gn +++ b/components/signin/public/android/BUILD.gn @@ -3881,8 +3794,24 @@ diff --git a/components/signin/public/android/BUILD.gn b/components/signin/publi - "$google_play_services_package:google_play_services_auth_base_java", - "$google_play_services_package:google_play_services_base_java", "//base:base_java", - "//base:jni_java", - "//components/signin/core/browser/android:java", + "//net/android:net_java", + "//third_party/android_deps:android_support_v4_java", +@@ -24,7 +22,6 @@ android_library("java") { + "java/src/org/chromium/components/signin/AccountManagerFacadeImpl.java", + "java/src/org/chromium/components/signin/AccountManagerFacadeProvider.java", + "java/src/org/chromium/components/signin/AccountManagerResult.java", +- "java/src/org/chromium/components/signin/AccountRenameChecker.java", + "java/src/org/chromium/components/signin/AccountTrackerService.java", + "java/src/org/chromium/components/signin/AccountUtils.java", + "java/src/org/chromium/components/signin/AccountsChangeObserver.java", +@@ -137,7 +134,6 @@ java_library("junit") { + deps = [ + ":java", + ":signin_java_test_support", +- "$google_play_services_package:google_play_services_auth_base_java", + "//base:base_java", + "//base:base_java_test_support", + "//base:base_junit_test_support", diff --git a/components/signin/public/android/java/src/org/chromium/components/signin/GmsAvailabilityException.java b/components/signin/public/android/java/src/org/chromium/components/signin/GmsAvailabilityException.java --- a/components/signin/public/android/java/src/org/chromium/components/signin/GmsAvailabilityException.java +++ b/components/signin/public/android/java/src/org/chromium/components/signin/GmsAvailabilityException.java @@ -3935,7 +3864,7 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s } @Override -@@ -182,11 +169,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -186,11 +173,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { @Override public boolean isGooglePlayServicesAvailable() { @@ -3948,6 +3877,87 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s } protected boolean hasGetAccountsPermission() { +diff --git a/components/webauthn/android/BUILD.gn b/components/webauthn/android/BUILD.gn +--- a/components/webauthn/android/BUILD.gn ++++ b/components/webauthn/android/BUILD.gn +@@ -12,9 +12,6 @@ android_library("java") { + sources = [ + "java/src/org/chromium/components/webauthn/AuthenticatorFactory.java", + "java/src/org/chromium/components/webauthn/AuthenticatorImpl.java", +- "java/src/org/chromium/components/webauthn/Fido2ApiHandler.java", +- "java/src/org/chromium/components/webauthn/Fido2CredentialRequest.java", +- "java/src/org/chromium/components/webauthn/Fido2Helper.java", + "java/src/org/chromium/components/webauthn/FidoErrorResponseCallback.java", + "java/src/org/chromium/components/webauthn/GetAssertionResponseCallback.java", + "java/src/org/chromium/components/webauthn/IsUvpaaResponseCallback.java", +@@ -22,8 +19,6 @@ android_library("java") { + ] + annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ] + deps = [ +- "$google_play_services_package:google_play_services_fido_java", +- "$google_play_services_package:google_play_services_tasks_java", + "//base:base_java", + "//base:jni_java", + "//components/externalauth/android:java", +diff --git a/components/webauthn/android/java/src/org/chromium/components/webauthn/AuthenticatorImpl.java b/components/webauthn/android/java/src/org/chromium/components/webauthn/AuthenticatorImpl.java +--- a/components/webauthn/android/java/src/org/chromium/components/webauthn/AuthenticatorImpl.java ++++ b/components/webauthn/android/java/src/org/chromium/components/webauthn/AuthenticatorImpl.java +@@ -81,18 +81,7 @@ public class AuthenticatorImpl implements Authenticator { + } + + mMakeCredentialCallback = callback; +- Context context = ContextUtils.getApplicationContext(); +- if (PackageUtils.getPackageVersion(context, GMSCORE_PACKAGE_NAME) +- < Fido2ApiHandler.GMSCORE_MIN_VERSION) { +- onError(AuthenticatorStatus.NOT_IMPLEMENTED); +- return; +- } +- +- mIsOperationPending = true; +- Fido2ApiHandler.getInstance().makeCredential(options, mRenderFrameHost, mOrigin, +- (status, response) +- -> onRegisterResponse(status, response), +- status -> onError(status)); ++ onError(AuthenticatorStatus.NOT_IMPLEMENTED); + } + + @Override +@@ -104,17 +93,7 @@ public class AuthenticatorImpl implements Authenticator { + } + + mGetAssertionCallback = callback; +- Context context = ContextUtils.getApplicationContext(); +- +- if (PackageUtils.getPackageVersion(context, GMSCORE_PACKAGE_NAME) +- < Fido2ApiHandler.GMSCORE_MIN_VERSION) { +- onError(AuthenticatorStatus.NOT_IMPLEMENTED); +- return; +- } +- +- mIsOperationPending = true; +- Fido2ApiHandler.getInstance().getAssertion(options, mRenderFrameHost, mOrigin, +- (status, response) -> onSignResponse(status, response), status -> onError(status)); ++ onError(AuthenticatorStatus.NOT_IMPLEMENTED); + } + + @Override +@@ -133,16 +112,8 @@ public class AuthenticatorImpl implements Authenticator { + return; + } + +- if (PackageUtils.getPackageVersion(context, GMSCORE_PACKAGE_NAME) +- < Fido2ApiHandler.GMSCORE_MIN_VERSION) { + callback.call(false); + return; +- } +- +- mIsUserVerifyingPlatformAuthenticatorAvailableCallbackQueue.add(callback); +- Fido2ApiHandler.getInstance().isUserVerifyingPlatformAuthenticatorAvailable( +- mRenderFrameHost, +- isUvpaa -> onIsUserVerifyingPlatformAuthenticatorAvailableResponse(isUvpaa)); + } + + @Override diff --git a/content/browser/push_messaging/push_messaging_manager.cc b/content/browser/push_messaging/push_messaging_manager.cc --- a/content/browser/push_messaging/push_messaging_manager.cc +++ b/content/browser/push_messaging/push_messaging_manager.cc @@ -3967,7 +3977,7 @@ diff --git a/content/browser/push_messaging/push_messaging_manager.cc b/content/ diff --git a/content/public/android/BUILD.gn b/content/public/android/BUILD.gn --- a/content/public/android/BUILD.gn +++ b/content/public/android/BUILD.gn -@@ -136,10 +136,6 @@ android_library("content_main_dex_java") { +@@ -135,10 +135,6 @@ android_library("content_main_dex_java") { android_library("content_full_java") { deps = [ ":content_main_dex_java", @@ -3976,12 +3986,12 @@ diff --git a/content/public/android/BUILD.gn b/content/public/android/BUILD.gn - "$google_play_services_package:google_play_services_basement_java", - "$google_play_services_package:google_play_services_tasks_java", "//base:base_java", - "//base:jni_java", "//build:chromeos_buildflags", + "//components/download/public/common:public_java", diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc --- a/content/public/common/content_features.cc +++ b/content/public/common/content_features.cc -@@ -830,7 +830,7 @@ const base::Feature kWebAssemblyTrapHandler{"WebAssemblyTrapHandler", +@@ -834,7 +834,7 @@ const base::Feature kWebAssemblyTrapHandler{"WebAssemblyTrapHandler", // Controls whether the WebAuthentication API is enabled: // https://w3c.github.io/webauthn const base::Feature kWebAuth{"WebAuthentication", @@ -3993,7 +4003,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn --- a/content/test/BUILD.gn +++ b/content/test/BUILD.gn -@@ -2656,10 +2656,6 @@ if (is_android) { +@@ -2707,10 +2707,6 @@ if (is_android) { testonly = true sources = content_java_sources_needing_jni deps = [ @@ -4007,9 +4017,9 @@ diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn diff --git a/device/BUILD.gn b/device/BUILD.gn --- a/device/BUILD.gn +++ b/device/BUILD.gn -@@ -428,9 +428,6 @@ if (is_android) { - junit_binary("device_junit_tests") { - sources = [ "gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java" ] +@@ -431,9 +431,6 @@ if (is_android) { + "gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java", + ] deps = [ - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", @@ -4033,7 +4043,7 @@ diff --git a/remoting/android/client_java_tmpl.gni b/remoting/android/client_jav diff --git a/services/BUILD.gn b/services/BUILD.gn --- a/services/BUILD.gn +++ b/services/BUILD.gn -@@ -104,11 +104,6 @@ if (is_android) { +@@ -110,11 +110,6 @@ if (is_android) { "shape_detection/android/junit/src/org/chromium/shape_detection/BitmapUtilsTest.java", ] deps = [ @@ -4045,7 +4055,7 @@ diff --git a/services/BUILD.gn b/services/BUILD.gn "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", -@@ -137,10 +132,6 @@ if (is_android) { +@@ -143,10 +138,6 @@ if (is_android) { "shape_detection/android/javatests/src/org/chromium/shape_detection/TextDetectionImplTest.java", ] deps = [ @@ -4067,8 +4077,8 @@ diff --git a/services/device/geolocation/BUILD.gn b/services/device/geolocation/ - "$google_play_services_package:google_play_services_basement_java", - "$google_play_services_package:google_play_services_location_java", "//base:base_java", - "//base:jni_java", "//components/location/android:location_java", + "//services/device/public/java:geolocation_java", diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD.gn --- a/services/shape_detection/BUILD.gn +++ b/services/shape_detection/BUILD.gn @@ -4086,575 +4096,592 @@ diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD. diff --git a/third_party/android_deps/BUILD.gn b/third_party/android_deps/BUILD.gn --- a/third_party/android_deps/BUILD.gn +++ b/third_party/android_deps/BUILD.gn -@@ -62,7 +62,6 @@ java_group("robolectric_all_java") { - ":org_robolectric_shadowapi_java", - ":org_robolectric_shadows_framework_java", - ":org_robolectric_shadows_multidex_java", -- ":org_robolectric_shadows_playservices_java", - ":org_robolectric_utils_java", - ":org_robolectric_utils_reflector_java", - "//third_party/robolectric:android-all-10-robolectric-5803371_java", -@@ -90,7 +89,7 @@ java_annotation_processor("auto_service_processor") { +@@ -68,7 +68,6 @@ if (build_with_chromium) { + ":org_robolectric_shadowapi_java", + ":org_robolectric_shadows_framework_java", + ":org_robolectric_shadows_multidex_java", +- ":org_robolectric_shadows_playservices_java", + ":org_robolectric_utils_java", + ":org_robolectric_utils_reflector_java", - android_library("chromium_play_services_availability_java") { - sources = [ "util/org/chromium/gms/ChromiumPlayServicesAvailability.java" ] -- deps = [ "$google_play_services_package:google_play_services_base_java" ] -+ deps = [ ] - } +@@ -92,7 +91,7 @@ if (build_with_chromium) { - android_library("chromium_play_services_availability_shadows_java") { -@@ -383,202 +382,6 @@ android_aar_prebuilt("com_android_support_viewpager_java") { - resource_overlay = true - } + android_library("chromium_play_services_availability_java") { + sources = [ "util/org/chromium/gms/ChromiumPlayServicesAvailability.java" ] +- deps = [ "$google_play_services_package:google_play_services_base_java" ] ++ deps = [ ] + } --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_auth_java") { -- aar_path = "libs/com_google_android_gms_play_services_auth/play-services-auth-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_auth/com_google_android_gms_play_services_auth.info" -- deps = [ -- ":google_play_services_auth_api_phone_java", -- ":google_play_services_auth_base_java", -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- "//third_party/androidx:androidx_fragment_fragment_java", -- "//third_party/androidx:androidx_loader_loader_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_auth_api_phone_java") { -- aar_path = "libs/com_google_android_gms_play_services_auth_api_phone/play-services-auth-api-phone-17.5.0.aar" -- info_path = "libs/com_google_android_gms_play_services_auth_api_phone/com_google_android_gms_play_services_auth_api_phone.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_auth_base_java") { -- aar_path = "libs/com_google_android_gms_play_services_auth_base/play-services-auth-base-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_auth_base/com_google_android_gms_play_services_auth_base.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- "//third_party/androidx:androidx_collection_collection_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_base_java") { -- aar_path = "libs/com_google_android_gms_play_services_base/play-services-base-17.5.0.aar" -- info_path = "libs/com_google_android_gms_play_services_base/com_google_android_gms_play_services_base.info" -- deps = [ -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- "//third_party/androidx:androidx_collection_collection_java", -- "//third_party/androidx:androidx_core_core_java", -- "//third_party/androidx:androidx_fragment_fragment_java", -- ] -- bytecode_rewriter_target = -- "//build/android/bytecode:fragment_activity_replacer" --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_basement_java") { -- aar_path = "libs/com_google_android_gms_play_services_basement/play-services-basement-17.5.0.aar" -- info_path = "libs/com_google_android_gms_play_services_basement/com_google_android_gms_play_services_basement.info" -- deps = [ -- "//third_party/androidx:androidx_collection_collection_java", -- "//third_party/androidx:androidx_core_core_java", -- "//third_party/androidx:androidx_fragment_fragment_java", -- ] -- -- # https://crbug.com/989505 -- jar_excluded_patterns = [ "META-INF/proguard/*" ] -- input_jars_paths = [ "$android_sdk/optional/org.apache.http.legacy.jar" ] -- bytecode_rewriter_target = -- "//build/android/bytecode:fragment_activity_replacer" --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_cast_java") { -- aar_path = "libs/com_google_android_gms_play_services_cast/play-services-cast-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_cast/com_google_android_gms_play_services_cast.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_flags_java", -- ":google_play_services_tasks_java", -- "//third_party/androidx:androidx_core_core_java", -- "//third_party/androidx:androidx_mediarouter_mediarouter_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_cast_framework_java") { -- aar_path = "libs/com_google_android_gms_play_services_cast_framework/play-services-cast-framework-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_cast_framework/com_google_android_gms_play_services_cast_framework.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_cast_java", -- "//third_party/androidx:androidx_appcompat_appcompat_java", -- "//third_party/androidx:androidx_collection_collection_java", -- "//third_party/androidx:androidx_core_core_java", -- "//third_party/androidx:androidx_fragment_fragment_java", -- "//third_party/androidx:androidx_media_media_java", -- "//third_party/androidx:androidx_mediarouter_mediarouter_java", -- "//third_party/androidx:androidx_recyclerview_recyclerview_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_fido_java") { -- aar_path = "libs/com_google_android_gms_play_services_fido/play-services-fido-19.0.0-beta.aar" -- info_path = "libs/com_google_android_gms_play_services_fido/com_google_android_gms_play_services_fido.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_gcm_java") { -- aar_path = "libs/com_google_android_gms_play_services_gcm/play-services-gcm-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_gcm/com_google_android_gms_play_services_gcm.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_iid_java", -- ":google_play_services_stats_java", -- "//third_party/androidx:androidx_collection_collection_java", -- "//third_party/androidx:androidx_core_core_java", -- "//third_party/androidx:androidx_legacy_legacy_support_core_utils_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_iid_java") { -- aar_path = "libs/com_google_android_gms_play_services_iid/play-services-iid-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_iid/com_google_android_gms_play_services_iid.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_stats_java", -- ":google_play_services_tasks_java", -- "//third_party/androidx:androidx_collection_collection_java", -- "//third_party/androidx:androidx_core_core_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_instantapps_java") { -- aar_path = "libs/com_google_android_gms_play_services_instantapps/play-services-instantapps-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_instantapps/com_google_android_gms_play_services_instantapps.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_location_java") { -- aar_path = "libs/com_google_android_gms_play_services_location/play-services-location-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_location/com_google_android_gms_play_services_location.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_places_placereport_java", -- ":google_play_services_tasks_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_tasks_java") { -- aar_path = "libs/com_google_android_gms_play_services_tasks/play-services-tasks-17.2.0.aar" -- info_path = "libs/com_google_android_gms_play_services_tasks/com_google_android_gms_play_services_tasks.info" -- deps = [ ":google_play_services_basement_java" ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_vision_java") { -- aar_path = "libs/com_google_android_gms_play_services_vision/play-services-vision-18.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_vision/com_google_android_gms_play_services_vision.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_vision_common_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_vision_common_java") { -- aar_path = "libs/com_google_android_gms_play_services_vision_common/play-services-vision-common-18.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_vision_common/com_google_android_gms_play_services_vision_common.info" -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_clearcut_java", -- ":google_play_services_flags_java", -- ":google_play_services_phenotype_java", -- ] --} -- - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - android_aar_prebuilt("com_google_android_material_material_java") { - aar_path = -@@ -746,33 +549,6 @@ java_prebuilt("com_google_errorprone_javac_java") { - enable_bytecode_checks = false - } + android_library("chromium_play_services_availability_shadows_java") { +@@ -1022,210 +1021,6 @@ if (build_with_chromium) { + resource_overlay = true + } --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_firebase_firebase_messaging_java") { -- aar_path = "libs/com_google_firebase_firebase_messaging/firebase-messaging-21.0.1.aar" -- info_path = "libs/com_google_firebase_firebase_messaging/com_google_firebase_firebase_messaging.info" -- deps = [ -- ":google_android_datatransport_transport_api_java", -- ":google_firebase_firebase_common_java", -- ":google_firebase_firebase_components_java", -- ":google_firebase_firebase_encoders_java", -- ":google_firebase_firebase_encoders_json_java", -- ":google_firebase_firebase_iid_java", -- ":google_firebase_firebase_installations_interop_java", -- ":google_firebase_firebase_installations_java", -- ":google_firebase_firebase_measurement_connector_java", -- ":google_play_services_basement_java", -- ":google_play_services_cloud_messaging_java", -- ":google_play_services_stats_java", -- ":google_play_services_tasks_java", -- "//third_party/androidx:androidx_collection_collection_java", -- "//third_party/androidx:androidx_core_core_java", -- ] +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_auth_java") { +- aar_path = "libs/com_google_android_gms_play_services_auth/play-services-auth-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_auth/com_google_android_gms_play_services_auth.info" +- deps = [ +- ":google_play_services_auth_api_phone_java", +- ":google_play_services_auth_base_java", +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_tasks_java", +- "//third_party/androidx:androidx_fragment_fragment_java", +- "//third_party/androidx:androidx_loader_loader_java", +- ] +- } - -- # We removed the datatransport dependency to reduce binary size. -- # The library works without it as it's only used for logging. -- enable_bytecode_checks = false --} +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_auth_api_phone_java") { +- aar_path = "libs/com_google_android_gms_play_services_auth_api_phone/play-services-auth-api-phone-17.5.0.aar" +- info_path = "libs/com_google_android_gms_play_services_auth_api_phone/com_google_android_gms_play_services_auth_api_phone.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_tasks_java", +- ] +- } - - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - java_prebuilt("com_google_guava_failureaccess_java") { - jar_path = "libs/com_google_guava_failureaccess/failureaccess-1.0.1.jar" -@@ -1016,20 +792,6 @@ java_prebuilt("org_robolectric_shadows_multidex_java") { - bypass_platform_checks = true - } +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_auth_base_java") { +- aar_path = "libs/com_google_android_gms_play_services_auth_base/play-services-auth-base-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_auth_base/com_google_android_gms_play_services_auth_base.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_tasks_java", +- "//third_party/androidx:androidx_collection_collection_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_base_java") { +- aar_path = "libs/com_google_android_gms_play_services_base/play-services-base-17.5.0.aar" +- info_path = "libs/com_google_android_gms_play_services_base/com_google_android_gms_play_services_base.info" +- deps = [ +- ":google_play_services_basement_java", +- ":google_play_services_tasks_java", +- "//third_party/androidx:androidx_collection_collection_java", +- "//third_party/androidx:androidx_core_core_java", +- "//third_party/androidx:androidx_fragment_fragment_java", +- ] +- bytecode_rewriter_target = +- "//build/android/bytecode:fragment_activity_replacer" +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_basement_java") { +- aar_path = "libs/com_google_android_gms_play_services_basement/play-services-basement-17.5.0.aar" +- info_path = "libs/com_google_android_gms_play_services_basement/com_google_android_gms_play_services_basement.info" +- deps = [ +- "//third_party/androidx:androidx_collection_collection_java", +- "//third_party/androidx:androidx_core_core_java", +- "//third_party/androidx:androidx_fragment_fragment_java", +- ] +- +- jar_excluded_patterns = [] +- if (!enable_java_asserts) { +- # Omit the file since we use our own copy. +- jar_excluded_patterns += +- [ "com/google/android/gms/common/internal/Preconditions.class" ] +- deps += [ "//third_party/android_deps/local_modifications/preconditions:gms_stub_preconditions_java" ] +- } +- +- # https://crbug.com/989505 +- jar_excluded_patterns += [ "META-INF/proguard/*" ] +- input_jars_paths = [ "$android_sdk/optional/org.apache.http.legacy.jar" ] +- bytecode_rewriter_target = +- "//build/android/bytecode:fragment_activity_replacer" +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_cast_java") { +- aar_path = "libs/com_google_android_gms_play_services_cast/play-services-cast-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_cast/com_google_android_gms_play_services_cast.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_flags_java", +- ":google_play_services_tasks_java", +- "//third_party/androidx:androidx_core_core_java", +- "//third_party/androidx:androidx_mediarouter_mediarouter_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_cast_framework_java") { +- aar_path = "libs/com_google_android_gms_play_services_cast_framework/play-services-cast-framework-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_cast_framework/com_google_android_gms_play_services_cast_framework.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_cast_java", +- "//third_party/androidx:androidx_appcompat_appcompat_java", +- "//third_party/androidx:androidx_collection_collection_java", +- "//third_party/androidx:androidx_core_core_java", +- "//third_party/androidx:androidx_fragment_fragment_java", +- "//third_party/androidx:androidx_media_media_java", +- "//third_party/androidx:androidx_mediarouter_mediarouter_java", +- "//third_party/androidx:androidx_recyclerview_recyclerview_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_fido_java") { +- aar_path = "libs/com_google_android_gms_play_services_fido/play-services-fido-19.0.0-beta.aar" +- info_path = "libs/com_google_android_gms_play_services_fido/com_google_android_gms_play_services_fido.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_tasks_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_gcm_java") { +- aar_path = "libs/com_google_android_gms_play_services_gcm/play-services-gcm-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_gcm/com_google_android_gms_play_services_gcm.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_iid_java", +- ":google_play_services_stats_java", +- "//third_party/androidx:androidx_collection_collection_java", +- "//third_party/androidx:androidx_core_core_java", +- "//third_party/androidx:androidx_legacy_legacy_support_core_utils_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_iid_java") { +- aar_path = "libs/com_google_android_gms_play_services_iid/play-services-iid-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_iid/com_google_android_gms_play_services_iid.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_stats_java", +- ":google_play_services_tasks_java", +- "//third_party/androidx:androidx_collection_collection_java", +- "//third_party/androidx:androidx_core_core_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_instantapps_java") { +- aar_path = "libs/com_google_android_gms_play_services_instantapps/play-services-instantapps-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_instantapps/com_google_android_gms_play_services_instantapps.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_tasks_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_location_java") { +- aar_path = "libs/com_google_android_gms_play_services_location/play-services-location-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_location/com_google_android_gms_play_services_location.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_places_placereport_java", +- ":google_play_services_tasks_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_tasks_java") { +- aar_path = "libs/com_google_android_gms_play_services_tasks/play-services-tasks-17.2.0.aar" +- info_path = "libs/com_google_android_gms_play_services_tasks/com_google_android_gms_play_services_tasks.info" +- deps = [ ":google_play_services_basement_java" ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_vision_java") { +- aar_path = "libs/com_google_android_gms_play_services_vision/play-services-vision-18.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_vision/com_google_android_gms_play_services_vision.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_vision_common_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_vision_common_java") { +- aar_path = "libs/com_google_android_gms_play_services_vision_common/play-services-vision-common-18.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_vision_common/com_google_android_gms_play_services_vision_common.info" +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_clearcut_java", +- ":google_play_services_flags_java", +- ":google_play_services_phenotype_java", +- ] +- } +- + # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. + android_aar_prebuilt("com_google_android_material_material_java") { + aar_path = +@@ -1257,33 +1052,6 @@ if (build_with_chromium) { + ignore_proguard_configs = true + } --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --java_prebuilt("org_robolectric_shadows_playservices_java") { -- jar_path = -- "libs/org_robolectric_shadows_playservices/shadows-playservices-4.3.1.jar" -- output_name = "org_robolectric_shadows_playservices" -- enable_bytecode_checks = false -- testonly = true -- deps = [ -- ":com_google_guava_guava_java", -- ":org_robolectric_annotations_java", -- ] -- bypass_platform_checks = true --} +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_firebase_firebase_messaging_java") { +- aar_path = "libs/com_google_firebase_firebase_messaging/firebase-messaging-21.0.1.aar" +- info_path = "libs/com_google_firebase_firebase_messaging/com_google_firebase_firebase_messaging.info" +- deps = [ +- ":google_android_datatransport_transport_api_java", +- ":google_firebase_firebase_common_java", +- ":google_firebase_firebase_components_java", +- ":google_firebase_firebase_encoders_java", +- ":google_firebase_firebase_encoders_json_java", +- ":google_firebase_firebase_iid_java", +- ":google_firebase_firebase_installations_interop_java", +- ":google_firebase_firebase_installations_java", +- ":google_firebase_firebase_measurement_connector_java", +- ":google_play_services_basement_java", +- ":google_play_services_cloud_messaging_java", +- ":google_play_services_stats_java", +- ":google_play_services_tasks_java", +- "//third_party/androidx:androidx_collection_collection_java", +- "//third_party/androidx:androidx_core_core_java", +- ] - - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - java_prebuilt("org_robolectric_utils_java") { - jar_path = "libs/org_robolectric_utils/utils-4.3.1.jar" -@@ -1438,110 +1200,6 @@ android_aar_prebuilt("google_android_datatransport_transport_api_java") { - deps = [ "//third_party/androidx:androidx_annotation_annotation_java" ] - } +- # We removed the datatransport dependency to reduce binary size. +- # The library works without it as it's only used for logging. +- enable_bytecode_checks = false +- } +- + # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. + java_prebuilt("com_google_guava_guava_android_java") { + jar_path = "libs/com_google_guava_guava_android/guava-30.1-android.jar" +@@ -1396,19 +1164,6 @@ if (build_with_chromium) { + bypass_platform_checks = true + } --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_clearcut_java") { -- aar_path = "libs/com_google_android_gms_play_services_clearcut/play-services-clearcut-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_clearcut/com_google_android_gms_play_services_clearcut.info" +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- java_prebuilt("org_robolectric_shadows_playservices_java") { +- jar_path = "libs/org_robolectric_shadows_playservices/shadows-playservices-4.3.1.jar" +- output_name = "org_robolectric_shadows_playservices" +- enable_bytecode_checks = false +- testonly = true +- deps = [ +- ":com_google_guava_guava_java", +- ":org_robolectric_annotations_java", +- ] +- bypass_platform_checks = true +- } - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_phenotype_java", -- ":google_play_services_tasks_java", -- "//third_party/androidx:androidx_core_core_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_cloud_messaging_java") { -- aar_path = "libs/com_google_android_gms_play_services_cloud_messaging/play-services-cloud-messaging-16.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_cloud_messaging/com_google_android_gms_play_services_cloud_messaging.info" -- -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_flags_java") { -- aar_path = "libs/com_google_android_gms_play_services_flags/play-services-flags-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_flags/com_google_android_gms_play_services_flags.info" -- -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_phenotype_java") { -- aar_path = "libs/com_google_android_gms_play_services_phenotype/play-services-phenotype-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_phenotype/com_google_android_gms_play_services_phenotype.info" -- -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- "//third_party/androidx:androidx_core_core_java", -- ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_places_placereport_java") { -- aar_path = "libs/com_google_android_gms_play_services_places_placereport/play-services-places-placereport-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_places_placereport/com_google_android_gms_play_services_places_placereport.info" -- -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ ":google_play_services_basement_java" ] --} -- --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_play_services_stats_java") { -- aar_path = "libs/com_google_android_gms_play_services_stats/play-services-stats-17.0.0.aar" -- info_path = "libs/com_google_android_gms_play_services_stats/com_google_android_gms_play_services_stats.info" -- -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_play_services_basement_java", -- "//third_party/androidx:androidx_legacy_legacy_support_core_utils_java", -- ] --} -- - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - java_prebuilt("com_google_auto_auto_common_java") { - jar_path = "libs/com_google_auto_auto_common/auto-common-0.10.jar" -@@ -1673,182 +1331,6 @@ java_prebuilt("google_firebase_firebase_annotations_java") { - ] - } + # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. + java_prebuilt("org_robolectric_utils_java") { + jar_path = "libs/org_robolectric_utils/utils-4.3.1.jar" +@@ -1785,110 +1540,6 @@ if (build_with_chromium) { + deps = [ "//third_party/androidx:androidx_annotation_annotation_java" ] + } --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_firebase_firebase_common_java") { -- aar_path = -- "libs/com_google_firebase_firebase_common/firebase-common-19.5.0.aar" -- info_path = "libs/com_google_firebase_firebase_common/com_google_firebase_firebase_common.info" +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_clearcut_java") { +- aar_path = "libs/com_google_android_gms_play_services_clearcut/play-services-clearcut-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_clearcut/com_google_android_gms_play_services_clearcut.info" - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_firebase_firebase_components_java", -- ":google_play_services_basement_java", -- ":google_play_services_tasks_java", -- ] +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_phenotype_java", +- ":google_play_services_tasks_java", +- "//third_party/androidx:androidx_core_core_java", +- ] +- } - -- # Ignore missing kotlin.KotlinVersion definition in -- # com.google.firebase.platforminfo.KotlinDetector. -- enable_bytecode_checks = false --} +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_cloud_messaging_java") { +- aar_path = "libs/com_google_android_gms_play_services_cloud_messaging/play-services-cloud-messaging-16.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_cloud_messaging/com_google_android_gms_play_services_cloud_messaging.info" - --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_firebase_firebase_components_java") { -- aar_path = "libs/com_google_firebase_firebase_components/firebase-components-16.1.0.aar" -- info_path = "libs/com_google_firebase_firebase_components/com_google_firebase_firebase_components.info" +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_play_services_basement_java", +- ":google_play_services_tasks_java", +- ] +- } - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_firebase_firebase_annotations_java", -- "//third_party/androidx:androidx_annotation_annotation_java", -- ] +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_flags_java") { +- aar_path = "libs/com_google_android_gms_play_services_flags/play-services-flags-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_flags/com_google_android_gms_play_services_flags.info" - -- # Can't find com.google.firebase.components.Component$ComponentType. -- enable_bytecode_checks = false --} +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ] +- } - --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --java_prebuilt("google_firebase_firebase_encoders_java") { -- jar_path = -- "libs/com_google_firebase_firebase_encoders/firebase-encoders-16.1.0.jar" -- output_name = "com_google_firebase_firebase_encoders" -- supports_android = true +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_phenotype_java") { +- aar_path = "libs/com_google_android_gms_play_services_phenotype/play-services-phenotype-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_phenotype/com_google_android_gms_play_services_phenotype.info" - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ "//third_party/androidx:androidx_annotation_annotation_java" ] --} +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ":google_play_services_tasks_java", +- "//third_party/androidx:androidx_core_core_java", +- ] +- } - --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_firebase_firebase_encoders_json_java") { -- aar_path = "libs/com_google_firebase_firebase_encoders_json/firebase-encoders-json-17.1.0.aar" -- info_path = "libs/com_google_firebase_firebase_encoders_json/com_google_firebase_firebase_encoders_json.info" +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_places_placereport_java") { +- aar_path = "libs/com_google_android_gms_play_services_places_placereport/play-services-places-placereport-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_places_placereport/com_google_android_gms_play_services_places_placereport.info" - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_firebase_firebase_encoders_java", -- "//third_party/androidx:androidx_annotation_annotation_java", -- ] --} +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ ":google_play_services_basement_java" ] +- } - --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_firebase_firebase_iid_java") { -- aar_path = "libs/com_google_firebase_firebase_iid/firebase-iid-21.0.1.aar" -- info_path = "libs/com_google_firebase_firebase_iid/com_google_firebase_firebase_iid.info" +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_play_services_stats_java") { +- aar_path = "libs/com_google_android_gms_play_services_stats/play-services-stats-17.0.0.aar" +- info_path = "libs/com_google_android_gms_play_services_stats/com_google_android_gms_play_services_stats.info" - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_firebase_firebase_common_java", -- ":google_firebase_firebase_components_java", -- ":google_firebase_firebase_iid_interop_java", -- ":google_firebase_firebase_installations_interop_java", -- ":google_firebase_firebase_installations_java", -- ":google_play_services_basement_java", -- ":google_play_services_cloud_messaging_java", -- ":google_play_services_stats_java", -- ":google_play_services_tasks_java", -- "//third_party/androidx:androidx_collection_collection_java", -- "//third_party/androidx:androidx_core_core_java", -- "//third_party/androidx:androidx_legacy_legacy_support_core_utils_java", -- ] --} +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_play_services_basement_java", +- "//third_party/androidx:androidx_legacy_legacy_support_core_utils_java", +- ] +- } - --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_firebase_firebase_iid_interop_java") { -- aar_path = "libs/com_google_firebase_firebase_iid_interop/firebase-iid-interop-17.0.0.aar" -- info_path = "libs/com_google_firebase_firebase_iid_interop/com_google_firebase_firebase_iid_interop.info" + # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. + java_prebuilt("google_firebase_firebase_annotations_java") { + jar_path = "libs/com_google_firebase_firebase_annotations/firebase-annotations-16.0.0.jar" +@@ -1903,181 +1554,6 @@ if (build_with_chromium) { + ] + } + +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_firebase_firebase_common_java") { +- aar_path = +- "libs/com_google_firebase_firebase_common/firebase-common-19.5.0.aar" +- info_path = "libs/com_google_firebase_firebase_common/com_google_firebase_firebase_common.info" - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_play_services_base_java", -- ":google_play_services_basement_java", -- ] --} +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_firebase_firebase_components_java", +- ":google_play_services_basement_java", +- ":google_play_services_tasks_java", +- ] - --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_firebase_firebase_installations_java") { -- aar_path = "libs/com_google_firebase_firebase_installations/firebase-installations-16.3.5.aar" -- info_path = "libs/com_google_firebase_firebase_installations/com_google_firebase_firebase_installations.info" +- # Ignore missing kotlin.KotlinVersion definition in +- # com.google.firebase.platforminfo.KotlinDetector. +- enable_bytecode_checks = false +- } - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_firebase_firebase_common_java", -- ":google_firebase_firebase_components_java", -- ":google_firebase_firebase_installations_interop_java", -- ":google_play_services_tasks_java", -- ] +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_firebase_firebase_components_java") { +- aar_path = "libs/com_google_firebase_firebase_components/firebase-components-16.1.0.aar" +- info_path = "libs/com_google_firebase_firebase_components/com_google_firebase_firebase_components.info" - -- # Can't find com.google.auto.value.AutoValue$Builder. -- enable_bytecode_checks = false --} +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_firebase_firebase_annotations_java", +- "//third_party/androidx:androidx_annotation_annotation_java", +- ] - --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_firebase_firebase_installations_interop_java") { -- aar_path = "libs/com_google_firebase_firebase_installations_interop/firebase-installations-interop-16.0.1.aar" -- info_path = "libs/com_google_firebase_firebase_installations_interop/com_google_firebase_firebase_installations_interop.info" +- # Can't find com.google.firebase.components.Component$ComponentType. +- enable_bytecode_checks = false +- } - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ -- ":google_firebase_firebase_annotations_java", -- ":google_play_services_tasks_java", -- ] +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- java_prebuilt("google_firebase_firebase_encoders_java") { +- jar_path = "libs/com_google_firebase_firebase_encoders/firebase-encoders-16.1.0.jar" +- output_name = "com_google_firebase_firebase_encoders" +- supports_android = true - -- # Can't find com.google.auto.value.AutoValue$Builder. -- enable_bytecode_checks = false --} +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ "//third_party/androidx:androidx_annotation_annotation_java" ] +- } - --# This is generated, do not edit. Update BuildConfigGenerator.groovy instead. --android_aar_prebuilt("google_firebase_firebase_measurement_connector_java") { -- aar_path = "libs/com_google_firebase_firebase_measurement_connector/firebase-measurement-connector-18.0.0.aar" -- info_path = "libs/com_google_firebase_firebase_measurement_connector/com_google_firebase_firebase_measurement_connector.info" +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_firebase_firebase_encoders_json_java") { +- aar_path = "libs/com_google_firebase_firebase_encoders_json/firebase-encoders-json-17.1.0.aar" +- info_path = "libs/com_google_firebase_firebase_encoders_json/com_google_firebase_firebase_encoders_json.info" - -- # To remove visibility constraint, add this dependency to -- # //third_party/android_deps/build.gradle. -- visibility = [ -- ":*", -- "//third_party/androidx:*", -- ] -- deps = [ ":google_play_services_basement_java" ] --} +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_firebase_firebase_encoders_java", +- "//third_party/androidx:androidx_annotation_annotation_java", +- ] +- } - - # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. - java_prebuilt("com_google_googlejavaformat_google_java_format_java") { - jar_path = "libs/com_google_googlejavaformat_google_java_format/google-java-format-1.5.jar" +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_firebase_firebase_iid_java") { +- aar_path = "libs/com_google_firebase_firebase_iid/firebase-iid-21.0.1.aar" +- info_path = "libs/com_google_firebase_firebase_iid/com_google_firebase_firebase_iid.info" +- +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_firebase_firebase_common_java", +- ":google_firebase_firebase_components_java", +- ":google_firebase_firebase_iid_interop_java", +- ":google_firebase_firebase_installations_interop_java", +- ":google_firebase_firebase_installations_java", +- ":google_play_services_basement_java", +- ":google_play_services_cloud_messaging_java", +- ":google_play_services_stats_java", +- ":google_play_services_tasks_java", +- "//third_party/androidx:androidx_collection_collection_java", +- "//third_party/androidx:androidx_core_core_java", +- "//third_party/androidx:androidx_legacy_legacy_support_core_utils_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_firebase_firebase_iid_interop_java") { +- aar_path = "libs/com_google_firebase_firebase_iid_interop/firebase-iid-interop-17.0.0.aar" +- info_path = "libs/com_google_firebase_firebase_iid_interop/com_google_firebase_firebase_iid_interop.info" +- +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_play_services_base_java", +- ":google_play_services_basement_java", +- ] +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_firebase_firebase_installations_java") { +- aar_path = "libs/com_google_firebase_firebase_installations/firebase-installations-16.3.5.aar" +- info_path = "libs/com_google_firebase_firebase_installations/com_google_firebase_firebase_installations.info" +- +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_firebase_firebase_common_java", +- ":google_firebase_firebase_components_java", +- ":google_firebase_firebase_installations_interop_java", +- ":google_play_services_tasks_java", +- ] +- +- # Can't find com.google.auto.value.AutoValue$Builder. +- enable_bytecode_checks = false +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_firebase_firebase_installations_interop_java") { +- aar_path = "libs/com_google_firebase_firebase_installations_interop/firebase-installations-interop-16.0.1.aar" +- info_path = "libs/com_google_firebase_firebase_installations_interop/com_google_firebase_firebase_installations_interop.info" +- +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ +- ":google_firebase_firebase_annotations_java", +- ":google_play_services_tasks_java", +- ] +- +- # Can't find com.google.auto.value.AutoValue$Builder. +- enable_bytecode_checks = false +- } +- +- # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. +- android_aar_prebuilt("google_firebase_firebase_measurement_connector_java") { +- aar_path = "libs/com_google_firebase_firebase_measurement_connector/firebase-measurement-connector-18.0.0.aar" +- info_path = "libs/com_google_firebase_firebase_measurement_connector/com_google_firebase_firebase_measurement_connector.info" +- +- # To remove visibility constraint, add this dependency to +- # //third_party/android_deps/build.gradle. +- visibility = [ +- ":*", +- "//third_party/androidx:*", +- ] +- deps = [ ":google_play_services_basement_java" ] +- } +- + # This is generated, do not edit. Update BuildConfigGenerator.groovy instead. + java_prebuilt("com_squareup_javawriter_java") { + jar_path = "libs/com_squareup_javawriter/javawriter-2.1.1.jar" +diff --git a/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn b/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn +--- a/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn ++++ b/third_party/android_deps/local_modifications/preconditions/javatests/BUILD.gn +@@ -8,7 +8,6 @@ android_library("javatests") { + testonly = true + sources = [ "org/chromium/preconditions/PreconditionsTest.java" ] + deps = [ +- "$google_play_services_package:google_play_services_basement_java", + "//base:base_java", + "//base:base_java_test_support", + "//base/test:test_support_java", diff --git a/third_party/android_deps/util/org/chromium/gms/ChromiumPlayServicesAvailability.java b/third_party/android_deps/util/org/chromium/gms/ChromiumPlayServicesAvailability.java --- a/third_party/android_deps/util/org/chromium/gms/ChromiumPlayServicesAvailability.java +++ b/third_party/android_deps/util/org/chromium/gms/ChromiumPlayServicesAvailability.java diff --git a/build/patches/Remove-blocklisted-URLs-upon-bookmark-creation.patch b/build/patches/Remove-blocklisted-URLs-upon-bookmark-creation.patch index e6d56017..2f82d396 100644 --- a/build/patches/Remove-blocklisted-URLs-upon-bookmark-creation.patch +++ b/build/patches/Remove-blocklisted-URLs-upon-bookmark-creation.patch @@ -9,8 +9,8 @@ Subject: Remove blocklisted URLs upon bookmark creation diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -136,6 +136,8 @@ import org.chromium.chrome.browser.page_info.ChromePageInfoControllerDelegate; - import org.chromium.chrome.browser.page_info.ChromePermissionParamsListBuilderDelegate; +@@ -137,6 +137,8 @@ import org.chromium.chrome.browser.omaha.notification.UpdateNotificationControll + import org.chromium.chrome.browser.page_info.ChromePageInfo; import org.chromium.chrome.browser.partnercustomizations.PartnerBrowserCustomizations; import org.chromium.chrome.browser.preferences.Pref; +import org.chromium.chrome.browser.suggestions.SuggestionsDependencyFactory; @@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv import org.chromium.chrome.browser.printing.TabPrinter; import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.settings.SettingsLauncherImpl; -@@ -223,6 +225,8 @@ import org.chromium.url.GURL; +@@ -225,6 +227,8 @@ import org.chromium.url.GURL; import org.chromium.url.Origin; import org.chromium.webapk.lib.client.WebApkNavigationClient; @@ -27,7 +27,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv import java.util.ArrayList; import java.util.List; import java.util.function.Consumer; -@@ -275,6 +279,7 @@ public abstract class ChromeActivity +@@ -279,6 +283,7 @@ public abstract class ChromeActivity private UmaSessionStats mUmaSessionStats; private ContextReporter mContextReporter; @@ -35,8 +35,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv private boolean mPartnerBrowserRefreshNeeded; -@@ -1320,6 +1325,11 @@ public abstract class ChromeActivity - mCompositorViewHolder = null; +@@ -1330,6 +1335,11 @@ public abstract class ChromeActivity + mCompositorViewHolderSupplier.set(null); } + if (mMostVisitedSites != null) { @@ -47,7 +47,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv onDestroyInternal(); if (mDidAddPolicyChangeListener) { -@@ -1597,6 +1607,13 @@ public abstract class ChromeActivity +@@ -1614,6 +1624,13 @@ public abstract class ChromeActivity // Defense in depth against the UI being erroneously enabled. BookmarkBridge bridge = mBookmarkBridgeSupplier.get(); diff --git a/build/patches/Remove-help-menu-item.patch b/build/patches/Remove-help-menu-item.patch index 9347dfca..e40c6a93 100644 --- a/build/patches/Remove-help-menu-item.patch +++ b/build/patches/Remove-help-menu-item.patch @@ -3,17 +3,17 @@ Date: Wed, 27 Jun 2018 01:32:28 +0200 Subject: Remove help menu item --- - chrome/android/java/res/menu/main_menu.xml | 3 --- - .../org/chromium/chrome/browser/KeyboardShortcuts.java | 3 --- - .../org/chromium/chrome/browser/app/ChromeActivity.java | 9 --------- - .../chrome/browser/customtabs/BaseCustomTabActivity.java | 2 +- - .../browser/directactions/MenuDirectActionHandler.java | 2 -- - 5 files changed, 1 insertion(+), 18 deletions(-) + chrome/android/java/res/menu/main_menu.xml | 3 --- + .../org/chromium/chrome/browser/KeyboardShortcuts.java | 3 --- + .../chromium/chrome/browser/app/ChromeActivity.java | 10 ---------- + .../browser/customtabs/BaseCustomTabActivity.java | 2 +- + .../browser/directactions/MenuDirectActionHandler.java | 2 -- + 5 files changed, 1 insertion(+), 19 deletions(-) diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml --- a/chrome/android/java/res/menu/main_menu.xml +++ b/chrome/android/java/res/menu/main_menu.xml -@@ -114,9 +114,6 @@ +@@ -110,9 +110,6 @@ @@ -22,7 +22,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re - android:icon="@drawable/help_outline" /> + android:icon="@drawable/gm_filled_cardboard_24" /> diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java --- a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcuts.java @@ -39,14 +39,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcu diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java -@@ -2142,15 +2142,6 @@ public abstract class ChromeActivity +@@ -2176,16 +2176,6 @@ public abstract class ChromeActivity final Tab currentTab = getActivityTab(); - if (id == R.id.help_id) { -- String url = currentTab != null ? currentTab.getUrlString() : ""; +- String url = currentTab != null ? currentTab.getUrl().getSpec() : ""; - Profile profile = getTabModelSelector().isIncognitoSelected() -- ? Profile.getLastUsedRegularProfile().getPrimaryOTRProfile() +- ? Profile.getLastUsedRegularProfile().getPrimaryOTRProfile( +- /*createIfNeeded=*/true) - : Profile.getLastUsedRegularProfile(); - startHelpAndFeedback(url, "MobileMenuFeedback", profile); - return true; @@ -58,7 +59,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java -@@ -497,7 +497,7 @@ public abstract class BaseCustomTabActivity extends ChromeActivity VideoTutorialShareHelper.saveUrlsToSharedPrefs()); deferredStartupHandler.addDeferredTask( () -> TosDialogBehaviorSharedPrefInvalidator.refreshSharedPreferenceIfTosSkipped()); - deferredStartupHandler.addDeferredTask( - () -> OfflineMeasurementsBackgroundTask.maybeScheduleTaskAndReportMetrics()); deferredStartupHandler.addDeferredTask(() -> QueryTileUtils.isQueryTilesEnabledOnNTP()); - } - + deferredStartupHandler.addDeferredTask( + () -- 2.17.1 diff --git a/build/patches/Remove-signin-and-data-saver-integrations.patch b/build/patches/Remove-signin-and-data-saver-integrations.patch index 86a45466..ea04da63 100644 --- a/build/patches/Remove-signin-and-data-saver-integrations.patch +++ b/build/patches/Remove-signin-and-data-saver-integrations.patch @@ -20,10 +20,10 @@ ld.lld: error: undefined symbol: notifier::NotifierOptions::NotifierOptions() >>> impl/invalidation_service_util.o:(invalidation::ParseNotifierOptions(base::CommandLine const&)) in archive obj/components/invalidation/impl/libimpl.a --- chrome/android/BUILD.gn | 1 - - chrome/android/chrome_java_sources.gni | 36 ---- + chrome/android/chrome_java_sources.gni | 33 ---- .../PriceTrackingUtilities.java | 5 +- .../browser/feed/FeedSurfaceCoordinator.java | 5 +- - .../browser/feed/FeedSurfaceMediator.java | 92 +-------- + .../browser/feed/FeedSurfaceMediator.java | 96 +-------- chrome/android/java/AndroidManifest.xml | 8 - .../android/java/res/xml/main_preferences.xml | 12 -- .../org/chromium/chrome/browser/AppHooks.java | 8 - @@ -31,33 +31,33 @@ ld.lld: error: undefined symbol: notifier::NotifierOptions::NotifierOptions() .../chrome/browser/app/ChromeActivity.java | 71 ------- .../AutofillAssistantPreferenceFragment.java | 20 -- .../bookmarks/BookmarkItemsAdapter.java | 50 +---- - .../bookmarks/BookmarkPromoHeader.java | 184 +----------------- + .../bookmarks/BookmarkPromoHeader.java | 183 +----------------- .../ClearBrowsingDataFragmentBasic.java | 5 +- .../contextualsearch/ContextualSearchUma.java | 5 - .../browser/customtabs/CustomTabActivity.java | 3 - .../DataReductionPreferenceFragment.java | 24 +-- - .../browser/firstrun/FirstRunActivity.java | 7 - - .../firstrun/FirstRunFlowSequencer.java | 27 +-- - .../firstrun/LightweightFirstRunActivity.java | 5 +- - .../firstrun/ToSAndUMAFirstRunFragment.java | 10 - + .../browser/firstrun/FirstRunActivity.java | 30 --- + .../firstrun/FirstRunFlowSequencer.java | 33 +--- + .../firstrun/LightweightFirstRunActivity.java | 6 +- + .../firstrun/ToSAndUMAFirstRunFragment.java | 11 -- .../browser/history/HistoryManager.java | 8 - .../identity_disc/IdentityDiscController.java | 3 +- .../init/ChromeBrowserInitializer.java | 2 - - .../init/ProcessInitializationHandler.java | 18 -- - .../chrome/browser/ntp/RecentTabsManager.java | 67 +------ + .../init/ProcessInitializationHandler.java | 20 -- + .../chrome/browser/ntp/RecentTabsManager.java | 60 +----- .../browser/ntp/RecentTabsRowAdapter.java | 6 - .../browser/omaha/RequestGenerator.java | 3 - .../PasswordManagerLauncher.java | 15 +- .../settings/PasswordEntryViewer.java | 5 +- - .../privacy/settings/PrivacySettings.java | 44 +---- + .../privacy/settings/PrivacySettings.java | 42 ---- .../SendTabToSelfShareActivity.java | 4 +- .../services/AccountsChangedReceiver.java | 2 - .../chrome/browser/settings/MainSettings.java | 167 +--------------- .../browser/settings/SettingsActivity.java | 5 +- .../browser/share/ShareDelegateImpl.java | 4 +- .../SharedClipboardShareActivity.java | 3 - - .../browser/signin/SigninHelperProvider.java | 39 ---- - .../tabbed_mode/TabbedRootUiCoordinator.java | 17 +- + .../browser/signin/SigninHelperProvider.java | 37 ---- + .../tabbed_mode/TabbedRootUiCoordinator.java | 19 +- chrome/browser/BUILD.gn | 10 - .../identity_services_provider_android.cc | 9 - .../browser/signin/services/android/BUILD.gn | 1 - @@ -69,16 +69,16 @@ ld.lld: error: undefined symbol: notifier::NotifierOptions::NotifierOptions() .../AccountPickerDelegateImpl.java | 16 -- .../sync/profile_sync_service_factory.cc | 9 +- .../strings/android_chrome_strings.grd | 21 -- - .../signin/SystemAccountManagerDelegate.java | 38 +--- + .../signin/SystemAccountManagerDelegate.java | 35 +--- .../net/HttpNegotiateAuthenticator.java | 88 +-------- .../chromoting/base/OAuthTokenFetcher.java | 2 - - 53 files changed, 43 insertions(+), 1218 deletions(-) + 53 files changed, 42 insertions(+), 1240 deletions(-) delete mode 100644 chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelperProvider.java diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -3397,7 +3397,6 @@ generate_jni("chrome_jni_headers") { +@@ -3474,7 +3474,6 @@ generate_jni("chrome_jni_headers") { "java/src/org/chromium/chrome/browser/infobar/SavePasswordInfoBar.java", "java/src/org/chromium/chrome/browser/infobar/SearchGeolocationDisclosureInfoBar.java", "java/src/org/chromium/chrome/browser/infobar/SurveyInfoBar.java", @@ -89,7 +89,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni -@@ -607,15 +607,12 @@ chrome_java_sources = [ +@@ -598,16 +598,13 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/firstrun/FirstRunPage.java", "java/src/org/chromium/chrome/browser/firstrun/FirstRunPageDelegate.java", "java/src/org/chromium/chrome/browser/firstrun/FirstRunPagerAdapter.java", @@ -101,11 +101,12 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/org/chromium/chrome/browser/firstrun/FreIntentCreator.java", "java/src/org/chromium/chrome/browser/firstrun/LightweightFirstRunActivity.java", "java/src/org/chromium/chrome/browser/firstrun/PolicyLoadListener.java", -- "java/src/org/chromium/chrome/browser/firstrun/SigninFirstRunFragment.java", "java/src/org/chromium/chrome/browser/firstrun/SkipTosDialogPolicyListener.java", +- "java/src/org/chromium/chrome/browser/firstrun/SyncConsentFirstRunFragment.java", "java/src/org/chromium/chrome/browser/firstrun/TabbedModeFirstRunActivity.java", "java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java", -@@ -709,7 +706,6 @@ chrome_java_sources = [ + "java/src/org/chromium/chrome/browser/firstrun/TosAndUmaFirstRunFragmentWithEnterpriseSupport.java", +@@ -700,7 +697,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/infobar/SubPanelListener.java", "java/src/org/chromium/chrome/browser/infobar/SurveyInfoBar.java", "java/src/org/chromium/chrome/browser/infobar/SurveyInfoBarDelegate.java", @@ -113,7 +114,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/org/chromium/chrome/browser/infobar/TextViewEllipsizerSafe.java", "java/src/org/chromium/chrome/browser/infobar/TranslateCompactInfoBar.java", "java/src/org/chromium/chrome/browser/infobar/UpdatePasswordInfoBar.java", -@@ -872,7 +868,6 @@ chrome_java_sources = [ +@@ -838,7 +834,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/ntp/cards/NewTabPageViewHolder.java", "java/src/org/chromium/chrome/browser/ntp/cards/OptionalLeaf.java", "java/src/org/chromium/chrome/browser/ntp/cards/PartiallyBindable.java", @@ -121,7 +122,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoController.java", "java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoUtils.java", "java/src/org/chromium/chrome/browser/ntp/search/SearchBoxChipDelegate.java", -@@ -1069,8 +1064,6 @@ chrome_java_sources = [ +@@ -1041,8 +1036,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/partnerbookmarks/PartnerBookmarksShim.java", "java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java", "java/src/org/chromium/chrome/browser/password_manager/AccountChooserDialog.java", @@ -130,22 +131,22 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/org/chromium/chrome/browser/password_manager/BiometricAuthenticatorBridge.java", "java/src/org/chromium/chrome/browser/password_manager/Credential.java", "java/src/org/chromium/chrome/browser/password_manager/CredentialLeakDialogBridge.java", -@@ -1229,14 +1222,6 @@ chrome_java_sources = [ - "java/src/org/chromium/chrome/browser/sharing/shared_clipboard/SharedClipboardMessageHandler.java", +@@ -1197,14 +1190,9 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/sharing/shared_clipboard/SharedClipboardMetrics.java", "java/src/org/chromium/chrome/browser/sharing/shared_clipboard/SharedClipboardShareActivity.java", -- "java/src/org/chromium/chrome/browser/signin/SigninActivity.java", + "java/src/org/chromium/chrome/browser/sharing/sms_fetcher/SmsFetcherMessageHandler.java", - "java/src/org/chromium/chrome/browser/signin/SigninActivityLauncherImpl.java", - "java/src/org/chromium/chrome/browser/signin/SigninBridge.java", -- "java/src/org/chromium/chrome/browser/signin/SigninFragment.java", -- "java/src/org/chromium/chrome/browser/signin/SigninFragmentBase.java", - "java/src/org/chromium/chrome/browser/signin/SigninHelperProvider.java", - "java/src/org/chromium/chrome/browser/signin/SigninManagerImpl.java", + "java/src/org/chromium/chrome/browser/signin/SyncConsentActivity.java", + "java/src/org/chromium/chrome/browser/signin/SyncConsentFragment.java", + "java/src/org/chromium/chrome/browser/signin/SyncConsentFragmentBase.java", - "java/src/org/chromium/chrome/browser/signin/SyncPromoView.java", "java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java", "java/src/org/chromium/chrome/browser/site_settings/CookieControlsServiceBridge.java", "java/src/org/chromium/chrome/browser/site_settings/ManageSpaceActivity.java", -@@ -1274,27 +1259,6 @@ chrome_java_sources = [ +@@ -1242,27 +1230,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/survey/ChromeSurveyController.java", "java/src/org/chromium/chrome/browser/survey/SurveyController.java", "java/src/org/chromium/chrome/browser/survey/SurveyHttpClientBridge.java", @@ -184,7 +185,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser import org.chromium.components.sync.ModelType; /** -@@ -165,9 +164,7 @@ public class PriceTrackingUtilities { +@@ -173,9 +172,7 @@ public class PriceTrackingUtilities { } private static boolean isOpenTabsSyncEnabled() { @@ -198,7 +199,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java --- a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java +++ b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceCoordinator.java -@@ -636,10 +636,7 @@ public class FeedSurfaceCoordinator implements FeedSurfaceProvider { +@@ -621,10 +621,7 @@ public class FeedSurfaceCoordinator implements FeedSurfaceProvider { } @Override public boolean isSignedIn() { @@ -213,59 +214,60 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java --- a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java +++ b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java -@@ -27,18 +27,12 @@ import org.chromium.chrome.browser.native_page.NativePageNavigationDelegate; +@@ -30,7 +30,6 @@ import org.chromium.chrome.browser.native_page.NativePageNavigationDelegate; import org.chromium.chrome.browser.ntp.NewTabPageLayout; import org.chromium.chrome.browser.ntp.ScrollListener; import org.chromium.chrome.browser.ntp.SnapScrollHelper; -import org.chromium.chrome.browser.ntp.cards.SignInPromo; import org.chromium.chrome.browser.ntp.cards.promo.enhanced_protection.EnhancedProtectionPromoController.EnhancedProtectionPromoStateListener; - import org.chromium.chrome.browser.ntp.snippets.SectionHeader; - import org.chromium.chrome.browser.preferences.Pref; + import org.chromium.chrome.browser.ntp.snippets.SectionHeaderListProperties; + import org.chromium.chrome.browser.ntp.snippets.SectionHeaderProperties; +@@ -38,11 +37,7 @@ import org.chromium.chrome.browser.preferences.Pref; import org.chromium.chrome.browser.preferences.PrefChangeRegistrar; import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory; -import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; -import org.chromium.chrome.browser.signin.services.SigninManager; --import org.chromium.chrome.browser.signin.ui.PersonalizedSigninPromoView; + import org.chromium.chrome.browser.signin.ui.PersonalizedSigninPromoView; -import org.chromium.chrome.browser.signin.ui.SigninPromoController; -import org.chromium.chrome.browser.signin.ui.SigninPromoUtil; import org.chromium.chrome.browser.suggestions.SuggestionsMetrics; import org.chromium.chrome.features.start_surface.StartSurfaceConfiguration; import org.chromium.components.browser_ui.widget.listmenu.ListMenu; -@@ -75,7 +69,6 @@ public class FeedSurfaceMediator - private final FeedSurfaceCoordinator mCoordinator; +@@ -78,7 +73,6 @@ public class FeedSurfaceMediator + private final Context mContext; private final @Nullable SnapScrollHelper mSnapScrollHelper; private final PrefChangeRegistrar mPrefChangeRegistrar; - private final SigninManager mSigninManager; + private final PropertyModel mSectionHeaderModel; private final NativePageNavigationDelegate mPageNavigationDelegate; - -@@ -83,7 +76,6 @@ public class FeedSurfaceMediator +@@ -86,7 +80,6 @@ public class FeedSurfaceMediator + private @Nullable ScrollListener mStreamScrollListener; private ContentChangedListener mStreamContentChangedListener; - private SectionHeader mSectionHeader; private MemoryPressureCallback mMemoryPressureCallback; - private @Nullable SignInPromo mSignInPromo; private boolean mFeedEnabled; private boolean mHasHeader; -@@ -116,8 +108,6 @@ public class FeedSurfaceMediator - @Nullable NativePageNavigationDelegate pageNavigationDelegate) { +@@ -126,8 +119,6 @@ public class FeedSurfaceMediator mCoordinator = coordinator; + mContext = context; mSnapScrollHelper = snapScrollHelper; - mSigninManager = IdentityServicesProvider.get().getSigninManager( - Profile.getLastUsedRegularProfile()); mPageNavigationDelegate = pageNavigationDelegate; mPrefChangeRegistrar = new PrefChangeRegistrar(); -@@ -265,7 +255,6 @@ public class FeedSurfaceMediator - mSectionHeader.setMenuModelList(buildMenuItems()); - mSectionHeader.setListMenuDelegate(this::onItemSelected); - mCoordinator.initializeIph(); -- mSigninManager.getIdentityManager().addObserver(this); - } - } - // Show feed if there is no header that would allow user to hide feed. -@@ -286,44 +275,6 @@ public class FeedSurfaceMediator +@@ -262,7 +253,6 @@ public class FeedSurfaceMediator + .add(interestFeedHeader); + + mCoordinator.initializeIph(); +- mSigninManager.getIdentityManager().addObserver(this); + + mSectionHeaderModel.set(SectionHeaderListProperties.CURRENT_TAB_INDEX_KEY, 0); + mSectionHeaderModel.set( +@@ -292,44 +282,6 @@ public class FeedSurfaceMediator } private void initStreamHeaderViews() { @@ -310,7 +312,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ } /** Clear any dependencies related to the {@link Stream}. */ -@@ -342,14 +293,8 @@ public class FeedSurfaceMediator +@@ -348,14 +300,8 @@ public class FeedSurfaceMediator MemoryPressureListener.removeCallback(mMemoryPressureCallback); mMemoryPressureCallback = null; @@ -325,34 +327,39 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ } /** -@@ -372,9 +317,6 @@ public class FeedSurfaceMediator - mSectionHeader.setMenuModelList(buildMenuItems()); - } +@@ -388,9 +334,6 @@ public class FeedSurfaceMediator + // Update toggleswitch item, which is last item in list. + mFeedMenuModel.update(mToggleswitchMenuIndex, getMenuToggleSwitch(suggestionsVisible, 0)); - if (mSignInPromo != null) { - mSignInPromo.setCanShowPersonalizedSuggestions(suggestionsVisible); - } if (suggestionsVisible) mCoordinator.getStreamLifecycleManager().activate(); mStreamContentChanged = true; - mCoordinator.getSectionHeaderView().updateVisuals(); -@@ -418,16 +360,6 @@ public class FeedSurfaceMediator + +@@ -438,21 +381,6 @@ public class FeedSurfaceMediator private ModelList buildMenuItems() { ModelList itemList = new ModelList(); - int icon_id = 0; + int iconId = 0; - if (mSigninManager.getIdentityManager().hasPrimaryAccount()) { -- itemList.add(buildMenuListItem(R.string.ntp_manage_my_activity, -- R.id.ntp_feed_header_menu_item_activity, icon_id)); -- itemList.add(buildMenuListItem(R.string.ntp_manage_interests, -- R.id.ntp_feed_header_menu_item_interest, icon_id)); +- if (FeedFeatures.isWebFeedUIEnabled()) { +- itemList.add(buildMenuListItem( +- R.string.ntp_manage_feed, R.id.ntp_feed_header_menu_item_manage, iconId)); +- } else { +- itemList.add(buildMenuListItem(R.string.ntp_manage_my_activity, +- R.id.ntp_feed_header_menu_item_activity, iconId)); +- itemList.add(buildMenuListItem(R.string.ntp_manage_interests, +- R.id.ntp_feed_header_menu_item_interest, iconId)); +- } - if (ChromeFeatureList.isEnabled(ChromeFeatureList.INTEREST_FEED_V2_HEARTS)) { - itemList.add(buildMenuListItem(R.string.ntp_manage_reactions, -- R.id.ntp_feed_header_menu_item_reactions, icon_id)); +- R.id.ntp_feed_header_menu_item_reactions, iconId)); - } - } - itemList.add(buildMenuListItem( - R.string.learn_more, R.id.ntp_feed_header_menu_item_learn, icon_id)); - if (mSectionHeader.isExpanded()) { -@@ -444,10 +376,6 @@ public class FeedSurfaceMediator + if (ChromeFeatureList.isEnabled(ChromeFeatureList.INTEREST_FEED_V2_AUTOPLAY)) { + itemList.add(buildMenuListItem( + R.string.ntp_manage_autoplay, R.id.ntp_feed_header_menu_item_autoplay, iconId)); +@@ -485,10 +413,6 @@ public class FeedSurfaceMediator * Callback on sign-in promo is dismissed. */ void onSignInPromoDismissed() { @@ -363,7 +370,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ } /** Whether a new thumbnail should be captured. */ -@@ -607,7 +535,6 @@ public class FeedSurfaceMediator +@@ -652,7 +576,6 @@ public class FeedSurfaceMediator /** * The {@link SignInPromo} for the Feed. * TODO(huayinz): Update content and visibility through a ModelChangeProcessor. @@ -371,7 +378,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ private class FeedSignInPromo extends SignInPromo { FeedSignInPromo(SigninManager signinManager) { super(signinManager); -@@ -628,21 +555,9 @@ public class FeedSurfaceMediator +@@ -673,26 +596,9 @@ public class FeedSurfaceMediator maybeUpdateSignInPromo(); } @@ -390,26 +397,19 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ - } } - } -+ } */ - - // TODO(huayinz): Return the Model for testing in Coordinator instead once a Model is created. - @VisibleForTesting -@@ -650,11 +565,6 @@ public class FeedSurfaceMediator - return mSectionHeader; - } - +- - @VisibleForTesting - public SignInPromo getSignInPromoForTesting() { - return mSignInPromo; - } -- ++ } */ + void onOverviewShownAtLaunch(long activityCreationTimeMs, boolean isInstantStart) { assert mActivityCreationTimeMs == 0; - mActivityCreationTimeMs = activityCreationTimeMs; diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml --- a/chrome/android/java/AndroidManifest.xml +++ b/chrome/android/java/AndroidManifest.xml -@@ -47,24 +47,18 @@ by a child template that "extends" this file. +@@ -46,24 +46,18 @@ by a child template that "extends" this file. @@ -434,7 +434,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro {% set enable_vr = enable_vr|default(0) %} {% if enable_vr == "true" %} -@@ -106,8 +100,6 @@ by a child template that "extends" this file. +@@ -103,8 +97,6 @@ by a child template that "extends" this file. @@ -490,7 +490,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java b import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.usage_stats.DigitalWellbeingClient; import org.chromium.chrome.browser.webapps.GooglePlayWebApkInstallDelegate; -@@ -298,13 +297,6 @@ public abstract class AppHooks { +@@ -311,13 +310,6 @@ public abstract class AppHooks { return ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED; } @@ -507,15 +507,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java b diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java -@@ -86,7 +86,6 @@ import org.chromium.chrome.browser.download.DownloadUtils; +@@ -88,7 +88,6 @@ import org.chromium.chrome.browser.download.DownloadUtils; import org.chromium.chrome.browser.feature_engagement.TrackerFactory; - import org.chromium.chrome.browser.feed.FeedV2; + import org.chromium.chrome.browser.feed.v2.FeedStreamSurface; import org.chromium.chrome.browser.feed.webfeed.WebFeedBridge; -import org.chromium.chrome.browser.firstrun.FirstRunSignInProcessor; import org.chromium.chrome.browser.flags.ActivityType; import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.flags.ChromeSwitches; -@@ -99,7 +98,6 @@ import org.chromium.chrome.browser.incognito.IncognitoTabLauncher; +@@ -102,7 +101,6 @@ import org.chromium.chrome.browser.incognito.IncognitoTabLauncher; import org.chromium.chrome.browser.incognito.IncognitoTabSnapshotController; import org.chromium.chrome.browser.incognito.IncognitoUtils; import org.chromium.chrome.browser.infobar.DataReductionPromoInfoBar; @@ -523,7 +523,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.layouts.LayoutStateProvider; import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher; import org.chromium.chrome.browser.locale.LocaleManager; -@@ -579,7 +577,6 @@ public class ChromeTabbedActivity extends ChromeActivity +@@ -296,9 +292,6 @@ public abstract class ChromeActivity private boolean mRemoveWindowBackgroundDone; protected AccessibilityVisibilityHandler mAccessibilityVisibilityHandler; @@ -579,7 +579,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv // The PictureInPictureController is initialized lazily https://crbug.com/729738. private PictureInPictureController mPictureInPictureController; -@@ -974,57 +967,6 @@ public abstract class ChromeActivity +@@ -985,57 +978,6 @@ public abstract class ChromeActivity } private void createContextReporterIfNeeded() { @@ -637,7 +637,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv } @Override -@@ -1090,14 +1032,6 @@ public abstract class ChromeActivity +@@ -1101,14 +1043,6 @@ public abstract class ChromeActivity if (GSAState.getInstance(this).isGsaAvailable() && !SysUtils.isLowEndDevice()) { if (mGSAAccountChangeListener != null) mGSAAccountChangeListener.disconnect(); } @@ -652,7 +652,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv super.onStopWithNative(); } -@@ -1202,11 +1136,6 @@ public abstract class ChromeActivity +@@ -1213,11 +1147,6 @@ public abstract class ChromeActivity FontSizePrefs.getInstance().recordUserFontPrefOnStartup(); }); @@ -667,7 +667,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferenceFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferenceFragment.java --- a/chrome/android/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferenceFragment.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferenceFragment.java -@@ -18,8 +18,6 @@ import org.chromium.chrome.browser.preferences.SharedPreferencesManager; +@@ -19,8 +19,6 @@ import org.chromium.chrome.browser.preferences.SharedPreferencesManager; import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.settings.SettingsLauncherImpl; import org.chromium.chrome.browser.signin.services.UnifiedConsentServiceBridge; @@ -676,7 +676,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill_assist import org.chromium.components.browser_ui.settings.ChromeSwitchPreference; import org.chromium.components.browser_ui.settings.SettingsLauncher; import org.chromium.components.browser_ui.settings.SettingsUtils; -@@ -51,7 +49,6 @@ public class AutofillAssistantPreferenceFragment extends PreferenceFragmentCompa +@@ -52,7 +50,6 @@ public class AutofillAssistantPreferenceFragment extends PreferenceFragmentCompa private ChromeSwitchPreference mAutofillAssistantPreference; private ChromeSwitchPreference mProactiveHelpPreference; private ChromeSwitchPreference mAssistantVoiceSearchEnabledPref; @@ -684,7 +684,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill_assist @Override public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { -@@ -89,22 +86,6 @@ public class AutofillAssistantPreferenceFragment extends PreferenceFragmentCompa +@@ -90,22 +87,6 @@ public class AutofillAssistantPreferenceFragment extends PreferenceFragmentCompa mProactiveHelpPreference.setVisible(false); } @@ -707,7 +707,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill_assist PreferenceCategory assistantVoiceSearchCategory = findPreference(PREF_ASSISTANT_VOICE_SEARCH_CATEGORY); mAssistantVoiceSearchEnabledPref = -@@ -172,7 +153,6 @@ public class AutofillAssistantPreferenceFragment extends PreferenceFragmentCompa +@@ -173,7 +154,6 @@ public class AutofillAssistantPreferenceFragment extends PreferenceFragmentCompa } mProactiveHelpPreference.setEnabled(proactive_toggle_enabled); mProactiveHelpPreference.setChecked(proactive_toggle_enabled && proactive_help_on); @@ -727,7 +727,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm import org.chromium.components.bookmarks.BookmarkId; import org.chromium.components.bookmarks.BookmarkType; import org.chromium.components.browser_ui.widget.dragreorder.DragReorderableListAdapter; -@@ -40,7 +38,7 @@ import java.util.List; +@@ -42,7 +40,7 @@ import java.util.List; * BaseAdapter for {@link RecyclerView}. It manages bookmarks to list there. */ class BookmarkItemsAdapter extends DragReorderableListAdapter @@ -736,7 +736,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm private static final int MAXIMUM_NUMBER_OF_SEARCH_RESULTS = 500; private static final String EMPTY_QUERY = null; -@@ -51,10 +49,8 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -53,10 +51,8 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter @ViewType private int mPromoHeaderType = ViewType.INVALID; private BookmarkDelegate mDelegate; @@ -747,7 +747,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm // Keep track of the currently highlighted bookmark - used for "show in folder" action. private BookmarkId mHighlightedBookmark; -@@ -107,8 +103,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -109,8 +105,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter BookmarkItemsAdapter(Context context) { super(context); @@ -756,7 +756,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm } /** -@@ -183,9 +177,9 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -185,9 +179,9 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter case ViewType.PERSONALIZED_SIGNIN_PROMO: // fall through case ViewType.PERSONALIZED_SYNC_PROMO: @@ -768,7 +768,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm case ViewType.SECTION_HEADER: return createSectionHeaderViewHolder(parent, viewType); case ViewType.FOLDER: -@@ -205,11 +199,7 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -207,11 +201,7 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter @Override public void onBindViewHolder(ViewHolder holder, int position) { if (holder.getItemViewType() == ViewType.PERSONALIZED_SIGNIN_PROMO) { @@ -780,7 +780,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm } else if (holder.getItemViewType() == ViewType.SECTION_HEADER) { bindSectionHeaderViewHolder(holder.itemView, getItemByPosition(position)); } else if (BookmarkListEntry.isBookmarkEntry(holder.getItemViewType())) { -@@ -262,7 +252,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -266,7 +256,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter case ViewType.PERSONALIZED_SIGNIN_PROMO: // fall through case ViewType.PERSONALIZED_SYNC_PROMO: @@ -788,7 +788,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm break; default: // Other view holders don't have special recycling code. -@@ -288,7 +277,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -292,7 +281,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter updateHeader(!topLevelFoldersShowing()); }; @@ -796,7 +796,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm populateTopLevelFoldersList(); mElements = new ArrayList<>(); -@@ -303,8 +291,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -307,8 +295,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter mDelegate.getModel().removeObserver(mBookmarkModelObserver); mDelegate.getSelectionDelegate().removeObserver(this); mDelegate = null; @@ -805,7 +805,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm } @Override -@@ -395,18 +381,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -399,18 +385,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter setOrder(mElements); } @@ -824,7 +824,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** * Updates mPromoHeaderType. Makes sure that the 0th index of mElements is consistent with the * promo header. This 0th index is null iff there is a promo header. -@@ -426,23 +400,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -430,23 +404,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter return; } else if (currentUIState == BookmarkUIState.STATE_SEARCHING) { mPromoHeaderType = ViewType.INVALID; @@ -848,7 +848,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm } boolean willShowPromo = hasPromoHeader(); -@@ -565,7 +522,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter +@@ -569,7 +526,6 @@ class BookmarkItemsAdapter extends DragReorderableListAdapter @VisibleForTesting void simulateSignInForTests() { @@ -1035,7 +1035,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm } private @PromoState int calculatePromoState() { -@@ -211,71 +92,10 @@ class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener +@@ -211,70 +92,10 @@ class BookmarkPromoHeader implements ProfileSyncService.SyncStateChangedListener return sPromoStateForTests; } @@ -1054,8 +1054,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm - return PromoState.PROMO_NONE; - } - CoreAccountInfo primaryAccount = -- mSignInManager.getIdentityManager().getPrimaryAccountInfo( -- ConsentLevel.NOT_REQUIRED); +- mSignInManager.getIdentityManager().getPrimaryAccountInfo(ConsentLevel.SIGNIN); - return primaryAccount == null ? PromoState.PROMO_SIGNIN_PERSONALIZED - : PromoState.PROMO_SYNC_PERSONALIZED; - } @@ -1110,15 +1109,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm diff --git a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragmentBasic.java b/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragmentBasic.java --- a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragmentBasic.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/ClearBrowsingDataFragmentBasic.java -@@ -11,7 +11,6 @@ import org.chromium.base.metrics.RecordUserAction; - import org.chromium.chrome.R; +@@ -15,7 +15,6 @@ import org.chromium.chrome.R; + import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; -import org.chromium.chrome.browser.sync.ProfileSyncService; import org.chromium.chrome.browser.tab.TabLaunchType; import org.chromium.chrome.browser.tabmodel.document.TabDelegate; import org.chromium.components.embedder_support.util.UrlConstants; -@@ -54,9 +53,7 @@ public class ClearBrowsingDataFragmentBasic extends ClearBrowsingDataFragment { +@@ -105,9 +104,7 @@ public class ClearBrowsingDataFragmentBasic extends ClearBrowsingDataFragment { } private boolean isHistorySyncEnabled() { @@ -1154,15 +1153,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearc diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java -@@ -38,7 +38,6 @@ import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProv +@@ -38,7 +38,6 @@ import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntent import org.chromium.chrome.browser.customtabs.content.CustomTabActivityNavigationController; import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider; import org.chromium.chrome.browser.customtabs.features.CustomTabNavigationBarController; -import org.chromium.chrome.browser.firstrun.FirstRunSignInProcessor; import org.chromium.chrome.browser.flags.AllCachedFieldTrialParameters; import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.infobar.InfoBarContainer; -@@ -138,8 +137,6 @@ public class CustomTabActivity extends BaseCustomTabActivity { + import org.chromium.chrome.browser.fonts.FontPreloader; +@@ -141,8 +140,6 @@ public class CustomTabActivity extends BaseCustomTabActivity { @Override public void finishNativeInitialization() { @@ -1215,13 +1214,47 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/datareduction/s diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java -@@ -175,13 +175,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa +@@ -27,11 +27,8 @@ import org.chromium.base.metrics.RecordHistogram; + import org.chromium.base.supplier.Supplier; + import org.chromium.chrome.R; + import org.chromium.chrome.browser.customtabs.CustomTabActivity; +-import org.chromium.chrome.browser.datareduction.DataReductionPromoUtils; +-import org.chromium.chrome.browser.datareduction.DataReductionProxyUma; + import org.chromium.chrome.browser.fonts.FontPreloader; + import org.chromium.chrome.browser.metrics.UmaUtils; +-import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings; + import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory; + import org.chromium.chrome.browser.searchwidget.SearchWidgetProvider; + import org.chromium.ui.base.LocalizationUtils; +@@ -101,7 +98,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa + + private static final int FRE_PROGRESS_STARTED = 0; + private static final int FRE_PROGRESS_WELCOME_SHOWN = 1; +- private static final int FRE_PROGRESS_DATA_SAVER_SHOWN = 2; + private static final int FRE_PROGRESS_SIGNIN_SHOWN = 3; + private static final int FRE_PROGRESS_COMPLETED_SIGNED_IN = 4; + private static final int FRE_PROGRESS_COMPLETED_NOT_SIGNED_IN = 5; +@@ -185,13 +181,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa + mFirstRunFlowSequencer.onNativeAndPoliciesInitialized(mFreProperties); + + boolean notifyAdapter = false; +- // An optional Data Saver page. +- if (mFreProperties.getBoolean(SHOW_DATA_REDUCTION_PAGE)) { +- mPages.add(new DataReductionProxyFirstRunFragment.Page()); +- mFreProgressStates.add(FRE_PROGRESS_DATA_SAVER_SHOWN); +- notifyAdapter = true; +- } +- + // An optional page to select a default search engine. + if (mFreProperties.getBoolean(SHOW_SEARCH_ENGINE_PAGE)) { + mPages.add(new DefaultSearchEngineFirstRunFragment.Page()); +@@ -199,13 +188,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa notifyAdapter = true; } - // An optional sign-in page. - if (mFreProperties.getBoolean(SHOW_SIGNIN_PAGE)) { -- mPages.add(SigninFirstRunFragment::new); +- mPages.add(SyncConsentFirstRunFragment::new); - mFreProgressStates.add(FRE_PROGRESS_SIGNIN_SHOWN); - notifyAdapter = true; - } @@ -1229,10 +1262,37 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR if (notifyAdapter && mPagerAdapter != null) { mPagerAdapter.notifyDataSetChanged(); } +@@ -491,18 +473,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa + FirstRunFlowSequencer.markFlowAsCompleted( + mResultSignInAccountName, mResultShowSignInSettings); + +- if (DataReductionPromoUtils.getDisplayedFreOrSecondRunPromo()) { +- if (DataReductionProxySettings.getInstance().isDataReductionProxyEnabled()) { +- DataReductionProxyUma +- .dataReductionProxyUIAction(DataReductionProxyUma.ACTION_FRE_ENABLED); +- DataReductionPromoUtils.saveFrePromoOptOut(false); +- } else { +- DataReductionProxyUma +- .dataReductionProxyUIAction(DataReductionProxyUma.ACTION_FRE_DISABLED); +- DataReductionPromoUtils.saveFrePromoOptOut(true); +- } +- } +- + // Update the search engine name cached by the widget. + SearchWidgetProvider.updateCachedEngineName(); + if (sObserver != null) sObserver.onUpdateCachedEngineName(this); diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencer.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencer.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencer.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunFlowSequencer.java -@@ -99,10 +99,7 @@ public abstract class FirstRunFlowSequencer { +@@ -25,7 +25,6 @@ import org.chromium.chrome.browser.LaunchIntentDispatcher; + import org.chromium.chrome.browser.childaccounts.ChildAccountService; + import org.chromium.chrome.browser.flags.ChromeSwitches; + import org.chromium.chrome.browser.locale.LocaleManager; +-import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings; + import org.chromium.chrome.browser.profiles.Profile; + import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; + import org.chromium.chrome.browser.signin.services.SigninManager; +@@ -99,10 +98,7 @@ public abstract class FirstRunFlowSequencer { @VisibleForTesting protected boolean isSyncAllowed() { @@ -1244,7 +1304,19 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } @VisibleForTesting -@@ -137,7 +134,6 @@ public abstract class FirstRunFlowSequencer { +@@ -122,11 +118,6 @@ public abstract class FirstRunFlowSequencer { + return FirstRunUtils.isFirstRunEulaAccepted(); + } + +- protected boolean shouldShowDataReductionPage() { +- return !DataReductionProxySettings.getInstance().isDataReductionProxyManaged() +- && DataReductionProxySettings.getInstance().isDataReductionProxyFREPromoAllowed(); +- } +- + @VisibleForTesting + protected boolean shouldShowSearchEnginePage() { + @LocaleManager.SearchEnginePromoType +@@ -137,7 +128,6 @@ public abstract class FirstRunFlowSequencer { @VisibleForTesting protected void setFirstRunFlowSignInComplete() { @@ -1252,13 +1324,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } void initializeSharedState(@ChildAccountStatus.Status int childAccountStatus) { -@@ -155,14 +151,6 @@ public abstract class FirstRunFlowSequencer { +@@ -155,14 +145,6 @@ public abstract class FirstRunFlowSequencer { onFlowIsKnown(null); return; } - - Bundle freProperties = new Bundle(); -- freProperties.putInt(SigninFirstRunFragment.CHILD_ACCOUNT_STATUS, mChildAccountStatus); +- freProperties.putInt(SyncConsentFirstRunFragment.CHILD_ACCOUNT_STATUS, mChildAccountStatus); - - onFlowIsKnown(freProperties); - if (ChildAccountStatus.isChild(mChildAccountStatus)) { @@ -1267,7 +1339,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } /** -@@ -171,16 +159,6 @@ public abstract class FirstRunFlowSequencer { +@@ -171,16 +153,6 @@ public abstract class FirstRunFlowSequencer { * @param freProperties Resulting FRE properties bundle. */ public void onNativeAndPoliciesInitialized(Bundle freProperties) { @@ -1284,7 +1356,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } /** -@@ -194,9 +172,6 @@ public abstract class FirstRunFlowSequencer { +@@ -194,9 +166,6 @@ public abstract class FirstRunFlowSequencer { if (!FirstRunUtils.isFirstRunEulaAccepted()) { FirstRunUtils.setEulaAccepted(); } @@ -1297,13 +1369,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/LightweightFirstRunActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/LightweightFirstRunActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/LightweightFirstRunActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/LightweightFirstRunActivity.java -@@ -86,10 +86,7 @@ public class LightweightFirstRunActivity +@@ -86,11 +86,7 @@ public class LightweightFirstRunActivity return; } - @ChildAccountStatus.Status -- int childAccountStatus = freProperties.getInt( -- SigninFirstRunFragment.CHILD_ACCOUNT_STATUS, ChildAccountStatus.NOT_CHILD); +- int childAccountStatus = +- freProperties.getInt(SyncConsentFirstRunFragment.CHILD_ACCOUNT_STATUS, +- ChildAccountStatus.NOT_CHILD); - initializeViews(ChildAccountStatus.isChild(childAccountStatus)); + initializeViews(false); } @@ -1312,13 +1385,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/Lightw diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java -@@ -106,19 +106,9 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm +@@ -24,7 +24,6 @@ import androidx.fragment.app.Fragment; + import org.chromium.base.metrics.RecordHistogram; + import org.chromium.chrome.R; + import org.chromium.chrome.browser.version.ChromeVersionInfo; +-import org.chromium.components.signin.ChildAccountStatus; + import org.chromium.ui.text.NoUnderlineClickableSpan; + import org.chromium.ui.text.SpanApplier; + import org.chromium.ui.text.SpanApplier.SpanInfo; +@@ -106,19 +105,9 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm final CharSequence tosText; Bundle freProperties = getPageDelegate().getProperties(); - @ChildAccountStatus.Status - int childAccountStatus = freProperties.getInt( -- SigninFirstRunFragment.CHILD_ACCOUNT_STATUS, ChildAccountStatus.NOT_CHILD); +- SyncConsentFirstRunFragment.CHILD_ACCOUNT_STATUS, ChildAccountStatus.NOT_CHILD); - if (childAccountStatus == ChildAccountStatus.REGULAR_CHILD) { - tosText = SpanApplier.applySpans(getString(R.string.fre_tos_and_privacy_child_account), - new SpanInfo("", "", clickableGoogleTermsSpan), @@ -1368,7 +1449,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/identity_disc/I import org.chromium.chrome.browser.tab.Tab; import org.chromium.chrome.browser.toolbar.ButtonData; import org.chromium.chrome.browser.toolbar.ButtonData.ButtonSpec; -@@ -114,7 +113,7 @@ public class IdentityDiscController implements NativeInitObserver, ProfileDataCa +@@ -113,7 +112,7 @@ public class IdentityDiscController implements NativeInitObserver, ProfileDataCa ChromeFeatureList.isEnabled( ChromeFeatureList.MOBILE_IDENTITY_CONSISTENCY) ? MainSettings.class @@ -1399,15 +1480,23 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrow diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java --- a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java -@@ -48,7 +48,6 @@ import org.chromium.chrome.browser.download.DownloadController; +@@ -45,7 +45,6 @@ import org.chromium.chrome.browser.crash.MinidumpUploadServiceImpl; + import org.chromium.chrome.browser.download.DownloadController; import org.chromium.chrome.browser.download.DownloadManagerService; import org.chromium.chrome.browser.download.OfflineContentAvailabilityStatusProvider; - import org.chromium.chrome.browser.feature_engagement.TrackerFactory; -import org.chromium.chrome.browser.firstrun.ForcedSigninProcessor; import org.chromium.chrome.browser.firstrun.TosDialogBehaviorSharedPrefInvalidator; import org.chromium.chrome.browser.flags.CachedFeatureFlags; import org.chromium.chrome.browser.flags.ChromeFeatureList; -@@ -75,7 +74,6 @@ import org.chromium.chrome.browser.rlz.RevenueStats; +@@ -58,7 +57,6 @@ import org.chromium.chrome.browser.media.MediaViewerUtils; + import org.chromium.chrome.browser.metrics.LaunchMetrics; + import org.chromium.chrome.browser.metrics.PackageMetrics; + import org.chromium.chrome.browser.metrics.WebApkUma; +-import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings; + import org.chromium.chrome.browser.notifications.channels.ChannelsUpdater; + import org.chromium.chrome.browser.offline.measurements.OfflineMeasurementsBackgroundTask; + import org.chromium.chrome.browser.omnibox.voice.AssistantVoiceSearchService; +@@ -73,7 +71,6 @@ import org.chromium.chrome.browser.rlz.RevenueStats; import org.chromium.chrome.browser.searchwidget.SearchWidgetProvider; import org.chromium.chrome.browser.share.clipboard.ClipboardImageFileProvider; import org.chromium.chrome.browser.sharing.shared_clipboard.SharedClipboardShareActivity; @@ -1415,7 +1504,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessIni import org.chromium.chrome.browser.webapps.WebApkVersionManager; import org.chromium.chrome.browser.webapps.WebappRegistry; import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory; -@@ -365,22 +363,6 @@ public class ProcessInitializationHandler { +@@ -207,7 +204,6 @@ public class ProcessInitializationHandler { + * Performs the post native initialization. + */ + protected void handlePostNativeInitialization() { +- DataReductionProxySettings.handlePostNativeInitialization(); + ChromeActivitySessionTracker.getInstance().initializeWithNative(); + ProfileManagerUtils.removeSessionCookiesForAllProfiles(); + AppBannerManager.setAppDetailsDelegate(AppHooks.get().createAppDetailsDelegate()); +@@ -359,22 +355,6 @@ public class ProcessInitializationHandler { deferredStartupHandler.addDeferredTask(new Runnable() { @Override public void run() { @@ -1520,7 +1617,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM mProfileDataCache.addObserver(this); AccountManagerFacadeProvider.getInstance().addObserver(this); } -@@ -370,43 +346,10 @@ public class RecentTabsManager implements ProfileSyncService.SyncStateChangedLis +@@ -370,29 +346,7 @@ public class RecentTabsManager implements ProfileSyncService.SyncStateChangedLis */ @PromoState int getPromoType() { @@ -1530,7 +1627,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM - } - if (ChromeFeatureList.isEnabled(ChromeFeatureList.MOBILE_IDENTITY_CONSISTENCY) - && mSignInManager.getIdentityManager().getPrimaryAccountInfo( -- ConsentLevel.NOT_REQUIRED) +- ConsentLevel.SIGNIN) - != null) { - return PromoState.PROMO_SYNC_PERSONALIZED; - } @@ -1547,16 +1644,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM - return PromoState.PROMO_NONE; - } - return PromoState.PROMO_SYNC; -- } -- -- /** -- * Sets up the personalized signin promo and records user actions for promo impressions. -- * @param view The view to be configured. -- */ -- void setupPersonalizedSigninPromo(PersonalizedSigninPromoView view) { ++ return PromoState.PROMO_NONE; + } + + /** +@@ -400,13 +354,9 @@ public class RecentTabsManager implements ProfileSyncService.SyncStateChangedLis + * @param view The view to be configured. + */ + void setupPersonalizedSigninPromo(PersonalizedSigninPromoView view) { - SigninPromoUtil.setupSigninPromoViewFromCache( - mSigninPromoController, mProfileDataCache, view, null); -+ return PromoState.PROMO_NONE; } void setupPersonalizedSyncPromo(PersonalizedSigninPromoView view) { @@ -1565,7 +1662,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM } // SignInStateObserver implementation. -@@ -432,12 +375,6 @@ public class RecentTabsManager implements ProfileSyncService.SyncStateChangedLis +@@ -432,12 +382,6 @@ public class RecentTabsManager implements ProfileSyncService.SyncStateChangedLis update(); } @@ -1655,15 +1752,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordEntryViewer.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordEntryViewer.java --- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordEntryViewer.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordEntryViewer.java -@@ -36,7 +36,6 @@ import androidx.fragment.app.Fragment; - import org.chromium.base.ApiCompatibilityUtils; +@@ -39,7 +39,6 @@ import org.chromium.base.ApiCompatibilityUtils; import org.chromium.base.metrics.RecordHistogram; import org.chromium.chrome.R; + import org.chromium.chrome.browser.password_manager.ReauthResult; -import org.chromium.chrome.browser.sync.ProfileSyncService; import org.chromium.components.browser_ui.settings.SettingsUtils; import org.chromium.ui.text.SpanApplier; import org.chromium.ui.widget.Toast; -@@ -213,9 +212,7 @@ public class PasswordEntryViewer +@@ -216,9 +215,7 @@ public class PasswordEntryViewer } private boolean isPasswordSyncingUser() { @@ -1687,21 +1784,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting import org.chromium.components.browser_ui.settings.ChromeSwitchPreference; import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate; import org.chromium.components.browser_ui.settings.SettingsLauncher; -@@ -49,12 +46,11 @@ public class PrivacySettings +@@ -49,7 +46,6 @@ public class PrivacySettings private static final String PREF_NETWORK_PREDICTIONS = "preload_pages"; private static final String PREF_SECURE_DNS = "secure_dns"; private static final String PREF_DO_NOT_TRACK = "do_not_track"; - private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link"; private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data"; private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; - private static final String[] NEW_PRIVACY_PREFERENCE_ORDER = {PREF_CLEAR_BROWSING_DATA, - PREF_CAN_MAKE_PAYMENT, PREF_NETWORK_PREDICTIONS, -- PREF_SECURE_DNS, PREF_DO_NOT_TRACK, PREF_PRIVACY_SANDBOX, PREF_SYNC_AND_SERVICES_LINK}; -+ PREF_SECURE_DNS, PREF_DO_NOT_TRACK, PREF_PRIVACY_SANDBOX}; - private ManagedPreferenceDelegate mManagedPreferenceDelegate; - -@@ -110,47 +106,9 @@ public class PrivacySettings +@@ -97,47 +93,9 @@ public class PrivacySettings Preference secureDnsPref = findPreference(PREF_SECURE_DNS); secureDnsPref.setVisible(SecureDnsSettings.isUiEnabled()); @@ -1779,16 +1870,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/services/Accoun import org.chromium.chrome.browser.profiles.Profile; -import org.chromium.chrome.browser.signin.SigninHelperProvider; import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; - import org.chromium.chrome.browser.signin.services.SigninPreferencesManager; import org.chromium.components.signin.AccountTrackerService; -@@ -52,7 +51,6 @@ public class AccountsChangedReceiver extends BroadcastReceiver { + import org.chromium.content_public.browser.UiThreadTaskTraits; +@@ -49,7 +48,6 @@ public class AccountsChangedReceiver extends BroadcastReceiver { + IdentityServicesProvider.get().getAccountTrackerService( Profile.getLastUsedRegularProfile()); - // TODO(bsazonov): Check whether invalidateAccountSeedStatus is needed here. - trackerService.invalidateAccountSeedStatus(false /* don't refresh right now */); -- SigninHelperProvider.get().validateAccountSettings(true); + trackerService.onAccountsChanged(); +- SigninHelperProvider.get().validateAccountSettings(); }); } - + }; diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSettings.java @@ -1803,9 +1894,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe import org.chromium.chrome.browser.night_mode.NightModeUtils; import org.chromium.chrome.browser.offlinepages.prefetch.PrefetchConfiguration; import org.chromium.chrome.browser.password_check.PasswordCheck; -@@ -32,15 +30,6 @@ import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher; +@@ -31,15 +29,6 @@ import org.chromium.chrome.browser.password_manager.ManagePasswordsReferrer; + import org.chromium.chrome.browser.password_manager.PasswordManagerLauncher; import org.chromium.chrome.browser.profiles.Profile; - import org.chromium.chrome.browser.safety_check.SafetyCheckSettingsFragment; import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory; -import org.chromium.chrome.browser.signin.SigninActivityLauncherImpl; -import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; @@ -1819,7 +1910,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe import org.chromium.chrome.browser.tracing.settings.DeveloperSettings; import org.chromium.components.browser_ui.settings.ChromeBasePreference; import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate; -@@ -59,23 +48,17 @@ import java.util.Map; +@@ -58,23 +47,17 @@ import java.util.Map; * The main settings screen, shown when the user first opens Settings. */ public class MainSettings extends PreferenceFragmentCompat @@ -1844,7 +1935,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe public static final String PREF_NOTIFICATIONS = "notifications"; public static final String PREF_DOWNLOADS = "downloads"; public static final String PREF_DEVELOPER = "developer"; -@@ -86,9 +69,6 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -85,9 +68,6 @@ public class MainSettings extends PreferenceFragmentCompat private final ManagedPreferenceDelegate mManagedPreferenceDelegate; private final Map mAllPreferences = new HashMap<>(); @@ -1854,7 +1945,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe private @Nullable PasswordCheck mPasswordCheck; public MainSettings() { -@@ -118,41 +98,12 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -117,41 +97,12 @@ public class MainSettings extends PreferenceFragmentCompat @Override public void onDestroy() { super.onDestroy(); @@ -1896,7 +1987,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe @Override public void onResume() { super.onResume(); -@@ -171,12 +122,9 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -163,12 +114,9 @@ public class MainSettings extends PreferenceFragmentCompat cachePreferences(); @@ -1909,9 +2000,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { // If we are on Android O+ the Notifications preference should lead to the Android -@@ -214,17 +162,6 @@ public class MainSettings extends PreferenceFragmentCompat - .setTitle(SafetyCheckSettingsFragment.getSafetyCheckSettingsElementTitle( - getContext())); +@@ -197,17 +145,6 @@ public class MainSettings extends PreferenceFragmentCompat + TemplateUrlServiceFactory.get().registerLoadListener(this); + TemplateUrlServiceFactory.get().load(); } - - // Replace the account section header, replace SyncAndServicesSettings with @@ -1927,7 +2018,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe } /** -@@ -237,9 +174,6 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -220,9 +157,6 @@ public class MainSettings extends PreferenceFragmentCompat Preference preference = getPreferenceScreen().getPreference(index); mAllPreferences.put(preference.getKey(), preference); } @@ -1937,7 +2028,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe } private void setManagedPreferenceDelegateForPreference(String key) { -@@ -248,15 +182,6 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -231,15 +165,6 @@ public class MainSettings extends PreferenceFragmentCompat } private void updatePreferences() { @@ -1953,7 +2044,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe updateSearchEnginePreference(); Preference homepagePref = addPreferenceIfAbsent(PREF_HOMEPAGE); -@@ -273,10 +198,6 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -256,10 +181,6 @@ public class MainSettings extends PreferenceFragmentCompat } else { removePreferenceIfPresent(PREF_DEVELOPER); } @@ -1964,7 +2055,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe } private Preference addPreferenceIfAbsent(String key) { -@@ -290,55 +211,6 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -273,55 +194,6 @@ public class MainSettings extends PreferenceFragmentCompat if (preference != null) getPreferenceScreen().removePreference(preference); } @@ -1986,7 +2077,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe - String primaryAccountName = CoreAccountInfo.getEmailFrom( - IdentityServicesProvider.get() - .getIdentityManager(Profile.getLastUsedRegularProfile()) -- .getPrimaryAccountInfo(ConsentLevel.NOT_REQUIRED)); +- .getPrimaryAccountInfo(ConsentLevel.SIGNIN)); - boolean showManageSync = - ChromeFeatureList.isEnabled(ChromeFeatureList.MOBILE_IDENTITY_CONSISTENCY) - && primaryAccountName != null; @@ -2020,7 +2111,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe private void updateSearchEnginePreference() { if (!TemplateUrlServiceFactory.get().isLoaded()) { ChromeBasePreference searchEnginePref = -@@ -370,30 +242,6 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -353,30 +225,6 @@ public class MainSettings extends PreferenceFragmentCompat pref.setSummary(isOn ? R.string.text_on : R.string.text_off); } @@ -2051,7 +2142,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe // TemplateUrlService.LoadListener implementation. @Override public void onTemplateUrlServiceLoaded() { -@@ -401,11 +249,6 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -384,11 +232,6 @@ public class MainSettings extends PreferenceFragmentCompat updateSearchEnginePreference(); } @@ -2063,7 +2154,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe @VisibleForTesting public ManagedPreferenceDelegate getManagedPreferenceDelegateForTest() { return mManagedPreferenceDelegate; -@@ -415,9 +258,6 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -398,9 +241,6 @@ public class MainSettings extends PreferenceFragmentCompat return new ChromeManagedPreferenceDelegate() { @Override public boolean isPreferenceControlledByPolicy(Preference preference) { @@ -2073,7 +2164,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe if (PREF_SEARCH_ENGINE.equals(preference.getKey())) { return TemplateUrlServiceFactory.get().isDefaultSearchManaged(); } -@@ -426,11 +266,6 @@ public class MainSettings extends PreferenceFragmentCompat +@@ -409,11 +249,6 @@ public class MainSettings extends PreferenceFragmentCompat @Override public boolean isPreferenceClickDisabledByPolicy(Preference preference) { @@ -2088,15 +2179,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/MainSe diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java --- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java -@@ -47,7 +47,6 @@ import org.chromium.chrome.browser.profiles.ProfileManagerUtils; - import org.chromium.chrome.browser.safety_check.SafetyCheckCoordinator; +@@ -51,7 +51,6 @@ import org.chromium.chrome.browser.safety_check.SafetyCheckCoordinator; import org.chromium.chrome.browser.safety_check.SafetyCheckSettingsFragment; import org.chromium.chrome.browser.safety_check.SafetyCheckUpdatesDelegateImpl; + import org.chromium.chrome.browser.search_engines.settings.SearchEngineSettings; -import org.chromium.chrome.browser.signin.SigninActivityLauncherImpl; import org.chromium.chrome.browser.site_settings.ChromeSiteSettingsDelegate; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager.SnackbarManageable; -@@ -318,9 +317,7 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity +@@ -322,9 +321,7 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity HelpAndFeedbackLauncherImpl.getInstance()); } if (fragment instanceof SafetyCheckSettingsFragment) { @@ -2157,7 +2248,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHe deleted file mode 100644 --- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelperProvider.java +++ /dev/null -@@ -1,39 +0,0 @@ +@@ -1,37 +0,0 @@ -// Copyright 2020 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. @@ -2169,7 +2260,6 @@ deleted file mode 100644 -import org.chromium.chrome.browser.profiles.Profile; -import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; -import org.chromium.chrome.browser.signin.services.SigninHelper; --import org.chromium.chrome.browser.signin.services.SigninPreferencesManager; -import org.chromium.chrome.browser.sync.SyncController; -import org.chromium.chrome.browser.sync.SyncErrorNotifier; - @@ -2191,8 +2281,7 @@ deleted file mode 100644 - SyncController.get(); - Profile profile = Profile.getLastUsedRegularProfile(); - sInstance = new SigninHelper(IdentityServicesProvider.get().getSigninManager(profile), -- IdentityServicesProvider.get().getAccountTrackerService(profile), -- SigninPreferencesManager.getInstance()); +- IdentityServicesProvider.get().getAccountTrackerService(profile)); - } - return sInstance; - } @@ -2200,7 +2289,15 @@ deleted file mode 100644 diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java -@@ -55,7 +55,6 @@ import org.chromium.chrome.browser.preferences.SharedPreferencesManager; +@@ -31,7 +31,6 @@ import org.chromium.chrome.browser.compositor.layouts.LayoutManagerImpl; + import org.chromium.chrome.browser.compositor.layouts.OverviewModeBehavior; + import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager; + import org.chromium.chrome.browser.continuous_search.ContinuousSearchContainerCoordinator; +-import org.chromium.chrome.browser.datareduction.DataReductionPromoScreen; + import org.chromium.chrome.browser.feed.shared.FeedFeatures; + import org.chromium.chrome.browser.feed.webfeed.WebFeedBridge; + import org.chromium.chrome.browser.feed.webfeed.WebFeedFollowIntroController; +@@ -59,7 +58,6 @@ import org.chromium.chrome.browser.preferences.SharedPreferencesManager; import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.read_later.ReadLaterIPHController; import org.chromium.chrome.browser.share.ShareDelegate; @@ -2208,13 +2305,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab import org.chromium.chrome.browser.signin.ui.SigninPromoUtil; import org.chromium.chrome.browser.status_indicator.StatusIndicatorCoordinator; import org.chromium.chrome.browser.tab.Tab; -@@ -563,20 +562,6 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -651,21 +649,6 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { } private boolean maybeShowPromo() { - // Only one promo can be shown in one run to avoid nagging users too much. -- if (SigninPromoUtil.launchSigninPromoIfNeeded( -- mActivity, SigninActivityLauncherImpl.get())) { +- if (SigninPromoUtil.launchSigninPromoIfNeeded(mActivity, SigninActivityLauncherImpl.get(), +- ChromeVersionInfo.getProductMajorVersion())) { - return true; - } - if (DataReductionPromoScreen.launchDataReductionPromo( @@ -2226,14 +2323,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab - return true; - } - -- return LanguageAskPrompt.maybeShowLanguageAskPrompt(mActivity); -+ return false; +- return LanguageAskPrompt.maybeShowLanguageAskPrompt( +- mActivity, mActivity.getModalDialogManagerSupplier()); ++ return false; } } diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -2876,8 +2876,6 @@ static_library("browser") { +@@ -2825,8 +2825,6 @@ static_library("browser") { "android/shortcut_helper.h", "android/signin/signin_bridge.cc", "android/signin/signin_bridge.h", @@ -2242,8 +2340,8 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "android/signin/signin_metrics_utils.cc", "android/signin/unified_consent_service_bridge.cc", "android/signin/web_signin_bridge.cc", -@@ -3177,8 +3175,6 @@ static_library("browser") { - "sharing/sharing_service_proxy_android.h", +@@ -3133,8 +3131,6 @@ static_library("browser") { + "sharing/sms/sms_fetch_request_handler.h", "shell_integration_android.cc", "signin/identity_services_provider_android.cc", - "signin/signin_manager_android_factory.cc", @@ -2251,7 +2349,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "ssl/chrome_security_state_client.cc", "ssl/chrome_security_state_client.h", "ssl/chrome_security_state_model_delegate.cc", -@@ -3193,8 +3189,6 @@ static_library("browser") { +@@ -3151,8 +3147,6 @@ static_library("browser") { "sync/glue/synced_window_delegates_getter_android.h", "sync/profile_sync_service_android.cc", "sync/profile_sync_service_android.h", @@ -2260,7 +2358,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "sync/trusted_vault_client_android.cc", "sync/trusted_vault_client_android.h", "tab/web_contents_state.cc", -@@ -5596,10 +5590,6 @@ static_library("browser") { +@@ -5608,10 +5602,6 @@ static_library("browser") { "signin/logout_tab_helper.h", "signin/process_dice_header_delegate_impl.cc", "signin/process_dice_header_delegate_impl.h", @@ -2297,7 +2395,7 @@ diff --git a/chrome/browser/signin/identity_services_provider_android.cc b/chrom diff --git a/chrome/browser/signin/services/android/BUILD.gn b/chrome/browser/signin/services/android/BUILD.gn --- a/chrome/browser/signin/services/android/BUILD.gn +++ b/chrome/browser/signin/services/android/BUILD.gn -@@ -19,7 +19,6 @@ android_library("java") { +@@ -18,7 +18,6 @@ android_library("java") { "java/src/org/chromium/chrome/browser/signin/services/DisplayableProfileData.java", "java/src/org/chromium/chrome/browser/signin/services/IdentityServicesProvider.java", "java/src/org/chromium/chrome/browser/signin/services/ProfileDataCache.java", @@ -2581,24 +2679,21 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java b/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java --- a/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java +++ b/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java -@@ -172,16 +172,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -167,13 +167,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { + } - @Override - public boolean hasFeatures(Account account, String[] features) { -- if (!hasGetAccountsPermission()) { -- return false; -- } -- try { -- return mAccountManager.hasFeatures(account, features, null, null).getResult(); -- } catch (AuthenticatorException | IOException e) { -- Log.e(TAG, "Error while checking features: ", e); -- } catch (OperationCanceledException e) { -- Log.e(TAG, "Checking features was cancelled. This should not happen."); + protected boolean hasFeatures(Account account, String[] features) { +- if (hasGetAccountsPermission()) { +- try { +- return mAccountManager.hasFeatures(account, features, null, null).getResult(); +- } catch (AuthenticatorException | IOException | OperationCanceledException e) { +- Log.e(TAG, "Error while checking features: ", e); +- } - } return false; } -@@ -221,32 +211,10 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -218,32 +211,10 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { public void updateCredentials( Account account, Activity activity, final Callback callback) { ThreadUtils.assertOnUiThread(); diff --git a/build/patches/Remove-weblayer-dependency-on-Play-Services.patch b/build/patches/Remove-weblayer-dependency-on-Play-Services.patch index 72c70aa9..57800074 100644 --- a/build/patches/Remove-weblayer-dependency-on-Play-Services.patch +++ b/build/patches/Remove-weblayer-dependency-on-Play-Services.patch @@ -10,7 +10,7 @@ Subject: Remove weblayer dependency on Play Services diff --git a/weblayer/browser/java/BUILD.gn b/weblayer/browser/java/BUILD.gn --- a/weblayer/browser/java/BUILD.gn +++ b/weblayer/browser/java/BUILD.gn -@@ -101,7 +101,6 @@ android_library("base_module_java") { +@@ -102,7 +102,6 @@ android_library("base_module_java") { ] deps = [ ":base_module_interfaces_java", diff --git a/build/patches/Replace-DoH-probe-domain-with-RIPE-domain.patch b/build/patches/Replace-DoH-probe-domain-with-RIPE-domain.patch index a1b143d6..b0fd576c 100644 --- a/build/patches/Replace-DoH-probe-domain-with-RIPE-domain.patch +++ b/build/patches/Replace-DoH-probe-domain-with-RIPE-domain.patch @@ -9,7 +9,7 @@ Subject: Replace DoH probe domain with RIPE domain diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc --- a/net/dns/dns_transaction.cc +++ b/net/dns/dns_transaction.cc -@@ -833,7 +833,7 @@ class DnsTCPAttempt : public DnsAttempt { +@@ -835,7 +835,7 @@ class DnsTCPAttempt : public DnsAttempt { // ---------------------------------------------------------------------------- diff --git a/build/patches/Restore-Search-Ready-Omnibox-flag.patch b/build/patches/Restore-Search-Ready-Omnibox-flag.patch index a385e0a6..12b6d435 100644 --- a/build/patches/Restore-Search-Ready-Omnibox-flag.patch +++ b/build/patches/Restore-Search-Ready-Omnibox-flag.patch @@ -54,7 +54,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggest diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -3260,6 +3260,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3250,6 +3250,9 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kAndroidAutofillAccessibilityName, flag_descriptions::kAndroidAutofillAccessibilityDescription, kOsAndroid, FEATURE_VALUE_TYPE(features::kAndroidAutofillAccessibility)}, @@ -67,7 +67,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -2166,6 +2166,11 @@ +@@ -2202,6 +2202,11 @@ // with neural net palm detection. "expiry_milestone": 90 }, @@ -82,7 +82,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -3329,6 +3329,11 @@ const char kSafeBrowsingUseLocalBlacklistsV2Description[] = +@@ -3368,6 +3368,11 @@ const char kSafeBrowsingUseLocalBlacklistsV2Description[] = "process to check the Safe Browsing reputation of URLs without calling " "into GmsCore for every URL."; @@ -97,7 +97,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -1923,6 +1923,9 @@ extern const char kSafeBrowsingSectionUiAndroidDescription[]; +@@ -1946,6 +1946,9 @@ extern const char kEnhancedProtectionPromoAndroidDescription[]; extern const char kSafeBrowsingUseLocalBlacklistsV2Name[]; extern const char kSafeBrowsingUseLocalBlacklistsV2Description[]; @@ -110,7 +110,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -212,6 +212,7 @@ const base::Feature* kFeaturesExposedToJava[] = { +@@ -215,6 +215,7 @@ const base::Feature* kFeaturesExposedToJava[] = { &kReachedCodeProfiler, &kReaderModeInCCT, &kReengagementNotification, @@ -118,7 +118,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse &kRelatedSearches, &kRelatedSearchesUi, &kSearchEnginePromoExistingDevice, -@@ -606,6 +607,9 @@ const base::Feature kRelatedSearches{"RelatedSearches", +@@ -616,6 +617,9 @@ const base::Feature kRelatedSearches{"RelatedSearches", const base::Feature kRelatedSearchesUi{"RelatedSearchesUi", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -131,7 +131,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h --- a/chrome/browser/flags/android/chrome_feature_list.h +++ b/chrome/browser/flags/android/chrome_feature_list.h -@@ -107,6 +107,7 @@ extern const base::Feature kRelatedSearches; +@@ -111,6 +111,7 @@ extern const base::Feature kRelatedSearches; extern const base::Feature kRelatedSearchesUi; extern const base::Feature kSearchEnginePromoExistingDevice; extern const base::Feature kSearchEnginePromoNewDevice; @@ -142,7 +142,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java --- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java -@@ -386,6 +386,7 @@ public abstract class ChromeFeatureList { +@@ -390,6 +390,7 @@ public abstract class ChromeFeatureList { public static final String OMNIBOX_ADAPTIVE_SUGGESTIONS_COUNT = "OmniboxAdaptiveSuggestionsCount"; public static final String OMNIBOX_ASSISTANT_VOICE_SEARCH = "OmniboxAssistantVoiceSearch"; diff --git a/build/patches/Restore-Simplified-NTP-launch.patch b/build/patches/Restore-Simplified-NTP-launch.patch index c60bd168..ca889e7e 100644 --- a/build/patches/Restore-Simplified-NTP-launch.patch +++ b/build/patches/Restore-Simplified-NTP-launch.patch @@ -28,9 +28,9 @@ This reverts commit 4d0e4483c5f77c66a8b6193e8a3bec5d0624d6ad. diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni -@@ -809,6 +809,7 @@ chrome_java_resources = [ - "java/res/layout/new_tab_page_snippets_expandable_header.xml", - "java/res/layout/new_tab_page_snippets_expandable_header_with_menu.xml", +@@ -791,6 +791,7 @@ chrome_java_resources = [ + "java/res/layout/new_tab_page_layout.xml", + "java/res/layout/new_tab_page_multi_feed_header.xml", "java/res/layout/new_tab_page_tile_grid_placeholder.xml", + "java/res/layout/ntp_shortcuts.xml", "java/res/layout/omnibox_answer_suggestion.xml", @@ -39,7 +39,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni -@@ -592,6 +592,7 @@ chrome_java_sources = [ +@@ -582,6 +582,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/feedback/FeedFeedbackCollector.java", "java/src/org/chromium/chrome/browser/feedback/HelpAndFeedbackLauncherImpl.java", "java/src/org/chromium/chrome/browser/feedback/ScreenshotTask.java", @@ -191,15 +191,15 @@ new file mode 100644 diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java -@@ -38,6 +38,7 @@ import org.chromium.chrome.browser.explore_sites.ExploreSitesBridge; - import org.chromium.chrome.browser.feature_engagement.TrackerFactory; +@@ -36,6 +36,7 @@ import org.chromium.chrome.browser.cryptids.ProbabilisticCryptidRenderer; + import org.chromium.chrome.browser.explore_sites.ExperimentalExploreSitesSection; + import org.chromium.chrome.browser.explore_sites.ExploreSitesBridge; import org.chromium.chrome.browser.lens.LensEntryPoint; - import org.chromium.chrome.browser.lens.LensFeature; +import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher; import org.chromium.chrome.browser.native_page.ContextMenuManager; import org.chromium.chrome.browser.ntp.LogoBridge.Logo; -@@ -108,6 +109,8 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -107,6 +108,8 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer private UiConfig mUiConfig; private CallbackController mCallbackController = new CallbackController(); @@ -208,7 +208,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL /** * Whether the tiles shown in the layout have finished loading. * With {@link #mHasShownView}, it's one of the 2 flags used to track initialisation progress. -@@ -281,6 +284,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -271,6 +274,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer } mNoSearchLogoSpacer = findViewById(R.id.no_search_logo_spacer); @@ -216,7 +216,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL initializeSearchBoxTextView(); initializeVoiceSearchButton(); initializeLensButton(); -@@ -594,10 +598,16 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -562,10 +566,16 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer * Updates the padding for the tile grid based on what is shown above it. */ private void updateTileGridPadding() { @@ -235,7 +235,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL mSiteSectionViewHolder.itemView.setPadding( 0, paddingTop, 0, mSiteSectionViewHolder.itemView.getPaddingBottom()); } -@@ -1011,6 +1021,22 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -946,6 +956,22 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer return iphCommandBuilder; } @@ -306,7 +306,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/suggestions/Sug diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -3836,6 +3836,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3831,6 +3831,9 @@ const FeatureEntry kFeatureEntries[] = { SINGLE_VALUE_TYPE_AND_VALUE( switches::kForceShowUpdateMenuItemCustomSummary, "Custom Summary")}, @@ -319,7 +319,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -3374,6 +3374,9 @@ const char kStartSurfaceAndroidDescription[] = +@@ -3407,6 +3407,9 @@ const char kStartSurfaceAndroidDescription[] = "Enable showing the start surface when launching Chrome via the " "launcher."; @@ -332,7 +332,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -1950,6 +1950,9 @@ extern const char kSiteIsolationForPasswordSitesDescription[]; +@@ -1967,6 +1967,9 @@ extern const char kSiteIsolationForPasswordSitesDescription[]; extern const char kSmartSuggestionForLargeDownloadsName[]; extern const char kSmartSuggestionForLargeDownloadsDescription[]; @@ -345,15 +345,15 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc --- a/chrome/browser/flags/android/chrome_feature_list.cc +++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -194,6 +194,7 @@ const base::Feature* kFeaturesExposedToJava[] = { +@@ -196,6 +196,7 @@ const base::Feature* kFeaturesExposedToJava[] = { &kEphemeralTabUsingBottomSheet, &kExperimentsForAgsa, &kExploreSites, + &kSimplifiedNTP, &kFocusOmniboxInIncognitoTabIntents, + &kGoogleLensSdkIntent, &kHandleMediaIntents, - &kHomepagePromoCard, -@@ -587,6 +588,9 @@ const base::Feature kOfflineIndicatorV2{"OfflineIndicatorV2", +@@ -593,6 +594,9 @@ const base::Feature kOfflineIndicatorV2{"OfflineIndicatorV2", const base::Feature kOfflineMeasurementsBackgroundTask{ "OfflineMeasurementsBackgroundTask", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -361,12 +361,12 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse + base::FEATURE_ENABLED_BY_DEFAULT}; + const base::Feature kOmniboxSpareRenderer{"OmniboxSpareRenderer", - base::FEATURE_DISABLED_BY_DEFAULT}; + base::FEATURE_ENABLED_BY_DEFAULT}; diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h --- a/chrome/browser/flags/android/chrome_feature_list.h +++ b/chrome/browser/flags/android/chrome_feature_list.h -@@ -99,6 +99,7 @@ extern const base::Feature kNotificationSuspender; +@@ -102,6 +102,7 @@ extern const base::Feature kNotificationSuspender; extern const base::Feature kOfflineIndicatorV2; extern const base::Feature kOfflineMeasurementsBackgroundTask; extern const base::Feature kOmniboxSpareRenderer; @@ -377,7 +377,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java --- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java +++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java -@@ -365,6 +365,7 @@ public abstract class ChromeFeatureList { +@@ -367,6 +367,7 @@ public abstract class ChromeFeatureList { public static final String LOOKALIKE_NAVIGATION_URL_SUGGESTIONS_UI = "LookalikeUrlNavigationSuggestionsUI"; public static final String MARK_HTTP_AS = "MarkHttpAs"; @@ -410,7 +410,7 @@ diff --git a/components/ntp_snippets/features.cc b/components/ntp_snippets/featu diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variations/fieldtrial_testing_config.json --- a/testing/variations/fieldtrial_testing_config.json +++ b/testing/variations/fieldtrial_testing_config.json -@@ -6917,6 +6917,24 @@ +@@ -6626,6 +6626,24 @@ ] } ], diff --git a/build/patches/Restore-classic-new-tab-page.patch b/build/patches/Restore-classic-new-tab-page.patch index e514f75c..6c2dd924 100644 --- a/build/patches/Restore-classic-new-tab-page.patch +++ b/build/patches/Restore-classic-new-tab-page.patch @@ -9,7 +9,7 @@ Subject: Restore classic new tab page diff --git a/chrome/browser/search/search.cc b/chrome/browser/search/search.cc --- a/chrome/browser/search/search.cc +++ b/chrome/browser/search/search.cc -@@ -91,16 +91,6 @@ enum NewTabURLState { +@@ -92,16 +92,6 @@ enum NewTabURLState { NEW_TAB_URL_MAX }; @@ -26,8 +26,8 @@ diff --git a/chrome/browser/search/search.cc b/chrome/browser/search/search.cc bool IsMatchingServiceWorker(const GURL& my_url, const GURL& document_url) { // The origin should match. if (!MatchesOrigin(my_url, document_url)) -@@ -140,31 +130,6 @@ GURL RemoveQueryParam(const GURL& url) { - return url.ReplaceComponents(replacements); +@@ -135,31 +125,6 @@ bool IsNTPOrRelatedURLHelper(const GURL& url, Profile* profile) { + IsMatchingServiceWorker(url, new_tab_url)); } -bool IsURLAllowedForSupervisedUser(const GURL& url, Profile* profile) { @@ -58,8 +58,8 @@ diff --git a/chrome/browser/search/search.cc b/chrome/browser/search/search.cc // Used to look up the URL to use for the New Tab page. Also tracks how we // arrived at that URL so it can be logged with UMA. struct NewTabURLDetails { -@@ -188,10 +153,9 @@ struct NewTabURLDetails { - : chrome::kChromeSearchLocalNtpUrl); +@@ -182,10 +147,9 @@ struct NewTabURLDetails { + : chrome::kChromeUINewTabPageThirdPartyURL); #endif - if (ShouldShowLocalNewTab(profile)) @@ -71,7 +71,7 @@ diff --git a/chrome/browser/search/search.cc b/chrome/browser/search/search.cc GetDefaultSearchProviderTemplateURL(profile); if (!profile || !template_url) return NewTabURLDetails(local_url, NEW_TAB_URL_BAD); -@@ -207,7 +171,7 @@ struct NewTabURLDetails { +@@ -201,7 +165,7 @@ struct NewTabURLDetails { if (!IsURLAllowedForSupervisedUser(search_provider_url, profile)) return NewTabURLDetails(local_url, NEW_TAB_URL_BLOCKED); diff --git a/build/patches/Revert-Remove-horizontal-tab-switcher-experiment-logic.patch b/build/patches/Revert-Remove-horizontal-tab-switcher-experiment-logic.patch deleted file mode 100644 index e6603087..00000000 --- a/build/patches/Revert-Remove-horizontal-tab-switcher-experiment-logic.patch +++ /dev/null @@ -1,1217 +0,0 @@ -From: csagan5 <32685696+csagan5@users.noreply.github.com> -Date: Sat, 4 Jan 2020 14:49:43 +0100 -Subject: Revert "Remove horizontal tab switcher experiment logic" - -This reverts commit 35156bbe110b1049894e7125e0ba2026340ada0a. ---- - chrome/android/chrome_java_sources.gni | 1 + - .../browser/app/flags/ChromeCachedFlags.java | 1 + - .../browser/compositor/LayerTitleCache.java | 6 +- - .../compositor/layouts/phone/StackLayout.java | 43 +- - .../layouts/phone/StackLayoutBase.java | 47 +- - .../phone/stack/NonOverlappingStack.java | 504 ++++++++++++++++++ - .../compositor/layouts/phone/stack/Stack.java | 12 +- - .../layouts/phone/stack/StackAnimation.java | 56 +- - .../scene_layer/TabListSceneLayer.java | 9 +- - .../survey/ChromeSurveyController.java | 20 +- - .../chrome/browser/toolbar/ToolbarColors.java | 6 +- - .../toolbar/top/TabSwitcherModeTTPhone.java | 20 +- - .../survey/ChromeSurveyControllerTest.java | 2 + - chrome/browser/about_flags.cc | 5 + - chrome/browser/flag-metadata.json | 5 + - chrome/browser/flag_descriptions.cc | 6 + - chrome/browser/flag_descriptions.h | 3 + - .../flags/android/chrome_feature_list.cc | 4 + - .../flags/android/chrome_feature_list.h | 1 + - .../browser/flags/CachedFeatureFlags.java | 1 + - .../browser/flags/ChromeFeatureList.java | 1 + - 21 files changed, 733 insertions(+), 20 deletions(-) - create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/NonOverlappingStack.java - -diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni ---- a/chrome/android/chrome_java_sources.gni -+++ b/chrome/android/chrome_java_sources.gni -@@ -324,6 +324,7 @@ chrome_java_sources = [ - "java/src/org/chromium/chrome/browser/compositor/layouts/phone/SimpleAnimationLayout.java", - "java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayout.java", - "java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayoutBase.java", -+ "java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/NonOverlappingStack.java", - "java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/OverlappingStack.java", - "java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/Stack.java", - "java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimation.java", -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java -@@ -78,6 +78,7 @@ public class ChromeCachedFlags { - ChromeFeatureList.CONDITIONAL_TAB_STRIP_ANDROID, - ChromeFeatureList.DOWNLOADS_AUTO_RESUMPTION_NATIVE, - ChromeFeatureList.EARLY_LIBRARY_LOAD, -+ ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID, - ChromeFeatureList.IMMERSIVE_UI_MODE, - ChromeFeatureList.INSTANT_START, - ChromeFeatureList.INTEREST_FEED_V2, -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/LayerTitleCache.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/LayerTitleCache.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/LayerTitleCache.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/LayerTitleCache.java -@@ -15,6 +15,7 @@ import org.chromium.base.annotations.JNINamespace; - import org.chromium.base.annotations.NativeMethods; - import org.chromium.chrome.R; - import org.chromium.chrome.browser.compositor.layouts.content.TitleBitmapFactory; -+import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.profiles.Profile; - import org.chromium.chrome.browser.tab.Tab; - import org.chromium.chrome.browser.tab.TabFavicon; -@@ -22,6 +23,7 @@ import org.chromium.chrome.browser.tabmodel.TabModelSelector; - import org.chromium.chrome.browser.ui.favicon.FaviconHelper; - import org.chromium.chrome.browser.ui.favicon.FaviconHelper.DefaultFaviconHelper; - import org.chromium.chrome.browser.ui.favicon.FaviconHelper.FaviconImageCallback; -+import org.chromium.ui.base.DeviceFormFactor; - import org.chromium.ui.base.LocalizationUtils; - import org.chromium.ui.resources.ResourceManager; - import org.chromium.ui.resources.dynamics.BitmapDynamicResource; -@@ -117,7 +119,9 @@ public class LayerTitleCache implements TitleCache { - private String getUpdatedTitleInternal(Tab tab, String titleString, - boolean fetchFaviconFromHistory) { - final int tabId = tab.getId(); -- boolean isDarkTheme = tab.isIncognito(); -+ boolean isHTSEnabled = !DeviceFormFactor.isNonMultiDisplayContextOnTablet(tab.getContext()) -+ && ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID); -+ boolean isDarkTheme = tab.isIncognito() && !isHTSEnabled; - Bitmap originalFavicon = TabFavicon.getBitmap(tab); - if (originalFavicon == null) { - originalFavicon = mDefaultFaviconHelper.getDefaultFaviconBitmap( -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayout.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayout.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayout.java -@@ -12,6 +12,7 @@ import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider - import org.chromium.chrome.browser.compositor.layouts.LayoutRenderHost; - import org.chromium.chrome.browser.compositor.layouts.LayoutUpdateHost; - import org.chromium.chrome.browser.compositor.layouts.content.TabContentManager; -+import org.chromium.chrome.browser.compositor.layouts.phone.stack.NonOverlappingStack; - import org.chromium.chrome.browser.tab.Tab; - import org.chromium.chrome.browser.tabmodel.TabList; - import org.chromium.chrome.browser.tabmodel.TabModel; -@@ -131,8 +132,38 @@ public class StackLayout extends StackLayoutBase { - - @Override - public void onTabModelSwitched(boolean toIncognitoTabModel) { -- flingStacks(toIncognitoTabModel ? INCOGNITO_STACK_INDEX : NORMAL_STACK_INDEX); -- mFlingFromModelChange = true; -+ if (isHorizontalTabSwitcherFlagEnabled()) { -+ // Don't allow switching between normal and incognito again until the animations finish. -+ mAnimatingStackSwitch = true; -+ -+ // Make sure we update the tab switcher's background color even if no tabs are open and -+ // therefore neither the switch away nor switch to animations run. -+ requestUpdate(); -+ -+ NonOverlappingStack oldStack = (NonOverlappingStack) mStacks.get( -+ toIncognitoTabModel ? NORMAL_STACK_INDEX : INCOGNITO_STACK_INDEX); -+ oldStack.runSwitchAwayAnimation(toIncognitoTabModel -+ ? NonOverlappingStack.SwitchDirection.LEFT -+ : NonOverlappingStack.SwitchDirection.RIGHT); -+ } else { -+ flingStacks(toIncognitoTabModel ? INCOGNITO_STACK_INDEX : NORMAL_STACK_INDEX); -+ mFlingFromModelChange = true; -+ } -+ } -+ -+ @Override -+ public void onSwitchAwayFinished() { -+ int newStackIndex = getTabStackIndex(Tab.INVALID_TAB_ID); -+ mRenderedScrollOffset = -newStackIndex; -+ NonOverlappingStack newStack = (NonOverlappingStack) mStacks.get(newStackIndex); -+ newStack.runSwitchToAnimation(newStackIndex == INCOGNITO_STACK_INDEX -+ ? NonOverlappingStack.SwitchDirection.LEFT -+ : NonOverlappingStack.SwitchDirection.RIGHT); -+ } -+ -+ @Override -+ public void onSwitchToFinished() { -+ mAnimatingStackSwitch = false; - } - - @Override -@@ -147,6 +178,10 @@ public class StackLayout extends StackLayoutBase { - - @Override - protected int getMinRenderedScrollOffset() { -+ // If the horizontal tab switcher flag is enabled, we let the user tap the incognito button -+ // to switch to incognito mode, even if no incognito tabs are open. -+ if (isHorizontalTabSwitcherFlagEnabled()) return -1; -+ - // If there's at least one incognito tab open, or we're in the process of switching back - // from incognito to normal mode, return -1 so we don't cause any clamping. Otherwise, - // return 0 to prevent scrolling. -@@ -170,6 +205,10 @@ public class StackLayout extends StackLayoutBase { - - @Override - protected @SwipeMode int computeInputMode(long time, float x, float y, float dx, float dy) { -+ // If this experiment flag is enabled, we add an incognito toggle button to the toolbar, and -+ // disable swiping between the stacks. -+ if (isHorizontalTabSwitcherFlagEnabled()) return SwipeMode.SEND_TO_STACK; -+ - if (mStacks.size() == 2 && !mStacks.get(1).isDisplayable()) return SwipeMode.SEND_TO_STACK; - return super.computeInputMode(time, x, y, dx, dy); - } -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayoutBase.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayoutBase.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayoutBase.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/StackLayoutBase.java -@@ -34,10 +34,13 @@ import org.chromium.chrome.browser.compositor.layouts.components.LayoutTab; - import org.chromium.chrome.browser.compositor.layouts.content.TabContentManager; - import org.chromium.chrome.browser.compositor.layouts.eventfilter.GestureEventFilter; - import org.chromium.chrome.browser.compositor.layouts.eventfilter.GestureHandler; -+import org.chromium.chrome.browser.compositor.layouts.phone.stack.NonOverlappingStack; - import org.chromium.chrome.browser.compositor.layouts.phone.stack.OverlappingStack; - import org.chromium.chrome.browser.compositor.layouts.phone.stack.Stack; - import org.chromium.chrome.browser.compositor.layouts.phone.stack.StackTab; - import org.chromium.chrome.browser.compositor.scene_layer.TabListSceneLayer; -+import org.chromium.chrome.browser.flags.CachedFeatureFlags; -+import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.homepage.HomepageManager; - import org.chromium.chrome.browser.layouts.EventFilter; - import org.chromium.chrome.browser.layouts.LayoutType; -@@ -446,12 +449,20 @@ public abstract class StackLayoutBase extends Layout { - mScrollIndexOffset = v; - } - -+ /** -+ * Whether or not the HorizontalTabSwitcherAndroid flag (which enables the new horizontal tab -+ * switcher in both portrait and landscape mode) is enabled. -+ */ -+ protected boolean isHorizontalTabSwitcherFlagEnabled() { -+ return CachedFeatureFlags.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID); -+ } -+ - /** - * Whether or not we're currently having the tabs scroll horizontally (as opposed to - * vertically). - */ - private boolean isUsingHorizontalLayout() { -- return getOrientation() == Orientation.LANDSCAPE; -+ return getOrientation() == Orientation.LANDSCAPE || isHorizontalTabSwitcherFlagEnabled(); - } - - /** -@@ -464,7 +475,12 @@ public abstract class StackLayoutBase extends Layout { - mStacks.subList(lists.size(), mStacks.size()).clear(); - } - while (mStacks.size() < lists.size()) { -- Stack stack = new OverlappingStack(getContext(), this); -+ Stack stack; -+ if (isHorizontalTabSwitcherFlagEnabled()) { -+ stack = new NonOverlappingStack(getContext(), this); -+ } else { -+ stack = new OverlappingStack(getContext(), this); -+ } - stack.notifySizeChanged(mWidth, mHeight, mOrientation); - mStacks.add(stack); - } -@@ -751,6 +767,18 @@ public abstract class StackLayoutBase extends Layout { - } - } - -+ /** -+ * Called by a NonOverlappingStack that's had switchAwayEffect() called on it, once the -+ * animation has finished. -+ */ -+ public void onSwitchAwayFinished() {} -+ -+ /** -+ * Called by a NonOverlappingStack that's had switchToEffect() called on it, once the -+ * animation has finished. -+ */ -+ public void onSwitchToFinished() {} -+ - /** - * Called when layout-specific actions are needed after the animation finishes. - */ -@@ -840,7 +868,7 @@ public abstract class StackLayoutBase extends Layout { - // Tabs don't overlap in the horizontal tab switcher experiment, so the order comparator - // already does what we want (the visibility comparator's logic actually doesn't compute - // visibility properly in this case). -- mSortingComparator = mVisibilityComparator; -+ if (!isHorizontalTabSwitcherFlagEnabled()) mSortingComparator = mVisibilityComparator; - doneShowing(); - } - -@@ -1140,6 +1168,10 @@ public abstract class StackLayoutBase extends Layout { - - @Override - float getInnerMargin() { -+ // If we're using the new horizontal tab switcher, don't show the edge of the other -+ // stack (normal if in incognito mode and incognito if in normal mode) on-screen. -+ if (isHorizontalTabSwitcherFlagEnabled()) return 0; -+ - float margin = mInnerMarginPercent - * Math.max(mMinMaxInnerMargin, mWidth * INNER_MARGIN_PERCENT_PERCENT); - return margin; -@@ -1197,6 +1229,7 @@ public abstract class StackLayoutBase extends Layout { - // Need getHeight() for this case instead of getHeightMinusBrowserControls() so the - // normal stack goes up high enough to clear the status bar when the incognito stack is - // active. -+ if (isHorizontalTabSwitcherFlagEnabled()) return StackLayoutBase.this.getHeight(); - return Math.round(mWidth - getInnerMargin()); - } - } -@@ -1350,7 +1383,8 @@ public abstract class StackLayoutBase extends Layout { - // If the non-overlapping horizontal tab switcher experiment is enabled, we pass -1 so - // NonOverlappingStack can use the scroll position to keep the index used for visibility - // prioritization up-to-date. -- final boolean useFixedIndex = mSortingComparator == mOrderComparator; -+ final boolean useFixedIndex = -+ mSortingComparator == mOrderComparator && !isHorizontalTabSwitcherFlagEnabled(); - mStacks.get(i).setStackFocusInfo( - stackFocus, useFixedIndex ? mStacks.get(i).getTabList().index() : -1); - } -@@ -1423,6 +1457,11 @@ public abstract class StackLayoutBase extends Layout { - * @return The distance between two neighboring tab stacks. - */ - private float getFullScrollDistance() { -+ // For the horizontal tab switcher experiment, we use getHeight() instead of -+ // getHeightMinusBrowserControls() to make sure the normal stack goes up enough to clear the -+ // status bar when switching to incognito mode. -+ if (isHorizontalTabSwitcherFlagEnabled()) return getHeight(); -+ - float distance = isUsingHorizontalLayout() ? getHeightMinusContentOffsetsDp() : getWidth(); - if (mStacks.size() > 2) { - return distance - getViewportParameters().getInnerMargin(); -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/NonOverlappingStack.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/NonOverlappingStack.java -new file mode 100644 ---- /dev/null -+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/NonOverlappingStack.java -@@ -0,0 +1,504 @@ -+// Copyright 2018 The Chromium Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style license that can be -+// found in the LICENSE file. -+ -+package org.chromium.chrome.browser.compositor.layouts.phone.stack; -+ -+import android.animation.Animator; -+import android.animation.AnimatorListenerAdapter; -+import android.animation.AnimatorSet; -+import android.content.Context; -+ -+import androidx.annotation.IntDef; -+ -+import org.chromium.chrome.browser.compositor.layouts.components.LayoutTab; -+import org.chromium.chrome.browser.compositor.layouts.phone.StackLayoutBase; -+import org.chromium.chrome.browser.layouts.animation.CompositorAnimationHandler; -+import org.chromium.chrome.browser.layouts.animation.CompositorAnimator; -+ -+import java.lang.annotation.Retention; -+import java.lang.annotation.RetentionPolicy; -+import java.util.ArrayList; -+import java.util.Collection; -+ -+/** -+ * The non-overlapping tab stack we use when the HorizontalTabSwitcherAndroid flag is enabled. -+ */ -+public class NonOverlappingStack extends Stack { -+ @IntDef({SwitchDirection.LEFT, SwitchDirection.RIGHT}) -+ @Retention(RetentionPolicy.SOURCE) -+ public @interface SwitchDirection { -+ int LEFT = 0; -+ int RIGHT = 1; -+ } -+ -+ /** -+ * The scale the tabs should be shown at when there's exactly one tab open. -+ */ -+ private static final float SCALE_FRACTION_SINGLE_TAB = 0.80f; -+ -+ /** -+ * The scale the tabs should be shown at when there are two or more tabs open. -+ */ -+ private static final float SCALE_FRACTION_MULTIPLE_TABS = 0.54f; -+ -+ /** -+ * The percentage of the screen that defines the spacing between tabs by default (no pinch). -+ */ -+ private static final float SPACING_SCREEN = 1.0f; -+ -+ /** -+ * Controls how far we slide over the (up to) three visible tabs for the switch away and switch -+ * to animations (multiple of mSpacing). -+ */ -+ private static final float SWITCH_ANIMATION_SPACING_MULTIPLE = 2.5f; -+ -+ /** -+ * Duration of the switch away animation (in milliseconds). -+ */ -+ private static final int SWITCH_AWAY_ANIMATION_DURATION = 250; -+ -+ /** -+ * Duration of the switch to animation (in milliseconds). -+ */ -+ private static final int SWITCH_TO_ANIMATION_DURATION = 250; -+ -+ /** -+ * Adjustment to add a fixed amount of space between the tabs that's not based on a percentage -+ * of the screen (if were 0, the tab borders would actually overlap in the current -+ * implementation). -+ */ -+ private static final float EXTRA_SPACE_BETWEEN_TABS_DP = 25.0f; -+ -+ /** -+ * How much the stack should adjust the y position of each LayoutTab in portrait mode (as a -+ * fraction of the amount space that would be above and below the tab if it were centered). -+ */ -+ private static final float STACK_PORTRAIT_Y_OFFSET_PROPORTION = 0.f; -+ -+ /** -+ * How much the stack should adjust the x position of each LayoutTab in landscape mode (as a -+ * fraction of the amount space that would be to the left and right of the tab if it were -+ * centered). -+ */ -+ private static final float STACK_LANDSCAPE_START_OFFSET_PROPORTION = 0.f; -+ -+ /** -+ * How much the stack should adjust the x position of each LayoutTab in portrait mode (as a -+ * fraction of the amount space that would be above and below the tab if it were centered). -+ */ -+ private static final float STACK_LANDSCAPE_Y_OFFSET_PROPORTION = 0.f; -+ -+ /** -+ * Multiplier for adjusting the scrolling friction from the amount provided by -+ * ViewConfiguration. -+ */ -+ private static final float FRICTION_MULTIPLIER = 0.6f; -+ -+ /** -+ * For short scrolls of duration less than this (in milliseconds), we assume the user wants to -+ * scroll over to the next tab. If the scroll is longer in duration, we assume they're -+ * reconsidering their scroll, so we leave them on the current tab (unless they drag over far -+ * enough to center a new tab). -+ */ -+ private static final int SCROLL_BOOST_TIMEOUT_MS = 250; -+ -+ /** -+ * The minimum fraction of a tab the user has to scroll over by before we apply the boost to -+ * scroll them to the next tab. -+ */ -+ private static final float SCROLL_BOOST_THRESHOLD = 0.05f; -+ -+ /** -+ * Used to prevent mScrollOffset from being changed as a result of clamping during the switch -+ * away/switch to animations. -+ */ -+ private boolean mSuppressScrollClamping; -+ -+ /** -+ * Whether or not the current stack has been "switched away" by having runSwitchAwayAnimation() -+ * called. Calling runSwitchToAnimation() resets this back to false. Checking this variable lets -+ * us avoid re-playing animations if they're triggered multiple times. -+ */ -+ private boolean mSwitchedAway; -+ -+ /** Time at which the last touch down event occurred. */ -+ private long mLastTouchDownTime; -+ /** Index of the tab that was centered when the last touch down event occurred. */ -+ private int mCenteredTabAtTouchDown; -+ -+ /** -+ * @param layout The parent layout. -+ */ -+ public NonOverlappingStack(Context context, StackLayoutBase layout) { -+ super(context, layout); -+ } -+ -+ private int getNonDyingTabCount() { -+ if (mStackTabs == null) return 0; -+ -+ int dyingCount = 0; -+ for (int i = 0; i < mStackTabs.length; i++) { -+ if (mStackTabs[i].isDying()) dyingCount++; -+ } -+ return mStackTabs.length - dyingCount; -+ } -+ -+ @Override -+ public float getScaleAmount() { -+ if (getNonDyingTabCount() > 1) return SCALE_FRACTION_MULTIPLE_TABS; -+ return SCALE_FRACTION_SINGLE_TAB; -+ } -+ -+ @Override -+ protected void finishAnimation(long time) { -+ super.finishAnimation(time); -+ mSuppressScrollClamping = false; -+ } -+ -+ @Override -+ protected boolean evenOutTabs(float amount, boolean allowReverseDirection) { -+ // Nothing to do here; tabs are always a fixed distance apart in NonOverlappingStack (except -+ // during tab close/un-close animations) -+ return false; -+ } -+ -+ private void updateScrollSnap() { -+ mScroller.setFrictionMultiplier(FRICTION_MULTIPLIER); -+ // This is what computeSpacing() returns when there are >= 2 tabs -+ final int snapDistance = -+ (int) Math.round(getScrollDimensionSize() * SCALE_FRACTION_MULTIPLE_TABS -+ + EXTRA_SPACE_BETWEEN_TABS_DP); -+ // Really we're scrolling in the x direction, but the scroller is always wired up to the y -+ // direction for both portrait and landscape mode. -+ mScroller.setYSnapDistance(snapDistance); -+ } -+ -+ @Override -+ public void contextChanged(Context context) { -+ super.contextChanged(context); -+ updateScrollSnap(); -+ } -+ -+ /** -+ * @return The index of the currently centered tab. If we're not currently snapped to a tab -+ * (e.g. we're in the process of animating a scroll or the user is currently dragging), -+ * returns the index of the tab closest to the center. -+ */ -+ public int getCenteredTabIndex() { -+ return Math.round(-mScrollOffset / mSpacing); -+ } -+ -+ @Override -+ public void notifySizeChanged(float width, float height, int orientation) { -+ super.notifySizeChanged(width, height, orientation); -+ -+ int centeredTab = getCenteredTabIndex(); -+ mSpacing = computeSpacing(0); -+ updateScrollOffsets(centeredTab); -+ -+ updateScrollSnap(); -+ } -+ -+ @Override -+ public void onDown(long time) { -+ super.onDown(time); -+ mLastTouchDownTime = time; -+ mCenteredTabAtTouchDown = getCenteredTabIndex(); -+ mScroller.setCenteredYSnapIndexAtTouchDown(mCenteredTabAtTouchDown); -+ } -+ -+ @Override -+ public void onLongPress(long time, float x, float y) { -+ // Ignore long presses -+ } -+ -+ @Override -+ public void onPinch(long time, float x0, float y0, float x1, float y1, boolean firstEvent) { -+ return; -+ } -+ -+ @Override -+ protected void springBack(long time) { -+ if (!mScroller.isFinished()) return; -+ -+ int offsetAtTouchDown = -mCenteredTabAtTouchDown * mSpacing; -+ float scrollFractionToNextTab = (offsetAtTouchDown - mScrollOffset) / mSpacing; -+ -+ int newCenteredTab; -+ // Make quick, short scrolls go over to the next tab (if a scroll is short but not quick, we -+ // assume the user might have decided to stay on the current tab). -+ if (time < mLastTouchDownTime + SCROLL_BOOST_TIMEOUT_MS -+ && Math.abs(scrollFractionToNextTab) > SCROLL_BOOST_THRESHOLD) { -+ newCenteredTab = mCenteredTabAtTouchDown + (int) Math.signum(scrollFractionToNextTab); -+ } else { -+ newCenteredTab = getCenteredTabIndex(); -+ } -+ -+ int newTarget = -newCenteredTab * mSpacing; -+ mScroller.flingYTo((int) mScrollTarget, newTarget, time); -+ setScrollTarget(newTarget, false); -+ mLayout.requestUpdate(); -+ } -+ -+ @Override -+ protected float getSpacingScreen() { -+ return SPACING_SCREEN; -+ } -+ -+ @Override -+ protected boolean shouldStackTabsAtTop() { -+ return false; -+ } -+ -+ @Override -+ protected boolean shouldStackTabsAtBottom() { -+ return false; -+ } -+ -+ @Override -+ protected float getStackPortraitYOffsetProportion() { -+ return STACK_PORTRAIT_Y_OFFSET_PROPORTION; -+ } -+ -+ @Override -+ protected float getStackLandscapeStartOffsetProportion() { -+ return STACK_LANDSCAPE_START_OFFSET_PROPORTION; -+ } -+ -+ @Override -+ protected float getStackLandscapeYOffsetProportion() { -+ return STACK_LANDSCAPE_Y_OFFSET_PROPORTION; -+ } -+ -+ @Override -+ protected void computeTabClippingVisibilityHelper() { -+ // Performance optimization: we don't need to draw any tab other than the centered one, the -+ // one immediately to the left, and the two immediately to the right (we need the second -+ // one for discard animations) since the others can't possibly be on screen. -+ int centeredTab = getCenteredTabIndex(); -+ for (int i = 0; i < mStackTabs.length; i++) { -+ LayoutTab layoutTab = mStackTabs[i].getLayoutTab(); -+ if (i < centeredTab - 1 || i > centeredTab + 2) { -+ layoutTab.setVisible(false); -+ } else { -+ layoutTab.setVisible(true); -+ } -+ } -+ } -+ -+ @Override -+ protected int computeReferenceIndex() { -+ return getCenteredTabIndex(); -+ } -+ -+ @Override -+ protected boolean shouldCloseGapsBetweenTabs() { -+ return false; -+ } -+ -+ @Override -+ protected float getMinScroll(boolean allowUnderScroll) { -+ if (mSuppressScrollClamping) return -Float.MAX_VALUE; -+ -+ if (mStackTabs == null) return 0; -+ for (int i = mStackTabs.length - 1; i >= 0; i--) { -+ // The getScrollOffset() != 0 check avoids a bug when undiscarding the last tab, in -+ // which case the tab's scroll offset is initially set to 0, which would cause us to -+ // immediately center the first tab. If 0 is the correct offset to return, it's the -+ // default value anyway after going through all the tabs. -+ if (!mStackTabs[i].isDying() && mStackTabs[i].getScrollOffset() != 0) { -+ return -mStackTabs[i].getScrollOffset(); -+ } -+ } -+ -+ return 0; -+ } -+ -+ @Override -+ protected boolean allowOverscroll() { -+ return false; -+ } -+ -+ @Override -+ protected int computeSpacing(int layoutTabCount) { -+ return (int) Math.round( -+ getScrollDimensionSize() * getScaleAmount() + EXTRA_SPACE_BETWEEN_TABS_DP); -+ } -+ -+ /** -+ * Updates the overall scroll offset and the scroll offsets for each tab based on the current -+ * value of mSpacing so that the tabs are in the proper locations and the specified tab is -+ * centered. -+ * -+ * @param centeredTab The index of the tab that should be centered. -+ */ -+ private void updateScrollOffsets(int centeredTab) { -+ // Reset the tabs' scroll offsets. -+ if (mStackTabs != null) { -+ for (int i = 0; i < mStackTabs.length; i++) { -+ mStackTabs[i].setScrollOffset(i * mSpacing); -+ } -+ } -+ -+ // Reset the overall scroll offset. -+ mScrollOffset = -centeredTab * mSpacing; -+ setScrollTarget(mScrollOffset, false); -+ } -+ -+ @Override -+ protected void resetAllScrollOffset() { -+ if (mTabList == null) return; -+ updateScrollOffsets(mTabList.index()); -+ } -+ -+ // NonOverlappingStack uses linear scrolling, so screenToScroll() and scrollToScreen() are both -+ // just the identity function. -+ @Override -+ public float screenToScroll(float screenSpace) { -+ return screenSpace; -+ } -+ -+ @Override -+ public float scrollToScreen(float scrollSpace) { -+ return scrollSpace; -+ } -+ -+ @Override -+ public float getMaxTabHeight() { -+ // We want to maintain a constant tab height (via cropping) even as the width is changed as -+ // a result of changing the scale. -+ if (getNonDyingTabCount() > 1) return mLayout.getHeight(); -+ return (SCALE_FRACTION_MULTIPLE_TABS / SCALE_FRACTION_SINGLE_TAB) * mLayout.getHeight(); -+ } -+ -+ /** -+ * This method sets mSuppressScrollClamping to true to allow an animation to animate the -+ * mScrollOffset outside the normal bounds. It will be reset to false when finishAnimation() is -+ * called. -+ */ -+ public void suppressScrollClampingForAnimation() { -+ mSuppressScrollClamping = true; -+ } -+ -+ /** -+ * Animates the (up to 3) visible tabs sliding off screen. -+ * @param direction Whether the tabs should slide off the left or right side of the screen. -+ */ -+ public void runSwitchAwayAnimation(@SwitchDirection int direction) { -+ if (mStackTabs == null || mSwitchedAway) { -+ mSwitchedAway = true; -+ mLayout.onSwitchAwayFinished(); -+ return; -+ } -+ -+ mSwitchedAway = true; -+ mSuppressScrollClamping = true; -+ -+ // Make sure we don't leave any tabs stuck in a partially-discarded state. -+ for (int i = 0; i < mStackTabs.length; i++) { -+ mStackTabs[i].setDiscardAmount(0); -+ } -+ -+ // Make sure the tabs are not scrolling so the centered tab does not change between the -+ // "switch away" and "switch to" animations. -+ forceScrollStop(); -+ -+ CompositorAnimationHandler handler = mLayout.getAnimationHandler(); -+ Collection animationList = new ArrayList<>(); -+ -+ int centeredTab = getCenteredTabIndex(); -+ for (int i = centeredTab - 1; i <= centeredTab + 1; i++) { -+ if (i < 0 || i >= mStackTabs.length) continue; -+ StackTab tab = mStackTabs[i]; -+ -+ float endOffset; -+ if (direction == SwitchDirection.LEFT) { -+ endOffset = -SWITCH_ANIMATION_SPACING_MULTIPLE * mSpacing + tab.getScrollOffset(); -+ } else { -+ endOffset = SWITCH_ANIMATION_SPACING_MULTIPLE * mSpacing + tab.getScrollOffset(); -+ } -+ -+ CompositorAnimator animation = -+ CompositorAnimator.ofFloatProperty(handler, tab, StackTab.SCROLL_OFFSET, -+ tab.getScrollOffset(), endOffset, SWITCH_AWAY_ANIMATION_DURATION); -+ animationList.add(animation); -+ } -+ -+ AnimatorSet set = new AnimatorSet(); -+ set.playTogether(animationList); -+ set.addListener(new AnimatorListenerAdapter() { -+ @Override -+ public void onAnimationEnd(Animator a) { -+ // If the user pressed the incognito button with one finger while dragging the stack -+ // with another, we might not be centered on a tab. We therefore need to enforce -+ // this after the animation finishes to avoid odd behavior if/when the user returns -+ // to this stack. -+ -+ mScrollOffset = Math.round(mScrollOffset / mSpacing) * mSpacing; -+ forceScrollStop(); -+ mLayout.onSwitchAwayFinished(); -+ } -+ }); -+ set.start(); -+ } -+ -+ /** -+ * Animates the (up to 3) tabs were slid off the screen by runSwitchAwayAnimation() back onto -+ * the screen. -+ * @param direction Whether the tabs should slide in from the left or right side of the screen. -+ */ -+ public void runSwitchToAnimation(@SwitchDirection int direction) { -+ if (mStackTabs == null || !mSwitchedAway) { -+ mSwitchedAway = false; -+ mLayout.onSwitchToFinished(); -+ return; -+ } -+ -+ mSwitchedAway = false; -+ mSuppressScrollClamping = true; -+ -+ CompositorAnimationHandler handler = mLayout.getAnimationHandler(); -+ Collection animationList = new ArrayList<>(); -+ -+ int centeredTab = getCenteredTabIndex(); -+ for (int i = centeredTab - 1; i <= centeredTab + 1; i++) { -+ if (i < 0 || i >= mStackTabs.length) continue; -+ StackTab tab = mStackTabs[i]; -+ -+ float startOffset; -+ if (direction == SwitchDirection.LEFT) { -+ startOffset = SWITCH_ANIMATION_SPACING_MULTIPLE * mSpacing + tab.getScrollOffset(); -+ } else { -+ startOffset = -SWITCH_ANIMATION_SPACING_MULTIPLE * mSpacing + tab.getScrollOffset(); -+ } -+ -+ CompositorAnimator animation = -+ CompositorAnimator.ofFloatProperty(handler, tab, StackTab.SCROLL_OFFSET, -+ startOffset, i * mSpacing, SWITCH_TO_ANIMATION_DURATION); -+ animationList.add(animation); -+ } -+ -+ AnimatorSet set = new AnimatorSet(); -+ set.playTogether(animationList); -+ set.addListener(new AnimatorListenerAdapter() { -+ @Override -+ public void onAnimationEnd(Animator a) { -+ // There are some oddball cases, e.g. a tab was immediately closed before triggering -+ // the toggle animation, where the tab offsets might get left in an undesired state. -+ // Resetting all the scroll offsets here limits the effect of these bugs to just -+ // making the animation look funny vs. leaving the tabs e.g. stuck with gaps between -+ // them or overlapping each other. -+ if (mStackTabs != null) { -+ for (int i = 0; i < mStackTabs.length; i++) { -+ mStackTabs[i].setScrollOffset(i * mSpacing); -+ } -+ } -+ -+ mSuppressScrollClamping = false; -+ mLayout.onSwitchToFinished(); -+ } -+ }); -+ set.start(); -+ } -+} -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/Stack.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/Stack.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/Stack.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/Stack.java -@@ -21,6 +21,8 @@ import org.chromium.chrome.browser.compositor.layouts.Layout.Orientation; - import org.chromium.chrome.browser.compositor.layouts.components.LayoutTab; - import org.chromium.chrome.browser.compositor.layouts.phone.StackLayoutBase; - import org.chromium.chrome.browser.compositor.layouts.phone.stack.StackAnimation.OverviewAnimationType; -+import org.chromium.chrome.browser.flags.CachedFeatureFlags; -+import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.layouts.animation.CompositorAnimationHandler; - import org.chromium.chrome.browser.layouts.animation.FloatProperty; - import org.chromium.chrome.browser.tab.Tab; -@@ -357,6 +359,10 @@ public abstract class Stack { - * we should put it on the left. This method already accounts for RTL flipping. - */ - private boolean isCloseButtonOnRight() { -+ if (ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID)) { -+ return !LocalizationUtils.isLayoutRtl(); -+ } -+ - return mCurrentMode == Orientation.PORTRAIT ^ LocalizationUtils.isLayoutRtl(); - } - -@@ -2025,7 +2031,11 @@ public abstract class Stack { - } - - protected void updateCurrentMode(@Orientation int orientation) { -- mCurrentMode = orientation; -+ if (CachedFeatureFlags.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID)) { -+ mCurrentMode = Orientation.LANDSCAPE; -+ } else { -+ mCurrentMode = orientation; -+ } - - mDiscardDirection = getDefaultDiscardDirection(); - final float opaqueTopPadding = mBorderTopPadding - mBorderTransparentTop; -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimation.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimation.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimation.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/phone/stack/StackAnimation.java -@@ -13,6 +13,7 @@ import androidx.annotation.IntDef; - import org.chromium.base.MathUtils; - import org.chromium.chrome.browser.compositor.layouts.Layout.Orientation; - import org.chromium.chrome.browser.compositor.layouts.components.LayoutTab; -+import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.layouts.animation.CompositorAnimationHandler; - import org.chromium.chrome.browser.layouts.animation.CompositorAnimator; - import org.chromium.chrome.browser.layouts.animation.FloatProperty; -@@ -353,6 +354,11 @@ public class StackAnimation { - } - } - -+ // If this flag is enabled, we're using the non-overlapping tab switcher. -+ private boolean isHorizontalTabSwitcherFlagEnabled() { -+ return ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID); -+ } -+ - private void createPortraitEnterStackAnimatorSet( - StackAnimatorSet stackAnimatorSet, StackTab[] tabs, int focusIndex, int spacing) { - final float initialScrollOffset = mStack.screenToScroll(0); -@@ -531,8 +537,11 @@ public class StackAnimation { - if (mOrientation == Orientation.LANDSCAPE) { - stackAnimatorSet.addToAnimation(tab, StackTab.X_IN_STACK_INFLUENCE, - tab.getXInStackInfluence(), 0.0f, TAB_FOCUSED_ANIMATION_DURATION_MS, null); -- stackAnimatorSet.addToAnimation(tab, StackTab.SCROLL_OFFSET, tab.getScrollOffset(), -- mStack.screenToScroll(0), TAB_FOCUSED_ANIMATION_DURATION_MS, null); -+ if (!isHorizontalTabSwitcherFlagEnabled()) { -+ stackAnimatorSet.addToAnimation(tab, StackTab.SCROLL_OFFSET, -+ tab.getScrollOffset(), mStack.screenToScroll(0), -+ TAB_FOCUSED_ANIMATION_DURATION_MS, null); -+ } - } else { // mOrientation == Orientation.PORTRAIT - stackAnimatorSet.addToAnimation(tab, StackTab.SCROLL_OFFSET, tab.getScrollOffset(), - Math.max(0.0f, tab.getScrollOffset() - mWidth - spacing), -@@ -610,10 +619,12 @@ public class StackAnimation { - // If the non-overlapping horizontal tab switcher is enabled, we shift all the - // tabs over simultaneously. Otherwise we stagger the animation start times to - // create a ripple effect. -- long startTime = (long) Math.max(0, -- TAB_REORDER_START_SPAN / screenSizeInScrollDirection -- * (getLandscapePortraitScreenPositionInScrollDirection(tab) -- - firstDyingTabOffset)); -+ long startTime = isHorizontalTabSwitcherFlagEnabled() -+ ? 0 -+ : (long) Math.max(0, -+ TAB_REORDER_START_SPAN / screenSizeInScrollDirection -+ * (getLandscapePortraitScreenPositionInScrollDirection(tab) -+ - firstDyingTabOffset)); - if (tab.isDying()) { - float discard = tab.getDiscardAmount(); - if (discard == 0.0f) discard = defaultDiscardDirectionPositive ? 0.0f : -0.0f; -@@ -653,6 +664,39 @@ public class StackAnimation { - newIndex++; - } - } -+ -+ // Scroll offset animation for non-overlapping horizontal tab switcher (if enabled) -+ if (isHorizontalTabSwitcherFlagEnabled()) { -+ NonOverlappingStack nonOverlappingStack = (NonOverlappingStack) stack; -+ int centeredTabIndex = nonOverlappingStack.getCenteredTabIndex(); -+ -+ // For all tab closures (except for the last one), we slide the remaining tabs -+ // in to fill the gap. -+ // -+ // There are two cases where we also need to animate the NonOverlappingStack's -+ // overall scroll position over by one tab: -+ // -+ // - Closing the last tab while centered on it (since we don't have a tab we can -+ // slide over to replace it) -+ // -+ // - Closing any tab prior to the currently centered one (so we can keep the -+ // same tab centered). Together with animating the individual scroll offsets for -+ // each tab, this has the visual appearance of sliding in the prior tabs from the -+ // left (in LTR mode) to fill the gap. -+ boolean closingLastTabWhileCentered = -+ firstDyingTabIndex == tabs.length - 1 && firstDyingTabIndex == centeredTabIndex; -+ boolean closingPriorTab = -+ firstDyingTabIndex != -1 && firstDyingTabIndex < centeredTabIndex; -+ -+ boolean shouldAnimateStackScrollOffset = closingLastTabWhileCentered || closingPriorTab; -+ -+ if (shouldAnimateStackScrollOffset) { -+ nonOverlappingStack.suppressScrollClampingForAnimation(); -+ stackAnimatorSet.addToAnimation(nonOverlappingStack, Stack.SCROLL_OFFSET, -+ stack.getScrollOffset(), -(centeredTabIndex - 1) * stack.getSpacing(), -+ TAB_REORDER_DURATION_MS, null); -+ } -+ } - } - - /** -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabListSceneLayer.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabListSceneLayer.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabListSceneLayer.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabListSceneLayer.java -@@ -18,6 +18,7 @@ import org.chromium.chrome.browser.compositor.LayerTitleCache; - import org.chromium.chrome.browser.compositor.layouts.Layout; - import org.chromium.chrome.browser.compositor.layouts.components.LayoutTab; - import org.chromium.chrome.browser.compositor.layouts.content.TabContentManager; -+import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.layouts.scene_layer.SceneLayer; - import org.chromium.chrome.browser.tabmodel.TabModelSelector; - import org.chromium.chrome.browser.tasks.tab_management.TabUiFeatureUtilities; -@@ -97,6 +98,9 @@ public class TabListSceneLayer extends SceneLayer { - backgroundResourceId, backgroundAlpha, backgroundTopOffset); - } - -+ boolean isHTSEnabled = -+ ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID); -+ - final float shadowAlpha = ColorUtils.shouldUseLightForegroundOnBackground(tabListBgColor) - ? LayoutTab.SHADOW_ALPHA_ON_DARK_BG - : LayoutTab.SHADOW_ALPHA_ON_LIGHT_BG; -@@ -107,7 +111,7 @@ public class TabListSceneLayer extends SceneLayer { - final float decoration = t.getDecorationAlpha(); - - int urlBarBackgroundId = R.drawable.modern_location_bar; -- boolean useIncognitoColors = t.isIncognito(); -+ boolean useIncognitoColors = t.isIncognito() && !isHTSEnabled; - - int defaultThemeColor = ChromeColors.getDefaultThemeColor(res, useIncognitoColors); - -@@ -161,7 +165,8 @@ public class TabListSceneLayer extends SceneLayer { - protected int getTabListBackgroundColor(Context context) { - int colorId = R.color.default_bg_color; - -- if (TabUiFeatureUtilities.isGridTabSwitcherEnabled()) { -+ if (ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID) -+ || TabUiFeatureUtilities.isGridTabSwitcherEnabled()) { - if (mTabModelSelector != null && mTabModelSelector.isIncognitoSelected()) { - colorId = R.color.default_bg_color_dark; - } else { -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/survey/ChromeSurveyController.java b/chrome/android/java/src/org/chromium/chrome/browser/survey/ChromeSurveyController.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/survey/ChromeSurveyController.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/survey/ChromeSurveyController.java -@@ -18,6 +18,7 @@ import org.chromium.base.metrics.RecordHistogram; - import org.chromium.base.metrics.RecordUserAction; - import org.chromium.base.task.AsyncTask; - import org.chromium.chrome.R; -+import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.flags.ChromeSwitches; - import org.chromium.chrome.browser.infobar.InfoBarContainer; - import org.chromium.chrome.browser.infobar.InfoBarIdentifier; -@@ -138,7 +139,10 @@ public class ChromeSurveyController implements InfoBarAnimationListener { - } - }; - -- String siteContext = ChromeVersionInfo.getProductVersion() + ",NotHorizontalTabSwitcher"; -+ String siteContext = ChromeVersionInfo.getProductVersion() + "," -+ + (ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID) -+ ? "HorizontalTabSwitcher" -+ : "NotHorizontalTabSwitcher"); - surveyController.downloadSurvey(context, siteId, onSuccessRunnable, siteContext); - } - -@@ -317,6 +321,20 @@ public class ChromeSurveyController implements InfoBarAnimationListener { - } - - int maxNumber = getMaxNumber(); -+ -+ int maxForHorizontalTabSwitcher = -1; -+ if (ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID)) { -+ maxForHorizontalTabSwitcher = ChromeFeatureList.getFieldTrialParamByFeatureAsInt( -+ ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID, MAX_NUMBER, -1); -+ } -+ if (maxForHorizontalTabSwitcher != -1) { -+ if (maxNumber == -1) { -+ maxNumber = maxForHorizontalTabSwitcher; -+ } else { -+ maxNumber = Math.min(maxNumber, maxForHorizontalTabSwitcher); -+ } -+ } -+ - if (maxNumber == -1) { - recordSurveyFilteringResult(FilteringResult.MAX_NUMBER_MISSING); - return false; -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarColors.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarColors.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarColors.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarColors.java -@@ -5,6 +5,7 @@ - package org.chromium.chrome.browser.toolbar; - - import org.chromium.chrome.browser.device.DeviceClassManager; -+import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.tasks.tab_management.TabUiFeatureUtilities; - import org.chromium.chrome.features.start_surface.StartSurfaceConfiguration; - -@@ -17,8 +18,11 @@ public class ToolbarColors { - */ - public static boolean canUseIncognitoToolbarThemeColorInOverview() { - final boolean isAccessibilityEnabled = DeviceClassManager.enableAccessibilityLayout(); -+ final boolean isHorizontalTabSwitcherEnabled = ChromeFeatureList.isInitialized() -+ && ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID); - final boolean isTabGridEnabled = TabUiFeatureUtilities.isGridTabSwitcherEnabled(); - final boolean isStartSurfaceEnabled = StartSurfaceConfiguration.isStartSurfaceEnabled(); -- return (isAccessibilityEnabled || isTabGridEnabled || isStartSurfaceEnabled); -+ return (isAccessibilityEnabled || isHorizontalTabSwitcherEnabled || isTabGridEnabled -+ || isStartSurfaceEnabled); - } - } -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherModeTTPhone.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherModeTTPhone.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherModeTTPhone.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/top/TabSwitcherModeTTPhone.java -@@ -18,6 +18,7 @@ import androidx.appcompat.content.res.AppCompatResources; - - import org.chromium.chrome.R; - import org.chromium.chrome.browser.device.DeviceClassManager; -+import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.incognito.IncognitoUtils; - import org.chromium.chrome.browser.tabmodel.IncognitoStateProvider; - import org.chromium.chrome.browser.tabmodel.TabModelSelector; -@@ -241,6 +242,11 @@ public class TabSwitcherModeTTPhone extends OptimizedFrameLayout - void onAccessibilityStatusChanged(boolean enabled) { - if (mNewTabImageButton != null) mNewTabImageButton.onAccessibilityStatusChanged(); - -+ if (ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID) -+ && IncognitoUtils.isIncognitoModeEnabled()) { -+ updateTabSwitchingElements(!enabled); -+ } -+ - updatePrimaryColorAndTint(); - } - -@@ -291,7 +297,8 @@ public class TabSwitcherModeTTPhone extends OptimizedFrameLayout - // the tab switcher, which is the standard mode background. Note that horizontal tab - // switcher is an exception, which uses the correspond background color for standard - // and incognito mode. -- int backgroundColor = ChromeColors.getPrimaryBackgroundColor(getResources(), false); -+ int backgroundColor = ChromeColors.getPrimaryBackgroundColor( -+ getResources(), usingHorizontalTabSwitcher() && mIsIncognito); - useLightIcons = ColorUtils.shouldUseLightForegroundOnBackground(backgroundColor); - } else { - useLightIcons = ColorUtils.shouldUseLightForegroundOnBackground(primaryColor); -@@ -322,6 +329,14 @@ public class TabSwitcherModeTTPhone extends OptimizedFrameLayout - return Color.TRANSPARENT; - } - -+ private boolean usingHorizontalTabSwitcher() { -+ // The horizontal tab switcher flag does not affect the accessibility switcher. We do the -+ // enableAccessibilityLayout() check first here to avoid logging an experiment exposure for -+ // these users. -+ return !DeviceClassManager.enableAccessibilityLayout() -+ && ChromeFeatureList.isEnabled(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID); -+ } -+ - private void inflateIncognitoToggle() { - ViewStub incognitoToggleTabsStub = findViewById(R.id.incognito_tabs_stub); - mIncognitoToggleTabLayout = (IncognitoToggleTabLayout) incognitoToggleTabsStub.inflate(); -@@ -358,6 +373,7 @@ public class TabSwitcherModeTTPhone extends OptimizedFrameLayout - * and incognito status. - */ - private boolean shouldShowIncognitoToggle() { -- return mIsGridTabSwitcherEnabled && IncognitoUtils.isIncognitoModeEnabled(); -+ return (usingHorizontalTabSwitcher() || mIsGridTabSwitcherEnabled) -+ && IncognitoUtils.isIncognitoModeEnabled(); - } - } -diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/survey/ChromeSurveyControllerTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/survey/ChromeSurveyControllerTest.java ---- a/chrome/android/junit/src/org/chromium/chrome/browser/survey/ChromeSurveyControllerTest.java -+++ b/chrome/android/junit/src/org/chromium/chrome/browser/survey/ChromeSurveyControllerTest.java -@@ -21,6 +21,7 @@ import org.mockito.MockitoAnnotations; - import org.robolectric.annotation.Config; - - import org.chromium.base.test.BaseRobolectricTestRunner; -+import org.chromium.chrome.browser.flags.ChromeFeatureList; - import org.chromium.chrome.browser.preferences.ChromePreferenceKeys; - import org.chromium.chrome.browser.preferences.SharedPreferencesManager; - import org.chromium.chrome.browser.tab.Tab; -@@ -33,6 +34,7 @@ import org.chromium.content_public.browser.WebContents; - */ - @RunWith(BaseRobolectricTestRunner.class) - @Config(manifest = Config.NONE) -+@Features.EnableFeatures(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID) - public class ChromeSurveyControllerTest { - private static final String STUDY_NAME = "HorizontalTabSwitcherStudyName"; - private static final String GROUP_NAME = "HorizontalTabSwitcherGroupName"; -diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc ---- a/chrome/browser/about_flags.cc -+++ b/chrome/browser/about_flags.cc -@@ -5024,6 +5024,11 @@ const FeatureEntry kFeatureEntries[] = { - flag_descriptions::kCriticalPersistedTabDataDescription, kOsAndroid, - FEATURE_VALUE_TYPE(chrome::android::kCriticalPersistedTabData)}, - -+ {"enable-horizontal-tab-switcher", -+ flag_descriptions::kHorizontalTabSwitcherAndroidName, -+ flag_descriptions::kHorizontalTabSwitcherAndroidDescription, kOsAndroid, -+ FEATURE_VALUE_TYPE(chrome::android::kHorizontalTabSwitcherAndroid)}, -+ - {"enable-tab-grid-layout", flag_descriptions::kTabGridLayoutAndroidName, - flag_descriptions::kTabGridLayoutAndroidDescription, kOsAndroid, - FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kTabGridLayoutAndroid, -diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json ---- a/chrome/browser/flag-metadata.json -+++ b/chrome/browser/flag-metadata.json -@@ -78,6 +78,11 @@ - "owners": [ "zentaro" ], - "expiry_milestone": 82 - }, -+ { -+ "name": "enable-horizontal-tab-switcher", -+ "owners": [ "memex-team@google.com" ], -+ "expiry_milestone": -1 -+ }, - { - "name": "allow-insecure-localhost", - "owners": [ "security-dev" ], -diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc ---- a/chrome/browser/flag_descriptions.cc -+++ b/chrome/browser/flag_descriptions.cc -@@ -1334,6 +1334,12 @@ const char kHideShelfControlsInTabletModeDescription[] = - "Hides home, back, and overview button from the shelf while the device is " - "in tablet mode. Predicated on shelf-hotseat feature being enabled."; - -+const char kHorizontalTabSwitcherAndroidName[] = -+ "Enable horizontal tab switcher"; -+const char kHorizontalTabSwitcherAndroidDescription[] = -+ "Changes the layout of the Android tab switcher so tabs scroll " -+ "horizontally instead of vertically."; -+ - const char kTabSwitcherOnReturnName[] = "Tab switcher on return"; - const char kTabSwitcherOnReturnDescription[] = - "Enable tab switcher on return after specified time has elapsed"; -diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h ---- a/chrome/browser/flag_descriptions.h -+++ b/chrome/browser/flag_descriptions.h -@@ -789,6 +789,9 @@ extern const char kHeavyAdPrivacyMitigationsDescription[]; - extern const char kHeavyAdInterventionName[]; - extern const char kHeavyAdInterventionDescription[]; - -+extern const char kHorizontalTabSwitcherAndroidName[]; -+extern const char kHorizontalTabSwitcherAndroidDescription[]; -+ - extern const char kTabSwitcherOnReturnName[]; - extern const char kTabSwitcherOnReturnDescription[]; - -diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc ---- a/chrome/browser/flags/android/chrome_feature_list.cc -+++ b/chrome/browser/flags/android/chrome_feature_list.cc -@@ -197,6 +197,7 @@ const base::Feature* kFeaturesExposedToJava[] = { - &kFocusOmniboxInIncognitoTabIntents, - &kHandleMediaIntents, - &kHomepagePromoCard, -+ &kHorizontalTabSwitcherAndroid, - &kImmersiveUiMode, - &kIncognitoScreenshot, - &kInlineUpdateFlow, -@@ -551,6 +552,9 @@ const base::Feature kHandleMediaIntents{"HandleMediaIntents", - const base::Feature kHomepagePromoCard{"HomepagePromoCard", - base::FEATURE_DISABLED_BY_DEFAULT}; - -+const base::Feature kHorizontalTabSwitcherAndroid{ -+ "HorizontalTabSwitcherAndroid", base::FEATURE_DISABLED_BY_DEFAULT}; -+ - const base::Feature kImmersiveUiMode{"ImmersiveUiMode", - base::FEATURE_DISABLED_BY_DEFAULT}; - -diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h ---- a/chrome/browser/flags/android/chrome_feature_list.h -+++ b/chrome/browser/flags/android/chrome_feature_list.h -@@ -86,6 +86,7 @@ extern const base::Feature kExploreSites; - extern const base::Feature kFocusOmniboxInIncognitoTabIntents; - extern const base::Feature kHandleMediaIntents; - extern const base::Feature kHomepagePromoCard; -+extern const base::Feature kHorizontalTabSwitcherAndroid; - extern const base::Feature kImmersiveUiMode; - extern const base::Feature kIncognitoScreenshot; - extern const base::Feature kImprovedA2HS; -diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java ---- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java -+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java -@@ -54,6 +54,7 @@ public class CachedFeatureFlags { - put(ChromeFeatureList.CHROME_STARTUP_DELEGATE, false); - put(ChromeFeatureList.CONDITIONAL_TAB_STRIP_ANDROID, false); - put(ChromeFeatureList.LENS_CAMERA_ASSISTED_SEARCH, false); -+ put(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID, false); - put(ChromeFeatureList.SERVICE_MANAGER_FOR_DOWNLOAD, true); - put(ChromeFeatureList.SERVICE_MANAGER_FOR_BACKGROUND_PREFETCH, true); - put(ChromeFeatureList.COMMAND_LINE_ON_NON_ROOTED, false); -diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java ---- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java -+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java -@@ -346,6 +346,7 @@ public abstract class ChromeFeatureList { - public static final String HANDLE_MEDIA_INTENTS = "HandleMediaIntents"; - public static final String HIDE_FROM_API_3_TRANSITIONS_FROM_HISTORY = - "HideFromApi3TransitionsFromHistory"; -+ public static final String HORIZONTAL_TAB_SWITCHER_ANDROID = "HorizontalTabSwitcherAndroid"; - public static final String IMMERSIVE_UI_MODE = "ImmersiveUiMode"; - public static final String INCOGNITO_SCREENSHOT = "IncognitoScreenshot"; - public static final String INLINE_UPDATE_FLOW = "InlineUpdateFlow"; --- -2.17.1 - diff --git a/build/patches/Revert-flags-remove-disable-pull-to-refresh-effect.patch b/build/patches/Revert-flags-remove-disable-pull-to-refresh-effect.patch index c38c18a2..8cbac347 100644 --- a/build/patches/Revert-flags-remove-disable-pull-to-refresh-effect.patch +++ b/build/patches/Revert-flags-remove-disable-pull-to-refresh-effect.patch @@ -13,7 +13,7 @@ This reverts commit 4e598f38a0e6dd3dbede009c6a99b2a520a94e1f. diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -3285,6 +3285,10 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3275,6 +3275,10 @@ const FeatureEntry kFeatureEntries[] = { SINGLE_VALUE_TYPE(switches::kHostedAppQuitNotification)}, #endif // OS_MAC #if defined(OS_ANDROID) @@ -27,7 +27,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -1096,6 +1096,11 @@ +@@ -1102,6 +1102,11 @@ // enable-javascript-harmony. "expiry_milestone": -1 }, @@ -42,7 +42,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -3245,6 +3245,10 @@ const char kReadLaterDescription[] = +@@ -3304,6 +3304,10 @@ const char kReadLaterDescription[] = "Allow users to save tabs for later. Enables a new button and menu for " "accessing tabs saved for later."; @@ -56,7 +56,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -1879,6 +1879,9 @@ extern const char kQueryTilesMoreTrendingDescription[]; +@@ -1911,6 +1911,9 @@ extern const char kQueryTilesMoreTrendingDescription[]; extern const char kQueryTilesSwapTrendingName[]; extern const char kQueryTilesSwapTrendingDescription[]; diff --git a/build/patches/Revert-flags-remove-num-raster-threads.patch b/build/patches/Revert-flags-remove-num-raster-threads.patch index 59ab1d7e..e9d06e48 100644 --- a/build/patches/Revert-flags-remove-num-raster-threads.patch +++ b/build/patches/Revert-flags-remove-num-raster-threads.patch @@ -13,7 +13,7 @@ This reverts commit 2a51528a1737e9038f7f96f29403032a6a845a25. diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc --- a/chrome/browser/about_flags.cc +++ b/chrome/browser/about_flags.cc -@@ -298,6 +298,15 @@ const FeatureEntry::Choice kOverlayStrategiesChoices[] = { +@@ -300,6 +300,15 @@ const FeatureEntry::Choice kOverlayStrategiesChoices[] = { "single-fullscreen,single-on-top,underlay"}, }; @@ -29,7 +29,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = { {flags_ui::kGenericExperimentChoiceDefault, "", ""}, {flag_descriptions::kTouchSelectionStrategyCharacter, -@@ -3383,6 +3392,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3370,6 +3379,9 @@ const FeatureEntry kFeatureEntries[] = { feature_engagement::kIPHDemoMode, feature_engagement::kIPHDemoModeChoiceVariations, "IPH_DemoMode")}, @@ -42,7 +42,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json --- a/chrome/browser/flag-metadata.json +++ b/chrome/browser/flag-metadata.json -@@ -3570,6 +3570,11 @@ +@@ -3624,6 +3624,11 @@ ], "expiry_milestone": 95 }, @@ -57,7 +57,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc --- a/chrome/browser/flag_descriptions.cc +++ b/chrome/browser/flag_descriptions.cc -@@ -1607,6 +1607,14 @@ const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint."; +@@ -1631,6 +1631,14 @@ const char kUseMultiloginEndpointName[] = "Use Multilogin endpoint."; const char kUseMultiloginEndpointDescription[] = "Use Gaia OAuth multilogin for identity consistency."; @@ -75,7 +75,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h --- a/chrome/browser/flag_descriptions.h +++ b/chrome/browser/flag_descriptions.h -@@ -962,6 +962,13 @@ extern const char kNotificationsSystemFlagDescription[]; +@@ -969,6 +969,13 @@ extern const char kNotificationsSystemFlagDescription[]; extern const char kUseMultiloginEndpointName[]; extern const char kUseMultiloginEndpointDescription[]; diff --git a/build/patches/Revert-the-removal-of-an-option-to-block-autoplay.patch b/build/patches/Revert-the-removal-of-an-option-to-block-autoplay.patch index 8025a39b..8a945820 100644 --- a/build/patches/Revert-the-removal-of-an-option-to-block-autoplay.patch +++ b/build/patches/Revert-the-removal-of-an-option-to-block-autoplay.patch @@ -45,9 +45,9 @@ Subject: Revert the removal of an option to block autoplay diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/browser_ui/site_settings/android/BUILD.gn --- a/components/browser_ui/site_settings/android/BUILD.gn +++ b/components/browser_ui/site_settings/android/BUILD.gn -@@ -188,6 +188,11 @@ android_resources("java_resources") { +@@ -157,6 +157,11 @@ android_resources("java_resources") { + "java/res/drawable-xxxhdpi/settings_sensors.png", "java/res/drawable-xxxhdpi/settings_storage.png", - "java/res/drawable-xxxhdpi/settings_usb.png", "java/res/drawable-xxxhdpi/web_asset.png", + "java/res/drawable-hdpi/settings_autoplay.png", + "java/res/drawable-xhdpi/settings_autoplay.png", @@ -182,8 +182,8 @@ diff --git a/components/browser_ui/site_settings/android/java/res/xml/site_setti diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/ContentSettingsResources.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/ContentSettingsResources.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/ContentSettingsResources.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/ContentSettingsResources.java -@@ -113,6 +113,10 @@ public class ContentSettingsResources { - new ResourceItem(R.drawable.infobar_downloading, +@@ -120,6 +120,10 @@ public class ContentSettingsResources { + new ResourceItem(R.drawable.infobar_downloading, 0, R.string.automatic_downloads_permission_title, ContentSettingValues.ASK, ContentSettingValues.BLOCK, R.string.website_settings_category_ask, 0)); + localMap.put(ContentSettingsType.AUTOPLAY, @@ -191,12 +191,12 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c + ContentSettingValues.ALLOW, ContentSettingValues.BLOCK, + R.string.website_settings_category_autoplay_allowed, 0)); localMap.put(ContentSettingsType.BACKGROUND_SYNC, - new ResourceItem(R.drawable.permission_background_sync, + new ResourceItem(R.drawable.permission_background_sync, 0, R.string.background_sync_permission_title, ContentSettingValues.ALLOW, diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java -@@ -537,6 +537,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -534,6 +534,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment int resource = 0; if (mCategory.showSites(SiteSettingsCategory.Type.AUTOMATIC_DOWNLOADS)) { resource = R.string.website_settings_add_site_description_automatic_downloads; @@ -205,7 +205,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } else if (mCategory.showSites(SiteSettingsCategory.Type.BACKGROUND_SYNC)) { resource = R.string.website_settings_add_site_description_background_sync; } else if (mCategory.showSites(SiteSettingsCategory.Type.JAVASCRIPT)) { -@@ -653,6 +655,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -650,6 +652,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment boolean exception = false; if (mCategory.showSites(SiteSettingsCategory.Type.SOUND)) { exception = true; @@ -226,7 +226,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c case ContentSettingsType.IDLE_DETECTION: return "idle_detection_permission_list"; case ContentSettingsType.JAVASCRIPT: -@@ -524,6 +526,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -522,6 +524,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment if (type == ContentSettingsType.ADS) { setUpAdsPreference(preference); @@ -235,7 +235,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } else if (type == ContentSettingsType.SOUND) { setUpSoundPreference(preference); } else if (type == ContentSettingsType.JAVASCRIPT) { -@@ -1046,6 +1050,24 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -1044,6 +1048,24 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment } } @@ -335,7 +335,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java -@@ -366,6 +366,10 @@ public class WebsitePreferenceBridge { +@@ -365,6 +365,10 @@ public class WebsitePreferenceBridge { int value); boolean isPermissionControlledByDSE(BrowserContextHandle browserContextHandle, @ContentSettingsType int contentSettingsType, String origin); @@ -367,7 +367,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid static jboolean JNI_WebsitePreferenceBridge_IsContentSettingsPatternValid( JNIEnv* env, const JavaParamRef& pattern) { -@@ -819,6 +830,7 @@ static void JNI_WebsitePreferenceBridge_SetContentSettingEnabled( +@@ -805,6 +816,7 @@ static void JNI_WebsitePreferenceBridge_SetContentSettingEnabled( case ContentSettingsType::POPUPS: case ContentSettingsType::SENSORS: case ContentSettingsType::SOUND: @@ -375,7 +375,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid value = CONTENT_SETTING_ALLOW; break; default: -@@ -899,6 +911,17 @@ static jboolean JNI_WebsitePreferenceBridge_IsContentSettingUserModifiable( +@@ -885,6 +897,17 @@ static jboolean JNI_WebsitePreferenceBridge_IsContentSettingUserModifiable( static_cast(content_settings_type)); } @@ -549,7 +549,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info. ContentSettingsType::AUTOMATIC_DOWNLOADS, #if defined(OS_ANDROID) || BUILDFLAG(IS_CHROMEOS_ASH) ContentSettingsType::PROTECTED_MEDIA_IDENTIFIER, -@@ -141,6 +142,11 @@ bool ShouldShowPermission(const PageInfo::PermissionInfo& info, +@@ -142,6 +143,11 @@ bool ShouldShowPermission(const PageInfo::PermissionInfo& info, return is_subresource_filter_activated; } @@ -603,7 +603,7 @@ diff --git a/third_party/blink/renderer/core/html/media/autoplay_policy.cc b/thi +++ b/third_party/blink/renderer/core/html/media/autoplay_policy.cc @@ -8,6 +8,7 @@ #include "third_party/blink/public/mojom/autoplay/autoplay.mojom-blink.h" - #include "third_party/blink/public/mojom/feature_policy/feature_policy.mojom-blink.h" + #include "third_party/blink/public/mojom/permissions_policy/permissions_policy.mojom-blink.h" #include "third_party/blink/public/mojom/webpreferences/web_preferences.mojom-blink.h" +#include "third_party/blink/public/platform/web_content_settings_client.h" #include "third_party/blink/public/platform/web_media_player.h" @@ -637,7 +637,7 @@ diff --git a/third_party/blink/renderer/core/html/media/autoplay_policy.cc b/thi diff --git a/third_party/blink/renderer/core/html/media/autoplay_policy.h b/third_party/blink/renderer/core/html/media/autoplay_policy.h --- a/third_party/blink/renderer/core/html/media/autoplay_policy.h +++ b/third_party/blink/renderer/core/html/media/autoplay_policy.h -@@ -131,6 +131,10 @@ class CORE_EXPORT AutoplayPolicy final +@@ -130,6 +130,10 @@ class CORE_EXPORT AutoplayPolicy final // should use, if checking to see if an action is allowed. bool IsLockedPendingUserGesture() const; diff --git a/build/patches/Show-site-settings-for-cookies-javascript-and-ads.patch b/build/patches/Show-site-settings-for-cookies-javascript-and-ads.patch index 0b813f81..b505f4e5 100644 --- a/build/patches/Show-site-settings-for-cookies-javascript-and-ads.patch +++ b/build/patches/Show-site-settings-for-cookies-javascript-and-ads.patch @@ -11,7 +11,7 @@ Avoid displaying info about intrusive ads diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java -@@ -525,6 +525,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -523,6 +523,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment setUpSoundPreference(preference); } else if (type == ContentSettingsType.JAVASCRIPT) { setUpJavascriptPreference(preference); @@ -20,7 +20,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } else if (type == ContentSettingsType.GEOLOCATION) { setUpLocationPreference(preference); } else if (type == ContentSettingsType.NOTIFICATIONS) { -@@ -848,16 +850,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -846,16 +848,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment private void setUpAdsInformationalBanner() { // Add the informational banner which shows at the top of the UI if ad blocking is // activated on this site. @@ -37,7 +37,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } private SiteSettingsCategory getWarningCategory() { -@@ -1051,17 +1045,35 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -1049,17 +1043,35 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment @Nullable Integer currentValue = mSite.getContentSetting(browserContextHandle, ContentSettingsType.JAVASCRIPT); @@ -79,7 +79,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c /** * Updates the ads list preference based on whether the site is a candidate for blocking. This * has some custom behavior. -@@ -1077,22 +1089,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -1075,22 +1087,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment setupContentSettingsPreference(preference, null, false); return; } diff --git a/build/patches/Switch-to-fstack-protector-strong.patch b/build/patches/Switch-to-fstack-protector-strong.patch index d8db556e..cec3b170 100644 --- a/build/patches/Switch-to-fstack-protector-strong.patch +++ b/build/patches/Switch-to-fstack-protector-strong.patch @@ -16,7 +16,7 @@ higher memory/cache usage but not by the full 2-3%. diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn -@@ -302,16 +302,12 @@ config("compiler") { +@@ -315,16 +315,12 @@ config("compiler") { cflags += [ "-fstack-protector" ] } } else if ((is_posix && !is_chromeos_ash && !is_nacl) || is_fuchsia) { diff --git a/build/patches/Timezone-customization.patch b/build/patches/Timezone-customization.patch index 15569181..4312e8d1 100644 --- a/build/patches/Timezone-customization.patch +++ b/build/patches/Timezone-customization.patch @@ -30,7 +30,7 @@ See also: https://github.com/bromite/bromite/wiki/TimezoneOverride .../core/browser/content_settings_utils.cc | 7 + .../core/browser/host_content_settings_map.cc | 8 + .../core/browser/host_content_settings_map.h | 3 + - .../core/common/content_settings.cc | 4 +- + .../core/common/content_settings.cc | 3 +- .../core/common/content_settings.h | 2 + .../core/common/content_settings.mojom | 2 + .../common/content_settings_mojom_traits.cc | 4 +- @@ -41,7 +41,7 @@ See also: https://github.com/bromite/bromite/wiki/TimezoneOverride .../renderer/content_settings_agent_impl.cc | 89 ++++++++ .../renderer/content_settings_agent_impl.h | 4 + .../WebLayerSiteSettingsDelegate.java | 3 + - 35 files changed, 725 insertions(+), 18 deletions(-) + 35 files changed, 724 insertions(+), 18 deletions(-) create mode 100755 components/browser_ui/site_settings/android/java/res/layout/time_zone_select_dialog.xml create mode 100755 components/browser_ui/site_settings/android/java/res/layout/timezoneoverride_site_settings_preference.xml create mode 100755 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/TimezoneOverrideSiteSettingsPreference.java @@ -49,7 +49,7 @@ See also: https://github.com/bromite/bromite/wiki/TimezoneOverride diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java --- a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/site_settings/ChromeSiteSettingsDelegate.java -@@ -41,6 +41,10 @@ import org.chromium.content_public.common.ContentSwitches; +@@ -40,6 +40,10 @@ import org.chromium.content_public.common.ContentSwitches; import java.util.Set; @@ -60,7 +60,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/C /** * A SiteSettingsDelegate instance that contains Chrome-specific Site Settings logic. */ -@@ -253,4 +257,16 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate { +@@ -247,4 +251,16 @@ public class ChromeSiteSettingsDelegate implements SiteSettingsDelegate { mPrivacySandboxController.dismissSnackbar(); } } @@ -88,7 +88,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b ] annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ] resources_package = "org.chromium.components.browser_ui.site_settings" -@@ -202,6 +203,8 @@ android_resources("java_resources") { +@@ -171,6 +172,8 @@ android_resources("java_resources") { "java/res/xml/single_website_preferences.xml", "java/res/xml/site_settings_preferences.xml", "java/res/xml/website_preferences.xml", @@ -255,7 +255,7 @@ diff --git a/components/browser_ui/site_settings/android/java/res/xml/website_pr diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/ContentSettingsResources.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/ContentSettingsResources.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/ContentSettingsResources.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/ContentSettingsResources.java -@@ -231,6 +231,11 @@ public class ContentSettingsResources { +@@ -246,6 +246,11 @@ public class ContentSettingsResources { ContentSettingValues.ASK, ContentSettingValues.BLOCK, R.string.website_settings_category_vr_ask, R.string.website_settings_category_vr_blocked)); @@ -267,7 +267,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c sResourceInfo = localMap; } return sResourceInfo; -@@ -365,6 +370,23 @@ public class ContentSettingsResources { +@@ -418,6 +423,23 @@ public class ContentSettingsResources { } } @@ -291,7 +291,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c /** * Returns the string resource id for a content type to show with a permission category. * @param enabled Whether the content type is enabled. -@@ -379,7 +401,10 @@ public class ContentSettingsResources { +@@ -432,7 +454,10 @@ public class ContentSettingsResources { * with a particular website. * @param value The ContentSetting for which we want the resource. */ @@ -303,7 +303,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c switch (value) { case ContentSettingValues.ALLOW: return R.string.website_settings_permissions_allow; -@@ -468,6 +493,13 @@ public class ContentSettingsResources { +@@ -521,6 +546,13 @@ public class ContentSettingsResources { return descriptionIDs; } } @@ -381,7 +381,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c getSiteSettingsDelegate().launchProtectedContentHelpAndFeedbackActivity( getActivity()); } else { -@@ -448,6 +461,12 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -445,6 +458,12 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment WebsitePreferenceBridge.setContentSetting( browserContextHandle, mCategory.getContentSettingsType(), setting); getInfoForOrigins(); @@ -394,7 +394,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } else if (FOUR_STATE_COOKIE_TOGGLE_KEY.equals(preference.getKey())) { setCookieSettingsPreference((CookieSettingsState) newValue); getInfoForOrigins(); -@@ -541,6 +560,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -538,6 +557,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment ? R.string.website_settings_add_site_description_cookies_block : R.string.website_settings_add_site_description_cookies_allow; } @@ -403,7 +403,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } assert resource > 0; return getString(resource); -@@ -581,6 +602,13 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -578,6 +599,13 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment if (mCategory.showSites(SiteSettingsCategory.Type.COOKIES) && mRequiresFourStateSetting) { setting = cookieSettingsExceptionShouldBlock() ? ContentSettingValues.BLOCK : ContentSettingValues.ALLOW; @@ -417,7 +417,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } else { setting = (WebsitePreferenceBridge.isCategoryEnabled( browserContextHandle, mCategory.getContentSettingsType())) -@@ -637,6 +665,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -634,6 +662,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment && !WebsitePreferenceBridge.isCategoryEnabled( browserContextHandle, ContentSettingsType.AUTOMATIC_DOWNLOADS)) { exception = true; @@ -426,7 +426,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } if (exception) { getPreferenceScreen().addPreference(new AddExceptionPreference(getStyledContext(), -@@ -808,7 +838,14 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -805,7 +835,14 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment TriStateSiteSettingsPreference triStateToggle = (TriStateSiteSettingsPreference) getPreferenceScreen().findPreference( TRI_STATE_TOGGLE_KEY); @@ -442,7 +442,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c } else if (mRequiresFourStateSetting) { FourStateCookieSettingsPreference fourStateCookieToggle = (FourStateCookieSettingsPreference) getPreferenceScreen().findPreference( -@@ -837,6 +874,9 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -834,6 +871,9 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment (FourStateCookieSettingsPreference) screen.findPreference( FOUR_STATE_COOKIE_TOGGLE_KEY); // TODO(crbug.com/1104836): Remove the old third-party cookie blocking UI @@ -452,7 +452,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c Preference notificationsVibrate = screen.findPreference(NOTIFICATIONS_VIBRATE_TOGGLE_KEY); Preference notificationsQuietUi = screen.findPreference(NOTIFICATIONS_QUIET_UI_TOGGLE_KEY); Preference explainProtectedMediaKey = screen.findPreference(EXPLAIN_PROTECTED_MEDIA_KEY); -@@ -848,20 +888,32 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -845,20 +885,32 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment if (mRequiresTriStateSetting) { screen.removePreference(binaryToggle); screen.removePreference(fourStateCookieToggle); @@ -486,7 +486,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c if (permissionBlockedByOs) { maybeShowOsWarning(screen); -@@ -976,6 +1028,15 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -973,6 +1025,15 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment triStateToggle.initialize(setting, descriptionIds); } @@ -502,7 +502,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c private void configureBinaryToggle(ChromeSwitchPreference binaryToggle, int contentType) { binaryToggle.setOnPreferenceChangeListener(this); binaryToggle.setTitle(ContentSettingsResources.getTitle(contentType)); -@@ -1059,9 +1120,11 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment +@@ -1056,9 +1117,11 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment CharSequence[] descriptions = new String[2]; descriptions[0] = @@ -536,7 +536,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c case ContentSettingsType.AR: return "ar_permission_list"; case ContentSettingsType.MEDIASTREAM_CAMERA: -@@ -928,11 +931,12 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -926,11 +929,12 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment } ChromeSwitchPreference switchPreference = (ChromeSwitchPreference) preference; @@ -550,7 +550,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c switchPreference.setOnPreferenceChangeListener(this); @ContentSettingsType int contentType = getContentSettingsTypeFromPreferenceKey(preference.getKey()); -@@ -950,20 +954,43 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -948,20 +952,43 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment @ContentSettingValues @Nullable Integer value, boolean isEmbargoed) { ListPreference listPreference = (ListPreference) preference; @@ -597,7 +597,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c // TODO(crbug.com/735110): Figure out if this is the correct thing to do - here we are // effectively treating non-ALLOW values as BLOCK. int index = (value == ContentSettingValues.ALLOW ? 0 : 1); -@@ -1196,7 +1223,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -1194,7 +1221,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment preference.setSummary(getDSECategorySummary(permission)); } else { preference.setSummary( @@ -664,7 +664,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsDelegate.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsDelegate.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsDelegate.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsDelegate.java -@@ -123,4 +123,6 @@ public interface SiteSettingsDelegate { +@@ -118,4 +118,6 @@ public interface SiteSettingsDelegate { * Dismisses the Privacy Sandbox snackbar, if active. */ void dismissPrivacySandboxSnackbar(); @@ -912,7 +912,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java -@@ -223,6 +223,8 @@ public class WebsitePreferenceBridge { +@@ -222,6 +222,8 @@ public class WebsitePreferenceBridge { switch (contentSettingsType) { case ContentSettingsType.PROTECTED_MEDIA_IDENTIFIER: return true; @@ -921,7 +921,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c default: return false; } -@@ -324,6 +326,14 @@ public class WebsitePreferenceBridge { +@@ -323,6 +325,14 @@ public class WebsitePreferenceBridge { contentSettingType, primaryPattern, secondaryPattern, setting); } @@ -936,7 +936,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c @NativeMethods public interface Natives { boolean isNotificationEmbargoedForOrigin( -@@ -377,5 +387,7 @@ public class WebsitePreferenceBridge { +@@ -376,5 +386,7 @@ public class WebsitePreferenceBridge { boolean isContentSettingManagedByCustodian( BrowserContextHandle browserContextHandle, int contentSettingType); boolean getLocationAllowedByPolicy(BrowserContextHandle browserContextHandle); @@ -947,7 +947,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c diff --git a/components/browser_ui/site_settings/android/website_preference_bridge.cc b/components/browser_ui/site_settings/android/website_preference_bridge.cc --- a/components/browser_ui/site_settings/android/website_preference_bridge.cc +++ b/components/browser_ui/site_settings/android/website_preference_bridge.cc -@@ -918,3 +918,19 @@ static jboolean JNI_WebsitePreferenceBridge_GetLocationAllowedByPolicy( +@@ -904,3 +904,19 @@ static jboolean JNI_WebsitePreferenceBridge_GetLocationAllowedByPolicy( ->GetDefaultContentSetting(ContentSettingsType::GEOLOCATION, nullptr) == CONTENT_SETTING_ALLOW; } @@ -1082,7 +1082,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc --- a/components/content_settings/core/browser/content_settings_registry.cc +++ b/components/content_settings/core/browser/content_settings_registry.cc -@@ -598,6 +598,18 @@ void ContentSettingsRegistry::Init() { +@@ -609,6 +609,18 @@ void ContentSettingsRegistry::Init() { ContentSettingsInfo::INHERIT_IF_LESS_PERMISSIVE, ContentSettingsInfo::PERSISTENT, ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY); @@ -1121,7 +1121,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc diff --git a/components/content_settings/core/browser/host_content_settings_map.cc b/components/content_settings/core/browser/host_content_settings_map.cc --- a/components/content_settings/core/browser/host_content_settings_map.cc +++ b/components/content_settings/core/browser/host_content_settings_map.cc -@@ -586,6 +586,14 @@ void HostContentSettingsMap::SetClockForTesting(base::Clock* clock) { +@@ -587,6 +587,14 @@ void HostContentSettingsMap::SetClockForTesting(base::Clock* clock) { provider->SetClockForTesting(clock); } @@ -1139,7 +1139,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. diff --git a/components/content_settings/core/browser/host_content_settings_map.h b/components/content_settings/core/browser/host_content_settings_map.h --- a/components/content_settings/core/browser/host_content_settings_map.h +++ b/components/content_settings/core/browser/host_content_settings_map.h -@@ -327,6 +327,9 @@ class HostContentSettingsMap : public content_settings::Observer, +@@ -328,6 +328,9 @@ class HostContentSettingsMap : public content_settings::Observer, allow_invalid_secondary_pattern_for_testing_ = allow; } @@ -1152,15 +1152,7 @@ diff --git a/components/content_settings/core/browser/host_content_settings_map. diff --git a/components/content_settings/core/common/content_settings.cc b/components/content_settings/core/common/content_settings.cc --- a/components/content_settings/core/common/content_settings.cc +++ b/components/content_settings/core/common/content_settings.cc -@@ -93,6 +93,7 @@ constexpr HistogramValue kHistogramValue[] = { - {ContentSettingsType::PERMISSION_AUTOREVOCATION_DATA, 72}, - {ContentSettingsType::FILE_SYSTEM_LAST_PICKED_DIRECTORY, 73}, - {ContentSettingsType::DISPLAY_CAPTURE, 74}, -+ //{ContentSettingsType::TIMEZONE_OVERRIDE, 75}, removed, see line 118 - }; - - } // namespace -@@ -179,7 +180,8 @@ bool RendererContentSettingRules::IsRendererContentSetting( +@@ -180,7 +180,8 @@ bool RendererContentSettingRules::IsRendererContentSetting( content_type == ContentSettingsType::JAVASCRIPT || content_type == ContentSettingsType::CLIENT_HINTS || content_type == ContentSettingsType::POPUPS || @@ -1229,7 +1221,7 @@ diff --git a/components/content_settings/core/common/content_settings_mojom_trai diff --git a/components/content_settings/core/common/content_settings_types.h b/components/content_settings/core/common/content_settings_types.h --- a/components/content_settings/core/common/content_settings_types.h +++ b/components/content_settings/core/common/content_settings_types.h -@@ -231,6 +231,9 @@ enum class ContentSettingsType : int32_t { +@@ -230,6 +230,9 @@ enum class ContentSettingsType : int32_t { // by the File System Access API. FILE_SYSTEM_LAST_PICKED_DIRECTORY, @@ -1242,7 +1234,7 @@ diff --git a/components/content_settings/core/common/content_settings_types.h b/ diff --git a/components/content_settings/core/common/pref_names.cc b/components/content_settings/core/common/pref_names.cc --- a/components/content_settings/core/common/pref_names.cc +++ b/components/content_settings/core/common/pref_names.cc -@@ -134,4 +134,7 @@ const char kQuietNotificationPermissionUiDisabledTime[] = +@@ -140,4 +140,7 @@ const char kQuietNotificationPermissionUiDisabledTime[] = const char kNotificationsVibrateEnabled[] = "notifications.vibrate_enabled"; #endif @@ -1253,7 +1245,7 @@ diff --git a/components/content_settings/core/common/pref_names.cc b/components/ diff --git a/components/content_settings/core/common/pref_names.h b/components/content_settings/core/common/pref_names.h --- a/components/content_settings/core/common/pref_names.h +++ b/components/content_settings/core/common/pref_names.h -@@ -72,6 +72,8 @@ extern const char kQuietNotificationPermissionUiDisabledTime[]; +@@ -75,6 +75,8 @@ extern const char kQuietNotificationPermissionUiDisabledTime[]; extern const char kNotificationsVibrateEnabled[]; #endif @@ -1406,7 +1398,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.h diff --git a/weblayer/browser/java/org/chromium/weblayer_private/settings/WebLayerSiteSettingsDelegate.java b/weblayer/browser/java/org/chromium/weblayer_private/settings/WebLayerSiteSettingsDelegate.java --- a/weblayer/browser/java/org/chromium/weblayer_private/settings/WebLayerSiteSettingsDelegate.java +++ b/weblayer/browser/java/org/chromium/weblayer_private/settings/WebLayerSiteSettingsDelegate.java -@@ -148,4 +148,7 @@ public class WebLayerSiteSettingsDelegate +@@ -141,4 +141,7 @@ public class WebLayerSiteSettingsDelegate @Override public void dismissPrivacySandboxSnackbar() {} diff --git a/build/patches/Update-i18n-zh_CN-support.patch b/build/patches/Update-i18n-zh_CN-support.patch index e018687e..e915d400 100644 --- a/build/patches/Update-i18n-zh_CN-support.patch +++ b/build/patches/Update-i18n-zh_CN-support.patch @@ -12,7 +12,7 @@ Subject: Update i18n zh_CN support diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/resources/generated_resources_zh-CN.xtb --- a/chrome/app/resources/generated_resources_zh-CN.xtb +++ b/chrome/app/resources/generated_resources_zh-CN.xtb -@@ -7317,4 +7317,6 @@ +@@ -7437,4 +7437,6 @@ 正在建立安全连接... 您需要开启 Chrome 同步才能使用 Wi-Fi 同步功能。了解详情 检查(&N) @@ -24,7 +24,7 @@ diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/res diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb --- a/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb +++ b/chrome/browser/ui/android/strings/translations/android_chrome_strings_zh-CN.xtb -@@ -1230,4 +1230,35 @@ +@@ -1264,4 +1264,35 @@ 关闭所有标签页 常规 动态卡片上的菜单已关闭 @@ -65,8 +65,8 @@ diff --git a/chrome/browser/ui/android/strings/translations/android_chrome_strin diff --git a/components/browser_ui/strings/android/translations/browser_ui_strings_zh-CN.xtb b/components/browser_ui/strings/android/translations/browser_ui_strings_zh-CN.xtb --- a/components/browser_ui/strings/android/translations/browser_ui_strings_zh-CN.xtb +++ b/components/browser_ui/strings/android/translations/browser_ui_strings_zh-CN.xtb -@@ -310,4 +310,17 @@ - Android 设置中为 开启这些权限。 +@@ -315,4 +315,17 @@ + 移除此网站? 屏蔽会展示侵扰性或误导性广告的网站(推荐) 已存储的数据 - @@ -88,7 +88,7 @@ diff --git a/components/browser_ui/strings/android/translations/browser_ui_strin diff --git a/components/strings/components_strings_zh-CN.xtb b/components/strings/components_strings_zh-CN.xtb --- a/components/strings/components_strings_zh-CN.xtb +++ b/components/strings/components_strings_zh-CN.xtb -@@ -2123,4 +2123,7 @@ +@@ -2181,4 +2181,7 @@ </ul> JIS B1 来自 Google Pay diff --git a/build/patches/Use-4-tile-rows-never-show-logo.patch b/build/patches/Use-4-tile-rows-never-show-logo.patch index 97ac88cf..8b986c59 100644 --- a/build/patches/Use-4-tile-rows-never-show-logo.patch +++ b/build/patches/Use-4-tile-rows-never-show-logo.patch @@ -12,7 +12,7 @@ Subject: Use 4 tile rows, never show logo diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java -@@ -120,7 +120,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -119,7 +119,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer */ private boolean mHasShownView; @@ -21,7 +21,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL private boolean mSearchProviderIsGoogle; private boolean mShowingNonStandardLogo; -@@ -254,7 +254,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -244,7 +244,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer mTileGroup = new TileGroup(tileRenderer, mManager, contextMenuManager, tileGroupDelegate, /* observer = */ this, offlinePageBridge); @@ -30,7 +30,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL if (searchProviderIsGoogle && QueryTileUtils.isQueryTilesEnabledOnNTP()) { maxRows = QueryTileSection.getMaxRowsForMostVisitedTiles(getContext()); } -@@ -574,7 +574,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -542,7 +542,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer && mInitialized) { return; } diff --git a/build/patches/User-agent-customization.patch b/build/patches/User-agent-customization.patch index c8d969fb..43b2107c 100644 --- a/build/patches/User-agent-customization.patch +++ b/build/patches/User-agent-customization.patch @@ -20,7 +20,7 @@ to use the flag in the hamburger menu to navigate with a custom useragent leavin .../chromium/chrome/browser/tab/TabImpl.java | 71 +++++++ .../chromium/chrome/browser/tab/TabUtils.java | 18 +- .../browser/android/content/content_utils.cc | 28 +++ - .../preferences/browser_prefs_android.cc | 7 + + .../preferences/browser_prefs_android.cc | 6 + .../privacy_preferences_manager_impl.cc | 118 +++++++++++ .../preferences/ChromePreferenceKeys.java | 7 +- .../settings/PrivacyPreferencesManager.java | 8 + @@ -38,7 +38,7 @@ to use the flag in the hamburger menu to navigate with a custom useragent leavin .../browser/web_contents/web_contents_impl.cc | 6 + .../framehost/NavigationControllerImpl.java | 6 +- content/renderer/render_thread_impl.cc | 1 - - 31 files changed, 749 insertions(+), 10 deletions(-) + 31 files changed, 748 insertions(+), 10 deletions(-) create mode 100644 chrome/android/java/res/layout/custom_useragent_preferences.xml create mode 100644 chrome/android/java/res/xml/useragent_preferences.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/UserAgentPreferences.java @@ -46,7 +46,7 @@ to use the flag in the hamburger menu to navigate with a custom useragent leavin diff --git a/base/base_switches.cc b/base/base_switches.cc --- a/base/base_switches.cc +++ b/base/base_switches.cc -@@ -169,6 +169,8 @@ const char kEnableThreadInstructionCount[] = "enable-thread-instruction-count"; +@@ -174,6 +174,8 @@ const char kEnableThreadInstructionCount[] = "enable-thread-instruction-count"; extern const char kEnableCrashpad[] = "enable-crashpad"; #endif @@ -58,7 +58,7 @@ diff --git a/base/base_switches.cc b/base/base_switches.cc diff --git a/base/base_switches.h b/base/base_switches.h --- a/base/base_switches.h +++ b/base/base_switches.h -@@ -70,6 +70,8 @@ extern const char kEnableCrashpad[]; +@@ -71,6 +71,8 @@ extern const char kEnableCrashpad[]; extern const char kSchedulerBoostUrgent[]; #endif @@ -70,9 +70,9 @@ diff --git a/base/base_switches.h b/base/base_switches.h diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni --- a/chrome/android/chrome_java_resources.gni +++ b/chrome/android/chrome_java_resources.gni -@@ -946,4 +946,6 @@ chrome_java_resources = [ +@@ -919,4 +919,6 @@ chrome_java_resources = [ + "java/res/xml/search_widget_info.xml", "java/res/xml/sync_and_services_preferences.xml", - "java/res/xml/theme_preferences.xml", "java/res/xml/tracing_preferences.xml", + "java/res/xml/useragent_preferences.xml", + "java/res/layout/custom_useragent_preferences.xml", @@ -80,7 +80,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni --- a/chrome/android/chrome_java_sources.gni +++ b/chrome/android/chrome_java_sources.gni -@@ -1146,6 +1146,7 @@ chrome_java_sources = [ +@@ -1117,6 +1117,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/payments/ui/DimmingDialog.java", "java/src/org/chromium/chrome/browser/payments/ui/LineItem.java", "java/src/org/chromium/chrome/browser/payments/ui/PaymentAppComparator.java", @@ -529,7 +529,7 @@ new file mode 100644 diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java -@@ -64,6 +64,11 @@ import org.chromium.ui.base.WindowAndroid; +@@ -65,6 +65,11 @@ import org.chromium.ui.base.WindowAndroid; import org.chromium.ui.util.ColorUtils; import org.chromium.url.GURL; import org.chromium.url.Origin; @@ -541,7 +541,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav /** * Implementation of the interface {@link Tab}. Contains and manages a {@link ContentView}. -@@ -492,6 +497,31 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { +@@ -494,6 +499,31 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { // Request desktop sites for large screen tablets. params.setOverrideUserAgent(calculateUserAgentOverrideOption()); @@ -573,7 +573,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav // We load the URL from the tab rather than directly from the ContentView so the tab has // a chance of using a prerenderer page is any. int loadType = TabImplJni.get().loadUrl(mNativeTabAndroid, params.getUrl(), -@@ -1507,6 +1537,10 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { +@@ -1515,6 +1545,10 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { if (mWebContents != null) mWebContents.getNavigationController().loadIfNecessary(); mIsBeingRestored = true; for (TabObserver observer : mObservers) observer.onRestoreStarted(this); @@ -584,7 +584,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav } finally { TraceEvent.end("Tab.restoreIfNeeded"); } -@@ -1674,6 +1708,43 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { +@@ -1691,6 +1725,43 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { /* forcedByUser */ false); } @@ -711,16 +711,10 @@ diff --git a/chrome/browser/android/content/content_utils.cc b/chrome/browser/an diff --git a/chrome/browser/android/preferences/browser_prefs_android.cc b/chrome/browser/android/preferences/browser_prefs_android.cc --- a/chrome/browser/android/preferences/browser_prefs_android.cc +++ b/chrome/browser/android/preferences/browser_prefs_android.cc -@@ -10,11 +10,18 @@ - #include "chrome/browser/notifications/notification_platform_bridge_android.h" - #include "components/pref_registry/pref_registry_syncable.h" - #include "components/prefs/pref_registry_simple.h" -+#include "chrome/common/pref_names.h" - - namespace android { - +@@ -17,6 +17,12 @@ namespace android { void RegisterPrefs(PrefRegistrySimple* registry) { RegisterClipboardAndroidPrefs(registry); + webauthn::authenticator::RegisterLocalState(registry); + + registry->RegisterBooleanPref(prefs::kOverrideUserAgentEnabled, false); + registry->RegisterStringPref(prefs::kOverrideUserAgent, ""); @@ -865,7 +859,7 @@ diff --git a/chrome/browser/android/preferences/privacy_preferences_manager_impl diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java --- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java +++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java -@@ -881,6 +881,9 @@ public final class ChromePreferenceKeys { +@@ -957,6 +957,9 @@ public final class ChromePreferenceKeys { public static final KeyPrefix KEY_ZERO_SUGGEST_HEADER_GROUP_COLLAPSED_BY_DEFAULT_PREFIX = new KeyPrefix("zero_suggest_header_group_collapsed_by_default*"); @@ -874,8 +868,8 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro + /** * These values are currently used as SharedPreferences keys, along with the keys in - * {@link GrandfatheredChromePreferenceKeys#getKeysInUse()}. Add new SharedPreferences keys -@@ -954,7 +957,9 @@ public final class ChromePreferenceKeys { + * {@link LegacyChromePreferenceKeys#getKeysInUse()}. Add new SharedPreferences keys +@@ -1045,7 +1048,9 @@ public final class ChromePreferenceKeys { SETTINGS_SAFETY_CHECK_RUN_COUNTER, SIGNIN_PROMO_IMPRESSIONS_COUNT_NTP, TWA_DISCLOSURE_SEEN_PACKAGES, @@ -1001,7 +995,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc --- a/chrome/common/pref_names.cc +++ b/chrome/common/pref_names.cc -@@ -417,6 +417,19 @@ const char kAllowJavascriptAppleEvents[] = +@@ -427,6 +427,19 @@ const char kAllowJavascriptAppleEvents[] = #endif @@ -1024,7 +1018,7 @@ diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h --- a/chrome/common/pref_names.h +++ b/chrome/common/pref_names.h -@@ -1135,6 +1135,14 @@ extern const char kSuppressDifferentOriginSubframeJSDialogs[]; +@@ -1153,6 +1153,14 @@ extern const char kExplicitlyAllowedNetworkPorts[]; extern const char kIncognitoTabHistoryEnabled[]; #endif @@ -1080,7 +1074,7 @@ diff --git a/components/embedder_support/user_agent_utils.cc b/components/embedd diff --git a/content/browser/renderer_host/navigation_controller_android.cc b/content/browser/renderer_host/navigation_controller_android.cc --- a/content/browser/renderer_host/navigation_controller_android.cc +++ b/content/browser/renderer_host/navigation_controller_android.cc -@@ -237,7 +237,8 @@ void NavigationControllerAndroid::LoadUrl( +@@ -238,7 +238,8 @@ void NavigationControllerAndroid::LoadUrl( const JavaParamRef& data_url_as_string, jboolean can_load_local_resources, jboolean is_renderer_initiated, @@ -1090,7 +1084,7 @@ diff --git a/content/browser/renderer_host/navigation_controller_android.cc b/co DCHECK(url); NavigationController::LoadURLParams params( GURL(ConvertJavaStringToUTF8(env, url))); -@@ -291,6 +292,9 @@ void NavigationControllerAndroid::LoadUrl( +@@ -292,6 +293,9 @@ void NavigationControllerAndroid::LoadUrl( Referrer::ConvertToPolicy(referrer_policy)); } @@ -1116,7 +1110,7 @@ diff --git a/content/browser/renderer_host/navigation_controller_android.h b/con diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc --- a/content/browser/renderer_host/render_process_host_impl.cc +++ b/content/browser/renderer_host/render_process_host_impl.cc -@@ -3430,6 +3430,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( +@@ -3383,6 +3383,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( #if BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS) switches::kSchedulerBoostUrgent, #endif @@ -1135,7 +1129,7 @@ diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser #include "base/threading/thread_task_runner_handle.h" #include "base/time/time.h" #include "base/trace_event/optional_trace_event.h" -@@ -2510,6 +2511,11 @@ const blink::web_pref::WebPreferences WebContentsImpl::ComputeWebPreferences() { +@@ -2487,6 +2488,11 @@ const blink::web_pref::WebPreferences WebContentsImpl::ComputeWebPreferences() { prefs.viewport_meta_enabled = false; } @@ -1173,7 +1167,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/frameh diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc --- a/content/renderer/render_thread_impl.cc +++ b/content/renderer/render_thread_impl.cc -@@ -1636,7 +1636,6 @@ void RenderThreadImpl::SetWebKitSharedTimersSuspended(bool suspend) { +@@ -1653,7 +1653,6 @@ void RenderThreadImpl::SetWebKitSharedTimersSuspended(bool suspend) { } void RenderThreadImpl::SetUserAgent(const std::string& user_agent) { diff --git a/build/patches/build-remove-calling-untrusted-hooks.patch b/build/patches/build-remove-calling-untrusted-hooks.patch index 83d172df..4f9be88b 100644 --- a/build/patches/build-remove-calling-untrusted-hooks.patch +++ b/build/patches/build-remove-calling-untrusted-hooks.patch @@ -11,16 +11,16 @@ sysroot. diff --git a/DEPS b/DEPS --- a/DEPS +++ b/DEPS -@@ -94,7 +94,7 @@ vars = { +@@ -99,7 +99,7 @@ vars = { - # Check out and download nacl by default. This can be disabled e.g. with - # custom_vars. -- 'checkout_nacl': True, + # Check out and download nacl by default, unless on an arm mac. + # This can be disabled e.g. with custom_vars. +- 'checkout_nacl': 'not (host_os == "mac" and host_cpu == "arm64")', + 'checkout_nacl': False, # By default, do not check out src-internal. This can be overridden e.g. with # custom_vars. -@@ -125,8 +125,8 @@ vars = { +@@ -130,8 +130,8 @@ vars = { # support for other platforms may be added in the future. 'checkout_openxr' : 'checkout_win', @@ -31,7 +31,7 @@ diff --git a/DEPS b/DEPS # By default bot checkouts the WPR archive files only when this # flag is set True. -@@ -3584,49 +3584,6 @@ hooks = [ +@@ -3636,49 +3636,6 @@ hooks = [ 'sync', '--extract', ], }, @@ -81,7 +81,7 @@ diff --git a/DEPS b/DEPS { # Case-insensitivity for the Win SDK. Must run before win_toolchain below. 'name': 'ciopfs_linux', -@@ -3757,18 +3714,6 @@ hooks = [ +@@ -3821,18 +3778,6 @@ hooks = [ '-s', 'src/buildtools/mac/clang-format.sha1', ], }, @@ -100,7 +100,7 @@ diff --git a/DEPS b/DEPS # Pull rc binaries using checked-in hashes. { 'name': 'rc_win', -@@ -3794,29 +3739,6 @@ hooks = [ +@@ -3858,29 +3803,6 @@ hooks = [ '-s', 'src/build/toolchain/win/rc/mac/rc.sha1', ], }, diff --git a/build/patches/disable-AdsBlockedInfoBar.patch b/build/patches/disable-AdsBlockedInfoBar.patch index 1988205b..7e782433 100644 --- a/build/patches/disable-AdsBlockedInfoBar.patch +++ b/build/patches/disable-AdsBlockedInfoBar.patch @@ -17,8 +17,8 @@ diff --git a/chrome/browser/subresource_filter/chrome_subresource_filter_client. #include "chrome/browser/profiles/profile.h" #include "chrome/browser/safe_browsing/safe_browsing_service.h" #include "chrome/browser/subresource_filter/subresource_filter_profile_context_factory.h" -@@ -15,10 +14,6 @@ - #include "components/subresource_filter/content/browser/profile_interaction_manager.h" +@@ -14,10 +13,6 @@ + #include "components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.h" #include "components/subresource_filter/content/browser/ruleset_service.h" -#if defined(OS_ANDROID) @@ -28,7 +28,7 @@ diff --git a/chrome/browser/subresource_filter/chrome_subresource_filter_client. ChromeSubresourceFilterClient::ChromeSubresourceFilterClient( content::WebContents* web_contents) : web_contents_(web_contents) { -@@ -48,11 +43,6 @@ void ChromeSubresourceFilterClient:: +@@ -44,11 +39,6 @@ void ChromeSubresourceFilterClient:: } void ChromeSubresourceFilterClient::ShowNotification() { diff --git a/build/patches/disable-WebView-variations-support.patch b/build/patches/disable-WebView-variations-support.patch index 84bfd14c..453562ba 100644 --- a/build/patches/disable-WebView-variations-support.patch +++ b/build/patches/disable-WebView-variations-support.patch @@ -10,7 +10,7 @@ Subject: disable WebView variations support diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumAwInit.java -@@ -168,10 +168,6 @@ public class WebViewChromiumAwInit { +@@ -196,10 +196,6 @@ public class WebViewChromiumAwInit { AwBrowserProcess.configureChildProcessLauncher(); diff --git a/build/patches/disable-autofill-server-communication-by-default.patch b/build/patches/disable-autofill-server-communication-by-default.patch index 24a2785c..0207ec96 100644 --- a/build/patches/disable-autofill-server-communication-by-default.patch +++ b/build/patches/disable-autofill-server-communication-by-default.patch @@ -9,7 +9,7 @@ Subject: disable autofill server communication by default diff --git a/components/autofill/core/common/autofill_features.cc b/components/autofill/core/common/autofill_features.cc --- a/components/autofill/core/common/autofill_features.cc +++ b/components/autofill/core/common/autofill_features.cc -@@ -309,7 +309,7 @@ const base::Feature kAutofillSectionUponRedundantNameInfo{ +@@ -303,7 +303,7 @@ const base::Feature kAutofillSectionUponRedundantNameInfo{ // "upload" resources. // i.e., https://other.autofill.server:port/tbproxy/af/ const base::Feature kAutofillServerCommunication{ diff --git a/build/patches/dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch b/build/patches/dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch index 8cea3f16..d1ce854b 100644 --- a/build/patches/dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch +++ b/build/patches/dns-send-IPv6-connectivity-probes-to-RIPE-DNS.patch @@ -13,7 +13,7 @@ Increase probe period from 1s to 15s diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc --- a/net/dns/host_resolver_manager.cc +++ b/net/dns/host_resolver_manager.cc -@@ -130,12 +130,12 @@ const unsigned kMinimumTTLSeconds = kCacheEntryTTLSeconds; +@@ -132,12 +132,12 @@ const unsigned kMinimumTTLSeconds = kCacheEntryTTLSeconds; // Time between IPv6 probes, i.e. for how long results of each IPv6 probe are // cached. diff --git a/build/patches/first_run-deactivate-autoupdate-globally.patch b/build/patches/first_run-deactivate-autoupdate-globally.patch index 90c2900d..545fb041 100644 --- a/build/patches/first_run-deactivate-autoupdate-globally.patch +++ b/build/patches/first_run-deactivate-autoupdate-globally.patch @@ -15,7 +15,7 @@ turn it back on. diff --git a/chrome/browser/extensions/extension_system_impl.cc b/chrome/browser/extensions/extension_system_impl.cc --- a/chrome/browser/extensions/extension_system_impl.cc +++ b/chrome/browser/extensions/extension_system_impl.cc -@@ -208,9 +208,7 @@ void ExtensionSystemImpl::Shared::Init(bool extensions_enabled) { +@@ -206,9 +206,7 @@ void ExtensionSystemImpl::Shared::Init(bool extensions_enabled) { // TODO(https://crbug.com/1125475): Enable Extensions for Ephemeral Guest // profiles. diff --git a/build/patches/kill-Auth.patch b/build/patches/kill-Auth.patch index fa56cc5d..237dfc8f 100644 --- a/build/patches/kill-Auth.patch +++ b/build/patches/kill-Auth.patch @@ -3,8 +3,8 @@ Date: Fri, 22 Jun 2018 17:06:15 +0200 Subject: kill Auth --- - .../signin/SystemAccountManagerDelegate.java | 56 ++----------------- - 1 file changed, 4 insertions(+), 52 deletions(-) + .../signin/SystemAccountManagerDelegate.java | 52 ++----------------- + 1 file changed, 4 insertions(+), 48 deletions(-) diff --git a/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java b/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java --- a/components/signin/public/android/java/src/org/chromium/components/signin/SystemAccountManagerDelegate.java @@ -19,7 +19,7 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.GoogleApiAvailability; -@@ -120,18 +117,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -120,14 +117,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { // so don't report any accounts if Google Play Services are out of date. checkCanUseGooglePlayServices(); @@ -30,16 +30,12 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s - Account[] accounts = mAccountManager.getAccountsByType(GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE); - long elapsed = SystemClock.elapsedRealtime() - now; - recordElapsedTimeHistogram("Signin.AndroidGetAccountsTime_AccountManager", elapsed); -- if (ThreadUtils.runningOnUiThread()) { -- recordElapsedTimeHistogram( -- "Signin.AndroidGetAccountsTimeUiThread_AccountManager", elapsed); -- } - return accounts; + return new Account[] {}; } @Override -@@ -139,30 +125,12 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -135,30 +125,12 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { throws AuthException { assert !ThreadUtils.runningOnUiThread(); assert AccountUtils.GOOGLE_ACCOUNT_TYPE.equals(account.type); @@ -72,7 +68,7 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s } @Override -@@ -192,17 +160,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -192,17 +164,6 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { @SuppressLint("MissingPermission") @Override public void createAddAccountIntent(Callback callback) { @@ -90,7 +86,7 @@ diff --git a/components/signin/public/android/java/src/org/chromium/components/s } // No permission is needed on 23+ and Chrome always has MANAGE_ACCOUNTS permission on lower APIs -@@ -220,12 +177,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { +@@ -220,12 +181,7 @@ public class SystemAccountManagerDelegate implements AccountManagerDelegate { @Nullable @Override public String getAccountGaiaId(String accountEmail) { diff --git a/build/patches/kill-TOS-and-metrics-opt-out.patch b/build/patches/kill-TOS-and-metrics-opt-out.patch index 4812b954..dc999e68 100644 --- a/build/patches/kill-TOS-and-metrics-opt-out.patch +++ b/build/patches/kill-TOS-and-metrics-opt-out.patch @@ -31,7 +31,7 @@ diff --git a/chrome/android/java/res/layout/fre_tosanduma.xml b/chrome/android/j diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res/values/dimens.xml --- a/chrome/android/java/res/values/dimens.xml +++ b/chrome/android/java/res/values/dimens.xml -@@ -141,7 +141,6 @@ +@@ -121,7 +121,6 @@ 36dp 120dp 110dp @@ -54,7 +54,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java -@@ -54,7 +54,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm +@@ -53,7 +53,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm private boolean mTosButtonClicked; private Button mAcceptButton; @@ -62,7 +62,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAnd private TextView mTosAndPrivacy; private View mTitle; private View mProgressSpinner; -@@ -82,7 +81,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm +@@ -81,7 +80,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm mProgressSpinner = view.findViewById(R.id.progress_spinner); mProgressSpinner.setVisibility(View.GONE); mAcceptButton = (Button) view.findViewById(R.id.terms_accept); @@ -70,7 +70,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAnd mTosAndPrivacy = (TextView) view.findViewById(R.id.tos_and_privacy); mAcceptButton.setOnClickListener((v) -> onTosButtonClicked()); -@@ -142,11 +140,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm +@@ -141,11 +139,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm if (!isVisibleToUser) { // Restore original enabled & visibility states, in case the user returns to the page. setSpinnerVisible(false); @@ -82,7 +82,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAnd } } -@@ -182,8 +175,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm +@@ -190,8 +183,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm RecordHistogram.recordTimesHistogram("MobileFre.TosFragment.SpinnerVisibleDuration", SystemClock.elapsedRealtime() - mTosAcceptedTime); } @@ -91,7 +91,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAnd } private void setSpinnerVisible(boolean spinnerVisible) { -@@ -207,10 +198,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm +@@ -215,10 +206,6 @@ public class ToSAndUMAFirstRunFragment extends Fragment implements FirstRunFragm mAcceptButton.setVisibility(visibility); mTosAndPrivacy.setVisibility(visibility); diff --git a/build/patches/kill-Vision.patch b/build/patches/kill-Vision.patch index 61e4abe8..b798b30f 100644 --- a/build/patches/kill-Vision.patch +++ b/build/patches/kill-Vision.patch @@ -13,15 +13,15 @@ Barcode, face and text detection APIs diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -286,8 +286,6 @@ android_library("chrome_java") { +@@ -289,8 +289,6 @@ android_library("chrome_java") { "$google_play_services_package:google_play_services_gcm_java", "$google_play_services_package:google_play_services_iid_java", "$google_play_services_package:google_play_services_tasks_java", - "$google_play_services_package:google_play_services_vision_common_java", - "$google_play_services_package:google_play_services_vision_java", "//base:base_java", - "//base:jni_java", "//cc:cc_java", + "//chrome/android/features/keyboard_accessory:public_java", diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD.gn --- a/services/shape_detection/BUILD.gn +++ b/services/shape_detection/BUILD.gn diff --git a/build/patches/ungoogled-chromium-Disable-Google-host-detection.patch b/build/patches/ungoogled-chromium-Disable-Google-host-detection.patch index 70968000..6bc8e3af 100644 --- a/build/patches/ungoogled-chromium-Disable-Google-host-detection.patch +++ b/build/patches/ungoogled-chromium-Disable-Google-host-detection.patch @@ -14,7 +14,7 @@ Disables various detections of Google hosts and functionality specific to them diff --git a/components/google/core/common/google_util.cc b/components/google/core/common/google_util.cc --- a/components/google/core/common/google_util.cc +++ b/components/google/core/common/google_util.cc -@@ -29,129 +29,10 @@ +@@ -28,129 +28,10 @@ namespace google_util { @@ -144,7 +144,7 @@ diff --git a/components/google/core/common/google_util.cc b/components/google/co std::string GetGoogleLocale(const std::string& application_locale) { // Google does not recognize "nb" for Norwegian Bokmal; it uses "no". return (application_locale == "nb") ? "no" : application_locale; -@@ -164,25 +45,7 @@ GURL AppendGoogleLocaleParam(const GURL& url, +@@ -163,25 +44,7 @@ GURL AppendGoogleLocaleParam(const GURL& url, } std::string GetGoogleCountryCode(const GURL& google_homepage_url) { @@ -171,7 +171,7 @@ diff --git a/components/google/core/common/google_util.cc b/components/google/co } GURL GetGoogleSearchURL(const GURL& google_homepage_url) { -@@ -221,99 +84,30 @@ bool StartsWithCommandLineGoogleBaseURL(const GURL& url) { +@@ -220,99 +83,30 @@ bool StartsWithCommandLineGoogleBaseURL(const GURL& url) { bool IsGoogleHostname(base::StringPiece host, SubdomainPermission subdomain_permission) { @@ -336,7 +336,7 @@ diff --git a/components/page_load_metrics/common/page_load_metrics_util.cc b/com diff --git a/components/search_engines/template_url.cc b/components/search_engines/template_url.cc --- a/components/search_engines/template_url.cc +++ b/components/search_engines/template_url.cc -@@ -526,11 +526,7 @@ base::string16 TemplateURLRef::SearchTermToString16( +@@ -526,11 +526,7 @@ std::u16string TemplateURLRef::SearchTermToString16( bool TemplateURLRef::HasGoogleBaseURLs( const SearchTermsData& search_terms_data) const { ParseIfNecessary(search_terms_data); diff --git a/build/patches/ungoogled-chromium-Disable-profile-avatar.patch b/build/patches/ungoogled-chromium-Disable-profile-avatar.patch index af59ce56..87b56d7f 100644 --- a/build/patches/ungoogled-chromium-Disable-profile-avatar.patch +++ b/build/patches/ungoogled-chromium-Disable-profile-avatar.patch @@ -11,7 +11,7 @@ Added some Bromite-specific further improvements diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -1433,8 +1433,6 @@ static_library("browser") { +@@ -1384,8 +1384,6 @@ static_library("browser") { "profiles/profile_attributes_entry.h", "profiles/profile_attributes_storage.cc", "profiles/profile_attributes_storage.h", @@ -23,7 +23,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn diff --git a/chrome/browser/profiles/profile_attributes_entry.cc b/chrome/browser/profiles/profile_attributes_entry.cc --- a/chrome/browser/profiles/profile_attributes_entry.cc +++ b/chrome/browser/profiles/profile_attributes_entry.cc -@@ -284,12 +284,6 @@ base::string16 ProfileAttributesEntry::GetUserName() const { +@@ -286,12 +286,6 @@ std::u16string ProfileAttributesEntry::GetUserName() const { gfx::Image ProfileAttributesEntry::GetAvatarIcon( int size_for_placeholder_avatar, bool use_high_res_file) const { diff --git a/build/patches/ungoogled-chromium-Disable-translate-integration.patch b/build/patches/ungoogled-chromium-Disable-translate-integration.patch index 43861c6e..bc47d173 100644 --- a/build/patches/ungoogled-chromium-Disable-translate-integration.patch +++ b/build/patches/ungoogled-chromium-Disable-translate-integration.patch @@ -4,16 +4,16 @@ Subject: ungoogled-chromium: Disable translate integration Remove translate offer --- - .../java/res/xml/languages_preferences.xml | 5 -- - .../language/settings/LanguageSettings.java | 79 +------------------ - .../strings/android_chrome_strings.grd | 3 - - .../core/browser/translate_manager.cc | 5 +- - .../core/browser/translate_script.cc | 19 ++--- - 5 files changed, 10 insertions(+), 101 deletions(-) + .../java/res/xml/languages_preferences.xml | 5 --- + .../language/settings/LanguageSettings.java | 41 +------------------ + .../strings/android_chrome_strings.grd | 3 -- + .../core/browser/translate_manager.cc | 5 ++- + .../core/browser/translate_script.cc | 19 +++------ + 5 files changed, 11 insertions(+), 62 deletions(-) -diff --git a/chrome/android/java/res/xml/languages_preferences.xml b/chrome/android/java/res/xml/languages_preferences.xml ---- a/chrome/android/java/res/xml/languages_preferences.xml -+++ b/chrome/android/java/res/xml/languages_preferences.xml +diff --git a/chrome/browser/language/android/java/res/xml/languages_preferences.xml b/chrome/browser/language/android/java/res/xml/languages_preferences.xml +--- a/chrome/browser/language/android/java/res/xml/languages_preferences.xml ++++ b/chrome/browser/language/android/java/res/xml/languages_preferences.xml @@ -11,9 +11,4 @@ android:layout="@layout/languages_preference" android:widgetLayout="@layout/accept_languages_list" /> @@ -24,29 +24,25 @@ diff --git a/chrome/android/java/res/xml/languages_preferences.xml b/chrome/andr - android:summaryOff="@string/languages_offer_translate_switch" /> - -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java -@@ -42,15 +42,8 @@ public class LanguageSettings - // The keys for each preference shown on the languages page. - static final String APP_LANGUAGE_SECTION_KEY = "app_language_section"; +diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java +--- a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java ++++ b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/LanguageSettings.java +@@ -48,12 +48,6 @@ public class LanguageSettings extends PreferenceFragmentCompat static final String APP_LANGUAGE_PREFERENCE_KEY = "app_language_preference"; -- static final String PREFERRED_LANGUAGES_KEY = "preferred_languages"; + static final String PREFERRED_LANGUAGES_KEY = "preferred_languages"; static final String CONTENT_LANGUAGES_KEY = "content_languages_preference"; - static final String TRANSLATE_SWITCH_KEY = "translate_switch"; - -- static final String TRANSLATION_SETTINGS_SECTION = "translation_settings_section"; +- static final String TRANSLATION_ADVANCED_SECTION = "translation_advanced_settings_section"; - static final String TARGET_LANGUAGE_KEY = "translate_settings_target_language"; -- static final String AUTOMATIC_LANGUAGES_KEY = "translate_settings_automatic_languages"; -- static final String NO_PROMPT_LANGUAGES_KEY = "translate_settings_no_prompt_languages"; -- static final String NO_PROMPT_SITES_KEY = "translate_settings_no_prompt_sites"; -+ static final String PREFERRED_LANGUAGES_KEY = "preferred_languages"; +- static final String ALWAYS_LANGUAGES_KEY = "translate_settings_always_languages"; +- static final String NEVER_LANGUAGES_KEY = "translate_settings_never_languages"; - @Override - public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { -@@ -75,27 +68,6 @@ public class LanguageSettings - LanguageListPreference mLanguageListPref = - (LanguageListPreference) findPreference(PREFERRED_LANGUAGES_KEY); + private static final String TAG = "LanguageSettings"; + +@@ -87,27 +81,6 @@ public class LanguageSettings extends PreferenceFragmentCompat + ContentLanguagesPreference mLanguageListPref = + (ContentLanguagesPreference) findPreference(PREFERRED_LANGUAGES_KEY); mLanguageListPref.registerActivityLauncher(this); - - ChromeSwitchPreference translateSwitch = @@ -72,60 +68,39 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/language/settin } /** -@@ -139,48 +111,6 @@ public class LanguageSettings - * @param languageListPreference LanguageListPreference reference to update about state changes. - */ - private void setupTranslateSection(LanguageListPreference languageListPreference) { -- ChromeSwitchPreference translateSwitch = -- (ChromeSwitchPreference) findPreference(TRANSLATE_SWITCH_KEY); -- boolean isTranslateEnabled = getPrefService().getBoolean(Pref.OFFER_TRANSLATE_ENABLED); -- translateSwitch.setChecked(isTranslateEnabled); +@@ -127,8 +100,6 @@ public class LanguageSettings extends PreferenceFragmentCompat + ContentLanguagesPreference mLanguageListPref = + (ContentLanguagesPreference) findPreference(CONTENT_LANGUAGES_KEY); + mLanguageListPref.registerActivityLauncher(this); - -- PreferenceCategory translationSettingsSection = -- (PreferenceCategory) findPreference(TRANSLATION_SETTINGS_SECTION); -- translationSettingsSection.setOnExpandButtonClickListener( -- new PreferenceGroup.OnExpandButtonClickListener() { -- @Override -- public void onExpandButtonClick() { -- LanguagesManager.recordImpression(LanguagesManager.LanguageSettingsPageType -- .ADVANCED_LANGUAGE_SETTINGS); -- } -- }); -- -- // Get advanced section preference items -- LanguageItemPickerPreference targetLanguagePreference = -- (LanguageItemPickerPreference) findPreference(TARGET_LANGUAGE_KEY); -- -- translateSwitch.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() { -- @Override -- public boolean onPreferenceChange(Preference preference, Object newValue) { -- boolean enabled = (boolean) newValue; -- getPrefService().setBoolean(Pref.OFFER_TRANSLATE_ENABLED, enabled); -- languageListPreference.notifyPrefChanged(); -- targetLanguagePreference.setVisible(enabled); -- LanguagesManager.recordAction(enabled ? LanguagesManager.LanguageSettingsActionType -- .ENABLE_TRANSLATE_GLOBALLY -- : LanguagesManager.LanguageSettingsActionType -- .DISABLE_TRANSLATE_GLOBALLY); -- return true; -- } -- }); -- translateSwitch.setManagedPreferenceDelegate((ChromeManagedPreferenceDelegate) preference -- -> getPrefService().isManagedPreference(Pref.OFFER_TRANSLATE_ENABLED)); -- -- targetLanguagePreference.setLanguageItem(TranslateBridge.getTargetLanguage()); -- setSelectLanguageLauncher(targetLanguagePreference, -- AddLanguageFragment.LANGUAGE_OPTIONS_TRANSLATE_LANGUAGES, -- REQUEST_CODE_CHANGE_TARGET_LANGUAGE, -- LanguagesManager.LanguageSettingsPageType.TARGET_LANGUAGE); +- setupTranslateSection(mLanguageListPref); } + /** +@@ -158,7 +129,7 @@ public class LanguageSettings extends PreferenceFragmentCompat + * @param contentLanguagesPreference ContentLanguagesPreference reference to update about state + * changes. + */ +- private void setupTranslateSection(ContentLanguagesPreference contentLanguagesPreference) { ++/* private void setupTranslateSection(ContentLanguagesPreference contentLanguagesPreference) { + // Setup expandable advanced settings section. + PreferenceCategory translationAdvancedSection = + (PreferenceCategory) findPreference(TRANSLATION_ADVANCED_SECTION); +@@ -216,9 +187,7 @@ public class LanguageSettings extends PreferenceFragmentCompat + return true; + } + }); +- translateSwitch.setManagedPreferenceDelegate((ChromeManagedPreferenceDelegate) preference +- -> getPrefService().isManagedPreference(Pref.OFFER_TRANSLATE_ENABLED)); +- } ++ } */ + @Override -@@ -208,13 +138,6 @@ public class LanguageSettings + public void onStart() { +@@ -248,12 +217,6 @@ public class LanguageSettings extends PreferenceFragmentCompat LanguagesManager.LanguageSettingsActionType.CHANGE_CHROME_LANGUAGE); - } else if (requestCode == REQUEST_CODE_CHANGE_TARGET_LANGUAGE - && resultCode == Activity.RESULT_OK) { -- String code = data.getStringExtra(AddLanguageFragment.INTENT_SELECTED_LANGUAGE); + mAppLanguageDelegate.startLanguageSplitDownload(code); + } else if (requestCode == REQUEST_CODE_CHANGE_TARGET_LANGUAGE) { - LanguageItemPickerPreference targetLanguagePreference = - (LanguageItemPickerPreference) findPreference(TARGET_LANGUAGE_KEY); - targetLanguagePreference.setLanguageItem(code); @@ -138,7 +113,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/language/settin diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd -@@ -1224,9 +1224,6 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1221,9 +1221,6 @@ Your Google account may have other forms of browsing history like searches and a Websites will show text in your preferred language, when possible. @@ -151,7 +126,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro diff --git a/components/translate/core/browser/translate_manager.cc b/components/translate/core/browser/translate_manager.cc --- a/components/translate/core/browser/translate_manager.cc +++ b/components/translate/core/browser/translate_manager.cc -@@ -889,8 +889,9 @@ void TranslateManager::FilterIsTranslatePossible( +@@ -908,8 +908,9 @@ void TranslateManager::FilterIsTranslatePossible( ->LogAutofillAssistantDeferredTriggerDecision(); }