Patches for v99 (#1858)

* Add fix for NTP

* Fixes after uazo's review

* Disable safety checks

* Add new patches, other build fixes
This commit is contained in:
Carl 2022-03-07 23:35:29 +01:00 committed by GitHub
parent 3a7e27df6a
commit 7e0c8e2ef3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
136 changed files with 5720 additions and 5318 deletions

View file

@ -1 +1 @@
98.0.4758.116
99.0.4844.55

View file

@ -1,5 +1,6 @@
android_channel="stable"
blink_symbol_level=1
build_with_tflite_lib=false
chrome_pgo_phase=0
dcheck_always_on=false
debuggable_apks=false

View file

@ -9,7 +9,6 @@ Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch
Bromite-package-name.patch
Restore-classic-new-tab-page.patch
Always-use-new-tab-page-for-default-home-page.patch
Always-allow-partner-customisation.patch
battery_status_service-disable-more-privacy-nightmares.patch
Battery-API-return-nothing.patch
updater-disable-updater-pings.patch
@ -22,7 +21,6 @@ Do-not-store-passwords-by-default.patch
Disable-NTP-remote-suggestions-by-default.patch
Disable-references-to-fonts.googleapis.com.patch
Change-default-webRTC-policy-to-not-use-any-address.patch
Hide-send-reports-checkbox.patch
Never-fetch-popular-sites.patch
ungoogled-chromium-Disable-webRTC-log-uploader.patch
ungoogled-chromium-Disable-untraceable-URLs.patch
@ -55,6 +53,7 @@ Add-flag-to-configure-maximum-connections-per-host.patch
Do-not-ignore-download-location-prompt-setting.patch
Add-bookmark-import-export-actions.patch
Add-an-always-incognito-mode.patch
Add-history-support-in-incognito-mode.patch
Add-option-to-not-persist-tabs-across-sessions.patch
Disable-fetching-of-all-field-trials.patch
Disable-plugins-enumeration.patch
@ -65,7 +64,6 @@ Do-not-build-API-keys-infobar.patch
autofill-disable-autofill-download-manager.patch
first_run-deactivate-autoupdate-globally.patch
translate-disable-fetching-of-translate-languages-from-server.patch
kill-TOS.patch
kill-Vision.patch
kill-Location-fall-back-to-system.patch
kill-Auth.patch
@ -81,6 +79,7 @@ Disable-metrics-on-all-I-O-threads.patch
Disable-various-metrics.patch
Disable-metrics-collection-for-NTP-tiles.patch
Enable-SPPI-for-devices-with-enough-memory.patch
Enable-StrictOriginIsolation-and-SitePerProcess-flags.patch
Use-64-bit-WebView-processes.patch
prefs-disable-signinallowed-by-default.patch
prefs-always-prompt-for-download-directory-by-default.patch
@ -109,13 +108,11 @@ Disable-smart-selection-by-default.patch
Enable-user-agent-freeze-by-default.patch
disable-browser-autologin-by-default.patch
AImageReader-CFI-crash-mitigations.patch
Update-i18n-zh_CN-support.patch
Add-a-flag-to-allow-screenshots-in-Incognito-mode.patch
Add-menu-item-to-view-source.patch
Block-gateway-attacks-via-websockets.patch
Enable-prefetch-privacy-changes-by-default.patch
Disable-support-for-RAR-files-inspection.patch
Add-history-support-in-incognito-mode.patch
Enable-darken-websites-checkbox-in-themes.patch
Remove-blocklisted-URLs-upon-bookmark-creation.patch
Disable-the-DIAL-repeating-discovery.patch
@ -138,7 +135,6 @@ webview-Hard-no-to-persistent-histograms.patch
Ignore-enterprise-policies-for-secure-DNS.patch
Add-menu-item-to-bookmark-all-tabs.patch
Ask-user-before-closing-all-tabs.patch
Add-flag-for-save-data-header.patch
Add-option-to-force-tablet-UI.patch
Make-all-favicon-requests-on-demand.patch
Add-Alt-D-hotkey-to-focus-address-bar.patch
@ -152,7 +148,7 @@ Enable-IntentBlockExternalFormRedirectsNoGesture-by-default.patch
Add-flag-to-disable-external-intent-requests.patch
Logcat-crash-reports-UI.patch
Add-support-for-ISupportHelpAndFeedback.patch
JIT-less-toggle.patch
JIT-toggle-and-site-settings.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
@ -170,9 +166,8 @@ Keep-empty-tabs-between-sessions.patch
Disable-third-party-origin-trials.patch
Never-use-HTTP-probes-for-connection-detection.patch
Disable-Accessibility-service-by-default.patch
Disable-privacy-sandbox.patch
Disable-FLoC-and-privacy-sandbox.patch
Disable-conversion-measurement-api.patch
Disable-FLoC.patch
Restore-offline-indicator-v2-flag.patch
Reintroduce-override_build_timestamp.patch
enable-ftrivial-auto-var-init-zero.patch
@ -180,6 +175,12 @@ disable-appending-variations-header.patch
Make-HTTPS-only-mode-the-default.patch
disable-mobile-identity-consistency-by-default.patch
Disable-idle-detection.patch
Automated-domain-substitution.patch
Allow-building-without-supervised-users.patch
Disable-minidump-upload-scheduling.patch
Revert-Permit-blocking-of-view-source-with-URLBlocklist.patch
Update-i18n-zh_CN-support.patch
Automated-domain-substitution.patch
Disable-safety-check.patch
Disable-all-predictors-code.patch
Allow-adding-search-engines-from-incognito-mode.patch
Enable-Certificate-Transparency.patch

View file

@ -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
@@ -2144,9 +2144,9 @@
@@ -2159,9 +2159,9 @@
"expiry_milestone": 100
},
{
@ -125,24 +125,24 @@ diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc
--- a/gpu/config/gpu_finch_features.cc
+++ b/gpu/config/gpu_finch_features.cc
@@ -52,6 +52,11 @@ bool IsDeviceBlocked(const char* field, const std::string& block_list) {
} // namespace
#if defined(OS_ANDROID)
+
+// Use android AImageReader when playing videos with MediaPlayer.
+const base::Feature kAImageReaderMediaPlayer{"AImageReaderMediaPlayer",
+ base::FEATURE_ENABLED_BY_DEFAULT};
+
#if BUILDFLAG(IS_ANDROID)
// Used to limit GL version to 2.0 for skia raster on Android.
const base::Feature kUseGles2ForOopR{"UseGles2ForOopR",
base::FEATURE_DISABLED_BY_DEFAULT};
diff --git a/gpu/config/gpu_finch_features.h b/gpu/config/gpu_finch_features.h
--- a/gpu/config/gpu_finch_features.h
+++ b/gpu/config/gpu_finch_features.h
@@ -17,6 +17,7 @@ namespace features {
// All features in alphabetical order. The features should be documented
// alongside the definition of their values in the .cc file.
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
+GPU_EXPORT extern const base::Feature kAImageReaderMediaPlayer;
GPU_EXPORT extern const base::Feature kUseGles2ForOopR;
GPU_EXPORT extern const base::Feature kAndroidSurfaceControl;
@ -150,8 +150,8 @@ diff --git a/gpu/config/gpu_finch_features.h b/gpu/config/gpu_finch_features.h
diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
--- a/gpu/config/gpu_util.cc
+++ b/gpu/config/gpu_util.cc
@@ -114,6 +114,9 @@ GpuFeatureStatus GetAndroidSurfaceControlFeatureStatus(
#if !defined(OS_ANDROID)
@@ -116,6 +116,9 @@ GpuFeatureStatus GetAndroidSurfaceControlFeatureStatus(
#if !BUILDFLAG(IS_ANDROID)
return kGpuFeatureStatusDisabled;
#else
+ if (blocklisted_features.count(GPU_FEATURE_TYPE_ANDROID_SURFACE_CONTROL))
@ -160,7 +160,7 @@ diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
if (!gpu_preferences.enable_android_surface_control)
return kGpuFeatureStatusDisabled;
@@ -356,6 +359,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
@@ -324,6 +327,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
gpu_feature_info->status_values[GPU_FEATURE_TYPE_CANVAS_OOP_RASTERIZATION] =
kGpuFeatureStatusBlocklisted;
}
@ -186,9 +186,9 @@ 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
@@ -518,6 +518,11 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
}
@@ -519,6 +519,11 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
}
#endif // defined(OS_MAC)
+ // Disable AImageReader if the workaround is enabled.
+ if (gpu_feature_info_.IsWorkaroundEnabled(DISABLE_AIMAGEREADER)) {

View file

@ -24,33 +24,33 @@ Report AV1 as playable on Android
diff --git a/third_party/libaom/BUILD.gn b/third_party/libaom/BUILD.gn
--- a/third_party/libaom/BUILD.gn
+++ b/third_party/libaom/BUILD.gn
@@ -82,7 +82,7 @@ if (enable_libaom) {
sources += aom_dsp_encoder_asm_sse2_x86_64
sources += aom_dsp_encoder_asm_ssse3_x86_64
}
- defines = [ "CHROMIUM" ]
+ defines = [ "CHROMIUM", "PIC" ]
include_dirs = libaom_include_dirs
@@ -81,7 +81,7 @@ if (current_cpu == "x86" || (current_cpu == "x64" && !is_msan)) {
sources += aom_dsp_encoder_asm_sse2_x86_64
sources += aom_dsp_encoder_asm_ssse3_x86_64
}
- defines = [ "CHROMIUM" ]
+ defines = [ "CHROMIUM", "PIC" ]
include_dirs = libaom_include_dirs
}
@@ -194,7 +194,7 @@ if (enable_libaom) {
configs += [ "//build/config/compiler:no_chromium_code" ]
if (current_cpu == "arm") {
configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
- cflags = [ "-mfpu=neon" ]
+ cflags = [ "-mfpu=neon", "-fPIC" ]
}
configs += [ ":libaom_config" ]
@@ -257,6 +257,8 @@ if (enable_libaom) {
if (current_cpu == "arm64" || cpu_arch_full == "arm-neon" ||
cpu_arch_full == "arm-neon-cpu-detect") {
deps += [ ":libaom_intrinsics_neon" ]
+ # will detect CPU
+ sources += aom_ports_arm_sources
@@ -193,7 +193,7 @@ if (current_cpu == "arm64" || cpu_arch_full == "arm-neon" ||
configs += [ "//build/config/compiler:no_chromium_code" ]
if (current_cpu == "arm") {
configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
- cflags = [ "-mfpu=neon" ]
+ cflags = [ "-mfpu=neon", "-fPIC" ]
}
if (is_android) {
deps += [ "//third_party/android_ndk:cpu_features" ]
configs += [ ":libaom_config" ]
@@ -255,6 +255,8 @@ static_library("libaom") {
if (current_cpu == "arm64" || cpu_arch_full == "arm-neon" ||
cpu_arch_full == "arm-neon-cpu-detect") {
deps += [ ":libaom_intrinsics_neon" ]
+ # will detect CPU
+ sources += aom_ports_arm_sources
}
if (is_android) {
deps += [ "//third_party/android_ndk:cpu_features" ]
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

View file

@ -38,7 +38,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java
@@ -92,6 +92,7 @@ public class ChromeCachedFlags {
@@ -93,6 +93,7 @@ public class ChromeCachedFlags {
.GIVE_JAVA_UI_THREAD_DEFAULT_TASK_TRAITS_USER_BLOCKING_PRIORITY);
add(ChromeFeatureList.GRID_TAB_SWITCHER_FOR_TABLETS);
add(ChromeFeatureList.IMMERSIVE_UI_MODE);
@ -49,10 +49,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/Chrom
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -2787,6 +2787,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2811,6 +2811,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kCSSContainerQueriesDescription, kOsAll,
FEATURE_VALUE_TYPE(blink::features::kCSSContainerQueries)},
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
+ {"allow-user-certificates",
+ flag_descriptions::kAllowUserCertificatesName,
+ flag_descriptions::kAllowUserCertificatesDescription, kOsAndroid,
@ -63,7 +63,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
@@ -11,6 +11,11 @@
@@ -12,6 +12,11 @@
namespace flag_descriptions {
@ -78,7 +78,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -46,6 +46,9 @@ namespace flag_descriptions {
@@ -38,6 +38,9 @@ namespace flag_descriptions {
// Cross-platform -------------------------------------------------------------
@ -91,15 +91,15 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -142,6 +142,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&feed::kFeedSignInPromoDismiss,
@@ -144,6 +144,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&feed::kFeedLoadingPlaceholder,
&feed::kInterestFeedContentSuggestions,
&feed::kInterestFeedSpinnerAlwaysAnimate,
+ &kAllowUserCertificates,
&feed::kInterestFeedV1ClicksAndViewsConditionalUpload,
&feed::kInterestFeedV2,
&feed::kInterestFeedV2Autoplay,
@@ -385,6 +386,9 @@ const base::Feature kAdaptiveButtonInTopToolbarCustomizationV2{
@@ -393,6 +394,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
@@ -48,6 +48,7 @@ public class CachedFeatureFlags {
*/
private static Map<String, Boolean> sDefaults =
ImmutableMap.<String, Boolean>builder()
+ .put(ChromeFeatureList.ALLOW_USER_CERTIFICATES, false)
@@ -51,6 +51,7 @@ public class CachedFeatureFlags {
.put(ChromeFeatureList.ANONYMOUS_UPDATE_CHECKS, true)
.put(ChromeFeatureList.BOOKMARK_BOTTOM_SHEET, false)
.put(ChromeFeatureList.CONDITIONAL_TAB_STRIP_ANDROID, false)
+ .put(ChromeFeatureList.ALLOW_USER_CERTIFICATES, false)
.put(ChromeFeatureList.LENS_CAMERA_ASSISTED_SEARCH, false)
.put(ChromeFeatureList.SERVICE_MANAGER_FOR_DOWNLOAD, true)
.put(ChromeFeatureList.SERVICE_MANAGER_FOR_BACKGROUND_PREFETCH, true)
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

View file

@ -3,33 +3,32 @@ Date: Mon, 26 Apr 2021 15:04:11 +0000
Subject: Add IsCleartextPermitted flag
---
chrome/browser/about_flags.cc | 5 +++++
chrome/browser/about_flags.cc | 4 ++++
chrome/browser/flag_descriptions.cc | 4 ++++
chrome/browser/flag_descriptions.h | 3 +++
net/base/features.cc | 3 +++
net/base/features.h | 2 ++
net/url_request/url_request_http_job.cc | 4 ++++
6 files changed, 21 insertions(+)
6 files changed, 20 insertions(+)
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
@@ -7741,6 +7741,11 @@ const FeatureEntry kFeatureEntries[] = {
SINGLE_VALUE_TYPE(switches::kPervasiveSystemAccentColor)},
#endif
@@ -7727,6 +7727,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kRequestDesktopSiteExceptionsName,
flag_descriptions::kRequestDesktopSiteExceptionsDescription, kOsAndroid,
FEATURE_VALUE_TYPE(features::kRequestDesktopSiteExceptions)},
+ {"cleartext-permitted",
+ flag_descriptions::kIsCleartextPermittedName,
+ flag_descriptions::kIsCleartextPermittedDescription, kOsAndroid,
+ FEATURE_VALUE_TYPE(net::features::kIsCleartextPermitted)},
+
#if defined(OS_ANDROID)
{"use-ulp-languages-in-chrome",
flag_descriptions::kUseULPLanguagesInChromeName,
#endif
{"export-bookmarks-use-saf",
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
@@ -1484,6 +1484,10 @@ const char kHttpsOnlyModeDescription[] =
@@ -1456,6 +1456,10 @@ const char kHttpsOnlyModeDescription[] =
"Adds a setting under chrome://settings/security to opt-in to HTTPS-First "
"Mode.";
@ -43,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
@@ -862,6 +862,9 @@ extern const char kHideShelfControlsInTabletModeDescription[];
@@ -839,6 +839,9 @@ extern const char kHideShelfControlsInTabletModeDescription[];
extern const char kHttpsOnlyModeName[];
extern const char kHttpsOnlyModeDescription[];
@ -56,7 +55,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
@@ -92,6 +92,9 @@ const base::Feature kEnableTLS13EarlyData{"EnableTLS13EarlyData",
@@ -95,6 +95,9 @@ const base::Feature kEnableTLS13EarlyData{"EnableTLS13EarlyData",
const base::Feature kEncryptedClientHello{"EncryptedClientHello",
base::FEATURE_DISABLED_BY_DEFAULT};
@ -69,9 +68,9 @@ diff --git a/net/base/features.cc b/net/base/features.cc
diff --git a/net/base/features.h b/net/base/features.h
--- a/net/base/features.h
+++ b/net/base/features.h
@@ -34,6 +34,8 @@ NET_EXPORT extern const base::Feature kAvoidH2Reprioritization;
// origin requests are restricted to contain at most the source origin.
NET_EXPORT extern const base::Feature kCapReferrerToOriginOnCrossOrigin;
@@ -38,6 +38,8 @@ NET_EXPORT extern const base::Feature kCapReferrerToOriginOnCrossOrigin;
// empty string.
NET_EXPORT extern const base::Feature kCookieDomainAttributeEmptyString;
+NET_EXPORT extern const base::Feature kIsCleartextPermitted;
+
@ -81,10 +80,10 @@ diff --git a/net/base/features.h b/net/base/features.h
diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc
--- a/net/url_request/url_request_http_job.cc
+++ b/net/url_request/url_request_http_job.cc
@@ -206,6 +206,10 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
@@ -207,6 +207,10 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
}
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
+ if (base::FeatureList::IsEnabled(net::features::kIsCleartextPermitted) == false) {
+ return std::make_unique<URLRequestErrorJob>(request,
+ ERR_CLEARTEXT_NOT_PERMITTED);

View file

@ -6,34 +6,31 @@ See also:
* https://github.com/bromite/bromite/issues/551
* https://bugs.chromium.org/p/chromium/issues/detail?id=920762
---
chrome/browser/about_flags.cc | 6 ++++++
chrome/browser/flag_descriptions.cc | 5 +++++
chrome/browser/flag_descriptions.h | 3 +++
.../flags/android/java_templates/ChromeSwitches.java.tmpl | 4 ----
chrome/common/chrome_switches.cc | 3 +++
chrome/common/chrome_switches.h | 1 +
6 files changed, 18 insertions(+), 4 deletions(-)
chrome/browser/about_flags.cc | 3 +++
chrome/browser/flag_descriptions.cc | 5 +++++
chrome/browser/flag_descriptions.h | 3 +++
.../flags/android/java_templates/ChromeSwitches.java.tmpl | 4 ----
chrome/common/chrome_switches.cc | 3 +++
chrome/common/chrome_switches.h | 1 +
6 files changed, 15 insertions(+), 4 deletions(-)
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
@@ -7403,6 +7403,12 @@ const FeatureEntry kFeatureEntries[] = {
@@ -7410,6 +7410,9 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kDynamicColorAndroid,
kDynamicColorAndroidVariations,
"AndroidDynamicColor")},
#endif // defined(OS_ANDROID)
+#if defined(OS_ANDROID)
+ {switches::kEnableIncognitoSnapshotsInAndroidRecents, flag_descriptions::kEnableIncognitoSnapshotsInAndroidRecentsName,
+ flag_descriptions::kEnableIncognitoSnapshotsInAndroidRecentsDescription, kOsAndroid,
+ SINGLE_VALUE_TYPE(switches::kEnableIncognitoSnapshotsInAndroidRecents)},
+#endif
+
#if defined(OS_WIN)
{"win-10-tab-search-caption-button",
flag_descriptions::kWin10TabSearchCaptionButtonName,
#endif // BUILDFLAG(IS_ANDROID)
#if BUILDFLAG(IS_WIN)
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
@@ -692,6 +692,11 @@ const char kEnableAutofillCreditCardAuthenticationDescription[] =
@@ -697,6 +697,11 @@ const char kEnableAutofillCreditCardAuthenticationDescription[] =
"authenticator (if available) to verify card ownership when retrieving "
"credit cards from Google Payments.";
@ -48,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
@@ -440,6 +440,9 @@ extern const char kEnableAutofillSaveCardInfoBarAccountIndicationFooterName[];
@@ -431,6 +431,9 @@ extern const char kEnableAutofillSaveCardInfoBarAccountIndicationFooterName[];
extern const char
kEnableAutofillSaveCardInfoBarAccountIndicationFooterDescription[];
@ -75,7 +72,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
@@ -332,6 +332,9 @@ const char kHomePage[] = "homepage";
@@ -321,6 +321,9 @@ const char kHomePage[] = "homepage";
// Causes the browser to launch directly in incognito mode.
const char kIncognito[] = "incognito";
@ -88,7 +85,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
@@ -109,6 +109,7 @@ extern const char kForceFirstRun[];
@@ -107,6 +107,7 @@ extern const char kForceFirstRun[];
extern const char kHideCrashRestoreBubble[];
extern const char kHomePage[];
extern const char kIncognito[];

View file

@ -14,7 +14,7 @@ for SimpleURLLoaders as well.
.../privacy/settings/PrivacySettings.java | 1 +
.../chrome_autocomplete_provider_client.cc | 2 +
chrome/browser/browser_resources.grd | 6 +
chrome/browser/net/proxy_service_factory.cc | 23 +-
chrome/browser/net/proxy_service_factory.cc | 24 +-
chrome/browser/net/proxy_service_factory.h | 3 +
chrome/browser/prefs/browser_prefs.cc | 4 +
.../prefs/chrome_command_line_pref_store.cc | 2 +-
@ -33,7 +33,7 @@ for SimpleURLLoaders as well.
.../proxy_config/proxy_policy_handler.cc | 2 +-
net/proxy_resolution/proxy_config.cc | 52 ++-
net/proxy_resolution/proxy_config.h | 3 +
24 files changed, 995 insertions(+), 14 deletions(-)
24 files changed, 996 insertions(+), 14 deletions(-)
create mode 100644 chrome/browser/resources/proxy_config.css
create mode 100644 chrome/browser/resources/proxy_config.html
create mode 100644 chrome/browser/resources/proxy_config.js
@ -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
@@ -53,6 +53,7 @@ import org.chromium.ui.text.SpanApplier;
@@ -56,6 +56,7 @@ import org.chromium.ui.text.SpanApplier;
public class PrivacySettings
extends PreferenceFragmentCompat implements Preference.OnPreferenceChangeListener,
INeedSnackbarManager {
@ -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
@@ -280,6 +280,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
@@ -278,6 +278,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
builtins_to_provide.push_back(
base::ASCIIToUTF16(chrome::kChromeUISettingsURL));
#endif
@ -109,7 +109,15 @@ diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resou
diff --git a/chrome/browser/net/proxy_service_factory.cc b/chrome/browser/net/proxy_service_factory.cc
--- a/chrome/browser/net/proxy_service_factory.cc
+++ b/chrome/browser/net/proxy_service_factory.cc
@@ -15,6 +15,9 @@
@@ -6,6 +6,7 @@
#include <utility>
+#include "base/logging.h"
#include "base/task/post_task.h"
#include "base/threading/thread_task_runner_handle.h"
#include "build/build_config.h"
@@ -15,6 +16,9 @@
#include "content/public/browser/browser_thread.h"
#include "net/proxy_resolution/configured_proxy_resolution_service.h"
#include "net/proxy_resolution/proxy_config_service.h"
@ -119,14 +127,14 @@ diff --git a/chrome/browser/net/proxy_service_factory.cc b/chrome/browser/net/pr
#if BUILDFLAG(IS_CHROMEOS_ASH)
#include "chromeos/network/proxy/proxy_config_service_impl.h"
@@ -73,7 +76,20 @@ ProxyServiceFactory::CreatePrefProxyConfigTrackerOfProfile(
@@ -73,7 +77,20 @@ ProxyServiceFactory::CreatePrefProxyConfigTrackerOfProfile(
return std::make_unique<chromeos::ProxyConfigServiceImpl>(
profile_prefs, local_state_prefs, nullptr);
#else
- return std::make_unique<PrefProxyConfigTrackerImpl>(profile_prefs, nullptr);
+ // Migrate from profile_prefs to local_state_prefs
+ if (local_state_prefs->GetBoolean("proxy_migrated") == false) {
+ const base::DictionaryValue* dict =
+ const base::Value* dict =
+ profile_prefs->GetDictionary(proxy_config::prefs::kProxy);
+
+ LOG(INFO) << "CreatePrefProxyConfigTrackerOfProfile: Migration from profile to local state";
@ -141,7 +149,7 @@ diff --git a/chrome/browser/net/proxy_service_factory.cc b/chrome/browser/net/pr
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
}
@@ -89,3 +105,8 @@ ProxyServiceFactory::CreatePrefProxyConfigTrackerOfLocalState(
@@ -89,3 +106,8 @@ ProxyServiceFactory::CreatePrefProxyConfigTrackerOfLocalState(
nullptr);
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
}
@ -173,7 +181,7 @@ diff --git a/chrome/browser/net/proxy_service_factory.h b/chrome/browser/net/pro
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -159,6 +159,8 @@
@@ -160,6 +160,8 @@
#include "printing/buildflags/buildflags.h"
#include "rlz/buildflags/buildflags.h"
@ -182,19 +190,19 @@ 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
@@ -962,6 +964,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
PluginsResourceService::RegisterPrefs(registry);
#endif
@@ -964,6 +966,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
chrome::enterprise_util::RegisterLocalStatePrefs(registry);
component_updater::RegisterPrefs(registry);
embedder_support::OriginTrialPrefs::RegisterPrefs(registry);
+ ProxyServiceFactory::RegisterPrefs(registry);
+
#if defined(OS_ANDROID)
::android::RegisterPrefs(registry);
enterprise_reporting::RegisterLocalStatePrefs(registry);
ExternalProtocolHandler::RegisterPrefs(registry);
flags_ui::PrefServiceFlagsStorage::RegisterPrefs(registry);
diff --git a/chrome/browser/prefs/chrome_command_line_pref_store.cc b/chrome/browser/prefs/chrome_command_line_pref_store.cc
--- a/chrome/browser/prefs/chrome_command_line_pref_store.cc
+++ b/chrome/browser/prefs/chrome_command_line_pref_store.cc
@@ -161,7 +161,7 @@ void ChromeCommandLinePrefStore::ApplyProxyMode() {
@@ -160,7 +160,7 @@ void ChromeCommandLinePrefStore::ApplyProxyMode() {
SetValue(
proxy_config::prefs::kProxy,
std::make_unique<base::Value>(ProxyConfigDictionary::CreateFixedServers(
@ -627,7 +635,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
@@ -278,6 +278,8 @@ static_library("ui") {
@@ -280,6 +280,8 @@ static_library("ui") {
"webui/metrics_handler.h",
"webui/net_export_ui.cc",
"webui/net_export_ui.h",
@ -647,7 +655,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/segmentation_internals/segmentation_internals_ui.h"
#include "chrome/browser/ui/webui/signin_internals_ui.h"
@@ -671,6 +672,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
@@ -690,6 +691,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
return &NewWebUI<MemoryInternalsUI>;
if (url.host_piece() == chrome::kChromeUINetExportHost)
return &NewWebUI<NetExportUI>;
@ -920,7 +928,7 @@ new file mode 100644
+ net::ProxyConfigWithAnnotation config;
+ auto availability = proxy_config_service_->GetLatestProxyConfig(&config);
+
+ const base::DictionaryValue* dict =
+ const base::Value* dict =
+ pref_service_->GetDictionary(proxy_config::prefs::kProxy);
+ ProxyConfigDictionary proxy_dict(dict->Clone());
+ ProxyPrefs::ProxyMode mode;
@ -1118,7 +1126,7 @@ new file mode 100644
diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_constants.cc
--- a/chrome/common/webui_url_constants.cc
+++ b/chrome/common/webui_url_constants.cc
@@ -37,6 +37,8 @@ const char kChromeUICertificateViewerHost[] = "view-cert";
@@ -38,6 +38,8 @@ const char kChromeUICertificateViewerHost[] = "view-cert";
const char kChromeUICertificateViewerURL[] = "chrome://view-cert/";
const char kChromeUIChromeSigninHost[] = "chrome-signin";
const char kChromeUIChromeSigninURL[] = "chrome://chrome-signin/";
@ -1127,7 +1135,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";
@@ -393,6 +395,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
@@ -397,6 +399,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
kChromeUIMobileSetupHost,
kChromeUIMultiDeviceSetupHost,
kChromeUINetworkHost,
@ -1135,8 +1143,8 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
kChromeUIOobeHost,
kChromeUIOSCreditsHost,
kChromeUIOSSettingsHost,
@@ -627,6 +630,7 @@ const char* const kChromeHostURLs[] = {
#if !defined(OS_ANDROID)
@@ -634,6 +637,7 @@ const char* const kChromeHostURLs[] = {
#if !BUILDFLAG(IS_ANDROID)
#if !BUILDFLAG(IS_CHROMEOS_ASH)
kChromeUIAppLauncherPageHost,
+ kChromeUIProxyConfigHost,

View file

@ -6,7 +6,7 @@ More specifically, add a preference that causes all new tabs and all
clicked links to launch as incognito.
Make sure initial incognito status is correctly recognized.
Enable incognito custom tabs and fix crashes for incognito/custom tab intents (credits to @uazo)
A flag for native management has been inserted
Use a native flag (credits to @uazo)
---
chrome/android/chrome_java_sources.gni | 1 +
.../java/res/xml/privacy_preferences.xml | 5 ++
@ -34,12 +34,12 @@ A flag for native management has been inserted
chrome/browser/ui/messages/android/BUILD.gn | 1 +
.../snackbar/INeedSnackbarManager.java | 27 ++++++++++
chrome/common/pref_names.cc | 4 ++
chrome/common/pref_names.h | 5 ++
chrome/common/pref_names.h | 1 +
.../browser/autocomplete_provider_client.cc | 4 ++
.../browser/autocomplete_provider_client.h | 1 +
.../omnibox/browser/base_search_provider.cc | 2 +-
components/omnibox/browser/search_provider.cc | 4 +-
31 files changed, 259 insertions(+), 39 deletions(-)
31 files changed, 255 insertions(+), 39 deletions(-)
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java
create mode 100644 chrome/browser/ui/messages/android/java/src/org/chromium/chrome/browser/ui/messages/snackbar/INeedSnackbarManager.java
@ -138,7 +138,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;
@@ -1780,8 +1781,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1788,8 +1789,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
Bundle savedInstanceState = getSavedInstanceState();
// We determine the model as soon as possible so every systems get initialized coherently.
@ -207,7 +207,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
import org.chromium.chrome.browser.compositor.bottombar.ephemeraltab.EphemeralTabCoordinator;
import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item;
import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ListItemType;
@@ -408,6 +409,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -397,6 +398,9 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
boolean hasSaveImage = false;
mShowEphemeralTabNewLabel = null;
@ -217,7 +217,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
List<Pair<Integer, ModelList>> groupedItems = new ArrayList<>();
if (mParams.isAnchor()) {
@@ -426,6 +430,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -415,6 +419,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP));
}
}
@ -225,7 +225,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
if (!mItemDelegate.isIncognito() && mItemDelegate.isIncognitoSupported()) {
linkGroup.add(createListItem(Item.OPEN_IN_INCOGNITO_TAB));
}
@@ -450,7 +455,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -439,7 +444,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
}
}
if (FirstRunStatus.getFirstRunFlowComplete()) {
@ -272,8 +272,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
@@ -49,6 +49,9 @@ import org.chromium.components.browser_ui.widget.TintedDrawable;
import org.chromium.components.embedder_support.util.UrlConstants;
@@ -49,6 +49,9 @@ import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.components.version_info.VersionInfo;
import org.chromium.device.mojom.ScreenOrientationLockType;
+import org.chromium.base.ContextUtils;
@ -282,7 +282,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
@@ -726,7 +729,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
@@ -731,7 +734,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
@Override
public boolean isIncognito() {
@ -333,19 +333,19 @@ 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
@@ -29,6 +29,11 @@ import org.chromium.chrome.browser.profiles.Profile;
@@ -29,6 +29,11 @@ import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragmen
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;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
+import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
+import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager;
+import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar;
+import org.chromium.chrome.browser.ApplicationLifetime;
import org.chromium.chrome.browser.signin.services.IdentityServicesProvider;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate;
import org.chromium.components.browser_ui.settings.SettingsLauncher;
@@ -43,7 +48,12 @@ import org.chromium.ui.text.SpanApplier;
@@ -45,7 +50,12 @@ import org.chromium.ui.text.SpanApplier;
* Fragment to keep track of the all the privacy related preferences.
*/
public class PrivacySettings
@ -359,7 +359,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment";
private static final String PREF_PRELOAD_PAGES = "preload_pages";
private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode";
@@ -100,6 +110,25 @@ public class PrivacySettings
@@ -107,6 +117,25 @@ public class PrivacySettings
(ChromeSwitchPreference) findPreference(PREF_CAN_MAKE_PAYMENT);
canMakePaymentPref.setOnPreferenceChangeListener(this);
@ -385,7 +385,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
Preference preloadPagesPreference = findPreference(PREF_PRELOAD_PAGES);
preloadPagesPreference.setSummary(
PreloadPagesSettingsFragment.getPreloadPagesSummaryString(getContext()));
@@ -125,6 +154,10 @@ public class PrivacySettings
@@ -136,6 +165,10 @@ public class PrivacySettings
if (PREF_CAN_MAKE_PAYMENT.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
@ -396,9 +396,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
} else if (PREF_HTTPS_FIRST_MODE.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.HTTPS_ONLY_MODE_ENABLED, (boolean) newValue);
@@ -201,4 +234,8 @@ public class PrivacySettings
}
return false;
@@ -220,4 +253,8 @@ public class PrivacySettings
public void setBottomSheetController(BottomSheetController controller) {
mBottomSheetController = controller;
}
+
+ public void setSnackbarManager(SnackbarManager manager) {
@ -408,7 +408,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
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
@@ -51,6 +51,7 @@ import org.chromium.chrome.browser.safety_check.SafetyCheckSettingsFragment;
@@ -55,6 +55,7 @@ import org.chromium.chrome.browser.safety_check.SafetyCheckSettingsFragment;
import org.chromium.chrome.browser.safety_check.SafetyCheckUpdatesDelegateImpl;
import org.chromium.chrome.browser.search_engines.settings.SearchEngineSettings;
import org.chromium.chrome.browser.site_settings.ChromeSiteSettingsDelegate;
@ -416,7 +416,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
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.bottomsheet.BottomSheetController;
@@ -206,6 +207,9 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
@@ -240,6 +241,9 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
.getSiteSettingsDelegate());
delegate.setSnackbarManager(mSnackbarManager);
}
@ -455,9 +455,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
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
@@ -44,6 +44,10 @@ import org.chromium.url.GURL;
import java.nio.ByteBuffer;
@@ -43,6 +43,10 @@ import org.chromium.ui.base.PageTransition;
import org.chromium.ui.base.WindowAndroid;
import org.chromium.url.GURL;
+import org.chromium.base.ContextUtils;
+import org.chromium.chrome.browser.AlwaysIncognitoLinkInterceptor;
@ -466,7 +466,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
/**
* This class creates various kinds of new tabs and adds them to the right {@link TabModel}.
*/
@@ -333,7 +337,6 @@ public class ChromeTabCreator extends TabCreator {
@@ -336,7 +340,6 @@ public class ChromeTabCreator extends TabCreator {
// TODO(crbug.com/1081924): Clean up the launches from SearchActivity/Chrome.
public Tab launchUrlFromExternalApp(
LoadUrlParams loadUrlParams, String appId, boolean forceNewTab, Intent intent) {
@ -505,7 +505,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer
import org.chromium.base.Log;
import org.chromium.base.ObserverList;
import org.chromium.base.StreamUtil;
@@ -57,6 +58,8 @@ import org.chromium.content_public.browser.LoadUrlParams;
@@ -58,6 +59,8 @@ import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.content_public.browser.UiThreadTaskTraits;
import org.chromium.url.GURL;
@ -514,7 +514,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer
import java.io.BufferedInputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -651,6 +654,13 @@ public class TabPersistentStore {
@@ -722,6 +725,13 @@ public class TabPersistentStore {
}
}
}
@ -576,7 +576,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI
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
@@ -304,6 +304,13 @@ signin::IdentityManager* ChromeAutocompleteProviderClient::GetIdentityManager()
@@ -302,6 +302,13 @@ signin::IdentityManager* ChromeAutocompleteProviderClient::GetIdentityManager()
return IdentityManagerFactory::GetForProfile(profile_);
}
@ -593,7 +593,7 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h
--- a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h
+++ b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.h
@@ -77,6 +77,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient {
@@ -78,6 +78,7 @@ class ChromeAutocompleteProviderClient : public AutocompleteProviderClient {
const override;
signin::IdentityManager* GetIdentityManager() const override;
bool IsOffTheRecord() const override;
@ -618,13 +618,13 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c
+ bool always_incognito_enabled = false;
+
+#if defined(ALWAYS_INCOGNITO_ENABLED)
+
+ PrefService* prefService = original_profile->GetPrefs();
+ if (prefService->GetBoolean(prefs::kAlwaysIncognitoEnabled)) {
+ profile = original_profile;
+ always_incognito_enabled = true;
+ }
+#endif
+
+
scoped_refptr<HostContentSettingsMap> settings_map(new HostContentSettingsMap(
profile->GetPrefs(),
@ -646,7 +646,7 @@ diff --git a/chrome/browser/content_settings/host_content_settings_map_factory.c
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
@@ -456,7 +456,7 @@ const base::Feature kCCTIncognito{"CCTIncognito",
@@ -470,7 +470,7 @@ const base::Feature kCCTIncognito{"CCTIncognito",
base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kCCTIncognitoAvailableToThirdParty{
@ -658,7 +658,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
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
@@ -1261,6 +1261,9 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -1326,6 +1326,9 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
variations::VariationsService::RegisterProfilePrefs(registry);
video_tutorials::RegisterPrefs(registry);
feed::prefs::RegisterFeedSharedProfilePrefs(registry);
@ -666,12 +666,12 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
+ registry->RegisterBooleanPref(prefs::kAlwaysIncognitoEnabled,
+ /*default_value=*/false);
feed::RegisterProfilePrefs(registry);
#else // defined(OS_ANDROID)
#else // BUILDFLAG(IS_ANDROID)
AppShortcutManager::RegisterProfilePrefs(registry);
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
@@ -981,6 +981,19 @@ Your Google account may have other forms of browsing history like searches and a
@@ -959,6 +959,19 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_HISTORY_SUMMARY_SYNCED_NO_LINK" desc="A text for the basic tab explaining browsing history for users with history sync. This version is shown when the link to MyActivity is displayed separately.">
Clears history from all synced devices.
</message>
@ -737,11 +737,11 @@ new file mode 100644
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
@@ -3284,6 +3284,10 @@ const char kShowCaretBrowsingDialog[] =
@@ -3277,6 +3277,10 @@ const char kShowCaretBrowsingDialog[] =
const char kLacrosLaunchSwitch[] = "lacros_launch_switch";
#endif
+#if defined(OS_ANDROID)
+#if BUILDFLAG(IS_ANDROID)
+const char kAlwaysIncognitoEnabled[] = "always_incognito_enabled";
+#endif
+
@ -751,24 +751,20 @@ 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
@@ -1198,6 +1198,11 @@ extern const char kLastWhatsNewVersion[];
extern const char kLensRegionSearchEnabled[];
@@ -1161,6 +1161,7 @@ extern const char kCartDiscountConsentShown[];
#if BUILDFLAG(IS_ANDROID)
extern const char kWebXRImmersiveArEnabled[];
+extern const char kAlwaysIncognitoEnabled[];
#endif
+#if defined(OS_ANDROID)
+#define ALWAYS_INCOGNITO_ENABLED
+extern const char kAlwaysIncognitoEnabled[];
+#endif
+
extern const char kPrivacyReviewShowWelcomeCard[];
extern const char kPrivacyGuideViewed[];
#if !BUILDFLAG(IS_ANDROID)
diff --git a/components/omnibox/browser/autocomplete_provider_client.cc b/components/omnibox/browser/autocomplete_provider_client.cc
--- a/components/omnibox/browser/autocomplete_provider_client.cc
+++ b/components/omnibox/browser/autocomplete_provider_client.cc
@@ -29,3 +29,7 @@ bool AutocompleteProviderClient::IsIncognitoModeAvailable() const {
bool AutocompleteProviderClient::IsSharingHubAvailable() const {
return false;
@@ -34,3 +34,7 @@ base::WeakPtr<AutocompleteProviderClient>
AutocompleteProviderClient::GetWeakPtr() {
return nullptr;
}
+
+bool AutocompleteProviderClient::IsAlwaysIncognitoEnabled() const {
@ -777,7 +773,7 @@ diff --git a/components/omnibox/browser/autocomplete_provider_client.cc b/compon
diff --git a/components/omnibox/browser/autocomplete_provider_client.h b/components/omnibox/browser/autocomplete_provider_client.h
--- a/components/omnibox/browser/autocomplete_provider_client.h
+++ b/components/omnibox/browser/autocomplete_provider_client.h
@@ -130,6 +130,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client {
@@ -131,6 +131,7 @@ class AutocompleteProviderClient : public OmniboxAction::Client {
virtual signin::IdentityManager* GetIdentityManager() const = 0;
virtual bool IsOffTheRecord() const = 0;
@ -788,7 +784,7 @@ diff --git a/components/omnibox/browser/autocomplete_provider_client.h b/compone
diff --git a/components/omnibox/browser/base_search_provider.cc b/components/omnibox/browser/base_search_provider.cc
--- a/components/omnibox/browser/base_search_provider.cc
+++ b/components/omnibox/browser/base_search_provider.cc
@@ -415,7 +415,7 @@ bool BaseSearchProvider::CanSendURL(
@@ -422,7 +422,7 @@ bool BaseSearchProvider::CanSendURL(
return false;
// Don't run if in incognito mode.

View file

@ -330,7 +330,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import android.text.TextUtils;
import android.util.Pair;
@@ -45,6 +58,32 @@ import java.util.HashMap;
@@ -46,6 +59,32 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@ -363,7 +363,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* Provides the communication channel for Android to fetch and manipulate the
* bookmark model stored in native.
@@ -733,6 +772,209 @@ public class BookmarkBridge {
@@ -737,6 +776,209 @@ public class BookmarkBridge {
mNativeBookmarkBridge, BookmarkBridge.this, id.getId(), id.getType());
}
@ -573,7 +573,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* Synchronously gets a list of bookmarks that match the specified search query.
* @param query Keyword used for searching bookmarks.
@@ -1301,6 +1543,39 @@ public class BookmarkBridge {
@@ -1319,6 +1561,39 @@ public class BookmarkBridge {
depthList.add(depth);
}
@ -613,7 +613,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
private static List<Pair<Integer, Integer>> createPairsList(int[] left, int[] right) {
List<Pair<Integer, Integer>> pairList = new ArrayList<Pair<Integer, Integer>>();
for (int i = 0; i < left.length; i++) {
@@ -1371,6 +1646,9 @@ public class BookmarkBridge {
@@ -1389,6 +1664,9 @@ public class BookmarkBridge {
int getChildCount(long nativeBookmarkBridge, BookmarkBridge caller, long id, int type);
void getChildIDs(long nativeBookmarkBridge, BookmarkBridge caller, long id, int type,
List<BookmarkId> bookmarksList);
@ -646,7 +646,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/BookmarkManager.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
@@ -33,6 +33,8 @@ import org.chromium.components.browser_ui.util.ConversionUtils;
@@ -35,6 +35,8 @@ import org.chromium.components.browser_ui.util.ConversionUtils;
import org.chromium.components.browser_ui.widget.dragreorder.DragStateDelegate;
import org.chromium.components.browser_ui.widget.selectable_list.SelectableListLayout;
import org.chromium.components.browser_ui.widget.selectable_list.SelectableListToolbar.SearchDelegate;
@ -655,7 +655,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelegate;
import org.chromium.components.favicon.LargeIconBridge;
import org.chromium.url.GURL;
@@ -55,6 +57,8 @@ public class BookmarkManager
@@ -57,6 +59,8 @@ public class BookmarkManager
private ComponentName mOpenBookmarkComponentName;
private ViewGroup mMainView;
private BookmarkModel mBookmarkModel;
@ -664,7 +664,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
private BookmarkUndoController mUndoController;
private final ObserverList<BookmarkUIObserver> mUIObservers = new ObserverList<>();
private BasicNativePage mNativePage;
@@ -341,6 +345,14 @@ public class BookmarkManager
@@ -352,6 +356,14 @@ public class BookmarkManager
mNativePage = nativePage;
}
@ -679,7 +679,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @return Current URL representing the UI state of bookmark manager. If no state has been shown
* yet in this session, on phone return last used state stored in preference; on tablet
@@ -521,6 +533,16 @@ public class BookmarkManager
@@ -532,6 +544,16 @@ public class BookmarkManager
}
}
@ -785,8 +785,8 @@ 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
@@ -1845,6 +1845,13 @@ static_library("browser") {
"window_placement/window_placement_permission_context.h",
@@ -1837,6 +1837,13 @@ static_library("browser") {
"webid/federated_identity_sharing_permission_context_factory.h",
]
+ if (is_android) {
@ -799,7 +799,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
configs += [
"//build/config/compiler:wexit_time_destructors",
"//build/config:precompiled_headers",
@@ -3003,6 +3010,8 @@ static_library("browser") {
@@ -3000,6 +3007,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",
@ -808,7 +808,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",
@@ -3636,8 +3645,6 @@ static_library("browser") {
@@ -3615,8 +3624,6 @@ static_library("browser") {
"badging/badge_manager_factory.h",
"banners/app_banner_manager_desktop.cc",
"banners/app_banner_manager_desktop.h",
@ -820,7 +820,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
@@ -7672,6 +7672,12 @@ const FeatureEntry kFeatureEntries[] = {
@@ -7691,6 +7691,12 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kRequestDesktopSiteExceptions)},
#endif
@ -1209,7 +1209,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
void SetBookmarkTitle(JNIEnv* env,
const base::android::JavaParamRef<jobject>& obj,
jlong id,
@@ -376,12 +396,16 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
@@ -381,12 +401,16 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
void DestroyJavaObject();
raw_ptr<Profile> profile_;
@ -1226,7 +1226,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
// Information about the Partner bookmarks (must check for IsLoaded()).
// This is owned by profile.
@@ -393,6 +417,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
@@ -398,6 +422,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
// Observes the profile destruction and creation.
base::ScopedObservation<Profile, ProfileObserver> profile_observation_{this};
@ -1332,7 +1332,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -5512,6 +5512,11 @@ const char kWebKioskEnableLacrosDescription[] =
@@ -5530,6 +5530,11 @@ const char kWebKioskEnableLacrosDescription[] =
"Chrome OS. When disabled, the Ash-chrome will be used";
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
@ -1347,7 +1347,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
@@ -3222,6 +3222,9 @@ extern const char kWebKioskEnableLacrosName[];
@@ -3218,6 +3218,9 @@ extern const char kWebKioskEnableLacrosName[];
extern const char kWebKioskEnableLacrosDescription[];
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
@ -1360,15 +1360,15 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -166,6 +166,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -169,6 +169,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kAppToWebAttribution,
&kBackgroundThreadPool,
&kBookmarkBottomSheet,
+ &kBookmarksExportUseSaf,
&kCastDeviceFilter,
&kCloseAllTabsModalDialog,
&kCloseTabSuggestions,
&kCriticalPersistedTabData,
@@ -834,6 +835,10 @@ const base::Feature kWebApkInstallCompleteNotification{
@@ -860,6 +861,10 @@ const base::Feature kWebApkInstallCompleteNotification{
const base::Feature kWebApkTrampolineOnInitialIntent{
"WebApkTrampolineOnInitialIntent", base::FEATURE_ENABLED_BY_DEFAULT};
@ -1382,7 +1382,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
@@ -153,6 +153,7 @@ extern const base::Feature kToolbarMicIphAndroid;
@@ -159,6 +159,7 @@ extern const base::Feature kToolbarMicIphAndroid;
extern const base::Feature kToolbarUseHardwareBitmapDraw;
extern const base::Feature kTrustedWebActivityLocationDelegation;
extern const base::Feature kTrustedWebActivityNewDisclosure;
@ -1408,7 +1408,7 @@ diff --git a/chrome/browser/importer/profile_writer.cc b/chrome/browser/importer
HistoryServiceFactory::GetForProfile(profile_,
ServiceAccessType::EXPLICIT_ACCESS)
->AddPagesWithDetails(page, visit_source);
+#if !defined(OS_ANDROID)
+#if !BUILDFLAG(IS_ANDROID)
// Measure the size of the history page after Auto Import on first run.
if (first_run::IsChromeFirstRun() &&
visit_source == history::SOURCE_IE_IMPORTED) {
@ -1462,7 +1462,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
@@ -122,6 +122,8 @@ public final class ChromePreferenceKeys {
@@ -101,6 +101,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";
@ -1471,8 +1471,8 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
/**
* Whether Chrome is set as the default browser.
@@ -1049,6 +1051,7 @@ public final class ChromePreferenceKeys {
AUTOFILL_ASSISTANT_PROACTIVE_HELP,
@@ -1064,6 +1066,7 @@ public final class ChromePreferenceKeys {
ATTRIBUTION_PROVIDER_LAST_BROWSER_START,
APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE,
APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO,
+ BOOKMARKS_LAST_EXPORT_URI,
@ -1510,7 +1510,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
@@ -413,6 +413,9 @@ static_library("common") {
@@ -382,6 +382,9 @@ static_library("common") {
sources += [
"media/chrome_media_drm_bridge_client.cc",
"media/chrome_media_drm_bridge_client.h",
@ -1532,7 +1532,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",
@@ -187,6 +185,11 @@ static_library("utility") {
@@ -189,6 +187,11 @@ static_library("utility") {
}
}
@ -1551,7 +1551,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im
#include "base/strings/utf_string_conversions.h"
#include "base/time/time.h"
#include "chrome/common/importer/imported_bookmark_entry.h"
+#if !defined(OS_ANDROID)
+#if !BUILDFLAG(IS_ANDROID)
#include "chrome/utility/importer/favicon_reencode.h"
+#endif
#include "components/search_engines/search_terms_data.h"
@ -1561,7 +1561,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im
return true;
}
+#if !defined(OS_ANDROID)
+#if !BUILDFLAG(IS_ANDROID)
// Given the URL of a page and a favicon data URL, adds an appropriate record
// to the given favicon usage vector.
void DataURLToFaviconUsage(const GURL& link_url,
@ -1617,7 +1617,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/im
}
bookmarks->push_back(entry);
+#if !defined(OS_ANDROID)
+#if !BUILDFLAG(IS_ANDROID)
// Save the favicon. DataURLToFaviconUsage will handle the case where
// there is no favicon.
if (favicons)

View file

@ -123,9 +123,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco
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
@@ -94,6 +94,9 @@ public class PrivacySettings
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
private IncognitoLockSettings mIncognitoLockSettings;
@@ -101,6 +101,9 @@ public class PrivacySettings
private ViewGroup mDialogContainer;
private BottomSheetController mBottomSheetController;
+ private ChromeSwitchPreference allowCustomTabIntentsPref;
+ private ChromeSwitchPreference openExternalLinksPref;
@ -133,7 +133,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
PrivacyPreferencesManagerImpl privacyPrefManager =
@@ -203,6 +206,9 @@ public class PrivacySettings
@@ -215,6 +218,9 @@ public class PrivacySettings
updatePreferences();
}
@ -143,7 +143,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
@@ -220,6 +226,14 @@ public class PrivacySettings
@@ -232,6 +238,14 @@ public class PrivacySettings
SharedPreferences.Editor sharedPreferenceEditor = ContextUtils.getAppSharedPreferences().edit();
sharedPreferenceEditor.putBoolean(PREF_FORCE_NO_JIT, (boolean) newValue);
sharedPreferenceEditor.apply();
@ -156,9 +156,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+ sharedPreferencesEditor.putBoolean(PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, (boolean)newValue);
+ sharedPreferencesEditor.apply();
} else if (PREF_AUTOFILL_ASSISTANT.equals(key)) {
mSharedPreferencesManager.writeBoolean(
ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED, (boolean) newValue);
@@ -255,6 +269,16 @@ public class PrivacySettings
AutofillAssistantPreferencesUtil.setAssistantEnabledPreference( (boolean) newValue);
} else if (PREF_ALWAYS_INCOGNITO.equals(key)) {
@@ -268,6 +282,16 @@ public class PrivacySettings
canMakePaymentPref.setChecked(prefService.getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
}
@ -194,7 +194,7 @@ diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAsso
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
@@ -4780,6 +4780,21 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4798,6 +4798,21 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_NEAR_OOM_REDUCTION_DECLINE" desc="The text of the button letting the user decline the browser's intervention, so that the page can be reloaded.">
Show original
</message>

View file

@ -57,7 +57,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ApplicationLife
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
@@ -207,6 +207,8 @@ import java.util.HashSet;
@@ -209,6 +209,8 @@ import java.util.HashSet;
import java.util.List;
import java.util.Locale;
@ -66,15 +66,15 @@ 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.
@@ -2042,6 +2044,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2050,6 +2052,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
} else if (id == R.id.close_tab) {
getCurrentTabModel().closeTab(currentTab, true, false, true);
RecordUserAction.record("MobileTabClosed");
+ } else if (id == R.id.exit_id) {
+ ApplicationLifetime.terminate(false);
} else if (id == R.id.close_all_tabs_menu_id) {
// Close both incognito and normal tabs
getTabModelSelector().closeAllTabs();
if (ChromeFeatureList.isEnabled(ChromeFeatureList.CLOSE_ALL_TABS_MODAL_DIALOG)) {
CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(),
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
@ -117,7 +117,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
@@ -3338,6 +3338,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3365,6 +3365,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_AUTO_DARK_WEB_CONTENTS" desc="Menu item in Chrome's overflow/options menu. When Chrome's browser UI is set to dark theme and this option is checked, sites will have a dark theme automatically applied as well. [CHAR_LIMIT=24]">
Dark theme
</message>

View file

@ -5,20 +5,20 @@ Subject: Add flag for omnibox autocomplete filtering
Adds a flag that restricts whether search history, clipboard, bookmarks
and internal chrome:// pages will be used for the autocomplete results.
---
chrome/browser/about_flags.cc | 21 +++++++++++++++++++
chrome/browser/about_flags.cc | 20 +++++++++++++++++++
.../browser/autocomplete_controller.cc | 11 ++++++++++
.../omnibox/browser/history_url_provider.cc | 3 +++
components/omnibox/browser/search_provider.cc | 4 ++++
components/url_formatter/url_fixer.cc | 4 ++++
5 files changed, 43 insertions(+)
5 files changed, 42 insertions(+)
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
@@ -447,6 +447,22 @@ const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = {
base::size(kReaderModeOfferInSettings), nullptr}};
#endif // OS_ANDROID
@@ -450,6 +450,22 @@ const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = {
#endif // BUILDFLAG(IS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
+const FeatureEntry::Choice kOmniboxAutocompleteFiltering[] = {
+ {flags_ui::kGenericExperimentChoiceDefault, "", ""},
+ {"Search suggestions only",
@ -35,21 +35,20 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
+ "search-bookmarks-chrome"},
+};
+
#if defined(OS_ANDROID)
const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNone[] = {
{"mode", "always-none"}};
@@ -4925,6 +4941,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(chrome::android::kReaderModeInCCT)},
#endif // !defined(OS_ANDROID)
const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNewTab[] = {
@@ -2810,6 +2826,10 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-container-queries", flag_descriptions::kCSSContainerQueriesName,
flag_descriptions::kCSSContainerQueriesDescription, kOsAll,
FEATURE_VALUE_TYPE(blink::features::kCSSContainerQueries)},
+ {"omnibox-autocomplete-filtering",
+ "Omnibox Autocomplete Filtering",
+ "Restrict omnibox autocomplete results to a combination of search suggestions (if enabled), bookmarks, and internal chrome pages. ungoogled-chromium flag.",
+ "Restrict omnibox autocomplete results to a combination of search suggestions (if enabled), bookmarks, and internal chrome pages.",
+ kOsAll, MULTI_VALUE_TYPE(kOmniboxAutocompleteFiltering)},
+
#if defined(OS_WIN) || defined(OS_MAC) || defined(OS_LINUX) || \
defined(OS_CHROMEOS) || defined(OS_FUCHSIA)
{"webui-feedback", flag_descriptions::kWebuiFeedbackName,
#if BUILDFLAG(IS_ANDROID)
{"allow-user-certificates",
flag_descriptions::kAllowUserCertificatesName,
diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/omnibox/browser/autocomplete_controller.cc
--- a/components/omnibox/browser/autocomplete_controller.cc
+++ b/components/omnibox/browser/autocomplete_controller.cc
@ -81,7 +80,7 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/
diff --git a/components/omnibox/browser/history_url_provider.cc b/components/omnibox/browser/history_url_provider.cc
--- a/components/omnibox/browser/history_url_provider.cc
+++ b/components/omnibox/browser/history_url_provider.cc
@@ -552,6 +552,9 @@ void HistoryURLProvider::Start(const AutocompleteInput& input,
@@ -472,6 +472,9 @@ void HistoryURLProvider::Start(const AutocompleteInput& input,
if (fixed_up_input.type() != metrics::OmniboxInputType::QUERY)
matches_.push_back(what_you_typed_match);

View file

@ -1,97 +0,0 @@
From: Wengling Chen <feiyu2817@gmail.com>
Date: Mon, 1 Feb 2021 19:18:55 +0200
Subject: Add flag for save-data-header
---
chrome/browser/about_flags.cc | 3 +++
chrome/browser/flag_descriptions.cc | 4 ++++
chrome/browser/flag_descriptions.h | 3 +++
content/browser/loader/browser_initiated_resource_request.cc | 5 +++--
services/network/public/cpp/features.cc | 4 ++++
services/network/public/cpp/features.h | 2 ++
6 files changed, 19 insertions(+), 2 deletions(-)
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
@@ -4660,6 +4660,9 @@ const FeatureEntry kFeatureEntries[] = {
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
#if defined(OS_ANDROID)
+ {"enable-save-data-header", flag_descriptions::kEnableSaveDataHeaderName,
+ flag_descriptions::kEnableSaveDataHeaderDescription, kOsAndroid,
+ FEATURE_VALUE_TYPE(network::features::kEnableSaveDataHeader)},
{"enable-command-line-on-non-rooted-devices",
flag_descriptions::kEnableCommandLineOnNonRootedName,
flag_descriptions::kEnableCommandLineOnNoRootedDescription, kOsAndroid,
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
@@ -1093,6 +1093,10 @@ const char kDisableKeepaliveFetchDescription[] =
"Disable fetch with keepalive set "
"(https://fetch.spec.whatwg.org/#request-keepalive-flag).";
+const char kEnableSaveDataHeaderName[] = "Enable save-data header";
+const char kEnableSaveDataHeaderDescription[] =
+ "Enable save-data header without enabling Data Saver.";
+
const char kExperimentalAccessibilityLanguageDetectionName[] =
"Experimental accessibility language detection";
const char kExperimentalAccessibilityLanguageDetectionDescription[] =
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
@@ -596,6 +596,9 @@ extern const char kDiagnosticsAppNavigationDescription[];
extern const char kDisableKeepaliveFetchName[];
extern const char kDisableKeepaliveFetchDescription[];
+extern const char kEnableSaveDataHeaderName[];
+extern const char kEnableSaveDataHeaderDescription[];
+
extern const char kMemlogName[];
extern const char kMemlogDescription[];
extern const char kMemlogModeMinimal[];
diff --git a/content/browser/loader/browser_initiated_resource_request.cc b/content/browser/loader/browser_initiated_resource_request.cc
--- a/content/browser/loader/browser_initiated_resource_request.cc
+++ b/content/browser/loader/browser_initiated_resource_request.cc
@@ -40,9 +40,10 @@ void UpdateAdditionalHeadersForBrowserInitiatedRequest(
// Set the Save-Data header if appropriate.
// https://tools.ietf.org/html/draft-grigorik-http-client-hints-03#section-7
- if (GetContentClient()->browser()->IsDataSaverEnabled(browser_context) &&
+ if ((GetContentClient()->browser()->IsDataSaverEnabled(browser_context) &&
!base::GetFieldTrialParamByFeatureAsBool(features::kDataSaverHoldback,
- "holdback_web", false)) {
+ "holdback_web", false)) ||
+ base::FeatureList::IsEnabled(network::features::kEnableSaveDataHeader)) {
if (should_update_existing_headers) {
headers->RemoveHeader("Save-Data");
}
diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc
--- a/services/network/public/cpp/features.cc
+++ b/services/network/public/cpp/features.cc
@@ -134,6 +134,10 @@ const base::FeatureParam<std::string>
"DisabledProviders", ""};
// Disable special treatment on requests with keepalive set (see
+// Enable save-data header seprately, without enabled data reduction service
+const base::Feature kEnableSaveDataHeader{"EnableSaveDataHeader",
+ base::FEATURE_DISABLED_BY_DEFAULT};
+
// https://fetch.spec.whatwg.org/#request-keepalive-flag). This is introduced
// for investigation on the memory usage, and should not be enabled widely.
const base::Feature kDisableKeepaliveFetch{"DisableKeepaliveFetch",
diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h
--- a/services/network/public/cpp/features.h
+++ b/services/network/public/cpp/features.h
@@ -52,6 +52,8 @@ extern const base::FeatureParam<std::string>
COMPONENT_EXPORT(NETWORK_CPP)
extern const base::Feature kDisableKeepaliveFetch;
+extern const base::Feature kEnableSaveDataHeader;
+COMPONENT_EXPORT(NETWORK_CPP)
COMPONENT_EXPORT(NETWORK_CPP)
extern const base::Feature kTrustTokens;
--
2.25.1

View file

@ -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
@@ -817,6 +817,11 @@ const FeatureEntry::Choice kForceEffectiveConnectionTypeChoices[] = {
@@ -842,6 +842,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 ==
@@ -3923,6 +3928,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -3960,6 +3965,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
@@ -1588,6 +1588,10 @@ const char kLogJsConsoleMessagesDescription[] =
@@ -1564,6 +1564,10 @@ const char kLogJsConsoleMessagesDescription[] =
"Enable logging JS console messages in system logs, please note that they "
"may contain PII.";
@ -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
@@ -919,6 +919,9 @@ extern const char kLensCameraAssistedSearchDescription[];
@@ -899,6 +899,9 @@ extern const char kLensCameraAssistedSearchDescription[];
extern const char kLogJsConsoleMessagesName[];
extern const char kLogJsConsoleMessagesDescription[];

View file

@ -7,13 +7,13 @@ Disable it by default on Android as it is everywhere else
chrome/browser/about_flags.cc | 4 ++++
chrome/browser/flag_descriptions.cc | 5 +++++
chrome/browser/flag_descriptions.h | 3 +++
media/base/media_switches.cc | 6 +-----
4 files changed, 13 insertions(+), 5 deletions(-)
media/base/media_switches.cc | 4 ----
4 files changed, 12 insertions(+), 4 deletions(-)
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
@@ -2714,6 +2714,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2735,6 +2735,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
@@ -1182,6 +1182,11 @@ const char kEnablePenetratingImageSelectionDescription[] =
@@ -1170,6 +1170,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
@@ -670,6 +670,9 @@ extern const char kEnablePortalsDescription[];
@@ -656,6 +656,9 @@ extern const char kEnablePortalsDescription[];
extern const char kEnablePortalsCrossOriginName[];
extern const char kEnablePortalsCrossOriginDescription[];
@ -59,12 +59,11 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
// when in background.
const base::Feature kResumeBackgroundVideo {
"resume-background-video",
-#if defined(OS_ANDROID)
-#if BUILDFLAG(IS_ANDROID)
- base::FEATURE_ENABLED_BY_DEFAULT
-#else
- base::FEATURE_DISABLED_BY_DEFAULT
base::FEATURE_DISABLED_BY_DEFAULT
-#endif
+ base::FEATURE_DISABLED_BY_DEFAULT
};
// Experimental: Try to avoid destroying the media player when transferring a

View file

@ -3,7 +3,7 @@ Date: Sun, 18 Nov 2018 13:06:49 +0100
Subject: Add flag to disable IPv6 probes
---
chrome/browser/about_flags.cc | 5 +++++
chrome/browser/about_flags.cc | 4 ++++
chrome/browser/flag_descriptions.cc | 4 ++++
chrome/browser/flag_descriptions.h | 3 +++
components/subresource_filter/tools/BUILD.gn | 6 ++++++
@ -11,27 +11,26 @@ Subject: Add flag to disable IPv6 probes
net/dns/host_resolver_manager.cc | 9 ++++++++-
services/network/public/cpp/features.cc | 4 ++++
services/network/public/cpp/features.h | 2 ++
8 files changed, 34 insertions(+), 2 deletions(-)
8 files changed, 33 insertions(+), 2 deletions(-)
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
@@ -4904,6 +4904,11 @@ const FeatureEntry kFeatureEntries[] = {
#endif // defined(OS_WIN) || defined(OS_MAC) || defined(OS_LINUX) ||
// defined(OS_CHROMEOS) || defined(OS_FUCHSIA)
@@ -4911,6 +4911,10 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-reader-mode-in-cct", flag_descriptions::kReaderModeInCCTName,
flag_descriptions::kReaderModeInCCTDescription, kOsAndroid,
FEATURE_VALUE_TYPE(chrome::android::kReaderModeInCCT)},
+ {"ipv6-probing",
+ flag_descriptions::kIPv6ProbingName,
+ flag_descriptions::kIPv6ProbingDescription, kOsAll,
+ FEATURE_VALUE_TYPE(network::features::kIPv6Probing)},
+
#if !defined(OS_ANDROID)
{"ntp-cache-one-google-bar", flag_descriptions::kNtpCacheOneGoogleBarName,
flag_descriptions::kNtpCacheOneGoogleBarDescription, kOsDesktop,
#endif // BUILDFLAG(IS_ANDROID)
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -3053,6 +3053,10 @@ const char kContextualSearchRankerQueryDescription[] =
@@ -3010,6 +3010,10 @@ const char kContextualSearchRankerQueryDescription[] =
const char kContextualSearchSecondTapName[] =
"Contextual Search second tap triggering";
@ -45,7 +44,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
@@ -733,6 +733,9 @@ extern const char kEnableWasmLazyCompilationName[];
@@ -716,6 +716,9 @@ extern const char kEnableWasmLazyCompilationName[];
extern const char kEnableWasmLazyCompilationDescription[];
extern const char kEnableWasmTieringName[];
@ -101,7 +100,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
@@ -95,6 +95,7 @@
@@ -98,6 +98,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 +108,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"
@@ -3726,8 +3727,14 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) {
@@ -3918,8 +3919,14 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) {
if (last_ipv6_probe_time_.is_null() ||
(tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() >
kIPv6ProbePeriodMs) {

View file

@ -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
@@ -2655,6 +2655,9 @@ const FeatureEntry::FeatureVariation kSnoopingProtectionVariations[] = {
@@ -2686,6 +2686,9 @@ const FeatureEntry::FeatureVariation kUseMultipleOverlaysVariations[] = {
// 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
@@ -675,6 +675,10 @@ const char kDocumentTransitionSlowdownFactorName[] =
@@ -680,6 +680,10 @@ const char kDocumentTransitionSlowdownFactorName[] =
const char kDocumentTransitionSlowdownFactorDescription[] =
"Slows down animations triggered by documentTransition JavaScript API for "
"debugging.";
@ -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
@@ -380,6 +380,9 @@ extern const char kForceColorProfileSRGB[];
@@ -375,6 +375,9 @@ extern const char kForceColorProfileSRGB[];
extern const char kForceColorProfileP3[];
extern const char kForceColorProfileColorSpin[];
extern const char kForceColorProfileSCRGBLinear[];

View file

@ -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
@@ -2709,6 +2709,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2740,6 +2740,9 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kWebrtcCaptureMultiChannelApmName,
flag_descriptions::kWebrtcCaptureMultiChannelApmDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kWebRtcEnableCaptureMultiChannelApm)},
@ -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
@@ -3350,6 +3350,12 @@ const char kPhotoPickerVideoSupportName[] = "Photo Picker Video Support";
@@ -3308,6 +3308,12 @@ const char kPhotoPickerVideoSupportName[] = "Photo Picker Video Support";
const char kPhotoPickerVideoSupportDescription[] =
"Enables video files to be shown in the Photo Picker dialog";
@ -40,7 +40,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
@@ -1946,6 +1946,9 @@ extern const char kQueryTilesNTPDescription[];
@@ -1910,6 +1910,9 @@ extern const char kQueryTilesNTPDescription[];
extern const char kQueryTilesOmniboxName[];
extern const char kQueryTilesOmniboxDescription[];
extern const char kQueryTilesSingleTierName[];

View file

@ -5,7 +5,7 @@ Subject: Add flag to disable vibration
---
chrome/browser/about_flags.cc | 4 ++++
chrome/browser/flag_descriptions.cc | 3 +++
chrome/browser/flag_descriptions.h | 3 +++
chrome/browser/flag_descriptions.h | 2 ++
content/child/runtime_features.cc | 1 +
content/public/common/content_features.cc | 4 ++++
content/public/common/content_features.h | 2 ++
@ -13,12 +13,12 @@ Subject: Add flag to disable vibration
.../blink/renderer/modules/vibration/vibration_controller.cc | 3 +++
.../blink/renderer/platform/exported/web_runtime_features.cc | 4 ++++
.../blink/renderer/platform/runtime_enabled_features.json5 | 4 ++++
10 files changed, 29 insertions(+)
10 files changed, 28 insertions(+)
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
@@ -6260,6 +6260,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -6231,6 +6231,10 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kNewMacNotificationAPI)},
#endif
@ -39,33 +39,32 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
+const char kEnableVibrationName[] = "Vibration";
+const char kEnableVibrationDescription[] = "Enable vibration API; an user gesture will still be needed.";
+
#if defined(OS_CHROMEOS)
#if BUILDFLAG(IS_CHROMEOS)
const char kDeprecateLowUsageCodecsName[] = "Deprecates low usage media codecs";
const char kDeprecateLowUsageCodecsDescription[] =
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
@@ -3091,6 +3091,9 @@ extern const char kDefaultCalculatorWebAppName[];
extern const char kDefaultCalculatorWebAppDescription[];
#endif // BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS)
@@ -3226,6 +3226,8 @@ extern const char kWebUITabStripTabDragIntegrationName[];
extern const char kWebUITabStripTabDragIntegrationDescription[];
#endif // BUILDFLAG(ENABLE_WEBUI_TAB_STRIP) && BUILDFLAG(IS_CHROMEOS_ASH)
+extern const char kEnableVibrationName[];
+extern const char kEnableVibrationDescription[];
+
#if defined(OS_CHROMEOS)
extern const char kDeprecateLowUsageCodecsName[];
extern const char kDeprecateLowUsageCodecsDescription[];
#if defined(TOOLKIT_VIEWS) || BUILDFLAG(IS_ANDROID)
extern const char kAutofillCreditCardUploadName[];
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(
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
if (command_line.HasSwitch(switches::kDisableMediaSessionAPI))
WebRuntimeFeatures::EnableMediaSession(false);
+ WebRuntimeFeatures::EnableVibration(base::FeatureList::IsEnabled(features::kVibration));
#endif
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
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
@ -83,15 +82,15 @@ 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
@@ -299,6 +299,8 @@ extern const char kBigLittleSchedulingGpuMainBigParam[];
#endif // defined(OS_ANDROID)
@@ -299,6 +299,8 @@ extern const char kBigLittleSchedulingNetworkMainBigParam[];
extern const char kBigLittleSchedulingGpuMainBigParam[];
#endif // BUILDFLAG(IS_ANDROID)
+CONTENT_EXPORT extern const base::Feature kVibration;
+
#if defined(OS_MAC)
#if BUILDFLAG(IS_MAC)
CONTENT_EXPORT extern const base::Feature kDeviceMonitorMac;
CONTENT_EXPORT extern const base::Feature kIOSurfaceCapturer;
diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_party/blink/public/platform/web_runtime_features.h
--- a/third_party/blink/public/platform/web_runtime_features.h
+++ b/third_party/blink/public/platform/web_runtime_features.h
@ -140,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
@@ -1622,6 +1622,10 @@
@@ -1608,6 +1608,10 @@
name: "OrientationEvent",
status: {"Android": "stable"},
},

View file

@ -39,7 +39,7 @@ See also: https://github.com/bromite/bromite/pull/1427
.../offline_page_model_factory.h | 1 +
.../offline_pages/recent_tab_helper.cc | 12 +
.../request_coordinator_factory.h | 2 +
chrome/browser/prefs/browser_prefs.cc | 3 +
chrome/browser/prefs/browser_prefs.cc | 2 +
.../browser/ui/android/native_page/BUILD.gn | 2 +
.../browser/ui/native_page/NativePage.java | 12 +-
.../ui/native_page/NativePageTest.java | 26 ++
@ -47,7 +47,7 @@ See also: https://github.com/bromite/bromite/pull/1427
chrome/common/pref_names.cc | 2 +
chrome/common/pref_names.h | 4 +
chrome/test/BUILD.gn | 5 +
37 files changed, 1048 insertions(+), 41 deletions(-)
37 files changed, 1047 insertions(+), 41 deletions(-)
create mode 100644 chrome/android/javatests/src/org/chromium/chrome/browser/history/Bromite_HistoryManagerTest.java
create mode 100644 chrome/android/javatests/src/org/chromium/chrome/browser/privacy/settings/Bromite_PrivacySettingsFragmentTest_HistoryInAlwaysIncognito.java
create mode 100644 chrome/android/junit/src/org/chromium/chrome/browser/app/appmenu/Bromite_AppMenuPropertiesDelegateUnitTest.java
@ -57,7 +57,7 @@ See also: https://github.com/bromite/bromite/pull/1427
diff --git a/chrome/android/chrome_junit_test_java_sources.gni b/chrome/android/chrome_junit_test_java_sources.gni
--- a/chrome/android/chrome_junit_test_java_sources.gni
+++ b/chrome/android/chrome_junit_test_java_sources.gni
@@ -231,3 +231,7 @@ chrome_junit_test_java_sources = [
@@ -230,3 +230,7 @@ chrome_junit_test_java_sources = [
"junit/src/org/chromium/chrome/browser/webapps/WebappLauncherActivityTest.java",
"junit/src/org/chromium/chrome/browser/webapps/WebappRegistryTest.java",
]
@ -69,7 +69,7 @@ diff --git a/chrome/android/chrome_junit_test_java_sources.gni b/chrome/android/
diff --git a/chrome/android/chrome_test_java_sources.gni b/chrome/android/chrome_test_java_sources.gni
--- a/chrome/android/chrome_test_java_sources.gni
+++ b/chrome/android/chrome_test_java_sources.gni
@@ -661,3 +661,9 @@ chrome_test_java_sources = [
@@ -658,3 +658,9 @@ chrome_test_java_sources = [
if (enable_feed_v2) {
chrome_test_java_sources += [ "javatests/src/org/chromium/chrome/browser/ntp/NewTabPageColorWithFeedV2Test.java" ]
}
@ -82,9 +82,9 @@ diff --git a/chrome/android/chrome_test_java_sources.gni b/chrome/android/chrome
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
@@ -51,6 +51,11 @@
android:title="@string/close_tabs_on_exit_title"
android:summary="@string/close_tabs_on_exit_summary"
@@ -42,6 +42,11 @@
android:title="@string/always_incognito_title"
android:summary="@string/always_incognito_summary"
android:defaultValue="false" />
+ <org.chromium.components.browser_ui.settings.ChromeSwitchPreference
+ android:key="incognito_history_enabled"
@ -122,7 +122,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
/**
* Construct a new {@link AppMenuPropertiesDelegateImpl}.
* @param context The activity context.
@@ -589,7 +600,15 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -588,7 +599,15 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
if (item.getItemId() == R.id.recent_tabs_menu_id) {
@ -139,7 +139,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
}
if (item.getItemId() == R.id.menu_group_tabs) {
item.setVisible(isMenuGroupTabsVisible);
@@ -826,7 +845,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -825,7 +844,9 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
// is not persisted when adding to the homescreen.
// * If creating shortcuts it not supported by the current home screen.
return WebappsUtils.isAddToHomeIntentSupported() && !isChromeScheme && !isFileScheme
@ -341,17 +341,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsM
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
@@ -18,6 +18,7 @@ import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat;
@@ -16,6 +16,7 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat;
import org.chromium.base.ContextUtils;
import org.chromium.base.BuildInfo;
+import org.chromium.base.Log;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -151,6 +152,11 @@ public class PrivacySettings
Preference secureDnsPref = findPreference(PREF_SECURE_DNS);
secureDnsPref.setVisible(SecureDnsSettings.isUiEnabled());
@@ -156,6 +157,11 @@ public class PrivacySettings
phoneAsASecurityKey.setVisible(
ChromeFeatureList.isEnabled(ChromeFeatureList.WEB_AUTH_PHONE_SUPPORT));
+ ChromeSwitchPreference historyInIncognitoPref =
+ (ChromeSwitchPreference) findPreference(PREF_INCOGNITO_TAB_HISTORY_ENABLED);
@ -361,7 +361,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
updatePreferences();
}
@@ -171,10 +177,15 @@ public class PrivacySettings
@@ -172,10 +178,15 @@ public class PrivacySettings
} else if (PREF_HTTPS_FIRST_MODE.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.HTTPS_ONLY_MODE_ENABLED, (boolean) newValue);
@ -377,9 +377,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public void onResume() {
super.onResume();
@@ -205,6 +216,13 @@ public class PrivacySettings
closeTabsOnExitPref.setOnPreferenceChangeListener(this);
closeTabsOnExitPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
@@ -201,6 +212,13 @@ public class PrivacySettings
: R.string.text_off);
}
+ ChromeSwitchPreference historyInIncognitoPref =
+ (ChromeSwitchPreference) findPreference(PREF_INCOGNITO_TAB_HISTORY_ENABLED);
@ -432,7 +432,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/HistoricalT
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
@@ -152,7 +152,10 @@ public class TabPersistentStore {
@@ -189,7 +189,10 @@ public class TabPersistentStore {
@Override
public void didCloseTab(Tab tab) {
PersistedTabData.onTabClose(tab);
@ -1322,7 +1322,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
+
+#if defined(OS_ANDROID)
+#if BUILDFLAG(IS_ANDROID)
+ if(profile->GetOriginalProfile()->GetPrefs()->GetBoolean(prefs::kIncognitoTabHistoryEnabled)) {
+ return HistoryServiceFactory::GetForProfile(profile, ServiceAccessType::IMPLICIT_ACCESS);
+ }
@ -1390,7 +1390,7 @@ diff --git a/chrome/browser/history/history_tab_helper_unittest.cc b/chrome/brow
+
namespace {
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
@@ -49,6 +52,25 @@ class TestFeedApi : public feed::StubFeedApi {
};
#endif
@ -1611,22 +1611,21 @@ diff --git a/chrome/browser/offline_pages/request_coordinator_factory.h b/chrome
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
@@ -214,6 +214,8 @@
@@ -215,6 +215,7 @@
#endif
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
+#include "chrome/browser/history/history_tab_helper.h"
+
#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"
@@ -1268,6 +1270,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -1329,6 +1330,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
// register incognito pref
registry->RegisterBooleanPref(prefs::kAlwaysIncognitoEnabled,
/*default_value=*/false);
+ HistoryTabHelper::RegisterProfilePrefs(registry);
feed::RegisterProfilePrefs(registry);
#else // defined(OS_ANDROID)
#else // BUILDFLAG(IS_ANDROID)
AppShortcutManager::RegisterProfilePrefs(registry);
diff --git a/chrome/browser/ui/android/native_page/BUILD.gn b/chrome/browser/ui/android/native_page/BUILD.gn
--- a/chrome/browser/ui/android/native_page/BUILD.gn
@ -1733,7 +1732,7 @@ diff --git a/chrome/browser/ui/android/native_page/java/src/org/chromium/chrome/
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
@@ -1012,6 +1012,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -972,6 +972,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_UI_RELAUNCH_NOTICE" desc="Summary for always incognito mode">
Your changes will take effect the next time you relaunch Bromite.
</message>
@ -1749,9 +1748,9 @@ 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
@@ -3289,6 +3289,8 @@ const char kLacrosLaunchSwitch[] = "lacros_launch_switch";
@@ -3279,6 +3279,8 @@ const char kLacrosLaunchSwitch[] = "lacros_launch_switch";
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
const char kAlwaysIncognitoEnabled[] = "always_incognito_enabled";
+const char kIncognitoTabHistoryEnabled[] =
+ "incognito_tab_history_enabled";
@ -1761,21 +1760,21 @@ 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
@@ -1209,6 +1209,10 @@ extern const char kPrivacyGuideViewed[];
@@ -1202,6 +1202,10 @@ extern const char kCorsNonWildcardRequestHeadersSupport[];
extern const char kOriginAgentClusterDefaultEnabled[];
extern const char kCorsNonWildcardRequestHeadersSupport[];
+#if defined(OS_ANDROID)
extern const char kForceMajorVersionToMinorPositionInUserAgent[];
+
+#if BUILDFLAG(IS_ANDROID)
+extern const char kIncognitoTabHistoryEnabled[];
+#endif
+
} // namespace prefs
#endif // CHROME_COMMON_PREF_NAMES_H_
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -4880,6 +4880,11 @@ test("unit_tests") {
@@ -4899,6 +4899,11 @@ test("unit_tests") {
]
}

View file

@ -62,16 +62,16 @@ 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;
@@ -2054,6 +2056,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
// Close both incognito and normal tabs
getTabModelSelector().closeAllTabs();
@@ -2067,6 +2069,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
getTabModelSelector().closeAllTabs();
}
RecordUserAction.record("MobileMenuCloseAllTabs");
+ } else if (id == R.id.bookmark_all_tabs_menu_id) {
+ bookmarkAllTabs();
} else if (id == R.id.close_all_incognito_tabs_menu_id) {
// Close only incognito tabs
getTabModelSelector().getModel(true).closeAllTabs();
@@ -2103,6 +2107,28 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
if (ChromeFeatureList.isEnabled(ChromeFeatureList.CLOSE_ALL_TABS_MODAL_DIALOG)) {
CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(),
@@ -2123,6 +2127,28 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
mTabModalHandler.onOmniboxFocusChanged(hasFocus);
}
@ -103,7 +103,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
@@ -28,6 +28,7 @@ import com.google.common.primitives.UnsignedLongs;
@@ -29,6 +29,7 @@ import com.google.common.primitives.UnsignedLongs;
import com.google.protobuf.InvalidProtocolBufferException;
import org.chromium.base.ContextUtils;
@ -111,7 +111,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import org.chromium.base.ObserverList;
import org.chromium.base.ThreadUtils;
import org.chromium.base.annotations.CalledByNative;
@@ -45,6 +46,10 @@ import org.chromium.chrome.browser.subscriptions.CommerceSubscription;
@@ -46,6 +47,10 @@ import org.chromium.chrome.browser.subscriptions.CommerceSubscription;
import org.chromium.chrome.browser.subscriptions.CommerceSubscriptionsServiceFactory;
import org.chromium.chrome.browser.subscriptions.SubscriptionsManager;
import org.chromium.chrome.browser.tab.Tab;
@ -122,7 +122,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import org.chromium.components.bookmarks.BookmarkId;
import org.chromium.components.bookmarks.BookmarkType;
import org.chromium.components.commerce.PriceTracking.ProductPrice;
@@ -89,6 +94,7 @@ import java.io.File;
@@ -90,6 +95,7 @@ import java.io.File;
* bookmark model stored in native.
*/
public class BookmarkBridge {
@ -130,7 +130,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
private final Profile mProfile;
private boolean mIsDestroyed;
private boolean mIsDoingExtensiveChanges;
@@ -629,6 +635,16 @@ public class BookmarkBridge {
@@ -633,6 +639,16 @@ public class BookmarkBridge {
mNativeBookmarkBridge, BookmarkBridge.this);
}
@ -147,7 +147,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @return Id representing the special "other" folder from bookmark model.
*/
@@ -1340,6 +1356,49 @@ public class BookmarkBridge {
@@ -1358,6 +1374,49 @@ public class BookmarkBridge {
mNativeBookmarkBridge, BookmarkBridge.this, title, url);
}
@ -197,7 +197,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @param url The URL of the reading list item.
* @return The reading list item with the URL, or null if no such reading list item.
@@ -1637,6 +1696,7 @@ public class BookmarkBridge {
@@ -1655,6 +1714,7 @@ public class BookmarkBridge {
void getAllFoldersWithDepths(long nativeBookmarkBridge, BookmarkBridge caller,
List<BookmarkId> folderList, List<Integer> depthList);
BookmarkId getRootFolderId(long nativeBookmarkBridge, BookmarkBridge caller);
@ -208,7 +208,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/BookmarkUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
@@ -628,6 +628,7 @@ public class BookmarkUtils {
@@ -633,6 +633,7 @@ public class BookmarkUtils {
List<BookmarkId> topLevelFolders = new ArrayList<>();
BookmarkId desktopNodeId = bookmarkModel.getDesktopFolderId();
BookmarkId mobileNodeId = bookmarkModel.getMobileFolderId();
@ -216,7 +216,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
BookmarkId othersNodeId = bookmarkModel.getOtherFolderId();
List<BookmarkId> specialFoldersIds =
@@ -653,6 +654,9 @@ public class BookmarkUtils {
@@ -658,6 +659,9 @@ public class BookmarkUtils {
if (bookmarkModel.isFolderVisible(mobileNodeId)) {
topLevelFolders.add(mobileNodeId);
}
@ -349,7 +349,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
@@ -3421,6 +3421,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3448,6 +3448,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_TRACK_PRICES" desc="Menu item for tracking prices on tabs. [CHAR_LIMIT=27]">
Track prices
</message>
@ -687,7 +687,7 @@ diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks
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(
@@ -407,6 +407,7 @@ sync_pb::BookmarkSpecifics::Type GetProtoTypeFromBookmarkNode(
case bookmarks::BookmarkNode::BOOKMARK_BAR:
case bookmarks::BookmarkNode::OTHER_NODE:
case bookmarks::BookmarkNode::MOBILE:

View file

@ -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
@@ -2077,6 +2077,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2097,6 +2097,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
}
RecordUserAction.record("MobileMenuDownloadManager");
@ -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
@@ -502,6 +502,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -514,6 +514,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
isChromeScheme, isFileScheme, isContentScheme, isIncognito, url));
updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */, isChromeScheme);
@ -76,7 +76,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
updateAutoDarkMenuItem(menu, currentTab, isChromeScheme);
@@ -1135,6 +1136,19 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -1161,6 +1162,19 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
stopPriceTrackingMenuItem.setVisible(priceTrackingEnabled);
}
@ -99,7 +99,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
@@ -212,6 +212,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
@@ -216,6 +216,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
updateRequestDesktopSiteMenuItem(
menu, currentTab, requestDesktopSiteVisible, isChromeScheme);

View file

@ -33,7 +33,7 @@ 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
@@ -36,6 +36,7 @@ public class AccessibilitySettings
static final String PREF_CAPTIONS = "captions";
static final String PREF_IMAGE_DESCRIPTIONS = "image_descriptions";
@ -41,7 +41,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
private TextScalePreference mTextScalePref;
private ChromeBaseCheckBoxPreference mForceEnableZoomPref;
private boolean mRecordFontSizeChangeOnStop;
@@ -80,6 +81,12 @@ public class AccessibilitySettings
@@ -81,6 +82,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
@@ -132,6 +139,9 @@ public class AccessibilitySettings
mFontSizePrefs.setUserFontScaleFactor((Float) newValue);
} else if (PREF_FORCE_ENABLE_ZOOM.equals(preference.getKey())) {
mFontSizePrefs.setForceEnableZoomFromUser((Boolean) newValue);
@ -62,12 +62,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
+ SharedPreferencesManager.getInstance().writeBoolean(
+ ChromePreferenceKeys.FLAGS_FORCE_TABLET_UI_ENABLED, (Boolean) newValue);
} else if (PREF_READER_FOR_ACCESSIBILITY.equals(preference.getKey())) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.READER_FOR_ACCESSIBILITY, (Boolean) newValue);
RecordHistogram.recordBooleanHistogram(
"DomDistiller.ReaderModeAccessibilitySettingSelected", (Boolean) newValue);
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
@@ -510,6 +510,7 @@ public final class ChromePreferenceKeys {
@@ -492,6 +492,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";
@ -78,7 +78,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
@@ -98,6 +98,7 @@ public class LegacyChromePreferenceKeys {
@@ -95,6 +95,7 @@ public class LegacyChromePreferenceKeys {
ChromePreferenceKeys.FLAGS_CACHED_SWAP_PIXEL_FORMAT_TO_FIX_CONVERT_FROM_TRANSLUCENT,
ChromePreferenceKeys.FLAGS_CACHED_TAB_GROUPS_ANDROID_ENABLED,
ChromePreferenceKeys.FONT_USER_FONT_SCALE_FACTOR,
@ -101,7 +101,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
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
@@ -1354,6 +1354,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1395,6 +1395,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_SAFE_BROWSING_NO_PROTECTION_CONFIRMATION_DIALOG_CONFIRM" desc="Message for Safe Browsing no protection confirmation button.">
Turn off
</message>
@ -143,7 +143,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
@@ -572,7 +572,7 @@ test("components_unittests") {
@@ -571,7 +571,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.
@ -152,7 +152,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
assert_no_deps = [ "//chrome/*" ]
}
@@ -836,7 +836,7 @@ if (!is_ios) {
@@ -834,7 +834,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.
@ -160,11 +160,11 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
+ if (!is_chromeos_lacros && !is_android) {
assert_no_deps = [ "//chrome/*" ]
}
}
diff --git a/ui/android/BUILD.gn b/ui/android/BUILD.gn
--- a/ui/android/BUILD.gn
+++ b/ui/android/BUILD.gn
@@ -358,6 +358,8 @@ android_library("ui_no_recycler_view_java") {
@@ -357,6 +357,8 @@ android_library("ui_no_recycler_view_java") {
":ui_java_resources",
":ui_utils_java",
"//base:base_java",

View file

@ -12,9 +12,9 @@ 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
@@ -42,6 +42,11 @@
android:title="@string/always_incognito_title"
android:summary="@string/always_incognito_summary"
@@ -47,6 +47,11 @@
android:title="@string/incognito_history_enabled_title"
android:summary="@string/incognito_history_enabled_summary"
android:defaultValue="false" />
+ <org.chromium.components.browser_ui.settings.ChromeSwitchPreference
+ android:key="close_tabs_on_exit"
@ -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<ChromeActivityComponent
@@ -1199,8 +1199,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
boolean hadCipherData =
CipherFactory.getInstance().restoreFromBundle(getSavedInstanceState());
@ -50,25 +50,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import android.os.Bundle;
import android.text.SpannableString;
import android.view.Menu;
@@ -15,6 +16,8 @@ import androidx.preference.Preference;
@@ -16,6 +17,8 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat;
+import org.chromium.base.ContextUtils;
+import org.chromium.base.BuildInfo;
import org.chromium.base.Log;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -63,6 +66,8 @@ public class PrivacySettings
private static final String PREF_PRIVACY_REVIEW = "privacy_review";
@@ -68,6 +71,8 @@ public class PrivacySettings
private static final String PREF_INCOGNITO_LOCK = "incognito_lock";
private static final String PREF_PHONE_AS_A_SECURITY_KEY = "phone_as_a_security_key";
+ private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
+
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
private IncognitoLockSettings mIncognitoLockSettings;
@@ -150,7 +155,11 @@ public class PrivacySettings
private ViewGroup mDialogContainer;
@@ -168,7 +173,11 @@ public class PrivacySettings
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
@ -80,9 +80,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+ } else if (PREF_CAN_MAKE_PAYMENT.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
} else if (PREF_HTTPS_FIRST_MODE.equals(key)) {
@@ -188,6 +197,11 @@ public class PrivacySettings
: R.string.text_off);
} else if (PREF_ALWAYS_INCOGNITO.equals(key)) {
@@ -219,6 +228,11 @@ public class PrivacySettings
prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED));
}
+ ChromeSwitchPreference closeTabsOnExitPref =
@ -96,7 +96,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
@@ -4297,6 +4297,12 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4327,6 +4327,12 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_CONTEXTMENU_IMAGE_TITLE" desc="The title of a context menu tab when the item pressed contains more than one type. This indicates that all the actions are related to the image.">
IMAGE
</message>

View file

@ -116,7 +116,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
import org.chromium.chrome.browser.init.StartupTabPreloader;
import org.chromium.chrome.browser.ntp.NewTabPageLaunchOrigin;
import org.chromium.chrome.browser.ntp.NewTabPageUtils;
@@ -327,6 +328,12 @@ public class ChromeTabCreator extends TabCreator {
@@ -321,6 +322,12 @@ public class ChromeTabCreator extends TabCreator {
* @return the created tab.
*/
public Tab launchUrl(String url, @TabLaunchType int type, Intent intent, long intentTimestamp) {
@ -132,7 +132,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
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
@@ -518,6 +518,7 @@ public final class ChromePreferenceKeys {
@@ -500,6 +500,7 @@ public final class ChromePreferenceKeys {
public static final String HOMEPAGE_USE_DEFAULT_URI = "homepage_partner_enabled";
public static final String HOMEPAGE_PARTNER_CUSTOMIZED_DEFAULT_URI =
"Chrome.Homepage.PartnerCustomizedDefaultUri";
@ -143,7 +143,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
@@ -103,6 +103,7 @@ public class LegacyChromePreferenceKeys {
@@ -100,6 +100,7 @@ public class LegacyChromePreferenceKeys {
ChromePreferenceKeys.HOMEPAGE_CUSTOM_URI,
ChromePreferenceKeys.HOMEPAGE_ENABLED,
ChromePreferenceKeys.HOMEPAGE_USE_DEFAULT_URI,
@ -154,7 +154,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1061,6 +1061,9 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1039,6 +1039,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_DATA_TAB_PERIOD_HOUR" desc="The option to delete browsing data from the last hour.">
Last hour
</message>
@ -193,9 +193,9 @@ diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -362,6 +362,7 @@ extern const char kExternalStorageReadOnly[];
extern const char kSettingsShowOSBanner[];
#endif // defined(OS_CHROMEOS)
@@ -366,6 +366,7 @@ extern const char kSettingsShowOSBanner[];
extern const char kUsedPolicyCertificates[];
#endif // BUILDFLAG(IS_CHROMEOS)
extern const char kShowHomeButton[];
+extern const char kNewTabPageIsHomePage[];
extern const char kSpeechRecognitionFilterProfanities[];

View file

@ -10,15 +10,15 @@ 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.components.browser_ui.bottomsheet.BottomSheetController;
@@ -62,6 +62,7 @@ import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory;
import org.chromium.components.browser_ui.settings.FragmentSettingsLauncher;
import org.chromium.components.browser_ui.settings.SettingsLauncher;
+import org.chromium.components.browser_ui.settings.SettingsUtils;
import org.chromium.components.browser_ui.site_settings.SiteSettingsPreferenceFragment;
import org.chromium.components.browser_ui.widget.scrim.ScrimCoordinator;
import org.chromium.ui.KeyboardVisibilityDelegate;
@@ -287,9 +288,13 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
import org.chromium.components.browser_ui.widget.displaystyle.UiConfig;
import org.chromium.components.browser_ui.widget.displaystyle.ViewResizer;
@@ -321,9 +322,13 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
finish();
return true;
} else if (item.getItemId() == R.id.menu_id_general_help) {

View file

@ -0,0 +1,23 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Sun, 6 Mar 2022 18:55:58 +0100
Subject: Allow adding search engines from incognito mode
---
chrome/browser/ui/search_engines/search_engine_tab_helper.cc | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/chrome/browser/ui/search_engines/search_engine_tab_helper.cc b/chrome/browser/ui/search_engines/search_engine_tab_helper.cc
--- a/chrome/browser/ui/search_engines/search_engine_tab_helper.cc
+++ b/chrome/browser/ui/search_engines/search_engine_tab_helper.cc
@@ -129,8 +129,7 @@ void SearchEngineTabHelper::PageHasOpenSearchDescriptionDocument(
Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
if (page_url != web_contents()->GetLastCommittedURL() ||
- !TemplateURLFetcherFactory::GetForProfile(profile) ||
- profile->IsOffTheRecord())
+ !TemplateURLFetcherFactory::GetForProfile(profile))
return;
// If the current page is a form submit, find the last page that was not a
--
2.25.1

View file

@ -23,7 +23,7 @@ Subject: Allow building without enable_reporting
diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/browser/devtools/protocol/network_handler.cc
--- a/content/browser/devtools/protocol/network_handler.cc
+++ b/content/browser/devtools/protocol/network_handler.cc
@@ -1283,6 +1283,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
@@ -1285,6 +1285,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
}
}
@ -31,7 +31,7 @@ diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/brow
std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
std::vector<GURL> urls;
base::queue<FrameTreeNode*> queue;
@@ -1300,6 +1301,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
@@ -1302,6 +1303,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
}
return urls;
}
@ -139,7 +139,7 @@ diff --git a/content/browser/net/cross_origin_opener_policy_reporter.cc b/conten
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
--- a/content/browser/renderer_host/render_frame_host_impl.cc
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
@@ -10827,6 +10827,7 @@ void RenderFrameHostImpl::OnSameDocumentCommitProcessed(
@@ -10883,6 +10883,7 @@ void RenderFrameHostImpl::OnSameDocumentCommitProcessed(
void RenderFrameHostImpl::MaybeGenerateCrashReport(
base::TerminationStatus status,
int exit_code) {
@ -147,7 +147,7 @@ diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/b
if (!last_committed_url_.SchemeIsHTTPOrHTTPS())
return;
@@ -10876,6 +10877,7 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
@@ -10932,6 +10933,7 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
/*type=*/"crash", /*group=*/"default", last_committed_url_,
GetReportingSource(), isolation_info_.network_isolation_key(),
absl::nullopt /* user_agent */, std::move(body));
@ -204,7 +204,7 @@ diff --git a/net/reporting/reporting_service.cc b/net/reporting/reporting_servic
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -1151,25 +1151,9 @@ void NetworkContext::SetDocumentReportingEndpoints(
@@ -1165,25 +1165,9 @@ void NetworkContext::SetDocumentReportingEndpoints(
void NetworkContext::SendReportsAndRemoveSource(
const base::UnguessableToken& reporting_source) {
@ -234,7 +234,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
diff --git a/services/network/network_context.h b/services/network/network_context.h
--- a/services/network/network_context.h
+++ b/services/network/network_context.h
@@ -424,17 +424,6 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
@@ -423,17 +423,6 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
const base::flat_map<std::string, std::string>& endpoints) override;
void SendReportsAndRemoveSource(
const base::UnguessableToken& reporting_source) override;
@ -255,7 +255,7 @@ diff --git a/services/network/network_context.h b/services/network/network_conte
diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mojom/BUILD.gn
--- a/services/network/public/mojom/BUILD.gn
+++ b/services/network/public/mojom/BUILD.gn
@@ -950,7 +950,6 @@ mojom("mojom") {
@@ -959,7 +959,6 @@ mojom("mojom") {
export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1"
export_header_blink = "third_party/blink/public/platform/web_common.h"
if (enable_reporting) {
@ -266,7 +266,7 @@ diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mo
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
--- a/services/network/public/mojom/network_context.mojom
+++ b/services/network/public/mojom/network_context.mojom
@@ -1000,6 +1000,7 @@ interface NetworkContext {
@@ -1005,6 +1005,7 @@ interface NetworkContext {
// provided |network_isolation_key|.
//
// Spec: https://w3c.github.io/reporting/#concept-reports
@ -274,7 +274,7 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
QueueReport(string type,
string group,
url.mojom.Url url,
@@ -1013,6 +1014,7 @@ interface NetworkContext {
@@ -1018,6 +1019,7 @@ interface NetworkContext {
// Note that this queued report will never be delivered if no reporting
// endpoint matching is registered for with the provided
// |network_isolation_key|.
@ -285,15 +285,15 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
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
@@ -39,6 +39,7 @@
#include "base/values.h"
@@ -40,6 +40,7 @@
#include "build/build_config.h"
#include "mojo/public/cpp/bindings/self_owned_receiver.h"
#include "mojo/public/cpp/system/message_pipe.h"
+#include "net/net_buildflags.h"
#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"
@@ -2287,9 +2288,11 @@ const base::UnguessableToken& LocalFrame::GetAgentClusterId() const {
@@ -2281,9 +2282,11 @@ const base::UnguessableToken& LocalFrame::GetAgentClusterId() const {
return base::UnguessableToken::Null();
}

View file

@ -4,9 +4,9 @@ Subject: Allow building without supervised users
---
.../browser/childaccounts/ChildAccountService.java | 11 -----------
chrome/browser/startup_data.cc | 4 +---
chrome/browser/startup_data.cc | 3 ---
.../child_accounts/child_account_service_android.cc | 9 ---------
3 files changed, 1 insertion(+), 23 deletions(-)
3 files changed, 23 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/childaccounts/ChildAccountService.java b/chrome/android/java/src/org/chromium/chrome/browser/childaccounts/ChildAccountService.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/childaccounts/ChildAccountService.java
@ -36,15 +36,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/childaccounts/C
diff --git a/chrome/browser/startup_data.cc b/chrome/browser/startup_data.cc
--- a/chrome/browser/startup_data.cc
+++ b/chrome/browser/startup_data.cc
@@ -6,6 +6,7 @@
#include "base/files/file_path.h"
#include "base/task/thread_pool.h"
+#include "build/build_config.h"
#include "chrome/browser/metrics/chrome_feature_list_creator.h"
#include "chrome/browser/prefs/profile_pref_store_manager.h"
#include "chrome/common/channel_info.h"
@@ -33,9 +34,6 @@
@@ -33,9 +33,6 @@
#include "chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.h"
#include "chrome/browser/profiles/pref_service_builder_utils.h"
#include "chrome/browser/profiles/profile_key.h"

View file

@ -10,7 +10,7 @@ Subject: Allow playing audio in background
diff --git a/third_party/blink/public/platform/media/web_media_player_impl.h b/third_party/blink/public/platform/media/web_media_player_impl.h
--- a/third_party/blink/public/platform/media/web_media_player_impl.h
+++ b/third_party/blink/public/platform/media/web_media_player_impl.h
@@ -162,6 +162,9 @@ class BLINK_PLATFORM_EXPORT WebMediaPlayerImpl
@@ -163,6 +163,9 @@ class BLINK_PLATFORM_EXPORT WebMediaPlayerImpl
bool HasVideo() const override;
bool HasAudio() const override;
@ -23,7 +23,7 @@ diff --git a/third_party/blink/public/platform/media/web_media_player_impl.h b/t
diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc b/third_party/blink/renderer/platform/media/web_media_player_impl.cc
--- a/third_party/blink/renderer/platform/media/web_media_player_impl.cc
+++ b/third_party/blink/renderer/platform/media/web_media_player_impl.cc
@@ -1186,6 +1186,12 @@ bool WebMediaPlayerImpl::HasAudio() const {
@@ -1188,6 +1188,12 @@ bool WebMediaPlayerImpl::HasAudio() const {
return pipeline_metadata_.has_audio;
}
@ -36,7 +36,7 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc
void WebMediaPlayerImpl::EnabledAudioTracksChanged(
const WebVector<WebMediaPlayer::TrackId>& enabledTrackIds) {
DCHECK(main_task_runner_->BelongsToCurrentThread());
@@ -3557,7 +3563,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
@@ -3559,7 +3565,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
// Audio only stream is allowed to play when in background.
// TODO: We should check IsBackgroundOptimizationCandidate here. But we need
// to move the logic of checking video frames out of that function.

View file

@ -10,7 +10,7 @@ Disable prefs::kSigninAllowedOnNextStartup by default. The setting can be found
diff --git a/chrome/browser/signin/account_consistency_mode_manager.cc b/chrome/browser/signin/account_consistency_mode_manager.cc
--- a/chrome/browser/signin/account_consistency_mode_manager.cc
+++ b/chrome/browser/signin/account_consistency_mode_manager.cc
@@ -113,7 +113,7 @@ AccountConsistencyModeManager::~AccountConsistencyModeManager() {}
@@ -112,7 +112,7 @@ AccountConsistencyModeManager::~AccountConsistencyModeManager() {}
// static
void AccountConsistencyModeManager::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {

View file

@ -1,36 +0,0 @@
From: samartnik <artem@brave.com>
Date: Thu, 14 Dec 2017 16:19:50 +0200
Subject: Always allow partner customisation
---
.../PartnerBrowserCustomizations.java | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java b/chrome/android/java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/partnercustomizations/PartnerBrowserCustomizations.java
@@ -329,14 +329,14 @@ public class PartnerBrowserCustomizations {
@Override
protected Void doInBackground() {
try {
- boolean systemOrPreStable =
- (context.getApplicationInfo().flags & ApplicationInfo.FLAG_SYSTEM) == 1
- || !ChromeVersionInfo.isStableBuild();
- if (!systemOrPreStable) {
- // Only allow partner customization if this browser is a system package, or
- // is in pre-stable channels.
- return null;
- }
+ //boolean systemOrPreStable =
+ // (context.getApplicationInfo().flags & ApplicationInfo.FLAG_SYSTEM) == 1
+ // || !ChromeVersionInfo.isStableBuild();
+ //if (!systemOrPreStable) {
+ // // Only allow partner customization if this browser is a system package, or
+ // // is in pre-stable channels.
+ // return null;
+ //}
if (isCancelled()) return null;
Provider provider = AppHooks.get().getCustomizationProvider();
--
2.25.1

View file

@ -3,59 +3,22 @@ Date: Sat, 20 Nov 2021 17:42:41 +0000
Subject: Ask user before closing all tabs
---
.../chrome/browser/ChromeTabbedActivity.java | 20 +++++++++++++++++--
.../strings/android_chrome_strings.grd | 3 +++
2 files changed, 21 insertions(+), 2 deletions(-)
chrome/browser/flags/android/chrome_feature_list.cc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
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
@@ -33,6 +33,7 @@ import androidx.annotation.VisibleForTesting;
import androidx.lifecycle.Lifecycle;
import androidx.lifecycle.LifecycleObserver;
import androidx.lifecycle.LifecycleRegistry;
+import androidx.appcompat.app.AlertDialog;
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
@@ -448,8 +448,8 @@ const base::Feature kConditionalTabStripAndroid{
const base::Feature kCastDeviceFilter{"CastDeviceFilter",
base::FEATURE_DISABLED_BY_DEFAULT};
import org.chromium.base.CallbackController;
import org.chromium.base.CommandLine;
@@ -2054,8 +2055,23 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
ApplicationLifetime.terminate(false);
} else if (id == R.id.close_all_tabs_menu_id) {
// Close both incognito and normal tabs
- getTabModelSelector().closeAllTabs();
- RecordUserAction.record("MobileMenuCloseAllTabs");
+ AlertDialog.Builder alert =
+ new AlertDialog.Builder(ChromeTabbedActivity.this);
+ AlertDialog alertDialog =
+ alert.setTitle(R.string.menu_close_all_tabs)
+ .setMessage(R.string.menu_ask_to_close_all_tabs)
+ .setPositiveButton(android.R.string.ok,
+ (dialog, which) -> {
+ getTabModelSelector().closeAllTabs();
+ dialog.dismiss();
+ })
+ .setNegativeButton(android.R.string.cancel,
+ (dialog, which) -> {
+ dialog.dismiss();
+ })
+ .create();
+ alertDialog.getDelegate().setHandleNativeActionModesEnabled(false);
+ alertDialog.show();
} else if (id == R.id.bookmark_all_tabs_menu_id) {
bookmarkAllTabs();
} else if (id == R.id.close_all_incognito_tabs_menu_id) {
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
@@ -3412,6 +3412,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_CLOSE_ALL_TABS" desc="Menu item for closing all open tabs. [CHAR_LIMIT=27]">
Close all tabs
</message>
+ <message name="IDS_MENU_ASK_TO_CLOSE_ALL_TABS" desc="Label for the notice of closing all open tabs. [CHAR_LIMIT=27]">
+ Do you want to close all tabs?
+ </message>
<message name="IDS_MENU_CLOSE_ALL_INCOGNITO_TABS" desc="Menu item for closing all open Incognito tabs. [CHAR_LIMIT=27]">
Close Incognito tabs
</message>
-const base::Feature kCloseAllTabsModalDialog{"CloseAllTabsModalDialog",
- base::FEATURE_DISABLED_BY_DEFAULT};
+const base::Feature kCloseAllTabsModalDialog{"CloseAllTabsModalDialog", // Enabled by default in Bromite
+ base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kCloseTabSuggestions{"CloseTabSuggestions",
base::FEATURE_DISABLED_BY_DEFAULT};
--
2.25.1

View file

@ -46,7 +46,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.idl b/thir
diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/third_party/blink/renderer/modules/webaudio/audio_context.cc
--- a/third_party/blink/renderer/modules/webaudio/audio_context.cc
+++ b/third_party/blink/renderer/modules/webaudio/audio_context.cc
@@ -456,7 +456,9 @@ double AudioContext::baseLatency() const {
@@ -462,7 +462,9 @@ double AudioContext::baseLatency() const {
DCHECK(IsMainThread());
DCHECK(destination());

File diff suppressed because it is too large Load diff

View file

@ -10,7 +10,7 @@ Include @thestinger's fix for correct charging/unknown values
diff --git a/third_party/blink/renderer/modules/battery/battery_manager.cc b/third_party/blink/renderer/modules/battery/battery_manager.cc
--- a/third_party/blink/renderer/modules/battery/battery_manager.cc
+++ b/third_party/blink/renderer/modules/battery/battery_manager.cc
@@ -70,46 +70,28 @@ ScriptPromise BatteryManager::StartRequest(ScriptState* script_state) {
@@ -73,46 +73,28 @@ ScriptPromise BatteryManager::StartRequest(ScriptState* script_state) {
}
bool BatteryManager::charging() {

View file

@ -28,7 +28,7 @@ diff --git a/third_party/blink/renderer/core/loader/base_fetch_context.h b/third
diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/third_party/blink/renderer/core/loader/frame_fetch_context.cc
--- a/third_party/blink/renderer/core/loader/frame_fetch_context.cc
+++ b/third_party/blink/renderer/core/loader/frame_fetch_context.cc
@@ -563,6 +563,26 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
@@ -550,6 +550,26 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
return should_block_request;
}
@ -58,7 +58,7 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/thi
diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.h b/third_party/blink/renderer/core/loader/frame_fetch_context.h
--- a/third_party/blink/renderer/core/loader/frame_fetch_context.h
+++ b/third_party/blink/renderer/core/loader/frame_fetch_context.h
@@ -179,6 +179,7 @@ class CORE_EXPORT FrameFetchContext final : public BaseFetchContext,
@@ -178,6 +178,7 @@ class CORE_EXPORT FrameFetchContext final : public BaseFetchContext,
bool ShouldBlockWebSocketByMixedContentCheck(const KURL&) const override;
std::unique_ptr<WebSocketHandshakeThrottle> CreateWebSocketHandshakeThrottle()
override;

View file

@ -79,7 +79,7 @@ diff --git a/components/omnibox/browser/autocomplete_input.cc b/components/omnib
return url::FindAndCompareScheme(utf8_input, scheme, nullptr);
}
@@ -562,7 +567,8 @@ void AutocompleteInput::ParseForEmphasizeComponents(
@@ -561,7 +566,8 @@ void AutocompleteInput::ParseForEmphasizeComponents(
// For the view-source and blob schemes, we should emphasize the host of the
// URL qualified by the view-source or blob prefix.
if ((base::LowerCaseEqualsASCII(scheme_str, kViewSourceScheme) ||
@ -117,7 +117,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
@@ -1039,6 +1039,8 @@ component("net") {
@@ -1040,6 +1040,8 @@ component("net") {
"url_request/url_request_http_job.cc",
"url_request/url_request_http_job.h",
"url_request/url_request_interceptor.cc",
@ -210,7 +210,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc
using base::Time;
using std::string;
@@ -611,6 +613,12 @@ URLRequest::URLRequest(const GURL& url,
@@ -610,6 +612,12 @@ URLRequest::URLRequest(const GURL& url,
// Sanity check out environment.
DCHECK(base::ThreadTaskRunnerHandle::IsSet());
@ -226,7 +226,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"
@ -234,7 +234,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"
@@ -543,6 +544,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
@@ -552,6 +553,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
job_factory->SetProtocolHandler(scheme_handler.first,
std::move(scheme_handler.second));
}
@ -246,25 +246,25 @@ diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/ur
diff --git a/url/url_constants.cc b/url/url_constants.cc
--- a/url/url_constants.cc
+++ b/url/url_constants.cc
@@ -29,6 +29,7 @@ const char kMailToScheme[] = "mailto";
const char kQuicTransportScheme[] = "quic-transport";
const char kTelScheme[] = "tel";
const char kUrnScheme[] = "urn";
@@ -29,6 +29,7 @@ const char16_t kDataScheme16[] = u"data";
const char kFileScheme[] = "file";
const char16_t kFileScheme16[] = u"file";
const char kFileSystemScheme[] = "filesystem";
+const char kTraceScheme[] = "trk";
const char kUuidInPackageScheme[] = "uuid-in-package";
const char kWsScheme[] = "ws";
const char kWssScheme[] = "wss";
const char16_t kFileSystemScheme16[] = u"filesystem";
const char kFtpScheme[] = "ftp";
const char16_t kFtpScheme16[] = u"ftp";
diff --git a/url/url_constants.h b/url/url_constants.h
--- a/url/url_constants.h
+++ b/url/url_constants.h
@@ -33,6 +33,7 @@ COMPONENT_EXPORT(URL) extern const char kMailToScheme[];
COMPONENT_EXPORT(URL) extern const char kQuicTransportScheme[];
COMPONENT_EXPORT(URL) extern const char kTelScheme[];
COMPONENT_EXPORT(URL) extern const char kUrnScheme[];
@@ -33,6 +33,7 @@ COMPONENT_EXPORT(URL) extern const char16_t kContentIDScheme16[];
COMPONENT_EXPORT(URL) extern const char kDataScheme[];
COMPONENT_EXPORT(URL) extern const char16_t kDataScheme16[];
COMPONENT_EXPORT(URL) extern const char kFileScheme[];
+COMPONENT_EXPORT(URL) extern const char kTraceScheme[];
COMPONENT_EXPORT(URL) extern const char kUuidInPackageScheme[];
COMPONENT_EXPORT(URL) extern const char kWsScheme[];
COMPONENT_EXPORT(URL) extern const char kWssScheme[];
COMPONENT_EXPORT(URL) extern const char16_t kFileScheme16[];
COMPONENT_EXPORT(URL) extern const char kFileSystemScheme[];
COMPONENT_EXPORT(URL) extern const char16_t kFileSystemScheme16[];
diff --git a/url/url_util.cc b/url/url_util.cc
--- a/url/url_util.cc
+++ b/url/url_util.cc

View file

@ -58,7 +58,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
@@ -560,6 +560,7 @@ chrome_java_resources = [
@@ -545,6 +545,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",
@ -66,7 +66,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 = [
@@ -757,6 +758,7 @@ chrome_java_resources = [
"java/res/xml/about_chrome_preferences.xml",
"java/res/xml/accessibility_preferences.xml",
"java/res/xml/account_management_preferences.xml",
@ -77,7 +77,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
@@ -978,6 +978,8 @@ chrome_java_sources = [
@@ -962,6 +962,8 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/permissions/PermissionSettingsBridge.java",
"java/src/org/chromium/chrome/browser/permissions/PermissionUpdateRequester.java",
"java/src/org/chromium/chrome/browser/photo_picker/DecoderServiceImpl.java",
@ -85,7 +85,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
+ "java/src/org/chromium/chrome/browser/settings/AdBlockPreferences.java",
"java/src/org/chromium/chrome/browser/policy/PolicyAuditor.java",
"java/src/org/chromium/chrome/browser/prerender/ChromePrerenderServiceImpl.java",
"java/src/org/chromium/chrome/browser/previews/HttpsImageCompressionUtils.java",
"java/src/org/chromium/chrome/browser/printing/PrintShareActivity.java",
diff --git a/chrome/android/java/res/layout/adblock_editor.xml b/chrome/android/java/res/layout/adblock_editor.xml
new file mode 100644
--- /dev/null
@ -421,7 +421,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
@@ -11157,6 +11157,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -11200,6 +11200,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
Never show this again.
</message>
@ -459,7 +459,7 @@ diff --git a/chrome/browser/after_startup_task_utils.cc b/chrome/browser/after_s
+
// TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
// of lacros-chrome is complete.
#if defined(OS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
--- a/chrome/browser/browser_process.h
+++ b/chrome/browser/browser_process.h
@ -493,7 +493,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
@@ -1068,6 +1068,26 @@ BrowserProcessImpl::component_updater() {
@@ -1067,6 +1067,26 @@ BrowserProcessImpl::component_updater() {
return component_updater_.get();
}
@ -537,14 +537,14 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
std::unique_ptr<component_updater::ComponentUpdateService> component_updater_;
+ std::unique_ptr<adblock_updater::AdBlockUpdaterService> adblock_updater_;
#if !defined(OS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
// Used to create a singleton instance of SodaInstallerImpl, which can be
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
@@ -1681,6 +1681,9 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1739,6 +1739,9 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
// will be initialized when the app enters foreground mode.
variations_service->set_policy_pref_service(profile_->GetPrefs());
variations_service->set_policy_pref_service(profile->GetPrefs());
+ // force AdBlock updater initialisation
+ g_browser_process->adblock_updater();
@ -580,7 +580,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
@@ -270,6 +270,14 @@ public class CachedFeatureFlags {
@@ -271,6 +271,14 @@ public class CachedFeatureFlags {
ChromeFeatureList.isEnabled(ChromeFeatureList.BACKGROUND_THREAD_POOL));
}
@ -595,7 +595,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.
*/
@@ -487,5 +495,7 @@ public class CachedFeatureFlags {
@@ -488,5 +496,7 @@ public class CachedFeatureFlags {
@NativeMethods
interface Natives {
boolean isNetworkServiceWarmUpEnabled();
@ -606,16 +606,16 @@ 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
@@ -343,6 +343,8 @@ SystemNetworkContextManager::SystemNetworkContextManager(
@@ -341,6 +341,8 @@ SystemNetworkContextManager::SystemNetworkContextManager(
SSLConfigServiceManager::CreateDefaultManager(local_state_)),
proxy_config_monitor_(local_state_),
stub_resolver_config_reader_(local_state_) {
+ local_state_->SetDefaultPrefValue(prefs::kAdBlockFiltersURL,
+ base::Value("https://www.bromite.org/filters/filters.dat"));
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_ANDROID)
// QuicAllowed was not part of Android policy.
const base::Value* value =
@@ -413,6 +415,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
@@ -412,6 +414,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) {
StubResolverConfigReader::RegisterPrefs(registry);
@ -665,7 +665,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
@@ -2252,6 +2252,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
@@ -2277,6 +2277,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
// capture devices without prompt.
const char kAudioCaptureAllowedUrls[] = "hardware.audio_capture_allowed_urls";

File diff suppressed because it is too large Load diff

View file

@ -6,22 +6,22 @@ Disable critical client hints
Hard-code model to SAMSUNG SM-G960U
use Google Chrome branding for client hints
---
chrome/browser/prefs/browser_prefs.cc | 2 +-
components/embedder_support/user_agent_utils.cc | 4 +---
content/browser/client_hints/client_hints.cc | 1 +
content/common/user_agent.cc | 7 +------
content/public/common/content_features.cc | 2 +-
services/network/public/cpp/client_hints.cc | 1 +
services/network/public/cpp/features.cc | 2 +-
third_party/blink/common/client_hints/client_hints.cc | 1 +
.../blink/common/client_hints/enabled_client_hints.cc | 4 +++-
third_party/blink/common/features.cc | 4 ++--
10 files changed, 13 insertions(+), 15 deletions(-)
chrome/browser/prefs/browser_prefs.cc | 2 +-
components/embedder_support/user_agent_utils.cc | 4 +---
content/browser/client_hints/client_hints.cc | 1 +
content/common/user_agent.cc | 9 +--------
content/public/common/content_features.cc | 2 +-
services/network/public/cpp/client_hints.cc | 1 +
services/network/public/cpp/features.cc | 2 +-
third_party/blink/common/client_hints/client_hints.cc | 1 +
.../blink/common/client_hints/enabled_client_hints.cc | 4 +++-
third_party/blink/common/features.cc | 4 ++--
10 files changed, 13 insertions(+), 17 deletions(-)
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
@@ -716,7 +716,7 @@ void RegisterLocalStatePrefsForMigration(PrefRegistrySimple* registry) {
@@ -753,7 +753,7 @@ void RegisterLocalStatePrefsForMigration(PrefRegistrySimple* registry) {
registry->RegisterIntegerPref(kStabilityDebuggerPresent, 0);
registry->RegisterIntegerPref(kStabilityDebuggerNotPresent, 0);
@ -33,7 +33,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
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
@@ -168,9 +168,7 @@ const blink::UserAgentBrandList GetUserAgentBrandList(
@@ -220,9 +220,7 @@ const blink::UserAgentBrandList GetUserAgentBrandList(
int major_version_number = 0;
DCHECK(base::StringToInt(major_version, &major_version_number));
absl::optional<std::string> brand;
@ -58,20 +58,22 @@ diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/clie
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
@@ -285,12 +285,7 @@ std::string BuildUserAgentFromProduct(const std::string& product) {
@@ -284,14 +284,7 @@ std::string BuildUserAgentFromProduct(const std::string& product) {
}
std::string BuildModelInfo() {
std::string model;
-#if defined(OS_ANDROID)
- std::string model;
-#if BUILDFLAG(IS_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;
- return model;
+ return "SAMSUNG SM-G960U";
}
#if BUILDFLAG(IS_ANDROID)
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
@ -82,8 +84,8 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
- base::FEATURE_ENABLED_BY_DEFAULT};
+ base::FEATURE_DISABLED_BY_DEFAULT};
// Enable cross-origin sharing of WebAssembly modules.
const base::Feature kCrossOriginWebAssemblyModuleSharingEnabled{
// Puts save-data header in the holdback mode. This disables sending of
// save-data header to origins, and to the renderer processes within Chrome.
diff --git a/services/network/public/cpp/client_hints.cc b/services/network/public/cpp/client_hints.cc
--- a/services/network/public/cpp/client_hints.cc
+++ b/services/network/public/cpp/client_hints.cc
@ -98,7 +100,7 @@ diff --git a/services/network/public/cpp/client_hints.cc b/services/network/publ
diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc
--- a/services/network/public/cpp/features.cc
+++ b/services/network/public/cpp/features.cc
@@ -195,7 +195,7 @@ const base::Feature kWebSocketReassembleShortMessages{
@@ -191,7 +191,7 @@ const base::Feature kWebSocketReassembleShortMessages{
// See:
// https://tools.ietf.org/html/draft-davidben-http-client-hint-reliability-02#section-4.3
const base::Feature kAcceptCHFrame{"AcceptCHFrame",
@ -110,7 +112,7 @@ diff --git a/services/network/public/cpp/features.cc b/services/network/public/c
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
@@ -93,6 +93,7 @@ const size_t kWebEffectiveConnectionTypeMappingCount =
@@ -111,6 +111,7 @@ const size_t kWebEffectiveConnectionTypeMappingCount =
base::size(kWebEffectiveConnectionTypeMapping);
bool IsClientHintSentByDefault(network::mojom::WebClientHintsType type) {
@ -158,7 +160,7 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
// Enable `sec-ch-ua-full-version-list` client hint.
const base::Feature kUserAgentClientHintFullVersionList{
@@ -719,7 +719,7 @@ const base::Feature kResamplingScrollEvents{"ResamplingScrollEvents",
@@ -714,7 +714,7 @@ const base::Feature kResamplingScrollEvents{"ResamplingScrollEvents",
const base::Feature kAllowClientHintsToThirdParty {
"AllowClientHintsToThirdParty",
#if defined(OS_ANDROID)

View file

@ -10,8 +10,8 @@ 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
@@ -629,7 +629,7 @@ const base::Feature kEnhancedProtectionPromoCard{
"EnhancedProtectionPromoCard", base::FEATURE_DISABLED_BY_DEFAULT};
@@ -652,7 +652,7 @@ const base::Feature kEnableMixedContentDownloadDialog{
"EnableMixedContentDownloadDialog", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kExperimentsForAgsa{"ExperimentsForAgsa",
- base::FEATURE_ENABLED_BY_DEFAULT};
@ -22,7 +22,7 @@ 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
@@ -90,7 +90,7 @@ public class CachedFeatureFlags {
@@ -91,7 +91,7 @@ public class CachedFeatureFlags {
.put(ChromeFeatureList.CCT_REMOVE_REMOTE_VIEW_IDS, true)
.put(ChromeFeatureList.OFFLINE_MEASUREMENTS_BACKGROUND_TASK, false)
.put(ChromeFeatureList.CCT_INCOGNITO, true)

View file

@ -26,7 +26,7 @@ diff --git a/chrome/android/java/res/xml/accessibility_preferences.xml b/chrome/
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
@@ -1413,6 +1413,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1454,6 +1454,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_PREFS_ACCESSIBILITY" desc="Title of Accessibility settings, which allows the user to change webpage font sizes. [CHAR_LIMIT=32]">
Accessibility
</message>
@ -42,7 +42,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/content/public/android/java/src/org/chromium/content/browser/accessibility/WebContentsAccessibilityImpl.java b/content/public/android/java/src/org/chromium/content/browser/accessibility/WebContentsAccessibilityImpl.java
--- a/content/public/android/java/src/org/chromium/content/browser/accessibility/WebContentsAccessibilityImpl.java
+++ b/content/public/android/java/src/org/chromium/content/browser/accessibility/WebContentsAccessibilityImpl.java
@@ -791,6 +791,11 @@ public class WebContentsAccessibilityImpl extends AccessibilityNodeProvider
@@ -842,6 +842,11 @@ public class WebContentsAccessibilityImpl extends AccessibilityNodeProviderCompa
structure.setChildCount(0);
return;
}

View file

@ -1,21 +1,26 @@
From: uazo <uazo@users.noreply.github.com>
Date: Sat, 13 Nov 2021 18:02:15 +0000
Subject: Disable FLoC
Date: Sat, 13 Nov 2021 09:17:06 +0000
Subject: Disable FLoC and privacy sandbox
Permanently removes floc support, disabling the download of lsh clusters,
the marking the history navigation and the javascript api and permission policies.
Remove UI from the settings and set the flags to inactive
Permanently removes FLoC support, disabling the download of LSH clusters,
the marking the history navigation and the javascript API and permission policies.
Also added the disabling of blink features through the DisabledForBromite tag
---
.../java/res/xml/privacy_preferences.xml | 4 --
.../privacy/settings/PrivacySettings.java | 21 -------
.../browser/chrome_content_browser_client.cc | 4 ++
.../floc_component_installer.cc | 10 +---
.../floc_eligibility_observer.cc | 58 +------------------
.../floc_id_provider_impl.cc | 4 +-
.../privacy_sandbox_settings.cc | 14 +++--
.../privacy_sandbox/generated_floc_pref.cc | 2 +-
.../federated_learning/features/features.cc | 12 ++--
components/federated_learning/floc_id.cc | 19 +++---
.../history/core/browser/history_backend.cc | 13 +----
.../history/core/browser/history_service.cc | 9 +--
components/history/core/browser/url_row.h | 1 -
.../privacy_sandbox/privacy_sandbox_prefs.cc | 4 +-
.../privacy_sandbox_settings.cc | 21 ++++---
third_party/blink/common/features.cc | 4 +-
.../permissions_policy_feature.mojom | 5 --
.../renderer/bindings/generated_in_core.gni | 2 -
@ -24,12 +29,78 @@ Also added the disabling of blink features through the DisabledForBromite tag
.../renderer/core/dom/interest_cohort.idl | 4 --
.../permissions_policy_features.json5 | 6 --
.../platform/runtime_enabled_features.json5 | 5 +-
18 files changed, 38 insertions(+), 164 deletions(-)
22 files changed, 45 insertions(+), 195 deletions(-)
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -75,10 +75,6 @@
android:title="@string/open_external_links_incognito_title"
android:summary="@string/open_external_links_incognito_summary"
android:defaultValue="false" />
- <Preference
- android:key="privacy_sandbox"
- android:title="@string/prefs_privacy_sandbox"
- android:fragment="org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment"/>
<PreferenceCategory
android:key="services_category"
android:title="@string/services_category_title">
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
@@ -29,8 +29,6 @@ import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsFragment;
import org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings;
import org.chromium.chrome.browser.privacy_review.PrivacyReviewDialog;
-import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxReferrer;
-import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.settings.ChromeManagedPreferenceDelegate;
import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
@@ -76,7 +74,6 @@ 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";
- private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox";
private static final String PREF_PRIVACY_REVIEW = "privacy_review";
private static final String PREF_INCOGNITO_LOCK = "incognito_lock";
private static final String PREF_PHONE_AS_A_SECURITY_KEY = "phone_as_a_security_key";
@@ -111,18 +108,6 @@ public class PrivacySettings
SettingsUtils.addPreferencesFromResource(this, R.xml.privacy_preferences);
getActivity().setTitle(R.string.prefs_privacy_security);
- findPreference(PREF_PRIVACY_SANDBOX)
- .setSummary(PrivacySandboxSettingsFragment.getStatusString(getContext()));
- // Overwrite the click listener to pass a correct referrer to the fragment.
- findPreference(PREF_PRIVACY_SANDBOX).setOnPreferenceClickListener(preference -> {
- Bundle fragmentArgs = new Bundle();
- fragmentArgs.putInt(PrivacySandboxSettingsFragment.PRIVACY_SANDBOX_REFERRER,
- PrivacySandboxReferrer.PRIVACY_SETTINGS);
- new SettingsLauncherImpl().launchSettingsActivity(
- getContext(), PrivacySandboxSettingsFragment.class, fragmentArgs);
- return true;
- });
-
Preference privacyReviewPreference = findPreference(PREF_PRIVACY_REVIEW);
if (!ChromeFeatureList.isEnabled(ChromeFeatureList.PRIVACY_REVIEW)) {
getPreferenceScreen().removePreference(privacyReviewPreference);
@@ -321,12 +306,6 @@ public class PrivacySettings
forceNoJit.setOnPreferenceChangeListener(this);
forceNoJit.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
- Preference privacySandboxPreference = findPreference(PREF_PRIVACY_SANDBOX);
- if (privacySandboxPreference != null) {
- privacySandboxPreference.setSummary(
- PrivacySandboxSettingsFragment.getStatusString(getContext()));
- }
-
mIncognitoLockSettings.updateIncognitoReauthPreferenceIfNeeded(getActivity());
}
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
@@ -2798,6 +2798,10 @@ bool ChromeContentBrowserClient::IsConversionMeasurementOperationAllowed(
@@ -2792,6 +2792,10 @@ bool ChromeContentBrowserClient::IsConversionMeasurementOperationAllowed(
const url::Origin* impression_origin,
const url::Origin* conversion_origin,
const url::Origin* reporting_origin) {
@ -169,51 +240,18 @@ diff --git a/chrome/browser/federated_learning/floc_id_provider_impl.cc b/chrome
if (url_result.visit_time() < history_begin_time)
history_begin_time = url_result.visit_time();
diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc b/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
--- a/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
+++ b/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
@@ -181,6 +181,9 @@ PrivacySandboxSettings::PrivacySandboxSettings(
diff --git a/chrome/browser/privacy_sandbox/generated_floc_pref.cc b/chrome/browser/privacy_sandbox/generated_floc_pref.cc
--- a/chrome/browser/privacy_sandbox/generated_floc_pref.cc
+++ b/chrome/browser/privacy_sandbox/generated_floc_pref.cc
@@ -35,7 +35,7 @@ extensions::settings_private::SetPrefResult GeneratedFlocPref::SetPref(
return extensions::settings_private::SetPrefResult::PREF_NOT_MODIFIABLE;
// as default, privacy sandbox is disabled
pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, false);
+ // as default, floc is not enabled
+ pref_service_->SetBoolean(prefs::kPrivacySandboxFlocEnabled, false);
+
// On first entering the privacy sandbox experiment, users may have the
// privacy sandbox disabled (or "reconciled") based on their current cookie
// settings (e.g. blocking 3P cookies). Depending on the state of the sync
@@ -291,7 +294,8 @@ bool PrivacySandboxSettings::IsFlocPrefEnabled() const {
profile_->GetPrefs()->SetBoolean(prefs::kPrivacySandboxFlocEnabled,
- value->GetBool());
+ false);
return extensions::settings_private::SetPrefResult::SUCCESS;
}
void PrivacySandboxSettings::SetFlocPrefEnabled(bool enabled) const {
- pref_service_->SetBoolean(prefs::kPrivacySandboxFlocEnabled, enabled);
+ // never enable floc
+ pref_service_->SetBoolean(prefs::kPrivacySandboxFlocEnabled, false);
base::RecordAction(base::UserMetricsAction(
enabled ? "Settings.PrivacySandbox.FlocEnabled"
: "Settings.PrivacySandbox.FlocDisabled"));
@@ -444,6 +448,7 @@ void PrivacySandboxSettings::MaybeReconcilePrivacySandboxPref() {
// this code could be eliminated in the future, as initially
// the feauture was tied to the cookies flag
pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, false);
+ pref_service_->SetBoolean(prefs::kPrivacySandboxFlocEnabled, false);
if((true))
return;
@@ -542,11 +547,8 @@ void PrivacySandboxSettings::ReconcilePrivacySandboxPref() {
void PrivacySandboxSettings::SetFlocDataAccessibleFromNow(
bool reset_calculate_timer) const {
- pref_service_->SetTime(prefs::kPrivacySandboxFlocDataAccessibleSince,
- base::Time::Now());
-
- for (auto& observer : observers_)
- observer.OnFlocDataAccessibleSinceUpdated(reset_calculate_timer);
+ // don't tell anyone, thanks.
+ pref_service_->ClearPref(prefs::kPrivacySandboxFlocDataAccessibleSince);
}
void PrivacySandboxSettings::StopObserving() {
diff --git a/components/federated_learning/features/features.cc b/components/federated_learning/features/features.cc
--- a/components/federated_learning/features/features.cc
+++ b/components/federated_learning/features/features.cc
@ -359,10 +397,94 @@ diff --git a/components/history/core/browser/url_row.h b/components/history/core
};
using VisitContentAnnotationFlags = uint64_t;
diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/privacy_sandbox/privacy_sandbox_prefs.cc
--- a/components/privacy_sandbox/privacy_sandbox_prefs.cc
+++ b/components/privacy_sandbox/privacy_sandbox_prefs.cc
@@ -34,7 +34,7 @@ namespace privacy_sandbox {
void RegisterProfilePrefs(PrefRegistrySimple* registry) {
registry->RegisterBooleanPref(
- prefs::kPrivacySandboxApisEnabled, true,
+ prefs::kPrivacySandboxApisEnabled, false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(
prefs::kPrivacySandboxManuallyControlled, false,
@@ -45,7 +45,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
registry->RegisterTimePref(prefs::kPrivacySandboxFlocDataAccessibleSince,
base::Time());
registry->RegisterBooleanPref(
- prefs::kPrivacySandboxFlocEnabled, true,
+ prefs::kPrivacySandboxFlocEnabled, false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterDictionaryPref(prefs::kPrivacySandboxFledgeJoinBlocked);
}
diff --git a/components/privacy_sandbox/privacy_sandbox_settings.cc b/components/privacy_sandbox/privacy_sandbox_settings.cc
--- a/components/privacy_sandbox/privacy_sandbox_settings.cc
+++ b/components/privacy_sandbox/privacy_sandbox_settings.cc
@@ -91,8 +91,7 @@ PrivacySandboxSettings::PrivacySandboxSettings(
PrivacySandboxSettings::~PrivacySandboxSettings() = default;
bool PrivacySandboxSettings::IsFlocAllowed() const {
- return pref_service_->GetBoolean(prefs::kPrivacySandboxFlocEnabled) &&
- pref_service_->GetBoolean(prefs::kPrivacySandboxApisEnabled);
+ return false;
}
bool PrivacySandboxSettings::IsFlocAllowedForContext(
@@ -115,11 +114,8 @@ base::Time PrivacySandboxSettings::FlocDataAccessibleSince() const {
void PrivacySandboxSettings::SetFlocDataAccessibleFromNow(
bool reset_calculate_timer) const {
- pref_service_->SetTime(prefs::kPrivacySandboxFlocDataAccessibleSince,
- base::Time::Now());
-
- for (auto& observer : observers_)
- observer.OnFlocDataAccessibleSinceUpdated(reset_calculate_timer);
+ // don't tell anyone, thanks.
+ pref_service_->ClearPref(prefs::kPrivacySandboxFlocDataAccessibleSince);
}
bool PrivacySandboxSettings::IsConversionMeasurementAllowed(
@@ -234,6 +230,8 @@ bool PrivacySandboxSettings::IsFledgeJoiningAllowed(
bool PrivacySandboxSettings::IsFledgeAllowed(
const url::Origin& top_frame_origin,
const url::Origin& auction_party) {
+ if ((true))
+ return false;
// If the sandbox is disabled, then FLEDGE is never allowed.
if (!pref_service_->GetBoolean(prefs::kPrivacySandboxApisEnabled))
return false;
@@ -262,12 +260,13 @@ std::vector<GURL> PrivacySandboxSettings::FilterFledgeAllowedParties(
}
bool PrivacySandboxSettings::IsPrivacySandboxAllowed() {
- return pref_service_->GetBoolean(prefs::kPrivacySandboxApisEnabled);
+ return false;
}
void PrivacySandboxSettings::SetPrivacySandboxEnabled(bool enabled) {
pref_service_->SetBoolean(prefs::kPrivacySandboxManuallyControlled, true);
- pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, enabled);
+ // never enable privacy sandbox
+ pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, false);
}
void PrivacySandboxSettings::OnCookiesCleared() {
@@ -286,6 +285,10 @@ bool PrivacySandboxSettings::IsPrivacySandboxAllowedForContext(
const GURL& url,
const absl::optional<url::Origin>& top_frame_origin,
const ContentSettingsForOneType& cookie_settings) const {
+ // even if prefs::kPrivacySandboxApisEnabled and
+ // prefs::kPrivacySandboxFlocEnabled are always false
+ if ((true))
+ return false; // guard this code path
if (!pref_service_->GetBoolean(prefs::kPrivacySandboxApisEnabled))
return false;
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
@@ -890,11 +890,11 @@ const base::Feature kSendCnameAliasesToSubresourceFilterFromRenderer{
@@ -895,11 +895,11 @@ const base::Feature kSendCnameAliasesToSubresourceFilterFromRenderer{
// API exposure will be disabled regardless of the OT config.
// (See https://github.com/WICG/floc.)
const base::Feature kInterestCohortAPIOriginTrial{
@ -411,10 +533,10 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
#include "third_party/blink/renderer/bindings/core/v8/v8_element_creation_options.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_element_registration_options.h"
-#include "third_party/blink/renderer/bindings/core/v8/v8_interest_cohort.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_observable_array_css_style_sheet.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_throw_dom_exception.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_union_elementcreationoptions_string.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_union_htmlscriptelement_svgscriptelement.h"
@@ -6043,8 +6042,7 @@ ScriptPromise Document::interestCohort(ScriptState* script_state,
@@ -6045,8 +6044,7 @@ ScriptPromise Document::interestCohort(ScriptState* script_state,
return ScriptPromise();
}
@ -424,7 +546,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
exception_state.ThrowDOMException(
DOMExceptionCode::kInvalidAccessError,
"The \"interest-cohort\" Permissions Policy denied the use of "
@@ -6056,33 +6054,6 @@ ScriptPromise Document::interestCohort(ScriptState* script_state,
@@ -6058,33 +6056,6 @@ ScriptPromise Document::interestCohort(ScriptState* script_state,
MakeGarbageCollected<ScriptPromiseResolver>(script_state);
ScriptPromise promise = resolver->Promise();
@ -499,7 +621,7 @@ diff --git a/third_party/blink/renderer/core/permissions_policy/permissions_poli
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
@@ -1259,12 +1259,11 @@
@@ -1256,12 +1256,11 @@
},
{
name: "InterestCohortAPI",
@ -513,6 +635,6 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+ depends_on: ["DisabledForBromite"]
},
{
name: "IntersectionObserverDocumentScrollingElementRoot",
name: "KeyboardAccessibleTooltip",
--
2.25.1

View file

@ -3,10 +3,41 @@ Date: Thu, 12 Oct 2017 08:15:17 +0200
Subject: Disable NTP remote suggestions by default
---
components/feed/core/shared_prefs/pref_names.cc | 4 ++--
components/ntp_snippets/features.cc | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
.../chrome/browser/feed/FeedSurfaceMediator.java | 13 ++++++++++---
components/feed/core/shared_prefs/pref_names.cc | 4 ++--
components/ntp_snippets/features.cc | 4 ++--
3 files changed, 14 insertions(+), 7 deletions(-)
diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java
--- a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java
+++ b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java
@@ -286,9 +286,13 @@ public class FeedSurfaceMediator
/** Update the content based on supervised user or enterprise policy. */
void updateContent() {
mFeedEnabled = FeedFeatures.isFeedEnabled();
- if (mFeedEnabled == !mTabToStreamMap.isEmpty()) {
- return;
- }
+ // Bromite needs the next lines removed because mFeedEnabled
+ // is always false and mTabToStreamMap never empty
+ //
+ // addHeaderAndStream is called at least once
+ // if (mFeedEnabled == !mTabToStreamMap.isEmpty()) {
+ // return;
+ // }
RecyclerView recyclerView = mCoordinator.getRecyclerView();
if (mSnapScrollHelper != null && recyclerView != null) {
@@ -442,6 +446,9 @@ public class FeedSurfaceMediator
}
private void addHeaderAndStream(String headerText, Stream stream) {
+ // Bromite also needs this early return because
+ // the first item inserted is the feed setting
+ if (FeedFeatures.isFeedEnabled() == false) return;
int tabId = mSectionHeaderModel.get(SectionHeaderListProperties.SECTION_HEADERS_KEY).size();
mTabToStreamMap.put(tabId, stream);
diff --git a/components/feed/core/shared_prefs/pref_names.cc b/components/feed/core/shared_prefs/pref_names.cc
--- a/components/feed/core/shared_prefs/pref_names.cc
+++ b/components/feed/core/shared_prefs/pref_names.cc

View file

@ -0,0 +1,233 @@
From: uazo <uazo@users.noreply.github.com>
Date: Tue, 25 Jan 2022 12:22:52 +0000
Subject: Disable all predictors code
---
.../optimization_guide/chrome_hints_manager.cc | 1 +
.../optimization_guide_keyed_service.cc | 1 -
.../prediction_model_download_manager.cc | 2 ++
chrome/common/chrome_features.cc | 4 ++--
.../optimization_guide/core/hints_fetcher.cc | 1 +
.../optimization_guide/core/hints_manager.cc | 2 ++
.../core/optimization_guide_features.cc | 16 ++++++++--------
.../core/prediction_model_fetcher_impl.cc | 1 +
components/optimization_guide/features.gni | 3 +--
components/permissions/features.cc | 2 +-
.../segmentation_platform/public/features.cc | 2 +-
third_party/blink/common/features.cc | 2 +-
12 files changed, 21 insertions(+), 16 deletions(-)
diff --git a/chrome/browser/optimization_guide/chrome_hints_manager.cc b/chrome/browser/optimization_guide/chrome_hints_manager.cc
--- a/chrome/browser/optimization_guide/chrome_hints_manager.cc
+++ b/chrome/browser/optimization_guide/chrome_hints_manager.cc
@@ -29,6 +29,7 @@ bool IsAllowedToFetchForNavigationPrediction(
const absl::optional<NavigationPredictorKeyedService::Prediction>
prediction) {
DCHECK(prediction);
+ if ((true)) return false;
if (prediction->prediction_source() !=
NavigationPredictorKeyedService::PredictionSource::
diff --git a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
--- a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
+++ b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
@@ -267,7 +267,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel(
void OptimizationGuideKeyedService::RegisterOptimizationTypes(
const std::vector<optimization_guide::proto::OptimizationType>&
optimization_types) {
- hints_manager_->RegisterOptimizationTypes(optimization_types);
}
optimization_guide::OptimizationGuideDecision
diff --git a/chrome/browser/optimization_guide/prediction/prediction_model_download_manager.cc b/chrome/browser/optimization_guide/prediction/prediction_model_download_manager.cc
--- a/chrome/browser/optimization_guide/prediction/prediction_model_download_manager.cc
+++ b/chrome/browser/optimization_guide/prediction/prediction_model_download_manager.cc
@@ -103,6 +103,7 @@ PredictionModelDownloadManager::PredictionModelDownloadManager(
PredictionModelDownloadManager::~PredictionModelDownloadManager() = default;
void PredictionModelDownloadManager::StartDownload(const GURL& download_url) {
+ if ((true)) return;
download::DownloadParams download_params;
download_params.client =
download::DownloadClient::OPTIMIZATION_GUIDE_PREDICTION_MODELS;
@@ -208,6 +209,7 @@ void PredictionModelDownloadManager::OnDownloadFailed(const std::string& guid) {
absl::optional<std::pair<base::FilePath, base::FilePath>>
PredictionModelDownloadManager::ProcessDownload(
const base::FilePath& file_path) {
+ if ((true)) return absl::nullopt;
DCHECK(background_task_runner_->RunsTasksInCurrentSequence());
if (!switches::ShouldSkipModelDownloadVerificationForTesting()) {
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
@@ -823,7 +823,7 @@ const base::Feature kPermissionAuditing{"PermissionAuditing",
// Enables using the prediction service for permission prompts. We will keep
// this feature in order to allow us to update the holdback chance via finch.
const base::Feature kPermissionPredictions{"PermissionPredictions",
- base::FEATURE_ENABLED_BY_DEFAULT};
+ base::FEATURE_DISABLED_BY_DEFAULT};
// The holdback chance is 30% but it can also be configured/updated
// through finch if needed.
@@ -834,7 +834,7 @@ const base::FeatureParam<double> kPermissionPredictionsHoldbackChance(
// Enables using the prediction service for geolocation permission prompts.
const base::Feature kPermissionGeolocationPredictions{
- "PermissionGeolocationPredictions", base::FEATURE_DISABLED_BY_DEFAULT};
+ "PermissionGeolocationPredictions", base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
const base::FeatureParam<double>
kPermissionGeolocationPredictionsHoldbackChance(
diff --git a/components/optimization_guide/core/hints_fetcher.cc b/components/optimization_guide/core/hints_fetcher.cc
--- a/components/optimization_guide/core/hints_fetcher.cc
+++ b/components/optimization_guide/core/hints_fetcher.cc
@@ -171,6 +171,7 @@ bool HintsFetcher::FetchOptimizationGuideServiceHints(
optimization_guide::proto::RequestContext request_context,
const std::string& locale,
HintsFetchedCallback hints_fetched_callback) {
+ if ((true)) return false;
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
DCHECK_GT(optimization_types.size(), 0u);
request_context_ = request_context;
diff --git a/components/optimization_guide/core/hints_manager.cc b/components/optimization_guide/core/hints_manager.cc
--- a/components/optimization_guide/core/hints_manager.cc
+++ b/components/optimization_guide/core/hints_manager.cc
@@ -1173,6 +1173,8 @@ OptimizationTypeDecision HintsManager::CanApplyOptimization(
proto::OptimizationType optimization_type,
OptimizationMetadata* optimization_metadata) {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+ if((true))
+ return optimization_guide::OptimizationTypeDecision::kNoHintAvailable;
ScopedCanApplyOptimizationLogger scoped_logger(optimization_type,
navigation_url);
diff --git a/components/optimization_guide/core/optimization_guide_features.cc b/components/optimization_guide/core/optimization_guide_features.cc
--- a/components/optimization_guide/core/optimization_guide_features.cc
+++ b/components/optimization_guide/core/optimization_guide_features.cc
@@ -32,7 +32,7 @@ const base::Feature kOptimizationHints {
#if BUILDFLAG(IS_IOS)
base::FEATURE_DISABLED_BY_DEFAULT
#else // !BUILDFLAG(IS_IOS)
- base::FEATURE_ENABLED_BY_DEFAULT
+ base::FEATURE_DISABLED_BY_DEFAULT
#endif // BUILDFLAG(IS_IOS)
};
@@ -43,7 +43,7 @@ const base::Feature kOptimizationHintsFieldTrials{
// Enables fetching from a remote Optimization Guide Service.
const base::Feature kRemoteOptimizationGuideFetching{
- "OptimizationHintsFetching", base::FEATURE_ENABLED_BY_DEFAULT};
+ "OptimizationHintsFetching", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kRemoteOptimizationGuideFetchingAnonymousDataConsent {
"OptimizationHintsFetchingAnonymousDataConsent",
@@ -62,15 +62,15 @@ const base::Feature kContextMenuPerformanceInfoAndRemoteHintFetching{
// Enables the prediction of optimization targets.
const base::Feature kOptimizationTargetPrediction{
- "OptimizationTargetPrediction", base::FEATURE_ENABLED_BY_DEFAULT};
+ "OptimizationTargetPrediction", base::FEATURE_DISABLED_BY_DEFAULT};
// Enables the downloading of models.
const base::Feature kOptimizationGuideModelDownloading {
"OptimizationGuideModelDownloading",
#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
- base::FEATURE_ENABLED_BY_DEFAULT
-#else // BUILD_WITH_TFLITE_LIB
base::FEATURE_DISABLED_BY_DEFAULT
+#else // BUILD_WITH_TFLITE_LIB
+ base::FEATURE_DISABLED_BY_DEFAULT // guard this
#endif // !BUILD_WITH_TFLITE_LIB
};
@@ -80,7 +80,7 @@ const base::Feature kPageContentAnnotations{"PageContentAnnotations",
// Enables push notification of hints.
const base::Feature kPushNotifications{"OptimizationGuidePushNotifications",
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
// This feature flag does not turn off any behavior, it is only used for
// experiment parameters.
@@ -97,7 +97,7 @@ const base::Feature kPageVisibilityBatchAnnotations{
"PageVisibilityBatchAnnotations", base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kUseLocalPageEntitiesMetadataProvider{
- "UseLocalPageEntitiesMetadataProvider", base::FEATURE_DISABLED_BY_DEFAULT};
+ "UseLocalPageEntitiesMetadataProvider", base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
const base::Feature kBatchAnnotationsValidation{
"BatchAnnotationsValidation", base::FEATURE_DISABLED_BY_DEFAULT};
@@ -314,7 +314,7 @@ size_t MaxURLKeyedHintCacheSize() {
bool ShouldPersistHintsToDisk() {
return GetFieldTrialParamByFeatureAsBool(kOptimizationHints,
- "persist_hints_to_disk", true);
+ "persist_hints_to_disk", false);
}
bool ShouldOverrideOptimizationTargetDecisionForMetricsPurposes(
diff --git a/components/optimization_guide/core/prediction_model_fetcher_impl.cc b/components/optimization_guide/core/prediction_model_fetcher_impl.cc
--- a/components/optimization_guide/core/prediction_model_fetcher_impl.cc
+++ b/components/optimization_guide/core/prediction_model_fetcher_impl.cc
@@ -53,6 +53,7 @@ bool PredictionModelFetcherImpl::FetchOptimizationGuideServiceModels(
proto::RequestContext request_context,
const std::string& locale,
ModelsFetchedCallback models_fetched_callback) {
+ if ((true)) return false;
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
if (network_connection_tracker_->IsOffline()) {
diff --git a/components/optimization_guide/features.gni b/components/optimization_guide/features.gni
--- a/components/optimization_guide/features.gni
+++ b/components/optimization_guide/features.gni
@@ -7,8 +7,7 @@ import("//build/config/chrome_build.gni")
declare_args() {
# This enables build with TFLite library.
# Currently only available for Desktop and Android.
- build_with_tflite_lib = is_android || (is_win && target_cpu != "arm64") ||
- is_linux || is_mac || is_chromeos || is_fuchsia
+ build_with_tflite_lib = false
# You can set the variable 'build_with_internal_optimization_guide' to true
# even in a developer build in args.gn. Setting this variable explicitly to true will
diff --git a/components/permissions/features.cc b/components/permissions/features.cc
--- a/components/permissions/features.cc
+++ b/components/permissions/features.cc
@@ -69,7 +69,7 @@ const base::Feature kPermissionPredictionServiceUseUrlOverride{
const base::Feature kPermissionOnDeviceNotificationPredictions{
"PermissionOnDeviceNotificationPredictions",
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
} // namespace features
namespace feature_params {
diff --git a/components/segmentation_platform/public/features.cc b/components/segmentation_platform/public/features.cc
--- a/components/segmentation_platform/public/features.cc
+++ b/components/segmentation_platform/public/features.cc
@@ -12,7 +12,7 @@ namespace features {
const base::Feature kSegmentationPlatformFeature {
"SegmentationPlatform",
#if BUILDFLAG(IS_ANDROID)
- base::FEATURE_ENABLED_BY_DEFAULT
+ base::FEATURE_DISABLED_BY_DEFAULT
#else
base::FEATURE_DISABLED_BY_DEFAULT
#endif
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
@@ -161,7 +161,7 @@ const base::Feature kViewportHeightClientHintHeader{
const base::Feature kNavigationPredictor {
"NavigationPredictor",
#if defined(OS_ANDROID)
- base::FEATURE_ENABLED_BY_DEFAULT
+ base::FEATURE_DISABLED_BY_DEFAULT
#else
base::FEATURE_DISABLED_BY_DEFAULT
#endif
--
2.25.1

View file

@ -9,12 +9,12 @@ Subject: Disable autofill assistant by default
diff --git a/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferencesUtil.java b/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferencesUtil.java
--- a/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferencesUtil.java
+++ b/chrome/android/features/autofill_assistant/public/java/src/org/chromium/chrome/browser/autofill_assistant/AutofillAssistantPreferencesUtil.java
@@ -22,7 +22,7 @@ public class AutofillAssistantPreferencesUtil {
@@ -32,7 +32,7 @@ public class AutofillAssistantPreferencesUtil {
/** Checks whether the Autofill Assistant switch preference in settings is on. */
static boolean isAutofillAssistantSwitchOn() {
return SharedPreferencesManager.getInstance().readBoolean(
- ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED, true);
+ ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED, false);
- return getAssistantEnabledPreference(true);
+ return getAssistantEnabledPreference(false);
}
/** Checks whether proactive help is enabled. */

View file

@ -8,29 +8,29 @@ the handling of attributions via intents between apps.
This patch enforces the deactivation by preventing the report from
being sent and being saved to disk, although it is currently in uncalled code.
---
chrome/android/java/AndroidManifest.xml | 8 --------
.../AttributionIntentHandlerFactory.java | 9 +--------
.../flags/android/chrome_feature_list.cc | 2 +-
.../embedder_support/origin_trials/features.cc | 3 ++-
.../render_view_context_menu_base.cc | 3 ---
.../browser/android/navigation_handle_proxy.cc | 10 ----------
.../attribution_reporting/attribution_host.cc | 8 --------
.../attribution_reporting/attribution_host.h | 3 ---
.../attribution_host_utils.cc | 6 ++++++
.../attribution_network_sender_impl.cc | 17 ++++++++++-------
.../attribution_storage_sql.cc | 2 +-
.../navigation_controller_android.cc | 16 ----------------
content/browser/storage_partition_impl.cc | 7 +------
.../browser/AttributionReporterImpl.java | 4 ----
content/public/browser/navigation_controller.cc | 1 -
third_party/blink/common/features.cc | 2 +-
.../platform/runtime_enabled_features.json5 | 13 +++++++++----
17 files changed, 32 insertions(+), 82 deletions(-)
chrome/android/java/AndroidManifest.xml | 8 --------
.../AttributionIntentHandlerFactory.java | 9 +--------
.../browser/flags/android/chrome_feature_list.cc | 2 +-
.../embedder_support/origin_trials/features.cc | 3 ++-
.../render_view_context_menu_base.cc | 3 ---
.../browser/android/navigation_handle_proxy.cc | 10 ----------
.../attribution_reporting/attribution_host.cc | 8 --------
.../attribution_reporting/attribution_host.h | 3 ---
.../attribution_host_utils.cc | 6 ++++++
.../attribution_network_sender_impl.cc | 14 +++++++-------
.../attribution_storage_sql.cc | 2 +-
.../navigation_controller_android.cc | 16 ----------------
content/browser/storage_partition_impl.cc | 7 +------
.../content/browser/AttributionReporterImpl.java | 4 ----
content/public/browser/navigation_controller.cc | 1 -
third_party/blink/common/features.cc | 2 +-
.../platform/runtime_enabled_features.json5 | 13 +++++++++----
17 files changed, 29 insertions(+), 82 deletions(-)
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
@@ -1264,14 +1264,6 @@ by a child template that "extends" this file.
@@ -1273,14 +1273,6 @@ by a child template that "extends" this file.
android:readPermission="android.permission.GLOBAL_SEARCH" />
</provider>
@ -67,7 +67,7 @@ diff --git a/chrome/browser/attribution_reporting/android/internal/java/src/org/
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
@@ -428,7 +428,7 @@ const base::Feature kAppMenuMobileSiteOption{"AppMenuMobileSiteOption",
@@ -439,7 +439,7 @@ const base::Feature kAppMenuMobileSiteOption{"AppMenuMobileSiteOption",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kAppToWebAttribution{"AppToWebAttribution",
@ -126,7 +126,7 @@ diff --git a/content/browser/android/navigation_handle_proxy.cc b/content/browse
diff --git a/content/browser/attribution_reporting/attribution_host.cc b/content/browser/attribution_reporting/attribution_host.cc
--- a/content/browser/attribution_reporting/attribution_host.cc
+++ b/content/browser/attribution_reporting/attribution_host.cc
@@ -420,14 +420,6 @@ void AttributionHost::BindReceiver(
@@ -428,14 +428,6 @@ void AttributionHost::BindReceiver(
conversion_host->receivers_.Bind(rfh, std::move(receiver));
}
@ -144,12 +144,12 @@ diff --git a/content/browser/attribution_reporting/attribution_host.cc b/content
diff --git a/content/browser/attribution_reporting/attribution_host.h b/content/browser/attribution_reporting/attribution_host.h
--- a/content/browser/attribution_reporting/attribution_host.h
+++ b/content/browser/attribution_reporting/attribution_host.h
@@ -58,9 +58,6 @@ class CONTENT_EXPORT AttributionHost
@@ -57,9 +57,6 @@ class CONTENT_EXPORT AttributionHost
const url::Origin& impression_origin,
const blink::Impression& impression);
- static blink::mojom::ImpressionPtr MojoImpressionFromImpression(
- const blink::Impression& impression) WARN_UNUSED_RESULT;
- const blink::Impression& impression);
-
// Overrides the target object to bind |receiver| to in BindReceiver().
static void SetReceiverImplForTesting(AttributionHost* impl);
@ -166,7 +166,7 @@ diff --git a/content/browser/attribution_reporting/attribution_host_utils.cc b/c
namespace content {
namespace attribution_host_utils {
@@ -81,6 +83,10 @@ absl::optional<blink::Impression> ParseImpressionFromApp(
@@ -82,6 +84,10 @@ absl::optional<blink::Impression> ParseImpressionFromApp(
// Java API should have rejected these already.
DCHECK(!source_event_id.empty() && !destination.empty());
@ -180,32 +180,29 @@ diff --git a/content/browser/attribution_reporting/attribution_host_utils.cc b/c
diff --git a/content/browser/attribution_reporting/attribution_network_sender_impl.cc b/content/browser/attribution_reporting/attribution_network_sender_impl.cc
--- a/content/browser/attribution_reporting/attribution_network_sender_impl.cc
+++ b/content/browser/attribution_reporting/attribution_network_sender_impl.cc
@@ -143,13 +143,9 @@ void AttributionNetworkSenderImpl::SendReport(
LogMetricsOnReportSend(report);
@@ -114,13 +114,8 @@ void AttributionNetworkSenderImpl::SendReport(
network::SimpleURLLoader::RETRY_ON_NAME_NOT_RESOLVED;
simple_url_loader_ptr->SetRetryOptions(/*max_retries=*/1, retry_mode);
- // Unretained is safe because the URLLoader is owned by |this| and will be
- // deleted before |this|.
- simple_url_loader_ptr->DownloadHeadersOnly(
- url_loader_factory_.get(),
- base::BindOnce(&AttributionNetworkSenderImpl::OnReportSent,
- base::Unretained(this), std::move(it), std::move(report),
- base::Unretained(this), std::move(it),
- std::move(sent_callback)));
+ // this code is never called but if it were, nothing would be sent
+ OnReportSent(std::move(it), std::move(report), std::move(sent_callback),
+ nullptr);
+ // this is never called but if it were, nothing would be sent
+ OnReportSent(std::move(it), std::move(sent_callback), nullptr);
}
void AttributionNetworkSenderImpl::SetURLLoaderFactoryForTesting(
@@ -162,6 +158,13 @@ void AttributionNetworkSenderImpl::OnReportSent(
AttributionReport report,
@@ -132,6 +127,11 @@ void AttributionNetworkSenderImpl::OnReportSent(
UrlLoaderList::iterator it,
ReportSentCallback sent_callback,
scoped_refptr<net::HttpResponseHeaders> headers) {
+ if ((true)) {
+ std::move(sent_callback)
+ .Run(SentReport(std::move(report),
+ SentReport::Status::kSent,
+ /*response_code*/200));
+ .Run(SendResult(SendResult::Status::kSent, 200));
+ return;
+ }
network::SimpleURLLoader* loader = it->get();
@ -214,7 +211,7 @@ diff --git a/content/browser/attribution_reporting/attribution_network_sender_im
diff --git a/content/browser/attribution_reporting/attribution_storage_sql.cc b/content/browser/attribution_reporting/attribution_storage_sql.cc
--- a/content/browser/attribution_reporting/attribution_storage_sql.cc
+++ b/content/browser/attribution_reporting/attribution_storage_sql.cc
@@ -271,7 +271,7 @@ void AttributionStorageSql::RunInMemoryForTesting() {
@@ -270,7 +270,7 @@ void AttributionStorageSql::RunInMemoryForTesting() {
}
// static
@ -252,7 +249,7 @@ diff --git a/content/browser/renderer_host/navigation_controller_android.cc b/co
diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage_partition_impl.cc
--- a/content/browser/storage_partition_impl.cc
+++ b/content/browser/storage_partition_impl.cc
@@ -1305,12 +1305,7 @@ void StoragePartitionImpl::Initialize(
@@ -1308,12 +1308,7 @@ void StoragePartitionImpl::Initialize(
bucket_context_ = base::MakeRefCounted<BucketContext>();
bucket_context_->Initialize(quota_manager_proxy);
@ -327,7 +324,7 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
{
name: "Accelerated2dCanvas",
settable_from_internals: true,
@@ -482,13 +489,11 @@
@@ -494,13 +501,11 @@
},
{
name: "ConversionMeasurement",

View file

@ -29,7 +29,7 @@ diff --git a/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/fe
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
@@ -81,7 +81,7 @@ public class CachedFeatureFlags {
@@ -82,7 +82,7 @@ public class CachedFeatureFlags {
.put(ChromeFeatureList.TAB_TO_GTS_ANIMATION, true)
.put(ChromeFeatureList.TEST_DEFAULT_DISABLED, false)
.put(ChromeFeatureList.TEST_DEFAULT_ENABLED, true)

View file

@ -50,7 +50,7 @@ diff --git a/android_webview/nonembedded/java/src/org/chromium/android_webview/s
diff --git a/chrome/browser/metrics/chrome_metrics_services_manager_client.cc b/chrome/browser/metrics/chrome_metrics_services_manager_client.cc
--- a/chrome/browser/metrics/chrome_metrics_services_manager_client.cc
+++ b/chrome/browser/metrics/chrome_metrics_services_manager_client.cc
@@ -189,6 +189,8 @@ ChromeMetricsServicesManagerClient::GetMetricsStateManagerForTesting() {
@@ -190,6 +190,8 @@ ChromeMetricsServicesManagerClient::GetMetricsStateManagerForTesting() {
void ChromeMetricsServicesManagerClient::CreateFallbackSamplingTrial(
version_info::Channel channel,
base::FeatureList* feature_list) {
@ -87,7 +87,7 @@ diff --git a/components/variations/android/java/src/org/chromium/components/vari
diff --git a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
--- a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
+++ b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
@@ -45,7 +45,7 @@ public class VariationsSeedFetcher {
@@ -70,7 +70,7 @@ public class VariationsSeedFetcher {
}
private static final String VARIATIONS_SERVER_URL =
@ -96,7 +96,7 @@ diff --git a/components/variations/android/java/src/org/chromium/components/vari
private static final int READ_TIMEOUT = 3000; // time in ms
private static final int REQUEST_TIMEOUT = 1000; // time in ms
@@ -184,24 +184,9 @@ public class VariationsSeedFetcher {
@@ -209,24 +209,9 @@ public class VariationsSeedFetcher {
assert !ThreadUtils.runningOnUiThread();
// Prevent multiple simultaneous fetches
synchronized (sLock) {
@ -123,7 +123,7 @@ diff --git a/components/variations/android/java/src/org/chromium/components/vari
// VARIATIONS_INITIALIZED_PREF should still be set to true when exceptions occur
prefs.edit().putBoolean(VARIATIONS_INITIALIZED_PREF, true).apply();
}
@@ -230,7 +215,7 @@ public class VariationsSeedFetcher {
@@ -255,7 +240,7 @@ public class VariationsSeedFetcher {
* @param channel the channel parameter to pass to the server via a URL param.
* @return the object holds the request result and seed data with its related header fields.
*/

View file

@ -9,7 +9,7 @@ Subject: Disable idle detection
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
@@ -393,7 +393,7 @@ const base::Feature kHistoryPreventSandboxedNavigation{
@@ -405,7 +405,7 @@ const base::Feature kGreaseUACH{"GreaseUACH", base::FEATURE_ENABLED_BY_DEFAULT};
// this feature, the experimental web platform features flag should be set,
// or the site should obtain an Origin Trial token.
const base::Feature kIdleDetection{"IdleDetection",

View file

@ -11,9 +11,9 @@ 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
@@ -41,26 +41,15 @@ const base::Feature kDialEnforceUrlIPAddress{"DialEnforceUrlIPAddress",
@@ -42,26 +42,15 @@ const base::Feature kDialEnforceUrlIPAddress{"DialEnforceUrlIPAddress",
base::FEATURE_DISABLED_BY_DEFAULT};
#endif // !defined(OS_ANDROID)
#endif // !BUILDFLAG(IS_ANDROID)
-namespace {
-const PrefService::Preference* GetMediaRouterPref(
@ -41,17 +41,17 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse
+}
+
+/*
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_ANDROID)
if (!base::FeatureList::IsEnabled(kMediaRouter))
return false;
@@ -84,7 +73,7 @@ bool MediaRouterEnabled(content::BrowserContext* context) {
@@ -85,7 +74,7 @@ bool MediaRouterEnabled(content::BrowserContext* context) {
return allowed;
}
return true;
-}
+}*/
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_ANDROID)
void RegisterLocalStatePrefs(PrefRegistrySimple* registry) {
diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profile.cc
--- a/chrome/browser/profiles/profile.cc
@ -68,14 +68,14 @@ 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
@@ -415,7 +415,7 @@ void ProfileImpl::RegisterProfilePrefs(
@@ -416,7 +416,7 @@ void ProfileImpl::RegisterProfilePrefs(
#endif
registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false);
- registry->RegisterBooleanPref(prefs::kEnableMediaRouter, true);
+ registry->RegisterBooleanPref(prefs::kEnableMediaRouter, false);
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_ANDROID)
registry->RegisterBooleanPref(prefs::kShowCastIconInToolbar, false);
#endif // !defined(OS_ANDROID)
#endif // !BUILDFLAG(IS_ANDROID)
--
2.25.1

View file

@ -66,7 +66,7 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br
diff --git a/components/ntp_tiles/BUILD.gn b/components/ntp_tiles/BUILD.gn
--- a/components/ntp_tiles/BUILD.gn
+++ b/components/ntp_tiles/BUILD.gn
@@ -21,8 +21,6 @@ static_library("ntp_tiles") {
@@ -23,8 +23,6 @@ static_library("ntp_tiles") {
"icon_cacher.h",
"icon_cacher_impl.cc",
"icon_cacher_impl.h",
@ -75,7 +75,7 @@ diff --git a/components/ntp_tiles/BUILD.gn b/components/ntp_tiles/BUILD.gn
"most_visited_sites.cc",
"most_visited_sites.h",
"ntp_tile.cc",
@@ -86,7 +84,6 @@ source_set("unit_tests") {
@@ -92,7 +90,6 @@ source_set("unit_tests") {
"custom_links_manager_impl_unittest.cc",
"custom_links_store_unittest.cc",
"icon_cacher_impl_unittest.cc",
@ -86,7 +86,7 @@ diff --git a/components/ntp_tiles/BUILD.gn b/components/ntp_tiles/BUILD.gn
diff --git a/components/ntp_tiles/most_visited_sites.cc b/components/ntp_tiles/most_visited_sites.cc
--- a/components/ntp_tiles/most_visited_sites.cc
+++ b/components/ntp_tiles/most_visited_sites.cc
@@ -724,8 +724,6 @@ void MostVisitedSites::SaveTilesAndNotify(
@@ -729,8 +729,6 @@ void MostVisitedSites::SaveTilesAndNotify(
: new_tiles;
if (fixed_tiles.size() != new_tiles.size()) {

View file

@ -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
@@ -980,7 +980,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
@@ -979,7 +979,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
registry->RegisterBooleanPref(metrics::prefs::kMetricsReportingEnabled,

View file

@ -10,15 +10,15 @@ Subject: Disable minidump upload scheduling
diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc
--- a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc
+++ b/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc
@@ -297,7 +297,7 @@ void EndpointFetcher::OnResponseFetched(
@@ -337,7 +337,7 @@ void EndpointFetcher::OnResponseFetched(
auto response = std::make_unique<EndpointResponse>();
// TODO(crbug.com/993393) Add more detailed error messaging
std::string net_error = net::ErrorToString(simple_url_loader_->NetError());
- VLOG(1) << __func__ << " with response error: " << net_error;
+ LOG(ERROR) << __func__ << " with response error: " << net_error;
response->response = "There was a response error";
simple_url_loader_.reset();
std::move(endpoint_fetcher_callback).Run(std::move(response));
}
diff --git a/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java b/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java
--- a/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java
+++ b/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java

View file

@ -23,7 +23,7 @@ diff --git a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc b/c
diff --git a/components/url_formatter/url_formatter.cc b/components/url_formatter/url_formatter.cc
--- a/components/url_formatter/url_formatter.cc
+++ b/components/url_formatter/url_formatter.cc
@@ -467,13 +467,13 @@ ComponentResult IDNToUnicodeOneComponent(
@@ -492,13 +492,13 @@ bool HasTwoViewSourceSchemes(base::StringPiece spec) {
} // namespace
const FormatUrlType kFormatUrlOmitNothing = 0;

View file

@ -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
@@ -1855,10 +1855,8 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
@@ -1849,10 +1849,8 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
}
PluginData* LocalFrame::GetPluginData() const {

View file

@ -1,142 +0,0 @@
From: uazo <uazo@users.noreply.github.com>
Date: Sat, 13 Nov 2021 09:17:06 +0000
Subject: Disable privacy sandbox
Remove the ui from the settings and set the flags to inactive
---
.../java/res/xml/privacy_preferences.xml | 4 ---
.../privacy/settings/PrivacySettings.java | 19 -----------
.../privacy_sandbox_settings.cc | 34 +++++++++----------
3 files changed, 16 insertions(+), 41 deletions(-)
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -75,10 +75,6 @@
android:title="@string/open_external_links_incognito_title"
android:summary="@string/open_external_links_incognito_summary"
android:defaultValue="false" />
- <Preference
- android:key="privacy_sandbox"
- android:title="@string/prefs_privacy_sandbox"
- android:fragment="org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment"/>
<PreferenceCategory
android:key="services_category"
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
@@ -74,7 +74,6 @@ 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";
- private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox";
private static final String PREF_PRIVACY_REVIEW = "privacy_review";
private static final String PREF_INCOGNITO_LOCK = "incognito_lock";
@@ -106,18 +105,6 @@ public class PrivacySettings
SettingsUtils.addPreferencesFromResource(this, R.xml.privacy_preferences);
getActivity().setTitle(R.string.prefs_privacy_security);
- findPreference(PREF_PRIVACY_SANDBOX)
- .setSummary(PrivacySandboxSettingsFragment.getStatusString(getContext()));
- // Overwrite the click listener to pass a correct referrer to the fragment.
- findPreference(PREF_PRIVACY_SANDBOX).setOnPreferenceClickListener(preference -> {
- Bundle fragmentArgs = new Bundle();
- fragmentArgs.putInt(PrivacySandboxSettingsFragment.PRIVACY_SANDBOX_REFERRER,
- PrivacySandboxReferrer.PRIVACY_SETTINGS);
- new SettingsLauncherImpl().launchSettingsActivity(
- getContext(), PrivacySandboxSettingsFragment.class, fragmentArgs);
- return true;
- });
-
Preference privacyReviewPreference = findPreference(PREF_PRIVACY_REVIEW);
if (!ChromeFeatureList.isEnabled(ChromeFeatureList.PRIVACY_REVIEW)) {
getPreferenceScreen().removePreference(privacyReviewPreference);
@@ -312,12 +299,6 @@ public class PrivacySettings
forceNoJit.setOnPreferenceChangeListener(this);
forceNoJit.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
- Preference privacySandboxPreference = findPreference(PREF_PRIVACY_SANDBOX);
- if (privacySandboxPreference != null) {
- privacySandboxPreference.setSummary(
- PrivacySandboxSettingsFragment.getStatusString(getContext()));
- }
-
mIncognitoLockSettings.updateIncognitoReauthPreferenceIfNeeded(getActivity());
}
diff --git a/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc b/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
--- a/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
+++ b/chrome/browser/privacy_sandbox/privacy_sandbox_settings.cc
@@ -111,23 +111,8 @@ bool ThirdPartyCookiesDisabledByPolicy(
bool ShouldDisablePrivacySandbox(
content_settings::CookieSettings* cookie_settings,
PrefService* prefs) {
- // If a user has already expressed control over the Privacy Sandbox preference
- // on any of their devices there is no need to disable it.
- if (prefs->GetBoolean(prefs::kPrivacySandboxManuallyControlled))
- return false;
-
- auto cookie_controls_mode_value =
- static_cast<content_settings::CookieControlsMode>(
- prefs->GetInteger(prefs::kCookieControlsMode));
-
- auto default_cookie_setting =
- cookie_settings->GetDefaultCookieSetting(/*provider_id=*/nullptr);
-
- // The Privacy Sandbox preference should be disabled if 3P cookies or all
- // cookies are blocked.
- return (cookie_controls_mode_value ==
- content_settings::CookieControlsMode::kBlockThirdParty ||
- default_cookie_setting == ContentSetting::CONTENT_SETTING_BLOCK);
+ // privacy sandbox is always disabled
+ return true;
}
// Returns whether FLoC is allowable by the current state of |pref_service|.
@@ -194,6 +179,8 @@ PrivacySandboxSettings::PrivacySandboxSettings(
base::BindRepeating(&PrivacySandboxSettings::OnPrivacySandboxPrefChanged,
base::Unretained(this)));
+ // as default, privacy sandbox is disabled
+ pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, false);
// On first entering the privacy sandbox experiment, users may have the
// privacy sandbox disabled (or "reconciled") based on their current cookie
// settings (e.g. blocking 3P cookies). Depending on the state of the sync
@@ -383,7 +370,8 @@ bool PrivacySandboxSettings::IsPrivacySandboxManaged() {
void PrivacySandboxSettings::SetPrivacySandboxEnabled(bool enabled) {
pref_service_->SetBoolean(prefs::kPrivacySandboxManuallyControlled, true);
- pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, enabled);
+ // never enable privacy sandbox
+ pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, false);
}
void PrivacySandboxSettings::OnCookiesCleared() {
@@ -437,6 +425,10 @@ bool PrivacySandboxSettings::IsPrivacySandboxAllowedForContext(
const GURL& url,
const absl::optional<url::Origin>& top_frame_origin,
const ContentSettingsForOneType& cookie_settings) const {
+ // even if prefs::kPrivacySandboxApisEnabled and
+ // prefs::kPrivacySandboxFlocEnabled are always false
+ if ((true))
+ return false; // guard this code path
if (!pref_service_->GetBoolean(prefs::kPrivacySandboxApisEnabled))
return false;
@@ -449,6 +441,12 @@ bool PrivacySandboxSettings::IsPrivacySandboxAllowedForContext(
}
void PrivacySandboxSettings::MaybeReconcilePrivacySandboxPref() {
+ // this code could be eliminated in the future, as initially
+ // the feauture was tied to the cookies flag
+ pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabled, false);
+ if((true))
+ return;
+
// No need to reconcile preferences if it has already happened.
if (pref_service_->GetBoolean(prefs::kPrivacySandboxPreferencesReconciled)) {
LogPrivacySandboxState();
--
2.25.1

View file

@ -9,8 +9,6 @@ Disable CrowdDeny feature
.../res/xml/google_services_preferences.xml | 5 --
.../android/java/res/xml/main_preferences.xml | 5 --
.../java/res/xml/privacy_preferences.xml | 9 ---
.../EnhancedProtectionPromoController.java | 8 --
.../EnhancedProtectionPromoUtils.java | 3 +-
.../privacy/settings/PrivacySettings.java | 40 ----------
.../SafeBrowsingSettingsLauncher.java | 8 --
.../usage_stats/UsageStatsConsentDialog.java | 5 --
@ -88,7 +86,7 @@ Disable CrowdDeny feature
.../file_system_access_permission_context.h | 6 --
weblayer/BUILD.gn | 1 -
weblayer/test/BUILD.gn | 1 -
82 files changed, 187 insertions(+), 675 deletions(-)
80 files changed, 186 insertions(+), 665 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
@ -146,48 +144,10 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
<org.chromium.components.browser_ui.settings.ChromeBasePreference
android:key="secure_dns"
android:title="@string/settings_secure_dns_title"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoController.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoController.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoController.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoController.java
@@ -16,8 +16,6 @@ import androidx.appcompat.content.res.AppCompatResources;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ntp.cards.promo.enhanced_protection.EnhancedProtectionPromoUtils.EnhancedProtectionPromoAction;
import org.chromium.chrome.browser.profiles.Profile;
-import org.chromium.chrome.browser.safe_browsing.metrics.SettingsAccessPoint;
-import org.chromium.chrome.browser.safe_browsing.settings.SafeBrowsingSettingsFragment;
import org.chromium.chrome.browser.settings.SettingsLauncherImpl;
import org.chromium.components.browser_ui.settings.SettingsLauncher;
import org.chromium.components.browser_ui.widget.promo.PromoCardCoordinator;
@@ -171,12 +169,6 @@ public class EnhancedProtectionPromoController {
}
private void onPrimaryButtonClicked() {
- EnhancedProtectionPromoUtils.recordEnhancedProtectionPromoEvent(
- EnhancedProtectionPromoAction.ACCEPTED);
- SettingsLauncher launcher = new SettingsLauncherImpl();
- launcher.launchSettingsActivity(mContext, SafeBrowsingSettingsFragment.class,
- SafeBrowsingSettingsFragment.createArguments(
- SettingsAccessPoint.SURFACE_EXPLORER_PROMO_SLINGER));
}
private void onPromoSeen() {
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo/enhanced_protection/EnhancedProtectionPromoUtils.java
@@ -65,8 +65,7 @@ final class EnhancedProtectionPromoUtils {
// TODO(bdea): If the user has pressed "Continue" and not selected Enhanced Protection,
// should we still show the promo.
return (profile != null) && !UserPrefs.get(profile).getBoolean(Pref.SAFE_BROWSING_ENHANCED)
- && !isPromoDismissedInSharedPreference() && (timesSeen <= maxImpressions)
- && !SafeBrowsingBridge.isSafeBrowsingManaged();
+ && !isPromoDismissedInSharedPreference() && (timesSeen <= maxImpressions);
}
static boolean isPromoDismissedInSharedPreference() {
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,14 +26,11 @@ import org.chromium.chrome.browser.privacy_review.PrivacyReviewDialog;
@@ -27,14 +27,11 @@ import org.chromium.chrome.browser.privacy_review.PrivacyReviewDialog;
import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxReferrer;
import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment;
import org.chromium.chrome.browser.profiles.Profile;
@ -199,10 +159,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.chrome.browser.sync.settings.GoogleServicesSettings;
import org.chromium.chrome.browser.sync.settings.ManageSyncSettings;
-import org.chromium.chrome.browser.usage_stats.UsageStatsConsentDialog;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate;
import org.chromium.components.browser_ui.settings.SettingsLauncher;
@@ -53,9 +50,7 @@ public class PrivacySettings
@@ -55,9 +52,7 @@ public class PrivacySettings
private static final String PREF_PRELOAD_PAGES = "preload_pages";
private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode";
private static final String PREF_SECURE_DNS = "secure_dns";
@ -212,7 +172,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";
@@ -100,15 +95,6 @@ public class PrivacySettings
@@ -107,15 +102,6 @@ public class PrivacySettings
mIncognitoLockSettings = new IncognitoLockSettings(incognitoReauthPreference);
mIncognitoLockSettings.setUpIncognitoReauthPreference(getActivity());
@ -228,7 +188,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
setHasOptionsMenu(true);
mManagedPreferenceDelegate = createManagedPreferenceDelegate();
@@ -206,32 +192,6 @@ public class PrivacySettings
@@ -217,32 +203,6 @@ public class PrivacySettings
secureDnsPref.setSummary(SecureDnsSettings.getSummary(getContext()));
}
@ -317,7 +277,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
@@ -305,8 +305,6 @@ static_library("browser") {
@@ -307,8 +307,6 @@ static_library("browser") {
"complex_tasks/task_tab_helper.h",
"component_updater/autofill_regex_component_installer.cc",
"component_updater/autofill_regex_component_installer.h",
@ -326,7 +286,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"component_updater/chrome_component_updater_configurator.cc",
"component_updater/chrome_component_updater_configurator.h",
"component_updater/chrome_origin_trials_component_installer.cc",
@@ -317,8 +315,6 @@ static_library("browser") {
@@ -319,8 +317,6 @@ static_library("browser") {
"component_updater/component_updater_utils.h",
"component_updater/crl_set_component_installer.cc",
"component_updater/crl_set_component_installer.h",
@ -335,7 +295,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",
@@ -1095,8 +1091,6 @@ static_library("browser") {
@@ -1102,8 +1098,6 @@ static_library("browser") {
"permissions/adaptive_quiet_notification_permission_ui_enabler.h",
"permissions/chrome_permissions_client.cc",
"permissions/chrome_permissions_client.h",
@ -344,7 +304,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",
@@ -1449,15 +1443,6 @@ static_library("browser") {
@@ -1460,15 +1454,6 @@ static_library("browser") {
"renderer_host/chrome_navigation_ui_data.h",
"renderer_preferences_util.cc",
"renderer_preferences_util.h",
@ -360,7 +320,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",
@@ -2198,11 +2183,8 @@ static_library("browser") {
@@ -2193,11 +2178,8 @@ static_library("browser") {
"//components/reporting/util:status_macros",
"//components/reporting/util:status_proto",
"//components/reporting/util:task_runner_context",
@ -372,7 +332,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",
@@ -3289,12 +3271,6 @@ static_library("browser") {
@@ -3292,12 +3274,6 @@ static_library("browser") {
"profiles/profile_manager_android.cc",
"profiles/profile_manager_android.h",
"query_tiles/android/tile_provider_factory.cc",
@ -385,7 +345,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",
@@ -3756,8 +3732,6 @@ static_library("browser") {
@@ -3735,8 +3711,6 @@ static_library("browser") {
"download/download_commands.h",
"download/download_crx_util.cc",
"download/download_crx_util.h",
@ -394,7 +354,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",
@@ -7553,8 +7527,6 @@ static_library("test_support") {
@@ -7596,8 +7570,6 @@ static_library("test_support") {
"//components/reporting/util:status_macros",
"//components/reporting/util:status_proto",
"//components/reporting/util:task_runner_context",
@ -478,7 +438,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
@@ -69,7 +69,6 @@
@@ -70,7 +70,6 @@
#include "chrome/browser/printing/print_preview_dialog_controller.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/resource_coordinator/resource_coordinator_parts.h"
@ -486,7 +446,7 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro
#include "chrome/browser/shell_integration.h"
#include "chrome/browser/site_isolation/prefs_observer.h"
#include "chrome/browser/ssl/secure_origin_prefs_observer.h"
@@ -110,7 +109,6 @@
@@ -111,7 +110,6 @@
#include "components/prefs/json_pref_store.h"
#include "components/prefs/pref_registry_simple.h"
#include "components/prefs/pref_service.h"
@ -494,7 +454,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"
@@ -395,8 +393,6 @@ void BrowserProcessImpl::StartTearDown() {
@@ -394,8 +392,6 @@ void BrowserProcessImpl::StartTearDown() {
metrics_services_manager_.reset();
intranet_redirect_detector_.reset();
@ -503,7 +463,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();
@@ -1021,14 +1017,6 @@ StatusTray* BrowserProcessImpl::status_tray() {
@@ -1020,14 +1016,6 @@ StatusTray* BrowserProcessImpl::status_tray() {
return status_tray_.get();
}
@ -518,7 +478,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_);
@@ -1283,23 +1271,6 @@ void BrowserProcessImpl::CreateBackgroundPrintingManager() {
@@ -1281,23 +1269,6 @@ void BrowserProcessImpl::CreateBackgroundPrintingManager() {
}
void BrowserProcessImpl::CreateSafeBrowsingService() {
@ -566,7 +526,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
@@ -633,10 +633,12 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -632,10 +632,12 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
base::RecordAction(UserMetricsAction("ClearBrowsingData_Cookies"));
network::mojom::NetworkContext* safe_browsing_context = nullptr;
@ -577,8 +537,8 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
safe_browsing_context = sb_service->GetNetworkContext(profile_);
+#endif
browsing_data::RemoveEmbedderCookieData(
delete_begin, delete_end, filter_builder, host_content_settings_map_,
if (!filter_builder->IsCrossSiteClearSiteData()) {
browsing_data::RemoveEmbedderCookieData(
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
@ -598,7 +558,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#include "chrome/browser/search/search.h"
#include "chrome/browser/segmentation_platform/chrome_browser_main_extra_parts_segmentation_platform.h"
#include "chrome/browser/sharing/sms/sms_remote_fetcher.h"
@@ -943,9 +945,7 @@ void SetApplicationLocaleOnIOThread(const std::string& locale) {
@@ -947,9 +949,7 @@ void SetApplicationLocaleOnIOThread(const std::string& locale) {
class CertificateReportingServiceCertReporter : public SSLCertReporter {
public:
explicit CertificateReportingServiceCertReporter(
@ -609,7 +569,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
CertificateReportingServiceCertReporter(
const CertificateReportingServiceCertReporter&) = delete;
@@ -957,11 +957,9 @@ class CertificateReportingServiceCertReporter : public SSLCertReporter {
@@ -961,11 +961,9 @@ class CertificateReportingServiceCertReporter : public SSLCertReporter {
// SSLCertReporter implementation
void ReportInvalidCertificateChain(
const std::string& serialized_report) override {
@ -621,7 +581,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
};
#if BUILDFLAG(ENABLE_EXTENSIONS)
@@ -1450,7 +1448,9 @@ void ChromeContentBrowserClient::PostAfterStartupTask(
@@ -1459,7 +1457,9 @@ void ChromeContentBrowserClient::PostAfterStartupTask(
InitNetworkContextsParentDirectory();
DCHECK_CURRENTLY_ON(BrowserThread::UI);
@ -631,16 +591,16 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
}
bool ChromeContentBrowserClient::IsBrowserStartupComplete() {
@@ -2183,7 +2183,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
@@ -2160,7 +2160,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
}
#elif defined(OS_POSIX)
#if defined(OS_ANDROID)
#elif BUILDFLAG(IS_POSIX)
#if BUILDFLAG(IS_ANDROID)
- bool enable_crash_reporter = true;
+ bool enable_crash_reporter = false;
#else
bool enable_crash_reporter = false;
if (crash_reporter::IsCrashpadEnabled()) {
@@ -2320,6 +2320,9 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
@@ -2297,6 +2297,9 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
command_line->AppendSwitch(
switches::kSharedArrayBufferUnrestrictedAccessAllowed);
}
@ -650,7 +610,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#endif
if (!prefs->GetBoolean(prefs::kSandboxExternalProtocolBlocked))
command_line->AppendSwitch(kDisableSandboxExternalProtocolSwitch);
@@ -4281,6 +4284,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4273,6 +4276,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
&throttles);
#endif
@ -658,7 +618,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
// g_browser_process->safe_browsing_service() may be null in unittests.
safe_browsing::SafeBrowsingUIManager* ui_manager =
g_browser_process->safe_browsing_service()
@@ -4296,6 +4300,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4288,6 +4292,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
std::make_unique<safe_browsing::DelayedWarningNavigationThrottle>(
handle));
}
@ -666,7 +626,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.
@@ -5696,6 +5701,7 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
@@ -5719,6 +5724,7 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
const std::vector<std::string>& allowlist_domains) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
@ -674,7 +634,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)
@@ -5716,6 +5722,9 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
@@ -5739,6 +5745,9 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
}
return safe_browsing_url_checker_delegate_;
@ -684,7 +644,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
}
safe_browsing::RealTimeUrlLookupServiceBase*
@@ -5723,24 +5732,28 @@ ChromeContentBrowserClient::GetUrlLookupService(
@@ -5746,24 +5755,28 @@ ChromeContentBrowserClient::GetUrlLookupService(
content::BrowserContext* browser_context,
bool is_enterprise_lookup_enabled,
bool is_consumer_lookup_enabled) {
@ -717,7 +677,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
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
@@ -872,9 +872,11 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
@@ -877,9 +877,11 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
// Parts are deleted in the reverse order they are added.
std::vector<ChromeContentBrowserClientParts*> extra_parts_;
@ -732,7 +692,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.h b/chrome/browser/chr
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
@@ -131,6 +131,7 @@
@@ -132,6 +132,7 @@
namespace {
@ -740,14 +700,14 @@ 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.
@@ -183,6 +184,7 @@ void MaybeCreateSafeBrowsingForRenderer(
@@ -184,6 +185,7 @@ void MaybeCreateSafeBrowsingForRenderer(
allowlist_domains),
std::move(receiver)));
}
+#endif
// BadgeManager is not used for Android.
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_ANDROID)
diff --git a/chrome/browser/component_updater/file_type_policies_component_installer.cc b/chrome/browser/component_updater/file_type_policies_component_installer.cc
--- a/chrome/browser/component_updater/file_type_policies_component_installer.cc
+++ b/chrome/browser/component_updater/file_type_policies_component_installer.cc
@ -793,7 +753,7 @@ diff --git a/chrome/browser/component_updater/registration.cc b/chrome/browser/c
#include "chrome/browser/component_updater/chrome_origin_trials_component_installer.h"
#include "chrome/browser/component_updater/crl_set_component_installer.h"
#include "chrome/browser/component_updater/crowd_deny_component_installer.h"
@@ -35,7 +34,6 @@
@@ -34,7 +33,6 @@
#include "components/component_updater/installer_policies/autofill_states_component_installer.h"
#include "components/component_updater/installer_policies/on_device_head_suggest_component_installer.h"
#include "components/component_updater/installer_policies/optimization_hints_component_installer.h"
@ -801,7 +761,7 @@ diff --git a/chrome/browser/component_updater/registration.cc b/chrome/browser/c
#include "components/nacl/common/buildflags.h"
#include "device/vr/buildflags/buildflags.h"
#include "ppapi/buildflags/buildflags.h"
@@ -188,9 +186,6 @@ void RegisterComponentsForUpdate() {
@@ -180,9 +178,6 @@ void RegisterComponentsForUpdate() {
MaybeRegisterPKIMetadataComponent(cus);
@ -811,7 +771,7 @@ diff --git a/chrome/browser/component_updater/registration.cc b/chrome/browser/c
#if BUILDFLAG(IS_CHROMEOS_ASH)
RegisterSmartDimComponent(cus);
#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
@@ -207,8 +202,6 @@ void RegisterComponentsForUpdate() {
@@ -199,8 +194,6 @@ void RegisterComponentsForUpdate() {
RegisterAutofillStatesComponent(cus, g_browser_process->local_state());
RegisterAutofillRegexComponent(cus);
@ -903,7 +863,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
- }
}
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
@@ -790,16 +791,6 @@ void ChromeDownloadManagerDelegate::ChooseSavePath(
void ChromeDownloadManagerDelegate::SanitizeSavePackageResourceName(
@ -927,7 +887,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
browser->OpenURL(params);
-
- RecordDownloadOpenMethod(DOWNLOAD_OPEN_METHOD_DEFAULT_BROWSER);
#endif // OS_ANDROID
#endif // BUILDFLAG(IS_ANDROID)
}
@@ -926,18 +915,18 @@ ChromeDownloadManagerDelegate::ApplicationClientIdForFileScanning() {
@ -1040,9 +1000,9 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.h b/chrome
diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/download/download_item_model.cc
--- a/chrome/browser/download/download_item_model.cc
+++ b/chrome/browser/download/download_item_model.cc
@@ -30,7 +30,9 @@
#include "chrome/browser/enterprise/connectors/connectors_manager.h"
@@ -31,7 +31,9 @@
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/safe_browsing/chrome_user_population_helper.h"
#include "chrome/browser/safe_browsing/download_protection/deep_scanning_request.h"
+#if BUILDFLAG(FULL_SAFE_BROWSING)
#include "chrome/browser/safe_browsing/download_protection/download_feedback_service.h"
@ -1050,7 +1010,7 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow
#include "chrome/browser/safe_browsing/safe_browsing_service.h"
#include "chrome/grit/chromium_strings.h"
#include "chrome/grit/generated_resources.h"
@@ -39,8 +41,10 @@
@@ -40,8 +42,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"
@ -1061,7 +1021,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 download::DownloadItem;
using MixedContentStatus = download::DownloadItem::MixedContentStatus;
@ -1071,7 +1031,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_;
@ -1083,7 +1043,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),
@ -1093,7 +1053,7 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow
is_being_revived_(false) {}
} // namespace
@@ -381,6 +391,7 @@ void DownloadItemModel::SetShouldPreferOpeningInBrowser(bool preference) {
@@ -382,6 +392,7 @@ void DownloadItemModel::SetShouldPreferOpeningInBrowser(bool preference) {
data->should_prefer_opening_in_browser_ = preference;
}
@ -1101,7 +1061,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;
@@ -391,6 +402,7 @@ void DownloadItemModel::SetDangerLevel(
@@ -392,6 +403,7 @@ void DownloadItemModel::SetDangerLevel(
DownloadItemModelData* data = DownloadItemModelData::GetOrCreate(download_);
data->danger_level_ = danger_level;
}
@ -1109,7 +1069,7 @@ diff --git a/chrome/browser/download/download_item_model.cc b/chrome/browser/dow
download::DownloadItem::MixedContentStatus
DownloadItemModel::GetMixedContentStatus() const {
@@ -599,9 +611,6 @@ bool DownloadItemModel::IsCommandEnabled(
@@ -600,9 +612,6 @@ bool DownloadItemModel::IsCommandEnabled(
// filename. Don't base an "Always open" decision based on it. Also
// exclude extensions.
return download_->CanOpenDownload() &&
@ -1197,9 +1157,9 @@ diff --git a/chrome/browser/download/download_prefs.cc b/chrome/browser/download
diff --git a/chrome/browser/download/download_stats.cc b/chrome/browser/download/download_stats.cc
--- a/chrome/browser/download/download_stats.cc
+++ b/chrome/browser/download/download_stats.cc
@@ -8,7 +8,9 @@
#include "base/metrics/user_metrics.h"
@@ -9,7 +9,9 @@
#include "base/notreached.h"
#include "build/build_config.h"
#include "components/profile_metrics/browser_profile_type.h"
+#if defined(FULL_SAFE_BROWSING)
#include "components/safe_browsing/content/browser/download/download_stats.h"
@ -1207,7 +1167,7 @@ diff --git a/chrome/browser/download/download_stats.cc b/chrome/browser/download
void RecordDownloadCount(ChromeDownloadCountTypes type) {
base::UmaHistogramEnumeration("Download.CountsChrome", type,
@@ -27,8 +29,10 @@ void RecordDangerousDownloadWarningShown(
@@ -28,8 +30,10 @@ void RecordDangerousDownloadWarningShown(
bool has_user_gesture) {
base::UmaHistogramEnumeration("Download.ShowedDownloadWarning", danger_type,
download::DOWNLOAD_DANGER_TYPE_MAX);
@ -1221,7 +1181,7 @@ diff --git a/chrome/browser/download/download_stats.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
@@ -29,9 +29,11 @@
@@ -30,9 +30,11 @@
#include "components/download/public/common/download_interrupt_reasons.h"
#include "components/history/core/browser/history_service.h"
#include "components/prefs/pref_service.h"
@ -1233,7 +1193,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
#include "content/public/browser/browser_context.h"
#include "content/public/browser/browser_task_traits.h"
#include "content/public/browser/browser_thread.h"
@@ -65,13 +67,16 @@
@@ -66,13 +68,16 @@
using content::BrowserThread;
using download::DownloadItem;
using download::DownloadPathReservationTracker;
@ -1250,15 +1210,15 @@ 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
@@ -82,6 +87,7 @@ void VisitCountsToVisitedBefore(base::OnceCallback<void(bool)> callback,
@@ -83,6 +88,7 @@ void VisitCountsToVisitedBefore(base::OnceCallback<void(bool)> callback,
result.success && result.count > 0 &&
(result.first_visit.LocalMidnight() < base::Time::Now().LocalMidnight()));
}
+#endif
#if defined(OS_WIN)
#if BUILDFLAG(IS_WIN)
// Keeps track of whether Adobe Reader is up to date.
@@ -106,7 +112,9 @@ DownloadTargetDeterminer::DownloadTargetDeterminer(
@@ -107,7 +113,9 @@ DownloadTargetDeterminer::DownloadTargetDeterminer(
create_target_directory_(false),
conflict_action_(conflict_action),
danger_type_(download->GetDangerType()),
@ -1267,8 +1227,8 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
+#endif
virtual_path_(initial_virtual_path),
is_filetype_handled_safely_(false),
#if defined(OS_ANDROID)
@@ -297,12 +305,14 @@ base::FilePath DownloadTargetDeterminer::GenerateFileName() const {
#if BUILDFLAG(IS_ANDROID)
@@ -298,12 +306,14 @@ base::FilePath DownloadTargetDeterminer::GenerateFileName() const {
download_->GetURL(), download_->GetContentDisposition(), referrer_charset,
suggested_filename, sniffed_mime_type, default_filename);
@ -1284,7 +1244,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.
@@ -836,6 +846,7 @@ DownloadTargetDeterminer::Result
@@ -837,6 +847,7 @@ DownloadTargetDeterminer::Result
return CONTINUE;
}
@ -1292,7 +1252,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
@@ -872,6 +883,7 @@ DownloadTargetDeterminer::Result
@@ -873,6 +884,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;
@ -1300,7 +1260,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
return CONTINUE;
}
@@ -879,6 +891,7 @@ void DownloadTargetDeterminer::CheckVisitedReferrerBeforeDone(
@@ -880,6 +892,7 @@ void DownloadTargetDeterminer::CheckVisitedReferrerBeforeDone(
bool visited_referrer_before) {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
DCHECK_EQ(STATE_DETERMINE_INTERMEDIATE_PATH, next_state_);
@ -1308,7 +1268,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
safe_browsing::RecordDownloadFileTypeAttributes(
safe_browsing::FileTypePolicies::GetInstance()->GetFileDangerLevel(
virtual_path_.BaseName()),
@@ -889,6 +902,7 @@ void DownloadTargetDeterminer::CheckVisitedReferrerBeforeDone(
@@ -890,6 +903,7 @@ void DownloadTargetDeterminer::CheckVisitedReferrerBeforeDone(
if (danger_level_ != DownloadFileType::NOT_DANGEROUS &&
danger_type_ == download::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS)
danger_type_ = download::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE;
@ -1316,7 +1276,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
DoLoop();
}
@@ -988,7 +1002,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf(
@@ -989,7 +1003,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf(
<< " Intermediate:" << intermediate_path_.AsUTF8Unsafe()
<< " Confirmation reason:" << static_cast<int>(confirmation_reason_)
<< " Danger type:" << danger_type_
@ -1326,7 +1286,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
<< " Result:" << static_cast<int>(result);
std::unique_ptr<DownloadTargetInfo> target_info(new DownloadTargetInfo);
@@ -1000,7 +1016,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf(
@@ -1001,7 +1017,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf(
? DownloadItem::TARGET_DISPOSITION_PROMPT
: DownloadItem::TARGET_DISPOSITION_OVERWRITE);
target_info->danger_type = danger_type_;
@ -1336,7 +1296,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_;
@@ -1089,6 +1107,7 @@ bool DownloadTargetDeterminer::HasPromptedForPath() const {
@@ -1090,6 +1108,7 @@ bool DownloadTargetDeterminer::HasPromptedForPath() const {
DownloadItem::TARGET_DISPOSITION_PROMPT);
}
@ -1344,7 +1304,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);
@@ -1113,29 +1132,7 @@ DownloadFileType::DangerLevel DownloadTargetDeterminer::GetDangerLevel(
@@ -1114,29 +1133,7 @@ DownloadFileType::DangerLevel DownloadTargetDeterminer::GetDangerLevel(
download_->HasUserGesture())
return DownloadFileType::NOT_DANGEROUS;
@ -1375,7 +1335,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
}
absl::optional<base::Time>
@@ -1149,6 +1146,7 @@ DownloadTargetDeterminer::GetLastDownloadBypassTimestamp() const {
@@ -1150,6 +1147,7 @@ DownloadTargetDeterminer::GetLastDownloadBypassTimestamp() const {
EventType::DANGEROUS_DOWNLOAD_BYPASS)
: absl::nullopt;
}
@ -1474,7 +1434,7 @@ diff --git a/chrome/browser/download/download_target_info.h b/chrome/browser/dow
diff --git a/chrome/browser/download/download_ui_model.cc b/chrome/browser/download/download_ui_model.cc
--- a/chrome/browser/download/download_ui_model.cc
+++ b/chrome/browser/download/download_ui_model.cc
@@ -35,7 +35,9 @@
@@ -36,7 +36,9 @@
using download::DownloadItem;
using offline_items_collection::FailState;
@ -1484,7 +1444,7 @@ diff --git a/chrome/browser/download/download_ui_model.cc b/chrome/browser/downl
namespace {
@@ -424,12 +426,14 @@ bool DownloadUIModel::ShouldPreferOpeningInBrowser() const {
@@ -425,12 +427,14 @@ bool DownloadUIModel::ShouldPreferOpeningInBrowser() const {
void DownloadUIModel::SetShouldPreferOpeningInBrowser(bool preference) {}
@ -1510,7 +1470,7 @@ diff --git a/chrome/browser/download/download_ui_model.h b/chrome/browser/downlo
#include "components/safe_browsing/content/common/proto/download_file_types.pb.h"
+#endif
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_ANDROID)
#include "chrome/browser/download/download_commands.h"
@@ -187,6 +189,7 @@ class DownloadUIModel {
// Change what's returned by ShouldPreferOpeningInBrowser to |preference|.
@ -1674,7 +1634,7 @@ diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permiss
#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"
@@ -304,6 +306,7 @@ BindResultCallbackToCurrentSequence(
@@ -305,6 +307,7 @@ BindResultCallbackToCurrentSequence(
base::SequencedTaskRunnerHandle::Get(), std::move(callback));
}
@ -1682,7 +1642,7 @@ diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permiss
void DoSafeBrowsingCheckOnUIThread(
content::GlobalRenderFrameHostId frame_id,
std::unique_ptr<content::FileSystemAccessWriteItem> item,
@@ -380,6 +383,7 @@ InterpretSafeBrowsingResult(safe_browsing::DownloadCheckResult result) {
@@ -381,6 +384,7 @@ InterpretSafeBrowsingResult(safe_browsing::DownloadCheckResult result) {
NOTREACHED();
return ChromeFileSystemAccessPermissionContext::AfterWriteCheckResult::kBlock;
}
@ -1690,7 +1650,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
@@ -1133,6 +1137,7 @@ void ChromeFileSystemAccessPermissionContext::ConfirmSensitiveDirectoryAccess(
@@ -1134,6 +1138,7 @@ void ChromeFileSystemAccessPermissionContext::ConfirmSensitiveDirectoryAccess(
std::move(callback)));
}
@ -1698,7 +1658,7 @@ diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permiss
void ChromeFileSystemAccessPermissionContext::PerformAfterWriteChecks(
std::unique_ptr<content::FileSystemAccessWriteItem> item,
content::GlobalRenderFrameHostId frame_id,
@@ -1154,6 +1159,7 @@ void ChromeFileSystemAccessPermissionContext::PerformAfterWriteChecks(
@@ -1155,6 +1160,7 @@ void ChromeFileSystemAccessPermissionContext::PerformAfterWriteChecks(
},
base::SequencedTaskRunnerHandle::Get(), std::move(callback))));
}
@ -1751,14 +1711,14 @@ 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
@@ -825,9 +825,6 @@ void ChromeMetricsServiceClient::RegisterMetricsServiceProviders() {
@@ -835,9 +835,6 @@ void ChromeMetricsServiceClient::RegisterMetricsServiceProviders() {
metrics_service_->RegisterMetricsProvider(
std::make_unique<HttpsEngagementMetricsProvider>());
- metrics_service_->RegisterMetricsProvider(
- std::make_unique<CertificateReportingMetricsProvider>());
-
#if !defined(OS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
metrics_service_->RegisterMetricsProvider(
std::make_unique<UpgradeMetricsProvider>());
diff --git a/chrome/browser/net/trial_comparison_cert_verifier_controller.cc b/chrome/browser/net/trial_comparison_cert_verifier_controller.cc
@ -1777,7 +1737,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
@@ -832,21 +832,13 @@ autofill::LanguageCode ChromePasswordManagerClient::GetPageLanguage() const {
@@ -839,21 +839,13 @@ autofill::LanguageCode ChromePasswordManagerClient::GetPageLanguage() const {
safe_browsing::PasswordProtectionService*
ChromePasswordManagerClient::GetPasswordProtectionService() const {
@ -1800,7 +1760,7 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b
}
#endif // defined(ON_FOCUS_PING_ENABLED)
@@ -856,22 +848,9 @@ void ChromePasswordManagerClient::CheckProtectedPasswordEntry(
@@ -863,22 +855,9 @@ void ChromePasswordManagerClient::CheckProtectedPasswordEntry(
const std::vector<password_manager::MatchingReusedCredential>&
matching_reused_credentials,
bool password_field_exists) {
@ -1822,8 +1782,8 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b
- }
}
#if !defined(OS_ANDROID)
@@ -1466,6 +1445,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
#if !BUILDFLAG(IS_ANDROID)
@@ -1463,6 +1442,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
is_enabled = false;
}
@ -1831,7 +1791,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
@@ -1476,6 +1456,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
@@ -1473,6 +1453,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
observer->OnPasswordSaveOrAutofillDenied();
is_enabled = false;
}
@ -1861,7 +1821,7 @@ diff --git a/chrome/browser/permissions/abusive_origin_permission_revocation_req
diff --git a/chrome/browser/permissions/chrome_permissions_client.cc b/chrome/browser/permissions/chrome_permissions_client.cc
--- a/chrome/browser/permissions/chrome_permissions_client.cc
+++ b/chrome/browser/permissions/chrome_permissions_client.cc
@@ -16,7 +16,6 @@
@@ -17,7 +17,6 @@
#include "chrome/browser/metrics/ukm_background_recorder_service.h"
#include "chrome/browser/permissions/abusive_origin_permission_revocation_request.h"
#include "chrome/browser/permissions/adaptive_quiet_notification_permission_ui_enabler.h"
@ -1869,7 +1829,7 @@ diff --git a/chrome/browser/permissions/chrome_permissions_client.cc b/chrome/br
#include "chrome/browser/permissions/permission_actions_history_factory.h"
#include "chrome/browser/permissions/permission_decision_auto_blocker_factory.h"
#include "chrome/browser/permissions/permission_manager_factory.h"
@@ -231,19 +230,6 @@ permissions::IconId ChromePermissionsClient::GetOverrideIconId(
@@ -232,19 +231,6 @@ permissions::IconId ChromePermissionsClient::GetOverrideIconId(
return PermissionsClient::GetOverrideIconId(request_type);
}
@ -1919,23 +1879,23 @@ diff --git a/chrome/browser/permissions/quiet_notification_permission_ui_config.
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
@@ -75,7 +75,6 @@
#include "chrome/browser/privacy/privacy_metrics_service_factory.h"
@@ -76,7 +76,6 @@
#include "chrome/browser/privacy_sandbox/privacy_sandbox_service_factory.h"
#include "chrome/browser/privacy_sandbox/privacy_sandbox_settings_factory.h"
#include "chrome/browser/profiles/renderer_updater_factory.h"
-#include "chrome/browser/safe_browsing/certificate_reporting_service_factory.h"
#include "chrome/browser/safe_browsing/tailored_security/tailored_security_service_factory.h"
#include "chrome/browser/search_engines/template_url_fetcher_factory.h"
#include "chrome/browser/search_engines/template_url_service_factory.h"
@@ -307,7 +306,6 @@ void ChromeBrowserMainExtraPartsProfiles::
@@ -311,7 +310,6 @@ void ChromeBrowserMainExtraPartsProfiles::
#if BUILDFLAG(IS_CHROMEOS_LACROS)
CertDbInitializerFactory::GetInstance();
#endif
- CertificateReportingServiceFactory::GetInstance();
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_ANDROID)
ChromeBrowsingDataLifetimeManagerFactory::GetInstance();
#endif
@@ -507,7 +505,9 @@ void ChromeBrowserMainExtraPartsProfiles::
@@ -518,7 +516,9 @@ void ChromeBrowserMainExtraPartsProfiles::
SystemExtensionsProviderFactory::GetInstance();
#endif
TabRestoreServiceFactory::GetInstance();
@ -1944,11 +1904,11 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
+#endif
TemplateURLFetcherFactory::GetInstance();
TemplateURLServiceFactory::GetInstance();
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_ANDROID)
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
@@ -93,7 +93,6 @@
@@ -95,7 +95,6 @@
#include "chrome/browser/profiles/profile_metrics.h"
#include "chrome/browser/push_messaging/push_messaging_service_factory.h"
#include "chrome/browser/push_messaging/push_messaging_service_impl.h"
@ -2184,7 +2144,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
@@ -778,11 +778,6 @@ void DownloadProtectionService::RequestFinished(DeepScanningRequest* request) {
@@ -787,11 +787,6 @@ void DownloadProtectionService::RequestFinished(DeepScanningRequest* request) {
deep_scanning_requests_.erase(it);
}
@ -2360,7 +2320,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
@@ -544,7 +544,6 @@ static_library("ui") {
@@ -546,7 +546,6 @@ static_library("ui") {
"//components/renderer_context_menu",
"//components/resources",
"//components/safe_browsing/content/browser",
@ -2368,10 +2328,10 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
"//components/safe_browsing/content/browser/password_protection",
"//components/safe_browsing/content/browser/web_ui",
"//components/safe_browsing/core/browser/db:database_manager",
@@ -4061,7 +4060,6 @@ static_library("ui") {
"views/device_chooser_content_view.h",
"views/devtools_process_observer.cc",
@@ -4083,7 +4082,6 @@ static_library("ui") {
"views/devtools_process_observer.h",
"views/download/bubble/download_toolbar_button_view.cc",
"views/download/bubble/download_toolbar_button_view.h",
- "views/download/download_danger_prompt_views.cc",
"views/download/download_in_progress_dialog_view.cc",
"views/download/download_in_progress_dialog_view.h",
@ -2379,20 +2339,20 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
diff --git a/chrome/browser/ui/android/signin/java/res/layout/fre_uma_dialog.xml b/chrome/browser/ui/android/signin/java/res/layout/fre_uma_dialog.xml
--- a/chrome/browser/ui/android/signin/java/res/layout/fre_uma_dialog.xml
+++ b/chrome/browser/ui/android/signin/java/res/layout/fre_uma_dialog.xml
@@ -31,17 +31,6 @@
@@ -30,17 +30,6 @@
android:text="@string/signin_fre_uma_dialog_title"
style="@style/TextAppearance.Headline.Primary" />
android:textAppearance="@style/TextAppearance.Headline.Primary" />
- <Switch
- android:id="@+id/fre_uma_dialog_switch"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginBottom="12dp"
- android:text="@string/usage_and_crash_reports_title"
- android:checked="true"
- android:gravity="start|center"
- android:lineSpacingMultiplier="1.2"
- style="@style/TextAppearance.TextLarge.Primary" />
- android:text="@string/usage_and_crash_reports_title"
- android:textAppearance="@style/TextAppearance.TextLarge.Primary" />
-
<TextView
android:layout_width="match_parent"
@ -2427,7 +2387,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<!-- Metrics settings -->
<message name="IDS_PREFS_METRICS_SETTINGS" desc="Title for the page that allows the user to control how much usage data Chrome uploads. [CHAR_LIMIT=32]">
@@ -4707,9 +4701,6 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4728,9 +4722,6 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
To use this setting <ph name="BEGIN_LINK">&lt;link&gt;</ph>Make searches and browsing better<ph name="END_LINK">&lt;/link&gt;</ph> must be turned on
</message>
<!-- Usage Stats strings -->
@ -2440,7 +2400,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
--- a/chrome/browser/ui/tab_helpers.cc
+++ b/chrome/browser/ui/tab_helpers.cc
@@ -58,14 +58,18 @@
@@ -60,14 +60,18 @@
#include "chrome/browser/prefetch/prefetch_proxy/prefetch_proxy_tab_helper.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_key.h"
@ -2459,7 +2419,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
#include "chrome/browser/search_engines/template_url_service_factory.h"
#include "chrome/browser/sessions/session_tab_helper_factory.h"
#include "chrome/browser/ssl/chrome_security_blocking_page_factory.h"
@@ -119,9 +123,11 @@
@@ -120,9 +124,11 @@
#include "components/performance_manager/public/performance_manager.h"
#include "components/permissions/features.h"
#include "components/permissions/permission_request_manager.h"
@ -2471,7 +2431,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
#include "components/site_engagement/content/site_engagement_helper.h"
#include "components/site_engagement/content/site_engagement_service.h"
#include "components/sync/engine/sync_engine_switches.h"
@@ -353,6 +359,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
@@ -360,6 +366,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
// See https://crbug.com/910288.
resource_coordinator::ResourceCoordinatorTabHelper::CreateForWebContents(
web_contents);
@ -2479,7 +2439,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
safe_browsing::SafeBrowsingNavigationObserver::MaybeCreateForWebContents(
web_contents, HostContentSettingsMapFactory::GetForProfile(profile),
safe_browsing::SafeBrowsingNavigationObserverManagerFactory::
@@ -370,6 +377,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
@@ -377,6 +384,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
safe_browsing::TriggerCreator::MaybeCreateTriggersForWebContents(
profile, web_contents);
ReputationWebContentsObserver::CreateForWebContents(web_contents);
@ -2490,7 +2450,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
@@ -268,6 +268,7 @@ CreateHttpsOnlyModePage(content::WebContents* web_contents) {
@@ -273,6 +273,7 @@ CreateHttpsOnlyModePage(content::WebContents* web_contents) {
request_url));
}
@ -2498,7 +2458,7 @@ diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/b
std::unique_ptr<safe_browsing::SafeBrowsingBlockingPage>
CreateSafeBrowsingBlockingPage(content::WebContents* web_contents) {
safe_browsing::SBThreatType threat_type =
@@ -324,7 +325,9 @@ CreateSafeBrowsingBlockingPage(content::WebContents* web_contents) {
@@ -331,7 +332,9 @@ CreateSafeBrowsingBlockingPage(content::WebContents* web_contents) {
ui_manager->blocking_page_factory()->CreateSafeBrowsingPage(
ui_manager, web_contents, main_frame_url, {resource}, true));
}
@ -2508,7 +2468,7 @@ diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/b
std::unique_ptr<TestSafeBrowsingBlockingPageQuiet>
CreateSafeBrowsingQuietBlockingPage(content::WebContents* web_contents) {
safe_browsing::SBThreatType threat_type =
@@ -377,6 +380,7 @@ CreateSafeBrowsingQuietBlockingPage(content::WebContents* web_contents) {
@@ -386,6 +389,7 @@ CreateSafeBrowsingQuietBlockingPage(content::WebContents* web_contents) {
g_browser_process->safe_browsing_service()->ui_manager().get(),
web_contents, main_frame_url, resource, is_giant_webview));
}
@ -2516,7 +2476,7 @@ diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/b
#if BUILDFLAG(ENABLE_CAPTIVE_PORTAL_DETECTION)
std::unique_ptr<CaptivePortalBlockingPage> CreateCaptivePortalBlockingPage(
@@ -492,8 +496,6 @@ void InterstitialHTMLSource::StartDataRequest(
@@ -501,8 +505,6 @@ void InterstitialHTMLSource::StartDataRequest(
interstitial_delegate = CreateMITMSoftwareBlockingPage(web_contents);
} else if (path_without_query == "/blocked-interception") {
interstitial_delegate = CreateBlockedInterceptionBlockingPage(web_contents);
@ -2525,7 +2485,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") {
@@ -508,13 +510,7 @@ void InterstitialHTMLSource::StartDataRequest(
@@ -517,13 +519,7 @@ void InterstitialHTMLSource::StartDataRequest(
interstitial_delegate = CreateInsecureFormPage(web_contents);
} else if (path_without_query == "/https_only") {
interstitial_delegate = CreateHttpsOnlyModePage(web_contents);
@ -2580,7 +2540,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
@@ -94,7 +94,9 @@
@@ -92,7 +92,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"
@ -2593,7 +2553,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -1212,7 +1212,6 @@ if (!is_android && !is_fuchsia) {
@@ -1251,7 +1251,6 @@ if (!is_android && !is_fuchsia) {
"//components/resources",
"//components/safe_browsing:buildflags",
"//components/safe_browsing/content/browser",
@ -2601,7 +2561,7 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
"//components/safe_browsing/content/browser:safe_browsing_service",
"//components/safe_browsing/content/browser/password_protection",
"//components/safe_browsing/content/browser/password_protection:test_support",
@@ -5348,7 +5347,6 @@ test("unit_tests") {
@@ -5376,7 +5375,6 @@ test("unit_tests") {
"//components/resources",
"//components/safe_browsing:buildflags",
"//components/safe_browsing/content/browser",
@ -2624,7 +2584,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
@@ -564,10 +564,7 @@ PermissionRequestManager::PermissionRequestManager(
@@ -562,10 +562,7 @@ PermissionRequestManager::PermissionRequestManager(
view_(nullptr),
tab_is_hidden_(web_contents->GetVisibility() ==
content::Visibility::HIDDEN),
@ -2639,7 +2599,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
diff --git a/components/safe_browsing/content/browser/BUILD.gn b/components/safe_browsing/content/browser/BUILD.gn
--- a/components/safe_browsing/content/browser/BUILD.gn
+++ b/components/safe_browsing/content/browser/BUILD.gn
@@ -140,7 +140,6 @@ source_set("unit_tests") {
@@ -141,7 +141,6 @@ source_set("unit_tests") {
]
deps = [
@ -2885,7 +2845,7 @@ diff --git a/weblayer/BUILD.gn b/weblayer/BUILD.gn
diff --git a/weblayer/test/BUILD.gn b/weblayer/test/BUILD.gn
--- a/weblayer/test/BUILD.gn
+++ b/weblayer/test/BUILD.gn
@@ -242,7 +242,6 @@ test("weblayer_browsertests") {
@@ -241,7 +241,6 @@ test("weblayer_browsertests") {
"//components/page_info/android",
"//components/safe_browsing/android:safe_browsing_api_handler",
"//components/safe_browsing/content/browser",

View file

@ -0,0 +1,69 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Sun, 6 Mar 2022 17:39:15 +0100
Subject: Disable safety check
---
chrome/android/BUILD.gn | 1 -
chrome/android/chrome_java_sources.gni | 1 -
.../chromium/chrome/browser/settings/SettingsActivity.java | 6 ------
chrome/browser/BUILD.gn | 1 -
4 files changed, 9 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -385,7 +385,6 @@ android_library("chrome_java") {
"//chrome/browser/privacy_sandbox/android:java",
"//chrome/browser/profiles/android:java",
"//chrome/browser/safe_browsing/android:java",
- "//chrome/browser/safety_check/android:java",
"//chrome/browser/search_engines/android:java",
"//chrome/browser/segmentation_platform:factory_java",
"//chrome/browser/settings:java",
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -998,7 +998,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingPasswordReuseDialogBridge.java",
"java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingReferringAppBridge.java",
"java/src/org/chromium/chrome/browser/safe_browsing/SafeBrowsingSettingsLauncher.java",
- "java/src/org/chromium/chrome/browser/safety_check/SafetyCheckUpdatesDelegateImpl.java",
"java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java",
"java/src/org/chromium/chrome/browser/searchwidget/SearchActivityLocationBarLayout.java",
"java/src/org/chromium/chrome/browser/searchwidget/SearchBoxDataProvider.java",
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
@@ -50,9 +50,6 @@ import org.chromium.chrome.browser.privacy_sandbox.FlocSettingsFragment;
import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.profiles.ProfileManagerUtils;
-import org.chromium.chrome.browser.safety_check.SafetyCheckCoordinator;
-import org.chromium.chrome.browser.safety_check.SafetyCheckSettingsFragment;
-import org.chromium.chrome.browser.safety_check.SafetyCheckUpdatesDelegateImpl;
import org.chromium.chrome.browser.search_engines.settings.SearchEngineSettings;
import org.chromium.chrome.browser.site_settings.ChromeSiteSettingsDelegate;
import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager;
@@ -365,9 +362,6 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
fragmentHelpAndFeedbackLauncher.setHelpAndFeedbackLauncher(
HelpAndFeedbackLauncherImpl.getInstance());
}
- if (fragment instanceof SafetyCheckSettingsFragment) {
- // not supported
- }
if (fragment instanceof PasswordCheckFragmentView) {
PasswordCheckComponentUiFactory.create((PasswordCheckFragmentView) fragment,
HelpAndFeedbackLauncherImpl.getInstance(), mSettingsLauncher,
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -3397,7 +3397,6 @@ static_library("browser") {
"//chrome/browser/privacy_sandbox/android:jni_headers",
"//chrome/browser/reading_list/android",
"//chrome/browser/safe_browsing/android:safe_browsing_enums",
- "//chrome/browser/safety_check/android",
"//chrome/browser/share/android:jni_headers",
"//chrome/browser/signin/services/android:jni_headers",
"//chrome/browser/sync/android:jni_headers",
--
2.25.1

View file

@ -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
@@ -174,6 +174,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -178,6 +178,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,
&kCCTNewDownloadTab,
&kCCTPostMessageAPI,
@@ -501,6 +502,9 @@ const base::Feature kChromeSharingHubLaunchAdjacent{
@@ -518,6 +519,9 @@ const base::Feature kChromeSharingHubLaunchAdjacent{
const base::Feature kChromeSurveyNextAndroid{"ChromeSurveyNextAndroid",
base::FEATURE_ENABLED_BY_DEFAULT};
@ -64,8 +64,8 @@ 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 kCCTResourcePrefetch;
extern const base::Feature kDontAutoHideBrowserControls;
@@ -53,6 +53,7 @@ extern const base::Feature kDontAutoHideBrowserControls;
extern const base::Feature kChromeNewDownloadTab;
extern const base::Feature kChromeShareLongScreenshot;
extern const base::Feature kChromeShareScreenshot;
+extern const base::Feature kChromeSmartSelection;
@ -75,7 +75,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
@@ -241,6 +241,7 @@ public abstract class ChromeFeatureList {
@@ -244,6 +244,7 @@ public abstract class ChromeFeatureList {
public static final String CCT_NEW_DOWNLOAD_TAB = "CCTNewDownloadTab";
public static final String CCT_POST_MESSAGE_API = "CCTPostMessageAPI";
public static final String CCT_REDIRECT_PRECONNECT = "CCTRedirectPreconnect";
@ -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
@@ -2144,6 +2144,21 @@
@@ -2243,6 +2243,21 @@
]
}
],

View file

@ -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
@@ -760,7 +760,7 @@ const base::Feature kSharedArrayBufferOnDesktop{
@@ -790,7 +790,7 @@ const base::Feature kSharedArrayBufferOnDesktop{
// Signed Exchange Reporting for distributors
// https://www.chromestatus.com/feature/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/feature/5126805474246656
@@ -770,7 +770,7 @@ const base::Feature kSignedExchangeSubresourcePrefetch{
@@ -800,7 +800,7 @@ const base::Feature kSignedExchangeSubresourcePrefetch{
// Origin-Signed HTTP Exchanges (for WebPackage Loading)
// https://www.chromestatus.com/feature/5745285984681984
const base::Feature kSignedHTTPExchange{"SignedHTTPExchange",

View file

@ -11,13 +11,13 @@ Subject: Disable support for RAR files inspection
diff --git a/chrome/browser/safe_browsing/download_protection/file_analyzer.cc b/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
--- a/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
+++ b/chrome/browser/safe_browsing/download_protection/file_analyzer.cc
@@ -95,7 +95,7 @@ void FileAnalyzer::Start(const base::FilePath& target_path,
@@ -96,7 +96,7 @@ void FileAnalyzer::Start(const base::FilePath& target_path,
if (inspection_type == DownloadFileType::ZIP) {
StartExtractZipFeatures();
} else if (inspection_type == DownloadFileType::RAR) {
- StartExtractRarFeatures();
+ LOG(WARNING) << "Safebrowser inspection of rar files is disabled in this build";
#if defined(OS_MAC)
#if BUILDFLAG(IS_MAC)
} else if (inspection_type == DownloadFileType::DMG) {
StartExtractDmgFeatures();
diff --git a/chrome/common/safe_browsing/BUILD.gn b/chrome/common/safe_browsing/BUILD.gn
@ -80,7 +80,7 @@ diff --git a/chrome/services/file_util/safe_archive_analyzer.cc b/chrome/service
-#include "chrome/common/safe_browsing/rar_analyzer.h"
#include "chrome/common/safe_browsing/zip_analyzer.h"
#if defined(OS_MAC)
#if BUILDFLAG(IS_MAC)
@@ -46,8 +45,7 @@ void SafeArchiveAnalyzer::AnalyzeRarFile(base::File rar_file,
AnalyzeRarFileCallback callback) {
DCHECK(rar_file.IsValid());

View file

@ -19,7 +19,7 @@ Revert "[Text Fragment] Unflag fragment directive removal."
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
@@ -5360,6 +5360,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5391,6 +5391,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(chrome::android::kCCTResizableForThirdParties)},
#endif
@ -34,7 +34,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
@@ -2332,6 +2332,11 @@
@@ -2352,6 +2352,11 @@
// deep into the future to allow for experiments.
"expiry_milestone": 90
},
@ -49,7 +49,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
@@ -1239,6 +1239,10 @@ const char kEnableRestrictedWebApisDescription[] =
@@ -1227,6 +1227,10 @@ const char kEnableRestrictedWebApisDescription[] =
"Enable the restricted web APIs for dev trial. This will be replaced with "
"permission policies to control the capabilities afterwards.";
@ -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
@@ -717,6 +717,9 @@ extern const char kEnableRestrictedWebApisDescription[];
extern const char kEnableSubresourceRedirectName[];
extern const char kEnableSubresourceRedirectDescription[];
@@ -700,6 +700,9 @@ extern const char
extern const char kEnableRestrictedWebApisName[];
extern const char kEnableRestrictedWebApisDescription[];
+extern const char kEnableTextFragmentAnchorName[];
+extern const char kEnableTextFragmentAnchorDescription[];
@ -82,7 +82,7 @@ diff --git a/chrome/browser/ui/prefs/prefs_tab_helper.cc b/chrome/browser/ui/pre
registry->RegisterBooleanPref(prefs::kEnableEncryptedMedia, true);
- registry->RegisterBooleanPref(prefs::kScrollToTextFragmentEnabled, true);
+ registry->RegisterBooleanPref(prefs::kScrollToTextFragmentEnabled, false);
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
registry->RegisterDoublePref(prefs::kWebKitFontScaleFactor, 1.0);
registry->RegisterBooleanPref(prefs::kWebKitForceEnableZoom,
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
@ -100,7 +100,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
@@ -399,7 +399,7 @@ const base::Feature kStorageAccessAPI{"StorageAccessAPI",
@@ -403,7 +403,7 @@ const base::Feature kStorageAccessAPI{"StorageAccessAPI",
// Enable text snippets in URL fragments. https://crbug.com/919204.
const base::Feature kTextFragmentAnchor{"TextFragmentAnchor",
@ -112,7 +112,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
@@ -4068,9 +4068,14 @@ void Document::SetURL(const KURL& url) {
@@ -4054,9 +4054,14 @@ void Document::SetURL(const KURL& url) {
TRACE_EVENT1("navigation", "Document::SetURL", "url",
new_url.GetString().Utf8());
@ -130,7 +130,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/core/fragment_directive/text_fragment_anchor_metrics_test.cc b/third_party/blink/renderer/core/fragment_directive/text_fragment_anchor_metrics_test.cc
--- a/third_party/blink/renderer/core/fragment_directive/text_fragment_anchor_metrics_test.cc
+++ b/third_party/blink/renderer/core/fragment_directive/text_fragment_anchor_metrics_test.cc
@@ -1251,34 +1251,25 @@ TEST_P(TextFragmentRelatedMetricTest, ElementIdSuccessFailureCounts) {
@@ -1214,34 +1214,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.
@ -178,7 +178,7 @@ diff --git a/third_party/blink/renderer/core/fragment_directive/text_fragment_an
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
@@ -2262,8 +2262,7 @@
@@ -2235,8 +2235,7 @@
},
{
name: "TextFragmentIdentifiers",

View file

@ -10,25 +10,25 @@ This causes unnecessary SSDP network spam
diff --git a/chrome/browser/media/router/discovery/dial/dial_registry.cc b/chrome/browser/media/router/discovery/dial/dial_registry.cc
--- a/chrome/browser/media/router/discovery/dial/dial_registry.cc
+++ b/chrome/browser/media/router/discovery/dial/dial_registry.cc
@@ -190,10 +190,6 @@ void DialRegistry::StartPeriodicDiscovery() {
@@ -150,10 +150,6 @@ void DialRegistry::StartPeriodicDiscovery() {
return;
dial_ = CreateDialService();
dial_->AddObserver(this);
- DoDiscovery();
- repeating_timer_ = std::make_unique<base::RepeatingTimer>();
- repeating_timer_->Start(FROM_HERE, refresh_interval_delta_, this,
- &DialRegistry::DoDiscovery);
}
void DialRegistry::DoDiscovery() {
@@ -207,8 +203,6 @@ void DialRegistry::StopPeriodicDiscovery() {
// Always send the current device list with the next discovery request. This
// may not be necessary, but is done to match previous behavior.
++registry_generation_;
@@ -170,8 +166,6 @@ void DialRegistry::StopPeriodicDiscovery() {
if (!dial_)
return;
- repeating_timer_->Stop();
- repeating_timer_.reset();
dial_->RemoveObserver(this);
ClearDialService();
}
--
2.25.1

View file

@ -59,18 +59,18 @@ diff --git a/components/embedder_support/origin_trials/origin_trial_policy_impl.
diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
--- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc
@@ -6705,7 +6705,6 @@ void NavigationRequest::RestartBackForwardCachedNavigationImpl() {
@@ -6664,7 +6664,6 @@ void NavigationRequest::RestartBackForwardCachedNavigationImpl() {
void NavigationRequest::ForceEnableOriginTrials(
const std::vector<std::string>& trials) {
DCHECK(!HasCommitted());
- commit_params_->force_enabled_origin_trials = trials;
}
absl::optional<network::mojom::BlockedByResponseReason>
network::CrossOriginEmbedderPolicy
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -480,10 +480,6 @@ void FillNavigationParamsRequest(
@@ -468,10 +468,6 @@ void FillNavigationParamsRequest(
common_params.initiator_origin.value();
}
@ -81,7 +81,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra
navigation_params->was_discarded = commit_params.was_discarded;
navigation_params->document_ukm_source_id =
commit_params.document_ukm_source_id;
@@ -516,12 +512,6 @@ void FillNavigationParamsRequest(
@@ -504,12 +500,6 @@ void FillNavigationParamsRequest(
navigation_params->web_bundle_claimed_url =
commit_params.web_bundle_claimed_url;
@ -94,7 +94,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra
if (!commit_params.early_hints_preloaded_resources.empty()) {
navigation_params->early_hints_preloaded_resources = WebVector<WebURL>();
for (const auto& resource : commit_params.early_hints_preloaded_resources) {
@@ -568,11 +558,6 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams(
@@ -556,11 +546,6 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams(
info->url_request.GetURLRequestExtraData().get());
DCHECK(url_request_extra_data);
@ -106,7 +106,7 @@ diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_fra
blink::NavigationDownloadPolicy download_policy;
download_policy.ApplyDownloadFramePolicy(
info->is_opener_navigation, info->url_request.HasUserGesture(),
@@ -591,7 +576,7 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams(
@@ -578,7 +563,7 @@ blink::mojom::CommonNavigationParamsPtr MakeCommonNavigationParams(
info->url_request.HasUserGesture(),
info->url_request.HasTextFragmentToken(),
info->should_check_main_world_content_security_policy,
@ -158,7 +158,7 @@ diff --git a/third_party/blink/common/origin_trials/trial_token_validator.cc b/t
diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc
--- a/third_party/blink/renderer/core/loader/document_loader.cc
+++ b/third_party/blink/renderer/core/loader/document_loader.cc
@@ -150,31 +150,18 @@ Vector<OriginTrialFeature> CopyInitiatorOriginTrials(
@@ -151,31 +151,18 @@ Vector<OriginTrialFeature> CopyInitiatorOriginTrials(
WebVector<int> CopyInitiatorOriginTrials(
const Vector<OriginTrialFeature>& initiator_origin_trial_features) {
WebVector<int> result;
@ -190,7 +190,7 @@ diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_p
return result;
}
@@ -2468,10 +2455,6 @@ void DocumentLoader::CreateParserPostCommit() {
@@ -2497,10 +2484,6 @@ void DocumentLoader::CreateParserPostCommit() {
OriginTrialFeature::kTouchEventFeatureDetection);
}
@ -233,7 +233,7 @@ diff --git a/third_party/blink/renderer/core/loader/http_equiv.cc b/third_party/
diff --git a/third_party/blink/renderer/core/origin_trials/origin_trial_context.cc b/third_party/blink/renderer/core/origin_trials/origin_trial_context.cc
--- a/third_party/blink/renderer/core/origin_trials/origin_trial_context.cc
+++ b/third_party/blink/renderer/core/origin_trials/origin_trial_context.cc
@@ -277,13 +277,6 @@ void OriginTrialContext::AddToken(const String& token) {
@@ -314,13 +314,6 @@ void OriginTrialContext::AddToken(const String& token) {
void OriginTrialContext::AddTokenFromExternalScript(
const String& token,
const SecurityOrigin* origin) {
@ -247,7 +247,7 @@ diff --git a/third_party/blink/renderer/core/origin_trials/origin_trial_context.
}
void OriginTrialContext::AddTokenInternal(const String& token,
@@ -395,8 +388,6 @@ bool OriginTrialContext::InstallSettingFeature(
@@ -440,8 +433,6 @@ bool OriginTrialContext::InstallSettingFeature(
}
void OriginTrialContext::AddFeature(OriginTrialFeature feature) {

View file

@ -16,7 +16,7 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
- base::FEATURE_ENABLED_BY_DEFAULT};
+ base::FEATURE_DISABLED_BY_DEFAULT};
#if defined(OS_LINUX)
#if BUILDFLAG(IS_LINUX)
// Enable vaapi video decoding on linux. This is already enabled by default on
--
2.25.1

View file

@ -13,7 +13,7 @@ Including initial metrics opt-out
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivityBase.java
@@ -46,7 +46,7 @@ public abstract class FirstRunActivityBase extends AsyncInitializationActivity {
@@ -45,7 +45,7 @@ public abstract class FirstRunActivityBase extends AsyncInitializationActivity {
static final String OPEN_ADVANCED_SYNC_SETTINGS = "OpenAdvancedSyncSettings";
@ -25,7 +25,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
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
@@ -61,7 +61,6 @@
@@ -62,7 +62,6 @@
#include "chrome/browser/hid/chrome_hid_delegate.h"
#include "chrome/browser/interstitials/enterprise_util.h"
#include "chrome/browser/lifetime/browser_shutdown.h"
@ -33,7 +33,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#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"
@@ -4114,16 +4113,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4106,16 +4105,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
content::NavigationHandle* handle) {
std::vector<std::unique_ptr<content::NavigationThrottle>> throttles;
@ -50,7 +50,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),
@@ -4221,10 +4210,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4213,10 +4202,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
&throttles);
#endif
@ -64,7 +64,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
diff --git a/chrome/browser/metrics/chrome_metrics_services_manager_client.cc b/chrome/browser/metrics/chrome_metrics_services_manager_client.cc
--- a/chrome/browser/metrics/chrome_metrics_services_manager_client.cc
+++ b/chrome/browser/metrics/chrome_metrics_services_manager_client.cc
@@ -74,7 +74,7 @@ namespace internal {
@@ -75,7 +75,7 @@ namespace internal {
// recording and reporting are enabled. If the feature is enabled, but no
// consent is given, then there will be no recording or reporting.
const base::Feature kMetricsReportingFeature{"MetricsReporting",

View file

@ -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
@@ -1248,8 +1248,6 @@ static_library("ui") {
@@ -1244,8 +1244,6 @@ static_library("ui") {
"singleton_tabs.h",
"startup/automation_infobar_delegate.cc",
"startup/automation_infobar_delegate.h",

View file

@ -3,23 +3,23 @@ Date: Thu, 27 Feb 2020 23:23:59 +0100
Subject: Do not compile QR code sharing
---
.../chrome/browser/ui/RootUiCoordinator.java | 5 -----
.../ChromeProvidedSharingOptionsProvider.java | 17 -----------------
chrome/browser/share/android/java_sources.gni | 18 ------------------
3 files changed, 40 deletions(-)
.../chrome/browser/ui/RootUiCoordinator.java | 5 -----
.../ChromeProvidedSharingOptionsProvider.java | 19 -------------------
chrome/browser/share/android/java_sources.gni | 18 ------------------
3 files changed, 42 deletions(-)
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
@@ -82,7 +82,6 @@ import org.chromium.chrome.browser.share.ShareButtonController;
@@ -84,7 +84,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;
-import org.chromium.chrome.browser.share.qrcode.QrCodeDialog;
import org.chromium.chrome.browser.share.scroll_capture.ScrollCaptureManager;
import org.chromium.chrome.browser.subscriptions.CommerceSubscriptionsServiceFactory;
import org.chromium.chrome.browser.tab.AccessibilityVisibilityHandler;
import org.chromium.chrome.browser.tab.AutofillSessionLifetimeController;
@@ -423,10 +422,6 @@ public class RootUiCoordinator
@@ -426,10 +425,6 @@ public class RootUiCoordinator
}
public void onAttachFragment(Fragment fragment) {
@ -41,23 +41,25 @@ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/s
import org.chromium.chrome.browser.share.screenshot.ScreenshotCoordinator;
import org.chromium.chrome.browser.share.send_tab_to_self.SendTabToSelfCoordinator;
import org.chromium.chrome.browser.share.share_sheet.ShareSheetLinkToggleMetricsHelper.LinkToggleMetricsDetails;
@@ -297,9 +296,6 @@ public class ChromeProvidedSharingOptionsProvider {
@@ -298,9 +297,6 @@ public class ChromeProvidedSharingOptionsProvider {
mOrderedFirstPartyOptions.add(createCopyFirstPartyOption());
mOrderedFirstPartyOptions.add(createCopyTextFirstPartyOption());
mOrderedFirstPartyOptions.add(createSendTabToSelfFirstPartyOption());
- if (!mTabProvider.get().getWebContents().isIncognito()) {
- if (!mTabProvider.get().isIncognito()) {
- mOrderedFirstPartyOptions.add(createQrCodeFirstPartyOption());
- }
if (UserPrefs.get(Profile.getLastUsedRegularProfile()).getBoolean(Pref.PRINTING_ENABLED)) {
mOrderedFirstPartyOptions.add(createPrintingFirstPartyOption());
}
@@ -423,19 +419,6 @@ public class ChromeProvidedSharingOptionsProvider {
@@ -448,21 +444,6 @@ public class ChromeProvidedSharingOptionsProvider {
.build();
}
- private FirstPartyOption createQrCodeFirstPartyOption() {
- return new FirstPartyOptionBuilder(
- ContentType.LINK_PAGE_VISIBLE, ContentType.LINK_PAGE_NOT_VISIBLE, ContentType.IMAGE)
- .setDetailedContentTypesToDisableFor(
- DetailedContentType.LIGHTWEIGHT_REACTION, DetailedContentType.WEB_NOTES)
- .setIcon(R.drawable.qr_code, R.string.qr_code_share_icon_label)
- .setFeatureNameForMetrics("SharingHubAndroid.QRCodeSelected")
- .setOnClickCallback((view) -> {

View file

@ -9,7 +9,7 @@ Subject: Do not hide component extensions
diff --git a/extensions/common/extension.cc b/extensions/common/extension.cc
--- a/extensions/common/extension.cc
+++ b/extensions/common/extension.cc
@@ -455,9 +455,8 @@ bool Extension::ShouldDisplayInNewTabPage() const {
@@ -469,9 +469,8 @@ bool Extension::ShouldDisplayInNewTabPage() const {
}
bool Extension::ShouldExposeViaManagementAPI() const {

View file

@ -11,7 +11,7 @@ This patch allows building with use_sysroot=false
diff --git a/base/BUILD.gn b/base/BUILD.gn
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
@@ -1418,7 +1418,7 @@ component("base") {
@@ -1464,7 +1464,7 @@ mixed_component("base") {
if (!use_sysroot &&
(is_android || ((is_linux || is_chromeos) && !is_chromecast)) &&
host_toolchain != "//build/toolchain/cros:host") {

View file

@ -9,7 +9,7 @@ Subject: DoH secure mode by default
diff --git a/chrome/browser/net/stub_resolver_config_reader.cc b/chrome/browser/net/stub_resolver_config_reader.cc
--- a/chrome/browser/net/stub_resolver_config_reader.cc
+++ b/chrome/browser/net/stub_resolver_config_reader.cc
@@ -154,7 +154,7 @@ StubResolverConfigReader::StubResolverConfigReader(PrefService* local_state,
@@ -155,7 +155,7 @@ StubResolverConfigReader::StubResolverConfigReader(PrefService* local_state,
if (entries.count("dns-over-https@1")) {
// The user has "Enabled" selected.
local_state_->SetString(prefs::kDnsOverHttpsMode,
@ -18,7 +18,7 @@ diff --git a/chrome/browser/net/stub_resolver_config_reader.cc b/chrome/browser/
} else if (entries.count("dns-over-https@2")) {
// The user has "Disabled" selected.
local_state_->SetString(prefs::kDnsOverHttpsMode,
@@ -334,22 +334,7 @@ SecureDnsConfig StubResolverConfigReader::GetAndUpdateConfiguration(
@@ -335,22 +335,7 @@ SecureDnsConfig StubResolverConfigReader::GetAndUpdateConfiguration(
check_parental_controls = false;
}

View file

@ -0,0 +1,261 @@
From: uazo <uazo@users.noreply.github.com>
Date: Tue, 18 Jan 2022 16:02:06 +0000
Subject: Enable Certificate Transparency
Disable CT reporting
---
chrome/browser/about_flags.cc | 5 +++++
chrome/browser/browser_features.cc | 2 +-
.../pki_metadata_component_installer.cc | 3 ++-
chrome/browser/flag_descriptions.cc | 4 ++++
chrome/browser/flag_descriptions.h | 3 +++
chrome/browser/net/system_network_context_manager.cc | 4 ----
chrome/browser/ssl/sct_reporting_service.cc | 2 +-
chrome/common/chrome_features.cc | 2 +-
net/http/transport_security_state.cc | 12 +++++-------
net/url_request/report_sender.cc | 2 +-
services/network/network_context.cc | 10 +++++++---
services/network/public/cpp/features.gni | 2 +-
services/network/sct_auditing/sct_auditing_cache.cc | 3 +--
13 files changed, 32 insertions(+), 22 deletions(-)
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
@@ -7683,6 +7683,11 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kWebBluetoothBondOnDemandDescription, kOsWin | kOsLinux,
FEATURE_VALUE_TYPE(features::kWebBluetoothBondOnDemand)},
+ {"certificate-transparency-enabled",
+ flag_descriptions::kCTEnabledName,
+ flag_descriptions::kCTEnabledDescription, kOsAndroid,
+ FEATURE_VALUE_TYPE(features::kCertificateTransparencyAndroid)},
+
#if BUILDFLAG(IS_CHROMEOS_ASH)
{"enable-libinput-to-handle-touchpad",
flag_descriptions::kEnableLibinputToHandleTouchpadName,
diff --git a/chrome/browser/browser_features.cc b/chrome/browser/browser_features.cc
--- a/chrome/browser/browser_features.cc
+++ b/chrome/browser/browser_features.cc
@@ -156,7 +156,7 @@ const base::Feature kWebUsbDeviceDetection{"WebUsbDeviceDetection",
#if BUILDFLAG(IS_ANDROID)
// Enables Certificate Transparency on Android.
const base::Feature kCertificateTransparencyAndroid{
- "CertificateTransparencyAndroid", base::FEATURE_DISABLED_BY_DEFAULT};
+ "CertificateTransparencyAndroid", base::FEATURE_ENABLED_BY_DEFAULT};
#endif
const base::Feature kLargeFaviconFromGoogle{"LargeFaviconFromGoogle",
diff --git a/chrome/browser/component_updater/pki_metadata_component_installer.cc b/chrome/browser/component_updater/pki_metadata_component_installer.cc
--- a/chrome/browser/component_updater/pki_metadata_component_installer.cc
+++ b/chrome/browser/component_updater/pki_metadata_component_installer.cc
@@ -48,7 +48,8 @@ const char kGoogleOperatorName[] = "Google";
// The extension id is: efniojlnjndmcbiieegkicadnoecjjef
const uint8_t kPKIMetadataPublicKeySHA256[32] = {
0x45, 0xd8, 0xe9, 0xbd, 0x9d, 0x3c, 0x21, 0x88, 0x44, 0x6a, 0x82,
- 0x03, 0xde, 0x42, 0x99, 0x45, 0x66, 0x25, 0xfe, 0xb3, 0xd1, 0xf8,
+ // this is changed on purpose in Bromite
+ 0x01, 0x02, 0x03, 0x04, 0x05, 0x66, 0x25, 0xfe, 0xb3, 0xd1, 0xf8,
0x11, 0x65, 0xb4, 0x6f, 0xd3, 0x1b, 0x21, 0x89, 0xbe, 0x9c};
const base::FilePath::CharType kCTConfigProtoFileName[] =
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
@@ -5580,6 +5580,10 @@ const char kUIDebugToolsDescription[] =
"Enables additional keyboard shortcuts to help debugging.";
#endif
+const char kCTEnabledName[] = "Enable Certificate Transparency";
+const char kCTEnabledDescription[] =
+ "Enables compliance against the Certificate Transparency Policy, without any reports being issued.";
+
#if defined(WEBRTC_USE_PIPEWIRE)
const char kWebrtcPipeWireCapturerName[] = "WebRTC PipeWire support";
const char kWebrtcPipeWireCapturerDescription[] =
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
@@ -3253,6 +3253,9 @@ extern const char kUIDebugToolsName[];
extern const char kUIDebugToolsDescription[];
#endif
+extern const char kCTEnabledName[];
+extern const char kCTEnabledDescription[];
+
#if defined(WEBRTC_USE_PIPEWIRE)
extern const char kWebrtcPipeWireCapturerName[];
extern const char kWebrtcPipeWireCapturerDescription[];
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
@@ -781,7 +781,6 @@ void SystemNetworkContextManager::SetEnableCertificateTransparencyForTesting(
bool SystemNetworkContextManager::IsCertificateTransparencyEnabled() {
if (certificate_transparency_enabled_for_testing_.has_value())
return certificate_transparency_enabled_for_testing_.value();
-#if BUILDFLAG(GOOGLE_CHROME_BRANDING) && defined(OFFICIAL_BUILD)
// TODO(carlosil): Figure out if we can/should remove the OFFICIAL_BUILD and
// GOOGLE_CHROME_BRANDING checks now that enforcement does not rely on build
// dates, and allow embedders to enforce.
@@ -795,9 +794,6 @@ bool SystemNetworkContextManager::IsCertificateTransparencyEnabled() {
#else
return true;
#endif
-#else
- return false;
-#endif
}
network::mojom::NetworkContextParamsPtr
diff --git a/chrome/browser/ssl/sct_reporting_service.cc b/chrome/browser/ssl/sct_reporting_service.cc
--- a/chrome/browser/ssl/sct_reporting_service.cc
+++ b/chrome/browser/ssl/sct_reporting_service.cc
@@ -109,7 +109,7 @@ void SCTReportingService::SetReportingEnabled(bool enabled) {
// Iterate over StoragePartitions for this Profile, and for each get the
// NetworkContext and enable or disable SCT auditing.
profile_->ForEachStoragePartition(
- base::BindRepeating(&SetSCTAuditingEnabledForStoragePartition, enabled));
+ base::BindRepeating(&SetSCTAuditingEnabledForStoragePartition, false));
if (!enabled)
content::GetNetworkService()->ClearSCTAuditingCache();
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
@@ -928,7 +928,7 @@ const base::Feature kScrollCapture{"ScrollCapture",
// should be sampled. Default sampling rate is 1/10,000 certificates.
#if BUILDFLAG(IS_ANDROID)
const base::Feature kSCTAuditing{"SCTAuditing",
- base::FEATURE_DISABLED_BY_DEFAULT};
+ base::FEATURE_DISABLED_BY_DEFAULT}; // Bromite: guard against enabling this
#else
const base::Feature kSCTAuditing{"SCTAuditing",
base::FEATURE_ENABLED_BY_DEFAULT};
diff --git a/net/http/transport_security_state.cc b/net/http/transport_security_state.cc
--- a/net/http/transport_security_state.cc
+++ b/net/http/transport_security_state.cc
@@ -341,6 +341,7 @@ bool DecodeHSTSPreload(const std::string& search_hostname, PreloadResult* out) {
#if !BUILDFLAG(INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST)
if (g_hsts_source == nullptr)
return false;
+#error "BUILDFLAG(INCLUDE_TRANSPORT_SECURITY_STATE_PRELOAD_LIST) must be enabled"
#endif
bool found = false;
@@ -384,11 +385,11 @@ bool DecodeHSTSPreload(const std::string& search_hostname, PreloadResult* out) {
// static
const base::Feature TransportSecurityState::kDynamicExpectCTFeature{
- "DynamicExpectCT", base::FEATURE_ENABLED_BY_DEFAULT};
+ "DynamicExpectCT", base::FEATURE_DISABLED_BY_DEFAULT};
// static
const base::Feature TransportSecurityState::kCertificateTransparencyEnforcement{
- "CertificateTransparencyEnforcement", base::FEATURE_ENABLED_BY_DEFAULT};
+ "CertificateTransparencyEnforcement", base::FEATURE_ENABLED_BY_DEFAULT}; // Bromite: guard against disabling this
void SetTransportSecurityStateSourceForTesting(
const TransportSecurityStateSource* source) {
@@ -414,11 +415,6 @@ TransportSecurityState::TransportSecurityState(
features::kPartitionExpectCTStateByNetworkIsolationKey)) {
// Static pinning is only enabled for official builds to make sure that
// others don't end up with pins that cannot be easily updated.
-#if !BUILDFLAG(GOOGLE_CHROME_BRANDING) || BUILDFLAG(IS_ANDROID) || \
- BUILDFLAG(IS_IOS)
- enable_static_pins_ = false;
- enable_static_expect_ct_ = false;
-#endif
// Check that there no invalid entries in the static HSTS bypass list.
for (auto& host : hsts_host_bypass_list) {
DCHECK(host.find('.') == std::string::npos);
@@ -455,6 +451,8 @@ TransportSecurityState::PKPStatus TransportSecurityState::CheckPublicKeyPins(
if (!HasPublicKeyPins(host_port_pair.host())) {
return PKPStatus::OK;
}
+ if (ct_emergency_disable_)
+ return PKPStatus::OK;
PKPStatus pin_validity = CheckPublicKeyPinsImpl(
host_port_pair, is_issued_by_known_root, public_key_hashes,
diff --git a/net/url_request/report_sender.cc b/net/url_request/report_sender.cc
--- a/net/url_request/report_sender.cc
+++ b/net/url_request/report_sender.cc
@@ -87,7 +87,7 @@ void ReportSender::Send(const GURL& report_uri,
URLRequest* raw_url_request = url_request.get();
inflight_requests_[raw_url_request] = std::move(url_request);
- raw_url_request->Start();
+ OnResponseStarted(raw_url_request, OK);
}
void ReportSender::OnResponseStarted(URLRequest* request, int net_error) {
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -2456,7 +2456,7 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
// TransportSecurityState. Since no requests have been made yet, safe to do
// this even after the call to Build().
- if (params_->enable_certificate_reporting) {
+ if ((false /*params_->enable_certificate_reporting*/)) {
net::NetworkTrafficAnnotationTag traffic_annotation =
net::DefineNetworkTrafficAnnotation("domain_security_policy", R"(
semantics {
@@ -2497,7 +2497,7 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
#endif // BUILDFLAG(IS_ANDROID)
#if BUILDFLAG(IS_CT_SUPPORTED)
- if (params_->enable_expect_ct_reporting) {
+ if ((false)/*params_->enable_expect_ct_reporting*/) {
LazyCreateExpectCTReporter(result.url_request_context.get());
result.url_request_context->transport_security_state()->SetExpectCTReporter(
expect_ct_reporter_.get());
@@ -2509,9 +2509,13 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
result.url_request_context->transport_security_state()
->SetRequireCTDelegate(require_ct_delegate_.get());
}
+ else {
+ result.url_request_context->transport_security_state()
+ ->SetCTEmergencyDisabled(true);
+ }
#endif // BUILDFLAG(IS_CT_SUPPORTED)
- if (params_->enable_domain_reliability) {
+ if ((false)/*params_->enable_domain_reliability*/) {
domain_reliability_monitor_ =
std::make_unique<domain_reliability::DomainReliabilityMonitor>(
result.url_request_context.get(),
diff --git a/services/network/public/cpp/features.gni b/services/network/public/cpp/features.gni
--- a/services/network/public/cpp/features.gni
+++ b/services/network/public/cpp/features.gni
@@ -7,7 +7,7 @@ import("//build/config/features.gni")
declare_args() {
# Certificate transparency is not supported on iOS.
# TODO(mmenke): It's actually not supported on Android, either.
- is_ct_supported = !is_ios
+ is_ct_supported = true
# Controls whether P2P is exposed by the network service.
# Optional to reduce avoid having Chrome on iOS depends on
diff --git a/services/network/sct_auditing/sct_auditing_cache.cc b/services/network/sct_auditing/sct_auditing_cache.cc
--- a/services/network/sct_auditing/sct_auditing_cache.cc
+++ b/services/network/sct_auditing/sct_auditing_cache.cc
@@ -154,8 +154,6 @@ void SCTAuditingCache::MaybeEnqueueReport(
// Track high-water-mark for the size of the cache.
if (dedupe_cache_.size() > dedupe_cache_size_hwm_)
dedupe_cache_size_hwm_ = dedupe_cache_.size();
-
- context->sct_auditing_handler()->AddReporter(cache_key, std::move(report));
}
void SCTAuditingCache::ClearCache() {
@@ -164,6 +162,7 @@ void SCTAuditingCache::ClearCache() {
}
void SCTAuditingCache::set_enabled(bool enabled) {
+ enabled = false;
enabled_ = enabled;
SetPeriodicMetricsEnabled(enabled);
}
--
2.25.1

View file

@ -10,11 +10,11 @@ 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
@@ -957,11 +957,7 @@ const base::Feature kShow10_10ObsoleteInfobar{
@@ -976,11 +976,7 @@ const base::Feature kShow10_10ObsoleteInfobar{
// browser_features, as they are only used on the browser side.
const base::Feature kSitePerProcess {
"SitePerProcess",
-#if defined(OS_ANDROID)
-#if BUILDFLAG(IS_ANDROID)
- base::FEATURE_DISABLED_BY_DEFAULT
-#else
base::FEATURE_ENABLED_BY_DEFAULT

View file

@ -1,6 +1,6 @@
From: uazo <uazo@users.noreply.github.com>
Date: Sat, 29 Jan 2022 15:25:19 +0000
Subject: Enable StrictOriginIsolation and SitePerProcess
Subject: Enable StrictOriginIsolation and SitePerProcess flags
---
chrome/browser/chrome_content_browser_client.cc | 4 ++--
@ -11,7 +11,7 @@ Subject: Enable StrictOriginIsolation and SitePerProcess
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
@@ -1271,7 +1271,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
@@ -1278,7 +1278,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
registry->RegisterFilePathPref(prefs::kDiskCacheDir, base::FilePath());
registry->RegisterIntegerPref(prefs::kDiskCacheSize, 0);
registry->RegisterStringPref(prefs::kIsolateOrigins, std::string());
@ -20,7 +20,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
registry->RegisterBooleanPref(prefs::kTabFreezingEnabled, true);
}
@@ -1284,7 +1284,7 @@ void ChromeContentBrowserClient::RegisterProfilePrefs(
@@ -1291,7 +1291,7 @@ void ChromeContentBrowserClient::RegisterProfilePrefs(
// user policy in addition to the same named ones in Local State (which are
// used for mapping the command-line flags).
registry->RegisterStringPref(prefs::kIsolateOrigins, std::string());
@ -37,7 +37,7 @@ diff --git a/components/site_isolation/site_isolation_policy.cc b/components/sit
// static
bool SiteIsolationPolicy::IsEnterprisePolicyApplicable() {
+ if ((true)) return true;
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
// https://crbug.com/844118: Limiting policy to devices with > 1GB RAM.
// Using 1077 rather than 1024 because 1) it helps ensure that devices with
@@ -100,6 +101,7 @@ bool SiteIsolationPolicy::IsEnterprisePolicyApplicable() {
@ -51,7 +51,7 @@ diff --git a/components/site_isolation/site_isolation_policy.cc b/components/sit
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
@@ -876,7 +876,7 @@ const base::Feature kStorageServiceOutOfProcess{
@@ -896,7 +896,7 @@ const base::Feature kStorageServiceOutOfProcess{
// Controls whether site isolation should use origins instead of scheme and
// eTLD+1.
const base::Feature kStrictOriginIsolation{"StrictOriginIsolation",
@ -60,6 +60,5 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
// Enables subresource loading with Web Bundles.
const base::Feature kSubresourceWebBundles{"SubresourceWebBundles",
--
--
2.25.1

View file

@ -4,18 +4,22 @@ Subject: Enable darken websites checkbox in themes
Unexpire #darken-websites-checkbox-in-themes-setting
---
chrome/browser/flag-metadata.json | 2 +-
chrome/browser/flag-metadata.json | 6 +++---
components/content_settings/core/common/features.cc | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
2 files changed, 4 insertions(+), 4 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
@@ -1031,7 +1031,7 @@
@@ -1037,9 +1037,9 @@
"expiry_milestone": 100
},
{
"name": "darken-websites-checkbox-in-themes-setting",
"owners": [ "lazzzis@google.com", "twellington" ],
- "expiry_milestone": 98
- "name": "darken-websites-checkbox-in-themes-setting",
- "owners": [ "nemco@google.com", "wenyufu@google.com", "twellington" ],
- "expiry_milestone": 110
+ "name": "darken-websites-checkbox-in-themes-setting", // this is always enabled in Bromite
+ "owners": [ "nemco@google.com", "wenyufu@google.com", "twellington" ], // -
+ "expiry_milestone": -1
},
{
@ -25,12 +29,12 @@ diff --git a/components/content_settings/core/common/features.cc b/components/co
+++ b/components/content_settings/core/common/features.cc
@@ -18,7 +18,7 @@ const base::Feature kImprovedCookieControls{"ImprovedCookieControls",
// Enables auto dark feature in theme settings.
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
const base::Feature kDarkenWebsitesCheckboxInThemesSetting{
- "DarkenWebsitesCheckboxInThemesSetting", base::FEATURE_DISABLED_BY_DEFAULT};
+ "DarkenWebsitesCheckboxInThemesSetting", base::FEATURE_ENABLED_BY_DEFAULT};
constexpr base::FeatureParam<bool> kDarkenWebsitesCheckboxOptOut{
&kDarkenWebsitesCheckboxInThemesSetting, "opt_out", true};
#endif // defined(OS_ANDROID)
#endif // BUILDFLAG(IS_ANDROID)
--
2.25.1

View file

@ -14,18 +14,18 @@ See also: https://github.com/bromite/bromite/issues/547
---
android_webview/browser/aw_contents.cc | 1 +
chrome/android/BUILD.gn | 1 +
.../settings/PasswordSettings.java | 82 ++++++++++++++++++-
.../chromium/chrome/browser/tab/TabImpl.java | 50 +++++++++++
.../settings/PasswordSettings.java | 81 ++++++++++++++++++-
.../chromium/chrome/browser/tab/TabImpl.java | 50 ++++++++++++
.../browser/tab/TabViewAndroidDelegate.java | 14 ++++
chrome/browser/BUILD.gn | 8 ++
chrome/browser/android/tab_android.cc | 27 ++++++
chrome/browser/android/tab_android.cc | 27 +++++++
chrome/browser/android/tab_android.h | 2 +
.../tab_web_contents_delegate_android.cc | 3 +-
.../strings/android_chrome_strings.grd | 6 ++
chrome/browser/ui/tab_helpers.cc | 7 +-
.../browser/content_autofill_driver.cc | 50 +++++++++--
chrome/browser/ui/tab_helpers.cc | 8 +-
.../browser/content_autofill_driver.cc | 50 ++++++++++--
.../content/browser/content_autofill_driver.h | 8 +-
.../content_autofill_driver_factory.cc | 9 +-
.../content_autofill_driver_factory.cc | 9 ++-
.../browser/content_autofill_driver_factory.h | 4 +
.../renderer/password_autofill_agent.cc | 5 +-
.../autofill/core/common/autofill_prefs.cc | 8 ++
@ -49,7 +49,7 @@ diff --git a/android_webview/browser/aw_contents.cc b/android_webview/browser/aw
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -429,6 +429,7 @@ android_library("chrome_java") {
@@ -430,6 +430,7 @@ android_library("chrome_java") {
"//chrome/browser/xsurface:java",
"//components/autofill/android:autofill_java",
"//components/autofill_assistant/browser:proto_java",
@ -60,8 +60,8 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
@@ -51,12 +51,18 @@ import org.chromium.ui.text.SpanApplier;
@@ -56,13 +56,18 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.Locale;
+import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
@ -74,14 +74,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
* to view saved passwords (just the username and URL), and to delete saved passwords.
*/
public class PasswordSettings extends PreferenceFragmentCompat
- implements PasswordManagerHandler.PasswordListObserver, Preference.OnPreferenceClickListener {
+ implements PasswordManagerHandler.PasswordListObserver, Preference.OnPreferenceClickListener,
+ INeedSnackbarManager {
// Keys for name/password dictionaries.
public static final String PASSWORD_LIST_URL = "url";
public static final String PASSWORD_LIST_NAME = "name";
@@ -74,6 +80,12 @@ public class PasswordSettings extends PreferenceFragmentCompat
public static final String PREF_TRUSTED_VAULT_OPT_IN = "trusted_vault_opt_in";
implements PasswordManagerHandler.PasswordListObserver,
- Preference.OnPreferenceClickListener {
+ Preference.OnPreferenceClickListener, INeedSnackbarManager {
@IntDef({TrustedVaultBannerState.NOT_SHOWN, TrustedVaultBannerState.OFFER_OPT_IN,
TrustedVaultBannerState.OPTED_IN})
@Retention(RetentionPolicy.SOURCE)
@@ -89,6 +94,12 @@ public class PasswordSettings extends PreferenceFragmentCompat
public static final String PREF_TRUSTED_VAULT_BANNER = "trusted_vault_banner";
public static final String PREF_KEY_MANAGE_ACCOUNT_LINK = "manage_account_link";
+ public static final String PREF_ANDROID_AUTOFILL_SWITCH = "android_autofill_switch";
@ -93,7 +93,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
// A PasswordEntryViewer receives a boolean value with this key. If set true, the the entry was
// part of a search result.
@@ -107,6 +119,8 @@ public class PasswordSettings extends PreferenceFragmentCompat
@@ -123,6 +134,8 @@ public class PasswordSettings extends PreferenceFragmentCompat
private String mSearchQuery;
private Preference mLinkPref;
private ChromeSwitchPreference mSavePasswordsSwitch;
@ -101,16 +101,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
+ private ChromeSwitchPreference mEnableAndroidAutofillIncognitoSwitch;
private ChromeSwitchPreference mAutoSignInSwitch;
private ChromeBasePreference mCheckPasswords;
private ChromeBasePreference mTrustedVaultOptIn;
@@ -271,6 +285,7 @@ public class PasswordSettings extends PreferenceFragmentCompat
getPreferenceScreen().removeAll();
if (mSearchQuery == null) {
createSavePasswordsSwitch();
+ createEnableAndroidAutofillSwitch();
createAutoSignInCheckbox();
if (mPasswordCheck != null) {
createCheckPasswords();
@@ -510,6 +525,71 @@ public class PasswordSettings extends PreferenceFragmentCompat
private ChromeBasePreference mTrustedVaultBanner;
@@ -294,6 +307,7 @@ public class PasswordSettings extends PreferenceFragmentCompat
}
createSavePasswordsSwitch();
+ createEnableAndroidAutofillSwitch();
createAutoSignInCheckbox();
if (mPasswordCheck != null) {
createCheckPasswords();
@@ -537,6 +551,71 @@ public class PasswordSettings extends PreferenceFragmentCompat
getPrefService().getBoolean(Pref.CREDENTIALS_ENABLE_SERVICE));
}
@ -185,9 +185,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
@@ -75,6 +75,17 @@ import org.chromium.url.GURL;
import java.nio.ByteBuffer;
@@ -74,6 +74,17 @@ import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.util.ColorUtils;
import org.chromium.url.GURL;
+import android.os.Build;
+import android.util.SparseArray;
@ -203,7 +203,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
/**
* Implementation of the interface {@link Tab}. Contains and manages a {@link ContentView}.
* This class is not intended to be extended.
@@ -215,6 +226,8 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -211,6 +222,8 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
private int mThemeColor;
private boolean mUsedCriticalPersistedTabData;
@ -212,7 +212,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
/**
* Creates an instance of a {@link TabImpl}.
*
@@ -767,6 +780,11 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -765,6 +778,11 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
for (TabObserver observer : mObservers) observer.onDestroyed(this);
mObservers.clear();
@ -224,7 +224,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
mUserDataHost.destroy();
mTabViewManager.destroy();
hideNativePage(false, null);
@@ -1359,6 +1377,16 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -1343,6 +1361,16 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
return tabsPtrArray;
}
@ -241,7 +241,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
/**
* Initializes the {@link WebContents}. Completes the browser content components initialization
* around a native WebContents pointer.
@@ -1408,6 +1436,27 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -1392,6 +1420,27 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
mDelegateFactory.createContextMenuPopulatorFactory(this), this));
mWebContents.notifyRendererPreferenceUpdate();
@ -269,7 +269,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
TabHelpers.initWebContentsHelpers(this);
notifyContentChanged();
} finally {
@@ -1788,5 +1837,6 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -1772,5 +1821,6 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
void setActiveNavigationEntryTitleForUrl(long nativeTabAndroid, String url, String title);
void loadOriginalImage(long nativeTabAndroid);
boolean handleNonNavigationAboutURL(GURL url);
@ -308,7 +308,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabViewAndr
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -2403,6 +2403,14 @@ static_library("browser") {
@@ -2398,6 +2398,14 @@ static_library("browser") {
"//ui/webui/resources/cr_components/most_visited:mojom",
"//ui/webui/resources/js/browser_command:mojo_bindings",
]
@ -321,8 +321,8 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
+ }
+
if (is_chromeos_ash) {
testonly = enable_weston_test
sources += [
"apps/digital_goods/digital_goods_factory_impl.cc",
diff --git a/chrome/browser/android/tab_android.cc b/chrome/browser/android/tab_android.cc
--- a/chrome/browser/android/tab_android.cc
+++ b/chrome/browser/android/tab_android.cc
@ -340,7 +340,7 @@ diff --git a/chrome/browser/android/tab_android.cc b/chrome/browser/android/tab_
using base::android::AttachCurrentThread;
using base::android::ConvertUTF8ToJavaString;
using base::android::JavaParamRef;
@@ -439,3 +446,23 @@ static void JNI_TabImpl_Init(JNIEnv* env, const JavaParamRef<jobject>& obj) {
@@ -444,3 +451,23 @@ static void JNI_TabImpl_Init(JNIEnv* env, const JavaParamRef<jobject>& obj) {
// This will automatically bind to the Java object and pass ownership there.
new TabAndroid(env, obj);
}
@ -367,7 +367,7 @@ diff --git a/chrome/browser/android/tab_android.cc b/chrome/browser/android/tab_
diff --git a/chrome/browser/android/tab_android.h b/chrome/browser/android/tab_android.h
--- a/chrome/browser/android/tab_android.h
+++ b/chrome/browser/android/tab_android.h
@@ -153,6 +153,8 @@ class TabAndroid : public base::SupportsUserData {
@@ -154,6 +154,8 @@ class TabAndroid : public base::SupportsUserData {
void SetDevToolsAgentHost(scoped_refptr<content::DevToolsAgentHost> host);
@ -392,7 +392,7 @@ diff --git a/chrome/browser/android/tab_web_contents_delegate_android.cc b/chrom
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
@@ -633,6 +633,12 @@ CHAR_LIMIT guidelines:
@@ -618,6 +618,12 @@ CHAR_LIMIT guidelines:
<message name="IDS_PASSWORD_SETTINGS_SAVE_PASSWORDS" desc="Title for the checkbox toggling whether passwords are saved or not. [CHAR_LIMIT=32]">
Save passwords
</message>
@ -408,7 +408,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
--- a/chrome/browser/ui/tab_helpers.cc
+++ b/chrome/browser/ui/tab_helpers.cc
@@ -151,6 +151,9 @@
@@ -152,6 +152,9 @@
#include "chrome/browser/ui/javascript_dialogs/javascript_tab_modal_dialog_manager_delegate_android.h"
#include "chrome/browser/video_tutorials/video_tutorial_tab_helper.h"
#include "content/public/common/content_features.h"
@ -418,7 +418,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
#else
#include "chrome/browser/accuracy_tips/accuracy_service_factory.h"
#include "chrome/browser/banners/app_banner_manager_desktop.h"
@@ -283,7 +286,9 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
@@ -290,7 +293,10 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
web_contents,
autofill::ChromeAutofillClient::FromWebContents(web_contents),
g_browser_process->GetApplicationLocale(),
@ -426,7 +426,8 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
+ autofill::BrowserAutofillManager::ENABLE_AUTOFILL_DOWNLOAD_MANAGER,
+ /*enable_browser_autofill_manager*/ true,
+ base::BindRepeating(&autofill::AndroidAutofillManager::Create));
if (base::FeatureList::IsEnabled(breadcrumbs::kLogBreadcrumbs))
+
if (BreadcrumbsStatus::IsEnabled())
BreadcrumbManagerTabHelper::CreateForWebContents(web_contents);
chrome_browser_net::NetErrorTabHelper::CreateForWebContents(web_contents);
diff --git a/components/autofill/content/browser/content_autofill_driver.cc b/components/autofill/content/browser/content_autofill_driver.cc
@ -605,7 +606,7 @@ diff --git a/components/autofill/content/browser/content_autofill_driver.h b/com
// Reports whether a document collects phone numbers, uses one time code, uses
// WebOTP. There are cases that the reporting is not expected:
@@ -432,6 +434,10 @@ class ContentAutofillDriver : public AutofillDriver,
@@ -431,6 +433,10 @@ class ContentAutofillDriver : public AutofillDriver,
// pointer to a common root.
raw_ptr<BrowserAutofillManager> browser_autofill_manager_;

View file

@ -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
@@ -99,30 +99,30 @@ const base::Feature kSplitCacheByIncludeCredentials{
@@ -102,30 +102,30 @@ const base::Feature kSplitCacheByIncludeCredentials{
"SplitCacheByIncludeCredentials", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kSplitCacheByNetworkIsolationKey{

View file

@ -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
@@ -714,6 +714,7 @@ chrome_java_resources = [
@@ -698,6 +698,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
@@ -1041,6 +1041,7 @@ chrome_java_sources = [
@@ -1022,6 +1022,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",
@ -308,7 +308,7 @@ 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
@@ -5573,6 +5573,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5588,6 +5588,10 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(share::kSharingDesktopScreenshotsEdit)},
#endif
@ -322,43 +322,43 @@ 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
@@ -2268,6 +2268,11 @@ const char kSharingDesktopScreenshotsDescription[] =
"Enables taking"
" screenshots from the desktop sharing hub.";
@@ -2268,6 +2268,11 @@ const char kIsolateOriginsDescription[] =
"Requires dedicated processes for an additional set of origins, "
"specified as a comma-separated list.";
+const char kSharedIntentUIName[] =
+ "Enable shared feature";
+const char kSharedIntentUIDescription[] =
+ "Enables shared feature";
+
const char kSharingHubDesktopAppMenuName[] = "Desktop Sharing Hub in App Menu";
const char kSharingHubDesktopAppMenuDescription[] =
"Enables the Chrome Sharing Hub in the 3-dot menu for desktop.";
const char kIsolationByDefaultName[] =
"Change web-facing behaviors that prevent origin-level isolation";
const char kIsolationByDefaultDescription[] =
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
@@ -1316,6 +1316,9 @@ extern const char kSharingDesktopScreenshotsDescription[];
extern const char kSharingDesktopScreenshotsEditName[];
extern const char kSharingDesktopScreenshotsEditDescription[];
@@ -1316,6 +1316,9 @@ extern const char kIsolateOriginsDescription[];
extern const char kIsolationByDefaultName[];
extern const char kIsolationByDefaultDescription[];
+extern const char kSharedIntentUIName[];
+extern const char kSharedIntentUIDescription[];
+
extern const char kSharingHubDesktopAppMenuName[];
extern const char kSharingHubDesktopAppMenuDescription[];
extern const char kSiteIsolationOptOutName[];
extern const char kSiteIsolationOptOutDescription[];
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
@@ -266,6 +266,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kServiceManagerForDownload,
&kShareButtonInTopToolbar,
&kSharedClipboardUI,
&kRelatedSearchesAlternateUx,
&kRelatedSearchesInBar,
&kRelatedSearchesSimplifiedUx,
+ &kSharedIntentUI,
&kSharingHubLinkToggle,
&kSpannableInlineAutocomplete,
&kSpecialLocaleWrapper,
@@ -667,6 +668,9 @@ const base::Feature kSearchEnginePromoExistingDevice{
&kRelatedSearchesUi,
&kSearchEnginePromoExistingDevice,
&kSearchEnginePromoNewDevice,
@@ -693,6 +694,9 @@ const base::Feature kSearchEnginePromoExistingDevice{
const base::Feature kSearchEnginePromoNewDevice{
"SearchEnginePromo.NewDevice", base::FEATURE_ENABLED_BY_DEFAULT};
@ -371,7 +371,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
@@ -130,6 +130,7 @@ extern const base::Feature kRelatedSearchesSimplifiedUx;
@@ -136,6 +136,7 @@ extern const base::Feature kRelatedSearchesSimplifiedUx;
extern const base::Feature kRelatedSearchesUi;
extern const base::Feature kSearchEnginePromoExistingDevice;
extern const base::Feature kSearchEnginePromoNewDevice;
@ -389,11 +389,11 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
+ public static final String SHARED_INTENT_UI = "SharedIntentUI";
public static final String SHARED_HIGHLIGHTING_V2 = "SharedHighlightingV2";
public static final String SHARED_HIGHLIGHTING_AMP = "SharedHighlightingAmp";
public static final String SHARING_HUB_LINK_TOGGLE = "SharingHubLinkToggle";
public static final String SHOPPING_LIST = "ShoppingList";
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
@@ -4743,6 +4743,19 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4761,6 +4761,19 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
Send text to Your Devices
</message>

View file

@ -345,7 +345,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
#include "components/version_info/version_info.h"
#include "components/viz/common/features.h"
#include "components/viz/common/switches.h"
@@ -6475,6 +6476,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -6470,6 +6471,10 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(chromeos::features::kClipboardHistoryScreenshotNudge)},
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
@ -372,7 +372,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
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
@@ -5438,6 +5438,11 @@ const char kImproveAccessibilityTreeUsingLocalMLDescription[] =
@@ -5434,6 +5434,11 @@ const char kImproveAccessibilityTreeUsingLocalMLDescription[] =
"webpage to a local machine learning library and getting annotations.";
#endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
@ -387,7 +387,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
@@ -3154,6 +3154,9 @@ extern const char kImproveAccessibilityTreeUsingLocalMLName[];
@@ -3148,6 +3148,9 @@ extern const char kImproveAccessibilityTreeUsingLocalMLName[];
extern const char kImproveAccessibilityTreeUsingLocalMLDescription[];
#endif // #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
@ -400,7 +400,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
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
@@ -238,6 +238,7 @@
@@ -237,6 +237,7 @@
#include "components/ntp_tiles/popular_sites_impl.h"
#include "components/permissions/contexts/geolocation_permission_context_android.h"
#include "components/query_tiles/tile_service_prefs.h"
@ -408,7 +408,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
#else // BUILDFLAG(IS_ANDROID)
#include "chrome/browser/cart/cart_service.h"
#include "chrome/browser/device_api/device_service_impl.h"
@@ -1267,6 +1268,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -1266,6 +1267,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
translate::TranslatePrefs::RegisterProfilePrefs(registry);
omnibox::RegisterProfilePrefs(registry);
ZeroSuggestProvider::RegisterProfilePrefs(registry);

View file

@ -9,7 +9,7 @@ Subject: Hide passwords manager link
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/password_manager/settings/PasswordSettings.java
@@ -318,7 +318,7 @@ public class PasswordSettings extends PreferenceFragmentCompat
@@ -345,7 +345,7 @@ public class PasswordSettings extends PreferenceFragmentCompat
return;
}
@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
PreferenceGroup passwordParent;
if (mSearchQuery == null) {
@@ -398,7 +398,7 @@ public class PasswordSettings extends PreferenceFragmentCompat
@@ -425,7 +425,7 @@ public class PasswordSettings extends PreferenceFragmentCompat
return;
}

View file

@ -1,22 +0,0 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Tue, 12 Jun 2018 15:03:29 +0200
Subject: Hide send reports checkbox
---
chrome/android/java/res/layout/fre_tosanduma.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/chrome/android/java/res/layout/fre_tosanduma.xml b/chrome/android/java/res/layout/fre_tosanduma.xml
--- a/chrome/android/java/res/layout/fre_tosanduma.xml
+++ b/chrome/android/java/res/layout/fre_tosanduma.xml
@@ -92,7 +92,7 @@
android:lineSpacingMultiplier="1.4"
android:text="@string/fre_send_report_check"
android:paddingStart="@dimen/fre_tos_checkbox_padding"
- android:textAppearance="@style/TextAppearance.TextMedium.Primary" />
+ android:textAppearance="@style/TextAppearance.TextMedium.Primary" android:visibility="gone" />
</LinearLayout>
<include
--
2.25.1

View file

@ -11,15 +11,15 @@ Patch adapted from https://github.com/Eloston/ungoogled-chromium/issues/814#issu
diff --git a/components/omnibox/browser/autocomplete_result.cc b/components/omnibox/browser/autocomplete_result.cc
--- a/components/omnibox/browser/autocomplete_result.cc
+++ b/components/omnibox/browser/autocomplete_result.cc
@@ -69,7 +69,8 @@ struct MatchGURLHash {
@@ -71,7 +71,8 @@ struct MatchGURLHash {
// static
size_t AutocompleteResult::GetMaxMatches(bool is_zero_suggest) {
#if (defined(OS_ANDROID))
#if BUILDFLAG(IS_ANDROID)
- constexpr size_t kDefaultMaxAutocompleteMatches = 8;
+ // changed from 8, this needs to be double the value of default_max_matches_per_provider from components/omnibox/browser/omnibox_field_trial.cc
+ constexpr size_t kDefaultMaxAutocompleteMatches = 10;
constexpr size_t kDefaultMaxZeroSuggestMatches = 15;
#elif defined(OS_IOS) // !defined(OS_ANDROID)
#elif BUILDFLAG(IS_IOS)
constexpr size_t kDefaultMaxAutocompleteMatches = 6;
diff --git a/components/omnibox/browser/omnibox_field_trial.cc b/components/omnibox/browser/omnibox_field_trial.cc
--- a/components/omnibox/browser/omnibox_field_trial.cc

View file

@ -33,7 +33,7 @@ diff --git a/third_party/blink/renderer/core/dom/build.gni b/third_party/blink/r
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
@@ -275,6 +275,7 @@
@@ -277,6 +277,7 @@
#include "third_party/blink/renderer/core/page/scrolling/root_scroller_controller.h"
#include "third_party/blink/renderer/core/page/scrolling/scroll_state_callback.h"
#include "third_party/blink/renderer/core/page/scrolling/scrolling_coordinator.h"
@ -41,7 +41,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
#include "third_party/blink/renderer/core/page/scrolling/snap_coordinator.h"
#include "third_party/blink/renderer/core/page/scrolling/top_document_root_scroller_controller.h"
#include "third_party/blink/renderer/core/page/spatial_navigation_controller.h"
@@ -344,6 +345,8 @@
@@ -345,6 +346,8 @@
#include "third_party/blink/renderer/platform/wtf/text/string_buffer.h"
#include "third_party/blink/renderer/platform/wtf/text/text_encoding_registry.h"
@ -50,7 +50,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
#ifndef NDEBUG
using WeakDocumentSet = blink::HeapHashSet<blink::WeakMember<blink::Document>>;
static WeakDocumentSet& LiveDocumentSet();
@@ -6566,6 +6569,61 @@ void Document::setAllowDeclarativeShadowRoots(bool val) {
@@ -6568,6 +6571,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);
@@ -6624,6 +6682,10 @@ void Document::FinishedParsing() {
@@ -6626,6 +6684,10 @@ void Document::FinishedParsing() {
if (frame->IsMainFrame() && ShouldMarkFontPerformance())
FontPerformance::MarkDomContentLoaded();
@ -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
@@ -1786,6 +1786,9 @@ class CORE_EXPORT Document : public ContainerNode,
@@ -1832,6 +1832,9 @@ class CORE_EXPORT Document : public ContainerNode,
void AddAXContext(AXContext*);
void RemoveAXContext(AXContext*);

View file

@ -1,122 +0,0 @@
From: hardenedfuchsiaoswhen <hardenedfuchsiaoswhen@protonmail.com>
Date: Fri, 18 Jun 2021 03:34:20 +0000
Subject: JIT-less toggle
---
chrome/android/java/res/xml/privacy_preferences.xml | 5 +++++
.../browser/privacy/settings/PrivacySettings.java | 11 +++++++++++
.../ui/android/strings/android_chrome_strings.grd | 7 +++++++
.../content/browser/BrowserStartupControllerImpl.java | 1 +
.../org/chromium/content/browser/DeviceUtilsImpl.java | 8 ++++++++
5 files changed, 32 insertions(+)
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -37,6 +37,11 @@
android:title="@string/preload_pages_title"
android:summary="@string/preload_pages_summary"
android:fragment="org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsFragment"/>
+ <org.chromium.components.browser_ui.settings.ChromeSwitchPreference
+ android:key="force_no_jit"
+ android:title="@string/force_no_jit_title"
+ android:summary="@string/force_no_jit_summary"
+ android:defaultValue="false" />
<org.chromium.components.browser_ui.settings.ChromeBasePreference
android:key="secure_dns"
android:title="@string/settings_secure_dns_title"
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
@@ -4,6 +4,7 @@
package org.chromium.chrome.browser.privacy.settings;
+import android.content.SharedPreferences;
import android.os.Build;
import android.content.SharedPreferences;
import android.os.Bundle;
@@ -84,6 +85,7 @@ public class PrivacySettings
private static final String PREF_SEARCH_SUGGESTIONS = "search_suggestions";
private static final String PREF_CONTEXTUAL_SEARCH = "contextual_search";
public static final String PREF_AUTOFILL_ASSISTANT = "autofill_assistant";
+ private static final String PREF_FORCE_NO_JIT = "force_no_jit";
private ChromeSwitchPreference mSearchSuggestions;
private @Nullable ChromeSwitchPreference mAutofillAssistant;
private @Nullable Preference mContextualSearch;
@@ -220,6 +222,10 @@ public class PrivacySettings
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
+ } else if (PREF_FORCE_NO_JIT.equals(key)) {
+ SharedPreferences.Editor sharedPreferenceEditor = ContextUtils.getAppSharedPreferences().edit();
+ sharedPreferenceEditor.putBoolean(PREF_FORCE_NO_JIT, (boolean) newValue);
+ sharedPreferenceEditor.apply();
} else if (PREF_AUTOFILL_ASSISTANT.equals(key)) {
mSharedPreferencesManager.writeBoolean(
ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED, (boolean) newValue);
@@ -277,6 +283,11 @@ public class PrivacySettings
secureDnsPref.setSummary(SecureDnsSettings.getSummary(getContext()));
}
+ ChromeSwitchPreference forceNoJit =
+ (ChromeSwitchPreference) findPreference(PREF_FORCE_NO_JIT);
+ forceNoJit.setOnPreferenceChangeListener(this);
+ forceNoJit.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
+
Preference privacySandboxPreference = findPreference(PREF_PRIVACY_SANDBOX);
if (privacySandboxPreference != null) {
privacySandboxPreference.setSummary(
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
@@ -1003,6 +1003,13 @@ Privacy Sandbox trials are still in active development and are available in sele
Please verify that this is a valid provider or try again later
</message>
+ <message name="IDS_FORCE_NO_JIT_TITLE" desc="Title for disable JIT settings. [CHAR-LIMIT=32]">
+ Disable JIT
+ </message>
+ <message name="IDS_FORCE_NO_JIT_SUMMARY" desc="Summary for Disable JIT settings">
+ Improve security at the expense of performance by not compiling JavaScript to native code (requires browser restart)
+ </message>
+
<message name="IDS_CLEAR_BROWSING_DATA_TITLE" desc="Title of the Clear Browsing Data screen. [CHAR_LIMIT=32]">
Clear browsing data
</message>
diff --git a/content/public/android/java/src/org/chromium/content/browser/BrowserStartupControllerImpl.java b/content/public/android/java/src/org/chromium/content/browser/BrowserStartupControllerImpl.java
--- a/content/public/android/java/src/org/chromium/content/browser/BrowserStartupControllerImpl.java
+++ b/content/public/android/java/src/org/chromium/content/browser/BrowserStartupControllerImpl.java
@@ -453,6 +453,7 @@ public class BrowserStartupControllerImpl implements BrowserStartupController {
}
// TODO(yfriedman): Remove dependency on a command line flag for this.
+ DeviceUtilsImpl.addJitlessSwitch();
DeviceUtilsImpl.addDeviceSpecificUserAgentSwitch();
BrowserStartupControllerImplJni.get().setCommandLineFlags(singleProcess);
}
diff --git a/content/public/android/java/src/org/chromium/content/browser/DeviceUtilsImpl.java b/content/public/android/java/src/org/chromium/content/browser/DeviceUtilsImpl.java
--- a/content/public/android/java/src/org/chromium/content/browser/DeviceUtilsImpl.java
+++ b/content/public/android/java/src/org/chromium/content/browser/DeviceUtilsImpl.java
@@ -5,6 +5,7 @@
package org.chromium.content.browser;
import org.chromium.base.CommandLine;
+import org.chromium.base.ContextUtils;
import org.chromium.base.StrictModeContext;
import org.chromium.content_public.common.ContentSwitches;
import org.chromium.ui.base.DeviceFormFactor;
@@ -22,4 +23,11 @@ public class DeviceUtilsImpl {
}
}
}
+ public static void addJitlessSwitch() {
+ try (StrictModeContext ignored = StrictModeContext.allowDiskReads()) {
+ if (ContextUtils.getAppSharedPreferences().getBoolean("force_no_jit", false)) {
+ CommandLine.getInstance().appendSwitchWithValue("js-flags", "--jitless");
+ }
+ }
+ }
}
--
2.25.1

View file

@ -1,15 +1,18 @@
From: fgei <fgei@gmail.com>
Date: Sat, 29 Jan 2022 15:22:45 +0000
Subject: Implement UI for JIT site settings
From: hardenedfuchsiaoswhen <hardenedfuchsiaoswhen@protonmail.com>
Date: Fri, 18 Jun 2021 03:34:20 +0000
Subject: JIT toggle and site settings
Adds a content setting to manage javascript jit, default disabled.
Since the interface of the content settings foresees an eTLD origin,
it requires the activation of SitePerProcess and StrictOriginIsolation
to make sure that the instantiated RenderProcess can have jit correctly set.
Adds a content setting to manage Javascript JIT, disabled by default.
Since the interface of the content settings foresees an eTLD origin
it requires the activation of SitePerProcess and StrictOriginIsolation
to make sure that the instantiated RenderProcess can have JIT correctly set.
Without those features, the RenderProcess would be shared between all eTLD+1.
note: needs SitePerProcess and StrictOriginIsolation flags enabled
---
.../java/res/xml/privacy_preferences.xml | 5 +++++
.../privacy/settings/PrivacySettings.java | 11 +++++++++
.../strings/android_chrome_strings.grd | 7 ++++++
.../browser_ui/site_settings/android/BUILD.gn | 5 +++++
.../permission_javascript_jit.png | Bin 0 -> 433 bytes
.../permission_javascript_jit.png | Bin 0 -> 377 bytes
@ -30,51 +33,127 @@ note: needs SitePerProcess and StrictOriginIsolation flags enabled
components/page_info/page_info.cc | 6 +++++
components/page_info/page_info_ui.cc | 2 ++
components/site_settings_strings.grdp | 6 +++++
20 files changed, 94 insertions(+), 3 deletions(-)
.../browser/BrowserStartupControllerImpl.java | 1 +
.../content/browser/DeviceUtilsImpl.java | 8 +++++++
25 files changed, 126 insertions(+), 3 deletions(-)
create mode 100644 components/browser_ui/site_settings/android/java/res/drawable-hdpi/permission_javascript_jit.png
create mode 100644 components/browser_ui/site_settings/android/java/res/drawable-mdpi/permission_javascript_jit.png
create mode 100644 components/browser_ui/site_settings/android/java/res/drawable-xhdpi/permission_javascript_jit.png
create mode 100644 components/browser_ui/site_settings/android/java/res/drawable-xxhdpi/permission_javascript_jit.png
create mode 100644 components/browser_ui/site_settings/android/java/res/drawable-xxxhdpi/permission_javascript_jit.png
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
@@ -37,6 +37,11 @@
android:title="@string/preload_pages_title"
android:summary="@string/preload_pages_summary"
android:fragment="org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsFragment"/>
+ <org.chromium.components.browser_ui.settings.ChromeSwitchPreference
+ android:key="force_no_jit"
+ android:title="@string/force_no_jit_title"
+ android:summary="@string/force_no_jit_summary"
+ android:defaultValue="false" />
<org.chromium.components.browser_ui.settings.ChromeBasePreference
android:key="secure_dns"
android:title="@string/settings_secure_dns_title"
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
@@ -4,6 +4,7 @@
package org.chromium.chrome.browser.privacy.settings;
+import android.content.SharedPreferences;
import android.os.Build;
import android.content.SharedPreferences;
import android.os.Bundle;
@@ -87,6 +88,7 @@ public class PrivacySettings
private static final String PREF_SEARCH_SUGGESTIONS = "search_suggestions";
private static final String PREF_CONTEXTUAL_SEARCH = "contextual_search";
public static final String PREF_AUTOFILL_ASSISTANT = "autofill_assistant";
+ private static final String PREF_FORCE_NO_JIT = "force_no_jit";
private ChromeSwitchPreference mSearchSuggestions;
private @Nullable ChromeSwitchPreference mAutofillAssistant;
private @Nullable Preference mContextualSearch;
@@ -226,6 +228,10 @@ public class PrivacySettings
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
+ } else if (PREF_FORCE_NO_JIT.equals(key)) {
+ SharedPreferences.Editor sharedPreferenceEditor = ContextUtils.getAppSharedPreferences().edit();
+ sharedPreferenceEditor.putBoolean(PREF_FORCE_NO_JIT, (boolean) newValue);
+ sharedPreferenceEditor.apply();
} else if (PREF_AUTOFILL_ASSISTANT.equals(key)) {
AutofillAssistantPreferencesUtil.setAssistantEnabledPreference( (boolean) newValue);
} else if (PREF_ALWAYS_INCOGNITO.equals(key)) {
@@ -286,6 +292,11 @@ public class PrivacySettings
secureDnsPref.setSummary(SecureDnsSettings.getSummary(getContext()));
}
+ ChromeSwitchPreference forceNoJit =
+ (ChromeSwitchPreference) findPreference(PREF_FORCE_NO_JIT);
+ forceNoJit.setOnPreferenceChangeListener(this);
+ forceNoJit.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
+
Preference privacySandboxPreference = findPreference(PREF_PRIVACY_SANDBOX);
if (privacySandboxPreference != null) {
privacySandboxPreference.setSummary(
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
@@ -981,6 +981,13 @@ Privacy Sandbox trials are still in active development and are available in sele
Please verify that this is a valid provider or try again later
</message>
+ <message name="IDS_FORCE_NO_JIT_TITLE" desc="Title for disable JIT settings. [CHAR-LIMIT=32]">
+ Disable JIT
+ </message>
+ <message name="IDS_FORCE_NO_JIT_SUMMARY" desc="Summary for Disable JIT settings">
+ Improve security at the expense of performance by not compiling JavaScript to native code (requires browser restart)
+ </message>
+
<message name="IDS_CLEAR_BROWSING_DATA_TITLE" desc="Title of the Clear Browsing Data screen. [CHAR_LIMIT=32]">
Clear browsing data
</message>
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") {
@@ -116,6 +116,7 @@ android_resources("java_resources") {
"java/res/drawable-hdpi/ic_volume_up_grey600_24dp.png",
"java/res/drawable-hdpi/permission_background_sync.png",
"java/res/drawable-hdpi/permission_images.png",
"java/res/drawable-hdpi/permission_javascript.png",
+ "java/res/drawable-hdpi/permission_javascript_jit.png",
"java/res/drawable-hdpi/permission_popups.png",
"java/res/drawable-hdpi/permission_protected_media.png",
"java/res/drawable-hdpi/settings_sensors.png",
@@ -129,6 +130,7 @@ android_resources("java_resources") {
@@ -123,6 +124,7 @@ android_resources("java_resources") {
"java/res/drawable-mdpi/ic_volume_up_grey600_24dp.png",
"java/res/drawable-mdpi/permission_background_sync.png",
"java/res/drawable-mdpi/permission_images.png",
"java/res/drawable-mdpi/permission_javascript.png",
+ "java/res/drawable-mdpi/permission_javascript_jit.png",
"java/res/drawable-mdpi/permission_popups.png",
"java/res/drawable-mdpi/permission_protected_media.png",
"java/res/drawable-mdpi/settings_sensors.png",
@@ -137,6 +139,7 @@ android_resources("java_resources") {
@@ -130,6 +132,7 @@ android_resources("java_resources") {
"java/res/drawable-xhdpi/ic_volume_up_grey600_24dp.png",
"java/res/drawable-xhdpi/permission_background_sync.png",
"java/res/drawable-xhdpi/permission_images.png",
"java/res/drawable-xhdpi/permission_javascript.png",
+ "java/res/drawable-xhdpi/permission_javascript_jit.png",
"java/res/drawable-xhdpi/permission_popups.png",
"java/res/drawable-xhdpi/permission_protected_media.png",
"java/res/drawable-xhdpi/settings_sensors.png",
@@ -145,6 +148,7 @@ android_resources("java_resources") {
@@ -137,6 +140,7 @@ android_resources("java_resources") {
"java/res/drawable-xxhdpi/ic_volume_up_grey600_24dp.png",
"java/res/drawable-xxhdpi/permission_background_sync.png",
"java/res/drawable-xxhdpi/permission_images.png",
"java/res/drawable-xxhdpi/permission_javascript.png",
+ "java/res/drawable-xxhdpi/permission_javascript_jit.png",
"java/res/drawable-xxhdpi/permission_popups.png",
"java/res/drawable-xxhdpi/permission_protected_media.png",
"java/res/drawable-xxhdpi/settings_sensors.png",
@@ -153,6 +157,7 @@ android_resources("java_resources") {
@@ -144,6 +148,7 @@ android_resources("java_resources") {
"java/res/drawable-xxxhdpi/ic_volume_up_grey600_24dp.png",
"java/res/drawable-xxxhdpi/permission_background_sync.png",
"java/res/drawable-xxxhdpi/permission_images.png",
"java/res/drawable-xxxhdpi/permission_javascript.png",
+ "java/res/drawable-xxxhdpi/permission_javascript_jit.png",
"java/res/drawable-xxxhdpi/permission_popups.png",
@ -181,21 +260,21 @@ HcmV?d00001
diff --git a/components/browser_ui/site_settings/android/java/res/xml/site_settings_preferences.xml b/components/browser_ui/site_settings/android/java/res/xml/site_settings_preferences.xml
--- a/components/browser_ui/site_settings/android/java/res/xml/site_settings_preferences.xml
+++ b/components/browser_ui/site_settings/android/java/res/xml/site_settings_preferences.xml
@@ -41,6 +41,10 @@
@@ -37,6 +37,10 @@
<org.chromium.components.browser_ui.settings.ChromeBasePreference
android:fragment="org.chromium.components.browser_ui.site_settings.SingleCategorySettings"
android:key="javascript" />
android:key="notifications" />
+ <!-- JavaScript-JIT -->
+ <org.chromium.components.browser_ui.settings.ChromeBasePreference
+ android:fragment="org.chromium.components.browser_ui.site_settings.SingleCategorySettings"
+ android:key="javascript_jit" />
<!-- Images -->
<!-- JavaScript -->
<org.chromium.components.browser_ui.settings.ChromeBasePreference
android:key="images"
android:fragment="org.chromium.components.browser_ui.site_settings.SingleCategorySettings"
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
@@ -192,6 +192,13 @@ public class ContentSettingsResources {
@@ -188,6 +188,13 @@ public class ContentSettingsResources {
ContentSettingValues.BLOCK,
R.string.website_settings_category_javascript_allowed, 0);
@ -212,7 +291,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/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
@@ -598,6 +598,11 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -591,6 +591,11 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
browserContextHandle, ContentSettingsType.JAVASCRIPT)
? R.string.website_settings_add_site_description_javascript_block
: R.string.website_settings_add_site_description_javascript_allow;
@ -224,9 +303,9 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
} else if (mCategory.showSites(SiteSettingsCategory.Type.SOUND)) {
resource = WebsitePreferenceBridge.isCategoryEnabled(
browserContextHandle, ContentSettingsType.SOUND)
@@ -721,6 +726,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -708,6 +713,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
allowSpecifyingExceptions = true;
} else if (mCategory.showSites(SiteSettingsCategory.Type.IMAGES)) {
} else if (mCategory.showSites(SiteSettingsCategory.Type.JAVASCRIPT)) {
allowSpecifyingExceptions = true;
+ } else if (mCategory.showSites(SiteSettingsCategory.Type.JAVASCRIPT_JIT)) {
+ allowSpecifyingExceptions = true;
@ -236,8 +315,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/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
@@ -133,6 +133,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
return "images_permission_list";
@@ -130,6 +130,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
return "idle_detection_permission_list";
case ContentSettingsType.JAVASCRIPT:
return "javascript_permission_list";
+ case ContentSettingsType.JAVASCRIPT_JIT:
@ -245,16 +324,16 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
case ContentSettingsType.POPUPS:
return "popup_permission_list";
case ContentSettingsType.SOUND:
@@ -506,6 +508,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -502,6 +504,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
setUpCookiesPreference(preference);
} else if (type == ContentSettingsType.IMAGES) {
setUpImagesPreference(preference);
+ } else if (type == ContentSettingsType.JAVASCRIPT_JIT) {
+ setUpJavascriptJitPreference(preference);
} else if (type == ContentSettingsType.GEOLOCATION) {
setUpLocationPreference(preference);
+ } else if (type == ContentSettingsType.JAVASCRIPT_JIT) {
+ setUpJavascriptJitPreference(preference);
} else if (type == ContentSettingsType.NOTIFICATIONS) {
@@ -1050,6 +1054,23 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
setUpNotificationsPreference(preference, isPermissionEmbargoed(type));
} else {
@@ -1028,6 +1032,23 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
setupContentSettingsPreference(preference, currentValue, false /* isEmbargoed */);
}
@ -285,26 +364,26 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
Type.JAVASCRIPT, Type.MICROPHONE, Type.NFC, Type.NOTIFICATIONS, Type.POPUPS,
Type.PROTECTED_MEDIA, Type.SENSORS, Type.SOUND, Type.USB, Type.VIRTUAL_REALITY,
Type.USE_STORAGE, Type.AUTO_DARK_WEB_CONTENT, Type.REQUEST_DESKTOP_SITE,
- Type.TIMEZONE_OVERRIDE, Type.AUTOPLAY, Type.IMAGES})
+ Type.TIMEZONE_OVERRIDE, Type.AUTOPLAY, Type.IMAGES, Type.JAVASCRIPT_JIT})
- Type.TIMEZONE_OVERRIDE, Type.AUTOPLAY})
+ Type.TIMEZONE_OVERRIDE, Type.AUTOPLAY, Type.JAVASCRIPT_JIT})
@Retention(RetentionPolicy.SOURCE)
public @interface Type {
// All updates here must also be reflected in {@link #preferenceKey(int)
@@ -76,10 +76,11 @@ public class SiteSettingsCategory {
@@ -75,10 +75,11 @@ public class SiteSettingsCategory {
int REQUEST_DESKTOP_SITE = 24;
int TIMEZONE_OVERRIDE = 25;
int AUTOPLAY = 26;
int IMAGES = 27;
+ int JAVASCRIPT_JIT = 28;
+ int JAVASCRIPT_JIT = 27;
/**
* Number of handled categories used for calculating array sizes.
*/
- int NUM_ENTRIES = 28;
+ int NUM_ENTRIES = 29;
- int NUM_ENTRIES = 27;
+ int NUM_ENTRIES = 28;
}
private final BrowserContextHandle mBrowserContextHandle;
@@ -189,6 +190,8 @@ public class SiteSettingsCategory {
return ContentSettingsType.IMAGES;
@@ -183,6 +184,8 @@ public class SiteSettingsCategory {
return ContentSettingsType.IDLE_DETECTION;
case Type.JAVASCRIPT:
return ContentSettingsType.JAVASCRIPT;
+ case Type.JAVASCRIPT_JIT:
@ -312,22 +391,22 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
case Type.MICROPHONE:
return ContentSettingsType.MEDIASTREAM_MIC;
case Type.NFC:
@@ -271,6 +274,8 @@ public class SiteSettingsCategory {
@@ -265,6 +268,8 @@ public class SiteSettingsCategory {
return "javascript";
case Type.IMAGES:
return "images";
+ case Type.JAVASCRIPT_JIT:
+ return "javascript_jit";
case Type.MICROPHONE:
return "microphone";
+ case Type.JAVASCRIPT_JIT:
+ return "javascript_jit";
case Type.NFC:
return "nfc";
case Type.NOTIFICATIONS:
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
@@ -24,6 +24,7 @@ public class SiteSettingsUtil {
@@ -23,6 +23,7 @@ public class SiteSettingsUtil {
ContentSettingsType.MEDIASTREAM_MIC,
ContentSettingsType.NOTIFICATIONS,
ContentSettingsType.JAVASCRIPT,
ContentSettingsType.IMAGES,
+ ContentSettingsType.JAVASCRIPT_JIT,
ContentSettingsType.POPUPS,
ContentSettingsType.ADS,
@ -335,7 +414,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/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
@@ -222,6 +222,12 @@ public final class Website implements Serializable {
@@ -216,6 +216,12 @@ public final class Website implements Serializable {
} else {
RecordUserAction.record("JavascriptContentSetting.DisableBy.SiteSettings");
}
@ -351,9 +430,9 @@ 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
@@ -817,6 +817,7 @@ static void JNI_WebsitePreferenceBridge_SetContentSettingEnabled(
@@ -776,6 +776,7 @@ static void JNI_WebsitePreferenceBridge_SetContentSettingEnabled(
case ContentSettingsType::COOKIES:
case ContentSettingsType::REQUEST_DESKTOP_SITE:
case ContentSettingsType::IMAGES:
case ContentSettingsType::JAVASCRIPT:
+ case ContentSettingsType::JAVASCRIPT_JIT:
case ContentSettingsType::POPUPS:
@ -362,7 +441,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid
diff --git a/components/browser_ui/strings/android/site_settings.grdp b/components/browser_ui/strings/android/site_settings.grdp
--- a/components/browser_ui/strings/android/site_settings.grdp
+++ b/components/browser_ui/strings/android/site_settings.grdp
@@ -48,6 +48,9 @@
@@ -45,6 +45,9 @@
<message name="IDS_JAVASCRIPT_PERMISSION_TITLE" desc="Title of the permission to run javascript [CHAR_LIMIT=32]">
JavaScript
</message>
@ -372,7 +451,7 @@ diff --git a/components/browser_ui/strings/android/site_settings.grdp b/componen
<message name="IDS_WEBSITE_SETTINGS_DEVICE_LOCATION" desc="Title for Location settings, which control which websites can access your location." meaning="Geolocation">
Location
</message>
@@ -402,6 +405,20 @@
@@ -396,6 +399,20 @@
Block JavaScript for a specific site.
</message>
@ -396,7 +475,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
@@ -604,7 +604,7 @@ void ContentSettingsRegistry::Init() {
@@ -603,7 +603,7 @@ void ContentSettingsRegistry::Init() {
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY);
Register(ContentSettingsType::JAVASCRIPT_JIT, "javascript-jit",
@ -408,7 +487,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
diff --git a/components/page_info/android/page_info_controller_android.cc b/components/page_info/android/page_info_controller_android.cc
--- a/components/page_info/android/page_info_controller_android.cc
+++ b/components/page_info/android/page_info_controller_android.cc
@@ -138,6 +138,7 @@ void PageInfoControllerAndroid::SetPermissionInfo(
@@ -140,6 +140,7 @@ void PageInfoControllerAndroid::SetPermissionInfo(
permissions_to_display.push_back(ContentSettingsType::IDLE_DETECTION);
permissions_to_display.push_back(ContentSettingsType::IMAGES);
permissions_to_display.push_back(ContentSettingsType::JAVASCRIPT);
@ -416,7 +495,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
permissions_to_display.push_back(ContentSettingsType::POPUPS);
permissions_to_display.push_back(ContentSettingsType::ADS);
permissions_to_display.push_back(
@@ -225,6 +226,8 @@ absl::optional<ContentSetting> PageInfoControllerAndroid::GetSettingToDisplay(
@@ -219,6 +220,8 @@ absl::optional<ContentSetting> PageInfoControllerAndroid::GetSettingToDisplay(
// The javascript content setting should show up if it is blocked globally
// to give users an easy way to create exceptions.
return permission.default_setting;
@ -428,7 +507,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.cc
--- a/components/page_info/page_info.cc
+++ b/components/page_info/page_info.cc
@@ -119,6 +119,7 @@ ContentSettingsType kPermissionType[] = {
@@ -120,6 +120,7 @@ ContentSettingsType kPermissionType[] = {
ContentSettingsType::VR,
ContentSettingsType::AR,
ContentSettingsType::IDLE_DETECTION,
@ -436,7 +515,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
};
// Determines whether to show permission |type| in the Page Info UI. Only
@@ -157,6 +158,11 @@ bool ShouldShowPermission(const PageInfo::PermissionInfo& info,
@@ -153,6 +154,11 @@ bool ShouldShowPermission(const PageInfo::PermissionInfo& info,
return true;
}
@ -445,13 +524,13 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
+ return true;
+ }
+
content_settings::WebsiteSettingsRegistry* website_settings =
content_settings::WebsiteSettingsRegistry::GetInstance();
for (const content_settings::WebsiteSettingsInfo* winfo : *website_settings) {
const bool is_incognito = web_contents->GetBrowserContext()->IsOffTheRecord();
#if BUILDFLAG(IS_ANDROID)
// Special geolocation DSE settings apply only on Android, so make sure it
diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_info_ui.cc
--- a/components/page_info/page_info_ui.cc
+++ b/components/page_info/page_info_ui.cc
@@ -137,6 +137,8 @@ base::span<const PageInfoUI::PermissionUIInfo> GetContentSettingsUIInfo() {
@@ -136,6 +136,8 @@ base::span<const PageInfoUI::PermissionUIInfo> GetContentSettingsUIInfo() {
IDS_SITE_SETTINGS_TYPE_COOKIES_MID_SENTENCE},
{ContentSettingsType::JAVASCRIPT, IDS_SITE_SETTINGS_TYPE_JAVASCRIPT,
IDS_SITE_SETTINGS_TYPE_JAVASCRIPT_MID_SENTENCE},
@ -476,6 +555,39 @@ diff --git a/components/site_settings_strings.grdp b/components/site_settings_st
<message name="IDS_SITE_SETTINGS_TYPE_LOCATION" desc="The label used for geolocation site settings controls." meaning="Geolocation">
Location
</message>
--
diff --git a/content/public/android/java/src/org/chromium/content/browser/BrowserStartupControllerImpl.java b/content/public/android/java/src/org/chromium/content/browser/BrowserStartupControllerImpl.java
--- a/content/public/android/java/src/org/chromium/content/browser/BrowserStartupControllerImpl.java
+++ b/content/public/android/java/src/org/chromium/content/browser/BrowserStartupControllerImpl.java
@@ -453,6 +453,7 @@ public class BrowserStartupControllerImpl implements BrowserStartupController {
}
// TODO(yfriedman): Remove dependency on a command line flag for this.
+ DeviceUtilsImpl.addJitlessSwitch();
DeviceUtilsImpl.addDeviceSpecificUserAgentSwitch();
BrowserStartupControllerImplJni.get().setCommandLineFlags(singleProcess);
}
diff --git a/content/public/android/java/src/org/chromium/content/browser/DeviceUtilsImpl.java b/content/public/android/java/src/org/chromium/content/browser/DeviceUtilsImpl.java
--- a/content/public/android/java/src/org/chromium/content/browser/DeviceUtilsImpl.java
+++ b/content/public/android/java/src/org/chromium/content/browser/DeviceUtilsImpl.java
@@ -5,6 +5,7 @@
package org.chromium.content.browser;
import org.chromium.base.CommandLine;
+import org.chromium.base.ContextUtils;
import org.chromium.base.StrictModeContext;
import org.chromium.content_public.common.ContentSwitches;
import org.chromium.ui.base.DeviceFormFactor;
@@ -22,4 +23,11 @@ public class DeviceUtilsImpl {
}
}
}
+ public static void addJitlessSwitch() {
+ try (StrictModeContext ignored = StrictModeContext.allowDiskReads()) {
+ if (ContextUtils.getAppSharedPreferences().getBoolean("force_no_jit", false)) {
+ CommandLine.getInstance().appendSwitchWithValue("js-flags", "--jitless");
+ }
+ }
+ }
}
--
2.25.1

View file

@ -3,23 +3,27 @@ Date: Wed, 27 Oct 2021 10:57:09 +0000
Subject: Keep empty tabs between sessions
---
.../chrome/browser/tabmodel/TabPersistentStore.java | 9 ---------
.../browser/tab/state/CriticalPersistedTabData.java | 4 ----
2 files changed, 13 deletions(-)
.../chrome/browser/tabmodel/TabPersistentStore.java | 13 -------------
.../browser/tab/state/CriticalPersistedTabData.java | 4 ----
2 files changed, 17 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
@@ -698,15 +698,6 @@ public class TabPersistentStore {
@@ -780,19 +780,6 @@ public class TabPersistentStore {
.createFrozenTab(tabState, serializedCriticalPersistedTabData, tabToRestore.id,
isIncognito, restoredIndex);
} else {
- if (UrlUtilities.isNTPUrl(tabToRestore.url) && !setAsActive
- && !tabToRestore.fromMerge) {
- Log.i(TAG, "Skipping restore of non-selected NTP.");
- RecordHistogram.recordEnumeratedHistogram("Tabs.TabRestoreMethod",
- TabRestoreMethod.SKIPPED_NTP, TabRestoreMethod.NUM_ENTRIES);
- return;
- } else if (TextUtils.isEmpty(tabToRestore.url)) {
- Log.i(TAG, "Skipping restore of empty Tabs.");
- RecordHistogram.recordEnumeratedHistogram("Tabs.TabRestoreMethod",
- TabRestoreMethod.SKIPPED_EMPTY_URL, TabRestoreMethod.NUM_ENTRIES);
- return;
- }
-
@ -29,7 +33,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer
diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/state/CriticalPersistedTabData.java b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/state/CriticalPersistedTabData.java
--- a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/state/CriticalPersistedTabData.java
+++ b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/state/CriticalPersistedTabData.java
@@ -493,10 +493,6 @@ public class CriticalPersistedTabData extends PersistedTabData {
@@ -552,10 +552,6 @@ public class CriticalPersistedTabData extends PersistedTabData {
if (getUrl() == null || TextUtils.isEmpty(getUrl().getSpec())) {
return false;
}

View file

@ -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
@@ -629,6 +629,7 @@ static_library("ui") {
@@ -631,6 +631,7 @@ static_library("ui") {
"//third_party/re2",
"//third_party/webrtc_overrides:webrtc_component",
"//third_party/zlib",
@ -790,7 +790,7 @@ diff --git a/components/minidump_uploader/android/java/src/org/chromium/componen
diff --git a/components/upload_list/text_log_upload_list.cc b/components/upload_list/text_log_upload_list.cc
--- a/components/upload_list/text_log_upload_list.cc
+++ b/components/upload_list/text_log_upload_list.cc
@@ -108,6 +108,7 @@ std::unique_ptr<TextLogUploadList::UploadInfo> TryParseCsvLogEntry(
@@ -109,6 +109,7 @@ std::unique_ptr<TextLogUploadList::UploadInfo> TryParseCsvLogEntry(
}
auto info = std::make_unique<TextLogUploadList::UploadInfo>(components[1],
upload_time);

View file

@ -9,13 +9,12 @@ Subject: Modify default preferences
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 | 2 +-
components/bookmarks/browser/features.cc | 2 +-
components/safe_browsing/core/common/safe_browsing_prefs.cc | 4 ++--
12 files changed, 16 insertions(+), 16 deletions(-)
11 files changed, 15 insertions(+), 15 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 +31,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
@@ -1282,7 +1282,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
@@ -1289,7 +1289,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
void ChromeContentBrowserClient::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false);
@ -63,7 +62,7 @@ diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profil
- true,
+ false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
registry->RegisterStringPref(
diff --git a/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html b/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
--- a/chrome/browser/resources/settings/reset_page/reset_profile_dialog.html
@ -95,18 +94,6 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u
registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacement);
registry->RegisterDictionaryPref(prefs::kBrowserWindowPlacementPopup);
registry->RegisterDictionaryPref(prefs::kAppWindowPlacement);
diff --git a/chrome/service/cloud_print/connector_settings.cc b/chrome/service/cloud_print/connector_settings.cc
--- a/chrome/service/cloud_print/connector_settings.cc
+++ b/chrome/service/cloud_print/connector_settings.cc
@@ -60,7 +60,7 @@ void ConnectorSettings::InitFrom(ServiceProcessPrefs* prefs) {
DCHECK(server_url_.is_valid());
connect_new_printers_ = prefs->GetBoolean(
- prefs::kCloudPrintConnectNewPrinters, true);
+ prefs::kCloudPrintConnectNewPrinters, false);
xmpp_ping_enabled_ = prefs->GetBoolean(
prefs::kCloudPrintXmppPingEnabled, false);
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

View file

@ -4,19 +4,18 @@ Subject: Move some account settings back to privacy settings
Search suggestions, autofill assistant and contextual search
---
.../java/res/xml/privacy_preferences.xml | 20 +++++++
.../privacy/settings/PrivacySettings.java | 60 ++++++++++++++++++-
.../java/res/xml/privacy_preferences.xml | 18 ++++++
.../privacy/settings/PrivacySettings.java | 57 ++++++++++++++++++-
.../strings/android_chrome_strings.grd | 4 ++
3 files changed, 83 insertions(+), 1 deletion(-)
3 files changed, 78 insertions(+), 1 deletion(-)
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -64,4 +64,24 @@
@@ -64,6 +64,24 @@
android:key="privacy_sandbox"
android:title="@string/prefs_privacy_sandbox"
android:fragment="org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment"/>
+
+ <PreferenceCategory
+ android:key="services_category"
+ android:title="@string/services_category_title">
@ -34,21 +33,23 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
+ android:key="contextual_search"
+ android:title="@string/contextual_search_title"
+ android:fragment="org.chromium.chrome.browser.contextualsearch.ContextualSearchPreferenceFragment"/>
+ </PreferenceCategory>
+
</PreferenceScreen>
+ </PreferenceCategory>
<Preference
android:key="phone_as_a_security_key"
android:title="@string/cablev2_paask_title"
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
@@ -19,6 +19,7 @@ import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat;
import org.chromium.base.ContextUtils;
import org.chromium.base.BuildInfo;
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.incognito.reauth.IncognitoReauthSettingSwitchPreference;
@@ -46,6 +47,13 @@ import org.chromium.components.user_prefs.UserPrefs;
@@ -39,6 +39,8 @@ import org.chromium.chrome.browser.ui.messages.snackbar.INeedSnackbarManager;
import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar;
import org.chromium.chrome.browser.ApplicationLifetime;
import org.chromium.chrome.browser.signin.services.IdentityServicesProvider;
+import org.chromium.chrome.browser.autofill_assistant.AssistantFeatures;
+import org.chromium.chrome.browser.autofill_assistant.AutofillAssistantPreferencesUtil;
import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate;
@@ -50,6 +52,12 @@ import org.chromium.components.user_prefs.UserPrefs;
import org.chromium.ui.text.NoUnderlineClickableSpan;
import org.chromium.ui.text.SpanApplier;
@ -57,12 +58,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+import org.chromium.chrome.browser.contextualsearch.ContextualSearchManager;
+import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
+import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
+import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
+
/**
* Fragment to keep track of the all the privacy related preferences.
*/
@@ -69,6 +77,18 @@ public class PrivacySettings
@@ -74,6 +82,18 @@ public class PrivacySettings
private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
@ -80,8 +80,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
private IncognitoLockSettings mIncognitoLockSettings;
@@ -111,6 +131,29 @@ public class PrivacySettings
private ViewGroup mDialogContainer;
@@ -120,6 +140,28 @@ public class PrivacySettings
mManagedPreferenceDelegate = createManagedPreferenceDelegate();
@ -93,8 +93,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+ if (shouldShowAutofillAssistantPreference()) {
+ mAutofillAssistant.setOnPreferenceChangeListener(this);
+ mAutofillAssistant.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
+ mAutofillAssistant.setChecked(mSharedPreferencesManager.readBoolean(
+ ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED, false));
+ mAutofillAssistant.setChecked(AutofillAssistantPreferencesUtil.getAssistantEnabledPreference(false));
+ } else {
+ PreferenceCategory servicesCategory =
+ (PreferenceCategory) findPreference(PREF_SERVICES_CATEGORY);
@ -111,7 +110,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);
@@ -168,6 +211,12 @@ public class PrivacySettings
@@ -181,6 +223,11 @@ public class PrivacySettings
} else if (PREF_CAN_MAKE_PAYMENT.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
@ -119,12 +118,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+ UserPrefs.get(Profile.getLastUsedRegularProfile())
+ .setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
+ } else if (PREF_AUTOFILL_ASSISTANT.equals(key)) {
+ mSharedPreferencesManager.writeBoolean(
+ ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED, (boolean) newValue);
} else if (PREF_HTTPS_FIRST_MODE.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.HTTPS_ONLY_MODE_ENABLED, (boolean) newValue);
@@ -192,7 +241,7 @@ public class PrivacySettings
+ AutofillAssistantPreferencesUtil.setAssistantEnabledPreference( (boolean) newValue);
} else if (PREF_ALWAYS_INCOGNITO.equals(key)) {
AlwaysIncognitoLinkInterceptor.setAlwaysIncognito((boolean) newValue);
if (!mSnackbarManager.isShowing())
@@ -207,7 +254,7 @@ public class PrivacySettings
* Updates the preferences.
*/
public void updatePreferences() {
@ -133,7 +131,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
ChromeSwitchPreference canMakePaymentPref =
(ChromeSwitchPreference) findPreference(PREF_CAN_MAKE_PAYMENT);
@@ -244,6 +293,15 @@ public class PrivacySettings
@@ -259,6 +306,14 @@ public class PrivacySettings
};
}
@ -142,8 +140,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+ * will the AA switch be assigned a value).
+ */
+ private boolean shouldShowAutofillAssistantPreference() {
+ return mSharedPreferencesManager.contains(
+ ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED);
+ return AssistantFeatures.AUTOFILL_ASSISTANT.isEnabled();
+ }
+
@Override

View file

@ -27,13 +27,13 @@ Added flag --fingerprinting-canvas-image-data-noise to disable Canvas image data
chrome/browser/BUILD.gn | 1 +
chrome/browser/about_flags.cc | 15 ++
content/browser/BUILD.gn | 1 +
.../renderer_host/render_process_host_impl.cc | 5 +
.../renderer_host/render_process_host_impl.cc | 4 +
content/child/BUILD.gn | 1 +
content/child/runtime_features.cc | 9 +
.../public/platform/web_runtime_features.h | 3 +
.../blink/renderer/core/dom/document.cc | 18 ++
.../blink/renderer/core/dom/document.h | 7 +
.../blink/renderer/core/dom/element.cc | 8 +
.../blink/renderer/core/dom/element.cc | 9 +
third_party/blink/renderer/core/dom/range.cc | 12 +-
.../renderer/core/html/canvas/text_metrics.cc | 18 ++
.../renderer/core/html/canvas/text_metrics.h | 2 +
@ -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
@@ -2325,6 +2325,7 @@ static_library("browser") {
@@ -2319,6 +2319,7 @@ static_library("browser") {
"//services/device/public/cpp:device_features",
"//services/device/public/cpp/serial:switches",
"//services/device/public/cpp/usb",
@ -67,7 +67,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
@@ -183,6 +183,7 @@
@@ -185,6 +185,7 @@
#include "services/media_session/public/cpp/features.h"
#include "services/network/public/cpp/features.h"
#include "services/network/public/cpp/network_switches.h"
@ -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"
@@ -2737,6 +2738,20 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2758,6 +2759,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
@@ -224,6 +224,7 @@ source_set("browser") {
@@ -225,6 +225,7 @@ source_set("browser") {
"//third_party/libyuv",
"//third_party/re2",
"//third_party/sqlite",
@ -110,16 +110,15 @@ 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
@@ -215,6 +215,8 @@
#include "services/tracing/public/cpp/system_tracing_service.h"
#endif
@@ -198,6 +198,7 @@
#include "url/gurl.h"
#include "url/origin.h"
+#include "third_party/ungoogled/ungoogled_switches.h"
+
#if defined(OS_WIN)
#include "base/win/scoped_com_initializer.h"
#include "base/win/windows_version.h"
@@ -3286,6 +3288,9 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
#if BUILDFLAG(IS_ANDROID)
#include "content/browser/android/java_interfaces_impl.h"
#include "content/browser/font_unique_name_lookup/font_unique_name_lookup_service.h"
@@ -3302,6 +3303,9 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
switches::kDisableBreakpad,
switches::kDisableDatabases,
switches::kDisableFileSystem,
@ -149,10 +148,10 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
+#include "third_party/ungoogled/ungoogled_switches.h"
+
#if defined(OS_ANDROID)
#if BUILDFLAG(IS_ANDROID)
#include "base/android/build_info.h"
#endif
@@ -558,6 +560,13 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
@@ -560,6 +562,13 @@ void SetCustomizedRuntimeFeaturesFromCombinedArgs(
if (!command_line.HasSwitch(switches::kDisableYUVImageDecoding) &&
base::FeatureList::IsEnabled(
blink::features::kDecodeLossyWebPImagesToYUV)) {
@ -169,7 +168,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_party/blink/public/platform/web_runtime_features.h
--- a/third_party/blink/public/platform/web_runtime_features.h
+++ b/third_party/blink/public/platform/web_runtime_features.h
@@ -219,6 +219,9 @@ class WebRuntimeFeatures {
@@ -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);
@ -190,7 +189,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
#include "base/time/time.h"
#include "cc/input/overscroll_behavior.h"
#include "cc/input/scroll_snap_data.h"
@@ -2176,6 +2177,23 @@ void Document::UpdateStyleAndLayoutTreeForThisDocument() {
@@ -2182,6 +2183,23 @@ void Document::UpdateStyleAndLayoutTreeForThisDocument() {
#if DCHECK_IS_ON()
AssertLayoutTreeUpdated(*this, true /* allow_dirty_container_subtrees */);
#endif
@ -217,7 +216,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
@@ -457,6 +457,10 @@ class CORE_EXPORT Document : public ContainerNode,
@@ -480,6 +480,10 @@ class CORE_EXPORT Document : public ContainerNode,
has_xml_declaration_ = has_xml_declaration ? 1 : 0;
}
@ -228,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;
@@ -2089,6 +2093,9 @@ class CORE_EXPORT Document : public ContainerNode,
@@ -2135,6 +2139,9 @@ class CORE_EXPORT Document : public ContainerNode,
base::ElapsedTimer start_time_;
@ -241,22 +240,30 @@ 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
@@ -2052,6 +2052,11 @@ DOMRectList* Element::getClientRects() {
DCHECK(element_layout_object);
GetDocument().AdjustFloatQuadsForScrollAndAbsoluteZoom(
quads, *element_layout_object);
@@ -2053,6 +2053,7 @@ void Element::ClientQuads(Vector<gfx::QuadF>& quads) const {
quads.push_back(element_layout_object->LocalToAbsoluteQuad(
gfx::QuadF(element_layout_object->ObjectBoundingBox())));
}
+ //TODO: cover this as well
return;
}
@@ -2060,6 +2061,11 @@ void Element::ClientQuads(Vector<gfx::QuadF>& quads) const {
if (element_layout_object->IsBoxModelObject() ||
element_layout_object->IsBR())
element_layout_object->AbsoluteQuads(quads);
+
+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
+ for (FloatQuad& quad : quads) {
+ quad.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY());
+ }
+ for (auto& quad : quads)
+ quad.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY());
+ }
return MakeGarbageCollected<DOMRectList>(quads);
}
@@ -2069,6 +2074,9 @@ FloatRect Element::GetBoundingClientRectNoLifecycleUpdate() const {
DOMRectList* Element::getClientRects() {
@@ -2091,6 +2097,9 @@ gfx::RectF Element::GetBoundingClientRectNoLifecycleUpdate() const {
DCHECK(element_layout_object);
GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result,
*element_layout_object);
GetDocument().AdjustRectForScrollAndAbsoluteZoom(result,
*element_layout_object);
+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
+ result.Scale(GetDocument().GetNoiseFactorX(), GetDocument().GetNoiseFactorY());
+ }
@ -267,11 +274,11 @@ diff --git a/third_party/blink/renderer/core/dom/range.cc b/third_party/blink/re
--- a/third_party/blink/renderer/core/dom/range.cc
+++ b/third_party/blink/renderer/core/dom/range.cc
@@ -1598,6 +1598,12 @@ DOMRectList* Range::getClientRects() const {
Vector<FloatQuad> quads;
Vector<gfx::QuadF> quads;
GetBorderAndTextQuads(quads);
+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
+ for (FloatQuad& quad : quads) {
+ for (auto& quad : quads) {
+ quad.Scale(owner_document_->GetNoiseFactorX(), owner_document_->GetNoiseFactorY());
+ }
+ }
@ -279,7 +286,7 @@ diff --git a/third_party/blink/renderer/core/dom/range.cc b/third_party/blink/re
return MakeGarbageCollected<DOMRectList>(quads);
}
@@ -1733,7 +1739,11 @@ FloatRect Range::BoundingRect() const {
@@ -1733,7 +1739,11 @@ gfx::RectF Range::BoundingRect() const {
// If all rects are empty, return the first rect.
if (result.IsEmpty() && !quads.IsEmpty())
@ -335,15 +342,15 @@ diff --git a/third_party/blink/renderer/core/html/canvas/text_metrics.h b/third_
diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
--- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
+++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
@@ -29,6 +29,7 @@
#include "third_party/blink/renderer/platform/geometry/float_quad.h"
@@ -28,6 +28,7 @@
#include "third_party/blink/renderer/modules/webcodecs/video_frame.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/graphics/video_frame_image_util.h"
@@ -2055,6 +2056,10 @@ ImageData* BaseRenderingContext2D::getImageDataInternal(
@@ -2050,6 +2051,10 @@ ImageData* BaseRenderingContext2D::getImageDataInternal(
snapshot->PaintImageForCurrentFrame().GetSkImageInfo().bounds();
DCHECK(!bounds.intersect(SkIRect::MakeXYWH(sx, sy, sw, sh)));
}
@ -357,7 +364,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
@@ -921,9 +921,15 @@ TextMetrics* CanvasRenderingContext2D::measureText(const String& text) {
@@ -920,9 +920,15 @@ TextMetrics* CanvasRenderingContext2D::measureText(const String& text) {
TextDirection direction =
ToTextDirection(GetState().GetDirection(), canvas());
@ -377,7 +384,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
@@ -1641,7 +1641,9 @@ component("platform") {
@@ -1621,7 +1621,9 @@ component("platform") {
"//third_party/blink/renderer:non_test_config",
]
@ -388,7 +395,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",
@@ -1710,6 +1712,7 @@ component("platform") {
@@ -1689,6 +1691,7 @@ component("platform") {
"//third_party/blink/public/strings",
"//third_party/blink/renderer/platform/wtf",
"//third_party/ced",
@ -399,7 +406,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
@@ -697,4 +697,16 @@ void WebRuntimeFeatures::EnableCLSScrollAnchoring(bool enable) {
@@ -691,4 +691,16 @@ void WebRuntimeFeatures::EnableCLSScrollAnchoring(bool enable) {
RuntimeEnabledFeatures::SetCLSScrollAnchoringEnabled(enable);
}
@ -632,7 +639,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
@@ -1065,6 +1065,15 @@
@@ -1063,6 +1063,15 @@
origin_trial_allows_third_party: true,
status: "experimental",
},

View file

@ -17,7 +17,7 @@ diff --git a/components/ntp_tiles/popular_sites_impl.cc b/components/ntp_tiles/p
GURL GetPopularSitesURL(const std::string& directory,
const std::string& country,
@@ -281,7 +280,12 @@ bool PopularSitesImpl::MaybeStartFetch(bool force_download,
@@ -280,7 +279,12 @@ bool PopularSitesImpl::MaybeStartFetch(bool force_download,
DCHECK(!callback_);
callback_ = std::move(callback);
@ -31,7 +31,7 @@ diff --git a/components/ntp_tiles/popular_sites_impl.cc b/components/ntp_tiles/p
prefs_->GetInt64(prefs::kPopularSitesLastDownloadPref));
const base::TimeDelta time_since_last_download =
base::Time::Now() - last_download_time;
@@ -298,7 +302,7 @@ bool PopularSitesImpl::MaybeStartFetch(bool force_download,
@@ -297,7 +301,7 @@ bool PopularSitesImpl::MaybeStartFetch(bool force_download,
(time_since_last_download > redownload_interval) || url_changed) {
FetchPopularSites();
return true;

View file

@ -11,7 +11,7 @@ Connection will be always considered valid on such devices
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java b/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/net/connectivitydetector/ConnectivityDetector.java
@@ -178,7 +178,8 @@ public class ConnectivityDetector implements NetworkChangeNotifier.ConnectionTyp
@@ -180,7 +180,8 @@ public class ConnectivityDetector implements NetworkChangeNotifier.ConnectionTyp
@Override
public boolean shouldSkipHttpProbes() {

View file

@ -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
@@ -272,6 +272,8 @@ std::vector<std::u16string> ChromeAutocompleteProviderClient::GetBuiltinURLs() {
@@ -270,6 +270,8 @@ std::vector<std::u16string> ChromeAutocompleteProviderClient::GetBuiltinURLs() {
std::vector<std::u16string>
ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
std::vector<std::u16string> builtins_to_provide;
@ -17,6 +17,6 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
+ base::ASCIIToUTF16(chrome::kChromeUIFlagsURL));
builtins_to_provide.push_back(
base::ASCIIToUTF16(chrome::kChromeUIChromeURLsURL));
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_ANDROID)
--
2.25.1

View file

@ -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
@@ -1305,6 +1305,12 @@ public class ExternalNavigationHandler {
@@ -1311,6 +1311,12 @@ public class ExternalNavigationHandler {
OverrideUrlLoadingAsyncActionType.UI_GATING_BROWSER_NAVIGATION);
}

View file

@ -27,9 +27,9 @@ diff --git a/net/base/load_flags_list.h b/net/base/load_flags_list.h
diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc
--- a/net/dns/dns_transaction.cc
+++ b/net/dns/dns_transaction.cc
@@ -437,7 +437,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate {
// Disable secure DNS for any DoH server hostname lookups to avoid deadlock.
request_->SetSecureDnsPolicy(SecureDnsPolicy::kDisable);
@@ -438,7 +438,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate {
// avoid deadlock and enable the use of preconfigured IP addresses.
request_->SetSecureDnsPolicy(SecureDnsPolicy::kBootstrap);
request_->SetLoadFlags(request_->load_flags() | LOAD_DISABLE_CACHE |
- LOAD_BYPASS_PROXY);
+ LOAD_MINIMAL_HEADERS | LOAD_BYPASS_PROXY);
@ -39,7 +39,7 @@ diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc
diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc
--- a/net/url_request/url_request_http_job.cc
+++ b/net/url_request/url_request_http_job.cc
@@ -292,6 +292,7 @@ void URLRequestHttpJob::Start() {
@@ -296,6 +296,7 @@ void URLRequestHttpJob::Start() {
// plugin could set a referrer although sending the referrer is inhibited.
request_info_.extra_headers.RemoveHeader(HttpRequestHeaders::kReferer);
@ -47,7 +47,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
// Our consumer should have made sure that this is a safe referrer (e.g. via
// URLRequestJob::ComputeReferrerForPolicy).
if (referrer.is_valid()) {
@@ -299,11 +300,14 @@ void URLRequestHttpJob::Start() {
@@ -303,11 +304,14 @@ void URLRequestHttpJob::Start() {
request_info_.extra_headers.SetHeader(HttpRequestHeaders::kReferer,
referer_value);
}
@ -62,7 +62,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
AddExtraHeaders();
AddCookieHeaderAndStart();
@@ -525,6 +529,7 @@ void URLRequestHttpJob::AddExtraHeaders() {
@@ -555,6 +559,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)) {
@@ -533,6 +538,7 @@ void URLRequestHttpJob::AddExtraHeaders() {
@@ -563,6 +568,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(
@@ -542,7 +548,7 @@ void URLRequestHttpJob::AddExtraHeaders() {
@@ -572,7 +578,7 @@ void URLRequestHttpJob::AddExtraHeaders() {
}
}

View file

@ -14,7 +14,7 @@ Use (overriden) build timestamp for chrome_version_id
diff --git a/base/BUILD.gn b/base/BUILD.gn
--- a/base/BUILD.gn
+++ b/base/BUILD.gn
@@ -3810,8 +3810,13 @@ action("build_date") {
@@ -3864,8 +3864,13 @@ action("build_date") {
args = [
rebase_path("$target_gen_dir/generated_build_date.h", root_build_dir),

Some files were not shown because too many files have changed in this diff Show more