diff --git a/CHANGELOG.md b/CHANGELOG.md index 2e4e0b1c..d54c9255 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +# 94.0.4606.94 +* Bromite auto-update feature, disabled by default (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/706) +* add site setting for images (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/1339) +* use SM-G960U as model provided via client hints and Javascript +* drop patches already merged upstream + # 93.0.4577.110 * set enable_reporting to false (thanks to @nikolowry) diff --git a/build/GN_ARGS b/build/GN_ARGS index b146bc35..43c6d415 100644 --- a/build/GN_ARGS +++ b/build/GN_ARGS @@ -6,6 +6,7 @@ debuggable_apks=false dfmify_dev_ui=false disable_android_lint=true disable_autofill_assistant_dfm=true +disable_fieldtrial_testing_config=true disable_tab_ui_dfm=true enable_av1_decoder=true enable_dav1d_decoder=true @@ -23,7 +24,6 @@ enable_reporting=false enable_vr=false exclude_unwind_tables=false ffmpeg_branding="Chrome" -fieldtrial_testing_like_official_build=true icu_use_data_file=true is_component_build=false is_debug=false diff --git a/build/RELEASE b/build/RELEASE index f1868127..12d4d99f 100644 --- a/build/RELEASE +++ b/build/RELEASE @@ -1 +1 @@ -93.0.4577.110 +94.0.4606.94 diff --git a/build/bromite_patches_list.txt b/build/bromite_patches_list.txt index 0b238487..88e60316 100644 --- a/build/bromite_patches_list.txt +++ b/build/bromite_patches_list.txt @@ -143,7 +143,6 @@ Remove-offline-measurement-background-task.patch User-agent-customization.patch Add-AllowUserCertificates-flag.patch Add-IsCleartextPermitted-flag.patch -Disable-RTCGetCurrentBrowsingContextMedia-by-default.patch Unexpire-tab-groups-flags.patch Add-flag-for-omnibox-autocomplete-filtering.patch Enable-IntentBlockExternalFormRedirectsNoGesture-by-default.patch @@ -154,14 +153,12 @@ JIT-less-toggle.patch API-level-21-prevent-crash-on-download.patch Add-flag-to-disable-vibration.patch mime_util-force-text-x-suse-ymp-to-be-downloaded.patch -Disable-UA-client-hint-for-model.patch +Override-UA-client-hint-for-model.patch Disable-AGSA-by-default.patch Allow-building-without-enable_reporting.patch Disable-lock-icon-in-address-bar-by-default.patch Force-open-external-links-in-incognito.patch Enable-share-intent.patch +Site-setting-for-images.patch +Bromite-auto-updater.patch Automated-domain-substitution.patch -Observe-WebContents-in-PPAPIDownloadRequest.patch -Prevents-non-browser-processes-from-requesting-memory-dumps.patch -Add-images-contentsettings.patch -Enable-update-notification.patch diff --git a/build/patches/AImageReader-CFI-crash-mitigations.patch b/build/patches/AImageReader-CFI-crash-mitigations.patch index adbc1eb8..943657a9 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 -@@ -2039,7 +2039,7 @@ +@@ -2017,7 +2017,7 @@ { "name": "enable-image-reader", "owners": [ "vikassoni", "liberato" ], @@ -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 -@@ -503,6 +503,11 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line, +@@ -517,6 +517,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 -@@ -635,6 +635,10 @@ const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning", +@@ -668,6 +668,10 @@ const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning", // Note: Has no effect if kMediaDrmPreprovisioning feature is disabled. 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 -@@ -208,6 +208,7 @@ MEDIA_EXPORT extern const base::Feature kForceHardwareAudioDecoders; +@@ -219,6 +219,7 @@ MEDIA_EXPORT extern const base::Feature kForceHardwareAudioDecoders; MEDIA_EXPORT extern const base::Feature kAllowNonSecureOverlays; MEDIA_EXPORT extern const base::Feature kMediaControlsExpandGesture; MEDIA_EXPORT extern const base::Feature kMediaDrmPersistentLicense; diff --git a/build/patches/AV1-codec-support.patch b/build/patches/AV1-codec-support.patch index 161bfec0..01541464 100644 --- a/build/patches/AV1-codec-support.patch +++ b/build/patches/AV1-codec-support.patch @@ -54,9 +54,9 @@ diff --git a/third_party/libaom/BUILD.gn b/third_party/libaom/BUILD.gn diff --git a/third_party/libaom/libaom_srcs.gni b/third_party/libaom/libaom_srcs.gni --- a/third_party/libaom/libaom_srcs.gni +++ b/third_party/libaom/libaom_srcs.gni -@@ -633,6 +633,11 @@ aom_mem_sources = [ +@@ -634,6 +634,11 @@ aom_mem_sources = [ - aom_ports_asm_x86 = [ "//third_party/libaom/source/libaom/aom_ports/emms.asm" ] + aom_ports_asm_x86 = [ "//third_party/libaom/source/libaom/aom_ports/float.asm" ] +aom_ports_arm_sources = [ + "//third_party/libaom/source/libaom/aom_ports/arm_cpudetect.c", diff --git a/build/patches/Add-AllowUserCertificates-flag.patch b/build/patches/Add-AllowUserCertificates-flag.patch index f362c75e..e133b123 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 -@@ -224,6 +224,7 @@ import org.chromium.content_public.browser.ScreenOrientationProvider; +@@ -223,6 +223,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; -@@ -968,6 +969,8 @@ public abstract class ChromeActivity +@@ -976,6 +977,8 @@ public abstract class ChromeActivity UpdateMenuItemHelper.getInstance().onStart(); ChromeActivitySessionTracker.getInstance().onStartWithNative(); ChromeCachedFlags.getInstance().cacheNativeFlags(); @@ -38,18 +38,18 @@ 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 -@@ -85,6 +85,7 @@ public class ChromeCachedFlags { +@@ -88,6 +88,7 @@ public class ChromeCachedFlags { add(ChromeFeatureList.EARLY_LIBRARY_LOAD); add(ChromeFeatureList.ELASTIC_OVERSCROLL); add(ChromeFeatureList.IMMERSIVE_UI_MODE); + add(ChromeFeatureList.ALLOW_USER_CERTIFICATES); add(ChromeFeatureList.INSTANT_START); + add(ChromeFeatureList.INSTANCE_SWITCHER); add(ChromeFeatureList.INTEREST_FEED_V2); - add(ChromeFeatureList.LENS_CAMERA_ASSISTED_SEARCH); 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 -@@ -2886,6 +2886,10 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2781,6 +2781,10 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kCSSContainerQueriesDescription, kOsAll, FEATURE_VALUE_TYPE(blink::features::kCSSContainerQueries)}, #if defined(OS_ANDROID) @@ -91,7 +91,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 -@@ -131,6 +131,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -139,6 +139,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &feed::kFeedInteractiveRefresh, &feed::kInterestFeedContentSuggestions, &feed::kInterestFeedSpinnerAlwaysAnimate, @@ -99,7 +99,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse &feed::kInterestFeedV1ClicksAndViewsConditionalUpload, &feed::kInterestFeedV2, &feed::kInterestFeedV2Autoplay, -@@ -359,6 +360,9 @@ const base::Feature kAdaptiveButtonInTopToolbarCustomizationV2{ +@@ -373,6 +374,9 @@ const base::Feature kAdaptiveButtonInTopToolbarCustomizationV2{ "AdaptiveButtonInTopToolbarCustomizationV2", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -123,14 +123,14 @@ 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/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 -@@ -46,6 +46,7 @@ public class CachedFeatureFlags { +@@ -48,6 +48,7 @@ public class CachedFeatureFlags { */ - private static Map sDefaults = new HashMap() { - { -+ put(ChromeFeatureList.ALLOW_USER_CERTIFICATES, false); - put(ChromeFeatureList.ANDROID_PARTNER_CUSTOMIZATION_PHENOTYPE, true); - put(ChromeFeatureList.BOOKMARK_BOTTOM_SHEET, false); - put(ChromeFeatureList.CONDITIONAL_TAB_STRIP_ANDROID, false); + private static Map sDefaults = + ImmutableMap.builder() ++ .put(ChromeFeatureList.ALLOW_USER_CERTIFICATES, false) + .put(ChromeFeatureList.ANDROID_PARTNER_CUSTOMIZATION_PHENOTYPE, true) + .put(ChromeFeatureList.BOOKMARK_BOTTOM_SHEET, false) + .put(ChromeFeatureList.CONDITIONAL_TAB_STRIP_ANDROID, 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 diff --git a/build/patches/Add-English-only-search-engine.patch b/build/patches/Add-English-only-search-engine.patch index 82cc2674..2a89338e 100644 --- a/build/patches/Add-English-only-search-engine.patch +++ b/build/patches/Add-English-only-search-engine.patch @@ -13,7 +13,7 @@ disable from all its searches RLZ and field experiments querystring parameters. diff --git a/components/search_engines/prepopulated_engines.json b/components/search_engines/prepopulated_engines.json --- a/components/search_engines/prepopulated_engines.json +++ b/components/search_engines/prepopulated_engines.json -@@ -132,6 +132,27 @@ +@@ -133,6 +133,27 @@ "id": 1 }, diff --git a/build/patches/Add-IsCleartextPermitted-flag.patch b/build/patches/Add-IsCleartextPermitted-flag.patch index 4aefd077..a54941bb 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 -@@ -7709,6 +7709,11 @@ const FeatureEntry kFeatureEntries[] = { +@@ -7612,6 +7612,11 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE( chrome::android::kBookmarksExportUseSaf)}, @@ -29,8 +29,8 @@ 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 -@@ -1463,6 +1463,10 @@ const char kHttpsOnlyModeDescription[] = - "Adds a setting under chrome://settings/security to opt-in to HTTPS-Only " +@@ -1407,6 +1407,10 @@ const char kHttpsOnlyModeDescription[] = + "Adds a setting under chrome://settings/security to opt-in to HTTPS-First " "Mode."; +const char kIsCleartextPermittedName[] = "Allow cleartext traffic"; @@ -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 -@@ -847,6 +847,9 @@ extern const char kHostedAppShimCreationDescription[]; +@@ -814,6 +814,9 @@ extern const char kHostedAppShimCreationDescription[]; extern const char kHttpsOnlyModeName[]; extern const char kHttpsOnlyModeDescription[]; @@ -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 -@@ -88,6 +88,9 @@ const base::FeatureParam kUseDnsHttpsSvcbExtraTimePercent{ +@@ -89,6 +89,9 @@ const base::FeatureParam kUseDnsHttpsSvcbExtraTimePercent{ const base::Feature kEnableTLS13EarlyData{"EnableTLS13EarlyData", base::FEATURE_DISABLED_BY_DEFAULT}; 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 cb27840b..88e4bc2f 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 @@ -17,7 +17,7 @@ See also: 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 -@@ -3288,6 +3288,12 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3156,6 +3156,12 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kDeprecateLowUsageCodecsName, flag_descriptions::kDeprecateLowUsageCodecsDescription, kOsCrOS | kOsLinux, FEATURE_VALUE_TYPE(media::kDeprecateLowUsageCodecs)}, @@ -33,7 +33,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 -@@ -664,6 +664,11 @@ const char kEnableAutofillCreditCardAuthenticationDescription[] = +@@ -635,6 +635,11 @@ const char kEnableAutofillCreditCardAuthenticationDescription[] = "authenticator (if available) to verify card ownership when retrieving " "credit cards from Google Payments."; @@ -48,20 +48,20 @@ 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 -@@ -402,6 +402,9 @@ extern const char kEnableAutofillAddressSavePromptDescription[]; +@@ -404,6 +404,9 @@ extern const char kEnableAutofillSaveCardInfoBarAccountIndicationFooterName[]; + extern const char + kEnableAutofillSaveCardInfoBarAccountIndicationFooterDescription[]; - extern const char kEnableAutofillCreditCardAblationExperimentDisplayName[]; - extern const char kEnableAutofillCreditCardAblationExperimentDescription[]; +extern const char kEnableIncognitoSnapshotsInAndroidRecentsName[]; +extern const char kEnableIncognitoSnapshotsInAndroidRecentsDescription[]; + + extern const char kEnableExperimentalCookieFeaturesName[]; + extern const char kEnableExperimentalCookieFeaturesDescription[]; - extern const char kEnableAutofillCreditCardAuthenticationName[]; - extern const char kEnableAutofillCreditCardAuthenticationDescription[]; diff --git a/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmpl b/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmpl --- a/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmpl +++ b/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmpl -@@ -141,10 +141,6 @@ public abstract class ChromeSwitches {{ +@@ -129,10 +129,6 @@ public abstract class ChromeSwitches {{ /** Switch for enabling the Chrome Survey. Only works when UMA is accepted. */ public static final String CHROME_FORCE_ENABLE_SURVEY = "force-enable-chrome-survey"; @@ -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 -@@ -348,6 +348,9 @@ const char kHomePage[] = "homepage"; +@@ -344,6 +344,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 -@@ -115,6 +115,7 @@ extern const char kForceStackedTabStripLayout[]; +@@ -114,6 +114,7 @@ extern const char kForceStackedTabStripLayout[]; extern const char kHideCrashRestoreBubble[]; 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 44cde2d9..6ca44341 100644 --- a/build/patches/Add-a-proxy-configuration-page.patch +++ b/build/patches/Add-a-proxy-configuration-page.patch @@ -70,7 +70,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/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -52,6 +52,7 @@ public class PrivacySettings +@@ -54,6 +54,7 @@ public class PrivacySettings private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data"; public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents"; private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit"; @@ -81,7 +81,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting 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 -@@ -363,6 +363,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { +@@ -365,6 +365,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { builtins_to_provide.push_back( base::ASCIIToUTF16(chrome::kChromeUISettingsURL)); #endif @@ -93,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 -@@ -92,6 +92,12 @@ +@@ -88,6 +88,12 @@ @@ -182,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 -@@ -902,6 +904,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { +@@ -914,6 +916,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { PluginsResourceService::RegisterPrefs(registry); #endif @@ -627,7 +627,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 -@@ -263,6 +263,8 @@ static_library("ui") { +@@ -265,6 +265,8 @@ static_library("ui") { "webui/metrics_handler.h", "webui/net_export_ui.cc", "webui/net_export_ui.h", @@ -639,7 +639,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 @@ +@@ -53,6 +53,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" @@ -647,7 +647,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" -@@ -614,6 +615,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, +@@ -619,6 +620,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, return &NewWebUI; if (url.host_piece() == chrome::kChromeUINetExportHost) return &NewWebUI; @@ -1127,7 +1127,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"; -@@ -344,6 +346,7 @@ bool IsSystemWebUIHost(base::StringPiece host) { +@@ -346,6 +348,7 @@ bool IsSystemWebUIHost(base::StringPiece host) { kChromeUIMobileSetupHost, kChromeUIMultiDeviceSetupHost, kChromeUINetworkHost, @@ -1135,7 +1135,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons kChromeUIOobeHost, kChromeUIOSCreditsHost, kChromeUIOSSettingsHost, -@@ -567,6 +570,7 @@ const char* const kChromeHostURLs[] = { +@@ -568,6 +571,7 @@ const char* const kChromeHostURLs[] = { #if !defined(OS_ANDROID) #if !BUILDFLAG(IS_CHROMEOS_ASH) kChromeUIAppLauncherPageHost, @@ -1146,7 +1146,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_constants.h --- a/chrome/common/webui_url_constants.h +++ b/chrome/common/webui_url_constants.h -@@ -122,6 +122,8 @@ extern const char kChromeUIMemoryInternalsHost[]; +@@ -125,6 +125,8 @@ extern const char kChromeUIMemoryInternalsHost[]; extern const char kChromeUINTPTilesInternalsHost[]; extern const char kChromeUINaClHost[]; extern const char kChromeUINetExportHost[]; @@ -1158,12 +1158,12 @@ diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_const diff --git a/components/policy/core/browser/proxy_policy_handler.cc b/components/policy/core/browser/proxy_policy_handler.cc --- a/components/policy/core/browser/proxy_policy_handler.cc +++ b/components/policy/core/browser/proxy_policy_handler.cc -@@ -210,7 +210,7 @@ void ProxyPolicyHandler::ApplyPolicySettings(const PolicyMap& policies, - bypass_list->GetAsString(&bypass_list_string); - prefs->SetValue(proxy_config::prefs::kProxy, - ProxyConfigDictionary::CreateFixedServers( -- proxy_server, bypass_list_string)); -+ proxy_server, bypass_list_string, false)); +@@ -207,7 +207,7 @@ void ProxyPolicyHandler::ApplyPolicySettings(const PolicyMap& policies, + ProxyConfigDictionary::CreateFixedServers( + server->GetString(), bypass_list && bypass_list->is_string() + ? bypass_list->GetString() +- : std::string())); ++ : std::string(), false)); } break; } diff --git a/build/patches/Add-an-always-incognito-mode.patch b/build/patches/Add-an-always-incognito-mode.patch index d1ebab01..6de83d16 100644 --- a/build/patches/Add-an-always-incognito-mode.patch +++ b/build/patches/Add-an-always-incognito-mode.patch @@ -40,7 +40,7 @@ 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 -@@ -24,6 +24,11 @@ +@@ -28,6 +28,11 @@ android:key="secure_dns" android:title="@string/settings_secure_dns_title" android:fragment="org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings"/> @@ -148,7 +148,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.IntentHandler.IntentHandlerDelegate; import org.chromium.chrome.browser.IntentHandler.TabOpenType; import org.chromium.chrome.browser.accessibility_tab_switcher.OverviewListLayout; -@@ -1738,8 +1739,9 @@ public class ChromeTabbedActivity extends ChromeActivity +@@ -1872,6 +1873,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 -@@ -363,6 +363,12 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate +@@ -378,6 +378,12 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate } private void prepareCommonMenuItems(Menu menu, @MenuGroup int menuGroup, boolean isIncognito) { @@ -335,14 +335,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/StartupTab diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -41,6 +41,7 @@ import org.chromium.ui.text.SpanApplier; +@@ -42,6 +42,7 @@ import org.chromium.ui.text.SpanApplier; */ public class PrivacySettings extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener { + private static final String PREF_ALWAYS_INCOGNITO = "always_incognito"; 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"; + private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode"; 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 @@ -493,7 +493,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 -@@ -433,7 +433,7 @@ const base::Feature kCCTIncognito{"CCTIncognito", +@@ -447,7 +447,7 @@ const base::Feature kCCTIncognito{"CCTIncognito", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kCCTIncognitoAvailableToThirdParty{ diff --git a/build/patches/Add-bookmark-import-export-actions.patch b/build/patches/Add-bookmark-import-export-actions.patch index 47e096ef..498380a9 100644 --- a/build/patches/Add-bookmark-import-export-actions.patch +++ b/build/patches/Add-bookmark-import-export-actions.patch @@ -132,9 +132,9 @@ 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 -@@ -56,7 +56,6 @@ by a child template that "extends" this file. - - {% endif %} +@@ -59,7 +59,6 @@ by a child template that "extends" this file. + - @@ -786,7 +786,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -1816,6 +1816,13 @@ static_library("browser") { +@@ -1817,6 +1817,13 @@ static_library("browser") { "window_placement/window_placement_permission_context.h", ] @@ -800,7 +800,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn configs += [ "//build/config/compiler:wexit_time_destructors", "//build/config:precompiled_headers", -@@ -2922,6 +2929,8 @@ static_library("browser") { +@@ -2938,6 +2945,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", @@ -809,7 +809,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", -@@ -3446,8 +3455,6 @@ static_library("browser") { +@@ -3483,8 +3492,6 @@ static_library("browser") { "badging/badge_manager_factory.h", "banners/app_banner_manager_desktop.cc", "banners/app_banner_manager_desktop.h", @@ -821,9 +821,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 -@@ -7659,6 +7659,12 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE(features::kShareUsageRanking)}, - #endif +@@ -7562,6 +7562,12 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE( + password_manager::features::kPasswordsAccountStorageRevisedOptInFlow)}, + {"export-bookmarks-use-saf", + flag_descriptions::kBookmarksExportUseSafName, @@ -1339,9 +1339,9 @@ 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 -@@ -5497,6 +5497,11 @@ const char kWebrtcPipeWireCapturerDescription[] = - "capturing the desktop content on the Wayland display server."; - #endif // #if defined(WEBRTC_USE_PIPEWIRE) +@@ -5302,6 +5302,11 @@ const char kWebKioskEnableLacrosDescription[] = + "Chrome OS. When disabled, the Ash-chrome will be used"; + #endif // BUILDFLAG(IS_CHROMEOS_ASH) +const char kBookmarksExportUseSafName[] = "Use saf for bookmarks export"; +const char kBookmarksExportUseSafDescription[] = @@ -1354,9 +1354,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 -@@ -3207,6 +3207,9 @@ extern const char kWebrtcPipeWireCapturerName[]; - extern const char kWebrtcPipeWireCapturerDescription[]; - #endif // #if defined(WEBRTC_USE_PIPEWIRE) +@@ -3088,6 +3088,9 @@ extern const char kWebKioskEnableLacrosName[]; + extern const char kWebKioskEnableLacrosDescription[]; + #endif // BUILDFLAG(IS_CHROMEOS_ASH) +extern const char kBookmarksExportUseSafName[]; +extern const char kBookmarksExportUseSafDescription[]; @@ -1367,7 +1367,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 -@@ -156,6 +156,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -164,6 +164,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kBackgroundThreadPool, &kBentoOffline, &kBookmarkBottomSheet, @@ -1375,9 +1375,9 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse &kCastDeviceFilter, &kCloseTabSuggestions, &kCriticalPersistedTabData, -@@ -774,6 +775,10 @@ const base::Feature kWebOtpCrossDeviceSimpleString{ - const base::Feature kWebApkInstallCompleteNotification{ - "WebApkInstallCompleteNotification", base::FEATURE_DISABLED_BY_DEFAULT}; +@@ -810,6 +811,10 @@ const base::Feature kWebApkInstallCompleteNotification{ + const base::Feature kWebApkTrampolineOnInitialIntent{ + "WebApkTrampolineOnInitialIntent", base::FEATURE_ENABLED_BY_DEFAULT}; +// disabled by default because of an issue on Android 6.0 +const base::Feature kBookmarksExportUseSaf{"BookmarksExportUseSaf", @@ -1389,7 +1389,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 -@@ -140,6 +140,7 @@ extern const base::Feature kToolbarMicIphAndroid; +@@ -146,6 +146,7 @@ extern const base::Feature kToolbarMicIphAndroid; extern const base::Feature kToolbarUseHardwareBitmapDraw; extern const base::Feature kTrustedWebActivityLocationDelegation; extern const base::Feature kTrustedWebActivityNewDisclosure; @@ -1400,8 +1400,8 @@ 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 -@@ -541,6 +541,7 @@ public abstract class ChromeFeatureList { - "WebApkInstallCompleteNotification"; +@@ -560,6 +560,7 @@ public abstract class ChromeFeatureList { + "WebApkTrampolineOnInitialIntent"; public static final String XSURFACE_METRICS_REPORTING = "XsurfaceMetricsReporting"; public static final String WEB_OTP_CROSS_DEVICE_SIMPLE_STRING = "WebOtpCrossDeviceSimpleString"; + public static final String BOOKMARKS_EXPORT_USESAF = "BookmarksExportUseSaf"; @@ -1469,7 +1469,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 -@@ -121,6 +121,8 @@ public final class ChromePreferenceKeys { +@@ -124,6 +124,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"; @@ -1478,7 +1478,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro /** * Whether Chrome is set as the default browser. -@@ -1027,6 +1029,7 @@ public final class ChromePreferenceKeys { +@@ -1042,6 +1044,7 @@ public final class ChromePreferenceKeys { AUTOFILL_ASSISTANT_PROACTIVE_HELP, APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE, APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO, @@ -1517,7 +1517,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 -@@ -412,6 +412,9 @@ static_library("common") { +@@ -416,6 +416,9 @@ static_library("common") { sources += [ "media/chrome_media_drm_bridge_client.cc", "media/chrome_media_drm_bridge_client.h", @@ -1539,7 +1539,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", -@@ -181,6 +179,11 @@ static_library("utility") { +@@ -184,6 +182,11 @@ static_library("utility") { } } diff --git a/build/patches/Add-custom-tab-intents-privacy-option.patch b/build/patches/Add-custom-tab-intents-privacy-option.patch index 4c9184ce..95214efd 100644 --- a/build/patches/Add-custom-tab-intents-privacy-option.patch +++ b/build/patches/Add-custom-tab-intents-privacy-option.patch @@ -12,7 +12,7 @@ Subject: Add custom tab intents privacy option 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 -@@ -33,6 +33,11 @@ +@@ -37,6 +37,11 @@ android:fragment="org.chromium.chrome.browser.privacy.settings.DoNotTrackSettings" android:key="do_not_track" android:title="@string/do_not_track_title"/> @@ -29,14 +29,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis +++ b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java @@ -59,6 +59,8 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; - import java.util.List; + import java.util.Set; +import org.chromium.chrome.browser.privacy.settings.PrivacySettings; + /** * Dispatches incoming intents to the appropriate activity based on the current configuration and * Intent fired. -@@ -285,6 +287,8 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega +@@ -279,6 +281,8 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega */ public static boolean isCustomTabIntent(Intent intent) { if (intent == null) return false; @@ -48,7 +48,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -47,6 +47,7 @@ public class PrivacySettings +@@ -49,6 +49,7 @@ public class PrivacySettings 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_CLEAR_BROWSING_DATA = "clear_browsing_data"; @@ -56,10 +56,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; private ManagedPreferenceDelegate mManagedPreferenceDelegate; -@@ -105,6 +106,10 @@ public class PrivacySettings - } else if (PREF_NETWORK_PREDICTIONS.equals(key)) { - PrivacyPreferencesManagerImpl.getInstance().setNetworkPredictionEnabled( - (boolean) newValue); +@@ -119,6 +120,10 @@ public class PrivacySettings + } else if (PREF_HTTPS_FIRST_MODE.equals(key)) { + UserPrefs.get(Profile.getLastUsedRegularProfile()) + .setBoolean(Pref.HTTPS_ONLY_MODE_ENABLED, (boolean) newValue); + } else if (PREF_ALLOW_CUSTOM_TAB_INTENTS.equals(key)) { + SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit(); + sharedPreferencesEditor.putBoolean(PREF_ALLOW_CUSTOM_TAB_INTENTS, (boolean)newValue); @@ -67,7 +67,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting } return true; -@@ -128,6 +133,11 @@ public class PrivacySettings +@@ -142,6 +147,11 @@ public class PrivacySettings canMakePaymentPref.setChecked(prefService.getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED)); } @@ -82,7 +82,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting 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 -@@ -4224,6 +4224,13 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

Show original diff --git a/build/patches/Add-exit-menu-item.patch b/build/patches/Add-exit-menu-item.patch index 528eca5c..4ef86959 100644 --- a/build/patches/Add-exit-menu-item.patch +++ b/build/patches/Add-exit-menu-item.patch @@ -14,7 +14,7 @@ Corrected Exit functionality 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 -@@ -121,6 +121,9 @@ +@@ -124,6 +124,9 @@ android:icon="@drawable/gm_filled_cardboard_24" /> @@ -24,7 +24,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -@@ -147,6 +150,9 @@ +@@ -150,6 +153,9 @@ @@ -37,7 +37,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re 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 -@@ -200,6 +200,8 @@ import java.lang.annotation.RetentionPolicy; +@@ -206,6 +206,8 @@ import java.util.HashSet; import java.util.List; import java.util.Locale; @@ -46,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. -@@ -1953,6 +1955,8 @@ public class ChromeTabbedActivity extends ChromeActivity +@@ -2303,6 +2304,11 @@ public abstract class ChromeActivity return true; } @@ -97,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 -@@ -3056,6 +3056,9 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

Turn on Request desktop site diff --git a/build/patches/Add-flag-for-omnibox-autocomplete-filtering.patch b/build/patches/Add-flag-for-omnibox-autocomplete-filtering.patch index ff005343..b1b2f558 100644 --- a/build/patches/Add-flag-for-omnibox-autocomplete-filtering.patch +++ b/build/patches/Add-flag-for-omnibox-autocomplete-filtering.patch @@ -15,8 +15,8 @@ and internal chrome:// pages will be used for the autocomplete results. 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 -@@ -507,6 +507,22 @@ const FeatureEntry::FeatureVariation - }; +@@ -449,6 +449,22 @@ const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = { + base::size(kReaderModeOfferInSettings), nullptr}}; #endif // OS_ANDROID +const FeatureEntry::Choice kOmniboxAutocompleteFiltering[] = { @@ -36,9 +36,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc +}; + #if defined(OS_ANDROID) - const FeatureEntry::FeatureParam kHideDismissButton[] = { - {"dismiss_button", "hide"}}; -@@ -4881,6 +4897,11 @@ const FeatureEntry kFeatureEntries[] = { + const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNone[] = { + {"mode", "always-none"}}; +@@ -4772,6 +4788,11 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(chrome::android::kReaderModeInCCT)}, #endif // !defined(OS_ANDROID) @@ -102,7 +102,7 @@ diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/ #include "base/feature_list.h" #include "base/i18n/break_iterator.h" #include "base/i18n/case_conversion.h" -@@ -646,6 +647,9 @@ void SearchProvider::Run(bool query_is_private) { +@@ -647,6 +648,9 @@ void SearchProvider::Run(bool query_is_private) { } void SearchProvider::DoHistoryQuery(bool minimal_changes) { diff --git a/build/patches/Add-flag-for-save-data-header.patch b/build/patches/Add-flag-for-save-data-header.patch index 0e2623d4..3ed87a43 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 -@@ -4627,6 +4627,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -4506,6 +4506,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 -@@ -1087,6 +1087,10 @@ const char kDisableKeepaliveFetchDescription[] = +@@ -1035,6 +1035,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 -@@ -600,6 +600,9 @@ extern const char kDiagnosticsAppNavigationDescription[]; +@@ -564,6 +564,9 @@ extern const char kDiagnosticsAppNavigationDescription[]; extern const char kDisableKeepaliveFetchName[]; extern const char kDisableKeepaliveFetchDescription[]; 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 c54bf596..c88e46ce 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 -@@ -866,6 +866,11 @@ const FeatureEntry::Choice kForceEffectiveConnectionTypeChoices[] = { +@@ -837,6 +837,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 == -@@ -3932,6 +3937,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3792,6 +3797,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 -@@ -1571,6 +1571,10 @@ const char kMediaHistoryDescription[] = +@@ -1524,6 +1524,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 -@@ -905,6 +905,9 @@ extern const char kLogJsConsoleMessagesDescription[]; +@@ -877,6 +877,9 @@ extern const char kLogJsConsoleMessagesDescription[]; extern const char kMediaHistoryName[]; extern const char kMediaHistoryDescription[]; 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 38bef610..f0f9d87e 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 -@@ -2813,6 +2813,10 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2708,6 +2708,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 -@@ -1172,6 +1172,11 @@ const char kEnablePenetratingImageSelectionDescription[] = +@@ -1120,6 +1120,11 @@ const char kEnablePenetratingImageSelectionDescription[] = "Enables image options to be surfaced in the context menu for nodes " "covered by transparent overlays."; @@ -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 -@@ -662,6 +662,9 @@ extern const char kEnablePortalsDescription[]; +@@ -632,6 +632,9 @@ extern const char kEnablePortalsDescription[]; extern const char kEnablePortalsCrossOriginName[]; extern const char kEnablePortalsCrossOriginDescription[]; @@ -55,7 +55,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio 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 -@@ -255,11 +255,7 @@ const base::Feature kPreloadMetadataLazyLoad{"PreloadMetadataLazyLoad", +@@ -276,11 +276,7 @@ const base::Feature kPreloadMetadataLazyLoad{"PreloadMetadataLazyLoad", // when in background. const base::Feature kResumeBackgroundVideo { "resume-background-video", diff --git a/build/patches/Add-flag-to-disable-IPv6-probes.patch b/build/patches/Add-flag-to-disable-IPv6-probes.patch index 8cb520f3..de12f754 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 -@@ -4851,6 +4851,11 @@ const FeatureEntry kFeatureEntries[] = { +@@ -4742,6 +4742,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 -@@ -3150,6 +3150,10 @@ const char kContextualSearchRankerQueryDescription[] = +@@ -3015,6 +3015,10 @@ const char kContextualSearchRankerQueryDescription[] = const char kContextualSearchSecondTapName[] = "Contextual Search second tap triggering"; @@ -45,8 +45,8 @@ 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 -@@ -722,6 +722,9 @@ extern const char kEnableWasmSimdName[]; - extern const char kEnableWasmSimdDescription[]; +@@ -689,6 +689,9 @@ extern const char kEnableWasmLazyCompilationName[]; + extern const char kEnableWasmLazyCompilationDescription[]; extern const char kEnableWasmTieringName[]; +extern const char kIPv6ProbingName[]; @@ -101,7 +101,7 @@ diff --git a/components/url_formatter/spoof_checks/top_domains/BUILD.gn b/compon 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 -@@ -97,6 +97,7 @@ +@@ -86,6 +86,7 @@ #include "net/log/net_log_event_type.h" #include "net/log/net_log_source.h" #include "net/log/net_log_source_type.h" @@ -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" -@@ -3362,8 +3363,14 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) { +@@ -3512,8 +3513,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 fb4b8c40..460fd636 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 -@@ -2753,6 +2753,9 @@ const FeatureEntry::FeatureVariation kContinuousSearchFeatureVariations[] = { +@@ -2643,6 +2643,9 @@ const FeatureEntry::FeatureVariation kReadLaterVariations[] = { // When adding a new choice, add it to the end of the list. const FeatureEntry kFeatureEntries[] = { // Include generated flags for flag unexpiry; see //docs/flag_expiry.md and @@ -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 -@@ -642,6 +642,10 @@ const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement"; +@@ -613,6 +613,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 -@@ -356,6 +356,9 @@ extern const char kForceColorProfileSRGB[]; +@@ -341,6 +341,9 @@ extern const char kForceColorProfileSRGB[]; extern const char kForceColorProfileP3[]; extern const char kForceColorProfileColorSpin[]; extern const char kForceColorProfileSCRGBLinear[]; diff --git a/build/patches/Add-flag-to-disable-external-intent-requests.patch b/build/patches/Add-flag-to-disable-external-intent-requests.patch index ab7fcbfb..1a66787a 100644 --- a/build/patches/Add-flag-to-disable-external-intent-requests.patch +++ b/build/patches/Add-flag-to-disable-external-intent-requests.patch @@ -11,7 +11,7 @@ Subject: Add flag to disable external intent requests 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 -@@ -2807,6 +2807,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2697,6 +2697,9 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kWebrtcCaptureMultiChannelApmName, flag_descriptions::kWebrtcCaptureMultiChannelApmDescription, kOsAll, FEATURE_VALUE_TYPE(features::kWebRtcEnableCaptureMultiChannelApm)}, @@ -24,9 +24,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 -@@ -3280,6 +3280,12 @@ const char kIntentBlockExternalFormRedirectsNoGestureDescription[] = - "Require a user gesture that triggered a form submission in order to " - "allow for redirecting to an external intent."; +@@ -3272,6 +3272,12 @@ const char kProcessSharingWithStrictSiteInstancesDescription[] = + "separated like strict site isolation, but process selection puts multiple " + "site instances in a single process."; +const char kDisableExternalIntentRequestsName[] = + "Never forward URL requests to external intents"; @@ -34,22 +34,22 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti + "URL requests will never" + "allow for redirecting to an external intent."; + - const char kInterestFeedContentSuggestionsDescription[] = - "Use the interest feed to render content suggestions. Currently " - "content " + const char kQueryTilesName[] = "Show query tiles"; + const char kQueryTilesDescription[] = "Shows query tiles in Chrome"; + const char kQueryTilesNTPName[] = "Show query tiles in NTP"; 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 -@@ -1883,6 +1883,9 @@ extern const char kInstantStartDescription[]; - extern const char kIntentBlockExternalFormRedirectsNoGestureName[]; - extern const char kIntentBlockExternalFormRedirectsNoGestureDescription[]; - +@@ -1883,6 +1883,9 @@ extern const char kQueryTilesNTPDescription[]; + extern const char kQueryTilesOmniboxName[]; + extern const char kQueryTilesOmniboxDescription[]; + extern const char kQueryTilesSingleTierName[]; +extern const char kDisableExternalIntentRequestsName[]; +extern const char kDisableExternalIntentRequestsDescription[]; + - extern const char kInterestFeedContentSuggestionsName[]; - extern const char kInterestFeedContentSuggestionsDescription[]; - + extern const char kQueryTilesSingleTierDescription[]; + extern const char kQueryTilesEnableQueryEditingName[]; + extern const char kQueryTilesEnableQueryEditingDescription[]; -- 2.17.1 diff --git a/build/patches/Add-flag-to-disable-vibration.patch b/build/patches/Add-flag-to-disable-vibration.patch index 07d98e74..c51567d8 100644 --- a/build/patches/Add-flag-to-disable-vibration.patch +++ b/build/patches/Add-flag-to-disable-vibration.patch @@ -18,8 +18,8 @@ Subject: Add flag to disable vibration 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 -@@ -6342,6 +6342,10 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE(features::kNotificationsViaHelperApp)}, +@@ -6208,6 +6208,10 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(features::kNewMacNotificationAPI)}, #endif + {"enable-vibration", flag_descriptions::kEnableVibrationName, @@ -32,7 +32,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 -@@ -5311,6 +5311,9 @@ const char kDefaultMeetWebAppDescription[] = +@@ -5123,6 +5123,9 @@ const char kDefaultMeetWebAppDescription[] = "Enables the Meet web app to be installed by default."; #endif // BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS) @@ -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 -@@ -3080,6 +3080,9 @@ extern const char kDefaultMeetWebAppName[]; +@@ -2965,6 +2965,9 @@ extern const char kDefaultMeetWebAppName[]; extern const char kDefaultMeetWebAppDescription[]; #endif // BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS) @@ -58,7 +58,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc --- a/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc -@@ -103,6 +103,7 @@ void SetRuntimeFeatureDefaultsForPlatform( +@@ -102,6 +102,7 @@ void SetRuntimeFeatureDefaultsForPlatform( #if defined(OS_ANDROID) if (command_line.HasSwitch(switches::kDisableMediaSessionAPI)) WebRuntimeFeatures::EnableMediaSession(false); @@ -82,7 +82,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 -@@ -267,6 +267,8 @@ CONTENT_EXPORT extern const base::Feature kWarmUpNetworkProcess; +@@ -266,6 +266,8 @@ CONTENT_EXPORT extern const base::Feature kWarmUpNetworkProcess; CONTENT_EXPORT extern const base::Feature kWebNfc; #endif // defined(OS_ANDROID) @@ -125,7 +125,7 @@ diff --git a/third_party/blink/renderer/modules/vibration/vibration_controller.c 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 -@@ -190,6 +190,10 @@ void WebRuntimeFeatures::EnableScrollTopLeftInterop(bool enable) { +@@ -182,6 +182,10 @@ void WebRuntimeFeatures::EnableScrollTopLeftInterop(bool enable) { RuntimeEnabledFeatures::SetScrollTopLeftInteropEnabled(enable); } @@ -139,7 +139,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 -@@ -1527,6 +1527,10 @@ +@@ -1537,6 +1537,10 @@ name: "OrientationEvent", status: {"Android": "stable"}, }, diff --git a/build/patches/Add-history-support-in-incognito-mode.patch b/build/patches/Add-history-support-in-incognito-mode.patch index aec7411c..92a4d4ff 100644 --- a/build/patches/Add-history-support-in-incognito-mode.patch +++ b/build/patches/Add-history-support-in-incognito-mode.patch @@ -16,7 +16,7 @@ Subject: Add history support in incognito mode 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 -@@ -38,6 +38,11 @@ +@@ -42,6 +42,11 @@ android:title="@string/close_tabs_on_exit_title" android:summary="@string/close_tabs_on_exit_summary" android:defaultValue="false" /> @@ -31,7 +31,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/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -39,12 +39,15 @@ import org.chromium.components.user_prefs.UserPrefs; +@@ -40,12 +40,15 @@ import org.chromium.components.user_prefs.UserPrefs; import org.chromium.ui.text.NoUnderlineClickableSpan; import org.chromium.ui.text.SpanApplier; @@ -46,8 +46,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting + public static final String PREF_INCOGNITO_TAB_HISTORY_ENABLED = "incognito_history_enabled"; 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"; -@@ -99,6 +102,11 @@ public class PrivacySettings + private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode"; +@@ -110,6 +113,11 @@ public class PrivacySettings Preference secureDnsPref = findPreference(PREF_SECURE_DNS); secureDnsPref.setVisible(SecureDnsSettings.isUiEnabled()); @@ -59,7 +59,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting updateSummaries(); } -@@ -119,6 +127,9 @@ public class PrivacySettings +@@ -133,6 +141,9 @@ public class PrivacySettings SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit(); sharedPreferencesEditor.putBoolean(PREF_ALLOW_CUSTOM_TAB_INTENTS, (boolean)newValue); sharedPreferencesEditor.apply(); @@ -69,7 +69,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting } return true; -@@ -169,6 +180,13 @@ public class PrivacySettings +@@ -183,6 +194,13 @@ public class PrivacySettings (ChromeSwitchPreference) findPreference(PREF_CLOSE_TABS_ON_EXIT); closeTabsOnExitPref.setOnPreferenceChangeListener(this); closeTabsOnExitPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate); @@ -96,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" -@@ -275,6 +278,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { +@@ -299,6 +302,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) { history::HistoryService* HistoryTabHelper::GetHistoryService() { Profile* profile = Profile::FromBrowserContext(web_contents()->GetBrowserContext()); @@ -110,7 +110,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo if (profile->IsOffTheRecord()) return NULL; -@@ -282,6 +292,12 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { +@@ -306,6 +316,12 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() { profile, ServiceAccessType::IMPLICIT_ACCESS); } @@ -147,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 -@@ -213,6 +213,8 @@ +@@ -212,6 +212,8 @@ #endif #if defined(OS_ANDROID) @@ -156,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" -@@ -1197,6 +1199,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, +@@ -1210,6 +1212,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, variations::VariationsService::RegisterProfilePrefs(registry); video_tutorials::RegisterPrefs(registry); feed::prefs::RegisterFeedSharedProfilePrefs(registry); @@ -183,7 +183,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 -@@ -3154,6 +3154,11 @@ const char kLacrosAllowed[] = "lacros_allowed"; +@@ -3225,6 +3225,11 @@ const char kLacrosAllowed[] = "lacros_allowed"; const char kLacrosLaunchSwitch[] = "lacros_launch_switch"; #endif @@ -198,8 +198,8 @@ 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 -@@ -1157,6 +1157,10 @@ extern const char kDeviceAttributesAllowedForOrigins[]; - extern const char kDesktopSharingHubEnabled[]; +@@ -1184,6 +1184,10 @@ extern const char kLastWhatsNewVersion[]; + extern const char kLensRegionSearchEnabled[]; #endif +#if defined(OS_ANDROID) 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 1e6c5d29..c4e3df1c 100644 --- a/build/patches/Add-menu-item-to-bookmark-all-tabs.patch +++ b/build/patches/Add-menu-item-to-bookmark-all-tabs.patch @@ -20,15 +20,16 @@ Subject: Add menu item to bookmark all tabs .../bookmarks/browser/bookmark_load_details.h | 2 + .../bookmarks/browser/bookmark_model.cc | 3 +- components/bookmarks/browser/bookmark_model.h | 7 ++ - components/bookmarks/browser/bookmark_node.cc | 13 ++++ + components/bookmarks/browser/bookmark_node.cc | 15 ++++ components/bookmarks/browser/bookmark_node.h | 5 ++ components/bookmarks/browser/model_loader.cc | 3 +- - 20 files changed, 205 insertions(+), 15 deletions(-) + .../bookmark_specifics_conversions.cc | 1 + + 21 files changed, 208 insertions(+), 15 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 -@@ -61,6 +61,10 @@ +@@ -64,6 +64,10 @@ @@ -39,7 +40,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re -@@ -144,6 +148,9 @@ +@@ -147,6 +151,9 @@ @@ -61,7 +62,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.browserservices.intents.WebappConstants; import org.chromium.chrome.browser.compositor.CompositorViewHolder; -@@ -1965,6 +1967,8 @@ public class ChromeTabbedActivity extends ChromeActivity topLevelFolders = new ArrayList<>(); BookmarkId desktopNodeId = bookmarkModel.getDesktopFolderId(); BookmarkId mobileNodeId = bookmarkModel.getMobileFolderId(); @@ -243,7 +244,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm BookmarkId othersNodeId = bookmarkModel.getOtherFolderId(); List specialFoldersIds = -@@ -534,6 +535,9 @@ public class BookmarkUtils { +@@ -541,6 +542,9 @@ public class BookmarkUtils { if (bookmarkModel.isFolderVisible(mobileNodeId)) { topLevelFolders.add(mobileNodeId); } @@ -376,7 +377,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse 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 -@@ -3130,6 +3130,9 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

Track prices @@ -500,7 +501,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar // Fail silently if we can't deserialize mobile bookmarks. We can't require // them to exist in order to be backwards-compatible with older versions of // chrome. -@@ -447,11 +461,13 @@ void BookmarkCodec::DecodeMetaInfoHelper( +@@ -452,11 +466,13 @@ void BookmarkCodec::DecodeMetaInfoHelper( void BookmarkCodec::ReassignIDs(BookmarkNode* bb_node, BookmarkNode* other_node, @@ -605,7 +606,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmar } bool BookmarkModel::IsBookmarked(const GURL& url) { -@@ -802,6 +802,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr details) { +@@ -804,6 +804,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr details) { bookmark_bar_node_ = details->bb_node(); other_node_ = details->other_folder_node(); mobile_node_ = details->mobile_folder_node(); @@ -640,16 +641,18 @@ 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 -@@ -41,6 +41,8 @@ const char BookmarkNode::kOtherBookmarksNodeGuid[] = - "00000000-0000-4000-a000-000000000003"; +@@ -60,6 +60,10 @@ const char BookmarkNode::kOtherBookmarksNodeGuid[] = const char BookmarkNode::kMobileBookmarksNodeGuid[] = - "00000000-0000-4000-a000-000000000004"; + "4cf2e351-0e85-532b-bb37-df045d8f8d0f"; + ++// static +const char BookmarkNode::kTabsCollectionBookmarksNodeGuid[] = + "00000000-0000-4000-a000-000000000006"; ++ + // static const char BookmarkNode::kManagedNodeGuid[] = - "00000000-0000-4000-a000-000000000005"; - -@@ -199,6 +201,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id, + "323123f4-9381-5aee-80e6-ea5fca2f7672"; +@@ -225,6 +229,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id, visible_when_empty)); } @@ -685,8 +688,8 @@ diff --git a/components/bookmarks/browser/bookmark_node.h b/components/bookmarks + static const char kTabsCollectionBookmarksNodeGuid[]; static const char kManagedNodeGuid[]; - // Creates a new node with |id|, |guid| and |url|. -@@ -244,6 +246,9 @@ class BookmarkPermanentNode : public BookmarkNode { + // A bug in sync caused some problematic GUIDs to be produced. +@@ -247,6 +249,9 @@ class BookmarkPermanentNode : public BookmarkNode { static std::unique_ptr CreateMobileBookmarks( int64_t id, bool visible_when_empty); @@ -709,6 +712,17 @@ diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks &sync_metadata_str); details->set_sync_metadata_str(std::move(sync_metadata_str)); details->set_max_id(std::max(max_node_id, details->max_id())); +diff --git a/components/sync_bookmarks/bookmark_specifics_conversions.cc b/components/sync_bookmarks/bookmark_specifics_conversions.cc +--- a/components/sync_bookmarks/bookmark_specifics_conversions.cc ++++ b/components/sync_bookmarks/bookmark_specifics_conversions.cc +@@ -400,6 +400,7 @@ sync_pb::BookmarkSpecifics::Type GetProtoTypeFromBookmarkNode( + case bookmarks::BookmarkNode::BOOKMARK_BAR: + case bookmarks::BookmarkNode::OTHER_NODE: + case bookmarks::BookmarkNode::MOBILE: ++ case bookmarks::BookmarkNode::TABS_COLLECTION: + DCHECK(node->is_folder()); + return sync_pb::BookmarkSpecifics::FOLDER; + } -- 2.17.1 diff --git a/build/patches/Add-menu-item-to-view-source.patch b/build/patches/Add-menu-item-to-view-source.patch index a8a2be40..aefc55ad 100644 --- a/build/patches/Add-menu-item-to-view-source.patch +++ b/build/patches/Add-menu-item-to-view-source.patch @@ -28,7 +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 -@@ -85,6 +85,9 @@ +@@ -88,6 +88,9 @@ @@ -41,7 +41,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re 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 -@@ -1988,6 +1988,8 @@ public class ChromeTabbedActivity extends ChromeActivity +@@ -2429,6 +2429,11 @@ public abstract class ChromeActivity return true; } @@ -68,7 +68,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 -@@ -348,6 +348,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate +@@ -355,6 +355,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate isChromeScheme, isFileScheme, isContentScheme, isIncognito, url)); updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */); @@ -76,7 +76,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App // 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)); -@@ -787,6 +788,19 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate +@@ -845,6 +846,19 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate } } diff --git a/build/patches/Add-option-to-force-tablet-UI.patch b/build/patches/Add-option-to-force-tablet-UI.patch index 2daec393..bd6c6b0e 100644 --- a/build/patches/Add-option-to-force-tablet-UI.patch +++ b/build/patches/Add-option-to-force-tablet-UI.patch @@ -33,15 +33,15 @@ diff --git a/chrome/android/java/res/xml/accessibility_preferences.xml b/chrome/ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/AccessibilitySettings.java -@@ -35,6 +35,7 @@ public class AccessibilitySettings - static final String PREF_CAPTIONS = "captions"; +@@ -37,6 +37,7 @@ public class AccessibilitySettings static final String PREF_IMAGE_DESCRIPTIONS = "image_descriptions"; + static final String PREF_ACCESSIBILITY_PAGE_ZOOM = "accessibility_page_zoom"; + static final String PREF_FORCE_TABLET_UI = "force_tablet_ui"; private TextScalePreference mTextScalePref; private ChromeBaseCheckBoxPreference mForceEnableZoomPref; private boolean mRecordFontSizeChangeOnStop; -@@ -80,6 +81,12 @@ public class AccessibilitySettings +@@ -82,6 +83,12 @@ public class AccessibilitySettings .getBoolean(Pref.READER_FOR_ACCESSIBILITY)); readerForAccessibilityPref.setOnPreferenceChangeListener(this); @@ -54,7 +54,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s ChromeBaseCheckBoxPreference mAccessibilityTabSwitcherPref = (ChromeBaseCheckBoxPreference) findPreference( ChromePreferenceKeys.ACCESSIBILITY_TAB_SWITCHER); -@@ -131,6 +138,9 @@ public class AccessibilitySettings +@@ -137,6 +144,9 @@ public class AccessibilitySettings mFontSizePrefs.setUserFontScaleFactor((Float) newValue); } else if (PREF_FORCE_ENABLE_ZOOM.equals(preference.getKey())) { mFontSizePrefs.setForceEnableZoomFromUser((Boolean) newValue); @@ -67,7 +67,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s 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 -@@ -540,6 +540,7 @@ public final class ChromePreferenceKeys { +@@ -536,6 +536,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"; @@ -89,7 +89,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java --- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java +++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java -@@ -346,7 +346,7 @@ public final class LocationBarCoordinator implements LocationBar, NativeInitObse +@@ -348,7 +348,7 @@ public final class LocationBarCoordinator implements LocationBar, NativeInitObse // OmniboxSuggestionsDropdownEmbedder implementation @Override public boolean isTablet() { @@ -129,7 +129,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow diff --git a/components/BUILD.gn b/components/BUILD.gn --- a/components/BUILD.gn +++ b/components/BUILD.gn -@@ -539,7 +539,7 @@ test("components_unittests") { +@@ -542,7 +542,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. @@ -138,7 +138,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn assert_no_deps = [ "//chrome/*" ] } -@@ -786,7 +786,7 @@ if (!is_ios) { +@@ -789,7 +789,7 @@ if (!is_ios) { # On LaCrOS, tests use ash - chrome as a window manager, thus the dependency. # On other platforms, no components should depend on Chrome. @@ -150,7 +150,7 @@ 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 -@@ -369,6 +369,8 @@ android_library("ui_no_recycler_view_java") { +@@ -370,6 +370,8 @@ android_library("ui_no_recycler_view_java") { ":ui_java_resources", ":ui_utils_java", "//base:base_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 e85620ec..4979d8e3 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 @@ -12,7 +12,7 @@ Subject: Add option to not persist tabs across sessions 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 -@@ -29,6 +29,11 @@ +@@ -33,6 +33,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 -@@ -1191,8 +1191,10 @@ public class ChromeTabbedActivity extends ChromeActivity<resetlink>reset sync

<resetlink>reset sync

IMAGE diff --git a/build/patches/Add-support-for-ISupportHelpAndFeedback.patch b/build/patches/Add-support-for-ISupportHelpAndFeedback.patch index d00fbc3e..9cc02301 100644 --- a/build/patches/Add-support-for-ISupportHelpAndFeedback.patch +++ b/build/patches/Add-support-for-ISupportHelpAndFeedback.patch @@ -10,7 +10,7 @@ Subject: Add support for ISupportHelpAndFeedback 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 -@@ -58,6 +58,7 @@ import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; +@@ -55,6 +55,7 @@ import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager; import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager.SnackbarManageable; import org.chromium.components.browser_ui.settings.FragmentSettingsLauncher; import org.chromium.components.browser_ui.settings.SettingsLauncher; @@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin import org.chromium.components.browser_ui.site_settings.SiteSettingsPreferenceFragment; import org.chromium.ui.UiUtils; -@@ -257,9 +258,13 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity +@@ -248,9 +249,13 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity finish(); return true; } else if (item.getItemId() == R.id.menu_id_general_help) { diff --git a/build/patches/Allow-building-without-enable_reporting.patch b/build/patches/Allow-building-without-enable_reporting.patch index 027405bc..59d38ac7 100644 --- a/build/patches/Allow-building-without-enable_reporting.patch +++ b/build/patches/Allow-building-without-enable_reporting.patch @@ -4,16 +4,17 @@ Subject: Allow building without enable_reporting --- content/browser/BUILD.gn | 8 ++++---- - third_party/blink/renderer/core/frame/local_frame.cc | 5 +++++ - third_party/blink/renderer/core/frame/local_frame.h | 7 +++++-- + .../common/content_switch_dependent_feature_overrides.cc | 3 +++ + third_party/blink/renderer/core/frame/local_frame.cc | 3 +++ + third_party/blink/renderer/core/frame/local_frame.h | 6 +++--- .../blink/renderer/core/frame/reporting_context.cc | 9 +++++++++ .../blink/renderer/core/frame/reporting_context.h | 7 +++++-- - 5 files changed, 28 insertions(+), 8 deletions(-) + 6 files changed, 27 insertions(+), 9 deletions(-) diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -1227,6 +1227,10 @@ source_set("browser") { +@@ -1240,6 +1240,10 @@ source_set("browser") { "net/browser_online_state_observer.cc", "net/browser_online_state_observer.h", "net/cookie_store_factory.cc", @@ -24,7 +25,7 @@ diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn "net/network_errors_listing_ui.cc", "net/network_errors_listing_ui.h", "net/network_quality_observer_impl.cc", -@@ -2966,10 +2970,6 @@ source_set("browser") { +@@ -2989,10 +2993,6 @@ source_set("browser") { if (enable_reporting) { sources += [ @@ -35,6 +36,29 @@ diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn "net/reporting_service_proxy.cc", "net/reporting_service_proxy.h", ] +diff --git a/content/public/common/content_switch_dependent_feature_overrides.cc b/content/public/common/content_switch_dependent_feature_overrides.cc +--- a/content/public/common/content_switch_dependent_feature_overrides.cc ++++ b/content/public/common/content_switch_dependent_feature_overrides.cc +@@ -7,6 +7,7 @@ + #include "content/public/common/content_features.h" + #include "content/public/common/content_switches.h" + #include "net/base/features.h" ++#include "net/net_buildflags.h" + #include "services/network/public/cpp/features.h" + #include "services/network/public/cpp/network_switches.h" + #include "third_party/blink/public/common/features.h" +@@ -46,9 +47,11 @@ GetSwitchDependentFeatureOverrides(const base::CommandLine& command_line) { + {switches::kEnableExperimentalWebPlatformFeatures, + std::cref(features::kDocumentPolicyNegotiation), + base::FeatureList::OVERRIDE_ENABLE_FEATURE}, ++#if BUILDFLAG(ENABLE_REPORTING) + {switches::kEnableExperimentalWebPlatformFeatures, + std::cref(net::features::kDocumentReporting), + base::FeatureList::OVERRIDE_ENABLE_FEATURE}, ++#endif + {switches::kEnableExperimentalWebPlatformFeatures, + std::cref(features::kExperimentalContentSecurityPolicyFeatures), + base::FeatureList::OVERRIDE_ENABLE_FEATURE}, diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc @@ -46,27 +70,13 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/ #include "services/data_decoder/public/mojom/resource_snapshot_for_web_bundle.mojom-blink.h" #include "services/network/public/cpp/features.h" #include "services/network/public/mojom/content_security_policy.mojom-blink.h" -@@ -423,7 +424,9 @@ void LocalFrame::Trace(Visitor* visitor) const { - visitor->Trace(raw_system_clipboard_); - visitor->Trace(virtual_keyboard_overlay_changed_observers_); - visitor->Trace(pause_handle_receivers_); -+#if BUILDFLAG(ENABLE_REPORTING) - visitor->Trace(reporting_service_); -+#endif - #if defined(OS_MAC) - visitor->Trace(text_input_host_); - #endif -@@ -2308,6 +2311,7 @@ const base::UnguessableToken& LocalFrame::GetAgentClusterId() const { +@@ -2282,9 +2283,11 @@ const base::UnguessableToken& LocalFrame::GetAgentClusterId() const { return base::UnguessableToken::Null(); } +#if BUILDFLAG(ENABLE_REPORTING) mojom::blink::ReportingServiceProxy* LocalFrame::GetReportingService() { - if (!reporting_service_.is_bound()) { - GetBrowserInterfaceBroker().GetInterface( -@@ -2316,6 +2320,7 @@ mojom::blink::ReportingServiceProxy* LocalFrame::GetReportingService() { - } - return reporting_service_.get(); + return mojo_handler_->ReportingService(); } +#endif @@ -75,15 +85,18 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/ diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/blink/renderer/core/frame/local_frame.h --- a/third_party/blink/renderer/core/frame/local_frame.h +++ b/third_party/blink/renderer/core/frame/local_frame.h -@@ -36,6 +36,7 @@ - #include "build/build_config.h" +@@ -33,9 +33,9 @@ + + #include "base/time/default_tick_clock.h" + #include "base/unguessable_token.h" +-#include "build/build_config.h" #include "mojo/public/cpp/bindings/pending_associated_receiver.h" #include "mojo/public/cpp/bindings/pending_receiver.h" +#include "net/net_buildflags.h" + #include "services/device/public/mojom/device_posture_provider.mojom-blink-forward.h" #include "services/network/public/mojom/fetch_api.mojom-blink-forward.h" #include "third_party/blink/public/common/frame/frame_ad_evidence.h" - #include "third_party/blink/public/common/frame/payment_request_token.h" -@@ -545,9 +546,9 @@ class CORE_EXPORT LocalFrame final : public Frame, +@@ -543,9 +543,9 @@ class CORE_EXPORT LocalFrame final : public Frame, } SmoothScrollSequencer& GetSmoothScrollSequencer(); @@ -95,17 +108,6 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/b // Returns the frame host ptr. The interface returned is backed by an // associated interface with the legacy Chrome IPC channel. mojom::blink::LocalFrameHost& GetLocalFrameHostRemote() const; -@@ -875,8 +876,10 @@ class CORE_EXPORT LocalFrame final : public Frame, - // const methods. - // - // LocalFrame can be reused by multiple ExecutionContext. -+#if BUILDFLAG(ENABLE_REPORTING) - mutable HeapMojoRemote - reporting_service_{nullptr}; -+#endif - - #if defined(OS_MAC) - // LocalFrame can be reused by multiple ExecutionContext. diff --git a/third_party/blink/renderer/core/frame/reporting_context.cc b/third_party/blink/renderer/core/frame/reporting_context.cc --- a/third_party/blink/renderer/core/frame/reporting_context.cc +++ b/third_party/blink/renderer/core/frame/reporting_context.cc 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 71c81ff4..bfffc837 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 @@ -23,8 +23,8 @@ 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 -@@ -591,7 +591,8 @@ void URLRequestContextConfig::ParseAndSetExperimentalOptions( - effective_experimental_options->Remove(it.key(), nullptr); +@@ -592,7 +592,8 @@ void URLRequestContextConfig::ParseAndSetExperimentalOptions( + effective_experimental_options->RemoveKey(it.key()); continue; } - async_dns_args->GetBoolean(kAsyncDnsEnable, &async_dns_enable); diff --git a/build/patches/Automated-domain-substitution.patch b/build/patches/Automated-domain-substitution.patch index 7d105656..b6a2a085 100644 --- a/build/patches/Automated-domain-substitution.patch +++ b/build/patches/Automated-domain-substitution.patch @@ -9,19 +9,23 @@ Subject: Automated domain substitution android_webview/tools/record_netlog.py | 6 +- .../tools/remove_preinstalled_webview.py | 2 +- android_webview/tools/update_cts.py | 4 +- - .../accelerator_controller_impl.cc | 2 +- + ash/accelerators/accelerator_notifications.cc | 2 +- ash/app_list/PRESUBMIT.py | 2 +- ash/ash_strings.grd | 10 +- ash/assistant/assistant_setup_controller.cc | 2 +- ash/assistant/util/deep_link_util.cc | 16 +- .../quick_answers_controller_impl.cc | 2 +- .../quick_answers_ui_controller.cc | 2 +- + .../fast_pair/device_metadata_fetcher.cc | 2 +- ash/resources/PRESUBMIT.py | 4 +- ...pcie_peripheral_notification_controller.cc | 2 +- .../diagnostics_ui/resources/network_card.js | 2 +- + .../resources/network_troubleshooting.js | 2 +- .../resources/routine_section.js | 2 +- .../scanning/resources/scanning_app.html | 2 +- ash/webui/scanning/resources/scanning_app.js | 2 +- + .../backend/shimless_rma_service.cc | 2 +- + .../reimaging_firmware_update_page.js | 2 +- base/PRESUBMIT.py | 4 +- base/android/jni_generator/PRESUBMIT.py | 2 +- base/android/resource_exclusions.gni | 2 +- @@ -60,6 +64,7 @@ Subject: Automated domain substitution build/config/ozone.gni | 2 +- build/config/sanitizers/sanitizers.gni | 2 +- build/config/win/control_flow_guard.gni | 2 +- + build/fuchsia/PRESUBMIT.py | 2 +- build/fuchsia/binary_sizes.py | 2 +- build/linux/install-chromeos-fonts.py | 2 +- .../linux/sysroot_scripts/install-sysroot.py | 2 +- @@ -81,7 +86,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 | 248 +- + chrome/app/generated_resources.grd | 250 +- chrome/app/google_chrome_strings.grd | 14 +- chrome/app/resources/locale_settings.grd | 10 +- chrome/app/theme/PRESUBMIT.py | 4 +- @@ -105,7 +110,9 @@ Subject: Automated domain substitution .../customization/customization_document.cc | 2 +- .../enhanced_network_tts_constants.cc | 2 +- .../file_manager/file_manager_string_util.cc | 12 +- + .../first_run/drive_first_run_controller.cc | 4 +- chrome/browser/ash/hats/hats_dialog.cc | 2 +- + .../ash/input_method/assistive_suggester.cc | 18 +- .../easy_unlock/easy_unlock_key_names.cc | 2 +- .../ash/login/marketing_backend_connector.cc | 4 +- .../login/saml/password_sync_token_fetcher.cc | 2 +- @@ -115,25 +122,25 @@ Subject: Automated domain substitution .../browser/ash/plugin_vm/plugin_vm_util.cc | 6 +- .../account_status_check_fetcher.cc | 6 +- .../powerwash_requirements_checker.cc | 2 +- + .../device_command_start_crd_session_job.cc | 6 +- + .../policy/uploading/heartbeat_scheduler.cc | 4 +- .../autofill/autofill_gstatic_reader.cc | 4 +- .../browser_switcher_service.cc | 2 +- chrome/browser/buildflags.gni | 2 +- chrome/browser/cart/cart_discount_fetcher.cc | 2 +- .../cart/cart_discount_link_fetcher.cc | 2 +- chrome/browser/cart/cart_service.cc | 26 +- + chrome/browser/cart/fetch_discount_worker.cc | 2 +- .../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 +- .../file_manager/private_api_misc.cc | 2 +- - .../first_run/drive_first_run_controller.cc | 4 +- - .../input_method/assistive_suggester.cc | 18 +- + .../arc_dns_resolution_routine.cc | 6 +- .../dns_latency_routine.cc | 2 +- .../dns_resolution_routine.cc | 2 +- .../network_diagnostics_util.cc | 14 +- .../video_conferencing_routine.cc | 4 +- - .../device_command_start_crd_session_job.cc | 6 +- - .../policy/uploading/heartbeat_scheduler.cc | 4 +- chrome/browser/chromeos/u2f_notification.cc | 2 +- .../protocol_handler_registry.cc | 4 +- .../data_reduction_proxy_chrome_settings.cc | 4 +- @@ -155,7 +162,6 @@ Subject: Automated domain substitution .../chrome_extension_downloader_factory.cc | 2 +- .../updater/chrome_update_client_config.cc | 2 +- .../floc_remote_permission_service.cc | 2 +- - .../feedback/feedback_uploader_chrome.cc | 2 +- chrome/browser/flag_descriptions.cc | 6 +- .../importer/edge_importer_browsertest_win.cc | 8 +- .../importer/ie_importer_browsertest_win.cc | 30 +- @@ -172,7 +178,7 @@ Subject: Automated domain substitution .../network_traversal_ice_config_fetcher.cc | 12 +- .../tachyon_ice_config_fetcher.cc | 12 +- .../modules/drive/drive_service.cc | 8 +- - .../notification_platform_bridge_mac.mm | 2 +- + .../modules/photos/photos_service.cc | 6 +- ...rvice_worker_page_load_metrics_observer.cc | 2 +- .../performance_hints_features.cc | 2 +- ...ped_permission_infobar_delegate_android.cc | 2 +- @@ -211,6 +217,7 @@ Subject: Automated domain substitution .../resources/chromeos/emulator/icons.html | 2 +- .../input_method/google_xkb_manifest.json | 10 +- .../chromeos/login/arc_terms_of_service.js | 4 +- + .../resources/chromeos/login/debug/debug.js | 2 +- .../chromeos/login/marketing_opt_in.html | 2 +- .../login/screens/login/offline_login.html | 2 +- .../login/screens/login/offline_login.js | 2 +- @@ -242,6 +249,7 @@ Subject: Automated domain substitution .../network_speech_synthesis/tts_extension.js | 2 +- .../new_tab_page/doodle_share_dialog.js | 2 +- .../new_tab_page/modules/drive/module.js | 2 +- + .../new_tab_page/modules/drive_v2/module.js | 2 +- .../new_tab_page/voice_search_overlay.js | 2 +- chrome/browser/resources/omnibox/omnibox.html | 2 +- .../resources/omnibox/omnibox_output.js | 4 +- @@ -254,7 +262,6 @@ Subject: Automated domain substitution chrome/browser/resources/proxy_config.html | 10 +- .../resources/settings/a11y_page/a11y_page.js | 2 +- .../settings/about_page/about_page.html | 4 +- - .../appearance_page/appearance_page.js | 2 +- .../autofill_page/passwords_list_handler.js | 2 +- .../resources/settings/chromeos/PRESUBMIT.py | 4 +- .../crostini_disk_resize_dialog.html | 2 +- @@ -262,6 +269,7 @@ Subject: Automated domain substitution .../os_a11y_page/manage_a11y_page.html | 2 +- .../channel_switcher_dialog.html | 2 +- .../chromeos/os_about_page/os_about_page.html | 2 +- + .../borealis_page/borealis_detail_view.html | 2 +- .../app_management_page/icons.html | 2 +- .../supported_links_item.html | 2 +- .../resources/settings/chromeos/os_icons.html | 2 +- @@ -303,6 +311,7 @@ Subject: Automated domain substitution .../ui/app_list/search/omnibox_provider.cc | 2 +- .../ui/ash/ambient/ambient_client_impl.cc | 8 +- .../conversation_starters_client_impl.cc | 2 +- + .../ui/ash/calendar/calendar_keyed_service.cc | 2 +- .../browser/ui/ash/chrome_shell_delegate.cc | 2 +- .../ui/ash/in_session_auth_dialog_client.cc | 2 +- .../quick_answers_browser_client_impl.cc | 2 +- @@ -339,6 +348,7 @@ 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 +- + .../ui/webui/whats_new/whats_new_util.cc | 4 +- chrome/browser/vr/PRESUBMIT.py | 2 +- .../preinstalled_web_apps/gmail.cc | 6 +- .../preinstalled_web_apps/google_calendar.cc | 6 +- @@ -515,7 +525,8 @@ Subject: Automated domain substitution .../data/log_list.json | 24 +- .../common/cloud_devices_urls.cc | 4 +- .../components_google_chrome_strings.grd | 2 +- - .../notes/core/server/notes_server_base.cc | 2 +- + .../notes/core/server/notes_repository.cc | 2 +- + .../notes/core/server/notes_server_base.cc | 4 +- .../crash/core/app/crash_reporter_client.cc | 2 +- .../crash/core/browser/resources/crashes.js | 4 +- components/cronet/PRESUBMIT.py | 2 +- @@ -554,18 +565,26 @@ Subject: Automated domain substitution components/ntp_tiles/popular_sites_impl.cc | 2 +- .../core/prefetch/prefetch_proto_utils.cc | 2 +- .../core/prefetch/prefetch_server_urls.cc | 2 +- + components/omnibox/PRESUBMIT.py | 2 +- .../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 +- + .../resources/omnibox_pedal_concepts_ar.json | 20 +- + .../resources/omnibox_pedal_concepts_de.json | 20 +- .../omnibox_pedal_concepts_en-GB.json | 20 +- .../resources/omnibox_pedal_concepts_en.json | 20 +- + .../omnibox_pedal_concepts_es-419.json | 20 +- + .../resources/omnibox_pedal_concepts_fr.json | 20 +- + .../resources/omnibox_pedal_concepts_ja.json | 20 +- + .../omnibox_pedal_concepts_zh-CN.json | 20 +- + .../omnibox_pedal_concepts_zh-TW.json | 20 +- + .../resources/omnibox_pedal_synonyms.grd | 60 +- .../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 +- ...password_requirements_spec_fetcher_impl.cc | 2 +- .../core/browser/hash_password_manager.cc | 2 +- .../leak_detection/leak_detection_request.h | 2 +- @@ -592,9 +611,10 @@ 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 | 2046 ++++++++--------- + .../policy/resources/policy_templates.json | 2076 ++++++++--------- .../policy/test_support/policy_testserver.py | 14 +- .../request_handler_for_policy.cc | 2 +- + .../policy/test_support/signature_provider.h | 4 +- .../syntax_check_policy_template_json.py | 2 +- .../tools/template_writers/PRESUBMIT.py | 2 +- .../template_writers/writers/adm_writer.py | 4 +- @@ -663,6 +683,7 @@ Subject: Automated domain substitution .../safe_search_url_checker_client.cc | 2 +- .../safe_search_api/stub_url_checker.cc | 2 +- components/safety_check/url_constants.cc | 2 +- + .../content/https_only_mode_blocking_page.cc | 2 +- .../content/ssl_blocking_page.h | 2 +- .../core/controller_client.cc | 2 +- .../core/safe_browsing_loud_error_ui.cc | 4 +- @@ -684,7 +705,6 @@ Subject: Automated domain substitution .../trusted_vault_server_constants.cc | 2 +- components/sync_bookmarks/PRESUBMIT.py | 2 +- components/sync_sessions/PRESUBMIT.py | 2 +- - .../core/browser/translate_manager.cc | 2 +- .../core/browser/translate_ranker_impl.cc | 6 +- .../core/browser/translate_script.cc | 2 +- .../translate/core/common/translate_util.cc | 2 +- @@ -739,11 +759,10 @@ Subject: Automated domain substitution extensions/common/permissions/PRESUBMIT.py | 2 +- .../resources/automation/PRESUBMIT.py | 2 +- extensions/strings/extensions_strings.grd | 4 +- - .../calendar/calendar_api_url_generator.cc | 2 +- - google_apis/drive/drive_api_url_generator.cc | 4 +- + google_apis/drive/drive_api_url_generator.cc | 2 +- google_apis/gaia/gaia_auth_fetcher.cc | 4 +- google_apis/gaia/gaia_auth_util.cc | 6 +- - google_apis/gaia/gaia_constants.cc | 68 +- + google_apis/gaia/gaia_constants.cc | 70 +- google_apis/gaia/gaia_oauth_client.cc | 6 +- google_apis/gaia/gaia_urls.cc | 10 +- google_apis/gcm/base/mcs_util.cc | 2 +- @@ -790,6 +809,7 @@ Subject: Automated domain substitution .../ui/bookmarks/bookmark_earl_grey.mm | 2 +- .../new_tab_page_app_interface.mm | 4 +- .../content_suggestions/ntp_home_mediator.mm | 8 +- + .../browser/ui/ntp/discover_feed_constants.mm | 2 +- ios/chrome/browser/ui/ntp/incognito_view.mm | 2 +- .../ui/ntp/notification_promo_whats_new.mm | 2 +- .../ui/qr_scanner/qr_scanner_app_interface.mm | 2 +- @@ -797,6 +817,7 @@ Subject: Automated domain substitution .../table_cell_catalog_view_controller.mm | 8 +- .../translate_table_view_controller.mm | 2 +- .../interstitials/interstitial_ui_util.mm | 2 +- + ..._credential_provider_extension_strings.grd | 4 +- ios/net/cookies/cookie_store_ios_test_util.mm | 2 +- ios/net/crn_http_protocol_handler.mm | 2 +- .../omaha/test_omaha_service_provider.mm | 2 +- @@ -934,12 +955,13 @@ Subject: Automated domain substitution testing/scripts/common.py | 2 +- testing/scripts/run_chromedriver_tests.py | 2 +- testing/scripts/run_performance_tests.py | 4 +- + testing/scripts/run_variations_smoke_tests.py | 2 +- testing/test_env.py | 8 +- testing/trigger_scripts/PRESUBMIT.py | 2 +- - .../trigger_scripts/base_test_triggerer.py | 2 +- + .../trigger_scripts/base_test_triggerer.py | 6 +- .../unexpected_passes_common/data_types.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 +- @@ -962,6 +984,7 @@ 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_build_tools/aapt2/3pp/fetch.py | 2 +- .../android_arch_core_common/3pp/fetch.py | 2 +- .../android_arch_core_runtime/3pp/fetch.py | 2 +- .../3pp/fetch.py | 2 +- @@ -1042,6 +1065,7 @@ Subject: Automated domain substitution .../3pp/fetch.py | 2 +- .../Android_SDK_License-December_9_2016.txt | 4 +- .../development/scripts/PRESUBMIT.py | 2 +- + .../runner/src/main/Android.mk | 2 +- third_party/blink/PRESUBMIT.py | 4 +- .../common/loader/record_load_histograms.cc | 2 +- .../public/common/scheduler/PRESUBMIT.py | 2 +- @@ -1085,7 +1109,6 @@ Subject: Automated domain substitution .../platform/fonts/mac/font_cache_mac.mm | 4 +- .../platform/loader/fetch/resource_error.cc | 2 +- .../loader/fetch/resource_load_scheduler.cc | 2 +- - .../main_thread/page_scheduler_impl.cc | 2 +- .../platform/weborigin/security_origin.cc | 2 +- third_party/blink/tools/blinkpy/PRESUBMIT.py | 2 +- .../blink/tools/blinkpy/common/net/git_cl.py | 6 +- @@ -1250,6 +1273,8 @@ Subject: Automated domain substitution .../libpng/contrib/oss-fuzz/README.txt | 2 +- .../libusb/src/libusb/os/windows_usb.c | 4 +- third_party/libxslt/chromium/roll.py | 2 +- + third_party/maldoca/src/maldoca/base/status.h | 2 +- + .../maldoca/src/maldoca/ole/vba_extract.cc | 2 +- third_party/metrics_proto/PRESUBMIT.py | 2 +- third_party/mozilla/NSPasteboard+Utils.mm | 2 +- third_party/mozilla/NSString+Utils.mm | 2 +- @@ -1449,6 +1474,7 @@ Subject: Automated domain substitution tools/style_variable_generator/PRESUBMIT.py | 2 +- tools/symsrc/source_index.py | 8 +- tools/tracing/PRESUBMIT.py | 2 +- + tools/tracing/rename_breakpad.py | 2 +- .../good_partial_annotation.txt | 2 +- .../auditor/traffic_annotation_auditor_ui.cc | 2 +- .../sample_traffic_annotation.cc | 2 +- @@ -1504,7 +1530,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 +- - 1501 files changed, 4613 insertions(+), 4613 deletions(-) + 1527 files changed, 4758 insertions(+), 4758 deletions(-) diff --git a/PRESUBMIT.py b/PRESUBMIT.py --- a/PRESUBMIT.py @@ -1599,7 +1625,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ), False, ( -@@ -1019,7 +1019,7 @@ _DEPRECATED_MOJO_TYPES = ( +@@ -1029,7 +1029,7 @@ _DEPRECATED_MOJO_TYPES = ( _IPC_ENUM_TRAITS_DEPRECATED = ( 'You are using IPC_ENUM_TRAITS() in your code. It has been deprecated.\n' @@ -1608,8 +1634,8 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py 'security-tips-for-ipc') _LONG_PATH_ERROR = ( -@@ -1178,9 +1178,9 @@ _KNOWN_ROBOTS = set( - 'wpt-autoroller', 'chrome-weblayer-builder') +@@ -1189,9 +1189,9 @@ _KNOWN_ROBOTS = set( + 'lacros-version-skew-roller', 'skylab-test-cros-roller') ) | set('%s@skia-public.iam.gserviceaccount.com' % s for s in ('chromium-autoroll', 'chromium-release-autoroll') - ) | set('%s@skia-corp.google.com.iam.gserviceaccount.com' % s @@ -1619,8 +1645,8 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py + ) | set('%s@owners-cleanup-prod.9oo91e.qjz9zk.iam.gserviceaccount.com' % s for s in ('swarming-tasks',)) - -@@ -1507,7 +1507,7 @@ def CheckNoDEPSGIT(input_api, output_api): + _INVALID_GRD_FILE_LINE = [ +@@ -1521,7 +1521,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' @@ -1629,7 +1655,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py 'get-the-code#Rolling_DEPS\n' 'for more information')] return [] -@@ -1718,7 +1718,7 @@ def CheckNoPragmaOnce(input_api, output_api): +@@ -1732,7 +1732,7 @@ def CheckNoPragmaOnce(input_api, output_api): if files: return [output_api.PresubmitError( 'Do not use #pragma once in header files.\n' @@ -1638,7 +1664,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py files)] return [] -@@ -1933,7 +1933,7 @@ def CheckForVersionControlConflicts(input_api, output_api): +@@ -1947,7 +1947,7 @@ def CheckForVersionControlConflicts(input_api, output_api): def CheckGoogleSupportAnswerUrlOnUpload(input_api, output_api): @@ -1647,7 +1673,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py errors = [] for f in input_api.AffectedFiles(): for line_num, line in f.ChangedContents(): -@@ -2042,7 +2042,7 @@ def CheckNoAbbreviationInPngFileName(input_api, output_api): +@@ -2056,7 +2056,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' @@ -1656,7 +1682,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py return results -@@ -2813,7 +2813,7 @@ def CheckSecurityOwners(input_api, output_api): +@@ -2827,7 +2827,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. @@ -1665,7 +1691,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. -@@ -3114,7 +3114,7 @@ def _CheckAndroidToastUsage(input_api, output_api): +@@ -3128,7 +3128,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' @@ -1674,7 +1700,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py errors)) return results -@@ -3248,7 +3248,7 @@ def _CheckAndroidTestJUnitFrameworkImport(input_api, output_api): +@@ -3262,7 +3262,7 @@ def _CheckAndroidTestJUnitFrameworkImport(input_api, output_api): if errors: results.append(output_api.PresubmitError( 'APIs from junit.framework.* are deprecated, please use JUnit4 framework' @@ -1683,7 +1709,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ' if you have any question.', errors)) return results -@@ -3279,7 +3279,7 @@ def _CheckAndroidTestJUnitInheritance(input_api, output_api): +@@ -3293,7 +3293,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' @@ -1692,7 +1718,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py ' questions.', errors)) return results -@@ -3303,7 +3303,7 @@ def _CheckAndroidTestAnnotationUsage(input_api, output_api): +@@ -3317,7 +3317,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.' @@ -1701,7 +1727,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py return results -@@ -3323,7 +3323,7 @@ def _CheckAndroidNewMdpiAssetLocation(input_api, output_api): +@@ -3337,7 +3337,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' @@ -1710,7 +1736,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py return results -@@ -3858,7 +3858,7 @@ def CheckGnGlobForward(input_api, output_api): +@@ -3872,7 +3872,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' @@ -1719,7 +1745,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py 'build/docs/writing_gn_templates.md' '#Using-forward_variables_from'))] return [] -@@ -4020,7 +4020,7 @@ def CheckFuzzTargetsOnUpload(input_api, output_api): +@@ -4034,7 +4034,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 ' @@ -1728,7 +1754,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py 'libfuzzer/efficient_fuzzing.md#simplifying-initialization_cleanup.\n' % ( ', '.join(EXPORTED_SYMBOLS), REQUIRED_HEADER) ) -@@ -4055,7 +4055,7 @@ def _CheckNewImagesWarning(input_api, output_api): +@@ -4069,7 +4069,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 ' @@ -1737,7 +1763,7 @@ 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 -@@ -4149,7 +4149,7 @@ _NON_INCLUSIVE_TERMS = ( +@@ -4163,7 +4163,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', @@ -1746,7 +1772,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py True),) def ChecksCommon(input_api, output_api): -@@ -4418,7 +4418,7 @@ def CheckForInvalidIfDefinedMacros(input_api, output_api): +@@ -4432,7 +4432,7 @@ def CheckForInvalidIfDefinedMacros(input_api, output_api): def CheckForIPCRules(input_api, output_api): """Check for same IPC rules described in @@ -1755,7 +1781,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py """ base_pattern = r'IPC_ENUM_TRAITS\(' inclusion_pattern = input_api.re.compile(r'(%s)' % base_pattern) -@@ -4671,9 +4671,9 @@ def CheckForUseOfChromeAppsDeprecations(input_api, output_api): +@@ -4685,9 +4685,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' @@ -1767,7 +1793,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py '\n'.join(problems))] return [] -@@ -4716,7 +4716,7 @@ def CheckChangeOnCommit(input_api, output_api): +@@ -4730,7 +4730,7 @@ def CheckChangeOnCommit(input_api, output_api): results.extend(input_api.canned_checks.CheckTreeIsOpen( input_api, output_api, @@ -1776,7 +1802,7 @@ diff --git a/PRESUBMIT.py b/PRESUBMIT.py results.extend( input_api.canned_checks.CheckPatchFormatted(input_api, output_api)) -@@ -5048,7 +5048,7 @@ def CheckStrings(input_api, output_api): +@@ -5062,7 +5062,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 ' @@ -1803,7 +1829,7 @@ diff --git a/android_webview/tools/cts_config/webview_cts_gcs_path.json b/androi "unzip_dir": "x86/L/5.1_r28/" } }, -@@ -88,12 +88,12 @@ +@@ -92,12 +92,12 @@ "arch": { "arm64": { "filename": "arm64/M/android-cts-arm64-6.0_r32.zip", @@ -1818,7 +1844,7 @@ diff --git a/android_webview/tools/cts_config/webview_cts_gcs_path.json b/androi "unzip_dir": "x86/M/6.0_r32/" } }, -@@ -173,12 +173,12 @@ +@@ -181,12 +181,12 @@ "arch": { "arm64": { "filename": "arm64/N/android-cts-arm64-7.0_r33.zip", @@ -1833,7 +1859,7 @@ diff --git a/android_webview/tools/cts_config/webview_cts_gcs_path.json b/androi "unzip_dir": "x86/N/7.0_r33/" } }, -@@ -200,12 +200,12 @@ +@@ -214,12 +214,12 @@ "arch": { "arm64": { "filename": "arm64/O/android-cts-arm64-8.0_r24.zip", @@ -1848,7 +1874,7 @@ diff --git a/android_webview/tools/cts_config/webview_cts_gcs_path.json b/androi "unzip_dir": "x86/O/8.0_r24/" } }, -@@ -222,12 +222,12 @@ +@@ -236,12 +236,12 @@ "arch": { "arm64": { "filename": "arm64/P/android-cts-arm64-9.0_r13.zip", @@ -1863,7 +1889,7 @@ diff --git a/android_webview/tools/cts_config/webview_cts_gcs_path.json b/androi "unzip_dir": "x86/P/9.0_r13/" } }, -@@ -250,12 +250,12 @@ +@@ -264,12 +264,12 @@ "arch": { "arm64": { "filename": "arm64/Q/android-cts-arm64-10_r5.zip", @@ -1953,17 +1979,17 @@ diff --git a/android_webview/tools/update_cts.py b/android_webview/tools/update_ versions. Please create a new branch, then edit the -diff --git a/ash/accelerators/accelerator_controller_impl.cc b/ash/accelerators/accelerator_controller_impl.cc ---- a/ash/accelerators/accelerator_controller_impl.cc -+++ b/ash/accelerators/accelerator_controller_impl.cc -@@ -125,7 +125,7 @@ const char kStartupNewShortcutNotificationId[] = - const char kTabletCountOfVolumeAdjustType[] = "Tablet.CountOfVolumeAdjustType"; +diff --git a/ash/accelerators/accelerator_notifications.cc b/ash/accelerators/accelerator_notifications.cc +--- a/ash/accelerators/accelerator_notifications.cc ++++ b/ash/accelerators/accelerator_notifications.cc +@@ -154,7 +154,7 @@ void RemoveNotification(const std::string& notification_id) { + // Shortcut help URL. const char kKeyboardShortcutHelpPageUrl[] = - "https://support.google.com/chromebook/answer/183101"; + "https://support.9oo91e.qjz9zk/chromebook/answer/183101"; - const char kHighContrastToggleAccelNotificationId[] = - "chrome://settings/accessibility/highcontrast"; + + // Accessibility notification ids. const char kDockedMagnifierToggleAccelNotificationId[] = diff --git a/ash/app_list/PRESUBMIT.py b/ash/app_list/PRESUBMIT.py --- a/ash/app_list/PRESUBMIT.py @@ -1989,7 +2015,7 @@ diff --git a/ash/ash_strings.grd b/ash/ash_strings.grd -@@ -1033,7 +1033,7 @@ This file contains the strings for ash. +@@ -1030,7 +1030,7 @@ This file contains the strings for ash. Supervised user @@ -1998,7 +2024,7 @@ diff --git a/ash/ash_strings.grd b/ash/ash_strings.grd Account managed by $1user@example.com -@@ -1272,7 +1272,7 @@ This file contains the strings for ash. +@@ -1278,7 +1278,7 @@ This file contains the strings for ash. Tap to configure @@ -2007,7 +2033,7 @@ diff --git a/ash/ash_strings.grd b/ash/ash_strings.grd Connected devices settings -@@ -2817,7 +2817,7 @@ This file contains the strings for ash. +@@ -2805,7 +2805,7 @@ This file contains the strings for ash. Multiple sign-in has been disabled @@ -2016,7 +2042,7 @@ diff --git a/ash/ash_strings.grd b/ash/ash_strings.grd Sign out -@@ -3161,7 +3161,7 @@ Here are some things you can try to get started. +@@ -3153,7 +3153,7 @@ Here are some things you can try to get started. Unlock device to perform the notification action @@ -2081,19 +2107,19 @@ diff --git a/ash/assistant/util/deep_link_util.cc b/ash/assistant/util/deep_link 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 -@@ -30,7 +30,7 @@ constexpr char kAssistantRelatedInfoUrl[] = +@@ -32,7 +32,7 @@ constexpr char kAssistantRelatedInfoUrl[] = constexpr char kQuickAnswersSettingsUrl[] = "chrome://os-settings/osSearch/search"; constexpr char kDogfoodUrl[] = - "https://goto.google.com/quick-answers-dogfood-bugs"; + "https://goto.9oo91e.qjz9zk/quick-answers-dogfood-bugs"; - std::u16string IntentTypeToString(IntentType intent_type) { - switch (intent_type) { + constexpr char kQuickAnswersExitPoint[] = "QuickAnswers.ExitPoint"; + diff --git a/ash/quick_answers/quick_answers_ui_controller.cc b/ash/quick_answers/quick_answers_ui_controller.cc --- a/ash/quick_answers/quick_answers_ui_controller.cc +++ b/ash/quick_answers/quick_answers_ui_controller.cc -@@ -29,7 +29,7 @@ namespace ash { +@@ -31,7 +31,7 @@ namespace ash { namespace { @@ -2102,6 +2128,18 @@ diff --git a/ash/quick_answers/quick_answers_ui_controller.cc b/ash/quick_answer constexpr char kFeedbackDescriptionTemplate[] = "#QuickAnswers\nQuery:%s\n"; +diff --git a/ash/quick_pair/repository/fast_pair/device_metadata_fetcher.cc b/ash/quick_pair/repository/fast_pair/device_metadata_fetcher.cc +--- a/ash/quick_pair/repository/fast_pair/device_metadata_fetcher.cc ++++ b/ash/quick_pair/repository/fast_pair/device_metadata_fetcher.cc +@@ -19,7 +19,7 @@ namespace { + // TODO(crbug/1234546): Switch to requesting a binary proto once the server + // supports it. + const char kGetObservedDeviceUrl[] = +- "https://nearbydevices-pa.googleapis.com/v1/device/" ++ "https://nearbydevices-pa.9oo91eapis.qjz9zk/v1/device/" + "%d?key=%s&mode=MODE_RELEASE"; + + // TODO(crbug/1226117): Update annotation with policy details when available. diff --git a/ash/resources/PRESUBMIT.py b/ash/resources/PRESUBMIT.py --- a/ash/resources/PRESUBMIT.py +++ b/ash/resources/PRESUBMIT.py @@ -2132,7 +2170,7 @@ diff --git a/ash/system/pcie_peripheral/pcie_peripheral_notification_controller. diff --git a/ash/webui/diagnostics_ui/resources/network_card.js b/ash/webui/diagnostics_ui/resources/network_card.js --- a/ash/webui/diagnostics_ui/resources/network_card.js +++ b/ash/webui/diagnostics_ui/resources/network_card.js -@@ -110,7 +110,7 @@ Polymer({ +@@ -111,7 +111,7 @@ Polymer({ /** @protected */ onTroubleConnectingClicked_() { // TODO(michaelcheco): Add correct URL. @@ -2141,10 +2179,22 @@ diff --git a/ash/webui/diagnostics_ui/resources/network_card.js b/ash/webui/diag }, /** @protected */ +diff --git a/ash/webui/diagnostics_ui/resources/network_troubleshooting.js b/ash/webui/diagnostics_ui/resources/network_troubleshooting.js +--- a/ash/webui/diagnostics_ui/resources/network_troubleshooting.js ++++ b/ash/webui/diagnostics_ui/resources/network_troubleshooting.js +@@ -37,7 +37,7 @@ export class NetworkTroubleshootingElement extends + /** @protected */ + onTroubleConnectingClicked_() { + // TODO(michaelcheco): Add correct URL. +- window.open('https://support.google.com/chromebook?p=diagnostics_'); ++ window.open('https://support.9oo91e.qjz9zk/chromebook?p=diagnostics_'); + } + + /** diff --git a/ash/webui/diagnostics_ui/resources/routine_section.js b/ash/webui/diagnostics_ui/resources/routine_section.js --- a/ash/webui/diagnostics_ui/resources/routine_section.js +++ b/ash/webui/diagnostics_ui/resources/routine_section.js -@@ -330,7 +330,7 @@ Polymer({ +@@ -334,7 +334,7 @@ Polymer({ /** @protected */ onLearnMoreClicked_() { const baseSupportUrl = @@ -2156,7 +2206,7 @@ diff --git a/ash/webui/diagnostics_ui/resources/routine_section.js b/ash/webui/d diff --git a/ash/webui/scanning/resources/scanning_app.html b/ash/webui/scanning/resources/scanning_app.html --- a/ash/webui/scanning/resources/scanning_app.html +++ b/ash/webui/scanning/resources/scanning_app.html -@@ -256,7 +256,7 @@ +@@ -252,7 +252,7 @@ [[i18n(toastMessageKey_)]]

qr_data = + qr_generator.Generate(base::as_bytes(base::make_span( +diff --git a/ash/webui/shimless_rma/resources/reimaging_firmware_update_page.js b/ash/webui/shimless_rma/resources/reimaging_firmware_update_page.js +--- a/ash/webui/shimless_rma/resources/reimaging_firmware_update_page.js ++++ b/ash/webui/shimless_rma/resources/reimaging_firmware_update_page.js +@@ -109,7 +109,7 @@ export class ReimagingFirmwareUpdatePageElement extends PolymerElement { + /** @protected */ + linkToRecoveryClicked_() { + // TODO(joonbug): Update with real link and check for browser leak. +- window.open('http://www.google.com'); ++ window.open('http://www.9oo91e.qjz9zk'); + } + }; + diff --git a/base/PRESUBMIT.py b/base/PRESUBMIT.py --- a/base/PRESUBMIT.py +++ b/base/PRESUBMIT.py @@ -2225,7 +2299,7 @@ diff --git a/base/android/resource_exclusions.gni b/base/android/resource_exclus diff --git a/base/debug/debugger_posix.cc b/base/debug/debugger_posix.cc --- a/base/debug/debugger_posix.cc +++ b/base/debug/debugger_posix.cc -@@ -141,7 +141,7 @@ void VerifyDebugger() { +@@ -140,7 +140,7 @@ void VerifyDebugger() { << "Detected lldb without sourcing //tools/lldb/lldbinit.py. lldb may " "not be able to find debug symbols. Please see debug instructions for " "using //tools/lldb/lldbinit.py:\n" @@ -2234,7 +2308,7 @@ diff --git a/base/debug/debugger_posix.cc b/base/debug/debugger_posix.cc "lldbinit.md\n" "To continue anyway, type 'continue' in lldb. To always skip this " "check, define an environment variable CHROMIUM_LLDBINIT_SOURCED=1"; -@@ -224,7 +224,7 @@ void VerifyDebugger() { +@@ -223,7 +223,7 @@ void VerifyDebugger() { << "Detected gdb without sourcing //tools/gdb/gdbinit. gdb may not be " "able to find debug symbols, and pretty-printing of STL types may not " "work. Please see debug instructions for using //tools/gdb/gdbinit:\n" @@ -2306,7 +2380,7 @@ diff --git a/build/android/gradle/generate_gradle.py b/build/android/gradle/gene diff --git a/build/android/gyp/assert_static_initializers.py b/build/android/gyp/assert_static_initializers.py --- a/build/android/gyp/assert_static_initializers.py +++ b/build/android/gyp/assert_static_initializers.py -@@ -174,7 +174,7 @@ def main(): +@@ -175,7 +175,7 @@ def main(): print(' //tools/binary_size/diagnose_bloat.py') print() print('For more information:') @@ -2565,7 +2639,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 -@@ -1049,7 +1049,7 @@ def RunTestsInPlatformMode(args, result_sink_client=None): +@@ -1058,7 +1058,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, @@ -2625,7 +2699,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 -@@ -932,7 +932,7 @@ def main(): +@@ -952,7 +952,7 @@ def main(): tast_test_parser = subparsers.add_parser( 'tast', help='Runs a device-side set of Tast tests. For more details, see: ' @@ -2759,6 +2833,18 @@ diff --git a/build/config/win/control_flow_guard.gni b/build/config/win/control_ # /DYNAMICBASE (ASLR) is turned off in debug builds, therefore CFG can't be # turned on either. # ASan and CFG leads to slow process startup. Chromium's test runner uses +diff --git a/build/fuchsia/PRESUBMIT.py b/build/fuchsia/PRESUBMIT.py +--- a/build/fuchsia/PRESUBMIT.py ++++ b/build/fuchsia/PRESUBMIT.py +@@ -3,7 +3,7 @@ + # found in the LICENSE file. + """Presubmit script for Fuchsia. + +-See http://dev.chromium.org/developers/how-tos/depottools/presubmit-scripts for ++See http://dev.ch40m1um.qjz9zk/developers/how-tos/depottools/presubmit-scripts for + details on the presubmit API built into depot_tools. + """ + 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 @@ -2858,7 +2944,7 @@ diff --git a/build/util/lib/common/perf_tests_results_helper.py b/build/util/lib diff --git a/build/util/lib/results/result_sink.py b/build/util/lib/results/result_sink.py --- a/build/util/lib/results/result_sink.py +++ b/build/util/lib/results/result_sink.py -@@ -120,7 +120,7 @@ class ResultSinkClient(object): +@@ -132,7 +132,7 @@ class ResultSinkClient(object): 'name': test_id, 'location': { 'file_name': test_file, @@ -3194,7 +3280,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Suggest Password... -@@ -1231,7 +1231,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -1235,7 +1235,7 @@ are declared in tools/grit/grit_rule.gni. @@ -3203,7 +3289,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -1368,7 +1368,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -1372,7 +1372,7 @@ are declared in tools/grit/grit_rule.gni. Review @@ -3212,7 +3298,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -2805,10 +2805,10 @@ are declared in tools/grit/grit_rule.gni. +@@ -2809,10 +2809,10 @@ are declared in tools/grit/grit_rule.gni. Images were blocked on this page. @@ -3225,7 +3311,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking cookies -@@ -2817,7 +2817,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -2821,7 +2821,7 @@ are declared in tools/grit/grit_rule.gni. Continue allowing cookies @@ -3234,7 +3320,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking images -@@ -2829,28 +2829,28 @@ are declared in tools/grit/grit_rule.gni. +@@ -2833,28 +2833,28 @@ are declared in tools/grit/grit_rule.gni. Pop-ups blocked: @@ -3270,7 +3356,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Always block camera and microphone access -@@ -2871,19 +2871,19 @@ are declared in tools/grit/grit_rule.gni. +@@ -2875,19 +2875,19 @@ are declared in tools/grit/grit_rule.gni. Continue blocking camera access @@ -3295,7 +3381,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Pop-up blocked -@@ -2895,7 +2895,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -2899,7 +2899,7 @@ are declared in tools/grit/grit_rule.gni. JavaScript was blocked on this page. @@ -3304,7 +3390,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking JavaScript -@@ -2904,7 +2904,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -2908,7 +2908,7 @@ are declared in tools/grit/grit_rule.gni. Sound was muted on this page @@ -3313,7 +3399,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue muting sound -@@ -3016,7 +3016,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -3032,7 +3032,7 @@ are declared in tools/grit/grit_rule.gni. @@ -3322,7 +3408,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources &General -@@ -3541,13 +3541,13 @@ are declared in tools/grit/grit_rule.gni. +@@ -3557,13 +3557,13 @@ are declared in tools/grit/grit_rule.gni. @@ -3339,7 +3425,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Share this tab instead -@@ -3556,7 +3556,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -3572,7 +3572,7 @@ are declared in tools/grit/grit_rule.gni. Stop sharing @@ -3348,7 +3434,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Switch to capturing tab -@@ -3762,16 +3762,16 @@ are declared in tools/grit/grit_rule.gni. +@@ -3778,16 +3778,16 @@ are declared in tools/grit/grit_rule.gni. Incognito Tab: $1Google @@ -3369,7 +3455,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Plugin: $1Unknown Plugin -@@ -3780,7 +3780,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -3796,7 +3796,7 @@ are declared in tools/grit/grit_rule.gni. Plugin Broker: $1Unknown Plugin @@ -3378,7 +3464,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Spare Renderer -@@ -3816,22 +3816,22 @@ are declared in tools/grit/grit_rule.gni. +@@ -3832,22 +3832,22 @@ are declared in tools/grit/grit_rule.gni. Print: $1Google Maps @@ -3407,7 +3493,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources App: $1com.android.systemui -@@ -4032,13 +4032,13 @@ are declared in tools/grit/grit_rule.gni. +@@ -4048,13 +4048,13 @@ are declared in tools/grit/grit_rule.gni. These items may be dangerous @@ -3423,7 +3509,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources The app "$1Gmail" was automatically removed. -@@ -4050,10 +4050,10 @@ are declared in tools/grit/grit_rule.gni. +@@ -4066,10 +4066,10 @@ are declared in tools/grit/grit_rule.gni. @@ -3436,7 +3522,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources It can: -@@ -4192,22 +4192,22 @@ are declared in tools/grit/grit_rule.gni. +@@ -4208,22 +4208,22 @@ are declared in tools/grit/grit_rule.gni. Change your home page to: $1home.page.com/home.html @@ -3465,7 +3551,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Read and change your data on a number of websites -@@ -4216,10 +4216,10 @@ are declared in tools/grit/grit_rule.gni. +@@ -4232,10 +4232,10 @@ are declared in tools/grit/grit_rule.gni. Read your data on a number of websites @@ -3478,7 +3564,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Read and change anything you type -@@ -4584,7 +4584,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -4600,7 +4600,7 @@ are declared in tools/grit/grit_rule.gni. When you click the extension @@ -3487,7 +3573,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources On all sites -@@ -4628,7 +4628,7 @@ are declared in tools/grit/grit_rule.gni. +@@ -4644,7 +4644,7 @@ are declared in tools/grit/grit_rule.gni. When You Click the Extension @@ -3496,7 +3582,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources On All Sites -@@ -4921,7 +4921,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -4937,7 +4937,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Change back to $1DuckDuckGo? @@ -3505,16 +3591,20 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -5167,7 +5167,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5183,10 +5183,10 @@ 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 +- Save it in your Google Account, $1user@gmail.com ++ Save it in your Google Account, $1user@9ma1l.qjz9zk + + +- Update it in your Google Account, $1user@gmail.com ++ Update it in your Google Account, $1user@9ma1l.qjz9zk Passwords are saved in your Google Account so you can use them on any device -@@ -5494,7 +5494,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5513,7 +5513,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3523,7 +3613,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Pa&ste and search for “$1flowers” -@@ -5505,7 +5505,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5524,7 +5524,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3532,7 +3622,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Pa&ste and Search for “$1flowers” -@@ -5515,7 +5515,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5534,7 +5534,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3541,7 +3631,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Press $1Tab to send commands to $2Google Talk -@@ -5524,16 +5524,16 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5543,16 +5543,16 @@ Keep your key file in a safe place. You will need it to create new versions of y Tab @@ -3561,7 +3651,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Clear input -@@ -5909,7 +5909,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5937,7 +5937,7 @@ Keep your key file in a safe place. You will need it to create new versions of y You’re seeing your recent and suggested documents based on your previous activity using Google Drive. <br> <br> @@ -3570,7 +3660,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Top picks for you -@@ -5918,10 +5918,10 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -5946,10 +5946,10 @@ Keep your key file in a safe place. You will need it to create new versions of y Why am I seeing this? @@ -3583,7 +3673,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Close -@@ -6177,7 +6177,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6224,7 +6224,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Stay in Chrome @@ -3592,7 +3682,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -6284,7 +6284,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6331,7 +6331,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 @@ -3601,7 +3691,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking this site from seeing the clipboard -@@ -6384,7 +6384,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6437,7 +6437,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. @@ -3610,7 +3700,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Close -@@ -6421,7 +6421,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6474,7 +6474,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. @@ -3619,8 +3709,8 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -6585,7 +6585,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 +@@ -6644,7 +6644,7 @@ Keep your key file in a safe place. You will need it to create new versions of y + Confirm your username - Passwords are saved in your Google Account (%1$suser@gmail.com) so you can use them on any device @@ -3628,7 +3718,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -6769,7 +6769,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6828,7 +6828,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Clear browsing data @@ -3637,7 +3727,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Cleared Chrome data -@@ -6779,7 +6779,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -6838,7 +6838,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3646,7 +3736,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Some passwords were not deleted -@@ -7003,7 +7003,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -7062,7 +7062,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Uploading ($127%)... @@ -3655,7 +3745,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -7332,31 +7332,31 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -7402,31 +7402,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. @@ -3692,7 +3782,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Hide -@@ -7384,7 +7384,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -7454,7 +7454,7 @@ Keep your key file in a safe place. You will need it to create new versions of y @@ -3701,7 +3791,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -7392,10 +7392,10 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -7462,10 +7462,10 @@ Keep your key file in a safe place. You will need it to create new versions of y Sign in to Security Device @@ -3714,7 +3804,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Please sign in to $1Software Security Device. -@@ -8467,7 +8467,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8561,7 +8561,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Work @@ -3723,7 +3813,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -8476,10 +8476,10 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8570,10 +8570,10 @@ Keep your key file in a safe place. You will need it to create new versions of y Can't sign in @@ -3736,7 +3826,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Close -@@ -8504,13 +8504,13 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8598,13 +8598,13 @@ Keep your key file in a safe place. You will need it to create new versions of y This wasn't me. @@ -3752,7 +3842,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Cancel -@@ -8559,7 +8559,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8653,7 +8653,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Open $1Adobe Acrobat? @@ -3761,7 +3851,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources A website wants to open this application. -@@ -8570,8 +8570,8 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8664,8 +8664,8 @@ Keep your key file in a safe place. You will need it to create new versions of y Cancel @@ -3772,7 +3862,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -8596,7 +8596,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -8690,7 +8690,7 @@ Keep your key file in a safe place. You will need it to create new versions of y Date Modified @@ -3781,7 +3871,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -9186,7 +9186,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9272,7 +9272,7 @@ Please help our engineers fix this problem. Tell us what happened right before y Wrong index. @@ -3790,7 +3880,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -9606,7 +9606,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9686,7 +9686,7 @@ Please help our engineers fix this problem. Tell us what happened right before y This site has been blocked from accessing your location. @@ -3799,7 +3889,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking this site from accessing your location -@@ -9649,7 +9649,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9729,7 +9729,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. @@ -3808,7 +3898,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 -@@ -9738,7 +9738,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9818,7 +9818,7 @@ Please help our engineers fix this problem. Tell us what happened right before y View and manage saved passwords in your $1Google Account @@ -3817,7 +3907,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -9770,10 +9770,10 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9850,10 +9850,10 @@ Please help our engineers fix this problem. Tell us what happened right before y Undo @@ -3830,7 +3920,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -9884,19 +9884,19 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9964,19 +9964,19 @@ Please help our engineers fix this problem. Tell us what happened right before y An extension triggered full screen. @@ -3853,7 +3943,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources This page has disabled your mouse cursor. -@@ -9917,10 +9917,10 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -9997,10 +9997,10 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3866,7 +3956,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Open $1search links -@@ -9957,7 +9957,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10037,7 +10037,7 @@ Please help our engineers fix this problem. Tell us what happened right before y This site has been blocked from using motion sensors. @@ -3875,7 +3965,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Continue blocking sensor access -@@ -9984,7 +9984,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10064,7 +10064,7 @@ Please help our engineers fix this problem. Tell us what happened right before y Continue allowing sensor access @@ -3884,7 +3974,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -10176,7 +10176,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10256,7 +10256,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. @@ -3893,7 +3983,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Share system audio -@@ -10210,7 +10210,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10300,7 +10300,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3902,7 +3992,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -10282,8 +10282,8 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10372,8 +10372,8 @@ Please help our engineers fix this problem. Tell us what happened right before y $1Google Photos - Serial port connected @@ -3913,7 +4003,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources $1Google Search - Crashed -@@ -10491,7 +10491,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10581,7 +10581,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3922,7 +4012,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources $1Nexus 5 detected -@@ -10597,7 +10597,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10687,7 +10687,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3931,7 +4021,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources "$1Chrome Extension Name" wants to connect to a serial port -@@ -10637,7 +10637,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10727,7 +10727,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3940,7 +4030,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources "$1Chrome Extension Name" wants to connect to a HID device -@@ -10688,7 +10688,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10775,7 +10775,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3949,7 +4039,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources No matching font found. -@@ -10812,7 +10812,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10896,7 +10896,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3958,9 +4048,9 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources wants to see the make and model of your Security Key -@@ -10999,13 +10999,13 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11083,13 +11083,13 @@ Please help our engineers fix this problem. Tell us what happened right before y - + - Use your security key with $1google.com + Use your security key with $19oo91e.qjz9zk @@ -3974,7 +4064,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Pick an option -@@ -11099,7 +11099,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11183,7 +11183,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -3983,7 +4073,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Didn't get it? -@@ -11114,7 +11114,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11198,7 +11198,7 @@ Please help our engineers fix this problem. Tell us what happened right before y Security key request @@ -3992,7 +4082,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources -@@ -11213,7 +11213,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11297,7 +11297,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -4001,7 +4091,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Select an account to sign in -@@ -11229,7 +11229,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11313,7 +11313,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 @@ -4010,7 +4100,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. -@@ -11238,13 +11238,13 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11322,13 +11322,13 @@ Please help our engineers fix this problem. Tell us what happened right before y Allow this site to see your security key? @@ -4026,7 +4116,7 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources Allow -@@ -11496,7 +11496,7 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -11608,7 +11608,7 @@ Please help our engineers fix this problem. Tell us what happened right before y @@ -4149,7 +4239,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 -@@ -324,14 +324,14 @@ const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = { +@@ -323,14 +323,14 @@ const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = { const FeatureEntry::Choice kTraceUploadURL[] = { {flags_ui::kGenericExperimentChoiceDisabled, "", ""}, {flag_descriptions::kTraceUploadUrlChoiceOther, switches::kTraceUploadURL, @@ -4168,7 +4258,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc const FeatureEntry::Choice kLiteVideoDefaultDownlinkBandwidthKbps[] = { {flags_ui::kGenericExperimentChoiceDefault, "", ""}, -@@ -3854,7 +3854,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3718,7 +3718,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kSyncSandboxDescription, kOsAll, SINGLE_VALUE_TYPE_AND_VALUE( switches::kSyncServiceURL, @@ -4177,7 +4267,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc #if !defined(OS_ANDROID) {"media-router-cast-allow-all-ips", flag_descriptions::kMediaRouterCastAllowAllIPsName, -@@ -4066,7 +4066,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3926,7 +3926,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kSetMarketUrlForTestingName, flag_descriptions::kSetMarketUrlForTestingDescription, kOsAndroid, SINGLE_VALUE_TYPE_AND_VALUE(switches::kMarketUrlForTesting, @@ -4293,7 +4383,7 @@ diff --git a/chrome/browser/ash/arc/auth/arc_robot_auth_code_fetcher.cc b/chrome + "1070009224336-sdh77n7uot3oc99ais00jmuft6sk2fg9.apps.9oo91eusercontent.qjz9zk"; policy::DeviceManagementService* GetDeviceManagementService() { - policy::BrowserPolicyConnectorChromeOS* const connector = + policy::BrowserPolicyConnectorAsh* 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 @@ -4311,7 +4401,7 @@ diff --git a/chrome/browser/ash/assistant/assistant_util.cc b/chrome/browser/ash 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 -@@ -32,15 +32,15 @@ const char kAttestationServerTest[] = "test"; +@@ -33,15 +33,15 @@ const char kAttestationServerTest[] = "test"; // Endpoints for the default Google Privacy CA operations. const char kDefaultEnrollRequestURL[] = @@ -4334,7 +4424,7 @@ diff --git a/chrome/browser/ash/attestation/attestation_ca_client.cc b/chrome/br 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 -@@ -26,17 +26,17 @@ constexpr char kProtoMimeType[] = "application/x-protobuf"; +@@ -27,17 +27,17 @@ constexpr char kProtoMimeType[] = "application/x-protobuf"; // The url to download the proto of the complete list of wallpaper collections. constexpr char kBackdropCollectionsUrl[] = @@ -4394,15 +4484,15 @@ diff --git a/chrome/browser/ash/child_accounts/time_limits/web_time_limit_error_ diff --git a/chrome/browser/ash/crostini/crostini_util.cc b/chrome/browser/ash/crostini/crostini_util.cc --- a/chrome/browser/ash/crostini/crostini_util.cc +++ b/chrome/browser/ash/crostini/crostini_util.cc -@@ -63,7 +63,7 @@ const char kCrostiniDefaultVmName[] = "termina"; +@@ -67,7 +67,7 @@ const char kCrostiniDefaultVmName[] = "termina"; const char kCrostiniDefaultContainerName[] = "penguin"; const char kCrostiniDefaultUsername[] = "emperor"; const char kCrostiniDefaultImageServerUrl[] = - "https://storage.googleapis.com/cros-containers/%d"; + "https://storage.9oo91eapis.qjz9zk/cros-containers/%d"; - const char kCrostiniStretchImageAlias[] = "debian/stretch"; - const char kCrostiniBusterImageAlias[] = "debian/buster"; const char kCrostiniDlcName[] = "termina-dlc"; + + const base::FilePath::CharType kHomeDirectory[] = FILE_PATH_LITERAL("/home"); diff --git a/chrome/browser/ash/customization/customization_document.cc b/chrome/browser/ash/customization/customization_document.cc --- a/chrome/browser/ash/customization/customization_document.cc +++ b/chrome/browser/ash/customization/customization_document.cc @@ -4462,18 +4552,75 @@ diff --git a/chrome/browser/ash/file_manager/file_manager_string_util.cc b/chrom // Location of the help page for low space warning in the downloads directory. const int kDownloadsLowSpaceWarningHelpNumber = 1061547; +diff --git a/chrome/browser/ash/first_run/drive_first_run_controller.cc b/chrome/browser/ash/first_run/drive_first_run_controller.cc +--- a/chrome/browser/ash/first_run/drive_first_run_controller.cc ++++ b/chrome/browser/ash/first_run/drive_first_run_controller.cc +@@ -60,7 +60,7 @@ int kWebContentsTimeoutSeconds = 15; + + // Google Drive enable offline endpoint. + const char kDriveOfflineEndpointUrl[] = +- "https://docs.google.com/offline/autoenable"; ++ "https://docs.9oo91e.qjz9zk/offline/autoenable"; + + // Google Drive app id. + const char kDriveHostedAppId[] = "apdfllckaahabafndbhieahigkjlhalf"; +@@ -70,7 +70,7 @@ const char kDriveOfflineNotificationId[] = "chrome://drive/enable-offline"; + + // The URL of the support page opened when the notification button is clicked. + const char kDriveOfflineSupportUrl[] = +- "https://support.google.com/drive/answer/1628467"; ++ "https://support.9oo91e.qjz9zk/drive/answer/1628467"; + + } // namespace + diff --git a/chrome/browser/ash/hats/hats_dialog.cc b/chrome/browser/ash/hats/hats_dialog.cc --- a/chrome/browser/ash/hats/hats_dialog.cc +++ b/chrome/browser/ash/hats/hats_dialog.cc -@@ -38,7 +38,7 @@ const int kDefaultWidth = 384; - const int kDefaultHeight = 428; +@@ -53,7 +53,7 @@ const char kClientActionUnhandledError[] = "survey-loading-error"; + const char kClientSmileySelected[] = "smiley-selected-"; constexpr char kCrOSHaTSURL[] = - "https://storage.googleapis.com/chromeos-hats-web-stable/index.html"; + "https://storage.9oo91eapis.qjz9zk/chromeos-hats-web-stable/index.html"; - // Keyword used to join the separate device info elements into a single string - // to be used as site context. + // Delimiters used to join the separate device info elements into a single + // string to be used as site context. +diff --git a/chrome/browser/ash/input_method/assistive_suggester.cc b/chrome/browser/ash/input_method/assistive_suggester.cc +--- a/chrome/browser/ash/input_method/assistive_suggester.cc ++++ b/chrome/browser/ash/input_method/assistive_suggester.cc +@@ -37,23 +37,23 @@ const char kMaxTextBeforeCursorLength = 50; + + const char* kAllowedDomainsForPersonalInfoSuggester[] = { + "discord.com", "messenger.com", "web.whatsapp.com", +- "web.skype.com", "duo.google.com", "hangouts.google.com", +- "chat.google.com", "messages.google.com", "web.telegram.org", +- "voice.google.com", ++ "web.skype.com", "duo.9oo91e.qjz9zk", "hangouts.9oo91e.qjz9zk", ++ "chat.9oo91e.qjz9zk", "messages.9oo91e.qjz9zk", "web.telegram.org", ++ "voice.9oo91e.qjz9zk", + }; + + const char* kAllowedDomainsForEmojiSuggester[] = { + "discord.com", "messenger.com", "web.whatsapp.com", +- "web.skype.com", "duo.google.com", "hangouts.google.com", +- "chat.google.com", "messages.google.com", "web.telegram.org", +- "voice.google.com", ++ "web.skype.com", "duo.9oo91e.qjz9zk", "hangouts.9oo91e.qjz9zk", ++ "chat.9oo91e.qjz9zk", "messages.9oo91e.qjz9zk", "web.telegram.org", ++ "voice.9oo91e.qjz9zk", + }; + + const char* kAllowedDomainsForMultiWordSuggester[] = { + "discord.com", "messenger.com", "web.whatsapp.com", +- "web.skype.com", "duo.google.com", "hangouts.google.com", +- "chat.google.com", "messages.google.com", "web.telegram.org", +- "voice.google.com", ++ "web.skype.com", "duo.9oo91e.qjz9zk", "hangouts.9oo91e.qjz9zk", ++ "chat.9oo91e.qjz9zk", "messages.9oo91e.qjz9zk", "web.telegram.org", ++ "voice.9oo91e.qjz9zk", + }; + + const char* kTestUrls[] = { 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 @@ -4620,7 +4767,42 @@ diff --git a/chrome/browser/ash/policy/handlers/powerwash_requirements_checker.c + "https://support.9oo91e.qjz9zk/chromebook?p=factory_reset"; std::u16string GetEnterpriseManager() { - policy::BrowserPolicyConnectorChromeOS* connector = + policy::BrowserPolicyConnectorAsh* connector = +diff --git a/chrome/browser/ash/policy/remote_commands/device_command_start_crd_session_job.cc b/chrome/browser/ash/policy/remote_commands/device_command_start_crd_session_job.cc +--- a/chrome/browser/ash/policy/remote_commands/device_command_start_crd_session_job.cc ++++ b/chrome/browser/ash/policy/remote_commands/device_command_start_crd_session_job.cc +@@ -34,11 +34,11 @@ namespace { + + // OAuth2 Token scopes + constexpr char kCloudDevicesOAuth2Scope[] = +- "https://www.googleapis.com/auth/clouddevices"; ++ "https://www.9oo91eapis.qjz9zk/auth/clouddevices"; + constexpr char kChromotingRemoteSupportOAuth2Scope[] = +- "https://www.googleapis.com/auth/chromoting.remote.support"; ++ "https://www.9oo91eapis.qjz9zk/auth/chromoting.remote.support"; + constexpr char kTachyonOAuth2Scope[] = +- "https://www.googleapis.com/auth/tachyon"; ++ "https://www.9oo91eapis.qjz9zk/auth/tachyon"; + + // Job parameters fields: + +diff --git a/chrome/browser/ash/policy/uploading/heartbeat_scheduler.cc b/chrome/browser/ash/policy/uploading/heartbeat_scheduler.cc +--- a/chrome/browser/ash/policy/uploading/heartbeat_scheduler.cc ++++ b/chrome/browser/ash/policy/uploading/heartbeat_scheduler.cc +@@ -30,11 +30,11 @@ const char kHeartbeatGCMAppID[] = "com.google.chromeos.monitoring"; + + // The default destination we send our GCM messages to. + const char kHeartbeatGCMDestinationID[] = "1013309121859"; +-const char kHeartbeatGCMSenderSuffix[] = "@google.com"; ++const char kHeartbeatGCMSenderSuffix[] = "@9oo91e.qjz9zk"; + + // Destination of upstream notification sign up message. + const char kUpstreamNotificationSignUpDestinationID[] = +- "https://gcm.googleapis.com/gcm/gcm.event_tracker"; ++ "https://gcm.9oo91eapis.qjz9zk/gcm/gcm.event_tracker"; + + // A bit mask, listening events of upstream notification. + const char kUpstreamNotificationSignUpListeningEvents[] = 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 @@ -4639,7 +4821,7 @@ diff --git a/chrome/browser/autofill/autofill_gstatic_reader.cc b/chrome/browser diff --git a/chrome/browser/browser_switcher/browser_switcher_service.cc b/chrome/browser/browser_switcher/browser_switcher_service.cc --- a/chrome/browser/browser_switcher/browser_switcher_service.cc +++ b/chrome/browser/browser_switcher/browser_switcher_service.cc -@@ -51,7 +51,7 @@ constexpr net::NetworkTrafficAnnotationTag traffic_annotation = +@@ -52,7 +52,7 @@ constexpr net::NetworkTrafficAnnotationTag traffic_annotation = "an alternative browser. This is often on the organization's " "intranet. For more information on Internet Explorer's Enterprise " "Mode, see: " @@ -4687,7 +4869,7 @@ diff --git a/chrome/browser/cart/cart_discount_link_fetcher.cc b/chrome/browser/ 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 -@@ -473,7 +473,7 @@ void CartService::AddCartsWithFakeData() { +@@ -474,7 +474,7 @@ void CartService::AddCartsWithFakeData() { // Polulate and add some carts with fake data. double time_now = base::Time::Now().ToDoubleT(); cart_db::ChromeCartContentProto dummy_proto1; @@ -4696,7 +4878,7 @@ 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()); -@@ -482,17 +482,17 @@ void CartService::AddCartsWithFakeData() { +@@ -483,17 +483,17 @@ void CartService::AddCartsWithFakeData() { l10n_util::GetStringFUTF8(IDS_NTP_MODULES_CART_DISCOUNT_CHIP_AMOUNT, u"15%")); dummy_proto1.add_product_image_urls( @@ -4717,7 +4899,7 @@ 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"); -@@ -510,12 +510,12 @@ void CartService::AddCartsWithFakeData() { +@@ -511,12 +511,12 @@ void CartService::AddCartsWithFakeData() { l10n_util::GetStringFUTF8(IDS_NTP_MODULES_CART_DISCOUNT_CHIP_AMOUNT, u"20%")); dummy_proto2.add_product_image_urls( @@ -4732,7 +4914,7 @@ diff --git a/chrome/browser/cart/cart_service.cc b/chrome/browser/cart/cart_serv "shopping?q=tbn:ANd9GcQyMRYWeM2Yq095nOXTL0-" "EUUnm79kh6hnw8yctJUNrAuse607KEr1CVxEa24r-" "8XHBuhTwcuC4GXeN94h9Kn19DhdBGsXG0qrD74veYSDJNLrUP-sru0jH&usqp=CAY"); -@@ -533,7 +533,7 @@ void CartService::AddCartsWithFakeData() { +@@ -534,7 +534,7 @@ void CartService::AddCartsWithFakeData() { l10n_util::GetStringFUTF8(IDS_NTP_MODULES_CART_DISCOUNT_CHIP_UP_TO_AMOUNT, u"$50")); dummy_proto3.add_product_image_urls( @@ -4741,7 +4923,7 @@ diff --git a/chrome/browser/cart/cart_service.cc b/chrome/browser/cart/cart_serv "shopping?q=tbn:ANd9GcQpn38jB2_BANnHUFa7kHJsf6SyubcgeU1lNYO_" "ZxM1Q2ju_ZMjv2EwNh0Zx_zbqYy_mFg_aiIhWYnD5PQ7t-uFzLM5cN77s_2_" "DFNeumI-LMPJMYjW-BOSaA&usqp=CAY"); -@@ -548,12 +548,12 @@ void CartService::AddCartsWithFakeData() { +@@ -549,12 +549,12 @@ void CartService::AddCartsWithFakeData() { dummy_proto4.set_merchant_cart_url(dummy_url4.spec()); dummy_proto4.set_timestamp(time_now + 3); dummy_proto4.add_product_image_urls( @@ -4756,7 +4938,7 @@ 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"); -@@ -568,7 +568,7 @@ void CartService::AddCartsWithFakeData() { +@@ -569,7 +569,7 @@ void CartService::AddCartsWithFakeData() { dummy_proto5.set_merchant_cart_url(dummy_url5.spec()); dummy_proto5.set_timestamp(time_now + 2); dummy_proto5.add_product_image_urls( @@ -4765,7 +4947,7 @@ diff --git a/chrome/browser/cart/cart_service.cc b/chrome/browser/cart/cart_serv "shopping?q=tbn:ANd9GcQpn38jB2_BANnHUFa7kHJsf6SyubcgeU1lNYO_" "ZxM1Q2ju_ZMjv2EwNh0Zx_zbqYy_mFg_aiIhWYnD5PQ7t-uFzLM5cN77s_2_" "DFNeumI-LMPJMYjW-BOSaA&usqp=CAY"); -@@ -583,17 +583,17 @@ void CartService::AddCartsWithFakeData() { +@@ -584,17 +584,17 @@ void CartService::AddCartsWithFakeData() { dummy_proto6.set_merchant_cart_url(dummy_url6.spec()); dummy_proto6.set_timestamp(time_now + 1); dummy_proto6.add_product_image_urls( @@ -4786,6 +4968,18 @@ 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/fetch_discount_worker.cc b/chrome/browser/cart/fetch_discount_worker.cc +--- a/chrome/browser/cart/fetch_discount_worker.cc ++++ b/chrome/browser/cart/fetch_discount_worker.cc +@@ -24,7 +24,7 @@ constexpr base::FeatureParam kDelayFetchParam( + base::TimeDelta::FromHours(6)); + + const char kOauthName[] = "rbd"; +-const char kOauthScopes[] = "https://www.googleapis.com/auth/chromememex"; ++const char kOauthScopes[] = "https://www.9oo91eapis.qjz9zk/auth/chromememex"; + const char kEmptyToken[] = ""; + } // namespace + 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 @@ -4866,7 +5060,7 @@ diff --git a/chrome/browser/chromeos/android_sms/android_sms_urls.cc b/chrome/br 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 -@@ -83,7 +83,7 @@ namespace { +@@ -85,7 +85,7 @@ namespace { using api::file_manager_private::ProfileInfo; @@ -4875,70 +5069,29 @@ diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc // Thresholds for mountCrostini() API. constexpr base::TimeDelta kMountCrostiniSlowOperationThreshold = -diff --git a/chrome/browser/chromeos/first_run/drive_first_run_controller.cc b/chrome/browser/chromeos/first_run/drive_first_run_controller.cc ---- a/chrome/browser/chromeos/first_run/drive_first_run_controller.cc -+++ b/chrome/browser/chromeos/first_run/drive_first_run_controller.cc -@@ -60,7 +60,7 @@ int kWebContentsTimeoutSeconds = 15; +diff --git a/chrome/browser/chromeos/net/network_diagnostics/arc_dns_resolution_routine.cc b/chrome/browser/chromeos/net/network_diagnostics/arc_dns_resolution_routine.cc +--- a/chrome/browser/chromeos/net/network_diagnostics/arc_dns_resolution_routine.cc ++++ b/chrome/browser/chromeos/net/network_diagnostics/arc_dns_resolution_routine.cc +@@ -18,9 +18,9 @@ namespace { - // Google Drive enable offline endpoint. - const char kDriveOfflineEndpointUrl[] = -- "https://docs.google.com/offline/autoenable"; -+ "https://docs.9oo91e.qjz9zk/offline/autoenable"; - - // Google Drive app id. - const char kDriveHostedAppId[] = "apdfllckaahabafndbhieahigkjlhalf"; -@@ -70,7 +70,7 @@ const char kDriveOfflineNotificationId[] = "chrome://drive/enable-offline"; - - // The URL of the support page opened when the notification button is clicked. - const char kDriveOfflineSupportUrl[] = -- "https://support.google.com/drive/answer/1628467"; -+ "https://support.9oo91e.qjz9zk/drive/answer/1628467"; + // These hostnames were chosen because they need to be resolved for a + // successful ARC provisioning step. +-constexpr char kHostname1[] = "www.googleapis.com"; +-constexpr char kHostname2[] = "android.clients.google.com"; +-constexpr char kHostname3[] = "android.googleapis.com"; ++constexpr char kHostname1[] = "www.9oo91eapis.qjz9zk"; ++constexpr char kHostname2[] = "android.clients.9oo91e.qjz9zk"; ++constexpr char kHostname3[] = "android.9oo91eapis.qjz9zk"; } // namespace -diff --git a/chrome/browser/chromeos/input_method/assistive_suggester.cc b/chrome/browser/chromeos/input_method/assistive_suggester.cc ---- a/chrome/browser/chromeos/input_method/assistive_suggester.cc -+++ b/chrome/browser/chromeos/input_method/assistive_suggester.cc -@@ -36,23 +36,23 @@ const char kMaxTextBeforeCursorLength = 50; - - const char* kAllowedDomainsForPersonalInfoSuggester[] = { - "discord.com", "messenger.com", "web.whatsapp.com", -- "web.skype.com", "duo.google.com", "hangouts.google.com", -- "chat.google.com", "messages.google.com", "web.telegram.org", -- "voice.google.com", -+ "web.skype.com", "duo.9oo91e.qjz9zk", "hangouts.9oo91e.qjz9zk", -+ "chat.9oo91e.qjz9zk", "messages.9oo91e.qjz9zk", "web.telegram.org", -+ "voice.9oo91e.qjz9zk", - }; - - const char* kAllowedDomainsForEmojiSuggester[] = { - "discord.com", "messenger.com", "web.whatsapp.com", -- "web.skype.com", "duo.google.com", "hangouts.google.com", -- "chat.google.com", "messages.google.com", "web.telegram.org", -- "voice.google.com", -+ "web.skype.com", "duo.9oo91e.qjz9zk", "hangouts.9oo91e.qjz9zk", -+ "chat.9oo91e.qjz9zk", "messages.9oo91e.qjz9zk", "web.telegram.org", -+ "voice.9oo91e.qjz9zk", - }; - - const char* kAllowedDomainsForMultiWordSuggester[] = { - "discord.com", "messenger.com", "web.whatsapp.com", -- "web.skype.com", "duo.google.com", "hangouts.google.com", -- "chat.google.com", "messages.google.com", "web.telegram.org", -- "voice.google.com", -+ "web.skype.com", "duo.9oo91e.qjz9zk", "hangouts.9oo91e.qjz9zk", -+ "chat.9oo91e.qjz9zk", "messages.9oo91e.qjz9zk", "web.telegram.org", -+ "voice.9oo91e.qjz9zk", - }; - - const char* kTestUrls[] = { 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 -@@ -39,7 +39,7 @@ constexpr base::TimeDelta kBadLatencyMs = - base::TimeDelta::FromMilliseconds(400); +@@ -40,7 +40,7 @@ constexpr base::TimeDelta kBadLatencyMs = + base::TimeDelta::FromMilliseconds(util::kDnsPotentialProblemLatencyMs); constexpr base::TimeDelta kVeryBadLatencyMs = - base::TimeDelta::FromMilliseconds(500); + base::TimeDelta::FromMilliseconds(util::kDnsProblemLatencyMs); -constexpr char kHostSuffix[] = "-ccd-testing-v4.metric.gstatic.com"; +constexpr char kHostSuffix[] = "-ccd-testing-v4.metric.95tat1c.qjz9zk"; @@ -4995,7 +5148,7 @@ diff --git a/chrome/browser/chromeos/net/network_diagnostics/network_diagnostics diff --git a/chrome/browser/chromeos/net/network_diagnostics/video_conferencing_routine.cc b/chrome/browser/chromeos/net/network_diagnostics/video_conferencing_routine.cc --- a/chrome/browser/chromeos/net/network_diagnostics/video_conferencing_routine.cc +++ b/chrome/browser/chromeos/net/network_diagnostics/video_conferencing_routine.cc -@@ -22,11 +22,11 @@ namespace network_diagnostics { +@@ -22,12 +22,12 @@ namespace network_diagnostics { namespace { @@ -5004,46 +5157,12 @@ diff --git a/chrome/browser/chromeos/net/network_diagnostics/video_conferencing_ } // namespace + // TODO(crbug/1227877): Move support details to the UI. -const char kSupportDetails[] = "https://support.google.com/a/answer/1279090"; +const char kSupportDetails[] = "https://support.9oo91e.qjz9zk/a/answer/1279090"; const base::TimeDelta kTimeoutAfterHostResolution = base::TimeDelta::FromSeconds(10); -diff --git a/chrome/browser/chromeos/policy/remote_commands/device_command_start_crd_session_job.cc b/chrome/browser/chromeos/policy/remote_commands/device_command_start_crd_session_job.cc ---- a/chrome/browser/chromeos/policy/remote_commands/device_command_start_crd_session_job.cc -+++ b/chrome/browser/chromeos/policy/remote_commands/device_command_start_crd_session_job.cc -@@ -33,11 +33,11 @@ namespace { - - // OAuth2 Token scopes - constexpr char kCloudDevicesOAuth2Scope[] = -- "https://www.googleapis.com/auth/clouddevices"; -+ "https://www.9oo91eapis.qjz9zk/auth/clouddevices"; - constexpr char kChromotingRemoteSupportOAuth2Scope[] = -- "https://www.googleapis.com/auth/chromoting.remote.support"; -+ "https://www.9oo91eapis.qjz9zk/auth/chromoting.remote.support"; - constexpr char kTachyonOAuth2Scope[] = -- "https://www.googleapis.com/auth/tachyon"; -+ "https://www.9oo91eapis.qjz9zk/auth/tachyon"; - - // Job parameters fields: - -diff --git a/chrome/browser/chromeos/policy/uploading/heartbeat_scheduler.cc b/chrome/browser/chromeos/policy/uploading/heartbeat_scheduler.cc ---- a/chrome/browser/chromeos/policy/uploading/heartbeat_scheduler.cc -+++ b/chrome/browser/chromeos/policy/uploading/heartbeat_scheduler.cc -@@ -30,11 +30,11 @@ const char kHeartbeatGCMAppID[] = "com.google.chromeos.monitoring"; - - // The default destination we send our GCM messages to. - const char kHeartbeatGCMDestinationID[] = "1013309121859"; --const char kHeartbeatGCMSenderSuffix[] = "@google.com"; -+const char kHeartbeatGCMSenderSuffix[] = "@9oo91e.qjz9zk"; - - // Destination of upstream notification sign up message. - const char kUpstreamNotificationSignUpDestinationID[] = -- "https://gcm.googleapis.com/gcm/gcm.event_tracker"; -+ "https://gcm.9oo91eapis.qjz9zk/gcm/gcm.event_tracker"; - - // A bit mask, listening events of upstream notification. - const char kUpstreamNotificationSignUpListeningEvents[] = diff --git a/chrome/browser/chromeos/u2f_notification.cc b/chrome/browser/chromeos/u2f_notification.cc --- a/chrome/browser/chromeos/u2f_notification.cc +++ b/chrome/browser/chromeos/u2f_notification.cc @@ -5122,7 +5241,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 -@@ -143,7 +143,7 @@ const char kServiceProviderConfig[] = R"({ +@@ -140,7 +140,7 @@ const char kServiceProviderConfig[] = R"({ "version": { "1": { "analysis": { @@ -5131,7 +5250,7 @@ diff --git a/chrome/browser/enterprise/connectors/connectors_service.cc b/chrome "supported_tags": [ { "name": "malware", -@@ -196,7 +196,7 @@ const char kServiceProviderConfig[] = R"({ +@@ -193,7 +193,7 @@ const char kServiceProviderConfig[] = R"({ ] }, "reporting": { @@ -5143,7 +5262,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 -@@ -45,7 +45,7 @@ const char kOAuthConsumerName[] = "file_system_signin_dialog"; +@@ -49,7 +49,7 @@ const char kOAuthConsumerName[] = "file_system_signin_dialog"; // 4/ This URI is used by other native apps for the same purpose. // 5/ It is controlled by Google. bool IsOAuth2RedirectURI(const GURL& url) { @@ -5176,7 +5295,7 @@ diff --git a/chrome/browser/enterprise/reporting/extension_request/extension_req diff --git a/chrome/browser/enterprise/signals/context_info_fetcher.cc b/chrome/browser/enterprise/signals/context_info_fetcher.cc --- a/chrome/browser/enterprise/signals/context_info_fetcher.cc +++ b/chrome/browser/enterprise/signals/context_info_fetcher.cc -@@ -163,9 +163,9 @@ absl::optional ContextInfoFetcher::GetChromeCleanupEnabled() { +@@ -287,9 +287,9 @@ absl::optional ContextInfoFetcher::GetChromeCleanupEnabled() { } bool ContextInfoFetcher::GetChromeRemoteDesktopAppBlocked() { @@ -5247,7 +5366,7 @@ diff --git a/chrome/browser/extensions/api/identity/identity_launch_web_auth_flo diff --git a/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc b/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc --- a/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc +++ b/chrome/browser/extensions/api/management/chrome_management_api_delegate.cc -@@ -79,7 +79,7 @@ namespace { +@@ -80,7 +80,7 @@ namespace { #if BUILDFLAG(IS_CHROMEOS_ASH) const char kPlayIntentPrefix[] = @@ -5339,31 +5458,19 @@ diff --git a/chrome/browser/federated_learning/floc_remote_permission_service.cc // The maximum number of retries for the SimpleURLLoader requests. const size_t kMaxRetries = 1; -diff --git a/chrome/browser/feedback/feedback_uploader_chrome.cc b/chrome/browser/feedback/feedback_uploader_chrome.cc ---- a/chrome/browser/feedback/feedback_uploader_chrome.cc -+++ b/chrome/browser/feedback/feedback_uploader_chrome.cc -@@ -38,7 +38,7 @@ constexpr char kAuthenticationErrorLogMessage[] = - - constexpr char kConsumer[] = "feedback_uploader_chrome"; - --constexpr char kScope[] = "https://www.googleapis.com/auth/supportcontent"; -+constexpr char kScope[] = "https://www.9oo91eapis.qjz9zk/auth/supportcontent"; - - void QueueSingleReport(base::WeakPtr uploader, - scoped_refptr report) { 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 -@@ -620,7 +620,7 @@ const char kDetectTargetEmbeddingLookalikesName[] = +@@ -596,7 +596,7 @@ const char kDetectTargetEmbeddingLookalikesName[] = "Detect target embedding domains as lookalikes."; const char kDetectTargetEmbeddingLookalikesDescription[] = "Shows a lookalike interstitial when navigating to target embedding domains" - "(e.g. google.com.example.com)."; + "(e.g. 9oo91e.qjz9zk.example.com)."; - const char kDeviceDiscoveryNotificationsName[] = - "Device Discovery Notifications"; -@@ -2282,7 +2282,7 @@ const char kReduceUserAgentName[] = "Reduce User-Agent request header"; + const char kDisableProcessReuse[] = "Disable subframe process reuse"; + const char kDisableProcessReuseDescription[] = +@@ -2175,7 +2175,7 @@ const char kReduceUserAgentName[] = "Reduce User-Agent request header"; const char kReduceUserAgentDescription[] = "Reduce (formerly, \"freeze\") the amount of information available in " "the User-Agent request header. " @@ -5372,7 +5479,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti const char kRestrictGamepadAccessName[] = "Restrict gamepad access"; const char kRestrictGamepadAccessDescription[] = -@@ -2299,7 +2299,7 @@ const char kIntensiveWakeUpThrottlingName[] = +@@ -2192,7 +2192,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 " @@ -5587,7 +5694,7 @@ diff --git a/chrome/browser/media/webrtc/webrtc_browsertest_common.cc b/chrome/b diff --git a/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc b/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc --- a/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc +++ b/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc -@@ -123,7 +123,7 @@ void OnURLLoadUploadProgress(uint64_t current, uint64_t total) { +@@ -125,7 +125,7 @@ void OnURLLoadUploadProgress(uint64_t current, uint64_t total) { } // namespace const char WebRtcEventLogUploaderImpl::kUploadURL[] = @@ -5599,7 +5706,7 @@ diff --git a/chrome/browser/media/webrtc/webrtc_event_log_uploader.cc b/chrome/b diff --git a/chrome/browser/media/webrtc/webrtc_log_uploader.cc b/chrome/browser/media/webrtc/webrtc_log_uploader.cc --- a/chrome/browser/media/webrtc/webrtc_log_uploader.cc +++ b/chrome/browser/media/webrtc/webrtc_log_uploader.cc -@@ -467,7 +467,7 @@ void WebRtcLogUploader::UploadCompressedLog( +@@ -469,7 +469,7 @@ void WebRtcLogUploader::UploadCompressedLog( "Not implemented, it would be good to do so." })"); @@ -5754,18 +5861,26 @@ diff --git a/chrome/browser/new_tab_page/modules/drive/drive_service.cc b/chrome "driveItem": { "title": "baz slides", "mimeType": "application/vnd.google-apps.presentation" -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 -@@ -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 --// https://bugzilla.mozilla.org/show_bug.cgi?id=852648#c21 -+// https://bugzilla.m0z111a.qjz9zk/show_bug.cgi?id=852648#c21 - - (void)userNotificationCenter:(NSUserNotificationCenter*)center - didRemoveDeliveredNotifications:(NSArray*)notifications { - for (NSUserNotification* notification in notifications) { +diff --git a/chrome/browser/new_tab_page/modules/photos/photos_service.cc b/chrome/browser/new_tab_page/modules/photos/photos_service.cc +--- a/chrome/browser/new_tab_page/modules/photos/photos_service.cc ++++ b/chrome/browser/new_tab_page/modules/photos/photos_service.cc +@@ -16,13 +16,13 @@ + namespace { + // The scope required for an access token in order to query Memories. + constexpr char kPhotosScope[] = +- "https://www.googleapis.com/auth/photos.firstparty.readonly"; ++ "https://www.9oo91eapis.qjz9zk/auth/photos.firstparty.readonly"; + constexpr char kPhotosImgScope[] = +- "https://www.googleapis.com/auth/photos.image.readonly"; ++ "https://www.9oo91eapis.qjz9zk/auth/photos.image.readonly"; + // Maximum accepted size of an ItemSuggest response. 1MB. + constexpr int kMaxResponseSize = 1024 * 1024; + const char server_url[] = +- "https://photosfirstparty-pa.googleapis.com/chrome_ntp/" ++ "https://photosfirstparty-pa.9oo91eapis.qjz9zk/chrome_ntp/" + "read_reminiscing_content"; + constexpr net::NetworkTrafficAnnotationTag kTrafficAnnotation = + net::DefineNetworkTrafficAnnotation("photos_service", R"( 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 @@ -5841,7 +5956,7 @@ diff --git a/chrome/browser/policy/extension_force_install_mixin.cc b/chrome/bro diff --git a/chrome/browser/policy/policy_test_utils.h b/chrome/browser/policy/policy_test_utils.h --- a/chrome/browser/policy/policy_test_utils.h +++ b/chrome/browser/policy/policy_test_utils.h -@@ -90,7 +90,7 @@ class PolicyTest : public InProcessBrowserTest { +@@ -87,7 +87,7 @@ class PolicyTest : public PlatformBrowserTest { static void CheckSafeSearch(Browser* browser, bool expect_safe_search, @@ -5973,7 +6088,7 @@ diff --git a/chrome/browser/resources/chromeos/accessibility/accessibility_commo 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 -@@ -202,7 +202,7 @@ CommandHandler.onCommand = function(command) { +@@ -212,7 +212,7 @@ CommandHandler.onCommand = function(command) { QueueMode.FLUSH); return false; case 'reportIssue': @@ -5982,7 +6097,7 @@ diff --git a/chrome/browser/resources/chromeos/accessibility/chromevox/backgroun 'labels=Type-Bug,Pri-2,OS-Chrome&' + 'components=OS>Accessibility>ChromeVox&' + 'description='; -@@ -1525,13 +1525,13 @@ CommandHandler.init = function() { +@@ -1535,13 +1535,13 @@ CommandHandler.init = function() { } }); @@ -6105,12 +6220,12 @@ diff --git a/chrome/browser/resources/chromeos/accessibility/select_to_speak/opt diff --git a/chrome/browser/resources/chromeos/accessibility/select_to_speak/options.html b/chrome/browser/resources/chromeos/accessibility/select_to_speak/options.html --- a/chrome/browser/resources/chromeos/accessibility/select_to_speak/options.html +++ b/chrome/browser/resources/chromeos/accessibility/select_to_speak/options.html -@@ -60,7 +60,7 @@ +@@ -58,7 +58,7 @@ - -- -+ + ++ href="https://support.9oo91e.qjz9zk/chromebook?p=select_to_speak"> @@ -6135,7 +6250,7 @@ diff --git a/chrome/browser/resources/chromeos/accessibility/select_to_speak/sel 'enable-experimental-accessibility-language-detection', (result) => { this.enableLanguageDetectionIntegration_ = result; }); -@@ -686,8 +686,8 @@ export class SelectToSpeak { +@@ -699,8 +699,8 @@ export class SelectToSpeak { chrome.tabs.query( { url: [ @@ -6263,7 +6378,7 @@ diff --git a/chrome/browser/resources/chromeos/arc_support/background.js b/chrom return; } this.onTermsViewLoadAborted_( -@@ -936,7 +936,7 @@ function showURLOverlay(url) { +@@ -945,7 +945,7 @@ function showURLOverlay(url) { */ function showPrivacyPolicyOverlay() { var defaultLink = @@ -6272,7 +6387,7 @@ diff --git a/chrome/browser/resources/chromeos/arc_support/background.js b/chrom if (termsPage.isManaged_) { showURLOverlay(defaultLink); return; -@@ -1025,7 +1025,7 @@ chrome.app.runtime.onLaunched.addListener(function() { +@@ -1034,7 +1034,7 @@ chrome.app.runtime.onLaunched.addListener(function() { }); overlayWebview.addContentScripts([{ name: 'postProcess', @@ -6707,6 +6822,18 @@ diff --git a/chrome/browser/resources/chromeos/login/arc_terms_of_service.js b/c self.getCurrentLanguage_() + '/policies/privacy/'; self.showUrlOverlay(defaultLink); } +diff --git a/chrome/browser/resources/chromeos/login/debug/debug.js b/chrome/browser/resources/chromeos/login/debug/debug.js +--- a/chrome/browser/resources/chromeos/login/debug/debug.js ++++ b/chrome/browser/resources/chromeos/login/debug/debug.js +@@ -597,7 +597,7 @@ cr.define('cr.ui.login.debug', function() { + // Password and email mismatch error message. + id: 'offline-login-password-mismatch', + trigger: (screen) => { +- screen.setEmailForTest('someuser@gmail.com'); ++ screen.setEmailForTest('someuser@9ma1l.qjz9zk'); + screen.proceedToPasswordPage(); + screen.showPasswordMismatchMessage(); + }, 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 @@ -6742,7 +6869,7 @@ diff --git a/chrome/browser/resources/chromeos/login/screens/login/offline_login +const DEFAULT_EMAIL_DOMAIN = '@9ma1l.qjz9zk'; const INPUT_EMAIL_PATTERN = '^[a-zA-Z0-9.!#$%&\'*+=?^_`{|}~-]+(@[^\\s@]+)?$'; - Polymer({ + const LOGIN_SECTION = { diff --git a/chrome/browser/resources/chromeos/multidevice_internals/browser_tabs_metadata_form.js b/chrome/browser/resources/chromeos/multidevice_internals/browser_tabs_metadata_form.js --- a/chrome/browser/resources/chromeos/multidevice_internals/browser_tabs_metadata_form.js +++ b/chrome/browser/resources/chromeos/multidevice_internals/browser_tabs_metadata_form.js @@ -7213,6 +7340,18 @@ diff --git a/chrome/browser/resources/new_tab_page/modules/drive/module.js b/chr file.mimeType; } +diff --git a/chrome/browser/resources/new_tab_page/modules/drive_v2/module.js b/chrome/browser/resources/new_tab_page/modules/drive_v2/module.js +--- a/chrome/browser/resources/new_tab_page/modules/drive_v2/module.js ++++ b/chrome/browser/resources/new_tab_page/modules/drive_v2/module.js +@@ -41,7 +41,7 @@ class DriveModuleElement extends mixinBehaviors + * @private + */ + getImageSrc_(file) { +- return 'https://drive-thirdparty.googleusercontent.com/32/type/' + ++ return 'https://drive-thirdparty.9oo91eusercontent.qjz9zk/32/type/' + + file.mimeType; + } + diff --git a/chrome/browser/resources/new_tab_page/voice_search_overlay.js b/chrome/browser/resources/new_tab_page/voice_search_overlay.js --- a/chrome/browser/resources/new_tab_page/voice_search_overlay.js +++ b/chrome/browser/resources/new_tab_page/voice_search_overlay.js @@ -7395,18 +7534,6 @@ diff --git a/chrome/browser/resources/settings/about_page/about_page.html b/chro target="_blank" id="updaterLearnMore" on-click="onLearnMoreTap_"> $i18n{learnMore} -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 -@@ -344,7 +344,7 @@ class SettingsAppearancePageElement extends SettingsAppearancePageElementBase { - this.themeSublabel_ = info.name; - }); - -- this.themeUrl_ = 'https://chrome.google.com/webstore/detail/' + themeId; -+ this.themeUrl_ = 'https://chrome.9oo91e.qjz9zk/webstore/detail/' + themeId; - return; - } - 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 @@ -7460,7 +7587,7 @@ 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 -@@ -417,7 +417,7 @@ +@@ -422,7 +422,7 @@ if="[[shouldShowAdditionalFeaturesLink_(isGuest_, isKioskModeActive_)]]"> $i18n{aboutChangeChannel}
- +@@ -83,7 +83,7 @@ + currentUpdateStatusEvent_, targetChannel_)]]"> + ++ href="https://support.9oo91e.qjz9zk/chrome?p=update_error"> + $i18n{learnMore} + + +diff --git a/chrome/browser/resources/settings/chromeos/os_apps_page/app_management_page/borealis_page/borealis_detail_view.html b/chrome/browser/resources/settings/chromeos/os_apps_page/app_management_page/borealis_page/borealis_detail_view.html +--- a/chrome/browser/resources/settings/chromeos/os_apps_page/app_management_page/borealis_page/borealis_detail_view.html ++++ b/chrome/browser/resources/settings/chromeos/os_apps_page/app_management_page/borealis_page/borealis_detail_view.html +@@ -50,7 +50,7 @@ + ++ link-url=https://www.y0u1ub3.qjz9zk/watch?v=dQw4w9WgXcQ> + + + -
+- + $i18n{appManagementIntentSharingTabLearnMore} + diff --git a/chrome/browser/resources/settings/chromeos/os_icons.html b/chrome/browser/resources/settings/chromeos/os_icons.html --- a/chrome/browser/resources/settings/chromeos/os_icons.html +++ b/chrome/browser/resources/settings/chromeos/os_icons.html @@ -7532,7 +7671,7 @@ diff --git a/chrome/browser/resources/settings/chromeos/os_icons.html b/chrome/b diff --git a/chrome/browser/resources/settings/chromeos/os_people_page/users_add_user_dialog.js b/chrome/browser/resources/settings/chromeos/os_people_page/users_add_user_dialog.js --- a/chrome/browser/resources/settings/chromeos/os_people_page/users_add_user_dialog.js +++ b/chrome/browser/resources/settings/chromeos/os_people_page/users_add_user_dialog.js -@@ -83,7 +83,7 @@ Polymer({ +@@ -89,7 +89,7 @@ Polymer({ const nameOnlyMatches = NAME_ONLY_REGEX.exec(input); let userEmail; if (nameOnlyMatches) { @@ -7544,7 +7683,7 @@ diff --git a/chrome/browser/resources/settings/chromeos/os_people_page/users_add diff --git a/chrome/browser/resources/settings/icons.html b/chrome/browser/resources/settings/icons.html --- a/chrome/browser/resources/settings/icons.html +++ b/chrome/browser/resources/settings/icons.html -@@ -74,7 +74,7 @@ NOTE: Chrome OS icons go in ./chromeos/os_icons.html. +@@ -79,7 +79,7 @@ NOTE: Chrome OS icons go in ./chromeos/os_icons.html. -@@ -1742,7 +1742,7 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1774,7 +1774,7 @@ Your Google account may have other forms of browsing history like searches and a Also clear your Chrome data from this device @@ -8162,7 +8301,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro Contacting Google. This may take a minute… -@@ -1847,7 +1847,7 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1879,7 +1879,7 @@ Your Google account may have other forms of browsing history like searches and a Your data was encrypted with your <learnmore>sync passphrase</learnmore> on %1$sSept 1, 2012. Enter it to start sync. @@ -8171,7 +8310,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro This field cannot be blank -@@ -3816,7 +3816,7 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

@@ -8180,7 +8319,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro No compatible devices found -@@ -3850,7 +3850,7 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

@@ -8189,7 +8328,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro Got it -@@ -4128,7 +4128,7 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

%1$sTanya's Pixel 2... @@ -8284,6 +8423,18 @@ diff --git a/chrome/browser/ui/ash/assistant/conversation_starters_client_impl.c // Network. constexpr int kMaxBodySizeBytes = 10 * 1024; +diff --git a/chrome/browser/ui/ash/calendar/calendar_keyed_service.cc b/chrome/browser/ui/ash/calendar/calendar_keyed_service.cc +--- a/chrome/browser/ui/ash/calendar/calendar_keyed_service.cc ++++ b/chrome/browser/ui/ash/calendar/calendar_keyed_service.cc +@@ -28,7 +28,7 @@ namespace { + // OAuth2 scopes. + // TODO(jiamingc@): move this to google_apis/calendar/. + const char kCalendarReadScope[] = +- "https://www.googleapis.com/auth/calendar.readonly"; ++ "https://www.9oo91eapis.qjz9zk/auth/calendar.readonly"; + + constexpr net::NetworkTrafficAnnotationTag kCalendarTrafficAnnotation = + net::DefineNetworkTrafficAnnotation("calendar_get_events", R"( diff --git a/chrome/browser/ui/ash/chrome_shell_delegate.cc b/chrome/browser/ui/ash/chrome_shell_delegate.cc --- a/chrome/browser/ui/ash/chrome_shell_delegate.cc +++ b/chrome/browser/ui/ash/chrome_shell_delegate.cc @@ -8365,7 +8516,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 -@@ -274,7 +274,7 @@ void ShowHelpForProfile(Profile* profile, HelpSource source) { +@@ -276,7 +276,7 @@ void ShowHelpForProfile(Profile* profile, HelpSource source) { #if BUILDFLAG(GOOGLE_CHROME_BRANDING) void ShowChromeTips(Browser* browser) { @@ -8413,7 +8564,7 @@ diff --git a/chrome/browser/ui/extensions/installation_error_infobar_delegate.cc 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 @@ absl::optional GetEnterpriseAccountDomain(Profile* profile) { +@@ -58,7 +58,7 @@ absl::optional GetEnterpriseAccountDomain(Profile* profile) { const std::string domain = enterprise_util::GetDomainFromEmail(profile->GetProfileUserName()); // Heuristic for most common consumer Google domains -- these are not managed. @@ -8425,7 +8576,7 @@ diff --git a/chrome/browser/ui/managed_ui.cc b/chrome/browser/ui/managed_ui.cc 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 -@@ -312,7 +312,7 @@ void SigninViewController::ShowDiceSigninTab( +@@ -309,7 +309,7 @@ void SigninViewController::ShowDiceSigninTab( DCHECK(google_apis::HasOAuthClientConfigured()) << "You must configure the OAuth client ID and client secret in order " "to sign in to Chromium. See instruction at " @@ -8437,7 +8588,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 -@@ -124,11 +124,11 @@ bool MediaRouterContextualMenu::IsCommandIdVisible(int command_id) const { +@@ -123,11 +123,11 @@ bool MediaRouterContextualMenu::IsCommandIdVisible(int command_id) const { void MediaRouterContextualMenu::ExecuteCommand(int command_id, int event_flags) { const char kAboutPageUrl[] = @@ -8467,7 +8618,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 -@@ -129,7 +129,7 @@ HatsNextWebDialog::HatsNextWebDialog( +@@ -130,7 +130,7 @@ HatsNextWebDialog::HatsNextWebDialog( : HatsNextWebDialog( browser, trigger_id, @@ -8746,7 +8897,7 @@ diff --git a/chrome/browser/ui/webui/chromeos/edu_coexistence/edu_coexistence_lo diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/browser/ui/webui/interstitials/interstitial_ui.cc --- a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc +++ b/chrome/browser/ui/webui/interstitials/interstitial_ui.cc -@@ -415,7 +415,7 @@ std::unique_ptr CreateCaptivePortalBlockingPage( +@@ -399,7 +399,7 @@ std::unique_ptr CreateCaptivePortalBlockingPage( content::WebContents* web_contents) { bool is_wifi_connection = false; GURL landing_url("https://captive.portal/login"); @@ -8758,7 +8909,7 @@ diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/b diff --git a/chrome/browser/ui/webui/media_router/cast_feedback_ui.cc b/chrome/browser/ui/webui/media_router/cast_feedback_ui.cc --- a/chrome/browser/ui/webui/media_router/cast_feedback_ui.cc +++ b/chrome/browser/ui/webui/media_router/cast_feedback_ui.cc -@@ -107,12 +107,12 @@ CastFeedbackUI::CastFeedbackUI(content::WebUI* web_ui) +@@ -111,12 +111,12 @@ CastFeedbackUI::CastFeedbackUI(content::WebUI* web_ui) "formDescription", l10n_util::GetStringFUTF8( IDS_MEDIA_ROUTER_FEEDBACK_FORM_DESCRIPTION, @@ -8879,7 +9030,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 -@@ -1471,7 +1471,7 @@ void AddPrivacyStrings(content::WebUIDataSource* html_source, +@@ -1507,7 +1507,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( @@ -8941,7 +9092,7 @@ diff --git a/chrome/browser/ui/webui/welcome/ntp_background_handler.cc b/chrome/ --- a/chrome/browser/ui/webui/welcome/ntp_background_handler.cc +++ b/chrome/browser/ui/webui/welcome/ntp_background_handler.cc @@ -147,7 +147,7 @@ void NtpBackgroundHandler::HandleSetBackground(const base::ListValue* args) { - NtpBackgrounds[backgroundIndex], + NtpBackgrounds[background_index], l10n_util::GetStringFUTF8(IDS_WELCOME_NTP_BACKGROUND_PHOTO_BY_LABEL, u"NASA Image Library"), - "", GURL("https://www.google.com/sky/"), ""); @@ -8949,6 +9100,20 @@ diff --git a/chrome/browser/ui/webui/welcome/ntp_background_handler.cc b/chrome/ break; case static_cast(NtpBackgrounds::kGeometricShapes): instant_service->SetCustomBackgroundInfo( +diff --git a/chrome/browser/ui/webui/whats_new/whats_new_util.cc b/chrome/browser/ui/webui/whats_new/whats_new_util.cc +--- a/chrome/browser/ui/webui/whats_new/whats_new_util.cc ++++ b/chrome/browser/ui/webui/whats_new/whats_new_util.cc +@@ -10,8 +10,8 @@ + #include "components/prefs/pref_service.h" + + namespace whats_new { +-const char kChromeWhatsNewURL[] = "https://www.google.com/chrome/whats-new/"; +-const char kChromeWhatsNewURLShort[] = "google.com/chrome/whats-new/"; ++const char kChromeWhatsNewURL[] = "https://www.9oo91e.qjz9zk/chrome/whats-new/"; ++const char kChromeWhatsNewURLShort[] = "9oo91e.qjz9zk/chrome/whats-new/"; + + bool g_force_enable_for_tests = false; + 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 @@ -8964,7 +9129,7 @@ diff --git a/chrome/browser/vr/PRESUBMIT.py b/chrome/browser/vr/PRESUBMIT.py diff --git a/chrome/browser/web_applications/preinstalled_web_apps/gmail.cc b/chrome/browser/web_applications/preinstalled_web_apps/gmail.cc --- a/chrome/browser/web_applications/preinstalled_web_apps/gmail.cc +++ b/chrome/browser/web_applications/preinstalled_web_apps/gmail.cc -@@ -16,7 +16,7 @@ namespace web_app { +@@ -17,7 +17,7 @@ namespace web_app { ExternalInstallOptions GetConfigForGmail() { ExternalInstallOptions options( /*install_url=*/GURL( @@ -8973,7 +9138,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/gmail.cc b/ch #if BUILDFLAG(IS_CHROMEOS_ASH) /*user_display_mode=*/DisplayMode::kStandalone, #else -@@ -34,8 +34,8 @@ ExternalInstallOptions GetConfigForGmail() { +@@ -35,8 +35,8 @@ ExternalInstallOptions GetConfigForGmail() { auto info = std::make_unique(); info->title = u"Gmail"; info->start_url = @@ -8987,7 +9152,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/gmail.cc b/ch 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 +++ b/chrome/browser/web_applications/preinstalled_web_apps/google_calendar.cc -@@ -98,7 +98,7 @@ constexpr Translation kNameTranslations[] = { +@@ -99,7 +99,7 @@ constexpr Translation kNameTranslations[] = { ExternalInstallOptions GetConfigForGoogleCalendar() { ExternalInstallOptions options( @@ -8996,7 +9161,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_calend "installwebapp?usp=chrome_default"), #if BUILDFLAG(IS_CHROMEOS_ASH) /*user_display_mode=*/DisplayMode::kStandalone, -@@ -119,8 +119,8 @@ ExternalInstallOptions GetConfigForGoogleCalendar() { +@@ -120,8 +120,8 @@ ExternalInstallOptions GetConfigForGoogleCalendar() { auto info = std::make_unique(); info->title = base::UTF8ToUTF16( GetTranslatedName("Google Calendar", kNameTranslations)); @@ -9045,7 +9210,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_docs.c 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 +++ b/chrome/browser/web_applications/preinstalled_web_apps/google_drive.cc -@@ -103,7 +103,7 @@ constexpr Translation kNameTranslations[] = { +@@ -104,7 +104,7 @@ constexpr Translation kNameTranslations[] = { ExternalInstallOptions GetConfigForGoogleDrive() { ExternalInstallOptions options( /*install_url=*/GURL( @@ -9054,7 +9219,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_drive. #if BUILDFLAG(IS_CHROMEOS_ASH) /*user_display_mode=*/DisplayMode::kStandalone, #else -@@ -122,8 +122,8 @@ ExternalInstallOptions GetConfigForGoogleDrive() { +@@ -123,8 +123,8 @@ ExternalInstallOptions GetConfigForGoogleDrive() { auto info = std::make_unique(); info->title = base::UTF8ToUTF16(GetTranslatedName("Google Drive", kNameTranslations)); @@ -9126,7 +9291,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/google_slides 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 +++ b/chrome/browser/web_applications/preinstalled_web_apps/youtube.cc -@@ -16,7 +16,7 @@ namespace web_app { +@@ -17,7 +17,7 @@ namespace web_app { ExternalInstallOptions GetConfigForYouTube() { ExternalInstallOptions options( /*install_url=*/GURL( @@ -9135,7 +9300,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/youtube.cc b/ #if BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS) /*user_display_mode=*/DisplayMode::kStandalone, #else -@@ -33,8 +33,8 @@ ExternalInstallOptions GetConfigForYouTube() { +@@ -34,8 +34,8 @@ ExternalInstallOptions GetConfigForYouTube() { options.app_info_factory = base::BindRepeating([]() { auto info = std::make_unique(); info->title = u"YouTube"; @@ -9149,7 +9314,7 @@ diff --git a/chrome/browser/web_applications/preinstalled_web_apps/youtube.cc b/ 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 +++ b/chrome/browser/web_applications/web_app_install_task.cc -@@ -55,7 +55,7 @@ namespace { +@@ -54,7 +54,7 @@ namespace { #if BUILDFLAG(IS_CHROMEOS_ASH) const char kChromeOsPlayPlatform[] = "chromeos_play"; const char kPlayIntentPrefix[] = @@ -9232,7 +9397,7 @@ diff --git a/chrome/chrome_cleaner/crash/crashpad_crash_reporter.cc b/chrome/chr diff --git a/chrome/chrome_cleaner/executables/chrome_cleaner_main.cc b/chrome/chrome_cleaner/executables/chrome_cleaner_main.cc --- a/chrome/chrome_cleaner/executables/chrome_cleaner_main.cc +++ b/chrome/chrome_cleaner/executables/chrome_cleaner_main.cc -@@ -451,7 +451,7 @@ int APIENTRY wWinMain(HINSTANCE, HINSTANCE, wchar_t*, int) { +@@ -449,7 +449,7 @@ int APIENTRY wWinMain(HINSTANCE, HINSTANCE, wchar_t*, int) { ::MessageBox(nullptr, L"Manually running this program is no longer supported. " L"Please visit " @@ -9610,7 +9775,7 @@ diff --git a/chrome/common/extensions/chrome_extensions_client.cc b/chrome/commo diff --git a/chrome/common/google_url_loader_throttle.cc b/chrome/common/google_url_loader_throttle.cc --- a/chrome/common/google_url_loader_throttle.cc +++ b/chrome/common/google_url_loader_throttle.cc -@@ -84,7 +84,7 @@ void GoogleURLLoaderThrottle::WillStartRequest( +@@ -85,7 +85,7 @@ void GoogleURLLoaderThrottle::WillStartRequest( } if (!dynamic_params_.allowed_domains_for_apps.empty() && @@ -9619,7 +9784,7 @@ diff --git a/chrome/common/google_url_loader_throttle.cc b/chrome/common/google_ request->cors_exempt_headers.SetHeader( safe_search_util::kGoogleAppsAllowedDomains, dynamic_params_.allowed_domains_for_apps); -@@ -138,7 +138,7 @@ void GoogleURLLoaderThrottle::WillRedirectRequest( +@@ -139,7 +139,7 @@ void GoogleURLLoaderThrottle::WillRedirectRequest( } if (!dynamic_params_.allowed_domains_for_apps.empty() && @@ -9631,7 +9796,7 @@ diff --git a/chrome/common/google_url_loader_throttle.cc b/chrome/common/google_ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc --- a/chrome/common/url_constants.cc +++ b/chrome/common/url_constants.cc -@@ -12,47 +12,47 @@ +@@ -12,50 +12,50 @@ namespace chrome { const char kAccessibilityLabelsLearnMoreURL[] = @@ -9646,6 +9811,9 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc - "https://support.google.com/accounts/accounts?p=safe-browsing"; + "https://support.9oo91e.qjz9zk/accounts/accounts?p=safe-browsing"; + const char kAppNotificationsBrowserSettingsURL[] = + "chrome://settings/content/notifications"; + const char kBluetoothAdapterOffHelpURL[] = - "https://support.google.com/chrome?p=bluetooth"; + "https://support.9oo91e.qjz9zk/chrome?p=bluetooth"; @@ -9692,7 +9860,7 @@ diff --git a/chrome/common/url_constants.cc b/chrome/common/url_constants.cc #endif // BUILDFLAG(IS_CHROMEOS_ASH) const char kChromeHelpViaMenuURL[] = -@@ -60,20 +60,20 @@ const char kChromeHelpViaMenuURL[] = +@@ -63,20 +63,20 @@ const char kChromeHelpViaMenuURL[] = #if BUILDFLAG(GOOGLE_CHROME_BRANDING) "chrome-extension://honijodknafkokifofgiaalefdiedpko/main.html"; #else @@ -9717,7 +9885,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) -@@ -95,235 +95,235 @@ const char kChromeSearchScheme[] = "chrome-search"; +@@ -98,235 +98,235 @@ const char kChromeSearchScheme[] = "chrome-search"; const char kChromeUIUntrustedNewTabPageUrl[] = "chrome-untrusted://new-tab-page/"; @@ -10020,7 +10188,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/"; -@@ -338,18 +338,18 @@ const char kChromeOSGestureEducationHelpURL[] = +@@ -341,18 +341,18 @@ const char kChromeOSGestureEducationHelpURL[] = "chrome://help-app/help/sub/3399710/id/9739838"; const char kChromePaletteHelpURL[] = @@ -10043,7 +10211,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"; -@@ -358,101 +358,101 @@ const char kArcTermsPathFormat[] = "arc_tos/%s/terms.html"; +@@ -361,101 +361,101 @@ const char kArcTermsPathFormat[] = "arc_tos/%s/terms.html"; const char kArcPrivacyPolicyPathFormat[] = "arc_tos/%s/privacy_policy.pdf"; @@ -10175,7 +10343,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"; -@@ -460,12 +460,12 @@ const char kWindowsXPVistaDeprecationURL[] = +@@ -463,12 +463,12 @@ const char kWindowsXPVistaDeprecationURL[] = #if BUILDFLAG(ENABLE_ONE_CLICK_SIGNIN) const char kChromeSyncLearnMoreURL[] = @@ -10214,7 +10382,7 @@ diff --git a/chrome/credential_provider/gaiacp/gaia_credential_base.cc b/chrome/ constexpr int kHttpTimeout = 3000; // in milliseconds // Names of keys used to fetch the custom attributes from google admin sdk -@@ -147,7 +147,7 @@ HRESULT GetExistingAccountMappingFromCD( +@@ -154,7 +154,7 @@ HRESULT GetExistingAccountMappingFromCD( std::string escape_url_encoded_email = net::EscapeUrlEncodedData(base::WideToUTF8(email), true); std::string get_cd_user_url = base::StringPrintf( @@ -10223,7 +10391,7 @@ diff --git a/chrome/credential_provider/gaiacp/gaia_credential_base.cc b/chrome/ "%s?projection=full&viewType=domain_public", escape_url_encoded_email.c_str()); LOGFN(VERBOSE) << "Encoded URL : " << get_cd_user_url; -@@ -469,9 +469,9 @@ HRESULT MakeUsernameForAccount(const base::Value& result, +@@ -476,9 +476,9 @@ HRESULT MakeUsernameForAccount(const base::Value& result, // Determine if the email is a consumer domain (gmail.com or googlemail.com). std::wstring email = GetDictString(result, kKeyEmail); std::transform(email.begin(), email.end(), email.begin(), ::tolower); @@ -10957,7 +11125,7 @@ diff --git a/chrome/renderer/resources/extensions/identity_custom_bindings.js b/ 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 -@@ -329,7 +329,7 @@ void MacNotificationServiceNS::CloseAllNotifications() { +@@ -326,7 +326,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 @@ -11231,7 +11399,7 @@ diff --git a/chromecast/net/connectivity_checker_impl.h b/chromecast/net/connect diff --git a/chromeos/components/camera_app_ui/camera_app_ui.cc b/chromeos/components/camera_app_ui/camera_app_ui.cc --- a/chromeos/components/camera_app_ui/camera_app_ui.cc +++ b/chromeos/components/camera_app_ui/camera_app_ui.cc -@@ -84,7 +84,7 @@ content::WebUIDataSource* CreateUntrustedCameraAppUIHTMLSource() { +@@ -85,7 +85,7 @@ content::WebUIDataSource* CreateUntrustedCameraAppUIHTMLSource() { untrusted_source->OverrideContentSecurityPolicy( network::mojom::CSPDirectiveName::ConnectSrc, @@ -11286,7 +11454,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 -@@ -73,7 +73,7 @@ export function getShortcutIdentifier(event) { +@@ -92,7 +92,7 @@ export function getShortcutIdentifier(event) { */ export function openHelp() { window.open( @@ -11298,7 +11466,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 -@@ -291,7 +291,7 @@ +@@ -294,7 +294,7 @@ Copy text @@ -11358,12 +11526,12 @@ diff --git a/chromeos/components/multidevice/stub_multidevice_util.cc b/chromeos diff --git a/chromeos/components/personalization_app/untrusted_personalization_app_ui_config.cc b/chromeos/components/personalization_app/untrusted_personalization_app_ui_config.cc --- a/chromeos/components/personalization_app/untrusted_personalization_app_ui_config.cc +++ b/chromeos/components/personalization_app/untrusted_personalization_app_ui_config.cc -@@ -87,7 +87,7 @@ class UntrustedPersonalizationAppUI : public ui::UntrustedWebUIController { +@@ -88,7 +88,7 @@ class UntrustedPersonalizationAppUI : public ui::UntrustedWebUIController { // Allow images only from this url. source->OverrideContentSecurityPolicy( network::mojom::CSPDirectiveName::ImgSrc, -- "img-src data: https://*.googleusercontent.com;"); -+ "img-src data: https://*.9oo91eusercontent.qjz9zk;"); +- "img-src 'self' data: https://*.googleusercontent.com;"); ++ "img-src 'self' data: https://*.9oo91eusercontent.qjz9zk;"); source->OverrideContentSecurityPolicy( network::mojom::CSPDirectiveName::ScriptSrc, "script-src 'self';"); @@ -11394,8 +11562,8 @@ diff --git a/chromeos/components/quick_answers/translation_result_loader.cc b/ch 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 -@@ -31,7 +31,7 @@ constexpr char kNetworkTrafficAnnotationProto[] = R"( - )"; +@@ -18,7 +18,7 @@ namespace { + constexpr int kIsMember = 1; constexpr char kServerUrl[] = - "https://crosdogpack-pa.googleapis.com/v1/isMember"; @@ -11418,7 +11586,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 -@@ -107,7 +107,7 @@ class CHROMEOS_EXPORT PpdProvider : public base::RefCounted { +@@ -109,7 +109,7 @@ class CHROMEOS_EXPORT PpdProvider : public base::RefCounted { base::TimeDelta cache_staleness_age = base::TimeDelta::FromDays(14); // Root of the ppd serving hierarchy. @@ -11619,7 +11787,7 @@ diff --git a/chromeos/services/device_sync/cryptauth_client_impl.cc b/chromeos/s diff --git a/chromeos/services/ime/constants.cc b/chromeos/services/ime/constants.cc --- a/chromeos/services/ime/constants.cc +++ b/chromeos/services/ime/constants.cc -@@ -40,7 +40,7 @@ const base::FilePath::CharType kLanguageDataDirName[] = +@@ -36,7 +36,7 @@ const base::FilePath::CharType kLanguageDataDirName[] = FILE_PATH_LITERAL("data"); #endif @@ -11877,7 +12045,7 @@ diff --git a/components/autofill_assistant/browser/autofill_assistant_onboarding + "https://www.95tat1c.qjz9zk/autofill_assistant/$1/onboarding_definition.json"; constexpr int kMaxDownloadSizeInBytes = 10 * 1024; - constexpr char kTrafficAnnotationId[] = "gstatic_onboarding_definition"; + diff --git a/components/autofill_assistant/browser/service/server_url_fetcher.cc b/components/autofill_assistant/browser/service/server_url_fetcher.cc --- a/components/autofill_assistant/browser/service/server_url_fetcher.cc +++ b/components/autofill_assistant/browser/service/server_url_fetcher.cc @@ -11893,7 +12061,7 @@ diff --git a/components/autofill_assistant/browser/service/server_url_fetcher.cc diff --git a/components/blocked_content/safe_browsing_triggered_popup_blocker.h b/components/blocked_content/safe_browsing_triggered_popup_blocker.h --- a/components/blocked_content/safe_browsing_triggered_popup_blocker.h +++ b/components/blocked_content/safe_browsing_triggered_popup_blocker.h -@@ -29,11 +29,11 @@ extern const base::Feature kAbusiveExperienceEnforce; +@@ -31,11 +31,11 @@ extern const base::Feature kAbusiveExperienceEnforce; constexpr char kAbusiveEnforceMessage[] = "Chrome prevented this site from opening a new tab or window. Learn more " @@ -11931,7 +12099,7 @@ diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/comp Forget this site? -@@ -584,7 +584,7 @@ +@@ -590,7 +590,7 @@ A site is using your camera and microphone @@ -11940,7 +12108,7 @@ diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/comp Tap to return to the site -@@ -707,7 +707,7 @@ +@@ -713,7 +713,7 @@ other {(+ # more)}} @@ -11982,7 +12150,7 @@ diff --git a/components/browsing_data/core/history_notice_utils.cc b/components/ diff --git a/components/captive_portal/core/captive_portal_detector.cc b/components/captive_portal/core/captive_portal_detector.cc --- a/components/captive_portal/core/captive_portal_detector.cc +++ b/components/captive_portal/core/captive_portal_detector.cc -@@ -39,7 +39,7 @@ GURL GetProbeUrl(const GURL& default_url) { +@@ -41,7 +41,7 @@ GURL GetProbeUrl(const GURL& default_url) { namespace captive_portal { const char CaptivePortalDetector::kDefaultURL[] = @@ -11994,7 +12162,7 @@ diff --git a/components/captive_portal/core/captive_portal_detector.cc b/compone diff --git a/components/certificate_transparency/data/log_list.json b/components/certificate_transparency/data/log_list.json --- a/components/certificate_transparency/data/log_list.json +++ b/components/certificate_transparency/data/log_list.json -@@ -3,14 +3,14 @@ +@@ -5,14 +5,14 @@ { "name": "Google", "email": [ @@ -12011,7 +12179,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "usable": { -@@ -26,7 +26,7 @@ +@@ -28,7 +28,7 @@ "description": "Google 'Argon2022' log", "log_id": "KXm+8J45OSHwVnOfY6V35b5XfZxgCvj5TV0mXCVdx4Q=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEeIPc6fGmuBg6AJkv/z7NFckmHvf/OqmjchZJ6wm2qN200keRDg352dWpi7CHnSV51BpQYAj1CQY5JuRAwrrDwg==", @@ -12020,7 +12188,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "usable": { -@@ -42,7 +42,7 @@ +@@ -44,7 +44,7 @@ "description": "Google 'Argon2023' log", "log_id": "6D7Q2j71BjUy51covIlryQPTy9ERa+zraeF3fW0GvW4=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE0JCPZFJOQqyEti5M8j13ALN3CAVHqkVM4yyOcKWCu2yye5yYeqDpEXYoALIgtM3TmHtNlifmt+4iatGwLpF3eA==", @@ -12029,7 +12197,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "usable": { -@@ -58,7 +58,7 @@ +@@ -60,7 +60,7 @@ "description": "Google 'Xenon2021' log", "log_id": "fT7y+I//iFVoJMLAyp5SiXkrxQ54CX8uapdomX4i8Nc=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAER+1MInu8Q39BwDZ5Rp9TwXhwm3ktvgJzpk/r7dDgGk7ZacMm3ljfcoIvP1E72T8jvyLT1bvdapylajZcTH6W5g==", @@ -12038,7 +12206,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "usable": { -@@ -74,7 +74,7 @@ +@@ -76,7 +76,7 @@ "description": "Google 'Xenon2022' log", "log_id": "RqVV63X6kSAwtaKJafTzfREsQXS+/Um4havy/HD+bUc=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE+WS9FSxAYlCVEzg8xyGwOrmPonoV14nWjjETAIdZvLvukPzIWBMKv6tDNlQjpIHNrUcUt1igRPpqoKDXw2MeKw==", @@ -12047,7 +12215,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "usable": { -@@ -90,7 +90,7 @@ +@@ -92,7 +92,7 @@ "description": "Google 'Xenon2023' log", "log_id": "rfe++nz/EMiLnT2cHj4YarRnKV3PsQwkyoWGNOvcgoo=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEchY+C+/vzj5g3ZXLY3q5qY1Kb2zcYYCmRV4vg6yU84WI0KV00HuO/8XuQqLwLZPjwtCymeLhQunSxgAnaXSuzg==", @@ -12056,7 +12224,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "usable": { -@@ -106,7 +106,7 @@ +@@ -108,7 +108,7 @@ "description": "Google 'Aviator' log", "log_id": "aPaY+B9kgr46jO65KB1M/HFRXWeT1ETRCmesu09P+8Q=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE1/TMabLkDpCjiupacAlP7xNi0I1JYP8bQFAHDG1xhtolSY1l4QgNRzRrvSe8liE+NPWHdjGxfx3JhTsN9x8/6Q==", @@ -12065,7 +12233,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "readonly": { -@@ -122,7 +122,7 @@ +@@ -124,7 +124,7 @@ "description": "Google 'Icarus' log", "log_id": "KTxRllTIOWW6qlD8WAfUt2+/WHopctykwwz05UVH9Hg=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETtK8v7MICve56qTHHDhhBOuV4IlUaESxZryCfk9QbG9co/CqPvTsgPDbCpp6oFtyAHwlDhnvr7JijXRD9Cb2FA==", @@ -12074,7 +12242,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "usable": { -@@ -134,7 +134,7 @@ +@@ -136,7 +136,7 @@ "description": "Google 'Pilot' log", "log_id": "pLkJkLQYWBSHuxOizGdwCjw1mAT5G9+443fNDsgN3BA=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfahLEimAoz2t01p3uMziiLOl/fHTDM0YDOhBRuiBARsV4UvxG2LdNgoIGLrtCzWE0J5APC2em4JlvR8EEEFMoA==", @@ -12083,7 +12251,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "usable": { -@@ -146,7 +146,7 @@ +@@ -148,7 +148,7 @@ "description": "Google 'Rocketeer' log", "log_id": "7ku9t3XOYLrhQmkfq+GeZqMPfl+wctiDAMR7iXqo/cs=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIFsYyDzBi7MxCAC/oJBXK7dHjG+1aLCOkHjpoHPqTyghLpzA9BYbqvnV16mAw04vUjyYASVGJCUoI3ctBcJAeg==", @@ -12092,7 +12260,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components "mmd": 86400, "state": { "usable": { -@@ -158,7 +158,7 @@ +@@ -160,7 +160,7 @@ "description": "Google 'Skydiver' log", "log_id": "u9nfvB+KcbWTlCOXqpJ7RzhXlQqrUugakJZkNo4e0YU=", "key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEmyGDvYXsRJsNyXSrYc9DjHsIa2xzb4UR7ZxVoV6mrc9iZB7xjI6+NrOiwH+P/xxkRmOFG6Jel20q37hTh58rA==", @@ -12133,10 +12301,27 @@ diff --git a/components/components_google_chrome_strings.grd b/components/compon +diff --git a/components/content_creation/notes/core/server/notes_repository.cc b/components/content_creation/notes/core/server/notes_repository.cc +--- a/components/content_creation/notes/core/server/notes_repository.cc ++++ b/components/content_creation/notes/core/server/notes_repository.cc +@@ -61,7 +61,7 @@ void NotesRepository::OnNotePublished(PublishNoteCallback callback, + + notes_saver_.reset(); + +- std::move(callback).Run("channel-staging.sandbox.google.com/" + ++ std::move(callback).Run("channel-staging.sandbox.9oo91e.qjz9zk/" + + save_response.account_id + "/" + + save_response.note_id); + } diff --git a/components/content_creation/notes/core/server/notes_server_base.cc b/components/content_creation/notes/core/server/notes_server_base.cc --- a/components/content_creation/notes/core/server/notes_server_base.cc +++ b/components/content_creation/notes/core/server/notes_server_base.cc -@@ -26,7 +26,7 @@ signin::ScopeSet NotesServerBase::GetAuthScopes() { +@@ -23,11 +23,11 @@ NotesServerBase::NotesServerBase( + NotesServerBase::~NotesServerBase() {} + + signin::ScopeSet NotesServerBase::GetAuthScopes() { +- return {"https://www.googleapis.com/auth/googlenow"}; ++ return {"https://www.9oo91eapis.qjz9zk/auth/googlenow"}; } GURL NotesServerBase::GetNotesServerURL() { @@ -12653,7 +12838,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 -@@ -49,10 +49,10 @@ namespace feed { +@@ -50,10 +50,10 @@ namespace feed { namespace { constexpr char kApplicationXProtobuf[] = "application/x-protobuf"; constexpr base::TimeDelta kNetworkTimeout = base::TimeDelta::FromSeconds(30); @@ -12666,7 +12851,7 @@ diff --git a/components/feed/core/v2/feed_network_impl.cc b/components/feed/core } GURL GetFeedQueryURL(feedwire::FeedQuery::RequestReason reason) { -@@ -61,16 +61,16 @@ GURL GetFeedQueryURL(feedwire::FeedQuery::RequestReason reason) { +@@ -62,16 +62,16 @@ GURL GetFeedQueryURL(feedwire::FeedQuery::RequestReason reason) { case feedwire::FeedQuery::SCHEDULED_REFRESH: case feedwire::FeedQuery::PREFETCHED_WEB_FEED: return GURL( @@ -12689,9 +12874,9 @@ 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 -@@ -65,7 +65,7 @@ const base::Feature kReliabilityLogging{"FeedReliabilityLogging", - const base::Feature kFeedInteractiveRefresh{"FeedInteractiveRefresh", - base::FEATURE_DISABLED_BY_DEFAULT}; +@@ -67,7 +67,7 @@ const base::Feature kFeedInteractiveRefresh{"FeedInteractiveRefresh", + const base::Feature kFeedImageMemoryCacheSizePercentage{ + "FeedImageMemoryCacheSizePercentage", base::FEATURE_DISABLED_BY_DEFAULT}; -const char kDefaultReferrerUrl[] = "https://www.google.com/"; +const char kDefaultReferrerUrl[] = "https://www.9oo91e.qjz9zk/"; @@ -12701,7 +12886,7 @@ diff --git a/components/feed/feed_feature_list.cc b/components/feed/feed_feature diff --git a/components/feedback/feedback_uploader.cc b/components/feedback/feedback_uploader.cc --- a/components/feedback/feedback_uploader.cc +++ b/components/feedback/feedback_uploader.cc -@@ -26,7 +26,7 @@ constexpr base::FilePath::CharType kFeedbackReportPath[] = +@@ -27,7 +27,7 @@ constexpr base::FilePath::CharType kFeedbackReportPath[] = FILE_PATH_LITERAL("Feedback Reports"); constexpr char kFeedbackPostUrl[] = @@ -12713,7 +12898,7 @@ diff --git a/components/feedback/feedback_uploader.cc b/components/feedback/feed diff --git a/components/flags_ui/resources/flags.html b/components/flags_ui/resources/flags.html --- a/components/flags_ui/resources/flags.html +++ b/components/flags_ui/resources/flags.html -@@ -56,11 +56,11 @@ +@@ -58,11 +58,11 @@ chrome://flags, which is not localized. -->

A brief description. -
This is a more thorough description of this histogram.
@@ -39145,7 +40350,7 @@ diff --git a/tools/metrics/histograms/extract_histograms.py b/tools/metrics/hist This histogram sports an enum value type. -@@ -352,7 +352,7 @@ def _ExtractOwners(node): +@@ -351,7 +351,7 @@ def _ExtractOwners(node): node: A DOM Element. Returns: @@ -39434,26 +40639,26 @@ diff --git a/tools/metrics/structured/model.py b/tools/metrics/structured/model. - owner@chromium.org + owner@ch40m1um.qjz9zk none + profile My project. - -@@ -69,7 +69,7 @@ class Model: +@@ -70,7 +70,7 @@ class Model: Calling str(model) will return a canonically formatted XML string. """ - OWNER_REGEX = r'^.+@(chromium\.org|google\.com)$' + OWNER_REGEX = r'^.+@(ch40m1um\.qjz9zk|9oo91e\.qjz9zk)$' NAME_REGEX = r'^[A-Za-z0-9_.]+$' - TYPE_REGEX = r'^(hmac-string|int)$' + TYPE_REGEX = r'^(hmac-string|raw-string|int)$' ID_REGEX = r'^(none|per-project|uma)$' -@@ -101,7 +101,7 @@ class Project: +@@ -103,7 +103,7 @@ class Project: A Project is initialized with an XML node representing one project, eg: - owner@chromium.org + owner@ch40m1um.qjz9zk none + project My project. - diff --git a/tools/metrics/ukm/PRESUBMIT.py b/tools/metrics/ukm/PRESUBMIT.py --- a/tools/metrics/ukm/PRESUBMIT.py +++ b/tools/metrics/ukm/PRESUBMIT.py @@ -39745,6 +40950,18 @@ diff --git a/tools/tracing/PRESUBMIT.py b/tools/tracing/PRESUBMIT.py details on the presubmit API built into gcl. """ +diff --git a/tools/tracing/rename_breakpad.py b/tools/tracing/rename_breakpad.py +--- a/tools/tracing/rename_breakpad.py ++++ b/tools/tracing/rename_breakpad.py +@@ -76,7 +76,7 @@ def _ExtractModuleIdIfValidBreakpad(file_path): + MODULE mac x86_64 1240DF90E9AC39038EF400 Chrome Name + + See this for more information: +- https://chromium.googlesource.com/breakpad/breakpad/+/HEAD/docs/symbol_files.md#records-1 ++ https://chromium.9oo91esource.qjz9zk/breakpad/breakpad/+/HEAD/docs/symbol_files.md#records-1 + + Args: + file_path: Path to breakpad file to extract module id from. diff --git a/tools/traffic_annotation/auditor/tests/extractor_outputs/good_partial_annotation.txt b/tools/traffic_annotation/auditor/tests/extractor_outputs/good_partial_annotation.txt --- a/tools/traffic_annotation/auditor/tests/extractor_outputs/good_partial_annotation.txt +++ b/tools/traffic_annotation/auditor/tests/extractor_outputs/good_partial_annotation.txt @@ -39784,7 +41001,7 @@ diff --git a/tools/traffic_annotation/sample_traffic_annotation.cc b/tools/traff diff --git a/tools/traffic_annotation/scripts/auditor/auditor.py b/tools/traffic_annotation/scripts/auditor/auditor.py --- a/tools/traffic_annotation/scripts/auditor/auditor.py +++ b/tools/traffic_annotation/scripts/auditor/auditor.py -@@ -277,7 +277,7 @@ def write_annotations_tsv_file(file_path: Path, annotations: List["Annotation"], +@@ -278,7 +278,7 @@ def write_annotations_tsv_file(file_path: Path, annotations: List["Annotation"], line += "\t{}".format(escape_for_tsv(annotation.proto.comments)) # Source. source = annotation.proto.source @@ -39793,7 +41010,7 @@ diff --git a/tools/traffic_annotation/scripts/auditor/auditor.py b/tools/traffic line += "\t{}{}?l={}".format(code_search_link, source.file, source.line) # ID Hash code. line += "\t{}".format(annotation.unique_id_hash_code) -@@ -2041,7 +2041,7 @@ if __name__ == "__main__": +@@ -2028,7 +2028,7 @@ if __name__ == "__main__": print("Starting traffic annotation auditor. This may take a few minutes.") print("If you find a bug in this script, file bugs against the 'Enterprise>" @@ -39916,7 +41133,7 @@ diff --git a/tools/web_dev_style/css_checker.py b/tools/web_dev_style/css_checke for the rules we're checking against here. """ -@@ -457,7 +457,7 @@ class CSSChecker(object): +@@ -474,7 +474,7 @@ class CSSChecker(object): }, { 'desc': 'Use -start/end instead of -left/right ' \ @@ -40147,7 +41364,7 @@ diff --git a/ui/accessibility/extensions/chromevoxclassic/manifest.json.jinja2 b - "update_url": "https://clients2.google.com/service/update2/crx", + "update_url": "https://clients2.9oo91e.qjz9zk/service/update2/crx", "version": "53.0.2784.11", - "web_accessible_resources": [ "chromevox/background/keymaps/next_keymap.json", "chromevox/injected/api.js", "chromevox/injected/api_util.js", "chromevox/injected/mathjax.js", "chromevox/injected/mathjax_external_util.js", "shadydom.js" ] + "web_accessible_resources": [ "chromevox/background/keymaps/next_keymap.json", "chromevox/injected/api.js", "chromevox/injected/api_util.js", "chromevox/injected/mathjax.js", "chromevox/injected/mathjax_external_util.js", "webcomponents-bundle.js" ] } diff --git a/ui/accessibility/extensions/strings/accessibility_extensions_strings.grd b/ui/accessibility/extensions/strings/accessibility_extensions_strings.grd --- a/ui/accessibility/extensions/strings/accessibility_extensions_strings.grd @@ -40260,15 +41477,14 @@ diff --git a/ui/events/keycodes/keyboard_code_conversion_mac.mm b/ui/events/keyc diff --git a/ui/file_manager/audio_player/manifest.json b/ui/file_manager/audio_player/manifest.json --- a/ui/file_manager/audio_player/manifest.json +++ b/ui/file_manager/audio_player/manifest.json -@@ -49,7 +49,7 @@ +@@ -47,6 +47,6 @@ + "background": { + "page": "background.html" }, - // enhhojjnijigcajfphajepfemndkmdlo is the Dev Media Router component extension ID. - // pkedcjkdefgpdelpbcmbmeomcjbeemfm is the Stable Media Router component extension ID. -- "content_security_policy": "default-src 'none'; script-src 'self' blob: filesystem: chrome://resources chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj chrome-extension://enhhojjnijigcajfphajepfemndkmdlo chrome-extension://pkedcjkdefgpdelpbcmbmeomcjbeemfm; style-src 'self' blob: filesystem: chrome://resources 'unsafe-inline'; img-src 'self' blob: filesystem: chrome://theme chrome://resources data: https://www.googledrive.com; media-src 'self' blob: filesystem:; connect-src chrome://resources ; object-src 'self' blob: filesystem:; font-src chrome://resources;" -+ "content_security_policy": "default-src 'none'; script-src 'self' blob: filesystem: chrome://resources chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj chrome-extension://enhhojjnijigcajfphajepfemndkmdlo chrome-extension://pkedcjkdefgpdelpbcmbmeomcjbeemfm; style-src 'self' blob: filesystem: chrome://resources 'unsafe-inline'; img-src 'self' blob: filesystem: chrome://theme chrome://resources data: https://www.9oo91edrive.qjz9zk; media-src 'self' blob: filesystem:; connect-src chrome://resources ; object-src 'self' blob: filesystem:; font-src chrome://resources;" +- "content_security_policy": "default-src 'none'; script-src 'self' blob: filesystem: chrome://resources chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj; style-src 'self' blob: filesystem: chrome://resources 'unsafe-inline'; img-src 'self' blob: filesystem: chrome://theme chrome://resources data: https://www.googledrive.com; media-src 'self' blob: filesystem:; connect-src chrome://resources ; object-src 'self' blob: filesystem:; font-src chrome://resources;" ++ "content_security_policy": "default-src 'none'; script-src 'self' blob: filesystem: chrome://resources chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj; style-src 'self' blob: filesystem: chrome://resources 'unsafe-inline'; img-src 'self' blob: filesystem: chrome://theme chrome://resources data: https://www.9oo91edrive.qjz9zk; media-src 'self' blob: filesystem:; connect-src chrome://resources ; object-src 'self' blob: filesystem:; font-src chrome://resources;" } } - diff --git a/ui/file_manager/file_manager/common/js/mock_chrome.js b/ui/file_manager/file_manager/common/js/mock_chrome.js --- a/ui/file_manager/file_manager/common/js/mock_chrome.js +++ b/ui/file_manager/file_manager/common/js/mock_chrome.js @@ -40317,7 +41533,7 @@ diff --git a/ui/file_manager/file_manager/manifest.json b/ui/file_manager/file_m "metricsPrivate", "notifications", "power", -@@ -233,6 +233,6 @@ +@@ -234,6 +234,6 @@ "page": "background.html" }, // chrome-extension://pmfjbimdmchhbnneeidfognadeopoehp is the image loader extension. @@ -40339,12 +41555,12 @@ diff --git a/ui/file_manager/image_loader/piex/Makefile b/ui/file_manager/image_ diff --git a/ui/file_manager/video_player/manifest.json b/ui/file_manager/video_player/manifest.json --- a/ui/file_manager/video_player/manifest.json +++ b/ui/file_manager/video_player/manifest.json -@@ -63,6 +63,6 @@ - // pkedcjkdefgpdelpbcmbmeomcjbeemfm is the Stable Media Router component extension ID. +@@ -61,6 +61,6 @@ + }, // ljoplibgfehghmibaoaepfagnmbbfiga is the ui/file_manager/integration_tests component extension ID. // connect-src for Polymer: crbug.com/1022018 -- "content_security_policy": "default-src 'none'; script-src 'self' blob: filesystem: chrome://resources chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj chrome-extension://enhhojjnijigcajfphajepfemndkmdlo chrome-extension://pkedcjkdefgpdelpbcmbmeomcjbeemfm chrome-extension://ljoplibgfehghmibaoaepfagnmbbfiga; style-src 'self' blob: filesystem: chrome://resources 'unsafe-inline'; img-src 'self' blob: filesystem: chrome://theme chrome://resources data: https://www.googledrive.com; media-src 'self' blob: filesystem:; object-src 'self' blob: filesystem:; font-src chrome://resources; connect-src chrome://resources;" -+ "content_security_policy": "default-src 'none'; script-src 'self' blob: filesystem: chrome://resources chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj chrome-extension://enhhojjnijigcajfphajepfemndkmdlo chrome-extension://pkedcjkdefgpdelpbcmbmeomcjbeemfm chrome-extension://ljoplibgfehghmibaoaepfagnmbbfiga; style-src 'self' blob: filesystem: chrome://resources 'unsafe-inline'; img-src 'self' blob: filesystem: chrome://theme chrome://resources data: https://www.9oo91edrive.qjz9zk; media-src 'self' blob: filesystem:; object-src 'self' blob: filesystem:; font-src chrome://resources; connect-src chrome://resources;" +- "content_security_policy": "default-src 'none'; script-src 'self' blob: filesystem: chrome://resources chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj chrome-extension://ljoplibgfehghmibaoaepfagnmbbfiga; style-src 'self' blob: filesystem: chrome://resources 'unsafe-inline'; img-src 'self' blob: filesystem: chrome://theme chrome://resources data: https://www.googledrive.com; media-src 'self' blob: filesystem:; object-src 'self' blob: filesystem:; font-src chrome://resources; connect-src chrome://resources;" ++ "content_security_policy": "default-src 'none'; script-src 'self' blob: filesystem: chrome://resources chrome-extension://hhaomjibdihmijegdhdafkllkbggdgoj chrome-extension://ljoplibgfehghmibaoaepfagnmbbfiga; style-src 'self' blob: filesystem: chrome://resources 'unsafe-inline'; img-src 'self' blob: filesystem: chrome://theme chrome://resources data: https://www.9oo91edrive.qjz9zk; media-src 'self' blob: filesystem:; object-src 'self' blob: filesystem:; font-src chrome://resources; connect-src chrome://resources;" } } diff --git a/ui/gl/gl_image_io_surface_egl.mm b/ui/gl/gl_image_io_surface_egl.mm diff --git a/build/patches/Block-gateway-attacks-via-websockets.patch b/build/patches/Block-gateway-attacks-via-websockets.patch index 0bc0d142..50296edc 100644 --- a/build/patches/Block-gateway-attacks-via-websockets.patch +++ b/build/patches/Block-gateway-attacks-via-websockets.patch @@ -3,7 +3,6 @@ Date: Tue, 28 Jul 2020 12:28:58 +0200 Subject: Block gateway attacks via websockets --- - content/public/common/content_features.cc | 2 +- .../renderer/core/loader/base_fetch_context.h | 1 + .../core/loader/frame_fetch_context.cc | 18 +++++++++++++ .../core/loader/frame_fetch_context.h | 1 + @@ -13,20 +12,8 @@ Subject: Block gateway attacks via websockets .../websockets/websocket_channel_impl.cc | 5 ++++ .../modules/websockets/websocket_common.cc | 27 +++++++++++++++++++ .../modules/websockets/websocket_common.h | 4 +++ - 10 files changed, 77 insertions(+), 3 deletions(-) + 9 files changed, 76 insertions(+), 2 deletions(-) -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 -@@ -123,7 +123,7 @@ const base::Feature kBlockCredentialedSubresources{ - // - https://wicg.github.io/cors-rfc1918/#integration-fetch - // - kBlockInsecurePrivateNetworkRequestsForNavigations - const base::Feature kBlockInsecurePrivateNetworkRequests{ -- "BlockInsecurePrivateNetworkRequests", base::FEATURE_DISABLED_BY_DEFAULT}; -+ "BlockInsecurePrivateNetworkRequests", base::FEATURE_ENABLED_BY_DEFAULT}; - - // Enables use of the PrivateNetworkAccessNonSecureContextsAllowed deprecation - // trial. This is a necessary yet insufficient condition: documents that wish to diff --git a/third_party/blink/renderer/core/loader/base_fetch_context.h b/third_party/blink/renderer/core/loader/base_fetch_context.h --- a/third_party/blink/renderer/core/loader/base_fetch_context.h +++ b/third_party/blink/renderer/core/loader/base_fetch_context.h diff --git a/build/patches/Block-qjz9zk-or-trk-requests.patch b/build/patches/Block-qjz9zk-or-trk-requests.patch index c6cbce0a..d9576818 100644 --- a/build/patches/Block-qjz9zk-or-trk-requests.patch +++ b/build/patches/Block-qjz9zk-or-trk-requests.patch @@ -104,7 +104,7 @@ diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/ur diff --git a/content/browser/child_process_security_policy_impl.cc b/content/browser/child_process_security_policy_impl.cc --- a/content/browser/child_process_security_policy_impl.cc +++ b/content/browser/child_process_security_policy_impl.cc -@@ -810,6 +810,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl() +@@ -819,6 +819,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl() #endif // BUILDFLAG(ENABLE_WEBSOCKETS) RegisterWebSafeScheme(url::kFtpScheme); RegisterWebSafeScheme(url::kDataScheme); @@ -115,7 +115,7 @@ diff --git a/content/browser/child_process_security_policy_impl.cc b/content/bro diff --git a/net/BUILD.gn b/net/BUILD.gn --- a/net/BUILD.gn +++ b/net/BUILD.gn -@@ -1038,6 +1038,8 @@ component("net") { +@@ -1042,6 +1042,8 @@ component("net") { "url_request/url_request_http_job.cc", "url_request/url_request_http_job.h", "url_request/url_request_interceptor.cc", @@ -225,7 +225,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/url_request_context_builder.cc --- a/net/url_request/url_request_context_builder.cc +++ b/net/url_request/url_request_context_builder.cc -@@ -45,6 +45,7 @@ +@@ -46,6 +46,7 @@ #include "net/quic/quic_stream_factory.h" #include "net/ssl/ssl_config_service_defaults.h" #include "net/url_request/static_http_user_agent_settings.h" @@ -233,7 +233,7 @@ diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/ur #include "net/url_request/url_request_context.h" #include "net/url_request/url_request_context_storage.h" #include "net/url_request/url_request_job_factory.h" -@@ -551,6 +552,8 @@ std::unique_ptr URLRequestContextBuilder::Build() { +@@ -552,6 +553,8 @@ std::unique_ptr URLRequestContextBuilder::Build() { job_factory->SetProtocolHandler(scheme_handler.first, std::move(scheme_handler.second)); } diff --git a/build/patches/Bromite-AdBlockUpdaterService.patch b/build/patches/Bromite-AdBlockUpdaterService.patch index 5694ce99..1782fc1a 100644 --- a/build/patches/Bromite-AdBlockUpdaterService.patch +++ b/build/patches/Bromite-AdBlockUpdaterService.patch @@ -36,7 +36,7 @@ Fix RestoreForeignSessionTab by recreating the tab (issue #681) components/component_updater/BUILD.gn | 7 + .../adblock_updater_service.cc | 272 ++++++++++++++++++ .../adblock_updater_service.h | 99 +++++++ - .../download_filters_task.cc | 223 ++++++++++++++ + .../download_filters_task.cc | 224 +++++++++++++++ .../component_updater/download_filters_task.h | 129 +++++++++ ...ent_subresource_filter_throttle_manager.cc | 11 + .../content/browser/ruleset_service.cc | 33 ++- @@ -47,7 +47,7 @@ Fix RestoreForeignSessionTab by recreating the tab (issue #681) .../core/common/common_features.cc | 2 +- .../core/common/indexed_ruleset.cc | 5 +- .../navigation_throttle_runner.cc | 5 - - 38 files changed, 1157 insertions(+), 140 deletions(-) + 38 files changed, 1158 insertions(+), 140 deletions(-) create mode 100644 chrome/android/java/res/layout/adblock_editor.xml create mode 100644 chrome/android/java/res/xml/adblock_preferences.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/AdBlockEditor.java @@ -60,7 +60,7 @@ Fix RestoreForeignSessionTab by recreating the tab (issue #681) 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 -@@ -565,6 +565,7 @@ chrome_java_resources = [ +@@ -566,6 +566,7 @@ chrome_java_resources = [ "java/res/layout/account_chooser_dialog_title.xml", "java/res/layout/account_divider_preference.xml", "java/res/layout/account_management_account_row.xml", @@ -68,7 +68,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja "java/res/layout/auto_sign_in_first_run_dialog.xml", "java/res/layout/autofill_billing_address_dropdown.xml", "java/res/layout/autofill_card_unmask_prompt.xml", -@@ -773,6 +774,7 @@ chrome_java_resources = [ +@@ -776,6 +777,7 @@ chrome_java_resources = [ "java/res/xml/about_chrome_preferences.xml", "java/res/xml/accessibility_preferences.xml", "java/res/xml/account_management_preferences.xml", @@ -79,7 +79,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 -@@ -984,6 +984,8 @@ chrome_java_sources = [ +@@ -991,6 +991,8 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/payments/ui/ShoppingCart.java", "java/src/org/chromium/chrome/browser/permissions/PermissionSettingsBridge.java", "java/src/org/chromium/chrome/browser/photo_picker/DecoderServiceImpl.java", @@ -358,7 +358,7 @@ new file mode 100644 +import androidx.preference.PreferenceFragmentCompat; +import org.chromium.components.browser_ui.settings.ChromeSwitchPreference; + -+import org.chromium.components.embedder_support.browser_context.BrowserContextHandle; ++import org.chromium.content_public.browser.BrowserContextHandle; +import org.chromium.components.browser_ui.site_settings.SiteSettingsPreferenceFragment; +import org.chromium.components.browser_ui.site_settings.WebsitePreferenceBridge; +import org.chromium.components.content_settings.ContentSettingsType; @@ -423,7 +423,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabMod 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 -@@ -10718,6 +10718,16 @@ Please help our engineers fix this problem. Tell us what happened right before y +@@ -10805,6 +10805,16 @@ Please help our engineers fix this problem. Tell us what happened right before y Never show this again.
@@ -495,7 +495,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc --- a/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc -@@ -1042,6 +1042,26 @@ BrowserProcessImpl::component_updater() { +@@ -1053,6 +1053,26 @@ BrowserProcessImpl::component_updater() { return component_updater_.get(); } @@ -544,7 +544,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc --- a/chrome/browser/chrome_browser_main.cc +++ b/chrome/browser/chrome_browser_main.cc -@@ -1654,6 +1654,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { +@@ -1626,6 +1626,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { speech::SodaInstaller::GetInstance()->Init(profile_->GetPrefs(), browser_process_->local_state()); #endif // !defined(OS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH) @@ -556,15 +556,15 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/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 -@@ -77,7 +77,6 @@ +@@ -61,7 +61,6 @@ + #include "chrome/browser/hid/chrome_hid_delegate.h" #include "chrome/browser/interstitials/enterprise_util.h" - #include "chrome/browser/lifetime/application_lifetime.h" #include "chrome/browser/lifetime/browser_shutdown.h" -#include "chrome/browser/lookalikes/lookalike_url_navigation_throttle.h" #include "chrome/browser/media/audio_service_util.h" #include "chrome/browser/media/router/media_router_feature.h" #include "chrome/browser/media/webrtc/audio_debug_recordings_handler.h" -@@ -3957,16 +3956,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( +@@ -3907,16 +3906,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( content::NavigationHandle* handle) { std::vector> throttles; @@ -581,7 +581,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch #if BUILDFLAG(IS_CHROMEOS_ASH) MaybeAddThrottle( ash::WebTimeLimitNavigationThrottle::MaybeCreateThrottleFor(handle), -@@ -4073,10 +4062,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( +@@ -4022,10 +4011,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( &throttles); #endif @@ -620,7 +620,7 @@ diff --git a/chrome/browser/flags/android/cached_feature_flags.cc b/chrome/brows 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 -@@ -254,6 +254,14 @@ public class CachedFeatureFlags { +@@ -265,6 +265,14 @@ public class CachedFeatureFlags { ChromeFeatureList.isEnabled(ChromeFeatureList.BACKGROUND_THREAD_POOL)); } @@ -635,7 +635,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f /** * Caches flags that must take effect on startup but are set via native code. */ -@@ -438,5 +446,7 @@ public class CachedFeatureFlags { +@@ -470,5 +478,7 @@ public class CachedFeatureFlags { @NativeMethods interface Natives { boolean isNetworkServiceWarmUpEnabled(); @@ -646,7 +646,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f 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 -@@ -337,6 +337,8 @@ SystemNetworkContextManager::SystemNetworkContextManager( +@@ -349,6 +349,8 @@ SystemNetworkContextManager::SystemNetworkContextManager( SSLConfigServiceManager::CreateDefaultManager(local_state_)), proxy_config_monitor_(local_state_), stub_resolver_config_reader_(local_state_) { @@ -655,7 +655,7 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/brows #if !defined(OS_ANDROID) // QuicAllowed was not part of Android policy. const base::Value* value = -@@ -407,6 +409,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() { +@@ -419,6 +421,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() { void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) { StubResolverConfigReader::RegisterPrefs(registry); @@ -705,7 +705,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 -@@ -2168,6 +2168,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled"; +@@ -2188,6 +2188,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled"; // capture devices without prompt. const char kAudioCaptureAllowedUrls[] = "hardware.audio_capture_allowed_urls"; @@ -1135,7 +1135,7 @@ diff --git a/components/component_updater/download_filters_task.cc b/components/ new file mode 100644 --- /dev/null +++ b/components/component_updater/download_filters_task.cc -@@ -0,0 +1,223 @@ +@@ -0,0 +1,224 @@ +/* + This file is part of Bromite. + @@ -1164,6 +1164,7 @@ new file mode 100644 +#include "net/base/load_flags.h" +#include "url/gurl.h" +#include "services/network/public/cpp/resource_request.h" ++#include "services/network/public/mojom/url_response_head.mojom.h" + +namespace adblock_updater { + @@ -1496,7 +1497,7 @@ new file mode 100644 diff --git a/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc b/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc --- a/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc +++ b/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc -@@ -627,6 +627,17 @@ ContentSubresourceFilterThrottleManager:: +@@ -651,6 +651,17 @@ ContentSubresourceFilterThrottleManager:: throttle->NotifyPageActivationWithRuleset(EnsureRulesetHandle(), ad_tagging_state); } @@ -1632,7 +1633,7 @@ diff --git a/components/subresource_filter/content/browser/ruleset_service.cc b/ diff --git a/components/subresource_filter/content/browser/ruleset_service.h b/components/subresource_filter/content/browser/ruleset_service.h --- a/components/subresource_filter/content/browser/ruleset_service.h +++ b/components/subresource_filter/content/browser/ruleset_service.h -@@ -181,7 +181,7 @@ class RulesetService : public base::SupportsWeakPtr { +@@ -180,7 +180,7 @@ class RulesetService : public base::SupportsWeakPtr { // // Virtual so that it can be mocked out in tests. virtual void IndexAndStoreAndPublishRulesetIfNeeded( @@ -1641,7 +1642,7 @@ diff --git a/components/subresource_filter/content/browser/ruleset_service.h b/c // Get the ruleset version associated with the current local_state_. IndexedRulesetVersion GetMostRecentlyIndexedVersion() const; -@@ -214,6 +214,11 @@ class RulesetService : public base::SupportsWeakPtr { +@@ -213,6 +213,11 @@ class RulesetService : public base::SupportsWeakPtr { const base::FilePath& indexed_ruleset_base_dir, const UnindexedRulesetInfo& unindexed_ruleset_info); diff --git a/build/patches/Enable-update-notification.patch b/build/patches/Bromite-auto-updater.patch similarity index 90% rename from build/patches/Enable-update-notification.patch rename to build/patches/Bromite-auto-updater.patch index 3109cc21..0ccd2189 100644 --- a/build/patches/Enable-update-notification.patch +++ b/build/patches/Bromite-auto-updater.patch @@ -1,22 +1,22 @@ From: uazo Date: Thu, 7 Oct 2021 14:27:12 +0000 -Subject: Enable update notification +Subject: Bromite auto updater -Enable checking for new version, with proxy support +Enable checking for new versions, with notifications and proxy support --- .../java/templates/BuildConfig.template | 2 + build/config/android/rules.gni | 3 + chrome/android/chrome_java_sources.gni | 1 + .../java/res/xml/about_chrome_preferences.xml | 5 + - .../about_settings/AboutChromeSettings.java | 27 ++- - .../chrome/browser/omaha/OmahaBase.java | 44 +++- + .../about_settings/AboutChromeSettings.java | 28 ++- + .../chrome/browser/omaha/OmahaBase.java | 47 +++- .../chrome/browser/omaha/UpdateConfigs.java | 6 +- - .../browser/omaha/UpdateStatusProvider.java | 36 ++-- + .../browser/omaha/UpdateStatusProvider.java | 33 ++- .../browser/omaha/VersionNumberGetter.java | 3 +- .../inline/BromiteInlineUpdateController.java | 204 ++++++++++++++++++ .../inline/InlineUpdateControllerFactory.java | 8 +- chrome/browser/endpoint_fetcher/BUILD.gn | 2 + - .../endpoint_fetcher/endpoint_fetcher.cc | 125 +++++++++++ + .../endpoint_fetcher/endpoint_fetcher.cc | 129 +++++++++++ .../endpoint_fetcher/endpoint_fetcher.h | 23 +- .../endpoint_fetcher/EndpointFetcher.java | 11 + .../EndpointHeaderResponse.java | 31 +++ @@ -24,7 +24,7 @@ Enable checking for new version, with proxy support chrome/browser/flag_descriptions.cc | 5 +- .../flags/android/chrome_feature_list.cc | 2 +- .../strings/android_chrome_strings.grd | 8 +- - 20 files changed, 511 insertions(+), 37 deletions(-) + 20 files changed, 516 insertions(+), 37 deletions(-) create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java create mode 100644 chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointHeaderResponse.java @@ -54,7 +54,7 @@ diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni 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 -@@ -880,6 +880,7 @@ chrome_java_sources = [ +@@ -887,6 +887,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java", "java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java", "java/src/org/chromium/chrome/browser/omaha/inline/NoopInlineUpdateController.java", @@ -80,7 +80,7 @@ diff --git a/chrome/android/java/res/xml/about_chrome_preferences.xml b/chrome/a diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/about_settings/AboutChromeSettings.java -@@ -21,11 +21,16 @@ import org.chromium.ui.widget.Toast; +@@ -21,14 +21,20 @@ import org.chromium.ui.widget.Toast; import java.util.Calendar; @@ -98,13 +98,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/ private static final int TAPS_FOR_DEVELOPER_SETTINGS = 7; private static final String PREF_APPLICATION_VERSION = "application_version"; -@@ -59,6 +64,13 @@ public class AboutChromeSettings ++ private static final String PREF_ALLOW_INLINE_UPDATE = "allow_inline_update"; + private static final String PREF_OS_VERSION = "os_version"; + private static final String PREF_LEGAL_INFORMATION = "legal_information"; + +@@ -59,6 +65,13 @@ public class AboutChromeSettings p = findPreference(PREF_LEGAL_INFORMATION); int currentYear = Calendar.getInstance().get(Calendar.YEAR); p.setSummary(getString(R.string.legal_information_summary, currentYear)); + + ChromeSwitchPreference allowInlineUpdate = -+ (ChromeSwitchPreference) findPreference(OmahaBase.PREF_ALLOW_INLINE_UPDATE); ++ (ChromeSwitchPreference) findPreference(PREF_ALLOW_INLINE_UPDATE); + allowInlineUpdate.setChecked( + OmahaBase.getSharedPreferences() + .getBoolean(OmahaBase.PREF_ALLOW_INLINE_UPDATE, false)); @@ -112,7 +116,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/ } /** -@@ -122,4 +134,17 @@ public class AboutChromeSettings +@@ -122,4 +135,17 @@ public class AboutChromeSettings } return true; } @@ -120,7 +124,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/about_settings/ + @Override + public boolean onPreferenceChange(Preference preference, Object newValue) { + String key = preference.getKey(); -+ if (OmahaBase.PREF_ALLOW_INLINE_UPDATE.equals(key)) { ++ if (PREF_ALLOW_INLINE_UPDATE.equals(key)) { + SharedPreferences.Editor sharedPreferenceEditor = OmahaBase.getSharedPreferences().edit(); + sharedPreferenceEditor.putBoolean(OmahaBase.PREF_ALLOW_INLINE_UPDATE, (boolean) newValue); + sharedPreferenceEditor.apply(); @@ -149,38 +153,40 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase - static final String PREF_TIMESTAMP_OF_REQUEST = "timestampOfRequest"; + public static final String PREF_TIMESTAMP_OF_REQUEST = "timestampOfRequest"; + public static final String PREF_LATEST_MODIFIED_VERSION = "latestModifiedVersion"; -+ public static final String PREF_ALLOW_INLINE_UPDATE = "allow_inline_update"; ++ public static final String PREF_ALLOW_INLINE_UPDATE = "allowInlineUpdate"; static final int MIN_API_JOB_SCHEDULER = Build.VERSION_CODES.M; -@@ -157,8 +161,9 @@ public class OmahaBase { - } +@@ -158,7 +162,8 @@ public class OmahaBase { /** See {@link #sIsDisabled}. */ -+ // do not enable version control with Omaha Update Server static boolean isDisabled() { - return sIsDisabled; ++ // do not enable version control via Omaha Update Server + return true; } /** -@@ -630,4 +635,39 @@ public class OmahaBase { +@@ -630,4 +635,42 @@ public class OmahaBase { // updateStatus is only used for the on-demand check. null); } + + public static boolean isNewVersionAvailableByVersion(String latestVersionString) { + VersionNumber mCurrentProductVersion = VersionNumber.fromString(ChromeVersionInfo.getProductVersion()); -+ if (mCurrentProductVersion == null || latestVersionString == null) ++ if (mCurrentProductVersion == null) { ++ Log.e(TAG, "BromiteUpdater: current product version is null"); + return false; ++ } + + VersionNumber latestVersion = VersionNumber.fromString(latestVersionString); -+ if (latestVersion == null) return false; ++ if (latestVersion == null) { ++ Log.e(TAG, "BromiteUpdater: invalid latest version '%s'", latestVersionString); ++ return false; ++ } + -+ Log.i(TAG, "isNewVersionAvailable: CurrentProductVersion: %s", -+ mCurrentProductVersion.toString()); -+ Log.i(TAG, "isNewVersionAvailable: LatestVersion: %s", -+ latestVersion.toString()); ++ Log.i(TAG, "BromiteUpdater: currentProductVersion=%s, latestVersion=%s", ++ mCurrentProductVersion.toString(), latestVersion.toString()); + + return mCurrentProductVersion.isSmallerThan(latestVersion); + } @@ -212,7 +218,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateCon "update_notification_experimental_context"; - private static final long DEFAULT_UPDATE_NOTIFICATION_INTERVAL = 21 * DateUtils.DAY_IN_MILLIS; -+ private static final long DEFAULT_UPDATE_NOTIFICATION_INTERVAL = 7 * DateUtils.DAY_IN_MILLIS; ++ private static final long DEFAULT_UPDATE_NOTIFICATION_INTERVAL = 3 * DateUtils.DAY_IN_MILLIS; private static final long DEFAULT_UPDATE_ATTRIBUTION_WINDOW_MS = 2 * DateUtils.DAY_IN_MILLIS; /** Possible update flow configurations. */ @@ -248,24 +254,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateSta /** * Provides the current update state for Chrome. This update state is asynchronously determined and * can change as Chrome runs. -@@ -112,6 +118,8 @@ public class UpdateStatusProvider implements ActivityStateListener { - */ - public String latestUnsupportedVersion; - -+ public long latestLastModifiedBuildTime; -+ - /** - * Whether or not we are currently trying to simulate the update. Used to ignore other - * update signals. -@@ -133,6 +141,7 @@ public class UpdateStatusProvider implements ActivityStateListener { - latestUnsupportedVersion = other.latestUnsupportedVersion; - mIsSimulated = other.mIsSimulated; - mIsInlineSimulated = other.mIsInlineSimulated; -+ latestLastModifiedBuildTime = other.latestLastModifiedBuildTime; - } - } - -@@ -339,8 +348,7 @@ public class UpdateStatusProvider implements ActivityStateListener { +@@ -339,8 +345,7 @@ public class UpdateStatusProvider implements ActivityStateListener { case UpdateConfigs.UpdateFlowConfiguration.NEVER_SHOW: return UpdateState.NONE; case UpdateConfigs.UpdateFlowConfiguration.INLINE_ONLY: @@ -275,7 +264,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateSta return inlineState; case UpdateConfigs.UpdateFlowConfiguration.BEST_EFFORT: if (omahaState != UpdateState.UPDATE_AVAILABLE) return omahaState; -@@ -415,24 +423,12 @@ public class UpdateStatusProvider implements ActivityStateListener { +@@ -415,24 +420,12 @@ public class UpdateStatusProvider implements ActivityStateListener { private UpdateStatus getRealStatus(Context context) { UpdateStatus status = new UpdateStatus(); @@ -301,7 +290,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateSta + status.latestVersion = preferences.getString(OmahaBase.PREF_LATEST_MODIFIED_VERSION, ""); + + status.updateState = UpdateState.NONE; -+ if (OmahaBase.isNewVersionAvailableByVersion(status.latestVersion)) { ++ if (status.latestVersion != null && status.latestVersion.length() != 0 && OmahaBase.isNewVersionAvailableByVersion(status.latestVersion)) { + status.updateState = UpdateState.INLINE_UPDATE_AVAILABLE; } @@ -314,7 +303,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNu /** If false, OmahaClient will never report that a newer version is available. */ - private static boolean sEnableUpdateDetection = true; -+ // it must be false to not enable version control with Omaha server ++ // it must be false to disable version control via Omaha server + private static boolean sEnableUpdateDetection = false; protected VersionNumberGetter() { } @@ -386,6 +375,7 @@ new file mode 100644 +class BromiteInlineUpdateController implements InlineUpdateController { + + private static final String TAG = "BromiteInlineUpdateController"; ++ private final String REDIRECT_URL_PREFIX = "https://github.com/bromite/bromite/releases/download/"; + private final String UPDATE_VERSION_URL = "https://github.com/bromite/bromite/releases/latest/download/"; + + private String getDownloadUrl() { @@ -433,7 +423,7 @@ new file mode 100644 + private void pullCurrentState() { + if (OmahaBase.getSharedPreferences() + .getBoolean(OmahaBase.PREF_ALLOW_INLINE_UPDATE, false) == false) { -+ Log.i(TAG, "Checking for update disabled by user"); ++ Log.i(TAG, "BromiteUpdater: disabled by user"); + return; + } + @@ -488,33 +478,32 @@ new file mode 100644 + OmahaBase.resetUpdatePrefs(); + + String urlToCheck = getDownloadUrl(); -+ Log.i(TAG, "Fetching with HEAD: " + urlToCheck); ++ Log.i(TAG, "BromiteUpdater: fetching with HEAD '%s'", urlToCheck); + + EndpointFetcher.nativeHeadWithNoAuth( + (endpointResponse) -> { -+ Log.i(TAG, "Obtained response"); -+ Log.i(TAG, "with message: '%s'", endpointResponse.getResponseString()); -+ Log.i(TAG, "and redirect: '%s'", endpointResponse.getRedirectUrl()); -+ + OmahaBase.updateLastPushedTimeStamp(System.currentTimeMillis()); -+ -+ if (endpointResponse.getRedirectUrl() != null) { -+ String[] parts = endpointResponse.getRedirectUrl() -+ .split(Pattern.quote("/")); -+ for(String part:parts) { -+ VersionNumber version = VersionNumber.fromString(part); -+ if (version != null) { -+ OmahaBase.setLastModifiedVersion(part); -+ callback.onResult(true); -+ return; ++ String redirectURL = endpointResponse.getRedirectUrl(); ++ if (redirectURL != null) { ++ Log.i(TAG, "BromiteUpdater: obtained response '%s' and redirect URL '%s'", endpointResponse.getResponseString(), redirectURL); ++ if (redirectURL.indexOf(REDIRECT_URL_PREFIX) == 0) { ++ redirectURL = redirectURL.substring(REDIRECT_URL_PREFIX.length()); ++ String[] parts = redirectURL.split(Pattern.quote("/")); ++ if (parts.length > 0) { ++ VersionNumber version = VersionNumber.fromString(parts[0]); ++ if (version != null) { ++ OmahaBase.setLastModifiedVersion(parts[0]); ++ callback.onResult(true); ++ return; ++ } + } + } + } else { + // retry after 1 hour + OmahaBase.updateLastPushedTimeStamp( + System.currentTimeMillis() - getUpdateNotificationInterval() - -+ DateUtils.HOUR_IN_MILLIS * 1); -+ Log.i(TAG, "Some error has occurred. I'll try again in 1 hour"); ++ DateUtils.HOUR_IN_MILLIS); ++ Log.i(TAG, "BromiteUpdater: failed, will retry in 1 hour"); + } + + callback.onResult(false); @@ -582,7 +571,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse namespace { const char kContentTypeKey[] = "Content-Type"; const char kDeveloperKey[] = "X-Developer-Key"; -@@ -150,6 +155,19 @@ EndpointFetcher::EndpointFetcher( +@@ -151,6 +156,19 @@ EndpointFetcher::EndpointFetcher( identity_manager_(nullptr), sanitize_response_(true) {} @@ -602,7 +591,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse EndpointFetcher::~EndpointFetcher() = default; void EndpointFetcher::Fetch(EndpointFetcherCallback endpoint_fetcher_callback) { -@@ -279,6 +297,73 @@ void EndpointFetcher::OnSanitizationResult( +@@ -280,6 +298,77 @@ void EndpointFetcher::OnSanitizationResult( std::move(endpoint_fetcher_callback).Run(std::move(response)); } @@ -629,7 +618,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse + base::TimeDelta::FromMilliseconds(timeout_ms_)); + simple_url_loader_->SetAllowHttpErrorResults(true); + -+ if(!response_) ++ if (!response_) + response_ = std::make_unique(); + + if (allow_redirect == false) { @@ -648,10 +637,14 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse + const network::mojom::URLResponseHead& response_head, + std::vector* removed_headers) { + url_ = redirect_info.new_url; -+ if (response_->redirect_url.empty()) ++ if (response_->redirect_url.empty()) { + response_->redirect_url = url_.spec(); ++ response_->response = std::to_string(redirect_info.status_code); ++ } else { ++ LOG(INFO) << "BromiteUpdater: redirect URL is not empty, status code is " << redirect_info.status_code; ++ } + -+ PerformHeadRequest(std::move(endpoint_fetcher_callback_), nullptr, true); ++ std::move(endpoint_fetcher_callback_).Run(std::move(response_)); +} + +void EndpointFetcher::OnURLLoadComplete( @@ -676,7 +669,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse #if defined(OS_ANDROID) namespace { static void OnEndpointFetcherComplete( -@@ -295,6 +380,25 @@ static void OnEndpointFetcherComplete( +@@ -296,6 +385,25 @@ static void OnEndpointFetcherComplete( base::android::AttachCurrentThread(), std::move(endpoint_response->response)))); } @@ -702,7 +695,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse } // namespace // TODO(crbug.com/1077537) Create a KeyProvider so -@@ -380,4 +484,25 @@ static void JNI_EndpointFetcher_NativeFetchWithNoAuth( +@@ -381,4 +489,25 @@ static void JNI_EndpointFetcher_NativeFetchWithNoAuth( nullptr); } @@ -869,7 +862,7 @@ new file mode 100644 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 -@@ -2059,7 +2059,7 @@ +@@ -2037,7 +2037,7 @@ { "name": "enable-inline-update-flow", "owners": [ "nyquist", "dtrainor" ], @@ -881,7 +874,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 -@@ -3705,10 +3705,9 @@ const char kVoiceButtonInTopToolbarDescription[] = +@@ -3582,10 +3582,9 @@ const char kVoiceButtonInTopToolbarDescription[] = "Enables showing the voice search button in the top toolbar. Enabling " "Adaptive Button overrides this."; @@ -897,7 +890,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti 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 -@@ -594,7 +594,7 @@ const base::Feature kIncognitoScreenshot{"IncognitoScreenshot", +@@ -627,7 +627,7 @@ const base::Feature kIncognitoScreenshot{"IncognitoScreenshot", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kInlineUpdateFlow{"InlineUpdateFlow", @@ -909,7 +902,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse 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 -@@ -1631,6 +1631,12 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1657,6 +1657,12 @@ Your Google account may have other forms of browsing history like searches and a Chrome updates are no longer supported for this version of Android @@ -922,7 +915,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro -@@ -3059,7 +3065,7 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

diff --git a/build/patches/Disable-AGSA-by-default.patch b/build/patches/Disable-AGSA-by-default.patch index b9185bba..b14d415c 100644 --- a/build/patches/Disable-AGSA-by-default.patch +++ b/build/patches/Disable-AGSA-by-default.patch @@ -10,7 +10,7 @@ Subject: Disable AGSA by default 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 -@@ -575,7 +575,7 @@ const base::Feature kEnhancedProtectionPromoCard{ +@@ -605,7 +605,7 @@ const base::Feature kEnhancedProtectionPromoCard{ "EnhancedProtectionPromoCard", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kExperimentsForAgsa{"ExperimentsForAgsa", @@ -22,15 +22,15 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse 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 -@@ -84,7 +84,7 @@ public class CachedFeatureFlags { - put(ChromeFeatureList.CCT_REMOVE_REMOTE_VIEW_IDS, true); - put(ChromeFeatureList.OFFLINE_MEASUREMENTS_BACKGROUND_TASK, false); - put(ChromeFeatureList.CCT_INCOGNITO, true); -- put(ChromeFeatureList.EXPERIMENTS_FOR_AGSA, true); -+ put(ChromeFeatureList.EXPERIMENTS_FOR_AGSA, false); - put(ChromeFeatureList.APP_MENU_MOBILE_SITE_OPTION, false); - put(ChromeFeatureList.CLIPBOARD_SUGGESTION_CONTENT_HIDDEN, false); - put(ChromeFeatureList.OPTIMIZATION_GUIDE_PUSH_NOTIFICATIONS, false); +@@ -86,7 +86,7 @@ public class CachedFeatureFlags { + .put(ChromeFeatureList.CCT_REMOVE_REMOTE_VIEW_IDS, true) + .put(ChromeFeatureList.OFFLINE_MEASUREMENTS_BACKGROUND_TASK, false) + .put(ChromeFeatureList.CCT_INCOGNITO, true) +- .put(ChromeFeatureList.EXPERIMENTS_FOR_AGSA, true) ++ .put(ChromeFeatureList.EXPERIMENTS_FOR_AGSA, false) + .put(ChromeFeatureList.APP_MENU_MOBILE_SITE_OPTION, false) + .put(ChromeFeatureList.CLIPBOARD_SUGGESTION_CONTENT_HIDDEN, false) + .put(ChromeFeatureList.OPTIMIZATION_GUIDE_PUSH_NOTIFICATIONS, false) -- 2.17.1 diff --git a/build/patches/Disable-DRM-media-origin-IDs-preprovisioning.patch b/build/patches/Disable-DRM-media-origin-IDs-preprovisioning.patch index 693364c9..9ac06c8f 100644 --- a/build/patches/Disable-DRM-media-origin-IDs-preprovisioning.patch +++ b/build/patches/Disable-DRM-media-origin-IDs-preprovisioning.patch @@ -9,7 +9,7 @@ Subject: Disable DRM media origin IDs preprovisioning 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 -@@ -627,7 +627,7 @@ const base::Feature kMediaDrmPersistentLicense{ +@@ -660,7 +660,7 @@ const base::Feature kMediaDrmPersistentLicense{ // MediaDrmBridge. If disabled, MediaDrmBridge will get unprovisioned origin IDs // which will trigger provisioning process after MediaDrmBridge is created. const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning", diff --git a/build/patches/Disable-Omaha-update-checks.patch b/build/patches/Disable-Omaha-update-checks.patch deleted file mode 100644 index 90c9dc80..00000000 --- a/build/patches/Disable-Omaha-update-checks.patch +++ /dev/null @@ -1,37 +0,0 @@ -From: csagan5 <32685696+csagan5@users.noreply.github.com> -Date: Sun, 26 Nov 2017 23:11:56 +0100 -Subject: Disable Omaha update checks - -Do not consider Jelly Bean unsupported ---- - .../java/src/org/chromium/chrome/browser/omaha/OmahaBase.java | 2 +- - .../org/chromium/chrome/browser/omaha/VersionNumberGetter.java | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/OmahaBase.java -@@ -158,7 +158,7 @@ public class OmahaBase { - - /** See {@link #sIsDisabled}. */ - static boolean isDisabled() { -- return sIsDisabled; -+ return true; - } - - /** -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNumberGetter.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNumberGetter.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNumberGetter.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNumberGetter.java -@@ -43,7 +43,7 @@ public class VersionNumberGetter { - private static VersionNumberGetter sInstanceForTests; - - /** If false, OmahaClient will never report that a newer version is available. */ -- private static boolean sEnableUpdateDetection = true; -+ private static boolean sEnableUpdateDetection = false; - - protected VersionNumberGetter() { } - --- -2.17.1 - diff --git a/build/patches/Disable-RTCGetCurrentBrowsingContextMedia-by-default.patch b/build/patches/Disable-RTCGetCurrentBrowsingContextMedia-by-default.patch deleted file mode 100644 index 0e6141b0..00000000 --- a/build/patches/Disable-RTCGetCurrentBrowsingContextMedia-by-default.patch +++ /dev/null @@ -1,23 +0,0 @@ -From: csagan5 <32685696+csagan5@users.noreply.github.com> -Date: Thu, 29 Apr 2021 20:26:31 +0200 -Subject: Disable RTCGetCurrentBrowsingContextMedia by default - ---- - third_party/blink/common/features.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -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 -@@ -225,7 +225,7 @@ const base::Feature kRawClipboard{"RawClipboard", - // Kill switch for getCurrentBrowsingContextMedia(), which allows capturing of - // web content from the tab from which it is called. (crbug.com/1136940) - const base::Feature kRTCGetCurrentBrowsingContextMedia{ -- "RTCGetCurrentBrowsingContextMedia", base::FEATURE_ENABLED_BY_DEFAULT}; -+ "RTCGetCurrentBrowsingContextMedia", base::FEATURE_DISABLED_BY_DEFAULT}; - - // Changes the default RTCPeerConnection constructor behavior to use Unified - // Plan as the SDP semantics. When the feature is enabled, Unified Plan is used --- -2.17.1 - diff --git a/build/patches/Disable-UA-client-hint-for-model.patch b/build/patches/Disable-UA-client-hint-for-model.patch deleted file mode 100644 index 587449b5..00000000 --- a/build/patches/Disable-UA-client-hint-for-model.patch +++ /dev/null @@ -1,46 +0,0 @@ -From: csagan5 <32685696+csagan5@users.noreply.github.com> -Date: Thu, 22 Jul 2021 23:10:52 +0200 -Subject: Disable UA client hint for model - -Disable permissions policy by default ---- - content/public/common/content_features.cc | 2 +- - third_party/blink/common/client_hints/client_hints.cc | 4 +++- - 2 files changed, 4 insertions(+), 2 deletions(-) - -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 -@@ -296,7 +296,7 @@ const base::Feature kExtraSafelistedRequestHeadersForOutOfBlinkCors{ - - // Controls whether Client Hints are guarded by Permissions Policy. - const base::Feature kFeaturePolicyForClientHints{ -- "FeaturePolicyForClientHints", base::FEATURE_ENABLED_BY_DEFAULT}; -+ "FeaturePolicyForClientHints", base::FEATURE_DISABLED_BY_DEFAULT}; - - // Enables the AccessHandle surface for File System Access API's Origin Private - // File System. Tracking bug: https://crbug.com/1218431. -diff --git a/third_party/blink/common/client_hints/client_hints.cc b/third_party/blink/common/client_hints/client_hints.cc ---- a/third_party/blink/common/client_hints/client_hints.cc -+++ b/third_party/blink/common/client_hints/client_hints.cc -@@ -106,6 +106,9 @@ absl::optional> FilterAcceptCH( - for (network::mojom::WebClientHintsType hint : in.value()) { - // Some hints are supported only conditionally. - switch (hint) { -+ case network::mojom::WebClientHintsType::kUAModel: -+ // model is never provided for privacy reasons -+ break; - case network::mojom::WebClientHintsType::kLang: - if (permit_lang_hints) - result.push_back(hint); -@@ -114,7 +117,6 @@ absl::optional> FilterAcceptCH( - case network::mojom::WebClientHintsType::kUAArch: - case network::mojom::WebClientHintsType::kUAPlatform: - case network::mojom::WebClientHintsType::kUAPlatformVersion: -- case network::mojom::WebClientHintsType::kUAModel: - case network::mojom::WebClientHintsType::kUAMobile: - case network::mojom::WebClientHintsType::kUAFullVersion: - case network::mojom::WebClientHintsType::kUABitness: --- -2.17.1 - diff --git a/build/patches/Disable-all-promo-dialogs.patch b/build/patches/Disable-all-promo-dialogs.patch index 89f133a3..5cc76175 100644 --- a/build/patches/Disable-all-promo-dialogs.patch +++ b/build/patches/Disable-all-promo-dialogs.patch @@ -9,7 +9,7 @@ Subject: Disable all promo dialogs 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 -@@ -735,7 +735,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -822,7 +822,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { * displayed. */ private boolean triggerPromo(boolean intentWithEffect) { @@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab if (CommandLine.getInstance().hasSwitch(ChromeSwitches.DISABLE_STARTUP_PROMOS)) { return false; } -@@ -770,8 +770,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -857,8 +857,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { preferenceManager.writeBoolean( ChromePreferenceKeys.PROMOS_SKIPPED_ON_FIRST_START, true); } diff --git a/build/patches/Disable-feeds-support-by-default.patch b/build/patches/Disable-feeds-support-by-default.patch index bd3fcf47..28e7ebee 100644 --- a/build/patches/Disable-feeds-support-by-default.patch +++ b/build/patches/Disable-feeds-support-by-default.patch @@ -3,23 +3,25 @@ Date: Thu, 19 Dec 2019 22:52:53 +0100 Subject: Disable feeds support by default --- - .../chromium/chrome/browser/feed/shared/FeedFeatures.java | 6 +----- - .../chromium/chrome/browser/flags/CachedFeatureFlags.java | 2 +- - components/feed/feed_feature_list.cc | 4 ++-- - 3 files changed, 4 insertions(+), 8 deletions(-) + .../chromium/chrome/browser/feed/shared/FeedFeatures.java | 8 +------- + .../chromium/chrome/browser/flags/CachedFeatureFlags.java | 2 +- + components/feed/feed_feature_list.cc | 4 ++-- + 3 files changed, 4 insertions(+), 10 deletions(-) diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/shared/FeedFeatures.java b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/shared/FeedFeatures.java --- a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/shared/FeedFeatures.java +++ b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/shared/FeedFeatures.java -@@ -34,11 +34,7 @@ public final class FeedFeatures { - * the user is signed in. +@@ -35,13 +35,7 @@ public final class FeedFeatures { + * the user is signed in and confirms it's not a child profile. */ public static boolean isWebFeedUIEnabled() { +- // TODO(b/197354832, b/188188861): change consent check to SIGNIN. - return ChromeFeatureList.isEnabled(ChromeFeatureList.WEB_FEED) - && IdentityServicesProvider.get() - .getSigninManager(Profile.getLastUsedRegularProfile()) - .getIdentityManager() -- .hasPrimaryAccount(); +- .hasPrimaryAccount(ConsentLevel.SYNC) +- && !Profile.getLastUsedRegularProfile().isChild(); + return false; } @@ -27,15 +29,15 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ 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 -@@ -75,7 +75,7 @@ public class CachedFeatureFlags { - put(ChromeFeatureList.TAB_TO_GTS_ANIMATION, true); - put(ChromeFeatureList.TEST_DEFAULT_DISABLED, false); - put(ChromeFeatureList.TEST_DEFAULT_ENABLED, true); -- put(ChromeFeatureList.INTEREST_FEED_V2, true); -+ put(ChromeFeatureList.INTEREST_FEED_V2, false); - put(ChromeFeatureList.THEME_REFACTOR_ANDROID, false); - put(ChromeFeatureList.USE_CHIME_ANDROID_SDK, false); - put(ChromeFeatureList.CCT_INCOGNITO_AVAILABLE_TO_THIRD_PARTY, false); +@@ -77,7 +77,7 @@ public class CachedFeatureFlags { + .put(ChromeFeatureList.TAB_TO_GTS_ANIMATION, true) + .put(ChromeFeatureList.TEST_DEFAULT_DISABLED, false) + .put(ChromeFeatureList.TEST_DEFAULT_ENABLED, true) +- .put(ChromeFeatureList.INTEREST_FEED_V2, true) ++ .put(ChromeFeatureList.INTEREST_FEED_V2, false) + .put(ChromeFeatureList.THEME_REFACTOR_ANDROID, false) + .put(ChromeFeatureList.USE_CHIME_ANDROID_SDK, false) + .put(ChromeFeatureList.CCT_INCOGNITO_AVAILABLE_TO_THIRD_PARTY, false) 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 diff --git a/build/patches/Disable-fetching-of-all-field-trials.patch b/build/patches/Disable-fetching-of-all-field-trials.patch index dae27c49..7f251fcb 100644 --- a/build/patches/Disable-fetching-of-all-field-trials.patch +++ b/build/patches/Disable-fetching-of-all-field-trials.patch @@ -28,7 +28,7 @@ diff --git a/components/variations/service/variations_service.cc b/components/va } std::unique_ptr MaybeImportFirstRunSeed( -@@ -606,7 +596,7 @@ bool VariationsService::DoFetchFromURL(const GURL& url, bool is_http_retry) { +@@ -610,7 +600,7 @@ bool VariationsService::DoFetchFromURL(const GURL& url, bool is_http_retry) { // debugger or if the machine was suspended) and OnURLFetchComplete() hasn't // had a chance to run yet from the previous request. In this case, don't // start a new request and just let the previous one finish. diff --git a/build/patches/Disable-lock-icon-in-address-bar-by-default.patch b/build/patches/Disable-lock-icon-in-address-bar-by-default.patch index b74c190f..04c04fdc 100644 --- a/build/patches/Disable-lock-icon-in-address-bar-by-default.patch +++ b/build/patches/Disable-lock-icon-in-address-bar-by-default.patch @@ -9,7 +9,7 @@ Subject: Disable lock icon in address bar by default diff --git a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc b/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc --- a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc +++ b/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc -@@ -276,5 +276,5 @@ TemplateURLService* ChromeLocationBarModelDelegate::GetTemplateURLService() { +@@ -313,5 +313,5 @@ TemplateURLService* ChromeLocationBarModelDelegate::GetTemplateURLService() { void ChromeLocationBarModelDelegate::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(omnibox::kPreventUrlElisionsInOmnibox, true); diff --git a/build/patches/Disable-media-router-and-remoting-by-default.patch b/build/patches/Disable-media-router-and-remoting-by-default.patch index e44d5eb4..c78dfa46 100644 --- a/build/patches/Disable-media-router-and-remoting-by-default.patch +++ b/build/patches/Disable-media-router-and-remoting-by-default.patch @@ -11,8 +11,8 @@ Subject: Disable media router and remoting by default diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browser/media/router/media_router_feature.cc --- a/chrome/browser/media/router/media_router_feature.cc +++ b/chrome/browser/media/router/media_router_feature.cc -@@ -46,26 +46,15 @@ const base::Feature kCastFeedbackDialog{"CastFeedbackDialog", - base::FEATURE_ENABLED_BY_DEFAULT}; +@@ -37,26 +37,15 @@ const base::Feature kAllowAllSitesToInitiateMirroring{ + "AllowAllSitesToInitiateMirroring", base::FEATURE_DISABLED_BY_DEFAULT}; #endif // !defined(OS_ANDROID) -namespace { @@ -44,7 +44,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse #if !defined(OS_ANDROID) if (!base::FeatureList::IsEnabled(kMediaRouter)) return false; -@@ -89,7 +78,7 @@ bool MediaRouterEnabled(content::BrowserContext* context) { +@@ -80,7 +69,7 @@ bool MediaRouterEnabled(content::BrowserContext* context) { return allowed; } return true; @@ -68,7 +68,7 @@ diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profil diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc --- a/chrome/browser/profiles/profile_impl.cc +++ b/chrome/browser/profiles/profile_impl.cc -@@ -422,7 +422,7 @@ void ProfileImpl::RegisterProfilePrefs( +@@ -434,7 +434,7 @@ void ProfileImpl::RegisterProfilePrefs( #endif registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false); diff --git a/build/patches/Disable-metrics-on-all-I-O-threads.patch b/build/patches/Disable-metrics-on-all-I-O-threads.patch index 73628960..079b09ce 100644 --- a/build/patches/Disable-metrics-on-all-I-O-threads.patch +++ b/build/patches/Disable-metrics-on-all-I-O-threads.patch @@ -9,7 +9,7 @@ Subject: Disable metrics on all I/O threads diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc --- a/chrome/browser/browser_process_impl.cc +++ b/chrome/browser/browser_process_impl.cc -@@ -954,7 +954,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) { +@@ -965,7 +965,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) { #endif // BUILDFLAG(IS_CHROMEOS_ASH) registry->RegisterBooleanPref(metrics::prefs::kMetricsReportingEnabled, diff --git a/build/patches/Disable-omission-of-URL-elements-in-Omnibox.patch b/build/patches/Disable-omission-of-URL-elements-in-Omnibox.patch index 0f783cd9..1b3be616 100644 --- a/build/patches/Disable-omission-of-URL-elements-in-Omnibox.patch +++ b/build/patches/Disable-omission-of-URL-elements-in-Omnibox.patch @@ -12,7 +12,7 @@ a corresponding user option to individually disable their usage. diff --git a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc b/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc --- a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc +++ b/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc -@@ -275,6 +275,6 @@ TemplateURLService* ChromeLocationBarModelDelegate::GetTemplateURLService() { +@@ -312,6 +312,6 @@ TemplateURLService* ChromeLocationBarModelDelegate::GetTemplateURLService() { // static void ChromeLocationBarModelDelegate::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { diff --git a/build/patches/Disable-plugins-enumeration.patch b/build/patches/Disable-plugins-enumeration.patch index ba82bdde..c8c2e017 100644 --- a/build/patches/Disable-plugins-enumeration.patch +++ b/build/patches/Disable-plugins-enumeration.patch @@ -9,7 +9,7 @@ Subject: Disable plugins enumeration diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc --- a/third_party/blink/renderer/core/frame/local_frame.cc +++ b/third_party/blink/renderer/core/frame/local_frame.cc -@@ -1877,10 +1877,8 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() { +@@ -1851,10 +1851,8 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() { } PluginData* LocalFrame::GetPluginData() const { diff --git a/build/patches/Disable-references-to-fonts.googleapis.com.patch b/build/patches/Disable-references-to-fonts.googleapis.com.patch index 222b9ce2..b8a95af6 100644 --- a/build/patches/Disable-references-to-fonts.googleapis.com.patch +++ b/build/patches/Disable-references-to-fonts.googleapis.com.patch @@ -12,7 +12,7 @@ Subject: Disable references to fonts.googleapis.com diff --git a/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc b/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc --- a/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc +++ b/components/dom_distiller/content/browser/dom_distiller_viewer_source.cc -@@ -297,7 +297,7 @@ bool DomDistillerViewerSource::ShouldServiceRequest( +@@ -300,7 +300,7 @@ bool DomDistillerViewerSource::ShouldServiceRequest( std::string DomDistillerViewerSource::GetContentSecurityPolicy( network::mojom::CSPDirectiveName directive) { if (directive == network::mojom::CSPDirectiveName::StyleSrc) { diff --git a/build/patches/Disable-safe-browsing.patch b/build/patches/Disable-safe-browsing.patch index 4ed674ee..8bc82a45 100644 --- a/build/patches/Disable-safe-browsing.patch +++ b/build/patches/Disable-safe-browsing.patch @@ -21,7 +21,8 @@ Disable CrowdDeny feature chrome/browser/browser_process_impl.cc | 29 -------- chrome/browser/browser_process_impl.h | 4 -- .../chrome_browsing_data_remover_delegate.cc | 2 + - .../browser/chrome_content_browser_client.cc | 28 ++++---- + .../browser/chrome_content_browser_client.cc | 28 +++++--- + .../browser/chrome_content_browser_client.h | 2 + ...ontent_browser_client_receiver_bindings.cc | 2 + .../file_type_policies_component_installer.cc | 16 +---- .../browser/component_updater/registration.cc | 7 -- @@ -39,7 +40,7 @@ Disable CrowdDeny feature .../extensions/api/downloads/downloads_api.cc | 41 +---------- .../extensions/api/downloads/downloads_api.h | 11 --- .../webstore_private/webstore_private_api.cc | 18 +---- - ...e_file_system_access_permission_context.cc | 5 +- + ...e_file_system_access_permission_context.cc | 6 ++ ...me_file_system_access_permission_context.h | 5 +- .../lookalike_url_controller_client.cc | 4 -- .../metrics/chrome_metrics_service_client.cc | 3 - @@ -60,7 +61,7 @@ Disable CrowdDeny feature .../safety_check/SafetyCheckMediator.java | 13 ---- .../ssl/sct_reporting_service_factory.cc | 11 +-- .../browser/ssl/security_state_tab_helper.cc | 10 +-- - ...esource_filter_throttle_manager_factory.cc | 4 ++ + ...urce_filter_web_contents_helper_factory.cc | 4 ++ chrome/browser/ui/BUILD.gn | 1 - .../strings/android_chrome_strings.grd | 15 ---- chrome/browser/ui/tab_helpers.cc | 15 ---- @@ -77,7 +78,7 @@ Disable CrowdDeny feature .../file_system_access_file_writer_impl.cc | 41 +---------- .../file_system_access_file_writer_impl.h | 9 +-- .../file_system_access_permission_context.h | 6 -- - 71 files changed, 160 insertions(+), 666 deletions(-) + 72 files changed, 169 insertions(+), 660 deletions(-) diff --git a/chrome/android/java/res/xml/google_services_preferences.xml b/chrome/android/java/res/xml/google_services_preferences.xml --- a/chrome/android/java/res/xml/google_services_preferences.xml @@ -127,9 +128,9 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi - android:summary="@string/prefs_safe_browsing_summary" - android:fragment="org.chromium.chrome.browser.safe_browsing.settings.SafeBrowsingSettingsFragment"/> @@ -181,7 +182,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -23,14 +23,11 @@ import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxBridge; +@@ -24,14 +24,11 @@ import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxBridge; import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxReferrer; import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment; import org.chromium.chrome.browser.profiles.Profile; @@ -196,9 +197,9 @@ 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,9 +46,7 @@ public class PrivacySettings - private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment"; +@@ -51,9 +48,7 @@ public class PrivacySettings private static final String PREF_NETWORK_PREDICTIONS = "preload_pages"; + private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode"; private static final String PREF_SECURE_DNS = "secure_dns"; - private static final String PREF_USAGE_STATS = "usage_stats_reporting"; private static final String PREF_DO_NOT_TRACK = "do_not_track"; @@ -206,7 +207,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting 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"; -@@ -82,15 +77,6 @@ public class PrivacySettings +@@ -84,15 +79,6 @@ public class PrivacySettings getPreferenceScreen().removePreference(findPreference(PREF_PRIVACY_SANDBOX)); } @@ -222,7 +223,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting setHasOptionsMenu(true); mManagedPreferenceDelegate = createManagedPreferenceDelegate(); -@@ -183,32 +169,6 @@ public class PrivacySettings +@@ -197,32 +183,6 @@ public class PrivacySettings secureDnsPref.setSummary(SecureDnsSettings.getSummary(getContext())); } @@ -294,7 +295,7 @@ diff --git a/chrome/app/android/chrome_main_delegate_android.cc b/chrome/app/and diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -308,16 +308,12 @@ static_library("browser") { +@@ -309,16 +309,12 @@ static_library("browser") { "component_updater/chrome_component_updater_configurator.h", "component_updater/chrome_origin_trials_component_installer.cc", "component_updater/chrome_origin_trials_component_installer.h", @@ -311,7 +312,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "component_updater/first_party_sets_component_installer.cc", "component_updater/first_party_sets_component_installer.h", "component_updater/floc_component_installer.cc", -@@ -1092,8 +1088,6 @@ static_library("browser") { +@@ -1097,8 +1093,6 @@ static_library("browser") { "permissions/adaptive_quiet_notification_permission_ui_enabler.h", "permissions/chrome_permissions_client.cc", "permissions/chrome_permissions_client.h", @@ -320,7 +321,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "permissions/crowd_deny_preload_data.cc", "permissions/crowd_deny_preload_data.h", "permissions/crowd_deny_safe_browsing_request.cc", -@@ -1428,15 +1422,6 @@ static_library("browser") { +@@ -1433,15 +1427,6 @@ static_library("browser") { "renderer_host/chrome_navigation_ui_data.h", "renderer_preferences_util.cc", "renderer_preferences_util.h", @@ -336,7 +337,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "resource_coordinator/resource_coordinator_parts.cc", "resource_coordinator/resource_coordinator_parts.h", "resource_coordinator/session_restore_policy.cc", -@@ -2143,11 +2128,8 @@ static_library("browser") { +@@ -2152,11 +2137,8 @@ static_library("browser") { "//components/reporting/util:status_macros", "//components/reporting/util:status_proto", "//components/reporting/util:task_runner_context", @@ -348,7 +349,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "//components/safe_browsing/content/browser:safe_browsing_service", "//components/safe_browsing/content/browser/password_protection", "//components/safe_browsing/content/browser/web_ui", -@@ -3146,12 +3128,6 @@ static_library("browser") { +@@ -3173,12 +3155,6 @@ static_library("browser") { "profiles/profile_manager_android.cc", "profiles/profile_manager_android.h", "query_tiles/android/tile_provider_factory.cc", @@ -361,7 +362,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "safe_browsing/android/password_reuse_controller_android.cc", "safe_browsing/android/password_reuse_controller_android.h", "safe_browsing/android/safe_browsing_referring_app_bridge_android.cc", -@@ -3561,8 +3537,6 @@ static_library("browser") { +@@ -3598,8 +3574,6 @@ static_library("browser") { "download/download_commands.h", "download/download_crx_util.cc", "download/download_crx_util.h", @@ -370,7 +371,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "download/download_dir_policy_handler.cc", "download/download_dir_policy_handler.h", "download/download_dir_util.cc", -@@ -7029,8 +7003,6 @@ static_library("test_support") { +@@ -7155,8 +7129,6 @@ static_library("test_support") { "//components/reporting/util:status_macros", "//components/reporting/util:status_proto", "//components/reporting/util:task_runner_context", @@ -382,7 +383,7 @@ 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 -@@ -2321,7 +2321,7 @@ const FeatureEntry::FeatureParam +@@ -2168,7 +2168,7 @@ const FeatureEntry::FeatureParam {QuietNotificationPermissionUiConfig::kEnableAbusiveRequestWarning, "true"}, {QuietNotificationPermissionUiConfig::kEnableCrowdDenyTriggering, @@ -482,7 +483,7 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro #include "components/sessions/core/session_id_generator.h" #include "components/subresource_filter/content/browser/ruleset_service.h" #include "components/translate/core/browser/translate_download_manager.h" -@@ -377,8 +375,6 @@ void BrowserProcessImpl::StartTearDown() { +@@ -388,8 +386,6 @@ void BrowserProcessImpl::StartTearDown() { metrics_services_manager_.reset(); intranet_redirect_detector_.reset(); @@ -491,7 +492,7 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro network_time_tracker_.reset(); #if BUILDFLAG(ENABLE_PLUGINS) plugins_resource_service_.reset(); -@@ -995,14 +991,6 @@ StatusTray* BrowserProcessImpl::status_tray() { +@@ -1006,14 +1002,6 @@ StatusTray* BrowserProcessImpl::status_tray() { return status_tray_.get(); } @@ -506,7 +507,7 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro subresource_filter::RulesetService* BrowserProcessImpl::subresource_filter_ruleset_service() { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); -@@ -1251,23 +1239,6 @@ void BrowserProcessImpl::CreateBackgroundPrintingManager() { +@@ -1262,23 +1250,6 @@ void BrowserProcessImpl::CreateBackgroundPrintingManager() { } void BrowserProcessImpl::CreateSafeBrowsingService() { @@ -554,7 +555,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc --- a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc +++ b/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.cc -@@ -664,10 +664,12 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData( +@@ -674,10 +674,12 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData( base::RecordAction(UserMetricsAction("ClearBrowsingData_Cookies")); network::mojom::NetworkContext* safe_browsing_context = nullptr; @@ -570,22 +571,23 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate. 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 -@@ -129,12 +129,14 @@ - #include "chrome/browser/renderer_host/pepper/chrome_browser_pepper_host_factory.h" +@@ -106,6 +106,7 @@ + #include "chrome/browser/renderer_host/chrome_navigation_ui_data.h" #include "chrome/browser/renderer_preferences_util.h" #include "chrome/browser/resource_coordinator/background_tab_navigation_throttle.h" +#if defined(FULL_SAFE_BROWSING) #include "chrome/browser/safe_browsing/certificate_reporting_service.h" #include "chrome/browser/safe_browsing/certificate_reporting_service_factory.h" #include "chrome/browser/safe_browsing/cloud_content_scanning/deep_scanning_utils.h" - #include "chrome/browser/safe_browsing/delayed_warning_navigation_throttle.h" - #include "chrome/browser/safe_browsing/safe_browsing_navigation_throttle.h" +@@ -113,6 +114,7 @@ #include "chrome/browser/safe_browsing/safe_browsing_service.h" -+#endif - #include "chrome/browser/safe_browsing/ui_manager.h" #include "chrome/browser/safe_browsing/url_checker_delegate_impl.h" #include "chrome/browser/safe_browsing/url_lookup_service_factory.h" -@@ -1023,21 +1025,13 @@ void SetApplicationLocaleOnIOThread(const std::string& locale) { ++#endif + #include "chrome/browser/search/search.h" + #include "chrome/browser/sharing/sms/sms_remote_fetcher.h" + #include "chrome/browser/signin/chrome_signin_proxying_url_loader_factory.h" +@@ -921,20 +923,15 @@ void SetApplicationLocaleOnIOThread(const std::string& locale) { class CertificateReportingServiceCertReporter : public SSLCertReporter { public: explicit CertificateReportingServiceCertReporter( @@ -600,15 +602,14 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch const std::string& serialized_report) override { - service_->Send(serialized_report); } -- -- private: + + private: - CertificateReportingService* service_; - -- DISALLOW_COPY_AND_ASSIGN(CertificateReportingServiceCertReporter); + DISALLOW_COPY_AND_ASSIGN(CertificateReportingServiceCertReporter); }; - #if BUILDFLAG(ENABLE_EXTENSIONS) -@@ -1434,7 +1428,9 @@ void ChromeContentBrowserClient::PostAfterStartupTask( +@@ -1339,7 +1336,9 @@ void ChromeContentBrowserClient::PostAfterStartupTask( InitNetworkContextsParentDirectory(); DCHECK_CURRENTLY_ON(BrowserThread::UI); @@ -618,7 +619,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch } bool ChromeContentBrowserClient::IsBrowserStartupComplete() { -@@ -2160,7 +2156,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( +@@ -2060,7 +2059,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( } #elif defined(OS_POSIX) #if defined(OS_ANDROID) @@ -627,7 +628,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch #else bool enable_crash_reporter = false; if (crash_reporter::IsCrashpadEnabled()) { -@@ -2289,6 +2285,9 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( +@@ -2189,6 +2188,9 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches( command_line->AppendSwitch( switches::kSharedArrayBufferUnrestrictedAccessAllowed); } @@ -636,17 +637,16 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch + switches::kDisableClientSidePhishingDetection); #endif - if (prefs->HasPrefPath(prefs::kAllowDinosaurEasterEgg) && -@@ -4134,14 +4133,13 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( + if (prefs->GetBoolean( +@@ -4083,6 +4085,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( &throttles); #endif -- throttles.push_back( -- std::make_unique(handle)); -- +#if defined(FULL_SAFE_BROWSING) - if (base::FeatureList::IsEnabled(safe_browsing::kDelayedWarnings)) { - throttles.push_back( + // g_browser_process->safe_browsing_service() may be null in unittests. + safe_browsing::SafeBrowsingUIManager* ui_manager = + g_browser_process->safe_browsing_service() +@@ -4097,6 +4100,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation( std::make_unique( handle)); } @@ -654,7 +654,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -@@ -5464,6 +5462,7 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate( +@@ -5421,6 +5425,7 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate( const std::vector& allowlist_domains) { DCHECK_CURRENTLY_ON(BrowserThread::IO); @@ -662,7 +662,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch // Should not bypass safe browsing check if the check is for enterprise // lookup. if (!safe_browsing_enabled_for_profile && !should_check_on_sb_disabled) -@@ -5484,6 +5483,9 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate( +@@ -5441,6 +5446,9 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate( } return safe_browsing_url_checker_delegate_; @@ -672,10 +672,55 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch } safe_browsing::RealTimeUrlLookupServiceBase* +@@ -5448,24 +5456,28 @@ ChromeContentBrowserClient::GetUrlLookupService( + content::BrowserContext* browser_context, + bool is_enterprise_lookup_enabled, + bool is_consumer_lookup_enabled) { ++#if defined(FULL_SAFE_BROWSING) + // |safe_browsing_service_| may be unavailable in tests. + if (!safe_browsing_service_) { + return nullptr; + } ++#endif + ++#if BUILDFLAG(SAFE_BROWSING_DB_LOCAL) + Profile* profile = Profile::FromBrowserContext(browser_context); + +-#if BUILDFLAG(SAFE_BROWSING_DB_LOCAL) + if (is_enterprise_lookup_enabled) { + return safe_browsing::ChromeEnterpriseRealTimeUrlLookupServiceFactory:: + GetForProfile(profile); + } + #endif + ++#if defined(FULL_SAFE_BROWSING) + if (is_consumer_lookup_enabled) { + return safe_browsing::RealTimeUrlLookupServiceFactory::GetForProfile( + profile); + } ++#endif + return nullptr; + } + +diff --git a/chrome/browser/chrome_content_browser_client.h b/chrome/browser/chrome_content_browser_client.h +--- a/chrome/browser/chrome_content_browser_client.h ++++ b/chrome/browser/chrome_content_browser_client.h +@@ -819,9 +819,11 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient { + // Parts are deleted in the reverse order they are added. + std::vector extra_parts_; + ++#if defined(FULL_SAFE_BROWSING) + scoped_refptr safe_browsing_service_; + scoped_refptr + safe_browsing_url_checker_delegate_; ++#endif + + StartupData startup_data_; + diff --git a/chrome/browser/chrome_content_browser_client_receiver_bindings.cc b/chrome/browser/chrome_content_browser_client_receiver_bindings.cc --- a/chrome/browser/chrome_content_browser_client_receiver_bindings.cc +++ b/chrome/browser/chrome_content_browser_client_receiver_bindings.cc -@@ -85,6 +85,7 @@ +@@ -119,6 +119,7 @@ namespace { @@ -683,7 +728,7 @@ diff --git a/chrome/browser/chrome_content_browser_client_receiver_bindings.cc b // Helper method for ExposeInterfacesToRenderer() that checks the latest // SafeBrowsing pref value on the UI thread before hopping over to the IO // thread. -@@ -137,6 +138,7 @@ void MaybeCreateSafeBrowsingForRenderer( +@@ -171,6 +172,7 @@ void MaybeCreateSafeBrowsingForRenderer( allowlist_domains), std::move(receiver))); } @@ -813,7 +858,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom if (download_restriction != DownloadPrefs::DownloadRestriction::POTENTIALLY_DANGEROUS_FILES && download_restriction != -@@ -370,8 +376,8 @@ void MaybeReportDangerousDownloadBlocked( +@@ -372,8 +378,8 @@ void MaybeReportDangerousDownloadBlocked( danger_type, download->GetMimeType(), /*scan_id*/ "", download->GetTotalBytes(), safe_browsing::EventResult::BLOCKED); } @@ -823,7 +868,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom } // namespace -@@ -393,13 +399,6 @@ ChromeDownloadManagerDelegate::~ChromeDownloadManagerDelegate() { +@@ -395,13 +401,6 @@ ChromeDownloadManagerDelegate::~ChromeDownloadManagerDelegate() { void ChromeDownloadManagerDelegate::SetDownloadManager(DownloadManager* dm) { download_manager_ = dm; @@ -837,7 +882,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom } #if defined(OS_ANDROID) -@@ -746,16 +745,6 @@ void ChromeDownloadManagerDelegate::ChooseSavePath( +@@ -748,16 +747,6 @@ void ChromeDownloadManagerDelegate::ChooseSavePath( void ChromeDownloadManagerDelegate::SanitizeSavePackageResourceName( base::FilePath* filename) { @@ -854,7 +899,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom } void ChromeDownloadManagerDelegate::SanitizeDownloadParameters( -@@ -825,8 +814,6 @@ void ChromeDownloadManagerDelegate::OpenDownload(DownloadItem* download) { +@@ -827,8 +816,6 @@ void ChromeDownloadManagerDelegate::OpenDownload(DownloadItem* download) { chrome::ShowSettingsSubPage(browser, "certificates"); else browser->OpenURL(params); @@ -863,7 +908,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom #endif // OS_ANDROID } -@@ -882,18 +869,18 @@ ChromeDownloadManagerDelegate::ApplicationClientIdForFileScanning() { +@@ -884,18 +871,18 @@ ChromeDownloadManagerDelegate::ApplicationClientIdForFileScanning() { return std::string(chrome::kApplicationClientIDStringForAVScanning); } @@ -884,7 +929,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom void ChromeDownloadManagerDelegate::GetMixedContentStatus( download::DownloadItem* download, -@@ -1391,8 +1378,11 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDetermined( +@@ -1400,8 +1387,11 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDetermined( DownloadItemModel(item).SetShouldPreferOpeningInBrowser(true); #endif @@ -896,7 +941,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom if (ShouldBlockFile(target_info->danger_type, item)) { MaybeReportDangerousDownloadBlocked( download_prefs_->download_restriction(), "DANGEROUS_FILE_TYPE", -@@ -1401,6 +1391,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDetermined( +@@ -1410,6 +1400,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDetermined( // A dangerous type would take precedence over the blocking of the file. target_info->danger_type = download::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS; } @@ -904,7 +949,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom base::FilePath target_path = target_info->target_path; -@@ -1530,10 +1521,10 @@ void ChromeDownloadManagerDelegate::MaybeSendDangerousDownloadOpenedReport( +@@ -1539,10 +1530,10 @@ void ChromeDownloadManagerDelegate::MaybeSendDangerousDownloadOpenedReport( service->MaybeSendDangerousDownloadOpenedReport(download, show_download_in_folder); } @@ -930,7 +975,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.h b/chrome #include "components/download/public/common/download_danger_type.h" #include "components/download/public/common/download_item.h" #include "components/download/public/common/download_path_reservation_tracker.h" -@@ -140,7 +142,7 @@ class ChromeDownloadManagerDelegate +@@ -141,7 +143,7 @@ class ChromeDownloadManagerDelegate DownloadPrefs* download_prefs() { return download_prefs_.get(); } @@ -939,7 +984,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.h b/chrome // The state of a safebrowsing check. class SafeBrowsingState : public DownloadCompletionBlocker { public: -@@ -154,11 +156,11 @@ class ChromeDownloadManagerDelegate +@@ -155,11 +157,11 @@ class ChromeDownloadManagerDelegate private: DISALLOW_COPY_AND_ASSIGN(SafeBrowsingState); }; @@ -952,7 +997,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.h b/chrome base::WeakPtr GetWeakPtr(); -@@ -166,8 +168,10 @@ class ChromeDownloadManagerDelegate +@@ -167,8 +169,10 @@ class ChromeDownloadManagerDelegate mojo::PendingReceiver receiver); protected: @@ -973,10 +1018,10 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow +#if BUILDFLAG(FULL_SAFE_BROWSING) #include "chrome/browser/safe_browsing/download_protection/download_feedback_service.h" +#endif + #include "chrome/browser/safe_browsing/safe_browsing_service.h" #include "chrome/grit/chromium_strings.h" #include "chrome/grit/generated_resources.h" - #include "components/download/public/common/download_danger_type.h" -@@ -38,8 +40,10 @@ +@@ -39,8 +41,10 @@ #include "components/download/public/common/download_item.h" #include "components/safe_browsing/buildflags.h" #include "components/safe_browsing/content/browser/web_ui/safe_browsing_ui.h" @@ -987,7 +1032,7 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow #include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/download_item_utils.h" -@@ -54,7 +58,9 @@ +@@ -55,7 +59,9 @@ using base::TimeDelta; using download::DownloadItem; using MixedContentStatus = download::DownloadItem::MixedContentStatus; @@ -997,7 +1042,7 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow namespace { -@@ -84,9 +90,11 @@ class DownloadItemModelData : public base::SupportsUserData::Data { +@@ -85,9 +91,11 @@ class DownloadItemModelData : public base::SupportsUserData::Data { // for the file type. bool should_prefer_opening_in_browser_; @@ -1009,7 +1054,7 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow // Whether the download is currently being revived. bool is_being_revived_; -@@ -123,7 +131,9 @@ DownloadItemModelData::DownloadItemModelData() +@@ -124,7 +132,9 @@ DownloadItemModelData::DownloadItemModelData() : should_show_in_shelf_(true), was_ui_notified_(false), should_prefer_opening_in_browser_(false), @@ -1019,7 +1064,7 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow is_being_revived_(false) {} } // namespace -@@ -377,6 +387,7 @@ void DownloadItemModel::SetShouldPreferOpeningInBrowser(bool preference) { +@@ -378,6 +388,7 @@ void DownloadItemModel::SetShouldPreferOpeningInBrowser(bool preference) { data->should_prefer_opening_in_browser_ = preference; } @@ -1027,7 +1072,7 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow DownloadFileType::DangerLevel DownloadItemModel::GetDangerLevel() const { const DownloadItemModelData* data = DownloadItemModelData::Get(download_); return data ? data->danger_level_ : DownloadFileType::NOT_DANGEROUS; -@@ -387,6 +398,7 @@ void DownloadItemModel::SetDangerLevel( +@@ -388,6 +399,7 @@ void DownloadItemModel::SetDangerLevel( DownloadItemModelData* data = DownloadItemModelData::GetOrCreate(download_); data->danger_level_ = danger_level; } @@ -1035,7 +1080,7 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow download::DownloadItem::MixedContentStatus DownloadItemModel::GetMixedContentStatus() const { -@@ -592,9 +604,6 @@ bool DownloadItemModel::IsCommandEnabled( +@@ -593,9 +605,6 @@ bool DownloadItemModel::IsCommandEnabled( // filename. Don't base an "Always open" decision based on it. Also // exclude extensions. return download_->CanOpenDownload() && @@ -1123,17 +1168,17 @@ diff --git a/chrome/browser/download/download_prefs.cc b/chrome/browser/download diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/browser/download/download_target_determiner.cc --- a/chrome/browser/download/download_target_determiner.cc +++ b/chrome/browser/download/download_target_determiner.cc -@@ -28,7 +28,9 @@ - #include "components/download/public/common/download_interrupt_reasons.h" - #include "components/history/core/browser/history_service.h" +@@ -31,7 +31,9 @@ #include "components/prefs/pref_service.h" + #include "components/safe_browsing/content/browser/download/download_stats.h" + #include "components/safe_browsing/content/browser/safe_browsing_metrics_collector.h" +#if defined(FULL_SAFE_BROWSING) #include "components/safe_browsing/content/common/file_type_policies.h" +#endif #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" -@@ -61,13 +63,16 @@ +@@ -65,13 +67,16 @@ using content::BrowserThread; using download::DownloadItem; using download::DownloadPathReservationTracker; @@ -1150,7 +1195,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow // Condenses the results from HistoryService::GetVisibleVisitCountToHost() to a // single bool. A host is considered visited before if prior visible visits were // found in history and the first such visit was earlier than the most recent -@@ -78,6 +83,7 @@ void VisitCountsToVisitedBefore(base::OnceCallback callback, +@@ -82,6 +87,7 @@ void VisitCountsToVisitedBefore(base::OnceCallback callback, result.success && result.count > 0 && (result.first_visit.LocalMidnight() < base::Time::Now().LocalMidnight())); } @@ -1158,7 +1203,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow #if defined(OS_WIN) // Keeps track of whether Adobe Reader is up to date. -@@ -102,7 +108,9 @@ DownloadTargetDeterminer::DownloadTargetDeterminer( +@@ -106,7 +112,9 @@ DownloadTargetDeterminer::DownloadTargetDeterminer( create_target_directory_(false), conflict_action_(conflict_action), danger_type_(download->GetDangerType()), @@ -1168,7 +1213,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow virtual_path_(initial_virtual_path), is_filetype_handled_safely_(false), #if defined(OS_ANDROID) -@@ -293,12 +301,14 @@ base::FilePath DownloadTargetDeterminer::GenerateFileName() const { +@@ -297,12 +305,14 @@ base::FilePath DownloadTargetDeterminer::GenerateFileName() const { download_->GetURL(), download_->GetContentDisposition(), referrer_charset, suggested_filename, sniffed_mime_type, default_filename); @@ -1184,7 +1229,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow // If no mime type or explicitly specified a name, don't replace file // extension. -@@ -830,6 +840,7 @@ DownloadTargetDeterminer::Result +@@ -834,6 +844,7 @@ DownloadTargetDeterminer::Result return CONTINUE; } @@ -1192,7 +1237,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow // First determine the danger level assuming that the user doesn't have any // prior visits to the referrer recoreded in history. The resulting danger // level would be ALLOW_ON_USER_GESTURE if the level depends on the visit -@@ -866,6 +877,7 @@ DownloadTargetDeterminer::Result +@@ -870,6 +881,7 @@ DownloadTargetDeterminer::Result // invalid, then assume the referrer has not been visited before. if (danger_type_ == download::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS) danger_type_ = download::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE; @@ -1200,10 +1245,10 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow return CONTINUE; } -@@ -873,11 +885,13 @@ void DownloadTargetDeterminer::CheckVisitedReferrerBeforeDone( - bool visited_referrer_before) { - DCHECK_CURRENTLY_ON(BrowserThread::UI); - DCHECK_EQ(STATE_DETERMINE_INTERMEDIATE_PATH, next_state_); +@@ -882,11 +894,13 @@ void DownloadTargetDeterminer::CheckVisitedReferrerBeforeDone( + virtual_path_.BaseName()), + download_->HasUserGesture(), visited_referrer_before, + GetLastDownloadBypassTimestamp()); +#if defined(FULL_SAFE_BROWSING) danger_level_ = GetDangerLevel( visited_referrer_before ? VISITED_REFERRER : NO_VISITS_TO_REFERRER); @@ -1214,7 +1259,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow DoLoop(); } -@@ -977,7 +991,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf( +@@ -986,7 +1000,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf( << " Intermediate:" << intermediate_path_.AsUTF8Unsafe() << " Confirmation reason:" << static_cast(confirmation_reason_) << " Danger type:" << danger_type_ @@ -1224,7 +1269,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow << " Result:" << static_cast(result); std::unique_ptr target_info(new DownloadTargetInfo); -@@ -989,7 +1005,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf( +@@ -998,7 +1014,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf( ? DownloadItem::TARGET_DISPOSITION_PROMPT : DownloadItem::TARGET_DISPOSITION_OVERWRITE); target_info->danger_type = danger_type_; @@ -1234,7 +1279,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow target_info->intermediate_path = intermediate_path_; target_info->mime_type = mime_type_; target_info->is_filetype_handled_safely = is_filetype_handled_safely_; -@@ -1078,6 +1096,7 @@ bool DownloadTargetDeterminer::HasPromptedForPath() const { +@@ -1087,6 +1105,7 @@ bool DownloadTargetDeterminer::HasPromptedForPath() const { DownloadItem::TARGET_DISPOSITION_PROMPT); } @@ -1242,7 +1287,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow DownloadFileType::DangerLevel DownloadTargetDeterminer::GetDangerLevel( PriorVisitsToReferrer visits) const { DCHECK_CURRENTLY_ON(BrowserThread::UI); -@@ -1102,30 +1121,9 @@ DownloadFileType::DangerLevel DownloadTargetDeterminer::GetDangerLevel( +@@ -1111,30 +1130,9 @@ DownloadFileType::DangerLevel DownloadTargetDeterminer::GetDangerLevel( download_->HasUserGesture()) return DownloadFileType::NOT_DANGEROUS; @@ -1273,12 +1318,12 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow } +#endif - void DownloadTargetDeterminer::OnDownloadDestroyed( - DownloadItem* download) { + absl::optional + DownloadTargetDeterminer::GetLastDownloadBypassTimestamp() const { diff --git a/chrome/browser/download/download_target_determiner.h b/chrome/browser/download/download_target_determiner.h --- a/chrome/browser/download/download_target_determiner.h +++ b/chrome/browser/download/download_target_determiner.h -@@ -19,7 +19,9 @@ +@@ -20,7 +20,9 @@ #include "components/download/public/common/download_danger_type.h" #include "components/download/public/common/download_item.h" #include "components/download/public/common/download_path_reservation_tracker.h" @@ -1288,7 +1333,7 @@ diff --git a/chrome/browser/download/download_target_determiner.h b/chrome/brows #include "content/public/browser/download_manager_delegate.h" #include "ppapi/buildflags/buildflags.h" -@@ -316,6 +318,7 @@ class DownloadTargetDeterminer : public download::DownloadItem::Observer { +@@ -317,6 +319,7 @@ class DownloadTargetDeterminer : public download::DownloadItem::Observer { // operation. bool HasPromptedForPath() const; @@ -1296,15 +1341,15 @@ diff --git a/chrome/browser/download/download_target_determiner.h b/chrome/brows // Returns true if this download should show the "dangerous file" warning. // Various factors are considered, such as the type of the file, whether a // user action initiated the download, and whether the user has explicitly -@@ -325,6 +328,7 @@ class DownloadTargetDeterminer : public download::DownloadItem::Observer { +@@ -326,6 +329,7 @@ class DownloadTargetDeterminer : public download::DownloadItem::Observer { // to true if the download requires explicit user consent. safe_browsing::DownloadFileType::DangerLevel GetDangerLevel( PriorVisitsToReferrer visits) const; +#endif - // Generates the download file name based on information from URL, response - // headers and sniffed mime type. -@@ -341,7 +345,9 @@ class DownloadTargetDeterminer : public download::DownloadItem::Observer { + // Returns the timestamp of the last download bypass. + absl::optional GetLastDownloadBypassTimestamp() const; +@@ -345,7 +349,9 @@ class DownloadTargetDeterminer : public download::DownloadItem::Observer { download::DownloadPathReservationTracker::FilenameConflictAction conflict_action_; download::DownloadDangerType danger_type_; @@ -1554,15 +1599,18 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc --- a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc +++ b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc -@@ -35,7 +35,6 @@ +@@ -35,8 +35,10 @@ #include "chrome/browser/file_system_access/file_system_access_permission_request_manager.h" #include "chrome/browser/installable/installable_utils.h" #include "chrome/browser/profiles/profile.h" --#include "chrome/browser/safe_browsing/download_protection/download_protection_service.h" ++#if defined(FULL_SAFE_BROWSING) + #include "chrome/browser/safe_browsing/download_protection/download_protection_service.h" + #include "chrome/browser/safe_browsing/safe_browsing_service.h" ++#endif #include "chrome/browser/ui/file_system_access_dialogs.h" #include "chrome/common/chrome_paths.h" #include "components/content_settings/core/browser/host_content_settings_map.h" -@@ -311,6 +310,7 @@ BindResultCallbackToCurrentSequence( +@@ -301,6 +303,7 @@ BindResultCallbackToCurrentSequence( base::SequencedTaskRunnerHandle::Get(), std::move(callback)); } @@ -1570,7 +1618,7 @@ diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permiss void DoSafeBrowsingCheckOnUIThread( content::GlobalRenderFrameHostId frame_id, std::unique_ptr item, -@@ -384,6 +384,7 @@ InterpretSafeBrowsingResult(safe_browsing::DownloadCheckResult result) { +@@ -374,6 +377,7 @@ InterpretSafeBrowsingResult(safe_browsing::DownloadCheckResult result) { NOTREACHED(); return ChromeFileSystemAccessPermissionContext::AfterWriteCheckResult::kBlock; } @@ -1578,7 +1626,7 @@ diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permiss std::string GenerateLastPickedDirectoryKey(const std::string& id) { return id.empty() ? kDefaultLastPickedDirectoryKey -@@ -1115,6 +1116,7 @@ void ChromeFileSystemAccessPermissionContext::ConfirmSensitiveDirectoryAccess( +@@ -1105,6 +1109,7 @@ void ChromeFileSystemAccessPermissionContext::ConfirmSensitiveDirectoryAccess( std::move(callback))); } @@ -1586,7 +1634,7 @@ diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permiss void ChromeFileSystemAccessPermissionContext::PerformAfterWriteChecks( std::unique_ptr item, content::GlobalRenderFrameHostId frame_id, -@@ -1136,6 +1138,7 @@ void ChromeFileSystemAccessPermissionContext::PerformAfterWriteChecks( +@@ -1126,6 +1131,7 @@ void ChromeFileSystemAccessPermissionContext::PerformAfterWriteChecks( }, base::SequencedTaskRunnerHandle::Get(), std::move(callback)))); } @@ -1639,7 +1687,7 @@ diff --git a/chrome/browser/lookalikes/lookalike_url_controller_client.cc b/chro diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/browser/metrics/chrome_metrics_service_client.cc --- a/chrome/browser/metrics/chrome_metrics_service_client.cc +++ b/chrome/browser/metrics/chrome_metrics_service_client.cc -@@ -801,9 +801,6 @@ void ChromeMetricsServiceClient::RegisterMetricsServiceProviders() { +@@ -806,9 +806,6 @@ void ChromeMetricsServiceClient::RegisterMetricsServiceProviders() { metrics_service_->RegisterMetricsProvider( std::make_unique()); @@ -1652,7 +1700,7 @@ diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/br diff --git a/chrome/browser/net/trial_comparison_cert_verifier_controller.cc b/chrome/browser/net/trial_comparison_cert_verifier_controller.cc --- a/chrome/browser/net/trial_comparison_cert_verifier_controller.cc +++ b/chrome/browser/net/trial_comparison_cert_verifier_controller.cc -@@ -131,9 +131,6 @@ void TrialComparisonCertVerifierController::SendTrialReport( +@@ -138,9 +138,6 @@ void TrialComparisonCertVerifierController::SendTrialReport( std::string serialized_report; if (!report.Serialize(&serialized_report)) return; @@ -1665,7 +1713,7 @@ diff --git a/chrome/browser/net/trial_comparison_cert_verifier_controller.cc b/c diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b/chrome/browser/password_manager/chrome_password_manager_client.cc --- a/chrome/browser/password_manager/chrome_password_manager_client.cc +++ b/chrome/browser/password_manager/chrome_password_manager_client.cc -@@ -809,21 +809,13 @@ autofill::LanguageCode ChromePasswordManagerClient::GetPageLanguage() const { +@@ -822,21 +822,13 @@ autofill::LanguageCode ChromePasswordManagerClient::GetPageLanguage() const { safe_browsing::PasswordProtectionService* ChromePasswordManagerClient::GetPasswordProtectionService() const { @@ -1688,7 +1736,7 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b } #endif // defined(ON_FOCUS_PING_ENABLED) -@@ -833,22 +825,9 @@ void ChromePasswordManagerClient::CheckProtectedPasswordEntry( +@@ -846,22 +838,9 @@ void ChromePasswordManagerClient::CheckProtectedPasswordEntry( const std::vector& matching_reused_credentials, bool password_field_exists) { @@ -1711,7 +1759,7 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b } ukm::SourceId ChromePasswordManagerClient::GetUkmSourceId() { -@@ -1399,6 +1378,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage( +@@ -1402,6 +1381,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage( is_enabled = false; } @@ -1719,7 +1767,7 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b // SafeBrowsing Delayed Warnings experiment can delay some SafeBrowsing // warnings until user interaction. If the current page has a delayed warning, // it'll have a user interaction observer attached. Disable password -@@ -1409,6 +1389,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage( +@@ -1412,6 +1392,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage( observer->OnPasswordSaveOrAutofillDenied(); is_enabled = false; } @@ -1793,15 +1841,15 @@ diff --git a/chrome/browser/permissions/chrome_permissions_client.h b/chrome/bro diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc --- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc +++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -69,7 +69,6 @@ +@@ -71,7 +71,6 @@ #include "chrome/browser/privacy_sandbox/privacy_sandbox_settings_factory.h" #include "chrome/browser/profiles/gaia_info_update_service_factory.h" #include "chrome/browser/profiles/renderer_updater_factory.h" -#include "chrome/browser/safe_browsing/certificate_reporting_service_factory.h" #include "chrome/browser/search_engines/template_url_fetcher_factory.h" #include "chrome/browser/search_engines/template_url_service_factory.h" - #include "chrome/browser/send_tab_to_self/send_tab_to_self_client_service_factory.h" -@@ -281,7 +280,6 @@ void ChromeBrowserMainExtraPartsProfiles:: + #include "chrome/browser/segmentation_platform/segmentation_platform_service_factory.h" +@@ -288,7 +287,6 @@ void ChromeBrowserMainExtraPartsProfiles:: #if BUILDFLAG(IS_CHROMEOS_LACROS) CertDbInitializerFactory::GetInstance(); #endif @@ -1820,7 +1868,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p #include "chrome/browser/sharing/sharing_service_factory.h" #include "chrome/browser/signin/identity_manager_factory.h" #include "chrome/browser/signin/signin_ui_util.h" -@@ -635,6 +634,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async_prefs) { +@@ -647,6 +646,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async_prefs) { mojo::PendingRemote pref_validation_delegate; @@ -1828,7 +1876,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p scoped_refptr safe_browsing_service( g_browser_process->safe_browsing_service()); if (safe_browsing_service.get()) { -@@ -646,7 +646,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async_prefs) { +@@ -658,7 +658,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async_prefs) { pref_validation_delegate.InitWithNewPipeAndPassReceiver()); } } @@ -1864,7 +1912,7 @@ diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsin if (safe_browsing_mode != 0) { # "Safe Browsing Basic" files used for safe browsing in full mode -@@ -166,7 +167,6 @@ static_library("safe_browsing") { +@@ -162,7 +163,6 @@ static_library("safe_browsing") { "//components/safe_browsing/content/browser/triggers:ad_sampler_trigger", "//components/safe_browsing/content/browser/triggers:suspicious_site_trigger", "//components/safe_browsing/content/browser/triggers:trigger_throttler", @@ -2041,7 +2089,7 @@ diff --git a/chrome/browser/safe_browsing/android/safe_browsing_bridge.cc b/chro diff --git a/chrome/browser/safe_browsing/download_protection/download_protection_service.cc b/chrome/browser/safe_browsing/download_protection/download_protection_service.cc --- a/chrome/browser/safe_browsing/download_protection/download_protection_service.cc +++ b/chrome/browser/safe_browsing/download_protection/download_protection_service.cc -@@ -653,11 +653,6 @@ void DownloadProtectionService::RequestFinished(DeepScanningRequest* request) { +@@ -700,11 +700,6 @@ void DownloadProtectionService::RequestFinished(DeepScanningRequest* request) { deep_scanning_requests_.erase(it); } @@ -2064,7 +2112,7 @@ diff --git a/chrome/browser/safe_browsing/download_protection/download_protectio #include "chrome/browser/safe_browsing/download_protection/deep_scanning_request.h" #include "chrome/browser/safe_browsing/download_protection/download_protection_util.h" #include "chrome/browser/safe_browsing/download_protection/download_reporter.h" -@@ -276,10 +275,6 @@ class DownloadProtectionService { +@@ -286,10 +285,6 @@ class DownloadProtectionService { void OnDangerousDownloadOpened(const download::DownloadItem* item, Profile* profile); @@ -2163,8 +2211,8 @@ diff --git a/chrome/browser/ssl/security_state_tab_helper.cc b/chrome/browser/ss #include "chrome/browser/profiles/profile.h" -#include "chrome/browser/reputation/reputation_web_contents_observer.h" #include "chrome/browser/safe_browsing/safe_browsing_service.h" - #include "chrome/browser/safe_browsing/ui_manager.h" #include "chrome/browser/ssl/https_only_mode_tab_helper.h" + #include "chrome/browser/ssl/known_interception_disclosure_infobar_delegate.h" @@ -104,13 +103,8 @@ SecurityStateTabHelper::GetVisibleSecurityState() { // information is still being initialized, thus no need to check for that. state->malicious_content_status = GetMaliciousContentStatus(); @@ -2180,7 +2228,7 @@ diff --git a/chrome/browser/ssl/security_state_tab_helper.cc b/chrome/browser/ss {security_state::SafetyTipStatus::kUnknown, GURL()}); // If both the on-form warning and the on-submit warning are enabled for mixed -@@ -227,6 +221,7 @@ bool SecurityStateTabHelper::UsedPolicyInstalledCertificate() const { +@@ -217,6 +211,7 @@ bool SecurityStateTabHelper::UsedPolicyInstalledCertificate() const { security_state::MaliciousContentStatus SecurityStateTabHelper::GetMaliciousContentStatus() const { @@ -2188,7 +2236,7 @@ diff --git a/chrome/browser/ssl/security_state_tab_helper.cc b/chrome/browser/ss content::NavigationEntry* entry = web_contents()->GetController().GetVisibleEntry(); if (!entry) -@@ -310,6 +305,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const { +@@ -300,6 +295,7 @@ SecurityStateTabHelper::GetMaliciousContentStatus() const { break; } } @@ -2196,9 +2244,9 @@ diff --git a/chrome/browser/ssl/security_state_tab_helper.cc b/chrome/browser/ss return security_state::MALICIOUS_CONTENT_STATUS_NONE; } -diff --git a/chrome/browser/subresource_filter/chrome_content_subresource_filter_throttle_manager_factory.cc b/chrome/browser/subresource_filter/chrome_content_subresource_filter_throttle_manager_factory.cc ---- a/chrome/browser/subresource_filter/chrome_content_subresource_filter_throttle_manager_factory.cc -+++ b/chrome/browser/subresource_filter/chrome_content_subresource_filter_throttle_manager_factory.cc +diff --git a/chrome/browser/subresource_filter/chrome_content_subresource_filter_web_contents_helper_factory.cc b/chrome/browser/subresource_filter/chrome_content_subresource_filter_web_contents_helper_factory.cc +--- a/chrome/browser/subresource_filter/chrome_content_subresource_filter_web_contents_helper_factory.cc ++++ b/chrome/browser/subresource_filter/chrome_content_subresource_filter_web_contents_helper_factory.cc @@ -18,10 +18,14 @@ namespace { // available. Otherwise returns nullptr. const scoped_refptr @@ -2217,7 +2265,7 @@ diff --git a/chrome/browser/subresource_filter/chrome_content_subresource_filter 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 -@@ -3803,7 +3803,6 @@ static_library("ui") { +@@ -3861,7 +3861,6 @@ static_library("ui") { "views/device_chooser_content_view.h", "views/devtools_process_observer.cc", "views/devtools_process_observer.h", @@ -2254,7 +2302,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro -@@ -4254,9 +4242,6 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

You can see sites you visit in Chrome and set timers for them.\n\nGoogle gets info about the sites you set timers for and how long you visit them. This info is used to make Digital Wellbeing better. @@ -2280,7 +2328,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc #include "chrome/browser/sessions/session_tab_helper_factory.h" #include "chrome/browser/ssl/chrome_security_blocking_page_factory.h" #include "chrome/browser/ssl/connection_help_tab_helper.h" -@@ -110,7 +105,6 @@ +@@ -111,7 +106,6 @@ #include "components/performance_manager/public/performance_manager.h" #include "components/permissions/features.h" #include "components/permissions/permission_request_manager.h" @@ -2307,7 +2355,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/browser/ui/webui/interstitials/interstitial_ui.cc --- a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc +++ b/chrome/browser/ui/webui/interstitials/interstitial_ui.cc -@@ -298,6 +298,7 @@ CreateHttpsOnlyModePage(content::WebContents* web_contents) { +@@ -279,6 +279,7 @@ CreateHttpsOnlyModePage(content::WebContents* web_contents) { request_url)); } @@ -2315,7 +2363,7 @@ diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/b std::unique_ptr CreateSafeBrowsingBlockingPage(content::WebContents* web_contents) { safe_browsing::SBThreatType threat_type = -@@ -353,7 +354,9 @@ CreateSafeBrowsingBlockingPage(content::WebContents* web_contents) { +@@ -337,7 +338,9 @@ CreateSafeBrowsingBlockingPage(content::WebContents* web_contents) { ui_manager->blocking_page_factory()->CreateSafeBrowsingPage( ui_manager, web_contents, main_frame_url, {resource}, true)); } @@ -2325,7 +2373,7 @@ diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/b std::unique_ptr CreateSafeBrowsingQuietBlockingPage(content::WebContents* web_contents) { safe_browsing::SBThreatType threat_type = -@@ -405,6 +408,7 @@ CreateSafeBrowsingQuietBlockingPage(content::WebContents* web_contents) { +@@ -389,6 +392,7 @@ CreateSafeBrowsingQuietBlockingPage(content::WebContents* web_contents) { g_browser_process->safe_browsing_service()->ui_manager().get(), web_contents, main_frame_url, resource, is_giant_webview)); } @@ -2333,7 +2381,7 @@ diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/b #if BUILDFLAG(ENABLE_CAPTIVE_PORTAL_DETECTION) std::unique_ptr CreateCaptivePortalBlockingPage( -@@ -522,8 +526,6 @@ void InterstitialHTMLSource::StartDataRequest( +@@ -506,8 +510,6 @@ void InterstitialHTMLSource::StartDataRequest( interstitial_delegate = CreateBlockedInterceptionBlockingPage(web_contents); } else if (path_without_query == "/legacy-tls") { interstitial_delegate = CreateLegacyTLSBlockingPage(web_contents); @@ -2342,7 +2390,7 @@ diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/b } else if (path_without_query == "/clock") { interstitial_delegate = CreateBadClockBlockingPage(web_contents); } else if (path_without_query == "/lookalike") { -@@ -538,13 +540,7 @@ void InterstitialHTMLSource::StartDataRequest( +@@ -522,13 +524,7 @@ void InterstitialHTMLSource::StartDataRequest( interstitial_delegate = CreateInsecureFormPage(web_contents); } else if (path_without_query == "/https_only") { interstitial_delegate = CreateHttpsOnlyModePage(web_contents); @@ -2397,7 +2445,7 @@ diff --git a/chrome/common/safe_browsing/BUILD.gn b/chrome/common/safe_browsing/ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc --- a/chrome/renderer/chrome_content_renderer_client.cc +++ b/chrome/renderer/chrome_content_renderer_client.cc -@@ -95,7 +95,9 @@ +@@ -97,7 +97,9 @@ #include "components/page_load_metrics/renderer/metrics_render_frame_observer.h" #include "components/paint_preview/buildflags/buildflags.h" #include "components/safe_browsing/buildflags.h" @@ -2422,7 +2470,7 @@ diff --git a/components/component_updater/installer_policies/BUILD.gn b/componen 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 -@@ -531,10 +531,7 @@ PermissionRequestManager::PermissionRequestManager( +@@ -530,10 +530,7 @@ PermissionRequestManager::PermissionRequestManager( view_(nullptr), tab_is_hidden_(web_contents->GetVisibility() == content::Visibility::HIDDEN), @@ -2450,7 +2498,7 @@ diff --git a/components/safe_browsing/content/common/file_type_policies.cc b/com diff --git a/components/safe_browsing/core/common/features.cc b/components/safe_browsing/core/common/features.cc --- a/components/safe_browsing/core/common/features.cc +++ b/components/safe_browsing/core/common/features.cc -@@ -126,7 +126,7 @@ constexpr base::FeatureParam kShouldFillOldPhishGuardProto{ +@@ -133,7 +133,7 @@ constexpr base::FeatureParam kShouldFillOldPhishGuardProto{ &kPasswordProtectionForSignedInUsers, "DeprecateOldProto", false}; const base::Feature kSuspiciousSiteTriggerQuotaFeature{ diff --git a/build/patches/Disable-search-engine-DSE-automatic-permission.patch b/build/patches/Disable-search-engine-DSE-automatic-permission.patch index 5c189968..242b35f0 100644 --- a/build/patches/Disable-search-engine-DSE-automatic-permission.patch +++ b/build/patches/Disable-search-engine-DSE-automatic-permission.patch @@ -9,7 +9,7 @@ Subject: Disable search engine DSE automatic permission diff --git a/components/permissions/features.cc b/components/permissions/features.cc --- a/components/permissions/features.cc +++ b/components/permissions/features.cc -@@ -74,7 +74,7 @@ const base::Feature kRevisedOriginHandling{"PermissionsRevisedOriginHandling", +@@ -76,7 +76,7 @@ const base::Feature kRevisedOriginHandling{"PermissionsRevisedOriginHandling", // When enabled, the Default Search Engine does not automatically receive the // "geolocation" and "notifications" permissions. DSE only applies to Android. const base::Feature kRevertDSEAutomaticPermissions{ diff --git a/build/patches/Disable-seed-based-field-trials.patch b/build/patches/Disable-seed-based-field-trials.patch index e9072f42..755ed071 100644 --- a/build/patches/Disable-seed-based-field-trials.patch +++ b/build/patches/Disable-seed-based-field-trials.patch @@ -9,7 +9,7 @@ Subject: Disable seed-based field trials diff --git a/components/variations/service/variations_field_trial_creator.cc b/components/variations/service/variations_field_trial_creator.cc --- a/components/variations/service/variations_field_trial_creator.cc +++ b/components/variations/service/variations_field_trial_creator.cc -@@ -261,8 +261,8 @@ bool VariationsFieldTrialCreator::SetupFieldTrials( +@@ -258,8 +258,8 @@ bool VariationsFieldTrialCreator::SetupFieldTrials( // instance is set. feature_list->RegisterExtraFeatureOverrides(extra_overrides); @@ -19,7 +19,7 @@ diff --git a/components/variations/service/variations_field_trial_creator.cc b/c if (!command_line->HasSwitch(switches::kDisableFieldTrialTestingConfig) && !command_line->HasSwitch(::switches::kForceFieldTrials) && !command_line->HasSwitch(switches::kVariationsServerURL)) { -@@ -276,10 +276,12 @@ bool VariationsFieldTrialCreator::SetupFieldTrials( +@@ -273,10 +273,12 @@ bool VariationsFieldTrialCreator::SetupFieldTrials( } #endif // BUILDFLAG(FIELDTRIAL_TESTING_ENABLED) bool used_seed = false; diff --git a/build/patches/Disable-smart-selection-by-default.patch b/build/patches/Disable-smart-selection-by-default.patch index 0348051a..24cd4b00 100644 --- a/build/patches/Disable-smart-selection-by-default.patch +++ b/build/patches/Disable-smart-selection-by-default.patch @@ -43,7 +43,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextualsearc 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 -@@ -164,6 +164,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -172,6 +172,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kCCTClientDataHeader, &kCCTExternalLinkHandling, &kCCTIncognito, @@ -51,7 +51,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse &kCCTIncognitoAvailableToThirdParty, &kCCTPostMessageAPI, &kCCTRedirectPreconnect, -@@ -472,6 +473,9 @@ const base::Feature kChromeSharingHub{"ChromeSharingHub", +@@ -492,6 +493,9 @@ const base::Feature kChromeSharingHub{"ChromeSharingHub", const base::Feature kChromeSurveyNextAndroid{"ChromeSurveyNextAndroid", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -64,7 +64,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 -@@ -50,6 +50,7 @@ extern const base::Feature kChromeShareHighlightsAndroid; +@@ -52,6 +52,7 @@ extern const base::Feature kChromeShareHighlightsAndroid; extern const base::Feature kChromeShareLongScreenshot; extern const base::Feature kChromeShareScreenshot; extern const base::Feature kChromeSharingHub; @@ -75,18 +75,18 @@ 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 -@@ -275,6 +275,7 @@ public abstract class ChromeFeatureList { +@@ -277,6 +277,7 @@ public abstract class ChromeFeatureList { public static final String CCT_EXTERNAL_LINK_HANDLING = "CCTExternalLinkHandling"; public static final String CCT_POST_MESSAGE_API = "CCTPostMessageAPI"; public static final String CCT_REDIRECT_PRECONNECT = "CCTRedirectPreconnect"; + public static final String CHROME_SMART_SELECTION = "ChromeSmartSelection"; public static final String CCT_REMOVE_REMOTE_VIEW_IDS = "CCTRemoveRemoteViewIds"; + public static final String CCT_RESIZABLE_FOR_FIRST_PARTIES = "CCTResizableForFirstParties"; public static final String CCT_RESIZABLE_FOR_THIRD_PARTIES = "CCTResizableForThirdParties"; - public static final String CCT_RESOURCE_PREFETCH = "CCTResourcePrefetch"; diff --git a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java --- a/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java +++ b/content/public/android/java/src/org/chromium/content/browser/selection/SelectionPopupControllerImpl.java -@@ -840,7 +840,7 @@ public class SelectionPopupControllerImpl extends ActionModeCallbackHelper +@@ -839,7 +839,7 @@ public class SelectionPopupControllerImpl extends ActionModeCallbackHelper menu.removeItem(R.id.select_action_menu_share); } @@ -98,7 +98,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/select 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 -@@ -1859,6 +1859,21 @@ +@@ -1951,6 +1951,21 @@ ] } ], diff --git a/build/patches/Disable-some-signed-exchange-features.patch b/build/patches/Disable-some-signed-exchange-features.patch index 72650fef..5c3bc352 100644 --- a/build/patches/Disable-some-signed-exchange-features.patch +++ b/build/patches/Disable-some-signed-exchange-features.patch @@ -9,7 +9,7 @@ Subject: Disable some signed exchange 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 -@@ -701,7 +701,7 @@ const base::Feature kSignedExchangePrefetchCacheForNavigations{ +@@ -704,7 +704,7 @@ const base::Feature kSignedExchangePrefetchCacheForNavigations{ // Signed Exchange Reporting for distributors // https://www.chromestatus.com/features/5687904902840320 const base::Feature kSignedExchangeReportingForDistributors{ @@ -18,7 +18,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c // Subresource prefetching+loading via Signed HTTP Exchange // https://www.chromestatus.com/features/5126805474246656 -@@ -711,7 +711,7 @@ const base::Feature kSignedExchangeSubresourcePrefetch{ +@@ -714,7 +714,7 @@ const base::Feature kSignedExchangeSubresourcePrefetch{ // Origin-Signed HTTP Exchanges (for WebPackage Loading) // https://www.chromestatus.com/features/5745285984681984 const base::Feature kSignedHTTPExchange{"SignedHTTPExchange", diff --git a/build/patches/Disable-text-fragments-by-default.patch b/build/patches/Disable-text-fragments-by-default.patch index b515c6ad..dc597b81 100644 --- a/build/patches/Disable-text-fragments-by-default.patch +++ b/build/patches/Disable-text-fragments-by-default.patch @@ -18,17 +18,17 @@ 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 @@ -5383,6 +5383,7 @@ const FeatureEntry kFeatureEntries[] = { - - {"happiness-tracking-surveys-for-desktop-settings-privacy", - flag_descriptions::kHappinessTrackingSurveysForDesktopSettingsPrivacyName, + flag_descriptions::kSharingHubDesktopOmniboxDescription, kOsDesktop, + FEATURE_VALUE_TYPE(sharing_hub::kSharingHubDesktopOmnibox)}, + #endif // defined(OS_WIN) || defined(OS_MAC) || defined(OS_LINUX) + // will override runtime text fragment identifiers setting too - flag_descriptions:: - kHappinessTrackingSurveysForDesktopSettingsPrivacyDescription, - kOsDesktop, + + #if BUILDFLAG(IS_CHROMEOS_ASH) + {"ash-enable-pip-rounded-corners", 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 -@@ -2968,7 +2968,7 @@ +@@ -2941,7 +2941,7 @@ { "name": "ev-details-in-page-info", "owners": [ "cthomp" ], @@ -52,7 +52,7 @@ diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/pre diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc --- a/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc -@@ -266,6 +266,7 @@ void SetRuntimeFeaturesFromChromiumFeatures() { +@@ -263,6 +263,7 @@ void SetRuntimeFeaturesFromChromiumFeatures() { {wf::EnableMouseSubframeNoImplicitCapture, features::kMouseSubframeNoImplicitCapture}, {wf::EnableNeverSlowMode, features::kNeverSlowMode}, @@ -63,7 +63,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features. 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 -@@ -348,7 +348,7 @@ const base::Feature kStorageAccessAPI{"StorageAccessAPI", +@@ -370,7 +370,7 @@ const base::Feature kStorageAccessAPI{"StorageAccessAPI", // Enable text snippets in URL fragments. https://crbug.com/919204. const base::Feature kTextFragmentAnchor{"TextFragmentAnchor", @@ -75,7 +75,7 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc --- a/third_party/blink/renderer/core/dom/document.cc +++ b/third_party/blink/renderer/core/dom/document.cc -@@ -4069,6 +4069,10 @@ void Document::SetURL(const KURL& url) { +@@ -4070,6 +4070,10 @@ void Document::SetURL(const KURL& url) { } } @@ -86,7 +86,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink // Strip the fragment directive from the URL fragment. E.g. "#id:~:text=a" // --> "#id". See https://github.com/WICG/scroll-to-text-fragment. String fragment = new_url.FragmentIdentifier(); -@@ -4082,6 +4086,7 @@ void Document::SetURL(const KURL& url) { +@@ -4083,6 +4087,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 -@@ -1248,34 +1248,25 @@ TEST_P(TextFragmentRelatedMetricTest, ElementIdSuccessFailureCounts) { +@@ -1249,34 +1249,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 -@@ -2119,8 +2119,7 @@ +@@ -2130,8 +2130,7 @@ }, { name: "TextFragmentIdentifiers", diff --git a/build/patches/Disable-third-party-cookies-by-default.patch b/build/patches/Disable-third-party-cookies-by-default.patch index f8a917f0..79bca8ad 100644 --- a/build/patches/Disable-third-party-cookies-by-default.patch +++ b/build/patches/Disable-third-party-cookies-by-default.patch @@ -10,9 +10,9 @@ 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 -@@ -697,7 +697,7 @@ void RegisterProfilePrefsForMigration( +@@ -698,7 +698,7 @@ void RegisterProfilePrefsForMigration( - registry->RegisterDictionaryPref(kObservedSessionTime); + chrome_browser_net::secure_dns::RegisterProbesSettingBackupPref(registry); - registry->RegisterBooleanPref(kBlockThirdPartyCookies, false); + registry->RegisterBooleanPref(kBlockThirdPartyCookies, true); diff --git a/build/patches/Disable-unified-autoplay-feature.patch b/build/patches/Disable-unified-autoplay-feature.patch index 971b0cbc..43f2c1d7 100644 --- a/build/patches/Disable-unified-autoplay-feature.patch +++ b/build/patches/Disable-unified-autoplay-feature.patch @@ -9,7 +9,7 @@ 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 -@@ -470,7 +470,7 @@ const base::Feature kUseR16Texture{"use-r16-texture", +@@ -498,7 +498,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", diff --git a/build/patches/Do-not-build-API-keys-infobar.patch b/build/patches/Do-not-build-API-keys-infobar.patch index 2ef82125..129775f3 100644 --- a/build/patches/Do-not-build-API-keys-infobar.patch +++ b/build/patches/Do-not-build-API-keys-infobar.patch @@ -9,7 +9,7 @@ Subject: Do not build API keys infobar 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 -@@ -1180,8 +1180,6 @@ static_library("ui") { +@@ -1195,8 +1195,6 @@ static_library("ui") { "singleton_tabs.h", "startup/automation_infobar_delegate.cc", "startup/automation_infobar_delegate.h", diff --git a/build/patches/Do-not-compile-QR-code-sharing.patch b/build/patches/Do-not-compile-QR-code-sharing.patch index 8f5b3ece..407b3bce 100644 --- a/build/patches/Do-not-compile-QR-code-sharing.patch +++ b/build/patches/Do-not-compile-QR-code-sharing.patch @@ -11,7 +11,7 @@ Subject: Do not compile QR code sharing diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java --- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java -@@ -71,7 +71,6 @@ import org.chromium.chrome.browser.share.ShareButtonController; +@@ -78,7 +78,6 @@ import org.chromium.chrome.browser.share.ShareButtonController; import org.chromium.chrome.browser.share.ShareDelegate; import org.chromium.chrome.browser.share.ShareDelegate.ShareOrigin; import org.chromium.chrome.browser.share.ShareUtils; @@ -19,13 +19,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi import org.chromium.chrome.browser.tab.AccessibilityVisibilityHandler; import org.chromium.chrome.browser.tab.AutofillSessionLifetimeController; import org.chromium.chrome.browser.tab.Tab; -@@ -306,10 +305,6 @@ public class RootUiCoordinator +@@ -401,10 +400,6 @@ public class RootUiCoordinator } public void onAttachFragment(Fragment fragment) { - if (fragment instanceof QrCodeDialog) { - QrCodeDialog qrCodeDialog = (QrCodeDialog) fragment; -- qrCodeDialog.setAndroidPermissionDelegate(mActivity.getWindowAndroid()); +- qrCodeDialog.setAndroidPermissionDelegate(mWindowAndroid); - } } @@ -74,7 +74,7 @@ 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 -@@ -22,24 +22,6 @@ share_java_sources = [ +@@ -21,24 +21,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", 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 5d107697..a5e97a08 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 -@@ -861,11 +861,7 @@ const base::Feature kShow10_10ObsoleteInfobar{ +@@ -896,11 +896,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 8b862642..fb59126a 100644 --- a/build/patches/Enable-darken-websites-checkbox-in-themes.patch +++ b/build/patches/Enable-darken-websites-checkbox-in-themes.patch @@ -4,22 +4,18 @@ Subject: Enable darken websites checkbox in themes Unexpire #darken-websites-checkbox-in-themes-setting --- - chrome/browser/flag-metadata.json | 6 +++--- + chrome/browser/flag-metadata.json | 2 +- chrome/browser/flags/android/chrome_feature_list.cc | 2 +- - 2 files changed, 4 insertions(+), 4 deletions(-) + 2 files changed, 2 insertions(+), 2 deletions(-) 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 -@@ -917,9 +917,9 @@ - "expiry_milestone": 100 - }, +@@ -903,7 +903,7 @@ { -- "name": "darken-websites-checkbox-in-themes-setting", -- "owners": [ "lazzzis@google.com", "twellington" ], -- "expiry_milestone": 92 -+ "name": "darken-websites-checkbox-in-themes-setting", -+ "owners": [ "lazzzis@google.com", "twellington" ], + "name": "darken-websites-checkbox-in-themes-setting", + "owners": [ "lazzzis@google.com", "twellington" ], +- "expiry_milestone": 98 + "expiry_milestone": -1 }, { @@ -27,15 +23,15 @@ 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 -@@ -540,7 +540,7 @@ const base::Feature kContextualSearchTranslations{ +@@ -560,7 +560,7 @@ const base::Feature kContextualSearchTranslations{ "ContextualSearchTranslations", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kDarkenWebsitesCheckboxInThemesSetting{ - "DarkenWebsitesCheckboxInThemesSetting", base::FEATURE_DISABLED_BY_DEFAULT}; + "DarkenWebsitesCheckboxInThemesSetting", base::FEATURE_ENABLED_BY_DEFAULT}; - const base::Feature kDirectActions{"DirectActions", - base::FEATURE_ENABLED_BY_DEFAULT}; + const base::Feature kQuickActionSearchWidgetAndroidDinoVariant{ + "QuickActionSearchWidgetAndroidDinoVariant", -- 2.17.1 diff --git a/build/patches/Enable-network-isolation-features.patch b/build/patches/Enable-network-isolation-features.patch index 0e4e2011..1e0131a3 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 -@@ -92,30 +92,30 @@ const base::Feature kNetworkQualityEstimator{"NetworkQualityEstimator", +@@ -93,30 +93,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 17de7305..c1cca7c9 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 -@@ -377,7 +377,7 @@ const base::Feature kComputePressure{"ComputePressure", +@@ -399,7 +399,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-share-intent.patch b/build/patches/Enable-share-intent.patch index a8130db6..06b7a783 100644 --- a/build/patches/Enable-share-intent.patch +++ b/build/patches/Enable-share-intent.patch @@ -27,7 +27,7 @@ See also: https://github.com/bromite/bromite/issues/1062 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 -@@ -716,6 +716,7 @@ chrome_java_resources = [ +@@ -719,6 +719,7 @@ chrome_java_resources = [ "java/res/layout/share_sheet_content.xml", "java/res/layout/share_sheet_item.xml", "java/res/layout/sharing_device_picker.xml", @@ -38,7 +38,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 -@@ -1046,6 +1046,7 @@ chrome_java_sources = [ +@@ -1053,6 +1053,7 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/sharing/shared_clipboard/SharedClipboardMessageHandler.java", "java/src/org/chromium/chrome/browser/sharing/shared_clipboard/SharedClipboardMetrics.java", "java/src/org/chromium/chrome/browser/sharing/shared_clipboard/SharedClipboardShareActivity.java", @@ -49,7 +49,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_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 -@@ -803,6 +803,24 @@ by a child template that "extends" this file. +@@ -810,6 +810,24 @@ by a child template that "extends" this file. @@ -165,15 +165,15 @@ new file mode 100644 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 -@@ -73,6 +73,7 @@ import org.chromium.chrome.browser.rlz.RevenueStats; +@@ -72,6 +72,7 @@ import org.chromium.chrome.browser.quickactionsearchwidget.QuickActionSearchWidg + 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; +import org.chromium.chrome.browser.sharing.shared_intent.SharedIntentShareActivity; + import org.chromium.chrome.browser.tab.state.ShoppingPersistedTabData; + import org.chromium.chrome.browser.util.AfterStartupTaskUtils; import org.chromium.chrome.browser.webapps.WebApkVersionManager; - import org.chromium.chrome.browser.webapps.WebappRegistry; - import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory; -@@ -399,6 +400,8 @@ public class ProcessInitializationHandler { +@@ -405,6 +406,8 @@ public class ProcessInitializationHandler { deferredStartupHandler.addDeferredTask( () -> IncognitoTabLauncher.updateComponentEnabledState()); @@ -304,9 +304,9 @@ new file mode 100644 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 -@@ -5536,6 +5536,10 @@ const FeatureEntry kFeatureEntries[] = { - flag_descriptions::kSharedClipboardUIDescription, kOsAll, - FEATURE_VALUE_TYPE(kSharedClipboardUI)}, +@@ -5408,6 +5408,10 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(sharing_hub::kDesktopScreenshots)}, + #endif + {"shared-intent-ui", flag_descriptions::kSharedIntentUIName, + flag_descriptions::kSharedIntentUIDescription, kOsAll, @@ -318,9 +318,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 -@@ -2382,6 +2382,11 @@ const char kSharedClipboardUIDescription[] = - "Enables shared clipboard feature signals to be handled by showing " - "a list of user's available devices to share the clipboard."; +@@ -2275,6 +2275,11 @@ const char kSharingDesktopScreenshotsDescription[] = + "Enables taking" + " screenshots from the desktop sharing hub."; +const char kSharedIntentUIName[] = + "Enable shared feature"; @@ -333,9 +333,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 -@@ -1364,6 +1364,9 @@ extern const char kServiceWorkerSubresourceFilterDescription[]; - extern const char kSharedClipboardUIName[]; - extern const char kSharedClipboardUIDescription[]; +@@ -1307,6 +1307,9 @@ extern const char kSharedClipboardUIDescription[]; + extern const char kSharingDesktopScreenshotsName[]; + extern const char kSharingDesktopScreenshotsDescription[]; +extern const char kSharedIntentUIName[]; +extern const char kSharedIntentUIDescription[]; @@ -346,7 +346,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 -@@ -243,6 +243,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -256,6 +256,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kServiceManagerForDownload, &kShareButtonInTopToolbar, &kSharedClipboardUI, @@ -354,7 +354,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse &kSharingHubLinkToggle, &kSingleTouchSelect, &kSpannableInlineAutocomplete, -@@ -607,6 +608,9 @@ const base::Feature kSearchEnginePromoExistingDevice{ +@@ -640,6 +641,9 @@ const base::Feature kSearchEnginePromoExistingDevice{ const base::Feature kSearchEnginePromoNewDevice{ "SearchEnginePromo.NewDevice", base::FEATURE_ENABLED_BY_DEFAULT}; @@ -367,7 +367,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 -@@ -117,6 +117,7 @@ extern const base::Feature kRelatedSearchesSimplifiedUx; +@@ -123,6 +123,7 @@ extern const base::Feature kRelatedSearchesSimplifiedUx; extern const base::Feature kRelatedSearchesUi; extern const base::Feature kSearchEnginePromoExistingDevice; extern const base::Feature kSearchEnginePromoNewDevice; @@ -378,9 +378,9 @@ 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 -@@ -477,6 +477,7 @@ public abstract class ChromeFeatureList { - public static final String SHARE_BUTTON_IN_TOP_TOOLBAR = "ShareButtonInTopToolbar"; +@@ -495,6 +495,7 @@ public abstract class ChromeFeatureList { public static final String SHARE_USAGE_RANKING = "ShareUsageRanking"; + public static final String SHARE_USAGE_RANKING_FIXED_MORE = "ShareUsageRankingFixedMore"; public static final String SHARED_CLIPBOARD_UI = "SharedClipboardUI"; + public static final String SHARED_INTENT_UI = "SharedIntentUI"; public static final String SHARED_HIGHLIGHTING_V2 = "SharedHighlightingV2"; @@ -389,7 +389,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f 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 -@@ -4272,6 +4272,19 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

diff --git a/build/patches/Force-open-external-links-in-incognito.patch b/build/patches/Force-open-external-links-in-incognito.patch index 5260145f..b4f860aa 100644 --- a/build/patches/Force-open-external-links-in-incognito.patch +++ b/build/patches/Force-open-external-links-in-incognito.patch @@ -11,7 +11,7 @@ Subject: Force open external links in incognito 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 -@@ -57,6 +57,11 @@ +@@ -61,6 +61,11 @@ android:title="@string/allow_custom_tab_intents_title" android:summary="@string/allow_custom_tab_intents_summary" android:defaultValue="false" /> @@ -26,7 +26,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/LaunchIntentDispatcher.java b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java --- a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java -@@ -427,6 +427,17 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega +@@ -421,6 +421,17 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega if (Intent.ACTION_VIEW.equals(newIntent.getAction()) && !IntentHandler.wasIntentSenderChrome(newIntent)) { @@ -47,7 +47,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis 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 -@@ -4317,6 +4317,14 @@ To change this setting, <resetlink>reset sync

<resetlink>reset sync

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 6f86bac8..e4b84c45 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 @@ -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(); -@@ -6604,6 +6607,61 @@ void Document::setAllowDeclarativeShadowRoots(bool val) { +@@ -6536,6 +6539,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); -@@ -6661,6 +6719,10 @@ void Document::FinishedParsing() { +@@ -6591,6 +6649,10 @@ void Document::FinishedParsing() { if (frame->GetFrameScheduler()) frame->GetFrameScheduler()->OnDomContentLoaded(); @@ -126,7 +126,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink 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 -@@ -1748,6 +1748,9 @@ class CORE_EXPORT Document : public ContainerNode, +@@ -1746,6 +1746,9 @@ class CORE_EXPORT Document : public ContainerNode, void AddAXContext(AXContext*); void RemoveAXContext(AXContext*); diff --git a/build/patches/JIT-less-toggle.patch b/build/patches/JIT-less-toggle.patch index 0c44370e..6e289161 100644 --- a/build/patches/JIT-less-toggle.patch +++ b/build/patches/JIT-less-toggle.patch @@ -13,7 +13,7 @@ Subject: JIT-less toggle 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 -@@ -24,6 +24,11 @@ +@@ -28,6 +28,11 @@ android:title="@string/preload_pages_title" android:summary="@string/preload_pages_summary" android:persistent="false"/> @@ -36,7 +36,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting import android.os.Build; import android.content.SharedPreferences; import android.os.Bundle; -@@ -65,6 +66,7 @@ public class PrivacySettings +@@ -67,6 +68,7 @@ public class PrivacySettings private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit"; private static final String PREF_PROXY_OPTIONS = "proxy"; private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; @@ -44,7 +44,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting // moved from SyncAndServicesSettings.java private static final String PREF_SERVICES_CATEGORY = "services_category"; -@@ -165,6 +167,10 @@ public class PrivacySettings +@@ -176,6 +178,10 @@ public class PrivacySettings .setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue); } else if (PREF_SEARCH_SUGGESTIONS.equals(key)) { prefService.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue); @@ -55,7 +55,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting } else if (PREF_AUTOFILL_ASSISTANT.equals(key)) { mSharedPreferencesManager.writeBoolean( ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED, (boolean) newValue); -@@ -245,6 +251,12 @@ public class PrivacySettings +@@ -259,6 +265,12 @@ public class PrivacySettings historyInIncognitoPref.setChecked( prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED)); } diff --git a/build/patches/Logcat-crash-reports-UI.patch b/build/patches/Logcat-crash-reports-UI.patch index 61825d9a..a75ca07a 100644 --- a/build/patches/Logcat-crash-reports-UI.patch +++ b/build/patches/Logcat-crash-reports-UI.patch @@ -26,7 +26,7 @@ Subject: Logcat crash reports UI diff --git a/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceImpl.java --- a/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceImpl.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadServiceImpl.java -@@ -42,6 +42,11 @@ import java.lang.annotation.Retention; +@@ -45,6 +45,11 @@ import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.concurrent.atomic.AtomicBoolean; @@ -38,7 +38,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpU /** * Service that is responsible for uploading crash minidumps to the Google crash server. */ -@@ -444,4 +449,21 @@ public class MinidumpUploadServiceImpl extends MinidumpUploadService.Impl { +@@ -455,4 +460,21 @@ public class MinidumpUploadServiceImpl extends MinidumpUploadService.Impl { tryUploadCrashDump(renamedMinidumpFile); } } @@ -155,7 +155,7 @@ diff --git a/chrome/browser/net/chrome_network_delegate.cc b/chrome/browser/net/ 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 -@@ -593,6 +593,7 @@ static_library("ui") { +@@ -594,6 +594,7 @@ static_library("ui") { "//third_party/re2", "//third_party/webrtc_overrides:webrtc_component", "//third_party/zlib", diff --git a/build/patches/Make-all-favicon-requests-on-demand.patch b/build/patches/Make-all-favicon-requests-on-demand.patch index 31db5b23..ed3a96a8 100644 --- a/build/patches/Make-all-favicon-requests-on-demand.patch +++ b/build/patches/Make-all-favicon-requests-on-demand.patch @@ -11,7 +11,7 @@ as long as the test is retained and still passes. diff --git a/components/favicon/core/favicon_database.cc b/components/favicon/core/favicon_database.cc --- a/components/favicon/core/favicon_database.cc +++ b/components/favicon/core/favicon_database.cc -@@ -504,6 +504,7 @@ FaviconBitmapID FaviconDatabase::AddFaviconBitmap( +@@ -506,6 +506,7 @@ FaviconBitmapID FaviconDatabase::AddFaviconBitmap( base::Time time, const gfx::Size& pixel_size) { DCHECK(icon_id); @@ -19,7 +19,7 @@ diff --git a/components/favicon/core/favicon_database.cc b/components/favicon/co sql::Statement statement(db_.GetCachedStatement( SQL_FROM_HERE, -@@ -556,8 +557,8 @@ bool FaviconDatabase::SetFaviconBitmap( +@@ -558,8 +559,8 @@ bool FaviconDatabase::SetFaviconBitmap( } else { statement.BindNull(0); } @@ -30,7 +30,7 @@ diff --git a/components/favicon/core/favicon_database.cc b/components/favicon/co statement.BindInt64(3, bitmap_id); return statement.Run(); -@@ -566,7 +567,7 @@ bool FaviconDatabase::SetFaviconBitmap( +@@ -568,7 +569,7 @@ bool FaviconDatabase::SetFaviconBitmap( bool FaviconDatabase::SetFaviconBitmapLastUpdateTime(FaviconBitmapID bitmap_id, base::Time time) { DCHECK(bitmap_id); @@ -39,7 +39,7 @@ diff --git a/components/favicon/core/favicon_database.cc b/components/favicon/co // If it is ON_DEMAND, reset last_requested to 0 and thus silently change the // type to ON_VISIT. sql::Statement statement( -@@ -576,7 +577,8 @@ bool FaviconDatabase::SetFaviconBitmapLastUpdateTime(FaviconBitmapID bitmap_id, +@@ -578,7 +579,8 @@ bool FaviconDatabase::SetFaviconBitmapLastUpdateTime(FaviconBitmapID bitmap_id, statement.BindInt64(0, time.ToDeltaSinceWindowsEpoch().InMicroseconds()); statement.BindInt64(1, 0); statement.BindInt64(2, bitmap_id); diff --git a/build/patches/Modify-default-preferences.patch b/build/patches/Modify-default-preferences.patch index ea37cea7..e2f93a39 100644 --- a/build/patches/Modify-default-preferences.patch +++ b/build/patches/Modify-default-preferences.patch @@ -3,19 +3,19 @@ Date: Sat, 2 May 2020 00:25:25 +0200 Subject: Modify default preferences --- - chrome/browser/background/background_mode_manager.cc | 2 +- - chrome/browser/chrome_content_browser_client.cc | 2 +- - chrome/browser/net/prediction_options.cc | 2 +- - chrome/browser/net/prediction_options.h | 2 +- - chrome/browser/profiles/profile.cc | 2 +- - .../resources/settings/reset_page/reset_profile_dialog.html | 2 +- - chrome/browser/ui/browser_ui_prefs.cc | 4 ++-- - chrome/service/cloud_print/connector_settings.cc | 2 +- - components/autofill/core/browser/browser_autofill_manager.h | 4 ++-- - components/autofill/core/common/autofill_prefs.cc | 2 +- - components/bookmarks/browser/bookmark_utils.cc | 4 ++-- - components/safe_browsing/core/common/safe_browsing_prefs.cc | 4 ++-- - 12 files changed, 16 insertions(+), 16 deletions(-) + chrome/browser/background/background_mode_manager.cc | 2 +- + chrome/browser/chrome_content_browser_client.cc | 2 +- + chrome/browser/net/prediction_options.cc | 2 +- + chrome/browser/net/prediction_options.h | 2 +- + chrome/browser/profiles/profile.cc | 2 +- + .../resources/settings/reset_page/reset_profile_dialog.html | 2 +- + chrome/browser/ui/browser_ui_prefs.cc | 6 +++--- + chrome/service/cloud_print/connector_settings.cc | 2 +- + components/autofill/core/browser/browser_autofill_manager.h | 4 ++-- + components/autofill/core/common/autofill_prefs.cc | 2 +- + components/bookmarks/browser/bookmark_utils.cc | 4 ++-- + components/safe_browsing/core/common/safe_browsing_prefs.cc | 4 ++-- + 12 files changed, 17 insertions(+), 17 deletions(-) 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 @@ -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 -@@ -1288,7 +1288,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs( +@@ -1186,7 +1186,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs( void ChromeContentBrowserClient::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false); @@ -96,12 +96,13 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u registry->RegisterBooleanPref(prefs::kWebAppCreateInAppsMenu, true); registry->RegisterBooleanPref(prefs::kWebAppCreateInQuickLaunchBar, true); registry->RegisterBooleanPref( -- prefs::kOfferTranslateEnabled, true, -+ prefs::kOfferTranslateEnabled, false, +- translate::prefs::kOfferTranslateEnabled, true, ++ translate::prefs::kOfferTranslateEnabled, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); registry->RegisterStringPref(prefs::kCloudPrintEmail, std::string()); - registry->RegisterBooleanPref(prefs::kCloudPrintProxyEnabled, true); +- registry->RegisterBooleanPref(prefs::kCloudPrintProxyEnabled, true); - registry->RegisterBooleanPref(prefs::kCloudPrintSubmitEnabled, true); ++ registry->RegisterBooleanPref(prefs::kCloudPrintProxyEnabled, false); + registry->RegisterBooleanPref(prefs::kCloudPrintSubmitEnabled, false); registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacement); registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacementPopup); @@ -121,7 +122,7 @@ diff --git a/chrome/service/cloud_print/connector_settings.cc b/chrome/service/c diff --git a/components/autofill/core/browser/browser_autofill_manager.h b/components/autofill/core/browser/browser_autofill_manager.h --- a/components/autofill/core/browser/browser_autofill_manager.h +++ b/components/autofill/core/browser/browser_autofill_manager.h -@@ -682,9 +682,9 @@ class BrowserAutofillManager +@@ -681,9 +681,9 @@ class BrowserAutofillManager std::unique_ptr credit_card_form_event_logger_; // Have we logged whether Autofill is enabled for this page load? 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 fabe4c59..97b80887 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 @@ -12,7 +12,7 @@ Search suggestions, autofill assistant and contextual search 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 -@@ -56,4 +56,24 @@ +@@ -60,4 +60,24 @@ android:key="privacy_sandbox" android:title="@string/prefs_privacy_sandbox" android:fragment="org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment"/> @@ -46,9 +46,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting import org.chromium.chrome.R; +import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl; + import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.preferences.Pref; - import org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings; -@@ -41,6 +42,13 @@ import org.chromium.ui.text.SpanApplier; +@@ -42,6 +43,13 @@ import org.chromium.ui.text.SpanApplier; import org.chromium.base.Log; @@ -62,7 +62,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting /** * Fragment to keep track of the all the privacy related preferences. */ -@@ -58,6 +66,18 @@ public class PrivacySettings +@@ -60,6 +68,18 @@ public class PrivacySettings private static final String PREF_PROXY_OPTIONS = "proxy"; private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox"; @@ -81,7 +81,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting private ManagedPreferenceDelegate mManagedPreferenceDelegate; @Override -@@ -88,6 +108,29 @@ public class PrivacySettings +@@ -90,6 +110,29 @@ public class PrivacySettings mManagedPreferenceDelegate = createManagedPreferenceDelegate(); @@ -111,7 +111,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting ChromeSwitchPreference canMakePaymentPref = (ChromeSwitchPreference) findPreference(PREF_CAN_MAKE_PAYMENT); canMakePaymentPref.setOnPreferenceChangeListener(this); -@@ -120,6 +163,11 @@ public class PrivacySettings +@@ -131,6 +174,11 @@ public class PrivacySettings } else if (PREF_CAN_MAKE_PAYMENT.equals(key)) { UserPrefs.get(Profile.getLastUsedRegularProfile()) .setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue); @@ -123,7 +123,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting } else if (PREF_NETWORK_PREDICTIONS.equals(key)) { PrivacyPreferencesManagerImpl.getInstance().setNetworkPredictionEnabled( (boolean) newValue); -@@ -135,6 +183,16 @@ public class PrivacySettings +@@ -149,6 +197,16 @@ public class PrivacySettings return true; } @@ -140,7 +140,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting @Override public void onResume() { super.onResume(); -@@ -145,7 +203,7 @@ public class PrivacySettings +@@ -159,7 +217,7 @@ public class PrivacySettings * Updates the summaries for several preferences. */ public void updateSummaries() { diff --git a/build/patches/Multiple-fingerprinting-mitigations.patch b/build/patches/Multiple-fingerprinting-mitigations.patch index e7b8ccf3..145eb4e0 100644 --- a/build/patches/Multiple-fingerprinting-mitigations.patch +++ b/build/patches/Multiple-fingerprinting-mitigations.patch @@ -56,7 +56,7 @@ Added flag --fingerprinting-canvas-image-data-noise to disable Canvas image data diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -2266,6 +2266,7 @@ static_library("browser") { +@@ -2276,6 +2276,7 @@ static_library("browser") { "//services/device/public/cpp:device_features", "//services/device/public/cpp/serial:switches", "//services/device/public/cpp/usb", @@ -75,7 +75,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc #include "storage/browser/quota/quota_features.h" #include "third_party/blink/public/common/features.h" #include "third_party/blink/public/common/forcedark/forcedark_switches.h" -@@ -2836,6 +2837,20 @@ const FeatureEntry kFeatureEntries[] = { +@@ -2731,6 +2732,20 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kWebrtcUseMinMaxVEADimensionsName, flag_descriptions::kWebrtcUseMinMaxVEADimensionsDescription, kOsAll, FEATURE_VALUE_TYPE(blink::features::kWebRtcUseMinMaxVEADimensions)}, @@ -99,7 +99,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn --- a/content/browser/BUILD.gn +++ b/content/browser/BUILD.gn -@@ -223,6 +223,7 @@ source_set("browser") { +@@ -222,6 +222,7 @@ source_set("browser") { "//third_party/libyuv", "//third_party/re2", "//third_party/sqlite", @@ -110,7 +110,7 @@ diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn 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 -@@ -213,6 +213,7 @@ +@@ -215,6 +215,7 @@ #include "third_party/blink/public/common/user_agent/user_agent_metadata.h" #include "third_party/blink/public/mojom/disk_allocator.mojom.h" #include "third_party/blink/public/public_buildflags.h" @@ -118,7 +118,7 @@ diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content #include "third_party/skia/include/core/SkBitmap.h" #include "ui/accessibility/accessibility_switches.h" #include "ui/base/ui_base_switches.h" -@@ -3431,6 +3432,9 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( +@@ -3394,6 +3395,9 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( switches::kDisableBreakpad, switches::kDisableDatabases, switches::kDisableFileSystem, @@ -142,7 +142,7 @@ diff --git a/content/child/BUILD.gn b/content/child/BUILD.gn diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc --- a/content/child/runtime_features.cc +++ b/content/child/runtime_features.cc -@@ -39,6 +39,8 @@ +@@ -38,6 +38,8 @@ #include "ui/gl/gl_switches.h" #include "ui/native_theme/native_theme_features.h" @@ -151,7 +151,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features. #if defined(OS_ANDROID) #include "base/android/build_info.h" #endif -@@ -547,6 +549,13 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs( +@@ -542,6 +544,13 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs( if (!command_line.HasSwitch(switches::kDisableYUVImageDecoding) && base::FeatureList::IsEnabled( blink::features::kDecodeLossyWebPImagesToYUV)) { @@ -169,15 +169,15 @@ 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 @@ -217,6 +217,9 @@ class WebRuntimeFeatures { + BLINK_PLATFORM_EXPORT static void EnableAutomationControlled(bool); + BLINK_PLATFORM_EXPORT static void EnableAutoplayIgnoresWebAudio(bool); BLINK_PLATFORM_EXPORT static void EnableMediaControlsExpandGesture(bool); - BLINK_PLATFORM_EXPORT static void EnableGetDisplayMedia(bool); - BLINK_PLATFORM_EXPORT static void EnableGetCurrentBrowsingContextMedia(bool); + BLINK_PLATFORM_EXPORT static void EnableFingerprintingClientRectsNoise(bool); + BLINK_PLATFORM_EXPORT static void EnableFingerprintingCanvasMeasureTextNoise(bool); + BLINK_PLATFORM_EXPORT static void EnableFingerprintingCanvasImageDataNoise(bool); + BLINK_PLATFORM_EXPORT static void EnableGetDisplayMedia(bool); BLINK_PLATFORM_EXPORT static void EnableAllowSyncXHRInPageDismissal(bool); BLINK_PLATFORM_EXPORT static void - EnableSignedExchangePrefetchCacheForNavigations(bool); diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc --- a/third_party/blink/renderer/core/dom/document.cc +++ b/third_party/blink/renderer/core/dom/document.cc @@ -227,7 +227,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/ AtomicString visibilityState() const; bool IsPageVisible() const; bool hidden() const; -@@ -2054,6 +2058,9 @@ class CORE_EXPORT Document : public ContainerNode, +@@ -2052,6 +2056,9 @@ class CORE_EXPORT Document : public ContainerNode, base::ElapsedTimer start_time_; @@ -240,7 +240,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/ diff --git a/third_party/blink/renderer/core/dom/element.cc b/third_party/blink/renderer/core/dom/element.cc --- a/third_party/blink/renderer/core/dom/element.cc +++ b/third_party/blink/renderer/core/dom/element.cc -@@ -2103,6 +2103,11 @@ DOMRectList* Element::getClientRects() { +@@ -2107,6 +2107,11 @@ DOMRectList* Element::getClientRects() { DCHECK(element_layout_object); GetDocument().AdjustFloatQuadsForScrollAndAbsoluteZoom( quads, *element_layout_object); @@ -252,7 +252,7 @@ diff --git a/third_party/blink/renderer/core/dom/element.cc b/third_party/blink/ return MakeGarbageCollected(quads); } -@@ -2120,6 +2125,9 @@ FloatRect Element::GetBoundingClientRectNoLifecycleUpdate() const { +@@ -2124,6 +2129,9 @@ FloatRect Element::GetBoundingClientRectNoLifecycleUpdate() const { DCHECK(element_layout_object); GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result, *element_layout_object); @@ -278,7 +278,7 @@ diff --git a/third_party/blink/renderer/core/dom/range.cc b/third_party/blink/re return MakeGarbageCollected(quads); } -@@ -1717,7 +1723,11 @@ FloatRect Range::BoundingRect() const { +@@ -1718,7 +1724,11 @@ FloatRect Range::BoundingRect() const { // If all rects are empty, return the first rect. if (result.IsEmpty() && !quads.IsEmpty()) @@ -335,14 +335,14 @@ diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_c --- 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 @@ -27,6 +27,7 @@ + #include "third_party/blink/renderer/platform/geometry/float_quad.h" + #include "third_party/blink/renderer/platform/graphics/bitmap_image.h" + #include "third_party/blink/renderer/platform/graphics/graphics_context.h" ++#include "third_party/blink/renderer/platform/graphics/static_bitmap_image.h" #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" -+#include "third_party/blink/renderer/platform/graphics/static_bitmap_image.h" - - namespace blink { - -@@ -2091,6 +2092,10 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( +@@ -2304,6 +2305,10 @@ ImageData* BaseRenderingContext2D::getImageDataInternal( snapshot->PaintImageForCurrentFrame().GetSkImageInfo().bounds(); DCHECK(!bounds.intersect(SkIRect::MakeXYWH(sx, sy, sw, sh))); } @@ -356,7 +356,7 @@ 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 -@@ -946,9 +946,15 @@ TextMetrics* CanvasRenderingContext2D::measureText(const String& text) { +@@ -960,9 +960,15 @@ TextMetrics* CanvasRenderingContext2D::measureText(const String& text) { TextDirection direction = ToTextDirection(GetState().GetDirection(), canvas()); @@ -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 -@@ -1637,7 +1637,9 @@ component("platform") { +@@ -1636,7 +1636,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", -@@ -1705,6 +1707,7 @@ component("platform") { +@@ -1704,6 +1706,7 @@ component("platform") { "//third_party/blink/public/strings", "//third_party/blink/renderer/platform/wtf", "//third_party/ced", @@ -398,7 +398,7 @@ 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 -@@ -698,4 +698,16 @@ void WebRuntimeFeatures::EnableCLSScrollAnchoring(bool enable) { +@@ -700,4 +700,16 @@ void WebRuntimeFeatures::EnableCLSScrollAnchoring(bool enable) { RuntimeEnabledFeatures::SetCLSScrollAnchoringEnabled(enable); } @@ -631,7 +631,7 @@ 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 -@@ -985,6 +985,15 @@ +@@ -1003,6 +1003,15 @@ origin_trial_allows_third_party: true, status: "experimental", }, diff --git a/build/patches/Observe-WebContents-in-PPAPIDownloadRequest.patch b/build/patches/Observe-WebContents-in-PPAPIDownloadRequest.patch deleted file mode 100644 index 92ca5208..00000000 --- a/build/patches/Observe-WebContents-in-PPAPIDownloadRequest.patch +++ /dev/null @@ -1,91 +0,0 @@ -From: Daniel Rubery -Date: Tue, 28 Sep 2021 19:16:15 +0000 -Subject: Observe WebContents in PPAPIDownloadRequest - -If the WebContents is destroyed while the PPAPIDownloadRequest is -checking the allowlist, we end up with a UaF. The fix for this is to -observe the WebContents and cancel the request. - -(cherry picked from commit e7d560979f89705ea2844f9f64b5c7a598a03f2b) - -Bug: 1245578 -Change-Id: Idbe5c1cb966fe21ab1a49a7345a5b197afa0b807 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3150060 -Reviewed-by: Bettina Dea -Commit-Queue: Daniel Rubery -Cr-Original-Commit-Position: refs/heads/main@{#919488} -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3188403 -Auto-Submit: Daniel Rubery -Commit-Queue: Bettina Dea -Cr-Commit-Position: refs/branch-heads/4606@{#1241} -Cr-Branched-From: 35b0d5a9dc8362adfd44e2614f0d5b7402ef63d0-refs/heads/master@{#911515} ---- - .../download_protection/ppapi_download_request.cc | 6 ++++++ - .../download_protection/ppapi_download_request.h | 8 ++++++-- - 2 files changed, 12 insertions(+), 2 deletions(-) - -diff --git a/chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc b/chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc ---- a/chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc -+++ b/chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc -@@ -71,6 +71,8 @@ PPAPIDownloadRequest::PPAPIDownloadRequest( - return; - } - -+ Observe(web_contents); -+ - SafeBrowsingNavigationObserverManager* observer_manager = - service->GetNavigationObserverManager(web_contents); - if (observer_manager) { -@@ -138,6 +140,10 @@ GURL PPAPIDownloadRequest::GetDownloadRequestUrl() { - return url; - } - -+void PPAPIDownloadRequest::WebContentsDestroyed() { -+ Finish(RequestOutcome::REQUEST_DESTROYED, DownloadCheckResult::UNKNOWN); -+} -+ - // Allowlist checking needs to the done on the IO thread. - void PPAPIDownloadRequest::CheckAllowlistsOnIOThread( - const GURL& requestor_url, -diff --git a/chrome/browser/safe_browsing/download_protection/ppapi_download_request.h b/chrome/browser/safe_browsing/download_protection/ppapi_download_request.h ---- a/chrome/browser/safe_browsing/download_protection/ppapi_download_request.h -+++ b/chrome/browser/safe_browsing/download_protection/ppapi_download_request.h -@@ -12,6 +12,7 @@ - #include "base/memory/weak_ptr.h" - #include "chrome/browser/safe_browsing/download_protection/download_protection_util.h" - #include "components/sessions/core/session_id.h" -+#include "content/public/browser/web_contents_observer.h" - #include "url/gurl.h" - - namespace content { -@@ -43,7 +44,7 @@ class PPAPIDownloadRequest; - // - // PPAPIDownloadRequest objects are owned by the DownloadProtectionService - // indicated by |service|. --class PPAPIDownloadRequest { -+class PPAPIDownloadRequest : public content::WebContentsObserver { - public: - // The outcome of the request. These values are used for UMA. New values - // should only be added at the end. -@@ -70,7 +71,7 @@ class PPAPIDownloadRequest { - DownloadProtectionService* service, - scoped_refptr database_manager); - -- ~PPAPIDownloadRequest(); -+ ~PPAPIDownloadRequest() override; - - // Start the process of checking the download request. The callback passed as - // the |callback| parameter to the constructor will be invoked with the result -@@ -89,6 +90,9 @@ class PPAPIDownloadRequest { - // Returns the URL that will be used for download requests. - static GURL GetDownloadRequestUrl(); - -+ // WebContentsObserver implementation -+ void WebContentsDestroyed() override; -+ - private: - static const char kDownloadRequestUrl[]; - --- -2.17.1 - diff --git a/build/patches/Offer-builtin-autocomplete-for-chrome-flags.patch b/build/patches/Offer-builtin-autocomplete-for-chrome-flags.patch index 434862af..581fed53 100644 --- a/build/patches/Offer-builtin-autocomplete-for-chrome-flags.patch +++ b/build/patches/Offer-builtin-autocomplete-for-chrome-flags.patch @@ -9,7 +9,7 @@ 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 -@@ -355,6 +355,8 @@ std::vector ChromeAutocompleteProviderClient::GetBuiltinURLs() { +@@ -357,6 +357,8 @@ std::vector ChromeAutocompleteProviderClient::GetBuiltinURLs() { std::vector ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() { std::vector builtins_to_provide; diff --git a/build/patches/Open-YouTube-links-in-Bromite.patch b/build/patches/Open-YouTube-links-in-Bromite.patch index cdb8bab7..fbf20ef5 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 -@@ -1185,6 +1185,12 @@ public class ExternalNavigationHandler { +@@ -1216,6 +1216,12 @@ public class ExternalNavigationHandler { OverrideUrlLoadingAsyncActionType.UI_GATING_BROWSER_NAVIGATION); } diff --git a/build/patches/Override-UA-client-hint-for-model.patch b/build/patches/Override-UA-client-hint-for-model.patch new file mode 100644 index 00000000..40a0e463 --- /dev/null +++ b/build/patches/Override-UA-client-hint-for-model.patch @@ -0,0 +1,43 @@ +From: csagan5 <32685696+csagan5@users.noreply.github.com> +Date: Thu, 22 Jul 2021 23:10:52 +0200 +Subject: Override UA client hint for model + +Hard-code model to SAMSUNG SM-G960U +Disable permissions policy by default +--- + content/common/user_agent.cc | 7 +------ + content/public/common/content_features.cc | 2 +- + 2 files changed, 2 insertions(+), 7 deletions(-) + +diff --git a/content/common/user_agent.cc b/content/common/user_agent.cc +--- a/content/common/user_agent.cc ++++ b/content/common/user_agent.cc +@@ -282,12 +282,7 @@ std::string BuildUserAgentFromProduct(const std::string& product) { + + std::string BuildModelInfo() { + std::string model; +-#if defined(OS_ANDROID) +- // Only send the model information if on the release build of Android, +- // matching user agent behaviour. +- if (base::SysInfo::GetAndroidBuildCodename() == "REL") +- model = base::SysInfo::HardwareModelName(); +-#endif ++ model = "SAMSUNG SM-G960U"; + return model; + } + +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 +@@ -306,7 +306,7 @@ const base::Feature kExtraSafelistedRequestHeadersForOutOfBlinkCors{ + + // Controls whether Client Hints are guarded by Permissions Policy. + const base::Feature kFeaturePolicyForClientHints{ +- "FeaturePolicyForClientHints", base::FEATURE_ENABLED_BY_DEFAULT}; ++ "FeaturePolicyForClientHints", base::FEATURE_DISABLED_BY_DEFAULT}; + + // Enables the AccessHandle surface for File System Access API's Origin Private + // File System. Tracking bug: https://crbug.com/1218431. +-- +2.17.1 + diff --git a/build/patches/Prevents-non-browser-processes-from-requesting-memory-dumps.patch b/build/patches/Prevents-non-browser-processes-from-requesting-memory-dumps.patch deleted file mode 100644 index f45be4fd..00000000 --- a/build/patches/Prevents-non-browser-processes-from-requesting-memory-dumps.patch +++ /dev/null @@ -1,234 +0,0 @@ -From: Erik Chen -Date: Wed, 29 Sep 2021 21:16:47 +0000 -Subject: Prevents non-browser processes from requesting memory dumps. - -This CL makes several changes: - -(1) Causes the browser to reset non-browser -mojo::PendingReceiver. This means that non-browser -processes will never be able to use the Coordinator interface. - -(2) Add CHECKs to existing code to prevent non-browser processes from -attempting to use the Coordinator interface. - -A code audit shows that all Coordinator usages should already only be -from the browser process. - -Note that (2) is important since attempting to use an unbound interface -will trigger a nullptr dereference, which is undefined behavior. - -(cherry picked from commit d9cc471e122e9a2391a68fa7cd72ea50587d8d97) - -Bug: 1251787 -Change-Id: Ifbe9610cc0e373edaaa60fad46b447e8bdb3ec04 -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3174305 -Reviewed-by: Kinuko Yasuda -Reviewed-by: ssid -Auto-Submit: Erik Chen -Commit-Queue: Erik Chen -Cr-Original-Commit-Position: refs/heads/main@{#923693} -Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3194811 -Reviewed-by: Avi Drissman -Reviewed-by: Krishna Govind -Commit-Queue: Krishna Govind -Owners-Override: Krishna Govind -Cr-Commit-Position: refs/branch-heads/4606@{#1253} -Cr-Branched-From: 35b0d5a9dc8362adfd44e2614f0d5b7402ef63d0-refs/heads/master@{#911515} ---- - .../browser/browser_child_process_host_impl.cc | 3 +++ - .../renderer_host/render_process_host_impl.cc | 3 +++ - .../memory_instrumentation/coordinator_impl.cc | 3 ++- - .../client_process_impl.cc | 13 +++++++++++-- - .../client_process_impl.h | 3 +++ - .../memory_instrumentation.cc | 17 ++++++++++++----- - .../memory_instrumentation.h | 9 +++++++-- - 7 files changed, 41 insertions(+), 10 deletions(-) - -diff --git a/content/browser/browser_child_process_host_impl.cc b/content/browser/browser_child_process_host_impl.cc ---- a/content/browser/browser_child_process_host_impl.cc -+++ b/content/browser/browser_child_process_host_impl.cc -@@ -708,6 +708,9 @@ void BrowserChildProcessHostImpl::RegisterCoordinatorClient( - mojo::PendingReceiver receiver, - mojo::PendingRemote - client_process) { -+ // Intentionally disallow non-browser processes from getting a Coordinator. -+ receiver.reset(); -+ - // The child process may have already terminated by the time this message is - // dispatched. We do nothing in that case. - if (!IsProcessLaunched()) -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 -@@ -2838,6 +2838,9 @@ void RenderProcessHostImpl::RegisterCoordinatorClient( - mojo::PendingReceiver receiver, - mojo::PendingRemote - client_process) { -+ // Intentionally disallow non-browser processes from getting a Coordinator. -+ receiver.reset(); -+ - if (!GetProcess().IsValid()) { - // If the process dies before we get this message. we have no valid PID - // and there's nothing to register. -diff --git a/services/resource_coordinator/memory_instrumentation/coordinator_impl.cc b/services/resource_coordinator/memory_instrumentation/coordinator_impl.cc ---- a/services/resource_coordinator/memory_instrumentation/coordinator_impl.cc -+++ b/services/resource_coordinator/memory_instrumentation/coordinator_impl.cc -@@ -105,7 +105,8 @@ void CoordinatorImpl::RegisterClientProcess( - const absl::optional& service_name) { - DCHECK_CALLED_ON_VALID_THREAD(thread_checker_); - mojo::Remote process(std::move(client_process)); -- coordinator_receivers_.Add(this, std::move(receiver), process_id); -+ if (receiver.is_valid()) -+ coordinator_receivers_.Add(this, std::move(receiver), process_id); - process.set_disconnect_handler( - base::BindOnce(&CoordinatorImpl::UnregisterClientProcess, - base::Unretained(this), process_id)); -diff --git a/services/resource_coordinator/public/cpp/memory_instrumentation/client_process_impl.cc b/services/resource_coordinator/public/cpp/memory_instrumentation/client_process_impl.cc ---- a/services/resource_coordinator/public/cpp/memory_instrumentation/client_process_impl.cc -+++ b/services/resource_coordinator/public/cpp/memory_instrumentation/client_process_impl.cc -@@ -24,6 +24,11 @@ void ClientProcessImpl::CreateInstance( - mojo::PendingReceiver receiver, - mojo::PendingRemote coordinator, - bool is_browser_process) { -+ // Intentionally disallow non-browser processes from ever holding a -+ // Coordinator. -+ if (!is_browser_process) -+ coordinator.reset(); -+ - static ClientProcessImpl* instance = nullptr; - if (!instance) { - instance = new ClientProcessImpl( -@@ -39,10 +44,12 @@ ClientProcessImpl::ClientProcessImpl( - mojo::PendingRemote coordinator, - bool is_browser_process, - bool initialize_memory_instrumentation) -- : receiver_(this, std::move(receiver)) { -+ : receiver_(this, std::move(receiver)), -+ is_browser_process_(is_browser_process) { - if (initialize_memory_instrumentation) { - // Initialize the public-facing MemoryInstrumentation helper. -- MemoryInstrumentation::CreateInstance(std::move(coordinator)); -+ MemoryInstrumentation::CreateInstance(std::move(coordinator), -+ is_browser_process); - } else { - coordinator_.Bind(std::move(coordinator)); - } -@@ -110,6 +117,8 @@ void ClientProcessImpl::OnChromeMemoryDumpDone( - void ClientProcessImpl::RequestGlobalMemoryDump_NoCallback( - base::trace_event::MemoryDumpType dump_type, - base::trace_event::MemoryDumpLevelOfDetail level_of_detail) { -+ CHECK(is_browser_process_); -+ - if (!task_runner_->RunsTasksInCurrentSequence()) { - task_runner_->PostTask( - FROM_HERE, -diff --git a/services/resource_coordinator/public/cpp/memory_instrumentation/client_process_impl.h b/services/resource_coordinator/public/cpp/memory_instrumentation/client_process_impl.h ---- a/services/resource_coordinator/public/cpp/memory_instrumentation/client_process_impl.h -+++ b/services/resource_coordinator/public/cpp/memory_instrumentation/client_process_impl.h -@@ -96,6 +96,9 @@ class COMPONENT_EXPORT(RESOURCE_COORDINATOR_PUBLIC_MEMORY_INSTRUMENTATION) - mojo::Remote coordinator_; - scoped_refptr task_runner_; - -+ // Only browser process is allowed to request memory dumps. -+ const bool is_browser_process_; -+ - // TODO(crbug.com/728199): The observer is only used to setup and tear down - // MemoryDumpManager in each process. Setting up MemoryDumpManager should - // be moved away from TracingObserver. -diff --git a/services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.cc b/services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.cc ---- a/services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.cc -+++ b/services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.cc -@@ -21,10 +21,11 @@ void WrapGlobalMemoryDump( - - // static - void MemoryInstrumentation::CreateInstance( -- mojo::PendingRemote -- coordinator) { -+ mojo::PendingRemote coordinator, -+ bool is_browser_process) { - DCHECK(!g_instance); -- g_instance = new MemoryInstrumentation(std::move(coordinator)); -+ g_instance = -+ new MemoryInstrumentation(std::move(coordinator), is_browser_process); - } - - // static -@@ -33,8 +34,10 @@ MemoryInstrumentation* MemoryInstrumentation::GetInstance() { - } - - MemoryInstrumentation::MemoryInstrumentation( -- mojo::PendingRemote coordinator) -- : coordinator_(std::move(coordinator)) {} -+ mojo::PendingRemote coordinator, -+ bool is_browser_process) -+ : coordinator_(std::move(coordinator)), -+ is_browser_process_(is_browser_process) {} - - MemoryInstrumentation::~MemoryInstrumentation() { - g_instance = nullptr; -@@ -43,6 +46,7 @@ MemoryInstrumentation::~MemoryInstrumentation() { - void MemoryInstrumentation::RequestGlobalDump( - const std::vector& allocator_dump_names, - RequestGlobalDumpCallback callback) { -+ CHECK(is_browser_process_); - coordinator_->RequestGlobalMemoryDump( - MemoryDumpType::SUMMARY_ONLY, MemoryDumpLevelOfDetail::BACKGROUND, - MemoryDumpDeterminism::NONE, allocator_dump_names, -@@ -52,6 +56,7 @@ void MemoryInstrumentation::RequestGlobalDump( - void MemoryInstrumentation::RequestPrivateMemoryFootprint( - base::ProcessId pid, - RequestGlobalDumpCallback callback) { -+ CHECK(is_browser_process_); - coordinator_->RequestPrivateMemoryFootprint( - pid, base::BindOnce(&WrapGlobalMemoryDump, std::move(callback))); - } -@@ -60,6 +65,7 @@ void MemoryInstrumentation::RequestGlobalDumpForPid( - base::ProcessId pid, - const std::vector& allocator_dump_names, - RequestGlobalDumpCallback callback) { -+ CHECK(is_browser_process_); - coordinator_->RequestGlobalMemoryDumpForPid( - pid, allocator_dump_names, - base::BindOnce(&WrapGlobalMemoryDump, std::move(callback))); -@@ -70,6 +76,7 @@ void MemoryInstrumentation::RequestGlobalDumpAndAppendToTrace( - MemoryDumpLevelOfDetail level_of_detail, - MemoryDumpDeterminism determinism, - RequestGlobalMemoryDumpAndAppendToTraceCallback callback) { -+ CHECK(is_browser_process_); - coordinator_->RequestGlobalMemoryDumpAndAppendToTrace( - dump_type, level_of_detail, determinism, std::move(callback)); - } -diff --git a/services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.h b/services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.h ---- a/services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.h -+++ b/services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.h -@@ -34,7 +34,8 @@ class COMPONENT_EXPORT(RESOURCE_COORDINATOR_PUBLIC_MEMORY_INSTRUMENTATION) - - static void CreateInstance( - mojo::PendingRemote -- coordinator); -+ coordinator, -+ bool is_browser_process); - static MemoryInstrumentation* GetInstance(); - - // Retrieves a Coordinator interface to communicate with the service. This is -@@ -100,12 +101,16 @@ class COMPONENT_EXPORT(RESOURCE_COORDINATOR_PUBLIC_MEMORY_INSTRUMENTATION) - private: - explicit MemoryInstrumentation( - mojo::PendingRemote -- coordinator); -+ coordinator, -+ bool is_browser_process); - ~MemoryInstrumentation(); - - const mojo::SharedRemote - coordinator_; - -+ // Only browser process is allowed to request memory dumps. -+ const bool is_browser_process_; -+ - DISALLOW_COPY_AND_ASSIGN(MemoryInstrumentation); - }; - --- -2.17.1 - 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 d303a44b..28b90e21 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 @@ -62,7 +62,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque AddExtraHeaders(); AddCookieHeaderAndStart(); -@@ -529,6 +533,7 @@ void URLRequestHttpJob::AddExtraHeaders() { +@@ -525,6 +529,7 @@ void URLRequestHttpJob::AddExtraHeaders() { if (request_->Supports(SourceStream::SourceType::TYPE_DEFLATE)) { advertised_encoding_names.push_back("deflate"); } @@ -70,7 +70,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque // Advertise "br" encoding only if transferred data is opaque to proxy. if (request()->context()->enable_brotli() && request_->Supports(SourceStream::SourceType::TYPE_BROTLI)) { -@@ -537,6 +542,7 @@ void URLRequestHttpJob::AddExtraHeaders() { +@@ -533,6 +538,7 @@ void URLRequestHttpJob::AddExtraHeaders() { advertised_encoding_names.push_back("br"); } } @@ -78,7 +78,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque if (!advertised_encoding_names.empty()) { // Tell the server what compression formats are supported. request_info_.extra_headers.SetHeader( -@@ -546,7 +552,7 @@ void URLRequestHttpJob::AddExtraHeaders() { +@@ -542,7 +548,7 @@ void URLRequestHttpJob::AddExtraHeaders() { } } diff --git a/build/patches/Remove-binary-blob-integrations.patch b/build/patches/Remove-binary-blob-integrations.patch index fb626749..d7c843d2 100644 --- a/build/patches/Remove-binary-blob-integrations.patch +++ b/build/patches/Remove-binary-blob-integrations.patch @@ -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 -@@ -298,20 +298,10 @@ android_library("chrome_java") { +@@ -303,20 +303,10 @@ android_library("chrome_java") { ":chrome_public_apk_template_resources", ":update_proto_java", ":usage_stats_proto_java", @@ -148,15 +148,15 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//chrome/android/modules/image_editor/provider:java", "//chrome/android/modules/stack_unwinder/provider:java", "//chrome/android/webapk/libs/client:client_java", -@@ -581,7 +571,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", -- "//third_party/google_android_play_core:com_google_android_play_core_java", - "//third_party/metrics_proto:metrics_proto_java", - "//ui/android:ui_java", - "//ui/base/mojom:mojom_java", -@@ -874,11 +863,6 @@ junit_binary("chrome_junit_tests") { +@@ -559,7 +549,6 @@ android_library("chrome_java") { + "//third_party/android_data_chart:android_data_chart_java", + "//third_party/android_deps:android_support_v7_appcompat_java", + "//third_party/android_deps:chromium_play_services_availability_java", +- "//third_party/android_deps:com_google_android_play_core_java", + "//third_party/android_deps:com_google_code_findbugs_jsr305_java", + "//third_party/android_deps:com_google_guava_listenablefuture_java", + "//third_party/android_deps:dagger_java", +@@ -883,11 +872,6 @@ junit_binary("chrome_junit_tests") { ":chrome_java", ":chrome_public_android_manifest", ":delegate_public_impl_java", @@ -168,7 +168,7 @@ 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", -@@ -1179,14 +1163,6 @@ android_library("chrome_test_java") { +@@ -1194,14 +1178,6 @@ android_library("chrome_test_java") { ":chrome_test_util_java", ":chrome_test_util_jni", ":delegate_public_impl_java", @@ -183,7 +183,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//base:base_java", "//base:base_java_test_support", "//base/test:test_support_java", -@@ -2215,7 +2191,6 @@ android_library("browser_java_test_support") { +@@ -2238,7 +2214,6 @@ android_library("browser_java_test_support") { ] deps = [ ":chrome_java", @@ -191,7 +191,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//base:base_java", "//base:base_java_test_support", "//base:jni_java", -@@ -2360,8 +2335,6 @@ android_library("base_monochrome_module_java") { +@@ -2383,8 +2358,6 @@ android_library("base_monochrome_module_java") { android_library("base_module_java") { sources = [ "../browser/attribution_reporting/android/java/src/org/chromium/chrome/browser/attribution_reporting/AttributionReportingProvider.java", @@ -200,7 +200,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", -@@ -2372,8 +2345,6 @@ android_library("base_module_java") { +@@ -2395,8 +2368,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 +209,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", -@@ -2400,16 +2371,10 @@ android_library("base_module_java") { +@@ -2423,16 +2394,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", @@ -226,15 +226,15 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn "//base:base_java", "//chrome/browser/download/android:file_provider_java", "//chrome/browser/flags:java", -@@ -2425,7 +2390,6 @@ android_library("base_module_java") { +@@ -2445,7 +2410,6 @@ android_library("base_module_java") { + "//components/media_router/browser/android:cast_options_provider_java", + "//components/minidump_uploader:minidump_uploader_java", + "//components/module_installer/android:module_installer_java", +- "//third_party/android_deps:com_google_android_play_core_java", "//third_party/androidx:androidx_annotation_annotation_java", "//third_party/androidx:androidx_collection_collection_java", "//third_party/androidx:androidx_fragment_fragment_java", -- "//third_party/google_android_play_core:com_google_android_play_core_java", - "//ui/android:ui_no_recycler_view_java", - - # Deps needed for child processes. -@@ -2444,7 +2408,6 @@ android_library("base_module_java") { +@@ -2467,7 +2431,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. @@ -245,7 +245,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 -@@ -17,7 +17,6 @@ chrome_java_sources = [ +@@ -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/ChromeApplicationImpl.java", @@ -253,7 +253,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_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", -@@ -1023,10 +1022,6 @@ chrome_java_sources = [ +@@ -1030,10 +1029,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/searchwidget/SearchBoxDataProvider.java", "java/src/org/chromium/chrome/browser/searchwidget/SearchWidgetProvider.java", "java/src/org/chromium/chrome/browser/send_tab_to_self/SendTabToSelfShareActivity.java", @@ -267,7 +267,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_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 -@@ -97,21 +97,16 @@ by a child template that "extends" this file. +@@ -100,21 +100,16 @@ by a child template that "extends" this file. @@ -289,7 +289,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro {% block extra_uses_permissions %} -@@ -745,16 +740,6 @@ by a child template that "extends" this file. +@@ -752,16 +747,6 @@ by a child template that "extends" this file. @@ -306,7 +306,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro @@ -322,7 +322,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro @@ -349,7 +349,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro -@@ -1039,28 +995,10 @@ by a child template that "extends" this file. +@@ -1061,28 +1017,10 @@ by a child template that "extends" this file. android:exported="false" android:permission="android.permission.BIND_JOB_SERVICE"/> @@ -378,7 +378,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro -@@ -1261,12 +1199,6 @@ by a child template that "extends" this file. +@@ -1283,12 +1221,6 @@ by a child template that "extends" this file. {% endif %} @@ -480,7 +480,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 -@@ -201,12 +201,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat +@@ -204,12 +204,8 @@ public class ExternalNavigationDelegateImpl implements ExternalNavigationDelegat @Override public void maybeAdjustInstantAppExtras(Intent intent, boolean isIntentToInstantApp) { @@ -1338,7 +1338,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 -@@ -6150,8 +6150,6 @@ static_library("browser") { +@@ -6295,8 +6295,6 @@ static_library("browser") { "offline_pages/offliner_helper.h", "offline_pages/offliner_user_data.cc", "offline_pages/offliner_user_data.h", @@ -1350,7 +1350,7 @@ 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 -@@ -9,14 +9,12 @@ android_library("base_module_java") { +@@ -9,13 +9,11 @@ android_library("base_module_java") { sources = [ "java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java", "java/src/org/chromium/chrome/browser/language/GlobalAppLocaleController.java", @@ -1360,11 +1360,10 @@ diff --git a/chrome/browser/language/android/BUILD.gn b/chrome/browser/language/ "//base:base_java", "//chrome/browser/preferences:java", "//components/language/android:language_bridge_java", +- "//third_party/android_deps:com_google_android_play_core_java", "//third_party/androidx:androidx_annotation_annotation_java", -- "//third_party/google_android_play_core:com_google_android_play_core_java", "//ui/android:ui_no_recycler_view_java", ] - } diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLanguagePromoDialog.java b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLanguagePromoDialog.java --- a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLanguagePromoDialog.java +++ b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLanguagePromoDialog.java @@ -1531,7 +1530,7 @@ diff --git a/chrome/browser/push_messaging/push_messaging_service_factory.cc b/c 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 -@@ -239,8 +239,6 @@ static_library("ui") { +@@ -241,8 +241,6 @@ static_library("ui") { "webui/flags/flags_ui.h", "webui/flags/flags_ui_handler.cc", "webui/flags/flags_ui_handler.h", @@ -1540,7 +1539,7 @@ 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", -@@ -460,7 +458,6 @@ static_library("ui") { +@@ -461,7 +459,6 @@ static_library("ui") { "//components/feedback/content", "//components/find_in_page", "//components/flags_ui", @@ -1556,10 +1555,10 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom #include "chrome/browser/ui/webui/federated_learning/floc_internals_ui.h" #include "chrome/browser/ui/webui/flags/flags_ui.h" -#include "chrome/browser/ui/webui/gcm_internals_ui.h" + #include "chrome/browser/ui/webui/image_editor/image_editor_ui.h" #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" -@@ -599,8 +598,6 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, +@@ -604,8 +603,6 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, return &NewWebUI; if (url.host_piece() == chrome::kChromeUIFlocInternalsHost) return &NewWebUI; @@ -1571,7 +1570,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") { +@@ -260,8 +260,6 @@ android_library("chrome_java_test_support") { ] deps = [ @@ -2097,9 +2096,9 @@ diff --git a/components/externalauth/android/BUILD.gn b/components/externalauth/ - "$google_play_services_package:google_play_services_base_java", - "$google_play_services_package:google_play_services_basement_java", "//base:base_java", - "//components/embedder_support/android:browser_context_java", "//components/embedder_support/android:util_java", -@@ -50,7 +48,6 @@ android_library("junit") { + "//content/public/android:content_java", +@@ -49,7 +47,6 @@ android_library("junit") { deps = [ ":java", @@ -3849,19 +3848,19 @@ 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 -@@ -36,7 +36,6 @@ android_library("module_installer_java") { +@@ -34,7 +34,6 @@ android_library("module_installer_java") { + deps = [ "//base:base_java", "//components/crash/android:java", +- "//third_party/android_deps:com_google_android_play_core_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" ] -@@ -59,7 +58,6 @@ junit_binary("module_installer_junit_tests") { +@@ -58,7 +57,6 @@ junit_binary("module_installer_junit_tests") { "//base:base_java", "//base:base_java_test_support", "//base:base_junit_test_support", -- "//third_party/google_android_play_core:com_google_android_play_core_java", +- "//third_party/android_deps:com_google_android_play_core_java", "//third_party/hamcrest:hamcrest_java", ] } @@ -3885,7 +3884,7 @@ diff --git a/components/signin/public/android/BUILD.gn b/components/signin/publi "java/src/org/chromium/components/signin/AccountRestrictionPatternReceiver.java", "java/src/org/chromium/components/signin/AccountUtils.java", "java/src/org/chromium/components/signin/AccountsChangeObserver.java", -@@ -137,7 +134,6 @@ java_library("junit") { +@@ -136,7 +133,6 @@ java_library("junit") { deps = [ ":java", ":signin_java_test_support", @@ -3918,7 +3917,7 @@ diff --git a/components/webauthn/android/BUILD.gn b/components/webauthn/android/ 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 -@@ -82,17 +82,7 @@ public class AuthenticatorImpl implements Authenticator { +@@ -94,17 +94,7 @@ public class AuthenticatorImpl implements Authenticator { mMakeCredentialCallback = callback; mIsOperationPending = true; @@ -3937,7 +3936,7 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut } @Override -@@ -105,16 +95,7 @@ public class AuthenticatorImpl implements Authenticator { +@@ -117,16 +107,7 @@ public class AuthenticatorImpl implements Authenticator { mGetAssertionCallback = callback; mIsOperationPending = true; @@ -3949,13 +3948,13 @@ diff --git a/components/webauthn/android/java/src/org/chromium/components/webaut - return; - } - -- Fido2ApiHandler.getInstance().getAssertion(options, mRenderFrameHost, mOrigin, +- Fido2ApiHandler.getInstance().getAssertion(options, mRenderFrameHost, mOrigin, mPayment, - (status, response) -> onSignResponse(status, response), status -> onError(status)); + onError(AuthenticatorStatus.NOT_IMPLEMENTED); } @Override -@@ -133,16 +114,8 @@ public class AuthenticatorImpl implements Authenticator { +@@ -145,16 +126,8 @@ public class AuthenticatorImpl implements Authenticator { return; } @@ -4005,7 +4004,7 @@ diff --git a/content/public/android/BUILD.gn b/content/public/android/BUILD.gn 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 -@@ -924,7 +924,7 @@ const base::Feature kWebAssemblyTrapHandler{"WebAssemblyTrapHandler", +@@ -922,7 +922,7 @@ const base::Feature kWebAssemblyTrapHandler{"WebAssemblyTrapHandler", // Controls whether the WebAuthentication API is enabled: // https://w3c.github.io/webauthn const base::Feature kWebAuth{"WebAuthentication", @@ -4017,7 +4016,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 -@@ -2837,10 +2837,6 @@ if (is_android) { +@@ -2849,10 +2849,6 @@ if (is_android) { testonly = true sources = content_java_sources_needing_jni deps = [ @@ -4031,7 +4030,7 @@ 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 -@@ -433,9 +433,6 @@ if (is_android) { +@@ -437,9 +437,6 @@ if (is_android) { "gamepad/android/junit/src/org/chromium/device/gamepad/GamepadMappingsTest.java", ] deps = [ diff --git a/build/patches/Remove-blocklisted-URLs-upon-bookmark-creation.patch b/build/patches/Remove-blocklisted-URLs-upon-bookmark-creation.patch index 26b78160..e6f227aa 100644 --- a/build/patches/Remove-blocklisted-URLs-upon-bookmark-creation.patch +++ b/build/patches/Remove-blocklisted-URLs-upon-bookmark-creation.patch @@ -9,7 +9,7 @@ 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 -@@ -139,6 +139,8 @@ import org.chromium.chrome.browser.metrics.LaunchMetrics; +@@ -138,6 +138,8 @@ import org.chromium.chrome.browser.metrics.LaunchMetrics; import org.chromium.chrome.browser.metrics.UmaSessionStats; import org.chromium.chrome.browser.multiwindow.MultiWindowUtils; import org.chromium.chrome.browser.ntp.NewTabPageUma; @@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv import org.chromium.chrome.browser.offlinepages.OfflinePageUtils; import org.chromium.chrome.browser.offlinepages.indicator.OfflineIndicatorController; import org.chromium.chrome.browser.omaha.UpdateInfoBarController; -@@ -239,6 +241,8 @@ import org.chromium.ui.widget.Toast; +@@ -238,6 +240,8 @@ import org.chromium.ui.widget.Toast; import org.chromium.url.GURL; import org.chromium.webapk.lib.client.WebApkNavigationClient; @@ -35,7 +35,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv private boolean mPartnerBrowserRefreshNeeded; -@@ -1452,6 +1457,11 @@ public abstract class ChromeActivity +@@ -1439,6 +1444,11 @@ public abstract class ChromeActivity mCompositorViewHolderSupplier.set(null); } @@ -47,7 +47,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv onDestroyInternal(); if (mDidAddPolicyChangeListener) { -@@ -1763,6 +1773,13 @@ public abstract class ChromeActivity +@@ -1749,6 +1759,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 acc7f12f..2e6a6cee 100644 --- a/build/patches/Remove-help-menu-item.patch +++ b/build/patches/Remove-help-menu-item.patch @@ -13,7 +13,7 @@ Subject: Remove help menu item 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 -@@ -113,9 +113,6 @@ +@@ -116,9 +116,6 @@ @@ -39,7 +39,7 @@ 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 -@@ -2330,16 +2330,6 @@ public abstract class ChromeActivity +@@ -2316,16 +2316,6 @@ public abstract class ChromeActivity final Tab currentTab = getActivityTab(); @@ -59,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 -@@ -516,7 +516,7 @@ public abstract class BaseCustomTabActivity extends ChromeActivity VideoTutorialShareHelper.saveUrlsToSharedPrefs()); deferredStartupHandler.addDeferredTask( () -> TosDialogBehaviorSharedPrefInvalidator.refreshSharedPreferenceIfTosSkipped()); diff --git a/build/patches/Remove-signin-and-data-saver-integrations.patch b/build/patches/Remove-signin-and-data-saver-integrations.patch index 5cd3019e..1aec3bf8 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 | 37 ---- + chrome/android/chrome_java_sources.gni | 38 ----- .../PriceTrackingUtilities.java | 5 +- .../browser/feed/FeedSurfaceCoordinator.java | 5 +- - .../browser/feed/FeedSurfaceMediator.java | 88 +-------- + .../browser/feed/FeedSurfaceMediator.java | 88 +--------- chrome/android/java/AndroidManifest.xml | 8 - .../android/java/res/xml/main_preferences.xml | 27 +-- .../java/res/xml/privacy_preferences.xml | 4 - @@ -31,53 +31,54 @@ ld.lld: error: undefined symbol: notifier::NotifierOptions::NotifierOptions() .../chrome/browser/ChromeTabbedActivity.java | 6 - .../chrome/browser/app/ChromeActivity.java | 75 -------- .../AutofillAssistantPreferenceFragment.java | 12 -- - .../bookmarks/BookmarkItemsAdapter.java | 50 +---- - .../bookmarks/BookmarkPromoHeader.java | 175 +----------------- + .../bookmarks/BookmarkItemsAdapter.java | 50 +----- + .../bookmarks/BookmarkPromoHeader.java | 160 +----------------- .../ClearBrowsingDataFragmentBasic.java | 5 +- .../contextualsearch/ContextualSearchUma.java | 5 - .../browser/customtabs/CustomTabActivity.java | 3 - .../DataReductionPreferenceFragment.java | 24 +-- - .../browser/firstrun/FirstRunActivity.java | 30 --- + .../browser/firstrun/FirstRunActivity.java | 30 ---- .../firstrun/FirstRunFlowSequencer.java | 31 +--- .../firstrun/LightweightFirstRunActivity.java | 6 +- .../firstrun/ToSAndUMAFirstRunFragment.java | 11 -- .../history/HistoryContentManager.java | 10 +- .../init/ChromeBrowserInitializer.java | 2 - .../init/ProcessInitializationHandler.java | 4 - - .../chrome/browser/ntp/RecentTabsManager.java | 70 +------ + .../chrome/browser/ntp/RecentTabsManager.java | 69 +------- .../browser/ntp/RecentTabsRowAdapter.java | 6 - .../browser/omaha/RequestGenerator.java | 3 - .../PasswordManagerLauncher.java | 15 +- .../settings/PasswordEntryViewer.java | 5 +- - .../settings/PasswordSettings.java | 29 +-- - .../privacy/settings/PrivacySettings.java | 30 --- - .../chrome/browser/settings/MainSettings.java | 135 +------------- + .../settings/PasswordSettings.java | 29 +--- + .../privacy/settings/PrivacySettings.java | 30 ---- + .../chrome/browser/settings/MainSettings.java | 135 +-------------- .../browser/settings/SettingsActivity.java | 5 +- .../browser/share/ShareDelegateImpl.java | 3 +- .../share/ShareRegistrationCoordinator.java | 3 +- .../SharedClipboardShareActivity.java | 3 - - .../browser/signin/SigninHelperProvider.java | 38 ---- - .../tabbed_mode/TabbedRootUiCoordinator.java | 25 +-- - chrome/browser/BUILD.gn | 10 - + .../browser/signin/SigninCheckerProvider.java | 38 ----- + .../tabbed_mode/TabbedRootUiCoordinator.java | 22 +-- + .../tasks/ReturnToChromeExperimentsUtil.java | 9 +- + chrome/browser/BUILD.gn | 10 -- .../identity_services_provider_android.cc | 9 - .../services/IdentityServicesProvider.java | 14 -- ...onfirmImportSyncDataDialogCoordinator.java | 7 +- .../ui/ConfirmSyncDataStateMachine.java | 16 +- .../signin/ui/SignOutDialogFragment.java | 13 -- - .../signin/ui/SigninPromoController.java | 23 +-- - .../AccountPickerDelegateImpl.java | 16 -- + .../signin/ui/SigninPromoController.java | 15 +- + .../AccountPickerDelegateImpl.java | 17 -- chrome/browser/sync/sync_service_factory.cc | 12 +- .../strings/android_chrome_strings.grd | 12 -- .../signin/SystemAccountManagerDelegate.java | 35 +--- - .../net/HttpNegotiateAuthenticator.java | 88 +-------- + .../net/HttpNegotiateAuthenticator.java | 88 +--------- .../chromoting/base/OAuthTokenFetcher.java | 2 - - 52 files changed, 46 insertions(+), 1213 deletions(-) - delete mode 100644 chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelperProvider.java + 53 files changed, 48 insertions(+), 1195 deletions(-) + delete mode 100644 chrome/android/java/src/org/chromium/chrome/browser/signin/SigninCheckerProvider.java diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn --- a/chrome/android/BUILD.gn +++ b/chrome/android/BUILD.gn -@@ -3560,7 +3560,6 @@ generate_jni("chrome_jni_headers") { +@@ -3700,7 +3700,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", @@ -88,12 +89,11 @@ 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 -@@ -600,16 +600,13 @@ chrome_java_sources = [ +@@ -604,15 +604,12 @@ 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", - "java/src/org/chromium/chrome/browser/firstrun/FirstRunSignInProcessor.java", - "java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java", "java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java", "java/src/org/chromium/chrome/browser/firstrun/FirstRunView.java", - "java/src/org/chromium/chrome/browser/firstrun/ForcedSigninProcessor.java", @@ -105,7 +105,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/org/chromium/chrome/browser/firstrun/TabbedModeFirstRunActivity.java", "java/src/org/chromium/chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java", "java/src/org/chromium/chrome/browser/firstrun/TosAndUmaFirstRunFragmentWithEnterpriseSupport.java", -@@ -705,7 +702,6 @@ chrome_java_sources = [ +@@ -709,7 +706,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 +113,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", -@@ -819,7 +815,6 @@ chrome_java_sources = [ +@@ -826,7 +822,6 @@ chrome_java_sources = [ "java/src/org/chromium/chrome/browser/ntp/ScrollableContainerDelegate.java", "java/src/org/chromium/chrome/browser/ntp/SnapScrollHelper.java", "java/src/org/chromium/chrome/browser/ntp/TitleUtil.java", @@ -121,7 +121,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", -@@ -906,8 +901,6 @@ chrome_java_sources = [ +@@ -913,8 +908,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,13 +130,14 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java "java/src/org/chromium/chrome/browser/password_manager/Credential.java", "java/src/org/chromium/chrome/browser/password_manager/CredentialLeakDialogBridge.java", "java/src/org/chromium/chrome/browser/password_manager/GooglePasswordManagerUIProvider.java", -@@ -1054,15 +1047,6 @@ chrome_java_sources = [ +@@ -1061,16 +1054,6 @@ 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/sharing/sms_fetcher/SmsFetcherMessageHandler.java", - "java/src/org/chromium/chrome/browser/signin/SigninBridge.java", - "java/src/org/chromium/chrome/browser/signin/SigninChecker.java", -- "java/src/org/chromium/chrome/browser/signin/SigninHelperProvider.java", +- "java/src/org/chromium/chrome/browser/signin/SigninCheckerProvider.java", +- "java/src/org/chromium/chrome/browser/signin/SigninFirstRunFragment.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/SyncConsentActivityLauncherImpl.java", @@ -146,7 +147,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_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", -@@ -1099,27 +1083,6 @@ chrome_java_sources = [ +@@ -1107,27 +1090,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", @@ -182,10 +183,10 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; import org.chromium.chrome.browser.signin.services.UnifiedConsentServiceBridge; -import org.chromium.chrome.browser.sync.SyncService; + import org.chromium.chrome.browser.tabmodel.TabModel; + import org.chromium.components.signin.identitymanager.ConsentLevel; import org.chromium.components.sync.ModelType; - - /** -@@ -186,9 +185,7 @@ public class PriceTrackingUtilities { +@@ -188,9 +187,7 @@ public class PriceTrackingUtilities { } private static boolean isOpenTabsSyncEnabled() { @@ -199,14 +200,14 @@ 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 -@@ -859,10 +859,7 @@ public class FeedSurfaceCoordinator +@@ -898,10 +898,7 @@ public class FeedSurfaceCoordinator @Override public boolean isSignedIn() { - return IdentityServicesProvider.get() - .getSigninManager(Profile.getLastUsedRegularProfile()) - .getIdentityManager() -- .hasPrimaryAccount(); +- .hasPrimaryAccount(ConsentLevel.SYNC); + return false; } @@ -233,7 +234,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ import org.chromium.chrome.browser.suggestions.SuggestionsMetrics; import org.chromium.chrome.browser.xsurface.FeedLaunchReliabilityLogger; import org.chromium.chrome.features.start_surface.StartSurfaceConfiguration; -@@ -166,7 +161,6 @@ public class FeedSurfaceMediator +@@ -173,7 +168,6 @@ public class FeedSurfaceMediator /** * The {@link SignInPromo} for the Feed. * TODO(huayinz): Update content and visibility through a ModelChangeProcessor. @@ -241,7 +242,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); -@@ -187,7 +181,7 @@ public class FeedSurfaceMediator +@@ -194,7 +188,7 @@ public class FeedSurfaceMediator maybeUpdateSignInPromo(); } @@ -250,7 +251,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ private void maybeUpdateSignInPromo() { // Only call #setupPromoViewFromCache() if SignInPromo is visible to avoid potentially // blocking the UI thread for several seconds if the accounts cache is not populated -@@ -199,7 +193,7 @@ public class FeedSurfaceMediator +@@ -206,7 +200,7 @@ public class FeedSurfaceMediator null); } } @@ -259,7 +260,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ @VisibleForTesting static void setPrefForTest(PrefChangeRegistrar prefChangeRegistrar, PrefService prefService) { -@@ -214,7 +208,6 @@ public class FeedSurfaceMediator +@@ -221,7 +215,6 @@ public class FeedSurfaceMediator private final Context mContext; private final @Nullable SnapScrollHelper mSnapScrollHelper; private final PrefChangeRegistrar mPrefChangeRegistrar; @@ -267,32 +268,32 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ private final PropertyModel mSectionHeaderModel; private final NativePageNavigationDelegate mPageNavigationDelegate; -@@ -224,7 +217,6 @@ public class FeedSurfaceMediator - new ObserverList(); +@@ -230,7 +223,6 @@ public class FeedSurfaceMediator + private final ObserverList mScrollListeners = new ObserverList<>(); private ContentChangedListener mStreamContentChangedListener; private MemoryPressureCallback mMemoryPressureCallback; - private @Nullable SignInPromo mSignInPromo; private RecyclerViewAnimationFinishDetector mRecyclerViewAnimationFinishDetector = new RecyclerViewAnimationFinishDetector(); private @Nullable View mEnhancedProtectionPromo; -@@ -273,8 +265,6 @@ public class FeedSurfaceMediator +@@ -279,8 +271,6 @@ public class FeedSurfaceMediator mCoordinator = coordinator; mContext = context; mSnapScrollHelper = snapScrollHelper; - mSigninManager = IdentityServicesProvider.get().getSigninManager( - Profile.getLastUsedRegularProfile()); mPageNavigationDelegate = pageNavigationDelegate; - mRestoreTabId = openingTabId; -@@ -421,7 +411,6 @@ public class FeedSurfaceMediator - getInterestFeedHeaderText(suggestionsVisible), null, mCoordinator.getStream()); + if (sTestPrefChangeRegistar != null) { +@@ -435,7 +425,6 @@ public class FeedSurfaceMediator + mFeedMenuModel = buildMenuItems(); mCoordinator.initializeIph(); - mSigninManager.getIdentityManager().addObserver(this); mSectionHeaderModel.set( SectionHeaderListProperties.MENU_MODEL_LIST_KEY, mFeedMenuModel); -@@ -473,8 +462,6 @@ public class FeedSurfaceMediator +@@ -487,8 +476,6 @@ public class FeedSurfaceMediator }; mCoordinator.getRecyclerView().addOnScrollListener(mStreamScrollListener); @@ -301,7 +302,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ mMemoryPressureCallback = pressure -> mCoordinator.getRecyclerView().getRecycledViewPool().clear(); MemoryPressureListener.addCallback(mMemoryPressureCallback); -@@ -630,48 +617,6 @@ public class FeedSurfaceMediator +@@ -644,46 +631,6 @@ public class FeedSurfaceMediator } } @@ -321,9 +322,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ - */ - private boolean createSignInPromoIfNeeded() { - if (!SignInPromo.shouldCreatePromo() -- || !SigninPromoController.hasNotReachedImpressionLimit( -- SigninAccessPoint.NTP_CONTENT_SUGGESTIONS) -- || SigninPromoController.shouldHideSyncPromoForNTP( +- || !SigninPromoController.canShowSyncPromo( - SigninAccessPoint.NTP_CONTENT_SUGGESTIONS)) { - return false; - } @@ -350,7 +349,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ private void updatePromoCardPadding(View promoCard) { MarginLayoutParams layoutParams = promoCard.getLayoutParams() == null ? new MarginLayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT) -@@ -694,11 +639,6 @@ public class FeedSurfaceMediator +@@ -706,11 +653,6 @@ public class FeedSurfaceMediator MemoryPressureListener.removeCallback(mMemoryPressureCallback); mMemoryPressureCallback = null; @@ -362,7 +361,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ unbindStream(); for (Stream s : mTabToStreamMap.values()) { s.removeOnContentChangedListener(mStreamContentChangedListener); -@@ -709,7 +649,6 @@ public class FeedSurfaceMediator +@@ -721,7 +663,6 @@ public class FeedSurfaceMediator mPrefChangeRegistrar.removeObserver(Pref.ARTICLES_LIST_VISIBLE); TemplateUrlServiceFactory.get().removeObserver(this); @@ -370,9 +369,9 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ PropertyListModel headerList = mSectionHeaderModel.get(SectionHeaderListProperties.SECTION_HEADERS_KEY); -@@ -752,9 +691,6 @@ public class FeedSurfaceMediator +@@ -789,9 +730,6 @@ public class FeedSurfaceMediator // Update toggleswitch item, which is last item in list. - mFeedMenuModel.update(mToggleswitchMenuIndex, getMenuToggleSwitch(suggestionsVisible, 0)); + mSectionHeaderModel.set(SectionHeaderListProperties.MENU_MODEL_LIST_KEY, buildMenuItems()); - if (mSignInPromo != null) { - mSignInPromo.setCanShowPersonalizedSuggestions(suggestionsVisible); @@ -380,11 +379,20 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ if (mEnhancedProtectionPromo != null) { updatePromoCardPadding(mEnhancedProtectionPromo); } -@@ -815,21 +751,6 @@ public class FeedSurfaceMediator +@@ -807,7 +745,7 @@ public class FeedSurfaceMediator + } + + private boolean isSignedIn() { +- return mSigninManager.getIdentityManager().hasPrimaryAccount(ConsentLevel.SYNC); ++ return false; + } + + /** +@@ -856,21 +794,6 @@ public class FeedSurfaceMediator private ModelList buildMenuItems() { ModelList itemList = new ModelList(); int iconId = 0; -- if (mSigninManager.getIdentityManager().hasPrimaryAccount()) { +- if (isSignedIn()) { - if (FeedFeatures.isWebFeedUIEnabled()) { - itemList.add(buildMenuListItem( - R.string.ntp_manage_feed, R.id.ntp_feed_header_menu_item_manage, iconId)); @@ -402,7 +410,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ if (FeedServiceBridge.isAutoplayEnabled()) { itemList.add(buildMenuListItem( R.string.ntp_manage_autoplay, R.id.ntp_feed_header_menu_item_autoplay, iconId)); -@@ -1041,11 +962,6 @@ public class FeedSurfaceMediator +@@ -1081,11 +1004,6 @@ public class FeedSurfaceMediator updateSectionHeader(); } @@ -411,13 +419,13 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/ - return mSignInPromo; - } - - void onOverviewShownAtLaunch(long activityCreationTimeMs, boolean isInstantStart) { - assert mActivityCreationTimeMs == 0; - mActivityCreationTimeMs = activityCreationTimeMs; + public void manualRefresh(Callback callback) { + if (mCurrentStream != null) { + mCurrentStream.triggerRefresh(callback); 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 -@@ -64,24 +64,18 @@ by a child template that "extends" this file. +@@ -67,24 +67,18 @@ by a child template that "extends" this file. @@ -442,7 +450,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" %} -@@ -121,8 +115,6 @@ by a child template that "extends" this file. +@@ -124,8 +118,6 @@ by a child template that "extends" this file. @@ -501,7 +509,7 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j 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,8 +32,4 @@ +@@ -36,8 +36,4 @@ android:key="privacy_sandbox" android:title="@string/prefs_privacy_sandbox" android:fragment="org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment"/> @@ -554,7 +562,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; -@@ -631,9 +629,6 @@ public class ChromeTabbedActivity extends ChromeActivity +@@ -1062,60 +1055,6 @@ public abstract class ChromeActivity return StatusBarColorController.UNDEFINED_STATUS_BAR_COLOR; } @@ -671,7 +679,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv @Override public void onResumeWithNative() { super.onResumeWithNative(); -@@ -1227,14 +1166,6 @@ public abstract class ChromeActivity +@@ -1214,14 +1153,6 @@ public abstract class ChromeActivity if (GSAState.getInstance(this).isGsaAvailable() && !SysUtils.isLowEndDevice()) { if (mGSAAccountChangeListener != null) mGSAAccountChangeListener.disconnect(); } @@ -686,7 +694,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv super.onStopWithNative(); } -@@ -1339,11 +1270,6 @@ public abstract class ChromeActivity +@@ -1326,11 +1257,6 @@ public abstract class ChromeActivity FontSizePrefs.getInstance().recordUserFontPrefOnStartup(); }); @@ -698,7 +706,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv // GSA connection is not needed on low-end devices because Icing is disabled. if (!SysUtils.isLowEndDevice()) { if (isActivityFinishingOrDestroyed()) return; -@@ -1358,7 +1284,6 @@ public abstract class ChromeActivity +@@ -1345,7 +1271,6 @@ public abstract class ChromeActivity GSAAccountChangeListener.create(AppHooks.get().createGsaHelper()); } mGSAAccountChangeListener.connect(); @@ -892,7 +900,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java --- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkPromoHeader.java -@@ -19,21 +19,6 @@ import org.chromium.chrome.R; +@@ -19,20 +19,6 @@ import org.chromium.chrome.R; import org.chromium.chrome.browser.preferences.ChromePreferenceKeys; import org.chromium.chrome.browser.preferences.SharedPreferencesManager; import org.chromium.chrome.browser.profiles.Profile; @@ -908,13 +916,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm -import org.chromium.components.signin.AccountManagerFacade; -import org.chromium.components.signin.AccountManagerFacadeProvider; -import org.chromium.components.signin.AccountsChangeObserver; --import org.chromium.components.signin.base.CoreAccountInfo; -import org.chromium.components.signin.identitymanager.ConsentLevel; -import org.chromium.components.signin.metrics.SigninAccessPoint; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; -@@ -42,8 +27,7 @@ import java.lang.annotation.RetentionPolicy; +@@ -41,8 +27,7 @@ import java.lang.annotation.RetentionPolicy; * Class that manages all the logic and UI behind the signin promo header in the bookmark * content UI. The header is shown only on certain situations, (e.g., not signed in). */ @@ -924,7 +931,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** * Specifies the various states in which the Bookmarks promo can be. */ -@@ -63,14 +47,9 @@ class BookmarkPromoHeader implements SyncService.SyncStateChangedListener, SignI +@@ -62,14 +47,9 @@ class BookmarkPromoHeader implements SyncService.SyncStateChangedListener, SignI private static @Nullable @PromoState Integer sPromoStateForTests; private final Context mContext; @@ -939,7 +946,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** * Initializes the class. Note that this will start listening to signin related events and -@@ -80,47 +59,17 @@ class BookmarkPromoHeader implements SyncService.SyncStateChangedListener, SignI +@@ -79,46 +59,17 @@ class BookmarkPromoHeader implements SyncService.SyncStateChangedListener, SignI mContext = context; mPromoHeaderChangeAction = promoHeaderChangeAction; @@ -958,8 +965,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm ChromePreferenceKeys.SIGNIN_AND_SYNC_PROMO_SHOW_COUNT); } - -- if (SigninPromoController.hasNotReachedImpressionLimit( -- SigninAccessPoint.BOOKMARK_MANAGER)) { +- if (SigninPromoController.canShowSyncPromo(SigninAccessPoint.BOOKMARK_MANAGER)) { - mProfileDataCache = ProfileDataCache.createWithDefaultImageSizeAndNoBadge(mContext); - mProfileDataCache.addObserver(this); - mSigninPromoController = new SigninPromoController( @@ -987,7 +993,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm } /** -@@ -131,71 +80,11 @@ class BookmarkPromoHeader implements SyncService.SyncStateChangedListener, SignI +@@ -129,58 +80,11 @@ class BookmarkPromoHeader implements SyncService.SyncStateChangedListener, SignI return mPromoState; } @@ -1033,34 +1039,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm - * Saves that the personalized signin promo was declined and updates the UI. - */ - private void setPersonalizedSigninPromoDeclined() { -- SharedPreferencesManager.getInstance().writeBoolean( -- ChromePreferenceKeys.SIGNIN_PROMO_PERSONALIZED_DECLINED, true); - mPromoState = calculatePromoState(); - triggerPromoUpdate(); - } -- -- /** -- * @return Whether the user declined the personalized signin promo. -- */ -- @VisibleForTesting -- static boolean wasPersonalizedSigninPromoDeclined() { -- return SharedPreferencesManager.getInstance().readBoolean( -- ChromePreferenceKeys.SIGNIN_PROMO_PERSONALIZED_DECLINED, false); -- } - /** * @return Whether the personalized signin promo should be shown to user. */ private boolean shouldShowBookmarkSigninPromo() { - return mSignInManager.isSignInAllowed() -- && SigninPromoController.hasNotReachedImpressionLimit( -- SigninAccessPoint.BOOKMARK_MANAGER) -- && !wasPersonalizedSigninPromoDeclined(); +- && SigninPromoController.canShowSyncPromo(SigninAccessPoint.BOOKMARK_MANAGER); + return false; } private @PromoState int calculatePromoState() { -@@ -203,70 +92,10 @@ class BookmarkPromoHeader implements SyncService.SyncStateChangedListener, SignI +@@ -188,70 +92,10 @@ class BookmarkPromoHeader implements SyncService.SyncStateChangedListener, SignI return sPromoStateForTests; } @@ -1074,14 +1067,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm - return PromoState.PROMO_NONE; - } - -- if (!mSignInManager.getIdentityManager().hasPrimaryAccount()) { +- if (!mSignInManager.getIdentityManager().hasPrimaryAccount(ConsentLevel.SYNC)) { - if (!shouldShowBookmarkSigninPromo()) { - return PromoState.PROMO_NONE; - } -- CoreAccountInfo primaryAccount = -- mSignInManager.getIdentityManager().getPrimaryAccountInfo(ConsentLevel.SIGNIN); -- return primaryAccount == null ? PromoState.PROMO_SIGNIN_PERSONALIZED -- : PromoState.PROMO_SYNC_PERSONALIZED; +- +- return mSignInManager.getIdentityManager().hasPrimaryAccount(ConsentLevel.SIGNIN) +- ? PromoState.PROMO_SYNC_PERSONALIZED +- : PromoState.PROMO_SIGNIN_PERSONALIZED; - } - - boolean impressionLimitNotReached = @@ -1142,7 +1135,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/browsing_data/C import org.chromium.chrome.browser.tab.TabLaunchType; import org.chromium.chrome.browser.tabmodel.document.TabDelegate; import org.chromium.components.browser_ui.settings.ClickableSpansTextMessagePreference; -@@ -205,9 +204,7 @@ public class ClearBrowsingDataFragmentBasic extends ClearBrowsingDataFragment { +@@ -207,9 +206,7 @@ public class ClearBrowsingDataFragmentBasic extends ClearBrowsingDataFragment { } private boolean isHistorySyncEnabled() { @@ -1186,7 +1179,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust import org.chromium.chrome.browser.flags.AllCachedFieldTrialParameters; import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.fonts.FontPreloader; -@@ -141,8 +140,6 @@ public class CustomTabActivity extends BaseCustomTabActivity { +@@ -142,8 +141,6 @@ public class CustomTabActivity extends BaseCustomTabActivity { @Override public void finishNativeInitialization() { @@ -1310,7 +1303,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/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 -@@ -95,10 +95,7 @@ public abstract class FirstRunFlowSequencer { +@@ -96,10 +96,7 @@ public abstract class FirstRunFlowSequencer { @VisibleForTesting protected boolean isSyncAllowed() { @@ -1322,7 +1315,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } @VisibleForTesting -@@ -113,11 +110,6 @@ public abstract class FirstRunFlowSequencer { +@@ -114,11 +111,6 @@ public abstract class FirstRunFlowSequencer { return FirstRunUtils.isFirstRunEulaAccepted(); } @@ -1334,7 +1327,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR @VisibleForTesting protected boolean shouldShowSearchEnginePage() { @SearchEnginePromoType -@@ -128,7 +120,6 @@ public abstract class FirstRunFlowSequencer { +@@ -129,7 +121,6 @@ public abstract class FirstRunFlowSequencer { @VisibleForTesting protected void setFirstRunFlowSignInComplete() { @@ -1342,7 +1335,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } @VisibleForTesting -@@ -139,13 +130,6 @@ public abstract class FirstRunFlowSequencer { +@@ -140,13 +131,6 @@ public abstract class FirstRunFlowSequencer { } void processFreEnvironmentPreNative() { @@ -1356,7 +1349,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } /** -@@ -154,16 +138,6 @@ public abstract class FirstRunFlowSequencer { +@@ -155,16 +139,6 @@ public abstract class FirstRunFlowSequencer { * @param freProperties Resulting FRE properties bundle. */ public void onNativeAndPoliciesInitialized(Bundle freProperties) { @@ -1373,7 +1366,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR } /** -@@ -177,9 +151,6 @@ public abstract class FirstRunFlowSequencer { +@@ -178,9 +152,6 @@ public abstract class FirstRunFlowSequencer { if (!FirstRunUtils.isFirstRunEulaAccepted()) { FirstRunUtils.setEulaAccepted(); } @@ -1445,7 +1438,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History // Create PrefChangeRegistrar to receive notifications on preference changes. mPrefChangeRegistrar = new PrefChangeRegistrar(); mPrefChangeRegistrar.addObserver(Pref.ALLOW_DELETING_BROWSER_HISTORY, this); -@@ -254,9 +249,6 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver +@@ -250,9 +245,6 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver mHistoryAdapter.onDestroyed(); mLargeIconBridge.destroy(); mLargeIconBridge = null; @@ -1455,7 +1448,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History mPrefChangeRegistrar.destroy(); } -@@ -511,4 +503,4 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver +@@ -505,4 +497,4 @@ public class HistoryContentManager implements SignInStateObserver, PrefObserver public static void setScrollToLoadDisabledForTesting(boolean isScrollToLoadDisabled) { sIsScrollToLoadDisabledForTests = isScrollToLoadDisabled; } @@ -1469,7 +1462,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrow import org.chromium.chrome.browser.download.DownloadManagerService; import org.chromium.chrome.browser.flags.ChromeSwitches; import org.chromium.chrome.browser.language.GlobalAppLocaleController; --import org.chromium.chrome.browser.signin.SigninHelperProvider; +-import org.chromium.chrome.browser.signin.SigninCheckerProvider; import org.chromium.chrome.browser.webapps.ChromeWebApkHost; import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory; import org.chromium.components.crash.browser.ChildProcessCrashObserver; @@ -1477,14 +1470,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrow LibraryPrefetcher.asyncPrefetchLibrariesToMemory(); getBrowserStartupController().startBrowserProcessesSync( LibraryProcessType.PROCESS_BROWSER, /*singleProcess=*/false); -- SigninHelperProvider.get(); +- SigninCheckerProvider.get(); } finally { TraceEvent.end("ChromeBrowserInitializer.startChromeBrowserProcessesSync"); } 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 -@@ -60,7 +60,6 @@ import org.chromium.chrome.browser.media.MediaViewerUtils; +@@ -59,7 +59,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.WebApkUninstallUmaTracker; @@ -1492,15 +1485,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessIni import org.chromium.chrome.browser.notifications.channels.ChannelsUpdater; import org.chromium.chrome.browser.offlinepages.measurements.OfflineMeasurementsBackgroundTask; import org.chromium.chrome.browser.omnibox.voice.AssistantVoiceSearchService; -@@ -75,7 +74,6 @@ import org.chromium.chrome.browser.rlz.RevenueStats; +@@ -74,7 +73,6 @@ import org.chromium.chrome.browser.quickactionsearchwidget.QuickActionSearchWidg + 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; --import org.chromium.chrome.browser.signin.SigninHelperProvider; +-import org.chromium.chrome.browser.signin.SigninCheckerProvider; + import org.chromium.chrome.browser.tab.state.ShoppingPersistedTabData; + import org.chromium.chrome.browser.util.AfterStartupTaskUtils; import org.chromium.chrome.browser.webapps.WebApkVersionManager; - import org.chromium.chrome.browser.webapps.WebappRegistry; - import org.chromium.components.background_task_scheduler.BackgroundTaskSchedulerFactory; -@@ -206,7 +204,6 @@ public class ProcessInitializationHandler { +@@ -209,7 +207,6 @@ public class ProcessInitializationHandler { * Performs the post native initialization. */ protected void handlePostNativeInitialization() { @@ -1508,11 +1501,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessIni ChromeActivitySessionTracker.getInstance().initializeWithNative(); ProfileManagerUtils.removeSessionCookiesForAllProfiles(); AppBannerManager.setAppDetailsDelegate(AppHooks.get().createAppDetailsDelegate()); -@@ -358,7 +355,6 @@ public class ProcessInitializationHandler { +@@ -364,7 +361,6 @@ public class ProcessInitializationHandler { deferredStartupHandler.addDeferredTask(new Runnable() { @Override public void run() { -- SigninHelperProvider.get().onMainActivityStart(); +- SigninCheckerProvider.get().onMainActivityStart(); RevenueStats.getInstance(); } }); @@ -1603,16 +1596,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM AccountManagerFacadeProvider.getInstance().addObserver(this); } -@@ -367,34 +336,13 @@ public class RecentTabsManager implements SyncService.SyncStateChangedListener, +@@ -367,33 +336,13 @@ public class RecentTabsManager implements SyncService.SyncStateChangedListener, */ @PromoState int getPromoType() { -- if (!mSignInManager.getIdentityManager().hasPrimaryAccount()) { +- if (!mSignInManager.getIdentityManager().hasPrimaryAccount(ConsentLevel.SYNC)) { - if (!mSignInManager.isSignInAllowed()) { - return PromoState.PROMO_NONE; - } -- if (mSignInManager.getIdentityManager().getPrimaryAccountInfo(ConsentLevel.SIGNIN) -- != null) { +- if (mSignInManager.getIdentityManager().hasPrimaryAccount(ConsentLevel.SIGNIN)) { - return PromoState.PROMO_SYNC_PERSONALIZED; - } - return PromoState.PROMO_SIGNIN_PERSONALIZED; @@ -1639,7 +1631,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM } // SignInStateObserver implementation. -@@ -414,18 +362,6 @@ public class RecentTabsManager implements SyncService.SyncStateChangedListener, +@@ -413,18 +362,6 @@ public class RecentTabsManager implements SyncService.SyncStateChangedListener, update(); } @@ -1709,16 +1701,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage import org.chromium.chrome.browser.settings.SettingsLauncherImpl; import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; -import org.chromium.chrome.browser.sync.SyncService; + import org.chromium.components.signin.identitymanager.ConsentLevel; import org.chromium.components.signin.identitymanager.IdentityManager; import org.chromium.components.sync.ModelType; - import org.chromium.content_public.browser.WebContents; -@@ -49,18 +48,6 @@ public class PasswordManagerLauncher { +@@ -50,18 +49,6 @@ public class PasswordManagerLauncher { } public static boolean isSyncingPasswordsWithoutCustomPassphrase() { - IdentityManager identityManager = IdentityServicesProvider.get().getIdentityManager( - Profile.getLastUsedRegularProfile()); -- if (!identityManager.hasPrimaryAccount()) return false; +- if (!identityManager.hasPrimaryAccount(ConsentLevel.SYNC)) return false; - - SyncService syncService = SyncService.get(); - if (syncService == null @@ -1838,7 +1830,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java --- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java -@@ -26,8 +26,6 @@ import org.chromium.chrome.browser.profiles.Profile; +@@ -27,8 +27,6 @@ import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.settings.ChromeManagedPreferenceDelegate; import org.chromium.chrome.browser.settings.SettingsLauncherImpl; import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; @@ -1847,15 +1839,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; -@@ -47,7 +45,6 @@ public class PrivacySettings - private static final String PREF_NETWORK_PREDICTIONS = "preload_pages"; +@@ -49,7 +47,6 @@ public class PrivacySettings + private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode"; 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"; -@@ -95,36 +92,9 @@ public class PrivacySettings +@@ -106,36 +103,9 @@ public class PrivacySettings Preference secureDnsPref = findPreference(PREF_SECURE_DNS); secureDnsPref.setVisible(SecureDnsSettings.isUiEnabled()); @@ -2151,7 +2143,7 @@ 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 -@@ -53,7 +53,6 @@ import org.chromium.chrome.browser.safety_check.SafetyCheckCoordinator; +@@ -50,7 +50,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; @@ -2159,7 +2151,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin 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; -@@ -298,9 +297,7 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity +@@ -289,9 +288,7 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity HelpAndFeedbackLauncherImpl.getInstance()); } if (fragment instanceof SafetyCheckSettingsFragment) { @@ -2235,9 +2227,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sharing/shared_ onInitialLayoutInflationComplete(); } -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelperProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelperProvider.java +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninCheckerProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninCheckerProvider.java deleted file mode 100644 ---- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninHelperProvider.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninCheckerProvider.java +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2020 The Chromium Authors. All rights reserved. @@ -2256,13 +2248,11 @@ deleted file mode 100644 -/** - * This class is used to get a singleton instance of {@link SigninChecker}. - */ --public class SigninHelperProvider { +-public final class SigninCheckerProvider { - private static SigninChecker sInstance; - - /** - * @return A singleton instance of {@link SigninChecker}. -- * -- * TODO(crbug/1198038): Rename this class to SigninCheckerProvider - */ - @MainThread - public static SigninChecker get() { @@ -2277,11 +2267,13 @@ deleted file mode 100644 - } - return sInstance; - } +- +- private SigninCheckerProvider() {} -} 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 -@@ -37,7 +37,6 @@ import org.chromium.chrome.browser.compositor.layouts.OverviewModeBehavior; +@@ -41,7 +41,6 @@ import org.chromium.chrome.browser.compositor.layouts.content.TabContentManager; import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager; import org.chromium.chrome.browser.continuous_search.ContinuousSearchContainerCoordinator; import org.chromium.chrome.browser.continuous_search.ContinuousSearchContainerCoordinator.HeightObserver; @@ -2289,16 +2281,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab import org.chromium.chrome.browser.feed.shared.FeedFeatures; import org.chromium.chrome.browser.feed.webfeed.WebFeedFollowIntroController; import org.chromium.chrome.browser.findinpage.FindToolbarObserver; -@@ -67,8 +66,6 @@ import org.chromium.chrome.browser.preferences.SharedPreferencesManager; - import org.chromium.chrome.browser.profiles.Profile; +@@ -75,8 +74,6 @@ import org.chromium.chrome.browser.profiles.Profile; import org.chromium.chrome.browser.read_later.ReadLaterIPHController; import org.chromium.chrome.browser.share.ShareDelegate; + import org.chromium.chrome.browser.share.scroll_capture.ScrollCaptureManager; -import org.chromium.chrome.browser.signin.SyncConsentActivityLauncherImpl; -import org.chromium.chrome.browser.signin.ui.SigninPromoUtil; import org.chromium.chrome.browser.status_indicator.StatusIndicatorCoordinator; import org.chromium.chrome.browser.subscriptions.CommerceSubscriptionsService; import org.chromium.chrome.browser.subscriptions.CommerceSubscriptionsServiceFactory; -@@ -775,26 +772,6 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { +@@ -862,23 +859,6 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator { } private boolean maybeShowPromo() { @@ -2309,27 +2301,58 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab - return true; - } - if (DataReductionPromoScreen.launchDataReductionPromo( -- mActivity, mActivity.getTabModelSelector().getCurrentModel().isIncognito())) { +- mActivity, mTabModelSelectorSupplier.get().isIncognitoSelected())) { - return true; - } -- if (DefaultBrowserPromoUtils.prepareLaunchPromoIfNeeded( -- mActivity, mActivity.getWindowAndroid())) { +- if (DefaultBrowserPromoUtils.prepareLaunchPromoIfNeeded(mActivity, mWindowAndroid)) { - return true; - } -- if (AppLanguagePromoDialog.maybeShowPrompt(mActivity, -- mActivity.getModalDialogManagerSupplier(), +- if (AppLanguagePromoDialog.maybeShowPrompt(mActivity, mModalDialogManagerSupplier, - () -> ApplicationLifetime.terminate(true))) { - return true; - } -- return LanguageAskPrompt.maybeShowLanguageAskPrompt( -- mActivity, mActivity.getModalDialogManagerSupplier()); +- return LanguageAskPrompt.maybeShowLanguageAskPrompt(mActivity, mModalDialogManagerSupplier); + return false; } } +diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tasks/ReturnToChromeExperimentsUtil.java b/chrome/android/java/src/org/chromium/chrome/browser/tasks/ReturnToChromeExperimentsUtil.java +--- a/chrome/android/java/src/org/chromium/chrome/browser/tasks/ReturnToChromeExperimentsUtil.java ++++ b/chrome/android/java/src/org/chromium/chrome/browser/tasks/ReturnToChromeExperimentsUtil.java +@@ -35,7 +35,6 @@ import org.chromium.chrome.browser.omnibox.UrlFocusChangeListener; + import org.chromium.chrome.browser.preferences.ChromePreferenceKeys; + import org.chromium.chrome.browser.preferences.SharedPreferencesManager; + import org.chromium.chrome.browser.profiles.Profile; +-import org.chromium.chrome.browser.signin.services.IdentityServicesProvider; + import org.chromium.chrome.browser.tab.Tab; + import org.chromium.chrome.browser.tab.TabLaunchType; + import org.chromium.chrome.browser.tabmodel.TabModel; +@@ -46,7 +45,6 @@ import org.chromium.chrome.browser.util.ChromeAccessibilityUtil; + import org.chromium.chrome.features.start_surface.StartSurfaceConfiguration; + import org.chromium.chrome.features.start_surface.StartSurfaceUserData; + import org.chromium.components.embedder_support.util.UrlUtilities; +-import org.chromium.components.signin.identitymanager.ConsentLevel; + import org.chromium.content_public.browser.LoadUrlParams; + import org.chromium.content_public.common.ResourceRequestBody; + import org.chromium.ui.base.DeviceFormFactor; +@@ -512,13 +510,8 @@ public final class ReturnToChromeExperimentsUtil { + * Caches the status of whether the primary account is synced. + */ + public static void cachePrimaryAccountSyncStatus() { +- boolean isPrimaryAccountSync = +- IdentityServicesProvider.get() +- .getSigninManager(Profile.getLastUsedRegularProfile()) +- .getIdentityManager() +- .hasPrimaryAccount(ConsentLevel.SYNC); + SharedPreferencesManager.getInstance().writeBoolean( +- ChromePreferenceKeys.PRIMARY_ACCOUNT_SYNC, isPrimaryAccountSync); ++ ChromePreferenceKeys.PRIMARY_ACCOUNT_SYNC, false); + } + + @VisibleForTesting diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn --- a/chrome/browser/BUILD.gn +++ b/chrome/browser/BUILD.gn -@@ -2837,8 +2837,6 @@ static_library("browser") { +@@ -2853,8 +2853,6 @@ static_library("browser") { "android/shortcut_helper.h", "android/signin/signin_bridge.cc", "android/signin/signin_bridge.h", @@ -2338,7 +2361,7 @@ 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", -@@ -3151,8 +3149,6 @@ static_library("browser") { +@@ -3178,8 +3176,6 @@ static_library("browser") { "sharing/sms/sms_fetch_request_handler.h", "shell_integration_android.cc", "signin/identity_services_provider_android.cc", @@ -2347,7 +2370,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", -@@ -3167,8 +3163,6 @@ static_library("browser") { +@@ -3194,8 +3190,6 @@ static_library("browser") { "sync/glue/synced_window_delegate_android.h", "sync/glue/synced_window_delegates_getter_android.cc", "sync/glue/synced_window_delegates_getter_android.h", @@ -2356,7 +2379,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn "sync/sync_service_android_bridge.cc", "sync/sync_service_android_bridge.h", "sync/trusted_vault_client_android.cc", -@@ -5786,10 +5780,6 @@ static_library("browser") { +@@ -5933,10 +5927,6 @@ static_library("browser") { "signin/logout_tab_helper.h", "signin/process_dice_header_delegate_impl.cc", "signin/process_dice_header_delegate_impl.h", @@ -2514,28 +2537,20 @@ diff --git a/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/brows diff --git a/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/browser/signin/ui/SigninPromoController.java b/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/browser/signin/ui/SigninPromoController.java --- a/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/browser/signin/ui/SigninPromoController.java +++ b/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/browser/signin/ui/SigninPromoController.java -@@ -79,28 +79,7 @@ public class SigninPromoController { +@@ -81,20 +81,7 @@ public class SigninPromoController { * @param accessPoint The access point for which the impression limit is being checked. */ - public static boolean hasNotReachedImpressionLimit(@AccessPoint int accessPoint) { -- SharedPreferencesManager preferencesManager = SharedPreferencesManager.getInstance(); + public static boolean canShowSyncPromo(@AccessPoint int accessPoint) { - switch (accessPoint) { - case SigninAccessPoint.BOOKMARK_MANAGER: -- return getSigninPromoImpressionsCountBookmarks() < MAX_IMPRESSIONS_BOOKMARKS; +- return canShowBookmarkPromo(); - case SigninAccessPoint.NTP_CONTENT_SUGGESTIONS: -- int maxImpressions = ChromeFeatureList.getFieldTrialParamByFeatureAsInt( -- ChromeFeatureList.ENHANCED_PROTECTION_PROMO_CARD, -- "MaxSigninPromoImpressions", Integer.MAX_VALUE); -- return SharedPreferencesManager.getInstance().readInt( -- ChromePreferenceKeys.SIGNIN_PROMO_IMPRESSIONS_COUNT_NTP) -- < maxImpressions; +- return canShowNTPPromo(); - case SigninAccessPoint.RECENT_TABS: -- // There is no impression limit for Recent Tabs. +- // There is no impression limit or dismiss button in Recent Tabs promo. - return true; - case SigninAccessPoint.SETTINGS: -- return preferencesManager.readInt( -- ChromePreferenceKeys.SIGNIN_PROMO_IMPRESSIONS_COUNT_SETTINGS) -- < MAX_IMPRESSIONS_SETTINGS; +- return canShowSettingsPromo(); - default: - assert false : "Unexpected value for access point: " + accessPoint; - return false; @@ -2543,7 +2558,7 @@ diff --git a/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/brows + return false; } - /** + private static boolean canShowBookmarkPromo() { diff --git a/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/browser/signin/ui/account_picker/AccountPickerDelegateImpl.java b/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/browser/signin/ui/account_picker/AccountPickerDelegateImpl.java --- a/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/browser/signin/ui/account_picker/AccountPickerDelegateImpl.java +++ b/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/browser/signin/ui/account_picker/AccountPickerDelegateImpl.java @@ -2564,35 +2579,37 @@ diff --git a/chrome/browser/signin/ui/android/java/src/org/chromium/chrome/brows mIdentityManager = IdentityServicesProvider.get().getIdentityManager( Profile.getLastUsedRegularProfile()); } -@@ -88,23 +85,10 @@ public class AccountPickerDelegateImpl implements WebSigninBridge.Listener, Acco +@@ -87,25 +84,11 @@ public class AccountPickerDelegateImpl implements WebSigninBridge.Listener, Acco + // if user retries the sign-in from the error screen, we need to sign out the user // first before signing in again. destroyWebSigninBridge(); - // TODO(https://crbug.com/1133752): Revise sign-out reason +- // TODO(https://crbug.com/1133752): Revise sign-out reason - mSigninManager.signOut(SignoutReason.ABORT_SIGNIN); } mOnSignInErrorCallback = onSignInErrorCallback; - mWebSigninBridge = mWebSigninBridgeFactory.create( - Profile.getLastUsedRegularProfile(), coreAccountInfo, this); -- mSigninManager.signin(coreAccountInfo, new SigninManager.SignInCallback() { -- @Override -- public void onSignInComplete() { -- // After the sign-in is finished in Chrome, we still need to wait for -- // WebSigninBridge to be called to redirect to the continue url. -- } + AccountInfoServiceProvider.get().getAccountInfoByEmail(accountEmail).then(accountInfo -> { + mWebSigninBridge = mWebSigninBridgeFactory.create( + Profile.getLastUsedRegularProfile(), accountInfo, this); +- mSigninManager.signin(accountInfo, new SigninManager.SignInCallback() { +- @Override +- public void onSignInComplete() { +- // After the sign-in is finished in Chrome, we still need to wait for +- // WebSigninBridge to be called to redirect to the continue url. +- } - -- @Override -- public void onSignInAborted() { -- AccountPickerDelegateImpl.this.destroyWebSigninBridge(); -- } -- }); +- @Override +- public void onSignInAborted() { +- AccountPickerDelegateImpl.this.destroyWebSigninBridge(); +- } +- }); + }); } - /** diff --git a/chrome/browser/sync/sync_service_factory.cc b/chrome/browser/sync/sync_service_factory.cc --- a/chrome/browser/sync/sync_service_factory.cc +++ b/chrome/browser/sync/sync_service_factory.cc @@ -82,7 +82,7 @@ - #include "chromeos/lacros/lacros_chrome_service_impl.h" + #include "chromeos/lacros/lacros_service.h" #endif // BUILDFLAG(IS_CHROMEOS_LACROS) -namespace { diff --git a/build/patches/Restore-Search-Ready-Omnibox-flag.patch b/build/patches/Restore-Search-Ready-Omnibox-flag.patch index 03934fc3..36404a5a 100644 --- a/build/patches/Restore-Search-Ready-Omnibox-flag.patch +++ b/build/patches/Restore-Search-Ready-Omnibox-flag.patch @@ -20,7 +20,7 @@ Disable search-ready omnibox 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 -@@ -3360,6 +3360,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3228,6 +3228,9 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kUseLookalikesForNavigationSuggestionsDescription, kOsAll, FEATURE_VALUE_TYPE(net::features::kUseLookalikesForNavigationSuggestions)}, @@ -33,7 +33,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 -@@ -2313,6 +2313,11 @@ +@@ -2291,6 +2291,11 @@ // with neural net palm detection. "expiry_milestone": 90 }, @@ -48,9 +48,9 @@ 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 -@@ -3527,6 +3527,11 @@ const char kSafeBrowsingUseLocalBlacklistsV2Description[] = - "process to check the Safe Browsing reputation of URLs without calling " - "into GmsCore for every URL."; +@@ -3404,6 +3404,11 @@ const char kScrollCaptureName[] = "Scroll Capture"; + const char kScrollCaptureDescription[] = + "Enables scrolling screenshot capture for web contents."; +const char kSearchReadyOmniboxName[] = "Search Ready Omnibox"; +const char kSearchReadyOmniboxDescription[] = @@ -63,9 +63,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 -@@ -2014,6 +2014,9 @@ extern const char kEnhancedProtectionPromoAndroidDescription[]; - extern const char kSafeBrowsingUseLocalBlacklistsV2Name[]; - extern const char kSafeBrowsingUseLocalBlacklistsV2Description[]; +@@ -1947,6 +1947,9 @@ extern const char kSafeBrowsingUseLocalBlacklistsV2Description[]; + extern const char kScrollCaptureName[]; + extern const char kScrollCaptureDescription[]; +extern const char kSearchReadyOmniboxName[]; +extern const char kSearchReadyOmniboxDescription[]; @@ -76,7 +76,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 -@@ -228,6 +228,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -241,6 +241,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kReachedCodeProfiler, &kReaderModeInCCT, &kReengagementNotification, @@ -84,7 +84,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse &kRelatedSearches, &kRelatedSearchesAlternateUx, &kRelatedSearchesInBar, -@@ -647,6 +648,9 @@ const base::Feature kRelatedSearchesSimplifiedUx{ +@@ -680,6 +681,9 @@ const base::Feature kRelatedSearchesSimplifiedUx{ const base::Feature kRelatedSearchesUi{"RelatedSearchesUi", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -97,7 +97,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 -@@ -114,6 +114,7 @@ extern const base::Feature kRelatedSearchesSimplifiedUx; +@@ -120,6 +120,7 @@ extern const base::Feature kRelatedSearchesSimplifiedUx; extern const base::Feature kRelatedSearchesUi; extern const base::Feature kSearchEnginePromoExistingDevice; extern const base::Feature kSearchEnginePromoNewDevice; @@ -108,7 +108,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 -@@ -408,6 +408,7 @@ public abstract class ChromeFeatureList { +@@ -421,6 +421,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 9b5aadfe..506e79f2 100644 --- a/build/patches/Restore-Simplified-NTP-launch.patch +++ b/build/patches/Restore-Simplified-NTP-launch.patch @@ -11,7 +11,7 @@ This reverts commit 4d0e4483c5f77c66a8b6193e8a3bec5d0624d6ad. .../feedback/ChromeFeedbackCollector.java | 1 + .../feedback/SimplifiedNtpFeedbackSource.java | 38 +++++++++++ .../NativePageNavigationDelegateImpl.java | 4 +- - .../chrome/browser/ntp/NewTabPageLayout.java | 31 ++++++++- + .../chrome/browser/ntp/NewTabPageLayout.java | 30 ++++++++- .../suggestions/SuggestionsConfig.java | 4 +- .../SuggestionsNavigationDelegate.java | 17 +++++ chrome/browser/about_flags.cc | 3 + @@ -22,14 +22,14 @@ This reverts commit 4d0e4483c5f77c66a8b6193e8a3bec5d0624d6ad. .../browser/flags/ChromeFeatureList.java | 1 + components/ntp_snippets/features.cc | 6 +- .../variations/fieldtrial_testing_config.json | 18 +++++ - 18 files changed, 202 insertions(+), 6 deletions(-) + 18 files changed, 201 insertions(+), 6 deletions(-) create mode 100644 chrome/android/java/res/layout/ntp_shortcuts.xml create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/feedback/SimplifiedNtpFeedbackSource.java 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 -@@ -683,6 +683,7 @@ chrome_java_resources = [ +@@ -685,6 +685,7 @@ chrome_java_resources = [ "java/res/layout/new_tab_page_multi_feed_header.xml", "java/res/layout/new_tab_page_section_tab.xml", "java/res/layout/new_tab_page_tile_grid_placeholder.xml", @@ -40,7 +40,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 -@@ -584,6 +584,7 @@ chrome_java_sources = [ +@@ -588,6 +588,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", @@ -207,7 +207,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat 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 -@@ -36,6 +36,7 @@ import org.chromium.chrome.browser.cryptids.ProbabilisticCryptidRenderer; +@@ -37,6 +37,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; @@ -215,7 +215,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL import org.chromium.chrome.browser.lens.LensMetrics; import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher; import org.chromium.chrome.browser.native_page.ContextMenuManager; -@@ -115,6 +116,8 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -117,6 +118,8 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer private UiConfig mUiConfig; private CallbackController mCallbackController = new CallbackController(); @@ -224,15 +224,15 @@ 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. -@@ -279,6 +282,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer - } +@@ -282,6 +285,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer mNoSearchLogoSpacer = findViewById(R.id.no_search_logo_spacer); + initializeSearchBoxBackground(); + initializeShortcuts(); initializeSearchBoxTextView(); initializeVoiceSearchButton(); initializeLensButton(); -@@ -582,10 +586,17 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -595,10 +599,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() { @@ -244,15 +244,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL + paddingTop = 0; + } else { + // Set a bit more top padding on the tile grid if there is no logo. -+ paddingTop = getResources().getDimensionPixelSize(shouldShowLogo() ++ paddingTop = getResources().getDimensionPixelSize(shouldShowLogo() ? R.dimen.tile_grid_layout_padding_top : R.dimen.tile_grid_layout_no_logo_padding_top); + } -+ mSiteSectionViewHolder.getItemView().setPadding( 0, paddingTop, 0, mSiteSectionViewHolder.getItemView().getPaddingBottom()); } -@@ -970,6 +981,22 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -987,6 +997,22 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer return iphCommandBuilder; } @@ -326,7 +325,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 -@@ -4021,6 +4021,9 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3881,6 +3881,9 @@ const FeatureEntry kFeatureEntries[] = { SINGLE_VALUE_TYPE_AND_VALUE( switches::kForceShowUpdateMenuItemCustomSummary, "Custom Summary")}, @@ -339,7 +338,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 -@@ -3575,6 +3575,9 @@ const char kSharingHubLinkToggleName[] = "Sharing Hub Link Toggle"; +@@ -3452,6 +3452,9 @@ const char kSharingHubLinkToggleName[] = "Sharing Hub Link Toggle"; const char kSharingHubLinkToggleDescription[] = "Enable the link toggle in the Sharing Hub."; @@ -352,7 +351,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 -@@ -2035,6 +2035,9 @@ extern const char kSiteIsolationForPasswordSitesDescription[]; +@@ -1968,6 +1968,9 @@ extern const char kSiteIsolationForPasswordSitesDescription[]; extern const char kSmartSuggestionForLargeDownloadsName[]; extern const char kSmartSuggestionForLargeDownloadsDescription[]; @@ -365,7 +364,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 -@@ -208,6 +208,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { +@@ -220,6 +220,7 @@ const base::Feature* const kFeaturesExposedToJava[] = { &kEnhancedProtectionPromoCard, &kExperimentsForAgsa, &kExploreSites, @@ -373,7 +372,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse &kFocusOmniboxInIncognitoTabIntents, &kGoogleLensSdkIntent, &kHandleMediaIntents, -@@ -619,6 +620,9 @@ const base::Feature kOfflineIndicatorV2{"OfflineIndicatorV2", +@@ -652,6 +653,9 @@ const base::Feature kOfflineIndicatorV2{"OfflineIndicatorV2", const base::Feature kOfflineMeasurementsBackgroundTask{ "OfflineMeasurementsBackgroundTask", base::FEATURE_DISABLED_BY_DEFAULT}; @@ -386,21 +385,21 @@ 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 -@@ -102,6 +102,7 @@ extern const base::Feature kNotificationSuspender; - extern const base::Feature kNewWindowAppMenu; +@@ -109,6 +109,7 @@ extern const base::Feature kNewWindowAppMenu; extern const base::Feature kOfflineIndicatorV2; extern const base::Feature kOfflineMeasurementsBackgroundTask; -+extern const base::Feature kSimplifiedNTP; extern const base::Feature kPageAnnotationsService; ++extern const base::Feature kSimplifiedNTP; extern const base::Feature kProbabilisticCryptidRenderer; extern const base::Feature kQuickActionSearchWidgetAndroid; + extern const base::Feature kReachedCodeProfiler; 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 -@@ -384,6 +384,7 @@ public abstract class ChromeFeatureList { - public static final String LOOKALIKE_NAVIGATION_URL_SUGGESTIONS_UI = - "LookalikeUrlNavigationSuggestionsUI"; +@@ -396,6 +396,7 @@ public abstract class ChromeFeatureList { public static final String MARK_HTTP_AS = "MarkHttpAs"; + public static final String MESSAGES_FOR_ANDROID_CHROME_SURVEY = + "MessagesForAndroidChromeSurvey"; + public static final String SIMPLIFIED_NTP = "SimplifiedNTP"; public static final String MESSAGES_FOR_ANDROID_INFRASTRUCTURE = "MessagesForAndroidInfrastructure"; @@ -430,7 +429,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 -@@ -7920,6 +7920,24 @@ +@@ -4059,6 +4059,24 @@ ] } ], @@ -452,7 +451,7 @@ diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variati + ] + } + ], - "TabGroupsYourTabsTogether": [ + "HelpAppLauncherSearch": [ { "platforms": [ -- 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 02f7f67b..f4668f6e 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 -@@ -3452,6 +3452,10 @@ const FeatureEntry kFeatureEntries[] = { +@@ -3320,6 +3320,10 @@ const FeatureEntry kFeatureEntries[] = { SINGLE_DISABLE_VALUE_TYPE(switches::kDisableHostedAppShimCreation)}, #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 -@@ -1134,6 +1134,11 @@ +@@ -1103,6 +1103,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 -@@ -3432,6 +3432,10 @@ const char kReadLaterDescription[] = +@@ -3299,6 +3299,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 -@@ -1959,6 +1959,9 @@ extern const char kQueryTilesRankTilesDescription[]; +@@ -1887,6 +1887,9 @@ extern const char kQueryTilesRankTilesDescription[]; 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 66a75dc0..64df8548 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 -@@ -305,6 +305,15 @@ const FeatureEntry::Choice kOverlayStrategiesChoices[] = { +@@ -304,6 +304,15 @@ const FeatureEntry::Choice kOverlayStrategiesChoices[] = { "single-fullscreen,single-on-top,underlay"}, }; @@ -29,22 +29,22 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = { {flags_ui::kGenericExperimentChoiceDefault, "", ""}, {flag_descriptions::kTouchSelectionStrategyCharacter, -@@ -3586,6 +3595,9 @@ const FeatureEntry kFeatureEntries[] = { - feature_engagement::kIPHDemoMode, - feature_engagement::kIPHDemoModeChoiceVariations, - "IPH_DemoMode")}, +@@ -3542,6 +3551,9 @@ const FeatureEntry kFeatureEntries[] = { + {"enable-use-zoom-for-dsf", flag_descriptions::kEnableUseZoomForDsfName, + flag_descriptions::kEnableUseZoomForDsfDescription, kOsAll, + MULTI_VALUE_TYPE(kEnableUseZoomForDSFChoices)}, + {"num-raster-threads", flag_descriptions::kNumRasterThreadsName, + flag_descriptions::kNumRasterThreadsDescription, kOsAll, + MULTI_VALUE_TYPE(kNumRasterThreadsChoices)}, - {"disable-threaded-scrolling", flag_descriptions::kThreadedScrollingName, - flag_descriptions::kThreadedScrollingDescription, kOsAll, - SINGLE_DISABLE_VALUE_TYPE(blink::switches::kDisableThreadedScrolling)}, + {"enable-subresource-redirect", + flag_descriptions::kEnableSubresourceRedirectName, + flag_descriptions::kEnableSubresourceRedirectDescription, kOsAll, 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 -@@ -3830,6 +3830,11 @@ - "owners": [ "sczs", "thegreenfrog", "bling-flags@google.com" ], - "expiry_milestone": 83 +@@ -3828,6 +3828,11 @@ + "owners": [ "carlosil" ], + "expiry_milestone": 92 }, + { + "name": "num-raster-threads", @@ -52,12 +52,12 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js + "expiry_milestone": -1 + }, { - "name": "messages-translate-infobar", - "owners": [ "thegreenfrog", "sczs", "bling-flags@google.com" ], + "name": "mobile-google-srp", + "owners": [ "gambard", "bling-flags@google.com" ], 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 -@@ -1738,6 +1738,14 @@ const char kOmniboxActiveSearchEnginesDescription[] = +@@ -1666,6 +1666,14 @@ const char kOmniboxActiveSearchEnginesDescription[] = "Enables a 'Your Search Engines' section on " "chrome://settings/searchEngines."; @@ -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 -@@ -1008,6 +1008,13 @@ extern const char kNotificationsSystemFlagDescription[]; +@@ -971,6 +971,13 @@ extern const char kNotificationsSystemFlagDescription[]; extern const char kOmniboxActiveSearchEnginesName[]; extern const char kOmniboxActiveSearchEnginesDescription[]; 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 f5133667..1b318a6b 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,7 +45,7 @@ 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 -@@ -159,6 +159,11 @@ android_resources("java_resources") { +@@ -150,6 +150,11 @@ android_resources("java_resources") { "java/res/drawable-xxxhdpi/settings_sensors.png", "java/res/drawable-xxxhdpi/settings_storage.png", "java/res/drawable-xxxhdpi/web_asset.png", @@ -218,7 +218,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/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 -@@ -117,6 +117,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -116,6 +116,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment return "bluetooth_scanning_permission_list"; case ContentSettingsType.COOKIES: return "cookies_permission_list"; @@ -227,7 +227,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: -@@ -494,6 +496,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -482,6 +484,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment if (type == ContentSettingsType.ADS) { setUpAdsPreference(preference); @@ -236,7 +236,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) { -@@ -1020,6 +1024,24 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -949,6 +953,24 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment } } @@ -255,7 +255,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c + : ContentSettingValues.BLOCK; + } + // Not possible to embargo AUTOPLAY. -+ setUpListPreference(preference, currentValue, false /* isEmbargoed */); ++ setupContentSettingsPreference(preference, currentValue, false /* isEmbargoed */); + } + private void setUpSoundPreference(Preference preference) { @@ -350,7 +350,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 -@@ -447,6 +447,17 @@ static void JNI_WebsitePreferenceBridge_GetOriginsForPermission( +@@ -448,6 +448,17 @@ static void JNI_WebsitePreferenceBridge_GetOriginsForPermission( managedOnly); } @@ -368,7 +368,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid static jboolean JNI_WebsitePreferenceBridge_IsContentSettingsPatternValid( JNIEnv* env, const JavaParamRef& pattern) { -@@ -813,6 +824,7 @@ static void JNI_WebsitePreferenceBridge_SetContentSettingEnabled( +@@ -814,6 +825,7 @@ static void JNI_WebsitePreferenceBridge_SetContentSettingEnabled( case ContentSettingsType::POPUPS: case ContentSettingsType::SENSORS: case ContentSettingsType::SOUND: @@ -376,7 +376,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid value = CONTENT_SETTING_ALLOW; break; default: -@@ -893,6 +905,17 @@ static jboolean JNI_WebsitePreferenceBridge_IsContentSettingUserModifiable( +@@ -894,6 +906,17 @@ static jboolean JNI_WebsitePreferenceBridge_IsContentSettingUserModifiable( static_cast(content_settings_type)); } @@ -416,7 +416,7 @@ diff --git a/components/browser_ui/strings/android/site_settings.grdp b/componen 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 -@@ -326,7 +326,7 @@ void ContentSettingsRegistry::Init() { +@@ -313,7 +313,7 @@ void ContentSettingsRegistry::Init() { ContentSettingsInfo::PERSISTENT, ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY); @@ -440,7 +440,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc 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 -@@ -182,6 +182,7 @@ bool RendererContentSettingRules::IsRendererContentSetting( +@@ -183,6 +183,7 @@ bool RendererContentSettingRules::IsRendererContentSetting( ContentSettingsType content_type) { return content_type == ContentSettingsType::IMAGES || content_type == ContentSettingsType::JAVASCRIPT || @@ -499,7 +499,7 @@ diff --git a/components/content_settings/core/common/content_settings_mojom_trai diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc --- a/components/content_settings/renderer/content_settings_agent_impl.cc +++ b/components/content_settings/renderer/content_settings_agent_impl.cc -@@ -426,6 +426,17 @@ bool ContentSettingsAgentImpl::AllowRunningInsecureContent( +@@ -423,6 +423,17 @@ bool ContentSettingsAgentImpl::AllowRunningInsecureContent( return false; } @@ -576,7 +576,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in diff --git a/components/page_info_strings.grdp b/components/page_info_strings.grdp --- a/components/page_info_strings.grdp +++ b/components/page_info_strings.grdp -@@ -344,6 +344,9 @@ +@@ -345,6 +345,9 @@ Sound 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 11ec0a0b..4e937bcf 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 -@@ -496,6 +496,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -484,6 +484,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) { -@@ -823,16 +825,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -810,16 +812,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() { -@@ -1026,17 +1020,35 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -977,17 +971,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. -@@ -1052,22 +1064,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -1003,22 +1015,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment setupContentSettingsPreference(preference, null, false); return; } diff --git a/build/patches/Add-images-contentsettings.patch b/build/patches/Site-setting-for-images.patch similarity index 97% rename from build/patches/Add-images-contentsettings.patch rename to build/patches/Site-setting-for-images.patch index 3e3e80df..482ae614 100644 --- a/build/patches/Add-images-contentsettings.patch +++ b/build/patches/Site-setting-for-images.patch @@ -34,7 +34,7 @@ Subject: Site setting for images 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 -@@ -121,6 +121,7 @@ android_resources("java_resources") { +@@ -112,6 +112,7 @@ android_resources("java_resources") { sources = [ "java/res/drawable-hdpi/ic_volume_up_grey600_24dp.png", "java/res/drawable-hdpi/permission_background_sync.png", @@ -42,7 +42,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b "java/res/drawable-hdpi/permission_javascript.png", "java/res/drawable-hdpi/permission_popups.png", "java/res/drawable-hdpi/permission_protected_media.png", -@@ -129,6 +130,7 @@ android_resources("java_resources") { +@@ -120,6 +121,7 @@ android_resources("java_resources") { "java/res/drawable-hdpi/web_asset.png", "java/res/drawable-mdpi/ic_volume_up_grey600_24dp.png", "java/res/drawable-mdpi/permission_background_sync.png", @@ -50,7 +50,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b "java/res/drawable-mdpi/permission_javascript.png", "java/res/drawable-mdpi/permission_popups.png", "java/res/drawable-mdpi/permission_protected_media.png", -@@ -137,6 +139,7 @@ android_resources("java_resources") { +@@ -128,6 +130,7 @@ android_resources("java_resources") { "java/res/drawable-mdpi/web_asset.png", "java/res/drawable-xhdpi/ic_volume_up_grey600_24dp.png", "java/res/drawable-xhdpi/permission_background_sync.png", @@ -58,7 +58,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b "java/res/drawable-xhdpi/permission_javascript.png", "java/res/drawable-xhdpi/permission_popups.png", "java/res/drawable-xhdpi/permission_protected_media.png", -@@ -145,6 +148,7 @@ android_resources("java_resources") { +@@ -136,6 +139,7 @@ android_resources("java_resources") { "java/res/drawable-xhdpi/web_asset.png", "java/res/drawable-xxhdpi/ic_volume_up_grey600_24dp.png", "java/res/drawable-xxhdpi/permission_background_sync.png", @@ -66,7 +66,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b "java/res/drawable-xxhdpi/permission_javascript.png", "java/res/drawable-xxhdpi/permission_popups.png", "java/res/drawable-xxhdpi/permission_protected_media.png", -@@ -153,6 +157,7 @@ android_resources("java_resources") { +@@ -144,6 +148,7 @@ android_resources("java_resources") { "java/res/drawable-xxhdpi/web_asset.png", "java/res/drawable-xxxhdpi/ic_volume_up_grey600_24dp.png", "java/res/drawable-xxxhdpi/permission_background_sync.png", @@ -208,7 +208,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/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 -@@ -121,6 +121,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -120,6 +120,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment return "autoplay_permission_list"; case ContentSettingsType.IDLE_DETECTION: return "idle_detection_permission_list"; @@ -217,7 +217,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c case ContentSettingsType.JAVASCRIPT: return "javascript_permission_list"; case ContentSettingsType.POPUPS: -@@ -504,6 +506,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -492,6 +494,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment setUpJavascriptPreference(preference); } else if (type == ContentSettingsType.COOKIES) { setUpCookiesPreference(preference); @@ -226,8 +226,8 @@ 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) { -@@ -1137,6 +1141,24 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment - } +@@ -1057,6 +1061,24 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment + setupContentSettingsPreference(preference, permission, false /* isEmbargoed */); } + private void setUpImagesPreference(Preference preference) { @@ -304,7 +304,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c + ContentSettingsType.IMAGES, ContentSettingsType.POPUPS, ContentSettingsType.ADS, - ContentSettingsType.TIMEZONE_OVERRIDE, + ContentSettingsType.BACKGROUND_SYNC, diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java --- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java +++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java @@ -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/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 -@@ -820,6 +820,7 @@ static void JNI_WebsitePreferenceBridge_SetContentSettingEnabled( +@@ -821,6 +821,7 @@ static void JNI_WebsitePreferenceBridge_SetContentSettingEnabled( case ContentSettingsType::ADS: case ContentSettingsType::BACKGROUND_SYNC: case ContentSettingsType::COOKIES: @@ -356,7 +356,7 @@ diff --git a/components/browser_ui/strings/android/site_settings.grdp b/componen JavaScript -@@ -188,6 +191,9 @@ +@@ -182,6 +185,9 @@ Site %1$sgoogle.com added @@ -369,7 +369,7 @@ diff --git a/components/browser_ui/strings/android/site_settings.grdp b/componen 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 -@@ -144,7 +144,8 @@ void ContentSettingsRegistry::Init() { +@@ -143,7 +143,8 @@ void ContentSettingsRegistry::Init() { kExtensionScheme), ValidSettings(CONTENT_SETTING_ALLOW, CONTENT_SETTING_BLOCK), WebsiteSettingsInfo::SINGLE_ORIGIN_WITH_EMBEDDED_EXCEPTIONS_SCOPE, diff --git a/build/patches/Skip-the-first-run-and-metrics.patch b/build/patches/Skip-the-first-run-and-metrics.patch index 8537c51d..32ea5d7f 100644 --- a/build/patches/Skip-the-first-run-and-metrics.patch +++ b/build/patches/Skip-the-first-run-and-metrics.patch @@ -3,34 +3,11 @@ Date: Sun, 26 Nov 2017 22:51:43 +0100 Subject: Skip the first run and metrics --- - .../chromium/chrome/browser/firstrun/FirstRunStatus.java | 6 ++---- .../org/chromium/chrome/browser/firstrun/FirstRunUtils.java | 3 --- .../chrome/browser/firstrun/ToSAndUMAFirstRunFragment.java | 6 ------ + .../chromium/chrome/browser/firstrun/FirstRunStatus.java | 6 ++---- 3 files changed, 2 insertions(+), 13 deletions(-) -diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java ---- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java -+++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java -@@ -43,8 +43,7 @@ public class FirstRunStatus { - * includes ToS and Sign In pages if necessary. - */ - public static boolean getFirstRunFlowComplete() { -- return SharedPreferencesManager.getInstance().readBoolean( -- ChromePreferenceKeys.FIRST_RUN_FLOW_COMPLETE, false); -+ return true; - } - - /** -@@ -61,8 +60,7 @@ public class FirstRunStatus { - * Checks whether the welcome page should be skipped from the main First Run Experience. - */ - public static boolean shouldSkipWelcomePage() { -- return SharedPreferencesManager.getInstance().readBoolean( -- ChromePreferenceKeys.FIRST_RUN_SKIP_WELCOME_PAGE, false); -+ return true; - } - - /** diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java --- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java +++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java @@ -66,6 +43,29 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ToSAnd Resources resources = getResources(); NoUnderlineClickableSpan clickableGoogleTermsSpan = +diff --git a/chrome/browser/first_run/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java b/chrome/browser/first_run/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java +--- a/chrome/browser/first_run/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java ++++ b/chrome/browser/first_run/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunStatus.java +@@ -43,8 +43,7 @@ public class FirstRunStatus { + * includes ToS and Sign In pages if necessary. + */ + public static boolean getFirstRunFlowComplete() { +- return SharedPreferencesManager.getInstance().readBoolean( +- ChromePreferenceKeys.FIRST_RUN_FLOW_COMPLETE, false); ++ return true; + } + + /** +@@ -61,8 +60,7 @@ public class FirstRunStatus { + * Checks whether the welcome page should be skipped from the main First Run Experience. + */ + public static boolean shouldSkipWelcomePage() { +- return SharedPreferencesManager.getInstance().readBoolean( +- ChromePreferenceKeys.FIRST_RUN_SKIP_WELCOME_PAGE, false); ++ return true; + } + + /** -- 2.17.1 diff --git a/build/patches/Timezone-customization.patch b/build/patches/Timezone-customization.patch index 26300a76..da4df22d 100644 --- a/build/patches/Timezone-customization.patch +++ b/build/patches/Timezone-customization.patch @@ -12,13 +12,12 @@ See also: https://github.com/bromite/bromite/wiki/TimezoneOverride ...ezoneoverride_site_settings_preference.xml | 68 ++++++ .../res/xml/site_settings_preferences.xml | 4 + .../java/res/xml/website_preferences.xml | 9 + - .../ContentSettingsResources.java | 34 ++- + .../ContentSettingsResources.java | 35 +++- .../site_settings/SingleCategorySettings.java | 77 ++++++- - .../site_settings/SingleWebsiteSettings.java | 36 +++- + .../site_settings/SingleWebsiteSettings.java | 8 +- .../site_settings/SiteSettings.java | 2 +- .../site_settings/SiteSettingsCategory.java | 9 +- .../site_settings/SiteSettingsDelegate.java | 2 + - .../site_settings/SiteSettingsUtil.java | 1 + ...imezoneOverrideSiteSettingsPreference.java | 193 ++++++++++++++++++ .../browser_ui/site_settings/Website.java | 10 + .../WebsitePermissionsFetcher.java | 3 + @@ -42,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 + - 36 files changed, 724 insertions(+), 18 deletions(-) + 35 files changed, 699 insertions(+), 15 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 @@ -81,7 +80,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/site_settings/C 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 -@@ -73,6 +73,7 @@ android_library("java") { +@@ -64,6 +64,7 @@ android_library("java") { "java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java", "java/src/org/chromium/components/browser_ui/site_settings/WebsitePreference.java", "java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java", @@ -89,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" -@@ -173,6 +174,8 @@ android_resources("java_resources") { +@@ -164,6 +165,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", @@ -256,19 +255,20 @@ 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 -@@ -259,6 +259,11 @@ public class ContentSettingsResources { +@@ -259,6 +259,12 @@ public class ContentSettingsResources { ContentSettingValues.ASK, ContentSettingValues.BLOCK, R.string.website_settings_category_vr_ask, R.string.website_settings_category_vr_blocked); ++ + case ContentSettingsType.TIMEZONE_OVERRIDE: + return new ResourceItem(R.drawable.web_asset, 0, R.string.timezone_override_permission_title, -+ ContentSettingValues.ALLOW, ContentSettingValues.BLOCK, -+ R.string.website_settings_category_timezone_override_custom, -+ R.string.website_settings_category_timezone_override_random); ++ ContentSettingValues.ALLOW, ContentSettingValues.BLOCK, ++ R.string.website_settings_category_timezone_override_custom, ++ R.string.website_settings_category_timezone_override_random); } assert false; // NOTREACHED return null; -@@ -424,6 +429,23 @@ public class ContentSettingsResources { +@@ -424,6 +430,23 @@ public class ContentSettingsResources { } } @@ -292,7 +292,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. -@@ -438,7 +460,10 @@ public class ContentSettingsResources { +@@ -438,7 +461,10 @@ public class ContentSettingsResources { * with a particular website. * @param value The ContentSetting for which we want the resource. */ @@ -304,7 +304,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; -@@ -527,6 +552,13 @@ public class ContentSettingsResources { +@@ -527,6 +553,13 @@ public class ContentSettingsResources { return descriptionIDs; } } @@ -321,8 +321,8 @@ 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/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 -@@ -54,6 +54,10 @@ import org.chromium.components.prefs.PrefService; - import org.chromium.components.user_prefs.UserPrefs; +@@ -54,6 +54,10 @@ import org.chromium.components.user_prefs.UserPrefs; + import org.chromium.content_public.browser.BrowserContextHandle; import org.chromium.ui.widget.Toast; +import android.app.Activity; @@ -520,7 +520,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/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 -@@ -125,6 +125,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -124,6 +124,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment return "popup_permission_list"; case ContentSettingsType.SOUND: return "sound_permission_list"; @@ -529,68 +529,22 @@ 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: -@@ -903,11 +905,12 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment - } +@@ -883,11 +885,13 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment + if (value == null) return; + setUpPreferenceCommon(preference, value); ++ int content_type = getContentSettingsTypeFromPreferenceKey(preference.getKey()); ++ ChromeSwitchPreference switchPreference = (ChromeSwitchPreference) preference; -+ int type = getContentSettingsTypeFromPreferenceKey(preference.getKey()); - switchPreference.setChecked(value == ContentSettingValues.ALLOW); switchPreference.setSummary(isEmbargoed ? getString(R.string.automatically_blocked) - : getString(ContentSettingsResources.getCategorySummary(value))); -+ : getString(ContentSettingsResources.getCategorySummary(type, value))); ++ : getString(ContentSettingsResources.getCategorySummary(content_type, value))); switchPreference.setOnPreferenceChangeListener(this); @ContentSettingsType int contentType = getContentSettingsTypeFromPreferenceKey(preference.getKey()); -@@ -925,20 +928,43 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment - @ContentSettingValues @Nullable Integer value, boolean isEmbargoed) { - ListPreference listPreference = (ListPreference) preference; - -+ int contentType = getContentSettingsTypeFromPreferenceKey(preference.getKey()); -+ boolean requiresTriStateSetting = -+ WebsitePreferenceBridge.requiresTriStateContentSetting(contentType); -+ if (requiresTriStateSetting) { -+ CharSequence[] keys = new String[3]; -+ keys[0] = ContentSetting.toString(ContentSettingValues.ALLOW); -+ keys[1] = ContentSetting.toString(ContentSettingValues.ASK); -+ keys[2] = ContentSetting.toString(ContentSettingValues.BLOCK); -+ int[] descriptionsId = ContentSettingsResources.getTriStateSettingDescriptionIDs(contentType); -+ CharSequence[] descriptions = new String[3]; -+ descriptions[0] = getString(descriptionsId[0]); -+ descriptions[1] = getString(descriptionsId[1]); -+ descriptions[2] = getString(descriptionsId[2]); -+ listPreference.setEntryValues(keys); -+ listPreference.setEntries(descriptions); -+ listPreference.setOnPreferenceChangeListener(this); -+ listPreference.setSummary( -+ getString(ContentSettingsResources.getCategorySummary(contentType, value))); -+ int indexSelected = (value == ContentSettingValues.ASK ? 1 : (value == ContentSettingValues.ALLOW ? 0 : 2)); -+ listPreference.setValueIndex(indexSelected); -+ return; -+ } -+ - CharSequence[] keys = new String[2]; - CharSequence[] descriptions = new String[2]; - keys[0] = ContentSetting.toString(ContentSettingValues.ALLOW); - keys[1] = ContentSetting.toString(ContentSettingValues.BLOCK); - descriptions[0] = -- getString(ContentSettingsResources.getSiteSummary(ContentSettingValues.ALLOW)); -+ getString(ContentSettingsResources.getSiteSummary(contentType, ContentSettingValues.ALLOW)); - descriptions[1] = -- getString(ContentSettingsResources.getSiteSummary(ContentSettingValues.BLOCK)); -+ getString(ContentSettingsResources.getSiteSummary(contentType, ContentSettingValues.BLOCK)); - listPreference.setEntryValues(keys); - listPreference.setEntries(descriptions); - listPreference.setOnPreferenceChangeListener(this); - listPreference.setSummary(isEmbargoed - ? getString(R.string.automatically_blocked) -- : getString(ContentSettingsResources.getCategorySummary(value))); -+ : getString(ContentSettingsResources.getCategorySummary(contentType, value))); - // 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); -@@ -1171,7 +1197,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment +@@ -1102,7 +1106,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment preference.setSummary(getDSECategorySummary(permission)); } else { preference.setSummary( @@ -664,17 +618,6 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c + + void launchTimeZoneOverrideHelpAndFeedbackActivity(Activity currentActivity); } -diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsUtil.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsUtil.java ---- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsUtil.java -+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettingsUtil.java -@@ -23,6 +23,7 @@ public class SiteSettingsUtil { - ContentSettingsType.JAVASCRIPT, - ContentSettingsType.POPUPS, - ContentSettingsType.ADS, -+ ContentSettingsType.TIMEZONE_OVERRIDE, - ContentSettingsType.BACKGROUND_SYNC, - ContentSettingsType.AUTOMATIC_DOWNLOADS, - ContentSettingsType.PROTECTED_MEDIA_IDENTIFIER, diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/TimezoneOverrideSiteSettingsPreference.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/TimezoneOverrideSiteSettingsPreference.java new file mode 100755 --- /dev/null @@ -718,8 +661,8 @@ new file mode 100755 +import androidx.preference.PreferenceViewHolder; +import androidx.appcompat.app.AlertDialog; + ++import org.chromium.content_public.browser.BrowserContextHandle; +import org.chromium.components.content_settings.ContentSettingValues; -+import org.chromium.components.embedder_support.browser_context.BrowserContextHandle; +import org.chromium.components.browser_ui.site_settings.WebsitePreferenceBridge; +import org.chromium.components.browser_ui.widget.RadioButtonWithDescription; +import org.chromium.components.browser_ui.widget.RadioButtonWithEditText; @@ -951,7 +894,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 -@@ -912,3 +912,19 @@ static jboolean JNI_WebsitePreferenceBridge_GetLocationAllowedByPolicy( +@@ -913,3 +913,19 @@ static jboolean JNI_WebsitePreferenceBridge_GetLocationAllowedByPolicy( ->GetDefaultContentSetting(ContentSettingsType::GEOLOCATION, nullptr) == CONTENT_SETTING_ALLOW; } @@ -984,7 +927,7 @@ diff --git a/components/browser_ui/strings/android/site_settings.grdp b/componen -@@ -469,6 +472,38 @@ +@@ -460,6 +463,38 @@ Block sites from playing protected content @@ -1064,7 +1007,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov diff --git a/components/content_settings/core/browser/content_settings_pref_provider.h b/components/content_settings/core/browser/content_settings_pref_provider.h --- a/components/content_settings/core/browser/content_settings_pref_provider.h +++ b/components/content_settings/core/browser/content_settings_pref_provider.h -@@ -63,6 +63,9 @@ class PrefProvider : public UserModifiableProvider { +@@ -62,6 +62,9 @@ class PrefProvider : public UserModifiableProvider { ContentSettingsPref* GetPref(ContentSettingsType type) const; @@ -1074,7 +1017,7 @@ diff --git a/components/content_settings/core/browser/content_settings_pref_prov private: friend class DeadlockCheckerObserver; // For testing. -@@ -95,6 +98,8 @@ class PrefProvider : public UserModifiableProvider { +@@ -94,6 +97,8 @@ class PrefProvider : public UserModifiableProvider { base::Clock* clock_; @@ -1086,10 +1029,11 @@ 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 -@@ -291,6 +291,18 @@ void ContentSettingsRegistry::Init() { +@@ -618,6 +618,18 @@ void ContentSettingsRegistry::Init() { + ContentSettingsInfo::INHERIT_IN_INCOGNITO, ContentSettingsInfo::PERSISTENT, - ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY); - + ContentSettingsInfo::EXCEPTIONS_ON_SECURE_AND_INSECURE_ORIGINS); ++ + Register(ContentSettingsType::TIMEZONE_OVERRIDE, "timezone-override", CONTENT_SETTING_ALLOW, + WebsiteSettingsInfo::SYNCABLE, + AllowlistedSchemes(kChromeUIScheme, kChromeDevToolsScheme), @@ -1101,10 +1045,9 @@ diff --git a/components/content_settings/core/browser/content_settings_registry. + ContentSettingsInfo::INHERIT_IN_INCOGNITO, + ContentSettingsInfo::PERSISTENT, + ContentSettingsInfo::EXCEPTIONS_ON_SECURE_AND_INSECURE_ORIGINS); -+ - Register(ContentSettingsType::DURABLE_STORAGE, "durable-storage", - CONTENT_SETTING_ASK, WebsiteSettingsInfo::UNSYNCABLE, - AllowlistedSchemes(), + } + + void ContentSettingsRegistry::Register( diff --git a/components/content_settings/core/browser/content_settings_utils.cc b/components/content_settings/core/browser/content_settings_utils.cc --- a/components/content_settings/core/browser/content_settings_utils.cc +++ b/components/content_settings/core/browser/content_settings_utils.cc @@ -1156,7 +1099,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 -@@ -184,7 +184,8 @@ bool RendererContentSettingRules::IsRendererContentSetting( +@@ -185,7 +185,8 @@ bool RendererContentSettingRules::IsRendererContentSetting( content_type == ContentSettingsType::JAVASCRIPT || content_type == ContentSettingsType::CLIENT_HINTS || content_type == ContentSettingsType::POPUPS || @@ -1232,9 +1175,9 @@ diff --git a/components/content_settings/core/common/content_settings_types.h b/ + // Content setting for timezone customization functionality. + TIMEZONE_OVERRIDE, + - // Capture the current tab using getCurrentBrowsingContextMedia(). - // TODO(crbug.com/1150788): Apply this to getDisplayMedia() as well. - // No values are stored for this type, this is solely needed to be able to + // Controls access to the getDisplayMedia API when {preferCurrentTab: true} + // is specified. + // TODO(crbug.com/1150788): Also apply this when getDisplayMedia() is called 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 @@ -1261,7 +1204,7 @@ diff --git a/components/content_settings/core/common/pref_names.h b/components/c diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc --- a/components/content_settings/renderer/content_settings_agent_impl.cc +++ b/components/content_settings/renderer/content_settings_agent_impl.cc -@@ -9,8 +9,10 @@ +@@ -8,8 +8,10 @@ #include "base/bind.h" #include "base/feature_list.h" @@ -1272,7 +1215,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc #include "components/content_settings/core/common/content_settings.h" #include "components/content_settings/core/common/content_settings.mojom.h" #include "components/content_settings/core/common/content_settings_pattern.h" -@@ -32,6 +34,10 @@ +@@ -31,6 +33,10 @@ #include "third_party/blink/public/web/web_local_frame.h" #include "third_party/blink/public/web/web_local_frame_client.h" #include "third_party/blink/public/web/web_view.h" @@ -1283,7 +1226,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc #include "url/gurl.h" #include "url/origin.h" #include "url/url_constants.h" -@@ -45,6 +51,8 @@ using blink::WebURL; +@@ -44,6 +50,8 @@ using blink::WebURL; using blink::WebView; using content::DocumentState; @@ -1292,7 +1235,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc namespace content_settings { namespace { -@@ -366,6 +374,10 @@ bool ContentSettingsAgentImpl::AllowScript(bool enabled_per_settings) { +@@ -363,6 +371,10 @@ bool ContentSettingsAgentImpl::AllowScript(bool enabled_per_settings) { allow = allow || IsAllowlistedForContentSettings(); cached_script_permissions_[frame] = allow; @@ -1303,7 +1246,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc return allow; } -@@ -490,4 +502,81 @@ bool ContentSettingsAgentImpl::IsAllowlistedForContentSettings() const { +@@ -487,4 +499,81 @@ bool ContentSettingsAgentImpl::IsAllowlistedForContentSettings() const { return false; } diff --git a/build/patches/Unexpire-tab-groups-flags.patch b/build/patches/Unexpire-tab-groups-flags.patch index cd95e90e..b39d95cf 100644 --- a/build/patches/Unexpire-tab-groups-flags.patch +++ b/build/patches/Unexpire-tab-groups-flags.patch @@ -12,7 +12,7 @@ Disable by default 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 -@@ -2641,7 +2641,7 @@ +@@ -2624,7 +2624,7 @@ { "name": "enable-tab-groups", "owners": [ "memex-team@google.com" ], @@ -21,7 +21,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js }, { "name": "enable-tab-groups-continuation", -@@ -2651,7 +2651,7 @@ +@@ -2634,7 +2634,7 @@ { "name": "enable-tab-groups-ui-improvements", "owners": [ "memex-team@google.com" ], @@ -33,7 +33,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 -@@ -698,13 +698,13 @@ const base::Feature kTabEngagementReportingAndroid{ +@@ -731,13 +731,13 @@ const base::Feature kTabEngagementReportingAndroid{ "TabEngagementReportingAndroid", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kTabGroupsAndroid{"TabGroupsAndroid", @@ -52,15 +52,15 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse 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 -@@ -66,7 +66,7 @@ public class CachedFeatureFlags { - put(ChromeFeatureList.PREFETCH_NOTIFICATION_SCHEDULING_INTEGRATION, false); - put(ChromeFeatureList.STORE_HOURS, false); - put(ChromeFeatureList.TAB_GRID_LAYOUT_ANDROID, true); -- put(ChromeFeatureList.TAB_GROUPS_ANDROID, true); -+ put(ChromeFeatureList.TAB_GROUPS_ANDROID, false); - put(ChromeFeatureList.TAB_GROUPS_CONTINUATION_ANDROID, false); - put(ChromeFeatureList.TOOLBAR_USE_HARDWARE_BITMAP_DRAW, false); - put(ChromeFeatureList.CLOSE_TAB_SUGGESTIONS, false); +@@ -68,7 +68,7 @@ public class CachedFeatureFlags { + .put(ChromeFeatureList.PREFETCH_NOTIFICATION_SCHEDULING_INTEGRATION, false) + .put(ChromeFeatureList.STORE_HOURS, false) + .put(ChromeFeatureList.TAB_GRID_LAYOUT_ANDROID, true) +- .put(ChromeFeatureList.TAB_GROUPS_ANDROID, true) ++ .put(ChromeFeatureList.TAB_GROUPS_ANDROID, false) + .put(ChromeFeatureList.TAB_GROUPS_CONTINUATION_ANDROID, false) + .put(ChromeFeatureList.TOOLBAR_USE_HARDWARE_BITMAP_DRAW, false) + .put(ChromeFeatureList.CLOSE_TAB_SUGGESTIONS, false) -- 2.17.1 diff --git a/build/patches/Update-i18n-zh_CN-support.patch b/build/patches/Update-i18n-zh_CN-support.patch index 319f6bc2..ed9359e2 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 -@@ -7690,4 +7690,6 @@ +@@ -7754,4 +7754,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 -@@ -1317,4 +1317,37 @@ Privacy Sandbox 试用版功能尚处于积极开发阶段,目前只能在部 +@@ -1358,4 +1358,37 @@ Privacy Sandbox 试用版功能尚处于积极开发阶段,目前只能在部 关闭所有标签页 常规 动态卡片上的菜单已关闭 @@ -67,9 +67,9 @@ 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 -@@ -318,4 +318,17 @@ +@@ -317,4 +317,17 @@ + 这是一个危险网页 移除此网站? - 屏蔽会展示侵扰性或误导性广告的网站(推荐) 已存储的数据 - \ No newline at end of file @@ -90,7 +90,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 -@@ -2328,4 +2328,7 @@ +@@ -2345,4 +2345,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 155edf29..9151c710 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 -@@ -127,7 +127,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -129,7 +129,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; -@@ -252,7 +252,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -254,7 +254,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()); } -@@ -562,7 +562,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer +@@ -575,7 +575,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer && mInitialized) { return; } diff --git a/build/patches/Use-dummy-DFM-installer.patch b/build/patches/Use-dummy-DFM-installer.patch index e9707e7e..393577ed 100644 --- a/build/patches/Use-dummy-DFM-installer.patch +++ b/build/patches/Use-dummy-DFM-installer.patch @@ -18,7 +18,7 @@ Subject: Use dummy DFM installer 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 -@@ -20,13 +20,11 @@ android_library("module_installer_java") { +@@ -19,13 +19,11 @@ android_library("module_installer_java") { "java/src/org/chromium/components/module_installer/logger/Logger.java", "java/src/org/chromium/components/module_installer/logger/PlayCoreLogger.java", "java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java", @@ -422,7 +422,7 @@ diff --git a/components/module_installer/android/java/src/org/chromium/component } /** -@@ -167,7 +140,6 @@ public class SplitAvailabilityLogger { +@@ -172,7 +145,6 @@ public class SplitAvailabilityLogger { public InstallTimes(boolean isCached) { mIsCached = isCached; diff --git a/build/patches/User-agent-customization.patch b/build/patches/User-agent-customization.patch index 480275cd..4006cc07 100644 --- a/build/patches/User-agent-customization.patch +++ b/build/patches/User-agent-customization.patch @@ -25,7 +25,7 @@ to use the flag in the hamburger menu to navigate with a custom useragent leavin .../preferences/ChromePreferenceKeys.java | 5 + .../settings/PrivacyPreferencesManager.java | 8 + .../org/chromium/chrome/browser/tab/Tab.java | 2 + - .../browser/tabmodel/TabWindowManager.java | 3 + + .../browser/tabmodel/TabWindowManager.java | 2 + .../tabmodel/TabWindowManagerImpl.java | 18 ++ .../strings/android_chrome_strings.grd | 35 ++++ chrome/common/pref_names.cc | 13 ++ @@ -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 | 4 + .../framehost/NavigationControllerImpl.java | 3 +- content/renderer/render_thread_impl.cc | 1 - - 31 files changed, 741 insertions(+), 6 deletions(-) + 31 files changed, 740 insertions(+), 6 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 @@ -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 -@@ -794,4 +794,6 @@ chrome_java_resources = [ - "java/res/xml/privacy_preferences.xml", +@@ -798,4 +798,6 @@ chrome_java_resources = [ "java/res/xml/search_widget_info.xml", + "java/res/xml/tab_layout_badge.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 -@@ -974,6 +974,7 @@ chrome_java_sources = [ +@@ -981,6 +981,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", @@ -541,7 +541,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav import org.chromium.chrome.R; import org.chromium.chrome.browser.ActivityUtils; import org.chromium.chrome.browser.WarmupManager; -@@ -491,6 +495,31 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { +@@ -495,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 @TabLoadStatus int result = loadUrlInternal(params); -@@ -1494,6 +1523,10 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { +@@ -1498,6 +1527,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"); } -@@ -1673,6 +1706,43 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { +@@ -1677,6 +1710,43 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer { /* forcedByUser */ false); } @@ -866,7 +866,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 -@@ -1008,6 +1008,9 @@ public final class ChromePreferenceKeys { +@@ -1023,6 +1023,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*"); @@ -876,9 +876,9 @@ 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 LegacyChromePreferenceKeys#getKeysInUse()}. Add new SharedPreferences keys -@@ -1105,6 +1108,8 @@ public final class ChromePreferenceKeys { - SHARING_LAST_SHARED_COMPONENT_NAME, +@@ -1130,6 +1133,8 @@ public final class ChromePreferenceKeys { SIGNIN_PROMO_IMPRESSIONS_COUNT_NTP, + SIGNIN_PROMO_NTP_PROMO_EXPIRED, TWA_DISCLOSURE_SEEN_PACKAGES, + USERAGENT_STICKY_DESKTOP_MODE, + USERAGENT_ALWAYS_DESKTOP_MODE, @@ -916,18 +916,19 @@ diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/Tab.jav diff --git a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManager.java b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManager.java --- a/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManager.java +++ b/chrome/browser/tabmodel/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManager.java -@@ -79,4 +79,7 @@ public interface TabWindowManager { - * @return Specified {@link Tab} or {@code null} if the {@link Tab} is not found. +@@ -89,6 +89,8 @@ public interface TabWindowManager { */ Tab getTabById(int tabId); -+ + + void SetOverrideUserAgentForAllTabs(boolean usingDesktopUserAgent); + - } + /** + * Finds the {@link TabModelSelector} bound to an Activity instance of a given index. + * @param index The index of {@link TabModelSelector} to get. diff --git a/chrome/browser/tabmodel/internal/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerImpl.java b/chrome/browser/tabmodel/internal/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerImpl.java --- a/chrome/browser/tabmodel/internal/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerImpl.java +++ b/chrome/browser/tabmodel/internal/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManagerImpl.java -@@ -128,6 +128,24 @@ public class TabWindowManagerImpl implements ActivityStateListener, TabWindowMan +@@ -133,6 +133,24 @@ public class TabWindowManagerImpl implements ActivityStateListener, TabWindowMan return null; } @@ -1000,7 +1001,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 -@@ -422,6 +422,19 @@ const char kAllowJavascriptAppleEvents[] = +@@ -423,6 +423,19 @@ const char kAllowJavascriptAppleEvents[] = #endif @@ -1023,7 +1024,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 -@@ -1161,6 +1161,14 @@ extern const char kDesktopSharingHubEnabled[]; +@@ -1188,6 +1188,14 @@ extern const char kLensRegionSearchEnabled[]; extern const char kIncognitoTabHistoryEnabled[]; #endif @@ -1062,7 +1063,7 @@ diff --git a/components/browser_ui/widget/android/java/src/org/chromium/componen diff --git a/components/embedder_support/user_agent_utils.cc b/components/embedder_support/user_agent_utils.cc --- a/components/embedder_support/user_agent_utils.cc +++ b/components/embedder_support/user_agent_utils.cc -@@ -137,6 +137,13 @@ std::string GetPlatformForUAMetadata() { +@@ -141,6 +141,13 @@ std::string GetPlatformForUAMetadata() { blink::UserAgentMetadata GetUserAgentMetadata() { blink::UserAgentMetadata metadata; @@ -1111,9 +1112,9 @@ 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 -@@ -3614,6 +3614,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( - #if BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS) - switches::kSchedulerBoostUrgent, +@@ -3582,6 +3582,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer( + switches::kLacrosEnablePlatformHevc, + switches::kLacrosUseChromeosProtectedMedia, #endif + switches::kDesktopModeViewportMetaEnabled, }; @@ -1130,7 +1131,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" -@@ -2625,6 +2626,9 @@ const blink::web_pref::WebPreferences WebContentsImpl::ComputeWebPreferences() { +@@ -2627,6 +2628,9 @@ const blink::web_pref::WebPreferences WebContentsImpl::ComputeWebPreferences() { !renderer_preferences_.user_agent_override.ua_metadata_override->mobile) #endif prefs.viewport_meta_enabled = false; @@ -1163,7 +1164,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) { +@@ -1669,7 +1669,6 @@ void RenderThreadImpl::SetWebKitSharedTimersSuspended(bool suspend) { } void RenderThreadImpl::SetUserAgent(const std::string& user_agent) { diff --git a/build/patches/ask-permission-to-play-protected-media-by-default.patch b/build/patches/ask-permission-to-play-protected-media-by-default.patch index 7adf8577..a4f17999 100644 --- a/build/patches/ask-permission-to-play-protected-media-by-default.patch +++ b/build/patches/ask-permission-to-play-protected-media-by-default.patch @@ -9,7 +9,7 @@ Subject: ask permission to play protected media by default 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 -@@ -265,9 +265,7 @@ void ContentSettingsRegistry::Init() { +@@ -264,9 +264,7 @@ void ContentSettingsRegistry::Init() { // On ChromeOS and Windows the default value is always ALLOW. const auto protected_media_identifier_setting = #if defined(OS_ANDROID) diff --git a/build/patches/autofill-disable-autofill-download-manager.patch b/build/patches/autofill-disable-autofill-download-manager.patch index f5fed6f4..138226db 100644 --- a/build/patches/autofill-disable-autofill-download-manager.patch +++ b/build/patches/autofill-disable-autofill-download-manager.patch @@ -15,7 +15,7 @@ Make sure that autofill is disabled by default diff --git a/components/autofill/core/browser/autofill_download_manager.cc b/components/autofill/core/browser/autofill_download_manager.cc --- a/components/autofill/core/browser/autofill_download_manager.cc +++ b/components/autofill/core/browser/autofill_download_manager.cc -@@ -516,35 +516,6 @@ bool GetUploadPayloadForApi(const AutofillUploadContents& upload, +@@ -534,35 +534,6 @@ bool GetUploadPayloadForApi(const AutofillUploadContents& upload, return upload_request.SerializeToString(payload); } @@ -51,7 +51,7 @@ diff --git a/components/autofill/core/browser/autofill_download_manager.cc b/com // Gets HTTP body payload for API POST request. bool GetAPIBodyPayload(const std::string& payload, AutofillDownloadManager::RequestType type, -@@ -782,6 +753,7 @@ std::tuple AutofillDownloadManager::GetRequestURLAndMethod( +@@ -800,6 +771,7 @@ std::tuple AutofillDownloadManager::GetRequestURLAndMethod( // ID of the resource to add to the API request URL. Nothing will be added if // |resource_id| is empty. std::string resource_id; @@ -59,7 +59,7 @@ diff --git a/components/autofill/core/browser/autofill_download_manager.cc b/com std::string method = "POST"; if (request_data.request_type == AutofillDownloadManager::REQUEST_QUERY) { -@@ -802,7 +774,10 @@ std::tuple AutofillDownloadManager::GetRequestURLAndMethod( +@@ -820,7 +792,10 @@ std::tuple AutofillDownloadManager::GetRequestURLAndMethod( // Add the query parameter to set the response format to a serialized proto. url = net::AppendQueryParameter(url, "alt", "proto"); diff --git a/build/patches/build-remove-calling-untrusted-hooks.patch b/build/patches/build-remove-calling-untrusted-hooks.patch index aae8e3c5..fb68f995 100644 --- a/build/patches/build-remove-calling-untrusted-hooks.patch +++ b/build/patches/build-remove-calling-untrusted-hooks.patch @@ -11,7 +11,7 @@ sysroot. diff --git a/DEPS b/DEPS --- a/DEPS +++ b/DEPS -@@ -105,7 +105,7 @@ vars = { +@@ -111,7 +111,7 @@ vars = { # Check out and download nacl by default, unless on an arm mac. # This can be disabled e.g. with custom_vars. @@ -20,7 +20,7 @@ diff --git a/DEPS b/DEPS # By default, do not check out src-internal. This can be overridden e.g. with # custom_vars. -@@ -136,8 +136,8 @@ vars = { +@@ -142,8 +142,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. -@@ -3758,49 +3758,6 @@ hooks = [ +@@ -3790,49 +3790,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', -@@ -3908,43 +3865,6 @@ hooks = [ +@@ -3940,43 +3897,6 @@ hooks = [ '-s', 'src/third_party/skia', '--header', 'src/skia/ext/skia_commit_hash.h'], }, @@ -125,7 +125,7 @@ diff --git a/DEPS b/DEPS # Pull rc binaries using checked-in hashes. { 'name': 'rc_win', -@@ -3970,30 +3890,6 @@ hooks = [ +@@ -4002,30 +3922,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 db86b786..1198fbb9 100644 --- a/build/patches/disable-AdsBlockedInfoBar.patch +++ b/build/patches/disable-AdsBlockedInfoBar.patch @@ -3,13 +3,13 @@ Date: Mon, 26 Aug 2019 17:54:28 -0400 Subject: disable AdsBlockedInfoBar --- - .../content/browser/profile_interaction_manager.cc | 13 ------------- - 1 file changed, 13 deletions(-) + .../content/browser/profile_interaction_manager.cc | 14 -------------- + 1 file changed, 14 deletions(-) diff --git a/components/subresource_filter/content/browser/profile_interaction_manager.cc b/components/subresource_filter/content/browser/profile_interaction_manager.cc --- a/components/subresource_filter/content/browser/profile_interaction_manager.cc +++ b/components/subresource_filter/content/browser/profile_interaction_manager.cc -@@ -16,11 +16,6 @@ +@@ -17,11 +17,6 @@ #include "content/public/browser/render_frame_host.h" #include "content/public/browser/web_contents.h" @@ -21,15 +21,16 @@ diff --git a/components/subresource_filter/content/browser/profile_interaction_m namespace subresource_filter { ProfileInteractionManager::ProfileInteractionManager( -@@ -127,14 +122,6 @@ void ProfileInteractionManager::MaybeShowNotification() { - const GURL& top_level_url = web_contents()->GetLastCommittedURL(); +@@ -135,15 +130,6 @@ void ProfileInteractionManager::MaybeShowNotification() { + const GURL& top_level_url = page_->GetMainDocument().GetLastCommittedURL(); if (profile_context_->settings_manager()->ShouldShowUIForSite( top_level_url)) { -#if defined(OS_ANDROID) - // NOTE: It is acceptable for the embedder to not have installed an infobar - // manager. - if (auto* infobar_manager = -- infobars::ContentInfoBarManager::FromWebContents(web_contents())) { +- infobars::ContentInfoBarManager::FromWebContents( +- GetWebContents())) { - subresource_filter::AdsBlockedInfobarDelegate::Create(infobar_manager); - } -#endif diff --git a/build/patches/disable-background-sync-by-default.patch b/build/patches/disable-background-sync-by-default.patch index fa04acd6..333fed56 100644 --- a/build/patches/disable-background-sync-by-default.patch +++ b/build/patches/disable-background-sync-by-default.patch @@ -9,7 +9,7 @@ Subject: disable background sync by default 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 -@@ -304,7 +304,7 @@ void ContentSettingsRegistry::Init() { +@@ -303,7 +303,7 @@ void ContentSettingsRegistry::Init() { ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY); Register(ContentSettingsType::BACKGROUND_SYNC, "background-sync", diff --git a/build/patches/disable-sensors-access-site-setting-by-default.patch b/build/patches/disable-sensors-access-site-setting-by-default.patch index ffe8b238..8e09f482 100644 --- a/build/patches/disable-sensors-access-site-setting-by-default.patch +++ b/build/patches/disable-sensors-access-site-setting-by-default.patch @@ -9,7 +9,7 @@ Subject: disable sensors access site setting by default 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 -@@ -408,7 +408,7 @@ void ContentSettingsRegistry::Init() { +@@ -403,7 +403,7 @@ void ContentSettingsRegistry::Init() { // TODO(crbug.com/904439): Update this to "SECURE_ONLY" once // DeviceOrientationEvents and DeviceMotionEvents are only fired in secure // contexts. 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 921a0be9..6a70407d 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 -@@ -136,12 +136,12 @@ const unsigned kMinimumTTLSeconds = kCacheEntryTTLSeconds; +@@ -134,12 +134,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/kill-Vision.patch b/build/patches/kill-Vision.patch index a33f551b..0a711dd5 100644 --- a/build/patches/kill-Vision.patch +++ b/build/patches/kill-Vision.patch @@ -13,7 +13,7 @@ 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 -@@ -307,8 +307,6 @@ android_library("chrome_java") { +@@ -312,8 +312,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", diff --git a/build/patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch b/build/patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch index 7f13a3c8..2b6ab412 100644 --- a/build/patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch +++ b/build/patches/ungoogled-chromium-Disable-Network-Time-Tracker.patch @@ -13,7 +13,7 @@ Fixes https://github.com/Eloston/ungoogled-chromium/issues/302 diff --git a/components/network_time/network_time_tracker.cc b/components/network_time/network_time_tracker.cc --- a/components/network_time/network_time_tracker.cc +++ b/components/network_time/network_time_tracker.cc -@@ -279,7 +279,7 @@ void NetworkTimeTracker::UpdateNetworkTime(base::Time network_time, +@@ -278,7 +278,7 @@ void NetworkTimeTracker::UpdateNetworkTime(base::Time network_time, } bool NetworkTimeTracker::AreTimeFetchesEnabled() const { diff --git a/build/patches/ungoogled-chromium-Disable-profile-avatar.patch b/build/patches/ungoogled-chromium-Disable-profile-avatar.patch index 7714a4f1..6aa112c6 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 -@@ -1367,8 +1367,6 @@ static_library("browser") { +@@ -1372,8 +1372,6 @@ static_library("browser") { "profiles/profile_attributes_storage.cc", "profiles/profile_attributes_storage.h", "profiles/profile_attributes_storage_observer.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 -@@ -325,12 +325,6 @@ std::u16string ProfileAttributesEntry::GetUserName() const { +@@ -338,12 +338,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 22616c9d..6647e161 100644 --- a/build/patches/ungoogled-chromium-Disable-translate-integration.patch +++ b/build/patches/ungoogled-chromium-Disable-translate-integration.patch @@ -113,7 +113,7 @@ diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browse 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 -@@ -1232,9 +1232,6 @@ Your Google account may have other forms of browsing history like searches and a +@@ -1247,9 +1247,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. @@ -126,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 -@@ -915,8 +915,9 @@ void TranslateManager::FilterIsTranslatePossible( +@@ -887,8 +887,9 @@ void TranslateManager::FilterIsTranslatePossible( ->LogAutofillAssistantDeferredTriggerDecision(); } @@ -136,8 +136,8 @@ diff --git a/components/translate/core/browser/translate_manager.cc b/components +// !::google_apis::HasAPIKeyConfigured()) { + if (true) { // Without an API key, translate won't work, so don't offer to translate in - // the first place. Leave prefs::kOfferTranslateEnabled on, though, because - // that settings syncs and we don't want to turn off translate everywhere + // the first place. Leave kOfferTranslateEnabled on, though, because that + // settings syncs and we don't want to turn off translate everywhere else. diff --git a/components/translate/core/browser/translate_script.cc b/components/translate/core/browser/translate_script.cc --- a/components/translate/core/browser/translate_script.cc +++ b/components/translate/core/browser/translate_script.cc diff --git a/build/patches/ungoogled-chromium-Disable-untraceable-URLs.patch b/build/patches/ungoogled-chromium-Disable-untraceable-URLs.patch index 202f825e..d859a18a 100644 --- a/build/patches/ungoogled-chromium-Disable-untraceable-URLs.patch +++ b/build/patches/ungoogled-chromium-Disable-untraceable-URLs.patch @@ -50,7 +50,7 @@ diff --git a/chrome/browser/plugins/plugins_resource_service.cc b/chrome/browser diff --git a/components/safe_browsing/content/browser/client_side_model_loader.cc b/components/safe_browsing/content/browser/client_side_model_loader.cc --- a/components/safe_browsing/content/browser/client_side_model_loader.cc +++ b/components/safe_browsing/content/browser/client_side_model_loader.cc -@@ -60,8 +60,6 @@ std::string ReadFileIntoString(base::FilePath path) { +@@ -61,8 +61,6 @@ std::string ReadFileIntoString(base::FilePath path) { // Model Loader strings const size_t ModelLoader::kMaxModelSizeBytes = 150 * 1024; const int ModelLoader::kClientModelFetchIntervalMs = 3600 * 1000; @@ -59,7 +59,7 @@ diff --git a/components/safe_browsing/content/browser/client_side_model_loader.c const char ModelLoader::kClientModelNamePattern[] = "client_model_v5%s_variation_%d.pb"; #if !BUILDFLAG(FULL_SAFE_BROWSING) -@@ -124,7 +122,7 @@ ModelLoader::ModelLoader( +@@ -125,7 +123,7 @@ ModelLoader::ModelLoader( scoped_refptr url_loader_factory, bool is_extended_reporting) : name_(FillInModelName(is_extended_reporting, GetModelNumber())), @@ -68,7 +68,7 @@ diff --git a/components/safe_browsing/content/browser/client_side_model_loader.c update_renderers_callback_(update_renderers_callback), url_loader_factory_(url_loader_factory), last_client_model_status_(ClientModelStatus::MODEL_NEVER_FETCHED) { -@@ -137,7 +135,7 @@ ModelLoader::ModelLoader( +@@ -138,7 +136,7 @@ ModelLoader::ModelLoader( scoped_refptr url_loader_factory, const std::string& model_name) : name_(model_name),