Pull request #12: Upstream changes from 94.0.4606.109 -> 95.0.4638.78

Merge in AP/chromiumpatches from upstream-95.0.4638.78 to master

* commit '5743021d2a9fe8d8653f9dfa9e10ddd7e59ee430':
  Add an explanation of the new upstream merging process
  Revise for patch level 95.0.4638.78
  Force package name to org.chromium.chrome
  Remove Bromite's autoupdater
  Release 95.0.4638.78
  Updated patch for third-party origin trials as suggested by @uazo
  Add missing changes from third-party origin trials patch
  Patches for v95 (#1532)
  removed flags exclusivity constraint (#1514)
  Keep empty tabs between sessions (#1515)
  Fix wrong URL in CHANGELOG
  Move local patches higher in the patchlist
This commit is contained in:
Allen Luce 2021-12-08 02:13:58 +00:00
commit c51d3be21c
175 changed files with 3728 additions and 3504 deletions

View file

@ -1,3 +1,13 @@
# 95.0.4638.78
* disable third-party originl trials
* dropped patch for async DNS flag
* dropped duplicate patch for pull-to-refresh flag
* fix application not closing on incognito tab (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/1503)
* fix external links in incognito not always opening (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/1474)
* fix incognito tab closing new tab under normal tab (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/1030)
* allow custom tab intents and opening external links in incognito (thanks to @uazo)
* never use HTTP probes for connectivity check on Android < M
# 94.0.4606.109
* experimental user scripts support (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/792)
* Bromite auto-update notifications enabled by default
@ -6,7 +16,7 @@
# 94.0.4606.102
* add flag to disable pull-to-refresh effect
* add recents, offlinepage and send to home screen for always incognito (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/1182 and https://github.com/bromite/bromite/issues/1362)
* prompt to restart when always-incognito is enabled (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/1474)
* prompt to restart when always-incognito is enabled (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/1459)
* merge patches for custom tab intents
# 94.0.4606.94

View file

@ -18,7 +18,7 @@ One patch has been modified:
## Getting Chromium
Building requires a [properly set up
environment](https://chromium.googlesource.com/chromium/src/+/refs/tags/94.0.4606.109/docs/android_build_instructions.md#System-requirements). The
environment](https://chromium.googlesource.com/chromium/src/+/refs/tags/95.0.4638.78/docs/android_build_instructions.md#System-requirements). The
Promethean [builder machine](https://builder.waq.be) has the proper
dependencies installed.
@ -35,7 +35,7 @@ sudo zfs clone tank/chromium@allen tank/chromium4allen
If you are not using the builder or wish to
start from scratch, follow the instructions to [install depot_tools]
and [get the code] but stop before the [Install additional build
dependencies](https://chromium.googlesource.com/chromium/src/+/refs/tags/94.0.4606.109/docs/android_build_instructions.md#Install-additional-build-dependencies)
dependencies](https://chromium.googlesource.com/chromium/src/+/refs/tags/95.0.4638.78/docs/android_build_instructions.md#Install-additional-build-dependencies)
section. If you're building on the builder box, skip that particular
instruction. Apply the patches before continuing.
@ -52,13 +52,13 @@ cd /tank/chromium4allen/src
## Prepare Chromium
The patches are intended to be applied to the `94.0.4606.109` tag of
The patches are intended to be applied to the `95.0.4638.78` tag of
the Chromium repo. Before continuing, make sure you are on that tag in
the Chromium source repo:
```
git fetch origin
git checkout -B promethean-94.0.4606.109 94.0.4606.109
git checkout -B promethean-95.0.4638.78 95.0.4638.78
gclient sync --with_branch_heads --with_tags
gclient runhooks
```
@ -88,7 +88,7 @@ done
```
All patches should apply cleanly. If they did not, make sure you have
checked out the proper Chromium tag (94.0.4606.109).
checked out the proper Chromium tag (95.0.4638.78).
## Setting the build arguments
@ -119,6 +119,46 @@ directory.
(Original Bromite README follows)
## Merging upstream changes
Periodically the Bromite project will add new patches for
release. There is a specific process to add these to this repo which
should be followed to ensure a clean and maintainable Git history.
1. Make sure the upstream remote is established.
If you do not have an upstream remote, add it with:
git remote add upstream https://github.com/bromite/bromite.git
2. Retrieve the upstream changes
git fetch upstream
3. Find the latest Bromite release tag
git describe --tags --abbrev=0 upstream/master
This will give you output like `94.0.4606.94` which we'll use as an example going forward.
4. Create a new branch based on this tag
git checkout -b upstream-94.0.4606.94 94.0.4606.94
5. Rebase this branch on the current master
git rebase origin/master
If the rebase complete cleanly, you're done! Push the branch and open
a PR to master.
If you run into conflicts, there is more work to do. We want to keep
the upstream commits faithful to their original source. This means
collecting any conflicts and putting them into a separate commit. The
procedure is largely the same but start out by adding a commit with
the conflicts pre-resolved. Then rebase onto `origin/master` and -- if
the rebase succeeds cleanly -- push the new branch.
# Bromite - Take back your browser
<img src="https://www.bromite.org/release.svg" alt="current Bromite release" title="current Bromite release" /> <img src="https://www.bromite.org/license.svg" alt="GNU GPL v3" title="GNU VPL v3" />

View file

@ -1 +1 @@
94.0.4606.109
95.0.4638.78

View file

@ -1,3 +1,10 @@
Turn-AdBlock-off-by-default.patch
Add-option-to-force-tablet-UI.patch
Force-tablet-mode.patch
Set-default-page-url.patch
change-Android-userAgent-to-deskmode-userAgent.patch
Force-accessibility-text-scaling.patch
Force-package-name-to-org.chromium.chrome.patch
Disable-third-party-cookies-by-default.patch
AV1-codec-support.patch
Switch-to-fstack-protector-strong.patch
@ -48,7 +55,6 @@ Remove-help-menu-item.patch
AudioBuffer-AnalyserNode-fp-mitigations.patch
Multiple-fingerprinting-mitigations.patch
Disable-metrics-on-all-I-O-threads.patch
Always-respect-async-dns-flag-regardless-of-SDK-version.patch
Add-flag-to-configure-maximum-connections-per-host.patch
Do-not-ignore-download-location-prompt-setting.patch
Add-bookmark-import-export-actions.patch
@ -135,11 +141,11 @@ webview-Hard-no-to-persistent-histograms.patch
Ignore-enterprise-policies-for-secure-DNS.patch
Add-menu-item-to-bookmark-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
Remove-offline-measurement-background-task.patch
User-agent-customization.patch
Force-desktop-mode.patch
Add-AllowUserCertificates-flag.patch
Add-IsCleartextPermitted-flag.patch
Unexpire-tab-groups-flags.patch
@ -159,14 +165,9 @@ Disable-lock-icon-in-address-bar-by-default.patch
Add-custom-tab-intents-privacy-option.patch
Enable-share-intent.patch
Site-setting-for-images.patch
Bromite-auto-updater.patch
Add-flag-to-disable-pull-to-refresh-effect.patch
Experimental-user-scripts-support.patch
Enable-native-Android-autofill.patch
Keep-empty-tabs-between-sessions.patch
Disable-third-party-origin-trials.patch
Never-use-HTTP-probes-for-connection-detection.patch
Automated-domain-substitution.patch
Turn-AdBlock-off-by-default.patch
Force-tablet-mode.patch
Set-default-page-url.patch
change-Android-userAgent-to-deskmode-userAgent.patch
Force-desktop-mode.patch
Force-accessibility-text-scaling.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
@@ -2017,7 +2017,7 @@
@@ -2101,7 +2101,7 @@
{
"name": "enable-image-reader",
"owners": [ "vikassoni", "liberato" ],
@ -156,8 +156,8 @@ diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
if (!gpu_preferences.enable_android_surface_control)
return kGpuFeatureStatusDisabled;
@@ -319,6 +322,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
gpu_feature_info->status_values[GPU_FEATURE_TYPE_ACCELERATED_WEBGL2] =
@@ -344,6 +347,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
gpu_feature_info->status_values[GPU_FEATURE_TYPE_CANVAS_OOP_RASTERIZATION] =
kGpuFeatureStatusBlocklisted;
}
+
@ -225,7 +225,7 @@ diff --git a/gpu/ipc/service/stream_texture_android.cc b/gpu/ipc/service/stream_
diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
--- a/media/base/media_switches.cc
+++ b/media/base/media_switches.cc
@@ -668,6 +668,10 @@ const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning",
@@ -653,6 +653,10 @@ const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning",
// Note: Has no effect if kMediaDrmPreprovisioning feature is disabled.
const base::Feature kMediaDrmPreprovisioningAtStartup{
"MediaDrmPreprovisioningAtStartup", base::FEATURE_ENABLED_BY_DEFAULT};
@ -239,7 +239,7 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
diff --git a/media/base/media_switches.h b/media/base/media_switches.h
--- a/media/base/media_switches.h
+++ b/media/base/media_switches.h
@@ -219,6 +219,7 @@ MEDIA_EXPORT extern const base::Feature kForceHardwareAudioDecoders;
@@ -216,6 +216,7 @@ MEDIA_EXPORT extern const base::Feature kForceHardwareAudioDecoders;
MEDIA_EXPORT extern const base::Feature kAllowNonSecureOverlays;
MEDIA_EXPORT extern const base::Feature kMediaControlsExpandGesture;
MEDIA_EXPORT extern const base::Feature kMediaDrmPersistentLicense;
@ -248,5 +248,5 @@ diff --git a/media/base/media_switches.h b/media/base/media_switches.h
MEDIA_EXPORT extern const base::Feature kMediaDrmPreprovisioningAtStartup;
MEDIA_EXPORT extern const base::Feature kCanPlayHls;
--
2.17.1
2.20.1

View file

@ -34,5 +34,5 @@ diff --git a/components/background_task_scheduler/internal/android/java/src/org/
persistableBundle.putDouble(key, (Double) obj);
} else if (obj instanceof double[]) {
--
2.17.1
2.20.1

View file

@ -211,5 +211,5 @@ diff --git a/third_party/libaom/source/config/linux/x64/config/aom_config.h b/th
#define CONFIG_RD_DEBUG 0
#define CONFIG_REALTIME_ONLY 1
--
2.17.1
2.20.1

View file

@ -18,7 +18,7 @@ Subject: Add AllowUserCertificates flag
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -223,6 +223,7 @@ import org.chromium.content_public.browser.ScreenOrientationProvider;
@@ -226,6 +226,7 @@ import org.chromium.content_public.browser.ScreenOrientationProvider;
import org.chromium.content_public.browser.SelectionPopupController;
import org.chromium.content_public.browser.WebContents;
import org.chromium.content_public.common.ContentSwitches;
@ -26,7 +26,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.printing.PrintManagerDelegateImpl;
import org.chromium.printing.PrintingController;
import org.chromium.printing.PrintingControllerImpl;
@@ -976,6 +977,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -984,6 +985,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
UpdateMenuItemHelper.getInstance().onStart();
ChromeActivitySessionTracker.getInstance().onStartWithNative();
ChromeCachedFlags.getInstance().cacheNativeFlags();
@ -38,7 +38,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/flags/ChromeCachedFlags.java
@@ -88,6 +88,7 @@ public class ChromeCachedFlags {
@@ -87,6 +87,7 @@ public class ChromeCachedFlags {
add(ChromeFeatureList.EARLY_LIBRARY_LOAD);
add(ChromeFeatureList.ELASTIC_OVERSCROLL);
add(ChromeFeatureList.IMMERSIVE_UI_MODE);
@ -49,7 +49,7 @@ 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
@@ -2781,6 +2781,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2910,6 +2910,10 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kCSSContainerQueriesDescription, kOsAll,
FEATURE_VALUE_TYPE(blink::features::kCSSContainerQueries)},
#if defined(OS_ANDROID)
@ -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
@@ -139,6 +139,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&feed::kFeedInteractiveRefresh,
@@ -142,6 +142,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&feed::kFeedSignInPromoDismiss,
&feed::kInterestFeedContentSuggestions,
&feed::kInterestFeedSpinnerAlwaysAnimate,
+ &kAllowUserCertificates,
&feed::kInterestFeedV1ClicksAndViewsConditionalUpload,
&feed::kInterestFeedV2,
&feed::kInterestFeedV2Autoplay,
@@ -373,6 +374,9 @@ const base::Feature kAdaptiveButtonInTopToolbarCustomizationV2{
@@ -377,6 +378,9 @@ const base::Feature kAdaptiveButtonInTopToolbarCustomizationV2{
"AdaptiveButtonInTopToolbarCustomizationV2",
base::FEATURE_DISABLED_BY_DEFAULT};
@ -128,13 +128,13 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
private static Map<String, Boolean> sDefaults =
ImmutableMap.<String, Boolean>builder()
+ .put(ChromeFeatureList.ALLOW_USER_CERTIFICATES, false)
.put(ChromeFeatureList.ANDROID_PARTNER_CUSTOMIZATION_PHENOTYPE, true)
.put(ChromeFeatureList.BOOKMARK_BOTTOM_SHEET, false)
.put(ChromeFeatureList.CONDITIONAL_TAB_STRIP_ANDROID, false)
.put(ChromeFeatureList.LENS_CAMERA_ASSISTED_SEARCH, false)
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -211,6 +211,7 @@ public abstract class ChromeFeatureList {
@@ -193,6 +193,7 @@ public abstract class ChromeFeatureList {
}
/* Alphabetical: */
@ -165,5 +165,5 @@ diff --git a/net/android/java/src/org/chromium/net/X509Util.java b/net/android/j
isIssuedByKnownRoot, verifiedChain);
}
--
2.17.1
2.20.1

View file

@ -19,5 +19,5 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcu
KeyboardShortcutGroup webpageShortcutGroup = new KeyboardShortcutGroup(
--
2.17.1
2.20.1

View file

@ -922,5 +922,5 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
};
// ----------------------------------------------------------------------------
--
2.17.1
2.20.1

View file

@ -1027,5 +1027,5 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
&yahoo,
&duckduckgo,
--
2.17.1
2.20.1

View file

@ -14,7 +14,7 @@ Subject: Add IsCleartextPermitted flag
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -7617,6 +7617,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -7852,6 +7852,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(
chrome::android::kBookmarksExportUseSaf)},
@ -29,7 +29,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -1407,6 +1407,10 @@ const char kHttpsOnlyModeDescription[] =
@@ -1460,6 +1460,10 @@ const char kHttpsOnlyModeDescription[] =
"Adds a setting under chrome://settings/security to opt-in to HTTPS-First "
"Mode.";
@ -43,7 +43,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -814,6 +814,9 @@ extern const char kHostedAppShimCreationDescription[];
@@ -845,6 +845,9 @@ extern const char kHostedAppShimCreationDescription[];
extern const char kHttpsOnlyModeName[];
extern const char kHttpsOnlyModeDescription[];
@ -81,7 +81,7 @@ 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
@@ -214,6 +214,10 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
@@ -215,6 +215,10 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
}
#if defined(OS_ANDROID)
@ -93,5 +93,5 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
// ERR_CLEARTEXT_NOT_PERMITTED if not.
if (request->context()->check_cleartext_permitted() &&
--
2.17.1
2.20.1

View file

@ -17,7 +17,7 @@ See also:
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -7518,6 +7518,12 @@ const FeatureEntry kFeatureEntries[] = {
@@ -7709,6 +7709,12 @@ const FeatureEntry kFeatureEntries[] = {
"AndroidDynamicColor")},
#endif // defined(OS_ANDROID)
@ -33,7 +33,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -635,6 +635,11 @@ const char kEnableAutofillCreditCardAuthenticationDescription[] =
@@ -658,6 +658,11 @@ const char kEnableAutofillCreditCardAuthenticationDescription[] =
"authenticator (if available) to verify card ownership when retrieving "
"credit cards from Google Payments.";
@ -48,7 +48,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -404,6 +404,9 @@ extern const char kEnableAutofillSaveCardInfoBarAccountIndicationFooterName[];
@@ -420,6 +420,9 @@ extern const char kEnableAutofillSaveCardInfoBarAccountIndicationFooterName[];
extern const char
kEnableAutofillSaveCardInfoBarAccountIndicationFooterDescription[];
@ -61,7 +61,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmpl b/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmpl
--- a/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmpl
+++ b/chrome/browser/flags/android/java_templates/ChromeSwitches.java.tmpl
@@ -129,10 +129,6 @@ public abstract class ChromeSwitches {{
@@ -123,10 +123,6 @@ public abstract class ChromeSwitches {{
/** Switch for enabling the Chrome Survey. Only works when UMA is accepted. */
public static final String CHROME_FORCE_ENABLE_SURVEY = "force-enable-chrome-survey";
@ -97,5 +97,5 @@ diff --git a/chrome/common/chrome_switches.h b/chrome/common/chrome_switches.h
extern const char kInstallChromeApp[];
extern const char kInstantProcess[];
--
2.17.1
2.20.1

View file

@ -23,17 +23,17 @@ for SimpleURLLoaders as well.
chrome/browser/resources/proxy_config.js | 266 +++++++++++
chrome/browser/ui/BUILD.gn | 2 +
.../webui/chrome_web_ui_controller_factory.cc | 3 +
chrome/browser/ui/webui/proxy_config_ui.cc | 416 ++++++++++++++++++
chrome/browser/ui/webui/proxy_config_ui.cc | 419 ++++++++++++++++++
chrome/browser/ui/webui/proxy_config_ui.h | 33 ++
chrome/common/webui_url_constants.cc | 4 +
chrome/common/webui_url_constants.h | 2 +
.../core/browser/proxy_policy_handler.cc | 2 +-
.../pref_proxy_config_tracker_impl.cc | 1 +
.../proxy_config/proxy_config_dictionary.cc | 30 +-
.../proxy_config/proxy_config_dictionary.h | 7 +-
.../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, 998 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
@@ -50,6 +50,7 @@ import org.chromium.ui.text.SpanApplier;
@@ -49,6 +49,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
@@ -365,6 +365,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
@@ -367,6 +367,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
builtins_to_provide.push_back(
base::ASCIIToUTF16(chrome::kChromeUISettingsURL));
#endif
@ -93,7 +93,7 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
diff --git a/chrome/browser/browser_resources.grd b/chrome/browser/browser_resources.grd
--- a/chrome/browser/browser_resources.grd
+++ b/chrome/browser/browser_resources.grd
@@ -88,6 +88,12 @@
@@ -89,6 +89,12 @@
<include name="IDR_HANGOUT_SERVICES_MANIFEST" file="resources\hangout_services\manifest.json" type="BINDATA" />
</if>
@ -182,7 +182,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
#include "chrome/browser/background/background_mode_manager.h"
#endif
@@ -914,6 +916,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
@@ -941,6 +943,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
PluginsResourceService::RegisterPrefs(registry);
#endif
@ -647,7 +647,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom
#include "chrome/browser/ui/webui/quota_internals/quota_internals_ui.h"
#include "chrome/browser/ui/webui/signin_internals_ui.h"
#include "chrome/browser/ui/webui/sync_internals/sync_internals_ui.h"
@@ -619,6 +620,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
@@ -638,6 +639,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
return &NewWebUI<MemoryInternalsUI>;
if (url.host_piece() == chrome::kChromeUINetExportHost)
return &NewWebUI<NetExportUI>;
@ -660,7 +660,7 @@ diff --git a/chrome/browser/ui/webui/proxy_config_ui.cc b/chrome/browser/ui/webu
new file mode 100644
--- /dev/null
+++ b/chrome/browser/ui/webui/proxy_config_ui.cc
@@ -0,0 +1,416 @@
@@ -0,0 +1,419 @@
+/*
+ This file is part of Bromite.
+
@ -747,9 +747,9 @@ new file mode 100644
+ void RegisterMessages() override;
+
+ // Messages
+ void OnEnableNotifyUIWithState(const base::ListValue* list);
+ void OnApply(const base::ListValue* config);
+ void OnClear(const base::ListValue* config);
+ void OnEnableNotifyUIWithState(base::Value::ConstListView list);
+ void OnApply(base::Value::ConstListView config);
+ void OnClear(base::Value::ConstListView config);
+
+ // net::ProxyConfigService::Observer implementation:
+ // Calls ProxyConfigView.onProxyConfigChanged JavaScript function in the
@ -910,7 +910,7 @@ new file mode 100644
+// The proxy configuration UI is not notified of state changes until this function runs.
+// After this function, OnProxyConfigChanged() will be called on all proxy state changes.
+void ProxyConfigMessageHandler::OnEnableNotifyUIWithState(
+ const base::ListValue* list) {
+ base::Value::ConstListView list) {
+ DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
+ if (!is_observing_) {
@ -932,24 +932,24 @@ new file mode 100644
+ OnProxyConfigChanged(config, availability);
+}
+
+void ProxyConfigMessageHandler::OnClear(const base::ListValue* list) {
+void ProxyConfigMessageHandler::OnClear(base::Value::ConstListView list) {
+ DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
+ const base::Value cfg = ProxyConfigDictionary::CreateSystem();
+ pref_service_->Set(proxy_config::prefs::kProxy, cfg);
+ pref_service_->CommitPendingWrite();
+ OnEnableNotifyUIWithState(nullptr);
+ OnEnableNotifyUIWithState(list);
+}
+
+void ProxyConfigMessageHandler::OnApply(const base::ListValue* list) {
+void ProxyConfigMessageHandler::OnApply(base::Value::ConstListView list) {
+ DCHECK_CURRENTLY_ON(BrowserThread::UI);
+
+ if ((list->GetList().size() != 1) || !list->GetList()[0].is_dict()) {
+ if ((list.size() != 1) || !list[0].is_dict()) {
+ return;
+ }
+
+ const base::DictionaryValue* config = nullptr;
+ if (!list->GetDictionary(0, &config))
+ if (!list[0].GetAsDictionary(&config))
+ return;
+
+ const base::Value *autoDetect = config->FindKeyOfType("auto_detect", base::Value::Type::BOOLEAN);
@ -1019,7 +1019,8 @@ new file mode 100644
+ } else if (t == "direct") {
+ proxyConfig.proxy_rules().type = net::ProxyConfig::ProxyRules::Type::EMPTY;
+ } else if (t == "none") {
+ OnClear(nullptr);
+ base::Value::ConstListView empty;
+ OnClear(empty);
+ return;
+ } else {
+ // invalid type
@ -1064,7 +1065,9 @@ new file mode 100644
+ pref_service_->Set(proxy_config::prefs::kProxy, cfg);
+ }
+ pref_service_->CommitPendingWrite();
+ OnEnableNotifyUIWithState(nullptr);
+
+ base::Value::ConstListView empty;
+ OnEnableNotifyUIWithState(empty);
+}
+
+} // namespace
@ -1118,7 +1121,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
@@ -34,6 +34,8 @@ const char kChromeUICertificateViewerHost[] = "view-cert";
@@ -35,6 +35,8 @@ const char kChromeUICertificateViewerHost[] = "view-cert";
const char kChromeUICertificateViewerURL[] = "chrome://view-cert/";
const char kChromeUIChromeSigninHost[] = "chrome-signin";
const char kChromeUIChromeSigninURL[] = "chrome://chrome-signin/";
@ -1146,7 +1149,7 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_constants.h
--- a/chrome/common/webui_url_constants.h
+++ b/chrome/common/webui_url_constants.h
@@ -125,6 +125,8 @@ extern const char kChromeUIMemoryInternalsHost[];
@@ -126,6 +126,8 @@ extern const char kChromeUIMemoryInternalsHost[];
extern const char kChromeUINTPTilesInternalsHost[];
extern const char kChromeUINaClHost[];
extern const char kChromeUINetExportHost[];
@ -1155,18 +1158,6 @@ diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_const
extern const char kChromeUINetInternalsHost[];
extern const char kChromeUINetInternalsURL[];
extern const char kChromeUINewTabHost[];
diff --git a/components/policy/core/browser/proxy_policy_handler.cc b/components/policy/core/browser/proxy_policy_handler.cc
--- a/components/policy/core/browser/proxy_policy_handler.cc
+++ b/components/policy/core/browser/proxy_policy_handler.cc
@@ -207,7 +207,7 @@ void ProxyPolicyHandler::ApplyPolicySettings(const PolicyMap& policies,
ProxyConfigDictionary::CreateFixedServers(
server->GetString(), bypass_list && bypass_list->is_string()
? bypass_list->GetString()
- : std::string()));
+ : std::string(), false));
}
break;
}
diff --git a/components/proxy_config/pref_proxy_config_tracker_impl.cc b/components/proxy_config/pref_proxy_config_tracker_impl.cc
--- a/components/proxy_config/pref_proxy_config_tracker_impl.cc
+++ b/components/proxy_config/pref_proxy_config_tracker_impl.cc
@ -1303,6 +1294,18 @@ diff --git a/components/proxy_config/proxy_config_dictionary.h b/components/prox
base::Value dict_;
diff --git a/components/proxy_config/proxy_policy_handler.cc b/components/proxy_config/proxy_policy_handler.cc
--- a/components/proxy_config/proxy_policy_handler.cc
+++ b/components/proxy_config/proxy_policy_handler.cc
@@ -259,7 +259,7 @@ void ProxyPolicyHandler::ApplyPolicySettings(const PolicyMap& policies,
ProxyConfigDictionary::CreateFixedServers(
server->GetString(), bypass_list && bypass_list->is_string()
? bypass_list->GetString()
- : std::string()));
+ : std::string(), false));
}
break;
}
diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_config.cc
--- a/net/proxy_resolution/proxy_config.cc
+++ b/net/proxy_resolution/proxy_config.cc
@ -1386,5 +1389,5 @@ diff --git a/net/proxy_resolution/proxy_config.h b/net/proxy_resolution/proxy_co
// Returns one of {&proxies_for_http, &proxies_for_https, &proxies_for_ftp,
// &fallback_proxies}, or NULL if there is no proxy to use.
--
2.17.1
2.20.1

View file

@ -44,7 +44,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -28,6 +28,11 @@
@@ -32,6 +32,11 @@
android:key="secure_dns"
android:title="@string/settings_secure_dns_title"
android:fragment="org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings"/>
@ -152,7 +152,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;
@@ -1756,8 +1757,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1766,8 +1767,9 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
Bundle savedInstanceState = getSavedInstanceState();
// We determine the model as soon as possible so every systems get initialized coherently.
@ -175,7 +175,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.dependency_injection.ChromeActivityComponent;
import org.chromium.chrome.browser.dependency_injection.ModuleFactoryOverrides;
import org.chromium.chrome.browser.device.DeviceClassManager;
@@ -1872,6 +1873,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1884,6 +1885,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
throw new IllegalStateException(
"Attempting to access TabCreator before initialization");
}
@ -212,7 +212,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;
@@ -409,6 +410,10 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -408,6 +409,10 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
boolean hasSaveImage = false;
mShowEphemeralTabNewLabel = null;
@ -223,7 +223,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
List<Pair<Integer, ModelList>> groupedItems = new ArrayList<>();
if (mParams.isAnchor()) {
@@ -427,6 +432,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -426,6 +431,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
linkGroup.add(createListItem(Item.OPEN_IN_NEW_TAB_IN_GROUP));
}
}
@ -231,7 +231,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));
}
@@ -451,7 +457,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -450,7 +456,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
}
}
if (FirstRunStatus.getFirstRunFlowComplete()) {
@ -278,7 +278,7 @@ 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
@@ -50,6 +50,9 @@ import org.chromium.components.browser_ui.widget.TintedDrawable;
@@ -49,6 +49,9 @@ import org.chromium.components.browser_ui.widget.TintedDrawable;
import org.chromium.components.embedder_support.util.UrlConstants;
import org.chromium.device.mojom.ScreenOrientationLockType;
@ -288,7 +288,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;
@@ -727,7 +730,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
@@ -726,7 +729,7 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
@Override
public boolean isIncognito() {
@ -339,7 +339,7 @@ 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
@@ -27,6 +27,10 @@ import org.chromium.chrome.browser.profiles.Profile;
@@ -26,6 +26,10 @@ 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;
@ -350,7 +350,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate;
import org.chromium.components.browser_ui.settings.SettingsLauncher;
@@ -41,7 +45,12 @@ import org.chromium.ui.text.SpanApplier;
@@ -40,7 +44,12 @@ import org.chromium.ui.text.SpanApplier;
* Fragment to keep track of the all the privacy related preferences.
*/
public class PrivacySettings
@ -364,7 +364,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment";
private static final String PREF_NETWORK_PREDICTIONS = "preload_pages";
private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode";
@@ -84,6 +93,25 @@ public class PrivacySettings
@@ -83,6 +92,25 @@ public class PrivacySettings
(ChromeSwitchPreference) findPreference(PREF_CAN_MAKE_PAYMENT);
canMakePaymentPref.setOnPreferenceChangeListener(this);
@ -390,7 +390,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
ChromeSwitchPreference networkPredictionPref =
(ChromeSwitchPreference) findPreference(PREF_NETWORK_PREDICTIONS);
networkPredictionPref.setChecked(
@@ -115,6 +143,9 @@ public class PrivacySettings
@@ -114,6 +142,9 @@ public class PrivacySettings
} else if (PREF_NETWORK_PREDICTIONS.equals(key)) {
PrivacyPreferencesManagerImpl.getInstance().setNetworkPredictionEnabled(
(boolean) newValue);
@ -400,7 +400,7 @@ 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);
@@ -192,4 +223,8 @@ public class PrivacySettings
@@ -191,4 +222,8 @@ public class PrivacySettings
}
return false;
}
@ -518,7 +518,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;
@@ -687,6 +690,13 @@ public class TabPersistentStore {
@@ -654,6 +657,13 @@ public class TabPersistentStore {
}
}
}
@ -580,7 +580,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebappI
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -447,7 +447,7 @@ const base::Feature kCCTIncognito{"CCTIncognito",
@@ -445,7 +445,7 @@ const base::Feature kCCTIncognito{"CCTIncognito",
base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kCCTIncognitoAvailableToThirdParty{
@ -592,7 +592,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -907,6 +907,19 @@ Your Google account may have other forms of browsing history like searches and a
@@ -922,6 +922,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>
@ -656,5 +656,5 @@ new file mode 100644
+ void setSnackbarManager(SnackbarManager manager);
+}
--
2.17.1
2.20.1

View file

@ -69,7 +69,7 @@ diff --git a/base/android/content_uri_utils.cc b/base/android/content_uri_utils.
diff --git a/base/android/content_uri_utils.h b/base/android/content_uri_utils.h
--- a/base/android/content_uri_utils.h
+++ b/base/android/content_uri_utils.h
@@ -17,6 +17,10 @@ namespace base {
@@ -18,6 +18,10 @@ namespace base {
// Returns -1 if the URI is invalid.
BASE_EXPORT File OpenContentUriForRead(const FilePath& content_uri);
@ -146,7 +146,7 @@ diff --git a/chrome/android/java/res/menu/bookmark_action_bar_menu.xml b/chrome/
@@ -21,6 +21,20 @@
android:visible="false"
app:showAsAction="ifRoom"
app:iconTint="@color/default_icon_color_tint_list" />
app:iconTint="@color/default_icon_color_secondary_tint_list" />
+ <item
+ android:id="@+id/import_menu_id"
+ android:icon="@drawable/ic_folder_blue_24dp"
@ -196,7 +196,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActionBar.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActionBar.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActionBar.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActionBar.java
@@ -83,6 +83,12 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
@@ -84,6 +84,12 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
} else if (menuItem.getItemId() == R.id.search_menu_id) {
mDelegate.openSearchUI();
return true;
@ -209,7 +209,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
}
SelectionDelegate<BookmarkId> selectionDelegate = mDelegate.getSelectionDelegate();
@@ -134,6 +140,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
@@ -135,6 +141,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
void showLoadingUi() {
setTitle(null);
setNavigationButton(NAVIGATION_BUTTON_NONE);
@ -218,7 +218,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
getMenu().findItem(R.id.search_menu_id).setVisible(false);
getMenu().findItem(R.id.edit_menu_id).setVisible(false);
}
@@ -143,6 +151,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
@@ -144,6 +152,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
super.showNormalView();
if (mDelegate == null) {
@ -227,7 +227,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
getMenu().findItem(R.id.search_menu_id).setVisible(false);
getMenu().findItem(R.id.edit_menu_id).setVisible(false);
}
@@ -173,6 +183,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
@@ -174,6 +184,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
public void onFolderStateSet(BookmarkId folder) {
mCurrentFolder = mDelegate.getModel().getBookmarkById(folder);
@ -287,7 +287,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
+ mWindowAndroid.getIntentRequestTracker().onActivityResult(requestCode, resultCode, data, mWindowAndroid);
+ mWindowAndroid.getIntentRequestTracker().onActivityResult(requestCode, resultCode, data);
if (requestCode == EDIT_BOOKMARK_REQUEST_CODE && resultCode == RESULT_OK) {
BookmarkId bookmarkId = BookmarkId.getBookmarkIdFromString(data.getStringExtra(
INTENT_VISIT_BOOKMARK_ID));
@ -417,7 +417,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
+ window.showIntent(fileSelector,
+ new WindowAndroid.IntentCallback() {
+ @Override
+ public void onIntentCompleted(WindowAndroid window, int resultCode, Intent data) {
+ public void onIntentCompleted(int resultCode, Intent data) {
+ if (data == null) return;
+ Uri filePath = data.getData();
+ doExportBookmarksImpl(window, filePath);
@ -446,8 +446,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
+ // get real actual file name on disk
+ if (actualFilePath==null) actualFilePath = lastSelectedUri.toString();
+ // set file name to last exported file name
+ fileSelector.putExtra(Intent.EXTRA_TITLE,
+ ContentUriUtils.getDisplayName(lastSelectedUri, context,
+ fileSelector.putExtra(Intent.EXTRA_TITLE,
+ ContentUriUtils.getDisplayName(lastSelectedUri, context,
+ DocumentsContract.Document.COLUMN_DISPLAY_NAME));
+ }
+ return null;
@ -504,7 +504,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
+ DownloadLocationDialogController controller = new DownloadLocationDialogController() {
+ @Override
+ public void onDownloadLocationDialogComplete(String returnedPath) {}
+
+
+ @Override
+ public void onDownloadLocationDialogCanceled() {}
+ };
@ -786,7 +786,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -1817,6 +1817,13 @@ static_library("browser") {
@@ -1832,6 +1832,13 @@ static_library("browser") {
"window_placement/window_placement_permission_context.h",
]
@ -800,7 +800,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
configs += [
"//build/config/compiler:wexit_time_destructors",
"//build/config:precompiled_headers",
@@ -2938,6 +2945,8 @@ static_library("browser") {
@@ -2965,6 +2972,8 @@ static_library("browser") {
"autofill/manual_filling_view_interface.h",
"banners/android/chrome_app_banner_manager_android.cc",
"banners/android/chrome_app_banner_manager_android.h",
@ -809,7 +809,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"browser_process_platform_part_android.cc",
"browser_process_platform_part_android.h",
"chrome_browser_field_trials_mobile.cc",
@@ -3483,8 +3492,6 @@ static_library("browser") {
@@ -3541,8 +3550,6 @@ static_library("browser") {
"badging/badge_manager_factory.h",
"banners/app_banner_manager_desktop.cc",
"banners/app_banner_manager_desktop.h",
@ -821,9 +821,9 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -7567,6 +7567,12 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(
password_manager::features::kPasswordsAccountStorageRevisedOptInFlow)},
@@ -7802,6 +7802,12 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kCommerceDeveloperDescription, kOsAll,
FEATURE_VALUE_TYPE(commerce::kCommerceDeveloper)},
+ {"export-bookmarks-use-saf",
+ flag_descriptions::kBookmarksExportUseSafName,
@ -1339,7 +1339,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
@@ -5306,6 +5306,11 @@ const char kWebKioskEnableLacrosDescription[] =
@@ -5415,6 +5415,11 @@ const char kWebKioskEnableLacrosDescription[] =
"Chrome OS. When disabled, the Ash-chrome will be used";
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
@ -1354,7 +1354,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
@@ -3091,6 +3091,9 @@ extern const char kWebKioskEnableLacrosName[];
@@ -3162,6 +3162,9 @@ extern const char kWebKioskEnableLacrosName[];
extern const char kWebKioskEnableLacrosDescription[];
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
@ -1367,7 +1367,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -164,6 +164,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -165,6 +165,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kBackgroundThreadPool,
&kBentoOffline,
&kBookmarkBottomSheet,
@ -1375,7 +1375,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
&kCastDeviceFilter,
&kCloseTabSuggestions,
&kCriticalPersistedTabData,
@@ -810,6 +811,10 @@ const base::Feature kWebApkInstallCompleteNotification{
@@ -812,6 +813,10 @@ const base::Feature kWebApkInstallCompleteNotification{
const base::Feature kWebApkTrampolineOnInitialIntent{
"WebApkTrampolineOnInitialIntent", base::FEATURE_ENABLED_BY_DEFAULT};
@ -1400,7 +1400,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
@@ -560,6 +560,7 @@ public abstract class ChromeFeatureList {
@@ -546,6 +546,7 @@ public abstract class ChromeFeatureList {
"WebApkTrampolineOnInitialIntent";
public static final String XSURFACE_METRICS_REPORTING = "XsurfaceMetricsReporting";
public static final String WEB_OTP_CROSS_DEVICE_SIMPLE_STRING = "WebOtpCrossDeviceSimpleString";
@ -1478,7 +1478,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
/**
* Whether Chrome is set as the default browser.
@@ -1042,6 +1044,7 @@ public final class ChromePreferenceKeys {
@@ -1059,6 +1061,7 @@ public final class ChromePreferenceKeys {
AUTOFILL_ASSISTANT_PROACTIVE_HELP,
APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE,
APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO,
@ -1517,7 +1517,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn
--- a/chrome/common/BUILD.gn
+++ b/chrome/common/BUILD.gn
@@ -416,6 +416,9 @@ static_library("common") {
@@ -412,6 +412,9 @@ static_library("common") {
sources += [
"media/chrome_media_drm_bridge_client.cc",
"media/chrome_media_drm_bridge_client.h",
@ -1539,7 +1539,7 @@ diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
"importer/bookmarks_file_importer.cc",
"importer/bookmarks_file_importer.h",
"importer/external_process_importer_bridge.cc",
@@ -184,6 +182,11 @@ static_library("utility") {
@@ -185,6 +183,11 @@ static_library("utility") {
}
}
@ -1717,7 +1717,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
return mimeTypes;
}
@@ -812,6 +820,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -811,6 +819,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
return countAcceptTypesFor(superType) == mFileTypes.size();
}
@ -1782,5 +1782,5 @@ diff --git a/ui/shell_dialogs/select_file_dialog_android.h b/ui/shell_dialogs/se
~SelectFileDialogImpl() override;
--
2.17.1
2.20.1

View file

@ -9,16 +9,18 @@ Flags are mutually exclusive.
See also: https://github.com/bromite/bromite/issues/1474
---
.../java/res/xml/privacy_preferences.xml | 10 ++++++
.../browser/LaunchIntentDispatcher.java | 19 ++++++++++
.../privacy/settings/PrivacySettings.java | 36 +++++++++++++++++++
.../strings/android_chrome_strings.grd | 15 ++++++++
4 files changed, 80 insertions(+)
.../java/res/xml/privacy_preferences.xml | 10 ++++++++
.../browser/LaunchIntentDispatcher.java | 22 +++++++++++++++++
.../IncognitoCustomTabIntentDataProvider.java | 6 +++++
.../privacy/settings/PrivacySettings.java | 24 +++++++++++++++++++
.../chrome/browser/tab/TabAssociatedApp.java | 6 ++++-
.../strings/android_chrome_strings.grd | 15 ++++++++++++
6 files changed, 82 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
@@ -56,6 +56,16 @@
@@ -60,6 +60,16 @@
android:fragment="org.chromium.chrome.browser.privacy.settings.DoNotTrackSettings"
android:key="do_not_track"
android:title="@string/do_not_track_title"/>
@ -38,7 +40,15 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
@@ -59,6 +59,8 @@ import java.lang.annotation.Retention;
@@ -46,6 +46,7 @@ import org.chromium.chrome.browser.notifications.NotificationPlatformBridge;
import org.chromium.chrome.browser.partnercustomizations.PartnerBrowserCustomizations;
import org.chromium.chrome.browser.searchwidget.SearchActivity;
import org.chromium.chrome.browser.tab.Tab;
+import org.chromium.chrome.browser.tab.TabLaunchType;
import org.chromium.chrome.browser.translate.TranslateIntentHandler;
import org.chromium.chrome.browser.util.AndroidTaskUtils;
import org.chromium.chrome.browser.vr.VrModuleProvider;
@@ -59,6 +60,8 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.Set;
@ -47,20 +57,28 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
/**
* Dispatches incoming intents to the appropriate activity based on the current configuration and
* Intent fired.
@@ -279,6 +281,12 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
@@ -279,6 +282,9 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
*/
public static boolean isCustomTabIntent(Intent intent) {
if (intent == null) return false;
+ if (ContextUtils.getAppSharedPreferences()
+ .getBoolean(PrivacySettings.PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, false))
+ return false;
+ if (!ContextUtils.getAppSharedPreferences()
+ .getBoolean(PrivacySettings.PREF_ALLOW_CUSTOM_TAB_INTENTS, false))
+ return false;
if (CustomTabsIntent.shouldAlwaysUseBrowserUI(intent)
|| !intent.hasExtra(CustomTabsIntent.EXTRA_SESSION)) {
return false;
@@ -417,6 +425,17 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
@@ -298,6 +304,10 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
newIntent.setData(uri);
newIntent.setClassName(context, CustomTabActivity.class.getName());
+ if (ContextUtils.getAppSharedPreferences()
+ .getBoolean(PrivacySettings.PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, false))
+ newIntent.putExtra(IntentHandler.EXTRA_OPEN_NEW_INCOGNITO_TAB, true);
+
// Since configureIntentForResizableCustomTab() might change the componenet/class
// associated with the passed intent, it needs to be called after #setClassName(context,
// CustomTabActivity.class.getName());
@@ -417,6 +427,18 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
if (Intent.ACTION_VIEW.equals(newIntent.getAction())
&& !IntentHandler.wasIntentSenderChrome(newIntent)) {
@ -72,12 +90,36 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
+ /*incognito*/true);
+ newIntent.setData(mIntent.getData());
+ newIntent.setPackage(applicationContext.getPackageName());
+ IntentHandler.setTabLaunchType(newIntent, TabLaunchType.FROM_EXTERNAL_APP);
+ newIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ }
+
long time = SystemClock.elapsedRealtime();
if (!chromeTabbedTaskExists()) {
newIntent.putExtra(IntentHandler.EXTRA_STARTED_TABBED_CHROME_TASK, true);
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/IncognitoCustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/IncognitoCustomTabIntentDataProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/IncognitoCustomTabIntentDataProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/IncognitoCustomTabIntentDataProvider.java
@@ -36,6 +36,9 @@ import org.chromium.components.browser_ui.widget.TintedDrawable;
import java.util.ArrayList;
import java.util.List;
+import org.chromium.base.ContextUtils;
+import org.chromium.chrome.browser.privacy.settings.PrivacySettings;
+
/**
* A model class that parses the incoming intent for incognito Custom Tabs specific customization
* data.
@@ -109,6 +112,9 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD
}
private static boolean isIntentFromThirdPartyAllowed() {
+ if (ContextUtils.getAppSharedPreferences()
+ .getBoolean(PrivacySettings.PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, false))
+ return true;
return CachedFeatureFlags.isEnabled(
ChromeFeatureList.CCT_INCOGNITO_AVAILABLE_TO_THIRD_PARTY);
}
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
@ -91,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 =
@@ -191,6 +194,9 @@ public class PrivacySettings
@@ -190,6 +193,9 @@ public class PrivacySettings
updateSummaries();
}
@ -101,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();
@@ -222,6 +228,26 @@ public class PrivacySettings
@@ -221,6 +227,14 @@ public class PrivacySettings
} else if (PREF_INCOGNITO_TAB_HISTORY_ENABLED.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED, (boolean) newValue);
@ -109,26 +151,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
+ SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
+ sharedPreferencesEditor.putBoolean(PREF_ALLOW_CUSTOM_TAB_INTENTS, (boolean)newValue);
+ sharedPreferencesEditor.apply();
+
+ // PREF_ALLOW_CUSTOM_TAB_INTENTS and PREF_OPEN_EXTERNAL_LINKS_INCOGNITO
+ // are mutually exclusive
+ if((boolean)newValue && ContextUtils.getAppSharedPreferences()
+ .getBoolean(PrivacySettings.PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, false))
+ openExternalLinksPref.setChecked(!(boolean)newValue);
+ } else if (PREF_OPEN_EXTERNAL_LINKS_INCOGNITO.equals(key)) {
+ SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
+ sharedPreferencesEditor.putBoolean(PREF_OPEN_EXTERNAL_LINKS_INCOGNITO, (boolean)newValue);
+ sharedPreferencesEditor.apply();
+
+ // PREF_ALLOW_CUSTOM_TAB_INTENTS and PREF_OPEN_EXTERNAL_LINKS_INCOGNITO
+ // are mutually exclusive
+ if((boolean)newValue && ContextUtils.getAppSharedPreferences()
+ .getBoolean(PrivacySettings.PREF_ALLOW_CUSTOM_TAB_INTENTS, false))
+ allowCustomTabIntentsPref.setChecked(false);
}
return true;
@@ -257,6 +283,16 @@ public class PrivacySettings
@@ -256,6 +270,16 @@ public class PrivacySettings
canMakePaymentPref.setChecked(prefService.getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
}
@ -145,10 +175,26 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
Preference doNotTrackPref = findPreference(PREF_DO_NOT_TRACK);
if (doNotTrackPref != null) {
doNotTrackPref.setSummary(prefService.getBoolean(Pref.ENABLE_DO_NOT_TRACK)
diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java
--- a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java
+++ b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAssociatedApp.java
@@ -84,7 +84,11 @@ public final class TabAssociatedApp extends TabWebContentsUserData implements Im
public static boolean isOpenedFromExternalApp(Tab tab) {
TabAssociatedApp app = get(tab);
if (app == null) return false;
-
+ if (ContextUtils.getAppSharedPreferences()
+ .getBoolean("open_external_links_incognito", false) &&
+ tab.isIncognito() &&
+ tab.getLaunchType() == TabLaunchType.FROM_EXTERNAL_APP)
+ return true;
String packageName = ContextUtils.getApplicationContext().getPackageName();
return tab.getLaunchType() == TabLaunchType.FROM_EXTERNAL_APP
&& !TextUtils.equals(app.getAppId(), packageName);
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
@@ -4496,6 +4496,21 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4555,6 +4555,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>
@ -171,5 +217,5 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<!-- Autofill Assistant preferences -->
<!-- TODO(b/168178344): Move to Assistant settings strings section below. -->
--
2.17.1
2.20.1

View file

@ -37,7 +37,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -206,6 +206,8 @@ import java.util.HashSet;
@@ -208,6 +208,8 @@ import java.util.HashSet;
import java.util.List;
import java.util.Locale;
@ -46,7 +46,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
/**
* This is the main activity for ChromeMobile when not running in document mode. All the tabs
* are accessible via a chrome specific tab switching UI.
@@ -2008,6 +2010,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2028,6 +2030,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
} else if (id == R.id.close_tab) {
getCurrentTabModel().closeTab(currentTab, true, false, true);
RecordUserAction.record("MobileTabClosed");
@ -66,7 +66,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
import org.chromium.chrome.browser.ChromeActivitySessionTracker;
import org.chromium.chrome.browser.ChromeApplicationImpl;
import org.chromium.chrome.browser.ChromeKeyboardVisibilityDelegate;
@@ -2303,6 +2304,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2309,6 +2310,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
return true;
}
@ -97,7 +97,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLife
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -3144,6 +3144,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3193,6 +3193,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_REQUEST_DESKTOP_SITE_OFF" desc="Accessibility description for when Request Desktop Site is disabled.">
Turn on Request desktop site
</message>
@ -108,5 +108,5 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
Appearance
</message>
--
2.17.1
2.20.1

View file

@ -15,7 +15,7 @@ and internal chrome:// pages will be used for the autocomplete results.
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -449,6 +449,22 @@ const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = {
@@ -456,6 +456,22 @@ const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = {
base::size(kReaderModeOfferInSettings), nullptr}};
#endif // OS_ANDROID
@ -38,7 +38,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
#if defined(OS_ANDROID)
const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNone[] = {
{"mode", "always-none"}};
@@ -4766,6 +4782,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -4973,6 +4989,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(chrome::android::kReaderModeInCCT)},
#endif // !defined(OS_ANDROID)
@ -81,7 +81,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
@@ -553,6 +553,9 @@ void HistoryURLProvider::Start(const AutocompleteInput& input,
@@ -551,6 +551,9 @@ void HistoryURLProvider::Start(const AutocompleteInput& input,
if (fixed_up_input.type() != metrics::OmniboxInputType::QUERY)
matches_.push_back(what_you_typed_match);
@ -134,5 +134,5 @@ diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/ur
FixupPort(trimmed, parts.port, &url);
FixupPath(trimmed, parts.path, &url);
--
2.17.1
2.20.1

View file

@ -14,7 +14,7 @@ Subject: Add flag for save-data-header
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -4500,6 +4500,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -4700,6 +4700,9 @@ const FeatureEntry kFeatureEntries[] = {
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
#if defined(OS_ANDROID)
@ -27,7 +27,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -1035,6 +1035,10 @@ const char kDisableKeepaliveFetchDescription[] =
@@ -1058,6 +1058,10 @@ const char kDisableKeepaliveFetchDescription[] =
"Disable fetch with keepalive set "
"(https://fetch.spec.whatwg.org/#request-keepalive-flag).";
@ -41,7 +41,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -564,6 +564,9 @@ extern const char kDiagnosticsAppNavigationDescription[];
@@ -583,6 +583,9 @@ extern const char kDiagnosticsAppNavigationDescription[];
extern const char kDisableKeepaliveFetchName[];
extern const char kDisableKeepaliveFetchDescription[];
@ -70,7 +70,7 @@ diff --git a/content/browser/loader/browser_initiated_resource_request.cc b/cont
diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc
--- a/services/network/public/cpp/features.cc
+++ b/services/network/public/cpp/features.cc
@@ -156,6 +156,10 @@ const base::FeatureParam<std::string>
@@ -140,6 +140,10 @@ const base::FeatureParam<std::string>
"DisabledProviders", ""};
// Disable special treatment on requests with keepalive set (see
@ -84,7 +84,7 @@ diff --git a/services/network/public/cpp/features.cc b/services/network/public/c
diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h
--- a/services/network/public/cpp/features.h
+++ b/services/network/public/cpp/features.h
@@ -60,6 +60,8 @@ extern const base::FeatureParam<std::string>
@@ -54,6 +54,8 @@ extern const base::FeatureParam<std::string>
COMPONENT_EXPORT(NETWORK_CPP)
extern const base::Feature kDisableKeepaliveFetch;
@ -94,5 +94,5 @@ diff --git a/services/network/public/cpp/features.h b/services/network/public/cp
extern const base::Feature kTrustTokens;
--
2.17.1
2.20.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
@@ -837,6 +837,11 @@ const FeatureEntry::Choice kForceEffectiveConnectionTypeChoices[] = {
@@ -868,6 +868,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 ==
@@ -3792,6 +3797,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -3974,6 +3979,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
@@ -1524,6 +1524,10 @@ const char kMediaHistoryDescription[] =
@@ -1572,6 +1572,10 @@ const char kMediaHistoryDescription[] =
"Enables Media History which records data around media playbacks on "
"websites.";
@ -58,7 +58,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -877,6 +877,9 @@ extern const char kLogJsConsoleMessagesDescription[];
@@ -905,6 +905,9 @@ extern const char kLogJsConsoleMessagesDescription[];
extern const char kMediaHistoryName[];
extern const char kMediaHistoryDescription[];
@ -153,5 +153,5 @@ diff --git a/net/socket/client_socket_pool_manager.cc b/net/socket/client_socket
}
--
2.17.1
2.20.1

View file

@ -13,7 +13,7 @@ Disable it by default on Android as it is everywhere else
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -2708,6 +2708,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2837,6 +2837,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
@@ -1120,6 +1120,11 @@ const char kEnablePenetratingImageSelectionDescription[] =
@@ -1143,6 +1143,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
@@ -632,6 +632,9 @@ extern const char kEnablePortalsDescription[];
@@ -648,6 +648,9 @@ extern const char kEnablePortalsDescription[];
extern const char kEnablePortalsCrossOriginName[];
extern const char kEnablePortalsCrossOriginDescription[];
@ -69,5 +69,5 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
// When enabled, MediaCapabilities will check with GPU Video Accelerator
--
2.17.1
2.20.1

View file

@ -16,7 +16,7 @@ Subject: Add flag to disable IPv6 probes
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -4742,6 +4742,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -4949,6 +4949,11 @@ const FeatureEntry kFeatureEntries[] = {
#endif // defined(OS_WIN) || defined(OS_MAC) || defined(OS_LINUX) ||
// defined(OS_CHROMEOS)
@ -31,7 +31,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -3015,6 +3015,10 @@ const char kContextualSearchRankerQueryDescription[] =
@@ -3070,6 +3070,10 @@ const char kContextualSearchRankerQueryDescription[] =
const char kContextualSearchSecondTapName[] =
"Contextual Search second tap triggering";
@ -45,7 +45,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -689,6 +689,9 @@ extern const char kEnableWasmLazyCompilationName[];
@@ -711,6 +711,9 @@ extern const char kEnableWasmLazyCompilationName[];
extern const char kEnableWasmLazyCompilationDescription[];
extern const char kEnableWasmTieringName[];
@ -101,7 +101,7 @@ diff --git a/components/url_formatter/spoof_checks/top_domains/BUILD.gn b/compon
diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
--- a/net/dns/host_resolver_manager.cc
+++ b/net/dns/host_resolver_manager.cc
@@ -86,6 +86,7 @@
@@ -88,6 +88,7 @@
#include "net/log/net_log_event_type.h"
#include "net/log/net_log_source.h"
#include "net/log/net_log_source_type.h"
@ -109,7 +109,7 @@ diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
#include "net/log/net_log_with_source.h"
#include "net/socket/client_socket_factory.h"
#include "net/socket/datagram_client_socket.h"
@@ -3512,8 +3513,14 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) {
@@ -3692,8 +3693,14 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) {
if (last_ipv6_probe_time_.is_null() ||
(tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() >
kIPv6ProbePeriodMs) {
@ -152,5 +152,5 @@ diff --git a/services/network/public/cpp/features.h b/services/network/public/cp
COMPONENT_EXPORT(NETWORK_CPP)
extern const base::Feature kThrottleDelayable;
--
2.17.1
2.20.1

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
@@ -2643,6 +2643,9 @@ const FeatureEntry::FeatureVariation kReadLaterVariations[] = {
@@ -2772,6 +2772,9 @@ const FeatureEntry::Choice kDocumentTransitionSlowdownFactorChoices[] = {
// 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
@@ -613,6 +613,10 @@ const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
@@ -636,6 +636,10 @@ const char kEnableAudioFocusEnforcementName[] = "Audio Focus Enforcement";
const char kEnableAudioFocusEnforcementDescription[] =
"Enables enforcement of a single media session having audio focus at "
"any one time. Requires #enable-media-session-service to be enabled too.";
@ -38,7 +38,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -341,6 +341,9 @@ extern const char kForceColorProfileSRGB[];
@@ -354,6 +354,9 @@ extern const char kForceColorProfileSRGB[];
extern const char kForceColorProfileP3[];
extern const char kForceColorProfileColorSpin[];
extern const char kForceColorProfileSCRGBLinear[];
@ -49,5 +49,5 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
extern const char kForceColorProfileName[];
--
2.17.1
2.20.1

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
@@ -2697,6 +2697,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2826,6 +2826,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
@@ -3272,6 +3272,12 @@ const char kProcessSharingWithStrictSiteInstancesDescription[] =
@@ -3344,6 +3344,12 @@ const char kProcessSharingWithStrictSiteInstancesDescription[] =
"separated like strict site isolation, but process selection puts multiple "
"site instances in a single process.";
@ -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
@@ -1883,6 +1883,9 @@ extern const char kQueryTilesNTPDescription[];
@@ -1930,6 +1930,9 @@ extern const char kQueryTilesNTPDescription[];
extern const char kQueryTilesOmniboxName[];
extern const char kQueryTilesOmniboxDescription[];
extern const char kQueryTilesSingleTierName[];
@ -51,5 +51,5 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
extern const char kQueryTilesEnableQueryEditingName[];
extern const char kQueryTilesEnableQueryEditingDescription[];
--
2.17.1
2.20.1

View file

@ -1,58 +0,0 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Mon, 18 Oct 2021 20:50:48 +0200
Subject: Add flag to disable pull to refresh effect
---
chrome/browser/about_flags.cc | 6 ++++++
chrome/browser/flag_descriptions.cc | 6 ++++++
chrome/browser/flag_descriptions.h | 3 +++
3 files changed, 15 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
@@ -7477,6 +7477,12 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kPrivacyReviewDescription, kOsDesktop | kOsAndroid,
FEATURE_VALUE_TYPE(features::kPrivacyReview)},
+#if defined(OS_ANDROID)
+ {switches::kDisablePullToRefreshEffect, flag_descriptions::kDisablePullToRefreshEffectName,
+ flag_descriptions::kDisablePullToRefreshEffectDescription, kOsAndroid,
+ SINGLE_VALUE_TYPE(switches::kDisablePullToRefreshEffect)},
+#endif
+
#if defined(OS_ANDROID)
{"google-mobile-services-passwords",
flag_descriptions::kUnifiedPasswordManagerAndroidName,
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
@@ -1451,6 +1451,12 @@ const char kIncognitoClearBrowsingDataDialogForDesktopDescription[] =
"When enabled, clear browsing data option would be enabled in Incognito "
"which upon clicking would show a dialog to close all Incognito windows.";
+const char kDisablePullToRefreshEffectName[] =
+ "Disable the pull-to-refresh effect when vertically overscrolling content.";
+const char kDisablePullToRefreshEffectDescription[] =
+ "Disable the pull-to-refresh effect with the elastic overscroll feature "
+ "used to indicate that the user is scrolling beyond the range of the scrollable area.";
+
const char kUpdateHistoryEntryPointsInIncognitoName[] =
"Update history entry points in Incognito.";
const char kUpdateHistoryEntryPointsInIncognitoDescription[] =
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
@@ -564,6 +564,9 @@ extern const char kDiagnosticsAppDescription[];
extern const char kDiagnosticsAppNavigationName[];
extern const char kDiagnosticsAppNavigationDescription[];
+extern const char kDisablePullToRefreshEffectName[];
+extern const char kDisablePullToRefreshEffectDescription[];
+
extern const char kDisableKeepaliveFetchName[];
extern const char kDisableKeepaliveFetchDescription[];
--
2.17.1

View file

@ -18,7 +18,7 @@ Subject: Add flag to disable vibration
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -6207,6 +6207,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -6412,6 +6412,10 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kNewMacNotificationAPI)},
#endif
@ -32,7 +32,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -5127,6 +5127,9 @@ const char kDefaultMeetWebAppDescription[] =
@@ -5242,6 +5242,9 @@ const char kDefaultMeetWebAppDescription[] =
"Enables the Meet web app to be installed by default.";
#endif // BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS)
@ -45,7 +45,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -2968,6 +2968,9 @@ extern const char kDefaultMeetWebAppName[];
@@ -3044,6 +3044,9 @@ extern const char kDefaultMeetWebAppName[];
extern const char kDefaultMeetWebAppDescription[];
#endif // BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS)
@ -70,19 +70,19 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
--- a/content/public/common/content_features.cc
+++ b/content/public/common/content_features.cc
@@ -103,6 +103,9 @@ const base::Feature kBackForwardCacheSameSiteForBots{
// BackForwardCacheMemoryControls is enabled only on Android to disable
// BackForwardCache for lower memory devices due to memory limiations.
#if defined(OS_ANDROID)
+// Enables vibration; an user gesture will still be required if enabled.
+const base::Feature kVibration{"Vibration",
+ base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kBackForwardCacheMemoryControls{
"BackForwardCacheMemoryControls", base::FEATURE_ENABLED_BY_DEFAULT};
#else
"BackForwardCacheMemoryControls",
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
@@ -266,6 +266,8 @@ CONTENT_EXPORT extern const base::Feature kWarmUpNetworkProcess;
@@ -273,6 +273,8 @@ CONTENT_EXPORT extern const base::Feature kWarmUpNetworkProcess;
CONTENT_EXPORT extern const base::Feature kWebNfc;
#endif // defined(OS_ANDROID)
@ -139,7 +139,7 @@ diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.c
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1537,6 +1537,10 @@
@@ -1575,6 +1575,10 @@
name: "OrientationEvent",
status: {"Android": "stable"},
},
@ -151,5 +151,5 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
name: "OriginIsolationHeader",
status: "stable",
--
2.17.1
2.20.1

View file

@ -68,7 +68,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
@@ -645,3 +645,9 @@ chrome_test_java_sources = [
@@ -649,3 +649,9 @@ chrome_test_java_sources = [
if (enable_feed_v2) {
chrome_test_java_sources += [ "javatests/src/org/chromium/chrome/browser/ntp/NewTabPageColorWithFeedV2Test.java" ]
}
@ -81,7 +81,7 @@ 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
@@ -42,6 +42,11 @@
@@ -46,6 +46,11 @@
android:title="@string/close_tabs_on_exit_title"
android:summary="@string/close_tabs_on_exit_summary"
android:defaultValue="false" />
@ -176,7 +176,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
@@ -66,6 +66,10 @@ import org.chromium.ui.widget.Toast;
@@ -71,6 +71,10 @@ import org.chromium.ui.widget.Toast;
import java.io.File;
@ -187,7 +187,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
/**
* A class containing some utility static methods.
*/
@@ -306,7 +310,17 @@ public class DownloadUtils {
@@ -311,7 +315,17 @@ public class DownloadUtils {
// Offline pages isn't supported in Incognito. This should be checked before calling
// OfflinePageBridge.getForProfile because OfflinePageBridge instance will not be found
// for incognito profile.
@ -222,7 +222,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/history/History
/**
* Combines and manages the different UI components of browsing history.
*/
@@ -217,7 +223,16 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
@@ -216,7 +222,16 @@ public class HistoryManager implements OnMenuItemClickListener, SelectionObserve
: mSelectableListLayout;
}
@ -305,7 +305,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.chrome.R;
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -137,6 +138,11 @@ public class PrivacySettings
@@ -136,6 +137,11 @@ public class PrivacySettings
Preference secureDnsPref = findPreference(PREF_SECURE_DNS);
secureDnsPref.setVisible(SecureDnsSettings.isUiEnabled());
@ -317,7 +317,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
updateSummaries();
}
@@ -159,11 +165,16 @@ public class PrivacySettings
@@ -158,11 +164,16 @@ public class PrivacySettings
} else if (PREF_HTTPS_FIRST_MODE.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.HTTPS_ONLY_MODE_ENABLED, (boolean) newValue);
@ -334,7 +334,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
@Override
public void onResume() {
super.onResume();
@@ -204,6 +215,13 @@ public class PrivacySettings
@@ -203,6 +214,13 @@ public class PrivacySettings
(ChromeSwitchPreference) findPreference(PREF_CLOSE_TABS_ON_EXIT);
closeTabsOnExitPref.setOnPreferenceChangeListener(this);
closeTabsOnExitPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
@ -1274,7 +1274,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
#else
#include "chrome/browser/ui/browser.h"
#include "chrome/browser/ui/browser_finder.h"
@@ -299,6 +302,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
@@ -345,6 +348,13 @@ void HistoryTabHelper::TitleWasSet(NavigationEntry* entry) {
history::HistoryService* HistoryTabHelper::GetHistoryService() {
Profile* profile =
Profile::FromBrowserContext(web_contents()->GetBrowserContext());
@ -1288,7 +1288,7 @@ diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/histo
if (profile->IsOffTheRecord())
return NULL;
@@ -306,6 +316,12 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
@@ -352,6 +362,12 @@ history::HistoryService* HistoryTabHelper::GetHistoryService() {
profile, ServiceAccessType::IMPLICIT_ACCESS);
}
@ -1325,9 +1325,9 @@ diff --git a/chrome/browser/history/history_tab_helper.h b/chrome/browser/histor
private:
explicit HistoryTabHelper(content::WebContents* web_contents);
friend class content::WebContentsUserData<HistoryTabHelper>;
@@ -53,9 +60,6 @@ class HistoryTabHelper : public content::WebContentsObserver,
void TitleWasSet(content::NavigationEntry* entry) override;
void WebContentsDestroyed() override;
@@ -65,9 +72,6 @@ class HistoryTabHelper : public content::WebContentsObserver,
bool started_from_context_menu,
bool renderer_initiated) override;
- // Helper function to return the history service. May return null.
- history::HistoryService* GetHistoryService();
@ -1348,8 +1348,8 @@ diff --git a/chrome/browser/history/history_tab_helper_unittest.cc b/chrome/brow
namespace {
#if defined(OS_ANDROID)
@@ -271,4 +274,23 @@ TEST_F(HistoryTabHelperTest, FeedNavigationsDoNotContributeToMostVisited) {
@@ -48,6 +51,25 @@ class TestFeedApi : public feed::StubFeedApi {
};
#endif
+TEST_F(HistoryTabHelperTest, Bromite_CheckHistoryService_IncognitoTabHistoryEnabled) {
@ -1372,6 +1372,8 @@ diff --git a/chrome/browser/history/history_tab_helper_unittest.cc b/chrome/brow
+}
+
} // namespace
class HistoryTabHelperTest : public ChromeRenderViewHostTestHarness {
diff --git a/chrome/browser/offline_pages/android/offline_page_bridge.cc b/chrome/browser/offline_pages/android/offline_page_bridge.cc
--- a/chrome/browser/offline_pages/android/offline_page_bridge.cc
+++ b/chrome/browser/offline_pages/android/offline_page_bridge.cc
@ -1577,7 +1579,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
#include "chrome/browser/android/bookmarks/partner_bookmarks_shim.h"
#include "chrome/browser/android/explore_sites/history_statistics_reporter.h"
#include "chrome/browser/android/ntp/recent_tabs_page_prefs.h"
@@ -1210,6 +1212,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -1239,6 +1241,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
variations::VariationsService::RegisterProfilePrefs(registry);
video_tutorials::RegisterPrefs(registry);
feed::prefs::RegisterFeedSharedProfilePrefs(registry);
@ -1666,7 +1668,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
@@ -938,6 +938,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -953,6 +953,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>
@ -1682,7 +1684,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
@@ -3225,6 +3225,11 @@ const char kLacrosAllowed[] = "lacros_allowed";
@@ -3238,6 +3238,11 @@ const char kShowCaretBrowsingDialog[] =
const char kLacrosLaunchSwitch[] = "lacros_launch_switch";
#endif
@ -1697,7 +1699,7 @@ diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -1184,6 +1184,10 @@ extern const char kLastWhatsNewVersion[];
@@ -1192,6 +1192,10 @@ extern const char kLastWhatsNewVersion[];
extern const char kLensRegionSearchEnabled[];
#endif
@ -1711,7 +1713,7 @@ diff --git a/chrome/common/pref_names.h b/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
@@ -4669,6 +4669,11 @@ test("unit_tests") {
@@ -4837,6 +4837,11 @@ test("unit_tests") {
]
}
@ -1724,5 +1726,5 @@ diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
sources += [
"../browser/android/bookmarks/partner_bookmarks_shim_unittest.cc",
--
2.17.1
2.20.1

View file

@ -62,7 +62,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.bookmarks.BookmarkUtils;
import org.chromium.chrome.browser.browserservices.intents.WebappConstants;
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
@@ -2020,6 +2022,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2040,6 +2042,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
// Close both incognito and normal tabs
getTabModelSelector().closeAllTabs();
RecordUserAction.record("MobileMenuCloseAllTabs");
@ -71,7 +71,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
} else if (id == R.id.close_all_incognito_tabs_menu_id) {
// Close only incognito tabs
getTabModelSelector().getModel(true).closeAllTabs();
@@ -2069,6 +2073,28 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2089,6 +2093,28 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
mTabModalHandler.onOmniboxFocusChanged(hasFocus);
}
@ -236,7 +236,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
@@ -516,6 +516,7 @@ public class BookmarkUtils {
@@ -515,6 +515,7 @@ public class BookmarkUtils {
List<BookmarkId> topLevelFolders = new ArrayList<>();
BookmarkId desktopNodeId = bookmarkModel.getDesktopFolderId();
BookmarkId mobileNodeId = bookmarkModel.getMobileFolderId();
@ -244,7 +244,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
BookmarkId othersNodeId = bookmarkModel.getOtherFolderId();
List<BookmarkId> specialFoldersIds =
@@ -541,6 +542,9 @@ public class BookmarkUtils {
@@ -540,6 +541,9 @@ public class BookmarkUtils {
if (bookmarkModel.isFolderVisible(mobileNodeId)) {
topLevelFolders.add(mobileNodeId);
}
@ -377,7 +377,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -3224,6 +3224,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3273,6 +3273,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>
@ -724,5 +724,5 @@ diff --git a/components/sync_bookmarks/bookmark_specifics_conversions.cc b/compo
return sync_pb::BookmarkSpecifics::FOLDER;
}
--
2.17.1
2.20.1

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
@@ -2043,6 +2043,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2063,6 +2063,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
}
RecordUserAction.record("MobileMenuDownloadManager");
@ -53,7 +53,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
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
@@ -2429,6 +2429,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2436,6 +2436,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
return true;
}
@ -122,5 +122,5 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
Unsupported
</message>
--
2.17.1
2.20.1

View file

@ -67,7 +67,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
@@ -536,6 +536,7 @@ public final class ChromePreferenceKeys {
@@ -543,6 +543,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";
@ -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
@@ -1200,6 +1200,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1223,6 +1223,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>
@ -129,7 +129,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
diff --git a/components/BUILD.gn b/components/BUILD.gn
--- a/components/BUILD.gn
+++ b/components/BUILD.gn
@@ -542,7 +542,7 @@ test("components_unittests") {
@@ -549,7 +549,7 @@ test("components_unittests") {
# On LaCrOS, tests use ash - chrome as a window manager, thus the dependency.
# On other platforms, no components should depend on Chrome.
@ -138,7 +138,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
assert_no_deps = [ "//chrome/*" ]
}
@@ -789,7 +789,7 @@ if (!is_ios) {
@@ -798,7 +798,7 @@ if (!is_ios) {
# On LaCrOS, tests use ash - chrome as a window manager, thus the dependency.
# On other platforms, no components should depend on Chrome.
@ -150,7 +150,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
diff --git a/ui/android/BUILD.gn b/ui/android/BUILD.gn
--- a/ui/android/BUILD.gn
+++ b/ui/android/BUILD.gn
@@ -370,6 +370,8 @@ android_library("ui_no_recycler_view_java") {
@@ -369,6 +369,8 @@ android_library("ui_no_recycler_view_java") {
":ui_java_resources",
":ui_utils_java",
"//base:base_java",
@ -182,5 +182,5 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui
}
--
2.17.1
2.20.1

View file

@ -12,7 +12,7 @@ Subject: Add option to not persist tabs across sessions
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -33,6 +33,11 @@
@@ -37,6 +37,11 @@
android:title="@string/always_incognito_title"
android:summary="@string/always_incognito_summary"
android:defaultValue="false" />
@ -27,7 +27,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -1188,8 +1188,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -1185,8 +1185,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
boolean hadCipherData =
CipherFactory.getInstance().restoreFromBundle(getSavedInstanceState());
@ -60,15 +60,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -59,6 +62,8 @@ public class PrivacySettings
private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data";
private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox";
private static final String PREF_PRIVACY_REVIEW = "privacy_review";
+ private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
+
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
@Override
@@ -137,7 +142,11 @@ public class PrivacySettings
@@ -136,7 +141,11 @@ public class PrivacySettings
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
@ -81,7 +81,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
} else if (PREF_NETWORK_PREDICTIONS.equals(key)) {
@@ -189,6 +198,11 @@ public class PrivacySettings
@@ -188,6 +197,11 @@ public class PrivacySettings
privacySandboxPreference.setSummary(
PrivacySandboxSettingsFragment.getStatusString(getContext()));
}
@ -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
@@ -4032,6 +4032,12 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4081,6 +4081,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>
@ -110,5 +110,5 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
LINK
</message>
--
2.17.1
2.20.1

View file

@ -38,9 +38,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/Settin
diff --git a/components/browser_ui/settings/android/java/src/org/chromium/components/browser_ui/settings/SettingsUtils.java b/components/browser_ui/settings/android/java/src/org/chromium/components/browser_ui/settings/SettingsUtils.java
--- a/components/browser_ui/settings/android/java/src/org/chromium/components/browser_ui/settings/SettingsUtils.java
+++ b/components/browser_ui/settings/android/java/src/org/chromium/components/browser_ui/settings/SettingsUtils.java
@@ -126,4 +126,8 @@ public class SettingsUtils {
ImageView imageButton = (ImageView) button;
return imageButton.getDrawable() == parentMenu.getOverflowIcon();
@@ -97,4 +97,8 @@ public class SettingsUtils {
ToolbarUtils.setOverflowMenuVisibility(toolbar, visibility);
return true;
}
+
+ public interface ISupportHelpAndFeedback {
@ -48,5 +48,5 @@ diff --git a/components/browser_ui/settings/android/java/src/org/chromium/compon
+ }
}
--
2.17.1
2.20.1

View file

@ -4,17 +4,21 @@ Subject: Allow building without enable_reporting
---
content/browser/BUILD.gn | 8 ++++----
content/browser/devtools/protocol/network_handler.cc | 2 ++
content/browser/devtools/protocol/network_handler.h | 2 ++
.../common/content_switch_dependent_feature_overrides.cc | 3 +++
services/network/network_context.cc | 2 +-
services/network/public/mojom/BUILD.gn | 3 +++
third_party/blink/renderer/core/frame/local_frame.cc | 3 +++
third_party/blink/renderer/core/frame/local_frame.h | 6 +++---
.../blink/renderer/core/frame/reporting_context.cc | 9 +++++++++
.../blink/renderer/core/frame/reporting_context.h | 7 +++++--
6 files changed, 27 insertions(+), 9 deletions(-)
10 files changed, 35 insertions(+), 10 deletions(-)
diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
--- a/content/browser/BUILD.gn
+++ b/content/browser/BUILD.gn
@@ -1240,6 +1240,10 @@ source_set("browser") {
@@ -1251,6 +1251,10 @@ source_set("browser") {
"net/browser_online_state_observer.cc",
"net/browser_online_state_observer.h",
"net/cookie_store_factory.cc",
@ -25,7 +29,7 @@ diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
"net/network_errors_listing_ui.cc",
"net/network_errors_listing_ui.h",
"net/network_quality_observer_impl.cc",
@@ -2989,10 +2993,6 @@ source_set("browser") {
@@ -3009,10 +3013,6 @@ source_set("browser") {
if (enable_reporting) {
sources += [
@ -36,6 +40,39 @@ diff --git a/content/browser/BUILD.gn b/content/browser/BUILD.gn
"net/reporting_service_proxy.cc",
"net/reporting_service_proxy.h",
]
diff --git a/content/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
@@ -451,6 +451,7 @@ std::vector<GURL> ComputeCookieURLs(RenderFrameHostImpl* frame_host,
return urls;
}
+#if BUILDFLAG(ENABLE_REPORTING)
std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
std::vector<GURL> urls;
base::queue<FrameTreeNode*> queue;
@@ -468,6 +469,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
}
return urls;
}
+#endif // BUILDFLAG(ENABLE_REPORTING)
String resourcePriority(net::RequestPriority priority) {
switch (priority) {
diff --git a/content/browser/devtools/protocol/network_handler.h b/content/browser/devtools/protocol/network_handler.h
--- a/content/browser/devtools/protocol/network_handler.h
+++ b/content/browser/devtools/protocol/network_handler.h
@@ -304,8 +304,10 @@ class NetworkHandler : public DevToolsDomainHandler,
Response response,
mojo::ScopedDataPipeConsumerHandle pipe,
const std::string& mime_type);
+#if BUILDFLAG(ENABLE_REPORTING)
std::unique_ptr<protocol::Network::ReportingApiReport> BuildProtocolReport(
const net::ReportingReport& report);
+#endif // BUILDFLAG(ENABLE_REPORTING)
// TODO(dgozman): Remove this.
const std::string host_id_;
diff --git a/content/public/common/content_switch_dependent_feature_overrides.cc b/content/public/common/content_switch_dependent_feature_overrides.cc
--- a/content/public/common/content_switch_dependent_feature_overrides.cc
+++ b/content/public/common/content_switch_dependent_feature_overrides.cc
@ -47,7 +84,7 @@ diff --git a/content/public/common/content_switch_dependent_feature_overrides.cc
#include "services/network/public/cpp/features.h"
#include "services/network/public/cpp/network_switches.h"
#include "third_party/blink/public/common/features.h"
@@ -46,9 +47,11 @@ GetSwitchDependentFeatureOverrides(const base::CommandLine& command_line) {
@@ -40,9 +41,11 @@ GetSwitchDependentFeatureOverrides(const base::CommandLine& command_line) {
{switches::kEnableExperimentalWebPlatformFeatures,
std::cref(features::kDocumentPolicyNegotiation),
base::FeatureList::OVERRIDE_ENABLE_FEATURE},
@ -59,6 +96,31 @@ diff --git a/content/public/common/content_switch_dependent_feature_overrides.cc
{switches::kEnableExperimentalWebPlatformFeatures,
std::cref(features::kExperimentalContentSecurityPolicyFeatures),
base::FeatureList::OVERRIDE_ENABLE_FEATURE},
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
@@ -1118,7 +1118,7 @@ void NetworkContext::SetDocumentReportingEndpoints(
void NetworkContext::SendReportsAndRemoveSource(
const base::UnguessableToken& reporting_source) {
- NOTREACHED();
+ // NOTREACHED(); removed for build in debug
}
void NetworkContext::QueueReport(
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
@@ -888,6 +888,9 @@ mojom("mojom") {
export_class_attribute_blink = "BLINK_PLATFORM_EXPORT"
export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1"
export_header_blink = "third_party/blink/public/platform/web_common.h"
+ }
+
+ if (enable_reporting) {
enabled_features += [ "enable_reporting" ]
}
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
@ -85,8 +147,8 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/
diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/blink/renderer/core/frame/local_frame.h
--- a/third_party/blink/renderer/core/frame/local_frame.h
+++ b/third_party/blink/renderer/core/frame/local_frame.h
@@ -33,9 +33,9 @@
@@ -34,9 +34,9 @@
#include "base/gtest_prod_util.h"
#include "base/time/default_tick_clock.h"
#include "base/unguessable_token.h"
-#include "build/build_config.h"
@ -96,7 +158,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.h b/third_party/b
#include "services/device/public/mojom/device_posture_provider.mojom-blink-forward.h"
#include "services/network/public/mojom/fetch_api.mojom-blink-forward.h"
#include "third_party/blink/public/common/frame/frame_ad_evidence.h"
@@ -543,9 +543,9 @@ class CORE_EXPORT LocalFrame final : public Frame,
@@ -544,9 +544,9 @@ class CORE_EXPORT LocalFrame final : public Frame,
}
SmoothScrollSequencer& GetSmoothScrollSequencer();
@ -207,5 +269,5 @@ diff --git a/third_party/blink/renderer/core/frame/reporting_context.h b/third_p
HeapMojoReceiver<mojom::blink::ReportingObserver, ReportingContext> receiver_;
};
--
2.17.1
2.20.1

View file

@ -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
@@ -1118,6 +1118,12 @@ bool WebMediaPlayerImpl::HasAudio() const {
@@ -1120,6 +1120,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());
@@ -3490,7 +3496,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
@@ -3492,7 +3498,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.
@ -50,5 +50,5 @@ diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.cc
if (using_media_player_renderer_ &&
--
2.17.1
2.20.1

View file

@ -20,5 +20,5 @@ diff --git a/chrome/browser/signin/account_consistency_mode_manager.cc b/chrome/
// static
--
2.17.1
2.20.1

View file

@ -33,5 +33,5 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/partnercustomiz
if (isCancelled()) return null;
Provider provider = AppHooks.get().getCustomizationProvider();
--
2.17.1
2.20.1

View file

@ -1,38 +0,0 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Tue, 5 Jun 2018 13:46:40 +0200
Subject: Always respect async dns flag (regardless of SDK version)
Do not read experiment value for cronet async DNS configuration
---
chrome/browser/net/system_network_context_manager.cc | 2 +-
components/cronet/url_request_context_config.cc | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
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
@@ -157,7 +157,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAuthDynamicParams(
local_state->GetBoolean(prefs::kNtlmV2Enabled);
#endif // defined(OS_POSIX)
-#if defined(OS_ANDROID)
+#if 0
auth_dynamic_params->android_negotiate_account_type =
local_state->GetString(prefs::kAuthAndroidNegotiateAccountType);
#endif // defined(OS_ANDROID)
diff --git a/components/cronet/url_request_context_config.cc b/components/cronet/url_request_context_config.cc
--- a/components/cronet/url_request_context_config.cc
+++ b/components/cronet/url_request_context_config.cc
@@ -592,7 +592,8 @@ void URLRequestContextConfig::ParseAndSetExperimentalOptions(
effective_experimental_options->RemoveKey(it.key());
continue;
}
- async_dns_args->GetBoolean(kAsyncDnsEnable, &async_dns_enable);
+ bool ignored;
+ async_dns_args->GetBoolean(kAsyncDnsEnable, &ignored);
} else if (it.key() == kStaleDnsFieldTrialName) {
const base::DictionaryValue* stale_dns_args = nullptr;
if (!it.value().GetAsDictionary(&stale_dns_args)) {
--
2.17.1

View file

@ -21,5 +21,5 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/Homepa
}
--
2.17.1
2.20.1

View file

@ -58,5 +58,5 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/thir
MediaElementAudioSourceNode* AudioContext::createMediaElementSource(
--
2.17.1
2.20.1

File diff suppressed because it is too large Load diff

View file

@ -62,5 +62,5 @@ diff --git a/third_party/blink/renderer/modules/battery/battery_manager.cc b/thi
void BatteryManager::RegisterWithDispatcher() {
--
2.17.1
2.20.1

View file

@ -17,7 +17,7 @@ Subject: Block gateway attacks via websockets
diff --git a/third_party/blink/renderer/core/loader/base_fetch_context.h b/third_party/blink/renderer/core/loader/base_fetch_context.h
--- a/third_party/blink/renderer/core/loader/base_fetch_context.h
+++ b/third_party/blink/renderer/core/loader/base_fetch_context.h
@@ -82,6 +82,7 @@ class CORE_EXPORT BaseFetchContext : public FetchContext {
@@ -83,6 +83,7 @@ class CORE_EXPORT BaseFetchContext : public FetchContext {
virtual SubresourceFilter* GetSubresourceFilter() const = 0;
virtual bool ShouldBlockWebSocketByMixedContentCheck(const KURL&) const = 0;
@ -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
@@ -568,6 +568,24 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
@@ -579,6 +579,24 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
return should_block_request;
}
@ -207,5 +207,5 @@ diff --git a/third_party/blink/renderer/modules/websockets/websocket_common.h b/
// Returns true if |protocol| is a valid WebSocket subprotocol name.
--
2.17.1
2.20.1

View file

@ -104,7 +104,7 @@ diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/ur
diff --git a/content/browser/child_process_security_policy_impl.cc b/content/browser/child_process_security_policy_impl.cc
--- a/content/browser/child_process_security_policy_impl.cc
+++ b/content/browser/child_process_security_policy_impl.cc
@@ -819,6 +819,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl()
@@ -821,6 +821,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl()
#endif // BUILDFLAG(ENABLE_WEBSOCKETS)
RegisterWebSafeScheme(url::kFtpScheme);
RegisterWebSafeScheme(url::kDataScheme);
@ -115,7 +115,7 @@ diff --git a/content/browser/child_process_security_policy_impl.cc b/content/bro
diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn
+++ b/net/BUILD.gn
@@ -1042,6 +1042,8 @@ component("net") {
@@ -1037,6 +1037,8 @@ component("net") {
"url_request/url_request_http_job.cc",
"url_request/url_request_http_job.h",
"url_request/url_request_interceptor.cc",
@ -201,7 +201,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc
#include "base/synchronization/lock.h"
#include "base/threading/thread_task_runner_handle.h"
#include "base/values.h"
@@ -44,6 +45,7 @@
@@ -46,6 +47,7 @@
#include "net/url_request/url_request_redirect_job.h"
#include "url/gurl.h"
#include "url/origin.h"
@ -209,7 +209,7 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc
using base::Time;
using std::string;
@@ -580,6 +582,12 @@ URLRequest::URLRequest(const GURL& url,
@@ -584,6 +586,12 @@ URLRequest::URLRequest(const GURL& url,
// Sanity check out environment.
DCHECK(base::ThreadTaskRunnerHandle::IsSet());
@ -233,7 +233,7 @@ diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/ur
#include "net/url_request/url_request_context.h"
#include "net/url_request/url_request_context_storage.h"
#include "net/url_request/url_request_job_factory.h"
@@ -552,6 +553,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
@@ -544,6 +545,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
job_factory->SetProtocolHandler(scheme_handler.first,
std::move(scheme_handler.second));
}
@ -241,7 +241,7 @@ diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/ur
+ std::make_unique<TrkProtocolHandler>());
protocol_handlers_.clear();
#if !BUILDFLAG(DISABLE_FTP_SUPPORT)
storage->set_job_factory(std::move(job_factory));
diff --git a/url/url_constants.cc b/url/url_constants.cc
--- a/url/url_constants.cc
+++ b/url/url_constants.cc
@ -284,5 +284,5 @@ diff --git a/url/url_util.cc b/url/url_util.cc
// Schemes that can be sent CORS requests.
--
2.17.1
2.20.1

View file

@ -60,7 +60,7 @@ Fix RestoreForeignSessionTab by recreating the tab (issue #681)
diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
--- a/chrome/android/chrome_java_resources.gni
+++ b/chrome/android/chrome_java_resources.gni
@@ -566,6 +566,7 @@ chrome_java_resources = [
@@ -564,6 +564,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",
@ -79,7 +79,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -991,6 +991,8 @@ chrome_java_sources = [
@@ -990,6 +990,8 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/payments/ui/ShoppingCart.java",
"java/src/org/chromium/chrome/browser/permissions/PermissionSettingsBridge.java",
"java/src/org/chromium/chrome/browser/photo_picker/DecoderServiceImpl.java",
@ -423,7 +423,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabMod
diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd
--- a/chrome/app/generated_resources.grd
+++ b/chrome/app/generated_resources.grd
@@ -10805,6 +10805,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
@@ -10853,6 +10853,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
Never show this again.
</message>
@ -473,7 +473,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
class BackgroundModeManager;
class BrowserProcessPlatformPart;
@@ -67,6 +68,10 @@ namespace component_updater {
@@ -71,6 +72,10 @@ namespace component_updater {
class ComponentUpdateService;
}
@ -484,7 +484,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
namespace extensions {
class EventRouterForwarder;
}
@@ -234,6 +239,7 @@ class BrowserProcess {
@@ -238,6 +243,7 @@ class BrowserProcess {
#endif
virtual component_updater::ComponentUpdateService* component_updater() = 0;
@ -495,7 +495,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
--- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc
@@ -1053,6 +1053,26 @@ BrowserProcessImpl::component_updater() {
@@ -1070,6 +1070,26 @@ BrowserProcessImpl::component_updater() {
return component_updater_.get();
}
@ -525,7 +525,7 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro
diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_process_impl.h
--- a/chrome/browser/browser_process_impl.h
+++ b/chrome/browser/browser_process_impl.h
@@ -194,6 +194,7 @@ class BrowserProcessImpl : public BrowserProcess,
@@ -200,6 +200,7 @@ class BrowserProcessImpl : public BrowserProcess,
#endif
component_updater::ComponentUpdateService* component_updater() override;
@ -533,7 +533,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
MediaFileSystemRegistry* media_file_system_registry() override;
WebRtcLogUploader* webrtc_log_uploader() override;
network_time::NetworkTimeTracker* network_time_tracker() override;
@@ -378,6 +379,7 @@ class BrowserProcessImpl : public BrowserProcess,
@@ -386,6 +387,7 @@ class BrowserProcessImpl : public BrowserProcess,
// to concerns over integrity of data shared between profiles,
// but some users of component updater only install per-user.
std::unique_ptr<component_updater::ComponentUpdateService> component_updater_;
@ -544,7 +544,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc
--- a/chrome/browser/chrome_browser_main.cc
+++ b/chrome/browser/chrome_browser_main.cc
@@ -1626,6 +1626,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1649,6 +1649,8 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
speech::SodaInstaller::GetInstance()->Init(profile_->GetPrefs(),
browser_process_->local_state());
#endif // !defined(OS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
@ -564,7 +564,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"
@@ -3907,16 +3906,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -3916,16 +3915,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
content::NavigationHandle* handle) {
std::vector<std::unique_ptr<content::NavigationThrottle>> throttles;
@ -581,7 +581,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#if BUILDFLAG(IS_CHROMEOS_ASH)
MaybeAddThrottle(
ash::WebTimeLimitNavigationThrottle::MaybeCreateThrottleFor(handle),
@@ -4022,10 +4011,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4027,10 +4016,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
&throttles);
#endif
@ -620,7 +620,7 @@ diff --git a/chrome/browser/flags/android/cached_feature_flags.cc b/chrome/brows
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
@@ -265,6 +265,14 @@ public class CachedFeatureFlags {
@@ -264,6 +264,14 @@ public class CachedFeatureFlags {
ChromeFeatureList.isEnabled(ChromeFeatureList.BACKGROUND_THREAD_POOL));
}
@ -635,7 +635,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
/**
* Caches flags that must take effect on startup but are set via native code.
*/
@@ -470,5 +478,7 @@ public class CachedFeatureFlags {
@@ -469,5 +477,7 @@ public class CachedFeatureFlags {
@NativeMethods
interface Natives {
boolean isNetworkServiceWarmUpEnabled();
@ -646,7 +646,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/browser/net/system_network_context_manager.cc
--- a/chrome/browser/net/system_network_context_manager.cc
+++ b/chrome/browser/net/system_network_context_manager.cc
@@ -349,6 +349,8 @@ SystemNetworkContextManager::SystemNetworkContextManager(
@@ -348,6 +348,8 @@ SystemNetworkContextManager::SystemNetworkContextManager(
SSLConfigServiceManager::CreateDefaultManager(local_state_)),
proxy_config_monitor_(local_state_),
stub_resolver_config_reader_(local_state_) {
@ -655,7 +655,7 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/brows
#if !defined(OS_ANDROID)
// QuicAllowed was not part of Android policy.
const base::Value* value =
@@ -419,6 +421,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
@@ -418,6 +420,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) {
StubResolverConfigReader::RegisterPrefs(registry);
@ -705,7 +705,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
--- a/chrome/common/pref_names.cc
+++ b/chrome/common/pref_names.cc
@@ -2188,6 +2188,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
@@ -2194,6 +2194,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
// capture devices without prompt.
const char kAudioCaptureAllowedUrls[] = "hardware.audio_capture_allowed_urls";
@ -1887,5 +1887,5 @@ diff --git a/content/browser/renderer_host/navigation_throttle_runner.cc b/conte
NavigationThrottle* NavigationThrottleRunner::GetDeferringThrottle() const {
--
2.17.1
2.20.1

View file

@ -54,7 +54,7 @@ diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -887,6 +887,7 @@ chrome_java_sources = [
@@ -886,6 +886,7 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java",
"java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java",
"java/src/org/chromium/chrome/browser/omaha/inline/NoopInlineUpdateController.java",
@ -298,7 +298,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/UpdateSta
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNumberGetter.java b/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNumberGetter.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNumberGetter.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNumberGetter.java
@@ -43,7 +43,8 @@ public class VersionNumberGetter {
@@ -42,7 +42,8 @@ public class VersionNumberGetter {
private static VersionNumberGetter sInstanceForTests;
/** If false, OmahaClient will never report that a newer version is available. */
@ -537,7 +537,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/In
diff --git a/chrome/browser/endpoint_fetcher/BUILD.gn b/chrome/browser/endpoint_fetcher/BUILD.gn
--- a/chrome/browser/endpoint_fetcher/BUILD.gn
+++ b/chrome/browser/endpoint_fetcher/BUILD.gn
@@ -14,6 +14,7 @@ android_library("java") {
@@ -15,6 +15,7 @@ android_library("java") {
sources = [
"java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java",
"java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointResponse.java",
@ -545,7 +545,7 @@ diff --git a/chrome/browser/endpoint_fetcher/BUILD.gn b/chrome/browser/endpoint_
]
annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
}
@@ -22,5 +23,6 @@ generate_jni("jni_headers") {
@@ -23,5 +24,6 @@ generate_jni("jni_headers") {
sources = [
"java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java",
"java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointResponse.java",
@ -571,7 +571,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse
namespace {
const char kContentTypeKey[] = "Content-Type";
const char kDeveloperKey[] = "X-Developer-Key";
@@ -151,6 +156,19 @@ EndpointFetcher::EndpointFetcher(
@@ -155,6 +160,19 @@ EndpointFetcher::EndpointFetcher(
identity_manager_(nullptr),
sanitize_response_(true) {}
@ -591,8 +591,8 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse
EndpointFetcher::~EndpointFetcher() = default;
void EndpointFetcher::Fetch(EndpointFetcherCallback endpoint_fetcher_callback) {
@@ -280,6 +298,77 @@ void EndpointFetcher::OnSanitizationResult(
std::move(endpoint_fetcher_callback).Run(std::move(response));
@@ -293,6 +311,77 @@ std::string EndpointFetcher::GetUrlForTesting() {
return url_.spec();
}
+void EndpointFetcher::PerformHeadRequest(
@ -669,7 +669,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse
#if defined(OS_ANDROID)
namespace {
static void OnEndpointFetcherComplete(
@@ -296,6 +385,25 @@ static void OnEndpointFetcherComplete(
@@ -309,6 +398,25 @@ static void OnEndpointFetcherComplete(
base::android::AttachCurrentThread(),
std::move(endpoint_response->response))));
}
@ -695,7 +695,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse
} // namespace
// TODO(crbug.com/1077537) Create a KeyProvider so
@@ -381,4 +489,25 @@ static void JNI_EndpointFetcher_NativeFetchWithNoAuth(
@@ -398,4 +506,25 @@ static void JNI_EndpointFetcher_NativeFetchWithNoAuth(
nullptr);
}
@ -755,9 +755,9 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.h b/chrome/browser
// Used for tests. Can be used if caller constructs their own
// url_loader_factory and identity_manager.
EndpointFetcher(
@@ -113,6 +123,10 @@ class EndpointFetcher {
virtual void PerformRequest(EndpointFetcherCallback endpoint_fetcher_callback,
const char* key);
@@ -117,6 +127,10 @@ class EndpointFetcher {
std::string GetUrlForTesting();
+ virtual void PerformHeadRequest(EndpointFetcherCallback endpoint_fetcher_callback,
+ const char* key,
@ -766,7 +766,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.h b/chrome/browser
protected:
// Used for Mock only. see MockEndpointFetcher class.
explicit EndpointFetcher(
@@ -126,6 +140,10 @@ class EndpointFetcher {
@@ -130,6 +144,10 @@ class EndpointFetcher {
std::unique_ptr<std::string> response_body);
void OnSanitizationResult(EndpointFetcherCallback endpoint_fetcher_callback,
data_decoder::JsonSanitizer::Result result);
@ -777,7 +777,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.h b/chrome/browser
enum AuthType { CHROME_API_KEY, OAUTH, NO_AUTH };
AuthType auth_type_;
@@ -133,7 +151,7 @@ class EndpointFetcher {
@@ -137,7 +155,7 @@ class EndpointFetcher {
// Members set in constructor to be passed to network::ResourceRequest or
// network::SimpleURLLoader.
const std::string oauth_consumer_name_;
@ -786,7 +786,7 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.h b/chrome/browser
const std::string http_method_;
const std::string content_type_;
int64_t timeout_ms_;
@@ -152,6 +170,9 @@ class EndpointFetcher {
@@ -157,6 +175,9 @@ class EndpointFetcher {
access_token_fetcher_;
std::unique_ptr<network::SimpleURLLoader> simple_url_loader_;
@ -799,8 +799,8 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.h b/chrome/browser
diff --git a/chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java b/chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java
--- a/chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java
+++ b/chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java
@@ -68,6 +68,14 @@ public final class EndpointFetcher {
profile, url, httpsMethod, contentType, postData, timeout, headers, callback);
@@ -70,6 +70,14 @@ public final class EndpointFetcher {
postData, timeout, headers, annotation.getHashCode(), callback);
}
+ @MainThread
@ -814,10 +814,10 @@ diff --git a/chrome/browser/endpoint_fetcher/java/src/org/chromium/chrome/browse
@NativeMethods
public interface Natives {
void nativeFetchOAuth(Profile profile, String oathConsumerName, String url,
@@ -78,5 +86,8 @@ public final class EndpointFetcher {
@@ -80,5 +88,8 @@ public final class EndpointFetcher {
int annotationHashCode, Callback<EndpointResponse> callback);
void nativeFetchWithNoAuth(Profile profile, String url, int annotationHashCode,
Callback<EndpointResponse> callback);
void nativeFetchWithNoAuth(
Profile profile, String url, Callback<EndpointResponse> callback);
+ void nativeHeadWithNoAuth(
+ Profile profile, String url, long timeout, boolean allow_redirect,
+ Callback<EndpointHeaderResponse> callback);
@ -862,7 +862,7 @@ new file mode 100644
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -2037,7 +2037,7 @@
@@ -2121,7 +2121,7 @@
{
"name": "enable-inline-update-flow",
"owners": [ "nyquist", "dtrainor" ],
@ -874,7 +874,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -3582,10 +3582,9 @@ const char kVoiceButtonInTopToolbarDescription[] =
@@ -3657,10 +3657,9 @@ const char kVoiceButtonInTopToolbarDescription[] =
"Enables showing the voice search button in the top toolbar. Enabling "
"Adaptive Button overrides this.";
@ -890,7 +890,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -627,7 +627,7 @@ const base::Feature kIncognitoScreenshot{"IncognitoScreenshot",
@@ -631,7 +631,7 @@ const base::Feature kIncognitoScreenshot{"IncognitoScreenshot",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kInlineUpdateFlow{"InlineUpdateFlow",
@ -902,7 +902,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1663,6 +1663,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1703,6 +1703,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_DEPRECATION_WARNING" desc="Warning about Chrome updates no longer being supported">
Chrome updates are no longer supported for this version of Android
</message>
@ -915,7 +915,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<!-- Account management UI strings. -->
<message name="IDS_ACCOUNT_MANAGEMENT_TITLE" desc="Header title for the account management screen. [CHAR_LIMIT=32]">
@@ -3150,7 +3156,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3199,7 +3205,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<!-- Main menu items -->
<message name="IDS_MENU_UPDATE" desc="Menu item for updating chrome. [CHAR_LIMIT=24]">
@ -925,5 +925,5 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<message name="IDS_MENU_UPDATE_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that a newer version of Chrome is available. [CHAR_LIMIT=30]">
Newer version is available
--
2.17.1
2.20.1

View file

@ -30,5 +30,5 @@ diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_d
<< ", multiple_routes: " << port_config.enable_multiple_routes
<< ", nonproxied_udp: " << port_config.enable_nonproxied_udp
--
2.17.1
2.20.1

View file

@ -10,7 +10,7 @@ Subject: Disable AGSA by default
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -605,7 +605,7 @@ const base::Feature kEnhancedProtectionPromoCard{
@@ -609,7 +609,7 @@ const base::Feature kEnhancedProtectionPromoCard{
"EnhancedProtectionPromoCard", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kExperimentsForAgsa{"ExperimentsForAgsa",
@ -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
@@ -86,7 +86,7 @@ public class CachedFeatureFlags {
@@ -85,7 +85,7 @@ public class CachedFeatureFlags {
.put(ChromeFeatureList.CCT_REMOVE_REMOTE_VIEW_IDS, true)
.put(ChromeFeatureList.OFFLINE_MEASUREMENTS_BACKGROUND_TASK, false)
.put(ChromeFeatureList.CCT_INCOGNITO, true)
@ -32,5 +32,5 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
.put(ChromeFeatureList.CLIPBOARD_SUGGESTION_CONTENT_HIDDEN, false)
.put(ChromeFeatureList.OPTIMIZATION_GUIDE_PUSH_NOTIFICATIONS, false)
--
2.17.1
2.20.1

View file

@ -9,7 +9,7 @@ Subject: Disable DRM media origin IDs preprovisioning
diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
--- a/media/base/media_switches.cc
+++ b/media/base/media_switches.cc
@@ -660,7 +660,7 @@ const base::Feature kMediaDrmPersistentLicense{
@@ -645,7 +645,7 @@ const base::Feature kMediaDrmPersistentLicense{
// MediaDrmBridge. If disabled, MediaDrmBridge will get unprovisioned origin IDs
// which will trigger provisioning process after MediaDrmBridge is created.
const base::Feature kMediaDrmPreprovisioning{"MediaDrmPreprovisioning",
@ -19,5 +19,5 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
// Determines if MediaDrmOriginIdManager should attempt to pre-provision origin
// IDs at startup (whenever a profile is loaded). Also used by tests that
--
2.17.1
2.20.1

View file

@ -50,5 +50,5 @@ diff --git a/chrome/browser/ui/omnibox/chrome_omnibox_navigation_observer.h b/ch
const std::u16string text_;
const AutocompleteMatch match_;
--
2.17.1
2.20.1

View file

@ -43,5 +43,5 @@ diff --git a/components/ntp_snippets/features.cc b/components/ntp_snippets/featu
const base::Feature kOptionalImagesEnabledFeature{
"NTPRemoteSuggestionsOptionalImages", base::FEATURE_ENABLED_BY_DEFAULT};
--
2.17.1
2.20.1

View file

@ -9,7 +9,7 @@ Subject: Disable all promo dialogs
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java
@@ -822,7 +822,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
@@ -823,7 +823,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
* displayed.
*/
private boolean triggerPromo(boolean intentWithEffect) {
@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
if (CommandLine.getInstance().hasSwitch(ChromeSwitches.DISABLE_STARTUP_PROMOS)) {
return false;
}
@@ -857,8 +857,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
@@ -858,8 +858,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
preferenceManager.writeBoolean(
ChromePreferenceKeys.PROMOS_SKIPPED_ON_FIRST_START, true);
}
@ -30,5 +30,5 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
private boolean maybeShowPromo() {
--
2.17.1
2.20.1

View file

@ -19,5 +19,5 @@ diff --git a/chrome/android/features/autofill_assistant/public/java/src/org/chro
/** Checks whether proactive help is enabled. */
--
2.17.1
2.20.1

View file

@ -29,7 +29,7 @@ diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
@@ -77,7 +77,7 @@ public class CachedFeatureFlags {
@@ -76,7 +76,7 @@ public class CachedFeatureFlags {
.put(ChromeFeatureList.TAB_TO_GTS_ANIMATION, true)
.put(ChromeFeatureList.TEST_DEFAULT_DISABLED, false)
.put(ChromeFeatureList.TEST_DEFAULT_ENABLED, true)
@ -57,5 +57,5 @@ diff --git a/components/feed/feed_feature_list.cc b/components/feed/feed_feature
const base::Feature kInterestFeedV2Autoplay{"InterestFeedV2Autoplay",
base::FEATURE_DISABLED_BY_DEFAULT};
--
2.17.1
2.20.1

View file

@ -38,5 +38,5 @@ diff --git a/components/variations/service/variations_service.cc b/components/va
last_request_was_http_retry_ = is_http_retry;
--
2.17.1
2.20.1

View file

@ -17,5 +17,5 @@ diff --git a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc b/c
+ registry->RegisterBooleanPref(omnibox::kLockIconInAddressBarEnabled, true);
}
--
2.17.1
2.20.1

View file

@ -56,7 +56,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse
diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profile.cc
--- a/chrome/browser/profiles/profile.cc
+++ b/chrome/browser/profiles/profile.cc
@@ -356,7 +356,7 @@ void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
@@ -365,7 +365,7 @@ void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
media_router::prefs::kMediaRouterEnableCloudServices, false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(
@ -68,7 +68,7 @@ diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profil
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc
--- a/chrome/browser/profiles/profile_impl.cc
+++ b/chrome/browser/profiles/profile_impl.cc
@@ -434,7 +434,7 @@ void ProfileImpl::RegisterProfilePrefs(
@@ -445,7 +445,7 @@ void ProfileImpl::RegisterProfilePrefs(
#endif
registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false);
@ -78,5 +78,5 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p
registry->RegisterBooleanPref(prefs::kShowCastIconInToolbar, false);
#endif // !defined(OS_ANDROID)
--
2.17.1
2.20.1

View file

@ -26,7 +26,7 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br
namespace {
@@ -233,7 +231,6 @@ void MostVisitedSitesBridge::RecordPageImpression(
@@ -230,7 +228,6 @@ void MostVisitedSitesBridge::RecordPageImpression(
JNIEnv* env,
const JavaParamRef<jobject>& obj,
jint jtiles_count) {
@ -34,7 +34,7 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br
}
void MostVisitedSitesBridge::RecordTileImpression(
@@ -245,6 +242,7 @@ void MostVisitedSitesBridge::RecordTileImpression(
@@ -242,6 +239,7 @@ void MostVisitedSitesBridge::RecordTileImpression(
jint jtitle_source,
jint jsource,
const JavaParamRef<jobject>& jurl) {
@ -42,7 +42,7 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br
std::unique_ptr<GURL> url = url::GURLAndroid::ToNativeGURL(env, jurl);
TileTitleSource title_source = static_cast<TileTitleSource>(jtitle_source);
TileSource source = static_cast<TileSource>(jsource);
@@ -254,6 +252,7 @@ void MostVisitedSitesBridge::RecordTileImpression(
@@ -251,6 +249,7 @@ void MostVisitedSitesBridge::RecordTileImpression(
ntp_tiles::metrics::RecordTileImpression(ntp_tiles::NTPTileImpression(
jindex, source, title_source, visual_type, icon_type, *url));
@ -50,7 +50,7 @@ diff --git a/chrome/browser/android/ntp/most_visited_sites_bridge.cc b/chrome/br
}
void MostVisitedSitesBridge::RecordOpenedMostVisitedItem(
@@ -263,11 +262,6 @@ void MostVisitedSitesBridge::RecordOpenedMostVisitedItem(
@@ -260,11 +259,6 @@ void MostVisitedSitesBridge::RecordOpenedMostVisitedItem(
jint tile_type,
jint title_source,
jint source) {
@ -83,5 +83,5 @@ diff --git a/components/ntp_tiles/BUILD.gn b/components/ntp_tiles/BUILD.gn
"popular_sites_impl_unittest.cc",
]
--
2.17.1
2.20.1

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
@@ -965,7 +965,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
@@ -982,7 +982,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
registry->RegisterBooleanPref(metrics::prefs::kMetricsReportingEnabled,
@ -19,5 +19,5 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro
}
--
2.17.1
2.20.1

View file

@ -20,5 +20,5 @@ diff --git a/components/offline_pages/core/offline_page_feature.cc b/components/
const base::Feature kOfflineIndicatorFeature{"OfflineIndicator",
base::FEATURE_DISABLED_BY_DEFAULT};
--
2.17.1
2.20.1

View file

@ -45,5 +45,5 @@ diff --git a/components/url_formatter/url_formatter.cc b/components/url_formatte
const FormatUrlType kFormatUrlOmitDefaults =
--
2.17.1
2.20.1

View file

@ -23,5 +23,5 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/
void LocalFrame::SetAdTrackerForTesting(AdTracker* ad_tracker) {
--
2.17.1
2.20.1

View file

@ -59,5 +59,5 @@ diff --git a/third_party/crashpad/crashpad/doc/support/crashpad_doxygen.css b/th
body,
table,
--
2.17.1
2.20.1

View file

@ -55,7 +55,7 @@ Disable CrowdDeny feature
chrome/browser/safe_browsing/BUILD.gn | 4 +-
chrome/browser/safe_browsing/android/BUILD.gn | 4 --
.../safe_browsing/SafeBrowsingBridge.java | 71 -------------------
.../android/safe_browsing_bridge.cc | 51 -------------
.../android/safe_browsing_bridge.cc | 53 --------------
.../download_protection_service.cc | 5 --
.../download_protection_service.h | 5 --
.../url_lookup_service_factory.cc | 4 ++
@ -63,14 +63,16 @@ Disable CrowdDeny feature
.../ssl/sct_reporting_service_factory.cc | 11 +--
.../browser/ssl/security_state_tab_helper.cc | 10 +--
...urce_filter_web_contents_helper_factory.cc | 4 ++
chrome/browser/ui/BUILD.gn | 1 -
chrome/browser/ui/BUILD.gn | 2 -
.../strings/android_chrome_strings.grd | 15 ----
chrome/browser/ui/tab_helpers.cc | 15 ----
chrome/browser/ui/tab_helpers.cc | 18 -----
.../ui/webui/interstitials/interstitial_ui.cc | 12 ++--
chrome/common/safe_browsing/BUILD.gn | 7 --
.../chrome_content_renderer_client.cc | 2 +
chrome/test/BUILD.gn | 2 -
.../installer_policies/BUILD.gn | 2 -
.../permissions/permission_request_manager.cc | 5 +-
.../safe_browsing/content/browser/BUILD.gn | 1 -
.../content/common/file_type_policies.cc | 3 +-
.../safe_browsing/core/common/features.cc | 2 +-
.../content/captive_portal_blocking_page.cc | 7 --
@ -79,7 +81,9 @@ Disable CrowdDeny feature
.../file_system_access_file_writer_impl.cc | 41 +----------
.../file_system_access_file_writer_impl.h | 9 +--
.../file_system_access_permission_context.h | 6 --
73 files changed, 173 insertions(+), 656 deletions(-)
weblayer/BUILD.gn | 1 -
weblayer/test/BUILD.gn | 1 -
77 files changed, 173 insertions(+), 667 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
@ -119,10 +123,10 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -11,11 +11,6 @@
android:title="@string/clear_browsing_data_title"
android:summary="@string/clear_browsing_data_summary"
android:fragment="org.chromium.chrome.browser.browsing_data.ClearBrowsingDataTabsFragment"/>
@@ -15,11 +15,6 @@
android:key="privacy_review"
android:title="@string/prefs_privacy_review_title"
android:summary="@string/prefs_privacy_review_summary"/>
- <Preference
- android:key="safe_browsing"
- android:title="@string/prefs_safe_browsing_title"
@ -131,7 +135,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
<org.chromium.components.browser_ui.settings.ChromeSwitchPreference
android:key="https_first_mode"
android:title="@string/settings_https_first_mode_title"
@@ -29,10 +24,6 @@
@@ -33,10 +28,6 @@
android:title="@string/preload_pages_title"
android:summary="@string/preload_pages_summary"
android:persistent="false"/>
@ -183,7 +187,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/cards/promo
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacySettings.java
@@ -24,14 +24,11 @@ import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxBridge;
@@ -23,14 +23,11 @@ import org.chromium.chrome.browser.privacy.secure_dns.SecureDnsSettings;
import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxReferrer;
import org.chromium.chrome.browser.privacy_sandbox.PrivacySandboxSettingsFragment;
import org.chromium.chrome.browser.profiles.Profile;
@ -198,7 +202,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.ManagedPreferenceDelegate;
import org.chromium.components.browser_ui.settings.SettingsLauncher;
@@ -51,9 +48,7 @@ public class PrivacySettings
@@ -50,9 +47,7 @@ public class PrivacySettings
private static final String PREF_NETWORK_PREDICTIONS = "preload_pages";
private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode";
private static final String PREF_SECURE_DNS = "secure_dns";
@ -208,8 +212,8 @@ 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";
@@ -84,15 +79,6 @@ public class PrivacySettings
getPreferenceScreen().removePreference(findPreference(PREF_PRIVACY_SANDBOX));
@@ -83,15 +78,6 @@ public class PrivacySettings
getPreferenceScreen().removePreference(findPreference(PREF_PRIVACY_REVIEW));
}
- Preference safeBrowsingPreference = findPreference(PREF_SAFE_BROWSING);
@ -224,7 +228,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
setHasOptionsMenu(true);
mManagedPreferenceDelegate = createManagedPreferenceDelegate();
@@ -197,32 +183,6 @@ public class PrivacySettings
@@ -196,32 +182,6 @@ public class PrivacySettings
secureDnsPref.setSummary(SecureDnsSettings.getSummary(getContext()));
}
@ -296,7 +300,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
@@ -309,16 +309,12 @@ static_library("browser") {
@@ -308,16 +308,12 @@ static_library("browser") {
"component_updater/chrome_component_updater_configurator.h",
"component_updater/chrome_origin_trials_component_installer.cc",
"component_updater/chrome_origin_trials_component_installer.h",
@ -313,7 +317,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",
@@ -1097,8 +1093,6 @@ static_library("browser") {
@@ -1108,8 +1104,6 @@ static_library("browser") {
"permissions/adaptive_quiet_notification_permission_ui_enabler.h",
"permissions/chrome_permissions_client.cc",
"permissions/chrome_permissions_client.h",
@ -322,7 +326,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",
@@ -1433,15 +1427,6 @@ static_library("browser") {
@@ -1444,15 +1438,6 @@ static_library("browser") {
"renderer_host/chrome_navigation_ui_data.h",
"renderer_preferences_util.cc",
"renderer_preferences_util.h",
@ -338,7 +342,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",
@@ -2152,11 +2137,8 @@ static_library("browser") {
@@ -2174,11 +2159,8 @@ static_library("browser") {
"//components/reporting/util:status_macros",
"//components/reporting/util:status_proto",
"//components/reporting/util:task_runner_context",
@ -350,7 +354,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",
@@ -3173,12 +3155,6 @@ static_library("browser") {
@@ -3211,12 +3193,6 @@ static_library("browser") {
"profiles/profile_manager_android.cc",
"profiles/profile_manager_android.h",
"query_tiles/android/tile_provider_factory.cc",
@ -363,7 +367,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",
@@ -3598,8 +3574,6 @@ static_library("browser") {
@@ -3658,8 +3634,6 @@ static_library("browser") {
"download/download_commands.h",
"download/download_crx_util.cc",
"download/download_crx_util.h",
@ -372,7 +376,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",
@@ -7155,8 +7129,6 @@ static_library("test_support") {
@@ -7255,8 +7229,6 @@ static_library("test_support") {
"//components/reporting/util:status_macros",
"//components/reporting/util:status_proto",
"//components/reporting/util:task_runner_context",
@ -384,7 +388,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
@@ -2168,7 +2168,7 @@ const FeatureEntry::FeatureParam
@@ -2264,7 +2264,7 @@ const FeatureEntry::FeatureParam
{QuietNotificationPermissionUiConfig::kEnableAbusiveRequestWarning,
"true"},
{QuietNotificationPermissionUiConfig::kEnableCrowdDenyTriggering,
@ -444,7 +448,7 @@ diff --git a/chrome/browser/android/tab_web_contents_delegate_android.cc b/chrom
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
@@ -51,10 +51,6 @@ class NetworkQualityTracker;
@@ -55,10 +55,6 @@ class NetworkQualityTracker;
class SharedURLLoaderFactory;
}
@ -455,7 +459,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
namespace subresource_filter {
class RulesetService;
}
@@ -210,9 +206,6 @@ class BrowserProcess {
@@ -214,9 +210,6 @@ class BrowserProcess {
// on this platform (or this is a unit test).
virtual StatusTray* status_tray() = 0;
@ -476,7 +480,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"
@@ -106,7 +105,6 @@
@@ -110,7 +109,6 @@
#include "components/prefs/json_pref_store.h"
#include "components/prefs/pref_registry_simple.h"
#include "components/prefs/pref_service.h"
@ -484,7 +488,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"
@@ -388,8 +386,6 @@ void BrowserProcessImpl::StartTearDown() {
@@ -392,8 +390,6 @@ void BrowserProcessImpl::StartTearDown() {
metrics_services_manager_.reset();
intranet_redirect_detector_.reset();
@ -493,7 +497,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();
@@ -1006,14 +1002,6 @@ StatusTray* BrowserProcessImpl::status_tray() {
@@ -1023,14 +1019,6 @@ StatusTray* BrowserProcessImpl::status_tray() {
return status_tray_.get();
}
@ -508,7 +512,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_);
@@ -1262,23 +1250,6 @@ void BrowserProcessImpl::CreateBackgroundPrintingManager() {
@@ -1296,23 +1284,6 @@ void BrowserProcessImpl::CreateBackgroundPrintingManager() {
}
void BrowserProcessImpl::CreateSafeBrowsingService() {
@ -535,7 +539,7 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro
diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_process_impl.h
--- a/chrome/browser/browser_process_impl.h
+++ b/chrome/browser/browser_process_impl.h
@@ -180,7 +180,6 @@ class BrowserProcessImpl : public BrowserProcess,
@@ -186,7 +186,6 @@ class BrowserProcessImpl : public BrowserProcess,
std::unique_ptr<BackgroundModeManager> manager) override;
#endif
StatusTray* status_tray() override;
@ -543,7 +547,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
subresource_filter::RulesetService* subresource_filter_ruleset_service()
override;
federated_learning::FlocSortingLshClustersService*
@@ -332,9 +331,6 @@ class BrowserProcessImpl : public BrowserProcess,
@@ -340,9 +339,6 @@ class BrowserProcessImpl : public BrowserProcess,
std::unique_ptr<BackgroundModeManager> background_mode_manager_;
#endif
@ -556,7 +560,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
@@ -674,10 +674,12 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
@@ -662,10 +662,12 @@ void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData(
base::RecordAction(UserMetricsAction("ClearBrowsingData_Cookies"));
network::mojom::NetworkContext* safe_browsing_context = nullptr;
@ -572,15 +576,15 @@ diff --git a/chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -106,6 +106,7 @@
@@ -103,6 +103,7 @@
#include "chrome/browser/profiling_host/chrome_browser_main_extra_parts_profiling.h"
#include "chrome/browser/renderer_host/chrome_navigation_ui_data.h"
#include "chrome/browser/renderer_preferences_util.h"
#include "chrome/browser/resource_coordinator/background_tab_navigation_throttle.h"
+#if defined(FULL_SAFE_BROWSING)
#include "chrome/browser/safe_browsing/certificate_reporting_service.h"
#include "chrome/browser/safe_browsing/certificate_reporting_service_factory.h"
#include "chrome/browser/safe_browsing/cloud_content_scanning/deep_scanning_utils.h"
@@ -113,6 +114,7 @@
@@ -110,6 +111,7 @@
#include "chrome/browser/safe_browsing/safe_browsing_service.h"
#include "chrome/browser/safe_browsing/url_checker_delegate_impl.h"
#include "chrome/browser/safe_browsing/url_lookup_service_factory.h"
@ -588,7 +592,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#include "chrome/browser/search/search.h"
#include "chrome/browser/sharing/sms/sms_remote_fetcher.h"
#include "chrome/browser/signin/chrome_signin_proxying_url_loader_factory.h"
@@ -921,20 +923,15 @@ void SetApplicationLocaleOnIOThread(const std::string& locale) {
@@ -923,20 +925,15 @@ void SetApplicationLocaleOnIOThread(const std::string& locale) {
class CertificateReportingServiceCertReporter : public SSLCertReporter {
public:
explicit CertificateReportingServiceCertReporter(
@ -610,7 +614,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
DISALLOW_COPY_AND_ASSIGN(CertificateReportingServiceCertReporter);
};
@@ -1339,7 +1336,9 @@ void ChromeContentBrowserClient::PostAfterStartupTask(
@@ -1356,7 +1353,9 @@ void ChromeContentBrowserClient::PostAfterStartupTask(
InitNetworkContextsParentDirectory();
DCHECK_CURRENTLY_ON(BrowserThread::UI);
@ -620,7 +624,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
}
bool ChromeContentBrowserClient::IsBrowserStartupComplete() {
@@ -2060,7 +2059,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
@@ -2074,7 +2073,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
}
#elif defined(OS_POSIX)
#if defined(OS_ANDROID)
@ -629,7 +633,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#else
bool enable_crash_reporter = false;
if (crash_reporter::IsCrashpadEnabled()) {
@@ -2189,6 +2188,9 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
@@ -2203,6 +2202,9 @@ void ChromeContentBrowserClient::AppendExtraCommandLineSwitches(
command_line->AppendSwitch(
switches::kSharedArrayBufferUnrestrictedAccessAllowed);
}
@ -639,7 +643,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#endif
if (prefs->GetBoolean(
@@ -4083,6 +4085,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4088,6 +4090,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
&throttles);
#endif
@ -647,7 +651,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()
@@ -4097,6 +4100,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4102,6 +4105,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
std::make_unique<safe_browsing::DelayedWarningNavigationThrottle>(
handle));
}
@ -655,7 +659,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.
@@ -5421,6 +5425,7 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
@@ -5486,6 +5490,7 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
const std::vector<std::string>& allowlist_domains) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
@ -663,7 +667,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)
@@ -5441,6 +5446,9 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
@@ -5506,6 +5511,9 @@ ChromeContentBrowserClient::GetSafeBrowsingUrlCheckerDelegate(
}
return safe_browsing_url_checker_delegate_;
@ -673,7 +677,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
}
safe_browsing::RealTimeUrlLookupServiceBase*
@@ -5448,24 +5456,28 @@ ChromeContentBrowserClient::GetUrlLookupService(
@@ -5513,24 +5521,28 @@ ChromeContentBrowserClient::GetUrlLookupService(
content::BrowserContext* browser_context,
bool is_enterprise_lookup_enabled,
bool is_consumer_lookup_enabled) {
@ -706,7 +710,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
@@ -819,9 +819,11 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
@@ -831,9 +831,11 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
// Parts are deleted in the reverse order they are added.
std::vector<ChromeContentBrowserClientParts*> extra_parts_;
@ -721,7 +725,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
@@ -119,6 +119,7 @@
@@ -123,6 +123,7 @@
namespace {
@ -729,7 +733,7 @@ diff --git a/chrome/browser/chrome_content_browser_client_receiver_bindings.cc b
// Helper method for ExposeInterfacesToRenderer() that checks the latest
// SafeBrowsing pref value on the UI thread before hopping over to the IO
// thread.
@@ -171,6 +172,7 @@ void MaybeCreateSafeBrowsingForRenderer(
@@ -175,6 +176,7 @@ void MaybeCreateSafeBrowsingForRenderer(
allowlist_domains),
std::move(receiver)));
}
@ -747,10 +751,10 @@ diff --git a/chrome/browser/component_updater/file_type_policies_component_insta
+#if defined(FULL_SAFE_BROWSING)
#include "components/safe_browsing/content/common/file_type_policies.h"
+#endif
#include "components/safe_browsing/core/common/features.h"
using component_updater::ComponentUpdateService;
@@ -39,20 +41,6 @@ const uint8_t kFileTypePoliciesPublicKeySHA256[32] = {
@@ -40,20 +42,6 @@ const uint8_t kFileTypePoliciesPublicKeySHA256[32] = {
const char kFileTypePoliciesManifestName[] = "File Type Policies";
void LoadFileTypesFromDisk(const base::FilePath& pb_path) {
@ -835,7 +839,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
#include "components/services/quarantine/public/mojom/quarantine.mojom.h"
#include "components/services/quarantine/quarantine_impl.h"
#include "content/public/browser/browser_task_traits.h"
@@ -129,8 +133,10 @@ using content::DownloadManager;
@@ -130,8 +134,10 @@ using content::DownloadManager;
using download::DownloadItem;
using download::DownloadPathReservationTracker;
using download::PathValidationResult;
@ -846,7 +850,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
using ConnectionType = net::NetworkChangeNotifier::ConnectionType;
namespace {
@@ -332,12 +338,12 @@ void HandleMixedDownloadInfoBarResult(
@@ -333,12 +339,12 @@ void HandleMixedDownloadInfoBarResult(
}
#endif
@ -860,7 +864,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
if (download_restriction !=
DownloadPrefs::DownloadRestriction::POTENTIALLY_DANGEROUS_FILES &&
download_restriction !=
@@ -372,8 +378,8 @@ void MaybeReportDangerousDownloadBlocked(
@@ -373,8 +379,8 @@ void MaybeReportDangerousDownloadBlocked(
danger_type, download->GetMimeType(), /*scan_id*/ "",
download->GetTotalBytes(), safe_browsing::EventResult::BLOCKED);
}
@ -870,7 +874,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
} // namespace
@@ -395,13 +401,6 @@ ChromeDownloadManagerDelegate::~ChromeDownloadManagerDelegate() {
@@ -396,13 +402,6 @@ ChromeDownloadManagerDelegate::~ChromeDownloadManagerDelegate() {
void ChromeDownloadManagerDelegate::SetDownloadManager(DownloadManager* dm) {
download_manager_ = dm;
@ -884,7 +888,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
}
#if defined(OS_ANDROID)
@@ -748,16 +747,6 @@ void ChromeDownloadManagerDelegate::ChooseSavePath(
@@ -749,16 +748,6 @@ void ChromeDownloadManagerDelegate::ChooseSavePath(
void ChromeDownloadManagerDelegate::SanitizeSavePackageResourceName(
base::FilePath* filename) {
@ -901,7 +905,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
}
void ChromeDownloadManagerDelegate::SanitizeDownloadParameters(
@@ -827,8 +816,6 @@ void ChromeDownloadManagerDelegate::OpenDownload(DownloadItem* download) {
@@ -828,8 +817,6 @@ void ChromeDownloadManagerDelegate::OpenDownload(DownloadItem* download) {
chrome::ShowSettingsSubPage(browser, "certificates");
else
browser->OpenURL(params);
@ -910,7 +914,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
#endif // OS_ANDROID
}
@@ -884,18 +871,18 @@ ChromeDownloadManagerDelegate::ApplicationClientIdForFileScanning() {
@@ -885,18 +872,18 @@ ChromeDownloadManagerDelegate::ApplicationClientIdForFileScanning() {
return std::string(chrome::kApplicationClientIDStringForAVScanning);
}
@ -931,7 +935,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
void ChromeDownloadManagerDelegate::GetMixedContentStatus(
download::DownloadItem* download,
@@ -1400,8 +1387,11 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDetermined(
@@ -1407,8 +1394,11 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDetermined(
DownloadItemModel(item).SetShouldPreferOpeningInBrowser(true);
#endif
@ -943,7 +947,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
if (ShouldBlockFile(target_info->danger_type, item)) {
MaybeReportDangerousDownloadBlocked(
download_prefs_->download_restriction(), "DANGEROUS_FILE_TYPE",
@@ -1410,6 +1400,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDetermined(
@@ -1417,6 +1407,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDetermined(
// A dangerous type would take precedence over the blocking of the file.
target_info->danger_type = download::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS;
}
@ -951,7 +955,7 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrom
base::FilePath target_path = target_info->target_path;
@@ -1539,10 +1530,10 @@ void ChromeDownloadManagerDelegate::MaybeSendDangerousDownloadOpenedReport(
@@ -1546,10 +1537,10 @@ void ChromeDownloadManagerDelegate::MaybeSendDangerousDownloadOpenedReport(
service->MaybeSendDangerousDownloadOpenedReport(download,
show_download_in_folder);
}
@ -999,8 +1003,8 @@ diff --git a/chrome/browser/download/chrome_download_manager_delegate.h b/chrome
base::WeakPtr<ChromeDownloadManagerDelegate> GetWeakPtr();
@@ -167,8 +169,10 @@ class ChromeDownloadManagerDelegate
mojo::PendingReceiver<quarantine::mojom::Quarantine> receiver);
@@ -172,8 +174,10 @@ class ChromeDownloadManagerDelegate
download::DownloadItem* item) const;
protected:
+#if defined(FULL_SAFE_BROWSING)
@ -1170,16 +1174,16 @@ 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
@@ -4,7 +4,9 @@
#include "chrome/browser/download/download_stats.h"
@@ -7,7 +7,9 @@
#include "base/metrics/histogram_functions.h"
#include "base/metrics/user_metrics.h"
#include "components/profile_metrics/browser_profile_type.h"
+#if defined(FULL_SAFE_BROWSING)
#include "components/safe_browsing/content/browser/download/download_stats.h"
+#endif
#include "base/metrics/histogram_functions.h"
#include "base/metrics/user_metrics.h"
void RecordDownloadCount(ChromeDownloadCountTypes type) {
base::UmaHistogramEnumeration("Download.CountsChrome", type,
@@ -26,8 +28,10 @@ void RecordDangerousDownloadWarningShown(
bool has_user_gesture) {
base::UmaHistogramEnumeration("Download.ShowedDownloadWarning", danger_type,
@ -1257,7 +1261,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.
@@ -834,6 +844,7 @@ DownloadTargetDeterminer::Result
@@ -836,6 +846,7 @@ DownloadTargetDeterminer::Result
return CONTINUE;
}
@ -1265,7 +1269,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
@@ -870,6 +881,7 @@ DownloadTargetDeterminer::Result
@@ -872,6 +883,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;
@ -1273,7 +1277,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
return CONTINUE;
}
@@ -877,6 +889,7 @@ void DownloadTargetDeterminer::CheckVisitedReferrerBeforeDone(
@@ -879,6 +891,7 @@ void DownloadTargetDeterminer::CheckVisitedReferrerBeforeDone(
bool visited_referrer_before) {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
DCHECK_EQ(STATE_DETERMINE_INTERMEDIATE_PATH, next_state_);
@ -1281,7 +1285,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()),
@@ -887,6 +900,7 @@ void DownloadTargetDeterminer::CheckVisitedReferrerBeforeDone(
@@ -889,6 +902,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;
@ -1289,7 +1293,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
DoLoop();
}
@@ -986,7 +1000,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf(
@@ -988,7 +1002,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf(
<< " Intermediate:" << intermediate_path_.AsUTF8Unsafe()
<< " Confirmation reason:" << static_cast<int>(confirmation_reason_)
<< " Danger type:" << danger_type_
@ -1299,7 +1303,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);
@@ -998,7 +1014,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf(
@@ -1000,7 +1016,9 @@ void DownloadTargetDeterminer::ScheduleCallbackAndDeleteSelf(
? DownloadItem::TARGET_DISPOSITION_PROMPT
: DownloadItem::TARGET_DISPOSITION_OVERWRITE);
target_info->danger_type = danger_type_;
@ -1309,7 +1313,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_;
@@ -1087,6 +1105,7 @@ bool DownloadTargetDeterminer::HasPromptedForPath() const {
@@ -1089,6 +1107,7 @@ bool DownloadTargetDeterminer::HasPromptedForPath() const {
DownloadItem::TARGET_DISPOSITION_PROMPT);
}
@ -1317,7 +1321,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);
@@ -1111,29 +1130,7 @@ DownloadFileType::DangerLevel DownloadTargetDeterminer::GetDangerLevel(
@@ -1113,29 +1132,7 @@ DownloadFileType::DangerLevel DownloadTargetDeterminer::GetDangerLevel(
download_->HasUserGesture())
return DownloadFileType::NOT_DANGEROUS;
@ -1348,7 +1352,7 @@ diff --git a/chrome/browser/download/download_target_determiner.cc b/chrome/brow
}
absl::optional<base::Time>
@@ -1147,6 +1144,7 @@ DownloadTargetDeterminer::GetLastDownloadBypassTimestamp() const {
@@ -1149,6 +1146,7 @@ DownloadTargetDeterminer::GetLastDownloadBypassTimestamp() const {
EventType::DANGEROUS_DOWNLOAD_BYPASS)
: absl::nullopt;
}
@ -1521,7 +1525,7 @@ diff --git a/chrome/browser/extensions/api/downloads/downloads_api.cc b/chrome/b
-
ExtensionFunction::ResponseAction DownloadsAcceptDangerFunction::Run() {
std::unique_ptr<downloads::AcceptDanger::Params> params(
downloads::AcceptDanger::Params::Create(*args_));
downloads::AcceptDanger::Params::Create(args()));
@@ -1311,42 +1307,7 @@ void DownloadsAcceptDangerFunction::PromptOrWait(int download_id, int retries) {
return;
}
@ -1608,7 +1612,7 @@ diff --git a/chrome/browser/extensions/api/webstore_private/webstore_private_api
--- a/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
+++ b/chrome/browser/extensions/api/webstore_private/webstore_private_api.cc
@@ -1216,21 +1216,9 @@ WebstorePrivateGetExtensionStatusFunction::Run() {
GetExtensionStatus::Params::Create(*args_));
GetExtensionStatus::Params::Create(args()));
EXTENSION_FUNCTION_VALIDATE(params);
- const ExtensionId& extension_id = params->id;
@ -1654,7 +1658,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,
@@ -374,6 +377,7 @@ InterpretSafeBrowsingResult(safe_browsing::DownloadCheckResult result) {
@@ -377,6 +380,7 @@ InterpretSafeBrowsingResult(safe_browsing::DownloadCheckResult result) {
NOTREACHED();
return ChromeFileSystemAccessPermissionContext::AfterWriteCheckResult::kBlock;
}
@ -1662,7 +1666,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
@@ -1105,6 +1109,7 @@ void ChromeFileSystemAccessPermissionContext::ConfirmSensitiveDirectoryAccess(
@@ -1108,6 +1112,7 @@ void ChromeFileSystemAccessPermissionContext::ConfirmSensitiveDirectoryAccess(
std::move(callback)));
}
@ -1670,7 +1674,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,
@@ -1126,6 +1131,7 @@ void ChromeFileSystemAccessPermissionContext::PerformAfterWriteChecks(
@@ -1129,6 +1134,7 @@ void ChromeFileSystemAccessPermissionContext::PerformAfterWriteChecks(
},
base::SequencedTaskRunnerHandle::Get(), std::move(callback))));
}
@ -1723,7 +1727,7 @@ diff --git a/chrome/browser/lookalikes/lookalike_url_controller_client.cc b/chro
diff --git a/chrome/browser/metrics/chrome_metrics_service_client.cc b/chrome/browser/metrics/chrome_metrics_service_client.cc
--- a/chrome/browser/metrics/chrome_metrics_service_client.cc
+++ b/chrome/browser/metrics/chrome_metrics_service_client.cc
@@ -806,9 +806,6 @@ void ChromeMetricsServiceClient::RegisterMetricsServiceProviders() {
@@ -823,9 +823,6 @@ void ChromeMetricsServiceClient::RegisterMetricsServiceProviders() {
metrics_service_->RegisterMetricsProvider(
std::make_unique<HttpsEngagementMetricsProvider>());
@ -1749,7 +1753,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
@@ -822,21 +822,13 @@ autofill::LanguageCode ChromePasswordManagerClient::GetPageLanguage() const {
@@ -826,21 +826,13 @@ autofill::LanguageCode ChromePasswordManagerClient::GetPageLanguage() const {
safe_browsing::PasswordProtectionService*
ChromePasswordManagerClient::GetPasswordProtectionService() const {
@ -1772,7 +1776,7 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b
}
#endif // defined(ON_FOCUS_PING_ENABLED)
@@ -846,22 +838,9 @@ void ChromePasswordManagerClient::CheckProtectedPasswordEntry(
@@ -850,22 +842,9 @@ void ChromePasswordManagerClient::CheckProtectedPasswordEntry(
const std::vector<password_manager::MatchingReusedCredential>&
matching_reused_credentials,
bool password_field_exists) {
@ -1794,8 +1798,8 @@ diff --git a/chrome/browser/password_manager/chrome_password_manager_client.cc b
- }
}
ukm::SourceId ChromePasswordManagerClient::GetUkmSourceId() {
@@ -1402,6 +1381,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
#if !defined(OS_ANDROID)
@@ -1418,6 +1397,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
is_enabled = false;
}
@ -1803,7 +1807,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
@@ -1412,6 +1392,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
@@ -1428,6 +1408,7 @@ bool ChromePasswordManagerClient::IsPasswordManagementEnabledForCurrentPage(
observer->OnPasswordSaveOrAutofillDenied();
is_enabled = false;
}
@ -1877,7 +1881,7 @@ diff --git a/chrome/browser/permissions/chrome_permissions_client.h b/chrome/bro
diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
--- a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
+++ b/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
@@ -71,7 +71,6 @@
@@ -73,7 +73,6 @@
#include "chrome/browser/privacy_sandbox/privacy_sandbox_settings_factory.h"
#include "chrome/browser/profiles/gaia_info_update_service_factory.h"
#include "chrome/browser/profiles/renderer_updater_factory.h"
@ -1885,7 +1889,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
#include "chrome/browser/search_engines/template_url_fetcher_factory.h"
#include "chrome/browser/search_engines/template_url_service_factory.h"
#include "chrome/browser/segmentation_platform/segmentation_platform_service_factory.h"
@@ -288,7 +287,6 @@ void ChromeBrowserMainExtraPartsProfiles::
@@ -294,7 +293,6 @@ void ChromeBrowserMainExtraPartsProfiles::
#if BUILDFLAG(IS_CHROMEOS_LACROS)
CertDbInitializerFactory::GetInstance();
#endif
@ -1896,7 +1900,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
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
@@ -90,7 +90,6 @@
@@ -93,7 +93,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"
@ -1904,7 +1908,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p
#include "chrome/browser/sharing/sharing_service_factory.h"
#include "chrome/browser/signin/identity_manager_factory.h"
#include "chrome/browser/signin/signin_ui_util.h"
@@ -647,6 +646,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async_prefs) {
@@ -658,6 +657,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async_prefs) {
mojo::PendingRemote<prefs::mojom::TrackedPreferenceValidationDelegate>
pref_validation_delegate;
@ -1912,7 +1916,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p
scoped_refptr<safe_browsing::SafeBrowsingService> safe_browsing_service(
g_browser_process->safe_browsing_service());
if (safe_browsing_service.get()) {
@@ -658,7 +658,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async_prefs) {
@@ -669,7 +669,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async_prefs) {
pref_validation_delegate.InitWithNewPipeAndPassReceiver());
}
}
@ -1924,7 +1928,7 @@ diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/p
diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn
--- a/chrome/browser/safe_browsing/BUILD.gn
+++ b/chrome/browser/safe_browsing/BUILD.gn
@@ -6,6 +6,7 @@ import("//components/safe_browsing/buildflags.gni")
@@ -5,6 +5,7 @@ import("//components/safe_browsing/buildflags.gni")
import("//extensions/buildflags/buildflags.gni")
static_library("safe_browsing") {
@ -1932,7 +1936,7 @@ diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsin
sources = [
"chrome_controller_client.cc",
"chrome_controller_client.h",
@@ -38,7 +39,6 @@ static_library("safe_browsing") {
@@ -37,7 +38,6 @@ static_library("safe_browsing") {
"//components/resources:components_resources_grit",
"//components/safe_browsing:buildflags",
"//components/safe_browsing/content/browser",
@ -1940,7 +1944,7 @@ diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsin
"//components/safe_browsing/content/browser/triggers:suspicious_site_trigger",
"//components/safe_browsing/content/browser/web_ui",
"//components/safe_browsing/core/browser",
@@ -87,6 +87,7 @@ static_library("safe_browsing") {
@@ -86,6 +86,7 @@ static_library("safe_browsing") {
"//extensions/browser",
]
}
@ -1948,7 +1952,7 @@ diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsin
if (safe_browsing_mode != 0) {
# "Safe Browsing Basic" files used for safe browsing in full mode
@@ -162,7 +163,6 @@ static_library("safe_browsing") {
@@ -161,7 +162,6 @@ static_library("safe_browsing") {
"//components/safe_browsing/content/browser/triggers:ad_sampler_trigger",
"//components/safe_browsing/content/browser/triggers:suspicious_site_trigger",
"//components/safe_browsing/content/browser/triggers:trigger_throttler",
@ -2057,10 +2061,11 @@ diff --git a/chrome/browser/safe_browsing/android/java/src/org/chromium/chrome/b
diff --git a/chrome/browser/safe_browsing/android/safe_browsing_bridge.cc b/chrome/browser/safe_browsing/android/safe_browsing_bridge.cc
--- a/chrome/browser/safe_browsing/android/safe_browsing_bridge.cc
+++ b/chrome/browser/safe_browsing/android/safe_browsing_bridge.cc
@@ -32,55 +32,4 @@ PrefService* GetPrefService() {
@@ -31,57 +31,4 @@ PrefService* GetPrefService() {
} // namespace
namespace safe_browsing {
-
-static jint JNI_SafeBrowsingBridge_UmaValueForFile(
- JNIEnv* env,
- const base::android::JavaParamRef<jstring>& path) {
@ -2090,7 +2095,8 @@ diff --git a/chrome/browser/safe_browsing/android/safe_browsing_bridge.cc b/chro
-}
-
-static jint JNI_SafeBrowsingBridge_GetSafeBrowsingState(JNIEnv* env) {
- return safe_browsing::GetSafeBrowsingState(*GetPrefService());
- return static_cast<jint>(
- safe_browsing::GetSafeBrowsingState(*GetPrefService()));
-}
-
-static void JNI_SafeBrowsingBridge_SetSafeBrowsingState(JNIEnv* env,
@ -2116,7 +2122,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
@@ -700,11 +700,6 @@ void DownloadProtectionService::RequestFinished(DeepScanningRequest* request) {
@@ -705,11 +705,6 @@ void DownloadProtectionService::RequestFinished(DeepScanningRequest* request) {
deep_scanning_requests_.erase(it);
}
@ -2292,7 +2298,15 @@ 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
@@ -3861,7 +3861,6 @@ static_library("ui") {
@@ -512,7 +512,6 @@ static_library("ui") {
"//components/renderer_context_menu",
"//components/resources",
"//components/safe_browsing/content/browser",
- "//components/safe_browsing/content/browser:client_side_detection",
"//components/safe_browsing/content/browser/password_protection",
"//components/safe_browsing/content/browser/web_ui",
"//components/safe_browsing/core/browser/db:database_manager",
@@ -3885,7 +3884,6 @@ static_library("ui") {
"views/device_chooser_content_view.h",
"views/devtools_process_observer.cc",
"views/devtools_process_observer.h",
@ -2303,7 +2317,7 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
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
@@ -330,12 +330,6 @@ CHAR_LIMIT guidelines:
@@ -327,12 +327,6 @@ CHAR_LIMIT guidelines:
<message name="IDS_PRELOAD_PAGES_SUMMARY" desc="Summary for a checkbox in Settings that controls pages preloading and informs the user about the data shared by this feature.">
Preloads pages that Chrome thinks you might visit. To do this, Chrome may use cookies, if you allow cookies, and may encrypt and send pages through Google to hide your identity from sites.
</message>
@ -2316,7 +2330,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<message name="IDS_URL_KEYED_ANONYMIZED_DATA_TITLE" desc="Title for a checkbox in Settings that controls non-personalized URL collection and informs the user about the data shared by this feature.">
Make searches and browsing better
</message>
@@ -351,12 +345,6 @@ CHAR_LIMIT guidelines:
@@ -348,12 +342,6 @@ CHAR_LIMIT guidelines:
<message name="IDS_PRIVACY_SYNC_AND_SERVICES_LINK_SYNC_OFF" desc="The text for Privacy preferences that is shown after all preference rows. This version of the text is shown if Sync hasn't been turned on.">
For more settings that relate to privacy, security, and data collection, see <ph name="BEGIN_LINK">&lt;link&gt;</ph>Google services<ph name="END_LINK">&lt;/link&gt;</ph>
</message>
@ -2329,7 +2343,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]">
@@ -4435,9 +4423,6 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4494,9 +4482,6 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_USAGE_STATS_CONSENT_PROMPT" desc="Consent prompt when authorizing Digital Wellbeing to access Chrome usage data">
You can see sites you visit in Chrome and set timers for them.\n\nGoogle gets info about the sites you set timers for and how long you visit them. This info is used to make Digital Wellbeing better.
</message>
@ -2348,22 +2362,23 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
#include "chrome/browser/profiles/profile_key.h"
-#include "chrome/browser/reputation/reputation_web_contents_observer.h"
#include "chrome/browser/resource_coordinator/tab_helper.h"
-#include "chrome/browser/safe_browsing/chrome_safe_browsing_tab_observer_delegate.h"
-#include "chrome/browser/safe_browsing/safe_browsing_navigation_observer_manager_factory.h"
-#include "chrome/browser/safe_browsing/safe_browsing_service.h"
-#include "chrome/browser/safe_browsing/safe_browsing_tab_observer.h"
-#include "chrome/browser/safe_browsing/trigger_creator.h"
#include "chrome/browser/sessions/session_tab_helper_factory.h"
#include "chrome/browser/ssl/chrome_security_blocking_page_factory.h"
#include "chrome/browser/ssl/connection_help_tab_helper.h"
@@ -111,7 +106,6 @@
@@ -111,8 +106,6 @@
#include "components/performance_manager/public/performance_manager.h"
#include "components/permissions/features.h"
#include "components/permissions/permission_request_manager.h"
-#include "components/safe_browsing/content/browser/safe_browsing_navigation_observer.h"
-#include "components/safe_browsing/content/browser/safe_browsing_tab_observer.h"
#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"
#include "components/tracing/common/tracing_switches.h"
@@ -316,15 +310,6 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
@@ -318,17 +311,6 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
// See https://crbug.com/910288.
resource_coordinator::ResourceCoordinatorTabHelper::CreateForWebContents(
web_contents);
@ -2372,7 +2387,9 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
- safe_browsing::SafeBrowsingNavigationObserverManagerFactory::
- GetForBrowserContext(profile),
- profile->GetPrefs(), g_browser_process->safe_browsing_service());
- safe_browsing::SafeBrowsingTabObserver::CreateForWebContents(web_contents);
- safe_browsing::SafeBrowsingTabObserver::CreateForWebContents(
- web_contents,
- std::make_unique<safe_browsing::ChromeSafeBrowsingTabObserverDelegate>());
- safe_browsing::TriggerCreator::MaybeCreateTriggersForWebContents(
- profile, web_contents);
- ReputationWebContentsObserver::CreateForWebContents(web_contents);
@ -2442,7 +2459,7 @@ diff --git a/chrome/common/safe_browsing/BUILD.gn b/chrome/common/safe_browsing/
"//crypto",
]
if (is_mac) {
@@ -37,7 +36,6 @@ if (safe_browsing_mode == 1) {
@@ -52,7 +51,6 @@ if (safe_browsing_mode == 1) {
]
deps = [
"//base",
@ -2450,7 +2467,7 @@ diff --git a/chrome/common/safe_browsing/BUILD.gn b/chrome/common/safe_browsing/
"//components/safe_browsing/core/common",
]
public_deps = [ "//components/safe_browsing/core/common/proto:csd_proto" ]
@@ -54,7 +52,6 @@ if (safe_browsing_mode == 1) {
@@ -69,7 +67,6 @@ if (safe_browsing_mode == 1) {
":download_type_util",
"//base",
"//base:i18n",
@ -2458,7 +2475,7 @@ diff --git a/chrome/common/safe_browsing/BUILD.gn b/chrome/common/safe_browsing/
"//components/safe_browsing/core/common",
"//third_party/unrar:unrar",
]
@@ -130,10 +127,6 @@ if (safe_browsing_mode == 1) {
@@ -170,10 +167,6 @@ if (safe_browsing_mode == 1) {
source_set("safe_browsing") {
deps = []
@ -2482,6 +2499,25 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer
#include "components/spellcheck/spellcheck_buildflags.h"
#include "components/subresource_filter/content/renderer/subresource_filter_agent.h"
#include "components/subresource_filter/content/renderer/unverified_ruleset_dealer.h"
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -1241,7 +1241,6 @@ if (!is_android && !is_fuchsia) {
"//components/resources",
"//components/safe_browsing:buildflags",
"//components/safe_browsing/content/browser",
- "//components/safe_browsing/content/browser:client_side_detection",
"//components/safe_browsing/content/browser:safe_browsing_service",
"//components/safe_browsing/content/browser/password_protection",
"//components/safe_browsing/content/browser/password_protection:test_support",
@@ -5358,7 +5357,6 @@ test("unit_tests") {
"//components/resources",
"//components/safe_browsing:buildflags",
"//components/safe_browsing/content/browser",
- "//components/safe_browsing/content/browser:client_side_detection",
"//components/safe_browsing/content/browser:client_side_model_loader",
"//components/safe_browsing/content/browser/password_protection",
"//components/safe_browsing/content/browser/password_protection:mock_password_protection",
diff --git a/components/component_updater/installer_policies/BUILD.gn b/components/component_updater/installer_policies/BUILD.gn
--- a/components/component_updater/installer_policies/BUILD.gn
+++ b/components/component_updater/installer_policies/BUILD.gn
@ -2509,6 +2545,17 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
void PermissionRequestManager::ScheduleShowBubble() {
base::RecordAction(base::UserMetricsAction("PermissionBubbleRequest"));
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
@@ -167,7 +167,6 @@ source_set("unit_tests") {
]
deps = [
- ":client_side_detection",
":client_side_model_loader",
"//base:base",
"//base/test:test_support",
diff --git a/components/safe_browsing/content/common/file_type_policies.cc b/components/safe_browsing/content/common/file_type_policies.cc
--- a/components/safe_browsing/content/common/file_type_policies.cc
+++ b/components/safe_browsing/content/common/file_type_policies.cc
@ -2525,7 +2572,7 @@ diff --git a/components/safe_browsing/content/common/file_type_policies.cc b/com
diff --git a/components/safe_browsing/core/common/features.cc b/components/safe_browsing/core/common/features.cc
--- a/components/safe_browsing/core/common/features.cc
+++ b/components/safe_browsing/core/common/features.cc
@@ -133,7 +133,7 @@ constexpr base::FeatureParam<bool> kShouldFillOldPhishGuardProto{
@@ -139,7 +139,7 @@ constexpr base::FeatureParam<bool> kShouldFillOldPhishGuardProto{
&kPasswordProtectionForSignedInUsers, "DeprecateOldProto", false};
const base::Feature kSuspiciousSiteTriggerQuotaFeature{
@ -2588,15 +2635,15 @@ diff --git a/components/unified_consent/unified_consent_service.cc b/components/
diff --git a/content/browser/file_system_access/file_system_access_file_writer_impl.cc b/content/browser/file_system_access/file_system_access_file_writer_impl.cc
--- a/content/browser/file_system_access/file_system_access_file_writer_impl.cc
+++ b/content/browser/file_system_access/file_system_access_file_writer_impl.cc
@@ -144,7 +144,6 @@ FileSystemAccessFileWriterImpl::FileSystemAccessFileWriterImpl(
swap_url_(swap_url),
@@ -146,7 +146,6 @@ FileSystemAccessFileWriterImpl::FileSystemAccessFileWriterImpl(
lock_(std::move(lock)),
quarantine_connection_callback_(
std::move(quarantine_connection_callback)),
- has_transient_user_activation_(has_transient_user_activation),
auto_close_(auto_close) {
DCHECK_EQ(swap_url.type(), url.type());
receiver_.set_disconnect_handler(base::BindOnce(
@@ -338,16 +337,7 @@ void FileSystemAccessFileWriterImpl::CloseImpl(CloseCallback callback) {
DCHECK_EQ(lock_->type(),
@@ -342,16 +341,7 @@ void FileSystemAccessFileWriterImpl::CloseImpl(CloseCallback callback) {
}
close_callback_ = std::move(callback);
@ -2614,7 +2661,7 @@ diff --git a/content/browser/file_system_access/file_system_access_file_writer_i
}
void FileSystemAccessFileWriterImpl::AbortImpl(AbortCallback callback) {
@@ -367,35 +357,6 @@ void FileSystemAccessFileWriterImpl::AbortImpl(AbortCallback callback) {
@@ -371,35 +361,6 @@ void FileSystemAccessFileWriterImpl::AbortImpl(AbortCallback callback) {
manager()->RemoveFileWriter(this);
}
@ -2653,7 +2700,7 @@ diff --git a/content/browser/file_system_access/file_system_access_file_writer_i
diff --git a/content/browser/file_system_access/file_system_access_file_writer_impl.h b/content/browser/file_system_access/file_system_access_file_writer_impl.h
--- a/content/browser/file_system_access/file_system_access_file_writer_impl.h
+++ b/content/browser/file_system_access/file_system_access_file_writer_impl.h
@@ -103,9 +103,6 @@ class CONTENT_EXPORT FileSystemAccessFileWriterImpl
@@ -104,9 +104,6 @@ class CONTENT_EXPORT FileSystemAccessFileWriterImpl
void TruncateImpl(uint64_t length, TruncateCallback callback);
void CloseImpl(CloseCallback callback);
void AbortImpl(AbortCallback callback);
@ -2663,7 +2710,7 @@ diff --git a/content/browser/file_system_access/file_system_access_file_writer_i
void DidAfterWriteCheck(
FileSystemAccessPermissionContext::AfterWriteCheckResult result);
void DidSwapFileSkipQuarantine(base::File::Error result);
@@ -122,7 +119,7 @@ class CONTENT_EXPORT FileSystemAccessFileWriterImpl
@@ -123,7 +120,7 @@ class CONTENT_EXPORT FileSystemAccessFileWriterImpl
// except temporary file systems.
// TOOD(crbug.com/1103076): Extend this check to non-native paths.
bool RequireSecurityChecks() const {
@ -2672,7 +2719,7 @@ diff --git a/content/browser/file_system_access/file_system_access_file_writer_i
}
void ComputeHashForSwapFile(HashCallback callback);
@@ -138,10 +135,6 @@ class CONTENT_EXPORT FileSystemAccessFileWriterImpl
@@ -142,10 +139,6 @@ class CONTENT_EXPORT FileSystemAccessFileWriterImpl
download::QuarantineConnectionCallback quarantine_connection_callback_;
@ -2699,6 +2746,28 @@ diff --git a/content/public/browser/file_system_access_permission_context.h b/co
// Returns whether the give |origin| already allows read permission, or it is
// possible to request one. This is used to block file dialogs from being
diff --git a/weblayer/BUILD.gn b/weblayer/BUILD.gn
--- a/weblayer/BUILD.gn
+++ b/weblayer/BUILD.gn
@@ -458,7 +458,6 @@ source_set("weblayer_lib_base") {
"//components/prefs",
"//components/profile_metrics",
"//components/safe_browsing/content/browser",
- "//components/safe_browsing/content/browser:client_side_detection",
"//components/safe_browsing/content/common:interfaces",
"//components/safe_browsing/content/renderer:throttles",
"//components/safe_browsing/content/renderer/phishing_classifier",
diff --git a/weblayer/test/BUILD.gn b/weblayer/test/BUILD.gn
--- a/weblayer/test/BUILD.gn
+++ b/weblayer/test/BUILD.gn
@@ -243,7 +243,6 @@ test("weblayer_browsertests") {
"//components/page_info/android",
"//components/safe_browsing/android:safe_browsing_api_handler",
"//components/safe_browsing/content/browser",
- "//components/safe_browsing/content/browser:client_side_detection",
"//components/safe_browsing/content/browser:client_side_model_loader",
"//components/safe_browsing/content/common:interfaces",
"//components/safe_browsing/core/browser:token_fetcher",
--
2.17.1
2.20.1

View file

@ -19,5 +19,5 @@ diff --git a/components/permissions/features.cc b/components/permissions/feature
} // namespace features
--
2.17.1
2.20.1

View file

@ -9,7 +9,7 @@ Subject: Disable seed-based field trials
diff --git a/components/variations/service/variations_field_trial_creator.cc b/components/variations/service/variations_field_trial_creator.cc
--- a/components/variations/service/variations_field_trial_creator.cc
+++ b/components/variations/service/variations_field_trial_creator.cc
@@ -258,8 +258,8 @@ bool VariationsFieldTrialCreator::SetupFieldTrials(
@@ -263,8 +263,8 @@ bool VariationsFieldTrialCreator::SetupFieldTrials(
// instance is set.
feature_list->RegisterExtraFeatureOverrides(extra_overrides);
@ -19,7 +19,7 @@ diff --git a/components/variations/service/variations_field_trial_creator.cc b/c
if (!command_line->HasSwitch(switches::kDisableFieldTrialTestingConfig) &&
!command_line->HasSwitch(::switches::kForceFieldTrials) &&
!command_line->HasSwitch(switches::kVariationsServerURL)) {
@@ -273,10 +273,12 @@ bool VariationsFieldTrialCreator::SetupFieldTrials(
@@ -278,10 +278,12 @@ bool VariationsFieldTrialCreator::SetupFieldTrials(
}
#endif // BUILDFLAG(FIELDTRIAL_TESTING_ENABLED)
bool used_seed = false;
@ -33,5 +33,5 @@ diff --git a/components/variations/service/variations_field_trial_creator.cc b/c
platform_field_trials->SetupFeatureControllingFieldTrials(
used_seed, low_entropy_provider.get(), feature_list.get());
--
2.17.1
2.20.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
@@ -172,6 +172,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -173,6 +173,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kCCTClientDataHeader,
&kCCTExternalLinkHandling,
&kCCTIncognito,
@ -51,7 +51,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
&kCCTIncognitoAvailableToThirdParty,
&kCCTPostMessageAPI,
&kCCTRedirectPreconnect,
@@ -492,6 +493,9 @@ const base::Feature kChromeSharingHub{"ChromeSharingHub",
@@ -487,6 +488,9 @@ const base::Feature kChromeSharingHub{"ChromeSharingHub",
const base::Feature kChromeSurveyNextAndroid{"ChromeSurveyNextAndroid",
base::FEATURE_DISABLED_BY_DEFAULT};
@ -64,7 +64,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h
--- a/chrome/browser/flags/android/chrome_feature_list.h
+++ b/chrome/browser/flags/android/chrome_feature_list.h
@@ -52,6 +52,7 @@ extern const base::Feature kChromeShareHighlightsAndroid;
@@ -49,6 +49,7 @@ extern const base::Feature kDontAutoHideBrowserControls;
extern const base::Feature kChromeShareLongScreenshot;
extern const base::Feature kChromeShareScreenshot;
extern const base::Feature kChromeSharingHub;
@ -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
@@ -277,6 +277,7 @@ public abstract class ChromeFeatureList {
@@ -255,6 +255,7 @@ public abstract class ChromeFeatureList {
public static final String CCT_EXTERNAL_LINK_HANDLING = "CCTExternalLinkHandling";
public static final String CCT_POST_MESSAGE_API = "CCTPostMessageAPI";
public static final String CCT_REDIRECT_PRECONNECT = "CCTRedirectPreconnect";
@ -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
@@ -1951,6 +1951,21 @@
@@ -2026,6 +2026,21 @@
]
}
],
@ -121,5 +121,5 @@ diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variati
{
"platforms": [
--
2.17.1
2.20.1

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
@@ -704,7 +704,7 @@ const base::Feature kSignedExchangePrefetchCacheForNavigations{
@@ -719,7 +719,7 @@ const base::Feature kSignedExchangePrefetchCacheForNavigations{
// Signed Exchange Reporting for distributors
// https://www.chromestatus.com/features/5687904902840320
const base::Feature kSignedExchangeReportingForDistributors{
@ -18,7 +18,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
// Subresource prefetching+loading via Signed HTTP Exchange
// https://www.chromestatus.com/features/5126805474246656
@@ -714,7 +714,7 @@ const base::Feature kSignedExchangeSubresourcePrefetch{
@@ -729,7 +729,7 @@ const base::Feature kSignedExchangeSubresourcePrefetch{
// Origin-Signed HTTP Exchanges (for WebPackage Loading)
// https://www.chromestatus.com/features/5745285984681984
const base::Feature kSignedHTTPExchange{"SignedHTTPExchange",
@ -28,5 +28,5 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
// Whether to send a ping to the inner URL upon navigation or not.
const base::Feature kSignedHTTPExchangePingValidity{
--
2.17.1
2.20.1

View file

@ -11,7 +11,7 @@ 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
@@ -90,7 +90,7 @@ void FileAnalyzer::Start(const base::FilePath& target_path,
@@ -95,7 +95,7 @@ void FileAnalyzer::Start(const base::FilePath& target_path,
if (inspection_type == DownloadFileType::ZIP) {
StartExtractZipFeatures();
} else if (inspection_type == DownloadFileType::RAR) {
@ -23,7 +23,7 @@ diff --git a/chrome/browser/safe_browsing/download_protection/file_analyzer.cc b
diff --git a/chrome/common/safe_browsing/BUILD.gn b/chrome/common/safe_browsing/BUILD.gn
--- a/chrome/common/safe_browsing/BUILD.gn
+++ b/chrome/common/safe_browsing/BUILD.gn
@@ -41,38 +41,6 @@ if (safe_browsing_mode == 1) {
@@ -56,38 +56,6 @@ if (safe_browsing_mode == 1) {
public_deps = [ "//components/safe_browsing/core/common/proto:csd_proto" ]
}
@ -59,10 +59,10 @@ diff --git a/chrome/common/safe_browsing/BUILD.gn b/chrome/common/safe_browsing/
- public_deps = [ "//components/safe_browsing/core/common/proto:csd_proto" ]
- }
-
if (is_mac) {
source_set("disk_image_type_sniffer_mac") {
if (is_linux || is_win) {
source_set("document_analyzer") {
sources = [
@@ -142,7 +110,6 @@ source_set("safe_browsing") {
@@ -182,7 +150,6 @@ source_set("safe_browsing") {
":archive_analyzer_results",
":binary_feature_extractor",
":download_type_util",
@ -92,5 +92,5 @@ diff --git a/chrome/services/file_util/safe_archive_analyzer.cc b/chrome/service
std::move(callback).Run(results);
}
--
2.17.1
2.20.1

View file

@ -17,7 +17,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
@@ -5377,6 +5377,7 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5612,6 +5612,7 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kSharingHubDesktopOmniboxDescription, kOsDesktop,
FEATURE_VALUE_TYPE(sharing_hub::kSharingHubDesktopOmnibox)},
#endif // defined(OS_WIN) || defined(OS_MAC) || defined(OS_LINUX)
@ -28,7 +28,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
@@ -2941,7 +2941,7 @@
@@ -3058,7 +3058,7 @@
{
"name": "ev-details-in-page-info",
"owners": [ "cthomp" ],
@ -63,7 +63,7 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -370,7 +370,7 @@ const base::Feature kStorageAccessAPI{"StorageAccessAPI",
@@ -379,7 +379,7 @@ const base::Feature kStorageAccessAPI{"StorageAccessAPI",
// Enable text snippets in URL fragments. https://crbug.com/919204.
const base::Feature kTextFragmentAnchor{"TextFragmentAnchor",
@ -75,7 +75,7 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
--- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc
@@ -4070,6 +4070,10 @@ void Document::SetURL(const KURL& url) {
@@ -4063,6 +4063,10 @@ void Document::SetURL(const KURL& url) {
}
}
@ -86,7 +86,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
// Strip the fragment directive from the URL fragment. E.g. "#id:~:text=a"
// --> "#id". See https://github.com/WICG/scroll-to-text-fragment.
String fragment = new_url.FragmentIdentifier();
@@ -4083,6 +4087,7 @@ void Document::SetURL(const KURL& url) {
@@ -4076,6 +4080,7 @@ void Document::SetURL(const KURL& url) {
else
new_url.SetFragmentIdentifier(fragment.Substring(0, start_pos));
}
@ -145,7 +145,7 @@ diff --git a/third_party/blink/renderer/core/page/scrolling/text_fragment_anchor
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -2130,8 +2130,7 @@
@@ -2173,8 +2173,7 @@
},
{
name: "TextFragmentIdentifiers",
@ -156,5 +156,5 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
{
name: "TextFragmentTapOpensContextMenu",
--
2.17.1
2.20.1

View file

@ -31,5 +31,5 @@ diff --git a/chrome/browser/media/router/discovery/dial/dial_registry.cc b/chrom
ClearDialService();
}
--
2.17.1
2.20.1

View file

@ -10,7 +10,7 @@ author: Chad Miller <chad.miller@canonical.com>
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
@@ -698,7 +698,7 @@ void RegisterProfilePrefsForMigration(
@@ -717,7 +717,7 @@ void RegisterProfilePrefsForMigration(
chrome_browser_net::secure_dns::RegisterProbesSettingBackupPref(registry);
@ -20,5 +20,5 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
registry->RegisterTimePref(kPluginsDeprecationInfobarLastShown, base::Time());
--
2.17.1
2.20.1

View file

@ -0,0 +1,150 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Thu, 4 Nov 2021 09:19:24 +0100
Subject: Disable third-party origin trials
---
.../origin_trials/origin_trial_policy_impl.cc | 7 ++++---
.../origin_trials/origin_trial_policy_impl.h | 2 +-
.../shell/common/shell_origin_trial_policy.cc | 10 ++++------
.../blink/renderer/core/loader/http_equiv.cc | 16 ----------------
.../core/origin_trials/origin_trial_context.cc | 13 ++-----------
.../platform/runtime_enabled_features.json5 | 4 ----
6 files changed, 11 insertions(+), 41 deletions(-)
diff --git a/components/embedder_support/origin_trials/origin_trial_policy_impl.cc b/components/embedder_support/origin_trials/origin_trial_policy_impl.cc
--- a/components/embedder_support/origin_trials/origin_trial_policy_impl.cc
+++ b/components/embedder_support/origin_trials/origin_trial_policy_impl.cc
@@ -20,10 +20,10 @@
namespace embedder_support {
-// This is the default public key used for validating signatures.
+// This is an invalid public key that will match no origin trial signature
static const blink::OriginTrialPublicKey kDefaultPublicKey = {
0x7c, 0xc4, 0xb8, 0x9a, 0x93, 0xba, 0x6e, 0xe2, 0xd0, 0xfd, 0x03,
- 0x1d, 0xfb, 0x32, 0x66, 0xc7, 0x3b, 0x72, 0xfd, 0x54, 0x3a, 0x07,
+ 0x1d, 0xfb, 0x32, 0x66, 0x00, 0x01, 0x02, 0xfd, 0x54, 0x3a, 0x07,
0x51, 0x14, 0x66, 0xaa, 0x02, 0x53, 0x4e, 0x33, 0xa1, 0x15,
};
@@ -54,7 +54,8 @@ OriginTrialPolicyImpl::OriginTrialPolicyImpl() {
OriginTrialPolicyImpl::~OriginTrialPolicyImpl() = default;
bool OriginTrialPolicyImpl::IsOriginTrialsSupported() const {
- return true;
+ // third-party origin trials are always disabled
+ return false;
}
const std::vector<blink::OriginTrialPublicKey>&
diff --git a/components/embedder_support/origin_trials/origin_trial_policy_impl.h b/components/embedder_support/origin_trials/origin_trial_policy_impl.h
--- a/components/embedder_support/origin_trials/origin_trial_policy_impl.h
+++ b/components/embedder_support/origin_trials/origin_trial_policy_impl.h
@@ -31,11 +31,11 @@ class OriginTrialPolicyImpl : public blink::OriginTrialPolicy {
bool IsTokenDisabled(base::StringPiece token_signature) const override;
bool IsOriginSecure(const GURL& url) const override;
+ private:
bool SetPublicKeysFromASCIIString(const std::string& ascii_public_key);
bool SetDisabledFeatures(const std::string& disabled_feature_list);
bool SetDisabledTokens(const std::string& disabled_token_list);
- private:
std::vector<blink::OriginTrialPublicKey> public_keys_;
std::set<std::string> disabled_features_;
std::set<std::string> disabled_tokens_;
diff --git a/content/shell/common/shell_origin_trial_policy.cc b/content/shell/common/shell_origin_trial_policy.cc
--- a/content/shell/common/shell_origin_trial_policy.cc
+++ b/content/shell/common/shell_origin_trial_policy.cc
@@ -13,13 +13,10 @@ namespace content {
namespace {
-// This is the public key which the content shell will use to enable origin
-// trial features. Trial tokens for use in web tests can be created with the
-// tool in /tools/origin_trials/generate_token.py, using the private key
-// contained in /tools/origin_trials/eftest.key.
+// This is an invalid public key that does not allow any origin trial verification
static const blink::OriginTrialPublicKey kOriginTrialPublicKey = {
0x75, 0x10, 0xac, 0xf9, 0x3a, 0x1c, 0xb8, 0xa9, 0x28, 0x70, 0xd2,
- 0x9a, 0xd0, 0x0b, 0x59, 0xe1, 0xac, 0x2b, 0xb7, 0xd5, 0xca, 0x1f,
+ 0x9a, 0xd0, 0x00, 0x01, 0x02, 0xac, 0x2b, 0xb7, 0xd5, 0xca, 0x1f,
0x64, 0x90, 0x08, 0x8e, 0xa8, 0xe0, 0x56, 0x3a, 0x04, 0xd0,
};
@@ -32,7 +29,8 @@ ShellOriginTrialPolicy::ShellOriginTrialPolicy() {
ShellOriginTrialPolicy::~ShellOriginTrialPolicy() {}
bool ShellOriginTrialPolicy::IsOriginTrialsSupported() const {
- return true;
+ // third-party origin trials are always disabled
+ return false;
}
const std::vector<blink::OriginTrialPublicKey>&
diff --git a/third_party/blink/renderer/core/loader/http_equiv.cc b/third_party/blink/renderer/core/loader/http_equiv.cc
--- a/third_party/blink/renderer/core/loader/http_equiv.cc
+++ b/third_party/blink/renderer/core/loader/http_equiv.cc
@@ -148,22 +148,6 @@ void HttpEquiv::ProcessHttpEquivOriginTrial(LocalDOMWindow* window,
const AtomicString& content) {
if (!window)
return;
- // For meta tags injected by script, process the token with the origin of the
- // external script, if available.
- // NOTE: The external script origin is not considered security-critical. See
- // the comment thread in the design doc for details:
- // https://docs.google.com/document/d/1xALH9W7rWmX0FpjudhDeS2TNTEOXuPn4Tlc9VmuPdHA/edit?disco=AAAAJyG8StI
- if (RuntimeEnabledFeatures::ThirdPartyOriginTrialsEnabled()) {
- KURL external_script_url(GetCurrentScriptUrl(/*max_stack_depth=*/1));
-
- if (external_script_url.IsValid()) {
- scoped_refptr<SecurityOrigin> external_origin =
- SecurityOrigin::Create(external_script_url);
- window->GetOriginTrialContext()->AddTokenFromExternalScript(
- content, external_origin.get());
- return;
- }
- }
// Process token as usual, without an external script origin.
window->GetOriginTrialContext()->AddToken(content);
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
@@ -275,17 +275,8 @@ void OriginTrialContext::AddToken(const String& token) {
void OriginTrialContext::AddTokenFromExternalScript(
const String& token,
const SecurityOrigin* origin) {
- bool is_script_origin_secure = false;
- if (origin &&
- RuntimeEnabledFeatures::ThirdPartyOriginTrialsEnabled(context_)) {
- DVLOG(1) << "AddTokenFromExternalScript: "
- << (origin ? origin->ToString() : "null");
- is_script_origin_secure = origin->IsPotentiallyTrustworthy();
- } else {
- origin = nullptr;
- }
- AddTokenInternal(token, GetSecurityOrigin(), IsSecureContext(), origin,
- is_script_origin_secure);
+ AddTokenInternal(token, GetSecurityOrigin(), IsSecureContext(), nullptr,
+ false);
}
void OriginTrialContext::AddTokenInternal(const String& token,
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
@@ -2183,10 +2183,6 @@
name: "TextFragmentTapOpensContextMenu",
status: {"Android": "stable"},
},
- {
- name: "ThirdPartyOriginTrials",
- status: "stable",
- },
{
name: "ThrottleDisplayNoneAndVisibilityHiddenCrossOriginIframes",
status: "experimental",
--
2.20.1

View file

@ -9,7 +9,7 @@ Subject: Disable unified autoplay feature
diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
--- a/media/base/media_switches.cc
+++ b/media/base/media_switches.cc
@@ -498,7 +498,7 @@ const base::Feature kUseR16Texture{"use-r16-texture",
@@ -480,7 +480,7 @@ const base::Feature kUseR16Texture{"use-r16-texture",
// Enables the Unified Autoplay policy by overriding the platform's default
// autoplay policy.
const base::Feature kUnifiedAutoplay{"UnifiedAutoplay",
@ -19,5 +19,5 @@ diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
#if defined(OS_LINUX)
// Enable vaapi video decoding on linux. This is already enabled by default on
--
2.17.1
2.20.1

View file

@ -21,5 +21,5 @@ diff --git a/components/component_updater/android/java/src/org/chromium/componen
/* package */ void onStartTaskBeforeNativeLoaded(TaskFinishedCallback callback) {
--
2.17.1
2.20.1

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
@@ -1195,8 +1195,6 @@ static_library("ui") {
@@ -1194,8 +1194,6 @@ static_library("ui") {
"singleton_tabs.h",
"startup/automation_infobar_delegate.cc",
"startup/automation_infobar_delegate.h",
@ -19,5 +19,5 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
"startup/launch_mode_recorder.h",
"startup/obsolete_system_infobar_delegate.cc",
--
2.17.1
2.20.1

View file

@ -11,7 +11,7 @@ Subject: Do not compile QR code sharing
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordinator.java
@@ -78,7 +78,6 @@ import org.chromium.chrome.browser.share.ShareButtonController;
@@ -79,7 +79,6 @@ import org.chromium.chrome.browser.share.ShareButtonController;
import org.chromium.chrome.browser.share.ShareDelegate;
import org.chromium.chrome.browser.share.ShareDelegate.ShareOrigin;
import org.chromium.chrome.browser.share.ShareUtils;
@ -19,7 +19,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi
import org.chromium.chrome.browser.tab.AccessibilityVisibilityHandler;
import org.chromium.chrome.browser.tab.AutofillSessionLifetimeController;
import org.chromium.chrome.browser.tab.Tab;
@@ -401,10 +400,6 @@ public class RootUiCoordinator
@@ -402,10 +401,6 @@ public class RootUiCoordinator
}
public void onAttachFragment(Fragment fragment) {
@ -33,25 +33,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/RootUiCoordi
diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java
--- a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java
+++ b/chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/share_sheet/ChromeProvidedSharingOptionsProvider.java
@@ -28,7 +28,6 @@ import org.chromium.chrome.browser.share.link_to_text.LinkToTextCoordinator;
@@ -25,7 +25,6 @@ import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.share.SaveBitmapDelegate;
import org.chromium.chrome.browser.share.link_to_text.LinkToTextCoordinator.LinkGeneration;
import org.chromium.chrome.browser.share.link_to_text.LinkToTextMetricsHelper;
import org.chromium.chrome.browser.share.long_screenshots.LongScreenshotsCoordinator;
-import org.chromium.chrome.browser.share.qrcode.QrCodeCoordinator;
import org.chromium.chrome.browser.share.screenshot.ScreenshotCoordinator;
import org.chromium.chrome.browser.share.send_tab_to_self.SendTabToSelfCoordinator;
import org.chromium.chrome.browser.share.share_sheet.ShareSheetPropertyModelBuilder.ContentType;
@@ -257,9 +256,6 @@ public class ChromeProvidedSharingOptionsProvider {
ChromeFeatureList.PREEMPTIVE_LINK_TO_TEXT_GENERATION)) {
mOrderedFirstPartyOptions.add(createHighlightsFirstPartyOption());
}
import org.chromium.chrome.browser.share.share_sheet.ShareSheetLinkToggleMetricsHelper.LinkToggleMetricsDetails;
@@ -255,9 +254,6 @@ public class ChromeProvidedSharingOptionsProvider {
mOrderedFirstPartyOptions.add(createCopyFirstPartyOption());
mOrderedFirstPartyOptions.add(createCopyTextFirstPartyOption());
mOrderedFirstPartyOptions.add(createSendTabToSelfFirstPartyOption());
- if (!mTabProvider.get().getWebContents().isIncognito()) {
- mOrderedFirstPartyOptions.add(createQrCodeFirstPartyOption());
- }
if (UserPrefs.get(Profile.getLastUsedRegularProfile()).getBoolean(Pref.PRINTING_ENABLED)) {
mOrderedFirstPartyOptions.add(createPrintingFirstPartyOption());
}
@@ -408,19 +404,6 @@ public class ChromeProvidedSharingOptionsProvider {
@@ -410,19 +406,6 @@ public class ChromeProvidedSharingOptionsProvider {
.build();
}
@ -74,7 +74,7 @@ diff --git a/chrome/browser/share/android/java/src/org/chromium/chrome/browser/s
diff --git a/chrome/browser/share/android/java_sources.gni b/chrome/browser/share/android/java_sources.gni
--- a/chrome/browser/share/android/java_sources.gni
+++ b/chrome/browser/share/android/java_sources.gni
@@ -21,24 +21,6 @@ share_java_sources = [
@@ -23,24 +23,6 @@ share_java_sources = [
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/LongScreenshotsTabService.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/LongScreenshotsTabServiceFactory.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/long_screenshots/bitmap_generation/ScreenshotBoundsManager.java",
@ -100,5 +100,5 @@ diff --git a/chrome/browser/share/android/java_sources.gni b/chrome/browser/shar
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/screenshot/EditorScreenshotTask.java",
"//chrome/browser/share/android/java/src/org/chromium/chrome/browser/share/screenshot/ScreenshotCoordinator.java",
--
2.17.1
2.20.1

View file

@ -22,5 +22,5 @@ diff --git a/extensions/common/extension.cc b/extensions/common/extension.cc
Extension::ManifestData* Extension::GetManifestData(const std::string& key)
--
2.17.1
2.20.1

View file

@ -36,5 +36,5 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
if (mDialogModel != null) return;
--
2.17.1
2.20.1

View file

@ -23,5 +23,5 @@ diff --git a/components/password_manager/core/browser/password_manager.cc b/comp
registry->RegisterStringPref(prefs::kSyncPasswordHash, std::string(),
PrefRegistry::NO_REGISTRATION_FLAGS);
--
2.17.1
2.20.1

View file

@ -42,5 +42,5 @@ diff --git a/chrome/browser/net/stub_resolver_config_reader.cc b/chrome/browser/
}
--
2.17.1
2.20.1

View file

@ -19,5 +19,5 @@ diff --git a/components/external_intents/android/external_intents_features.cc b/
static jlong JNI_ExternalIntentsFeatures_GetFeature(JNIEnv* env, jint ordinal) {
return reinterpret_cast<jlong>(kFeaturesExposedToJava[ordinal]);
--
2.17.1
2.20.1

View file

@ -10,7 +10,7 @@ Subject: Enable SPPI for devices with enough memory
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
--- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc
@@ -896,11 +896,7 @@ const base::Feature kShow10_10ObsoleteInfobar{
@@ -889,11 +889,7 @@ const base::Feature kShow10_10ObsoleteInfobar{
// browser_features, as they are only used on the browser side.
const base::Feature kSitePerProcess {
"site-per-process",
@ -25,7 +25,7 @@ diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
diff --git a/components/site_isolation/features.cc b/components/site_isolation/features.cc
--- a/components/site_isolation/features.cc
+++ b/components/site_isolation/features.cc
@@ -50,7 +50,7 @@ const base::Feature kSiteIsolationForOAuthSites{
@@ -57,7 +57,7 @@ const base::Feature kSiteIsolationForOAuthSites{
// base::SysInfo::AmountOfPhysicalMemoryMB().
const base::Feature kSitePerProcessOnlyForHighMemoryClients{
"site-per-process-only-for-high-memory-clients",
@ -35,5 +35,5 @@ diff --git a/components/site_isolation/features.cc b/components/site_isolation/f
"site-per-process-low-memory-cutoff-mb";
--
2.17.1
2.20.1

View file

@ -1,483 +0,0 @@
From: uazo <uazo@users.noreply.github.com>
Date: Sun, 24 Oct 2021 16:54:04 +0000
Subject: Enable android autofill
---
chrome/android/BUILD.gn | 1 +
.../settings/PasswordSettings.java | 58 ++++++++++++++++++-
.../chromium/chrome/browser/tab/TabImpl.java | 43 ++++++++++++++
.../browser/tab/TabViewAndroidDelegate.java | 14 +++++
chrome/browser/BUILD.gn | 8 +++
chrome/browser/android/tab_android.cc | 26 +++++++++
chrome/browser/android/tab_android.h | 2 +
.../strings/android_chrome_strings.grd | 3 +
chrome/browser/ui/tab_helpers.cc | 6 +-
.../autofill/core/common/autofill_prefs.cc | 5 ++
.../autofill/core/common/autofill_prefs.h | 1 +
.../embedder_support/view/ContentView.java | 48 +++++++++++++++
.../chromium/ui/base/ViewAndroidDelegate.java | 8 +++
13 files changed, 221 insertions(+), 2 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -410,6 +410,7 @@ android_library("chrome_java") {
"//chrome/browser/xsurface:java",
"//components/autofill/android:autofill_java",
"//components/autofill_assistant/browser:proto_java",
+ "//components/android_autofill/browser:java",
"//components/background_task_scheduler:background_task_scheduler_java",
"//components/background_task_scheduler:background_task_scheduler_task_ids_java",
"//components/bookmarks/common/android:bookmarks_java",
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
@@ -52,12 +52,18 @@ import org.chromium.ui.text.SpanApplier;
import java.util.Locale;
+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;
+
/**
* The "Passwords" screen in Settings, which allows the user to enable or disable password saving,
* 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";
@@ -75,6 +81,10 @@ public class PasswordSettings extends PreferenceFragmentCompat
public static final String PREF_TRUSTED_VAULT_OPT_IN = "trusted_vault_opt_in";
public static final String PREF_KEY_MANAGE_ACCOUNT_LINK = "manage_account_link";
public static final String PREF_KEY_SECURITY_KEY_LINK = "security_key_link";
+ public static final String PREF_ANDROID_AUTOFILL_SWITCH = "android_autofill_switch";
+
+ private SnackbarManager mSnackbarManager;
+ private Snackbar mSnackbar;
// A PasswordEntryViewer receives a boolean value with this key. If set true, the the entry was
@@ -110,6 +120,7 @@ public class PasswordSettings extends PreferenceFragmentCompat
private Preference mLinkPref;
private Preference mSecurityKey;
private ChromeSwitchPreference mSavePasswordsSwitch;
+ private ChromeSwitchPreference mEnableAndroidAutofillSwitch;
private ChromeSwitchPreference mAutoSignInSwitch;
private ChromeBasePreference mCheckPasswords;
private ChromeBasePreference mTrustedVaultOptIn;
@@ -274,6 +285,7 @@ public class PasswordSettings extends PreferenceFragmentCompat
getPreferenceScreen().removeAll();
if (mSearchQuery == null) {
createSavePasswordsSwitch();
+ createEnableAndroidAutofillSwitch();
createAutoSignInCheckbox();
if (mPasswordCheck != null) {
createCheckPasswords();
@@ -517,6 +529,50 @@ public class PasswordSettings extends PreferenceFragmentCompat
getPrefService().getBoolean(Pref.CREDENTIALS_ENABLE_SERVICE));
}
+ private void createEnableAndroidAutofillSwitch() {
+ if (mSnackbar == null) {
+ mSnackbar = Snackbar.make(getActivity().getString(R.string.ui_relaunch_notice),
+ new SnackbarManager.SnackbarController() {
+ @Override
+ public void onDismissNoAction(Object actionData) { }
+
+ @Override
+ public void onAction(Object actionData) {
+ ApplicationLifetime.terminate(true);
+ }
+ }, Snackbar.TYPE_NOTIFICATION, Snackbar.UMA_UNKNOWN)
+ .setSingleLine(false)
+ .setAction(getActivity().getString(R.string.relaunch),
+ /*actionData*/null)
+ .setDuration(/*durationMs*/70000);
+ }
+
+ mEnableAndroidAutofillSwitch = new ChromeSwitchPreference(getStyledContext(), null);
+ mEnableAndroidAutofillSwitch.setKey(PREF_ANDROID_AUTOFILL_SWITCH);
+ mEnableAndroidAutofillSwitch.setTitle(R.string.enable_android_autofill);
+ mEnableAndroidAutofillSwitch.setOrder(ORDER_SWITCH);
+ mEnableAndroidAutofillSwitch.setSummaryOn(R.string.text_on);
+ mEnableAndroidAutofillSwitch.setSummaryOff(R.string.text_off);
+
+ try (StrictModeContext ignored = StrictModeContext.allowDiskReads()) {
+ getPreferenceScreen().addPreference(mEnableAndroidAutofillSwitch);
+ }
+
+ mEnableAndroidAutofillSwitch.setChecked(
+ getPrefService().getBoolean(Pref.AUTOFILL_ANDROID_ENABLED));
+
+ mEnableAndroidAutofillSwitch.setOnPreferenceChangeListener((preference, newValue) -> {
+ getPrefService().setBoolean(Pref.AUTOFILL_ANDROID_ENABLED, (boolean) newValue);
+ if (!mSnackbarManager.isShowing())
+ mSnackbarManager.showSnackbar(mSnackbar);
+ return true;
+ });
+ }
+
+ public void setSnackbarManager(SnackbarManager manager) {
+ mSnackbarManager = manager;
+ }
+
private void createAutoSignInCheckbox() {
mAutoSignInSwitch = new ChromeSwitchPreference(getStyledContext(), null);
mAutoSignInSwitch.setKey(PREF_AUTOSIGNIN_SWITCH);
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
@@ -72,6 +72,18 @@ import org.chromium.url.GURL;
import java.nio.ByteBuffer;
+import android.os.Build;
+import android.util.SparseArray;
+import org.chromium.base.annotations.VerifiesOnO;
+import org.chromium.ui.base.EventOffsetHandler;
+import android.view.ViewStructure;
+import android.view.autofill.AutofillValue;
+import org.chromium.components.autofill.AutofillProvider;
+import org.chromium.components.autofill.AutofillActionModeCallback;
+import org.chromium.content_public.browser.SelectionPopupController;
+import org.chromium.chrome.browser.preferences.Pref;
+import org.chromium.components.user_prefs.UserPrefs;
+
/**
* Implementation of the interface {@link Tab}. Contains and manages a {@link ContentView}.
* This class is not intended to be extended.
@@ -215,6 +227,8 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
/** Whether or not the user manually changed the user agent. */
private boolean mUserForcedUserAgent;
+ AutofillProvider mAutofillProvider;
+
/**
* Creates an instance of a {@link TabImpl}.
*
@@ -765,6 +779,11 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
for (TabObserver observer : mObservers) observer.onDestroyed(this);
mObservers.clear();
+ if (mAutofillProvider != null) {
+ mAutofillProvider.destroy();
+ mAutofillProvider = null;
+ }
+
mUserDataHost.destroy();
mTabViewManager.destroy();
hideNativePage(false, null);
@@ -1356,6 +1375,16 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
return tabsPtrArray;
}
+ public void onProvideAutofillVirtualStructure(ViewStructure structure, int flags) {
+ if (mAutofillProvider != null)
+ mAutofillProvider.onProvideAutoFillVirtualStructure(structure, flags);
+ }
+
+ public void autofill(final SparseArray<AutofillValue> values) {
+ if (mAutofillProvider != null)
+ mAutofillProvider.autofill(values);
+ }
+
/**
* Initializes the {@link WebContents}. Completes the browser content components initialization
* around a native WebContents pointer.
@@ -1405,6 +1434,19 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
mDelegateFactory.createContextMenuPopulatorFactory(this), this));
mWebContents.notifyRendererPreferenceUpdate();
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O &&
+ UserPrefs.get(Profile.getLastUsedRegularProfile())
+ .getBoolean(Pref.AUTOFILL_ANDROID_ENABLED) == true) {
+ SelectionPopupController selectionController =
+ SelectionPopupController.fromWebContents(mWebContents);
+
+ mAutofillProvider = new AutofillProvider(getContext(), cv, webContents, "bromite");
+ TabImplJni.get().initializeAutofillIfNecessary(mNativeTabAndroid);
+ mAutofillProvider.setWebContents(webContents);
+ cv.setWebContents(webContents);
+ selectionController.setNonSelectionActionModeCallback(
+ new AutofillActionModeCallback(mThemedApplicationContext, mAutofillProvider));
+ }
TabHelpers.initWebContentsHelpers(this);
notifyContentChanged();
} finally {
@@ -1765,5 +1807,6 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
void setActiveNavigationEntryTitleForUrl(long nativeTabAndroid, String url, String title);
void loadOriginalImage(long nativeTabAndroid);
boolean handleNonNavigationAboutURL(GURL url);
+ void initializeAutofillIfNecessary(long nativeTabAndroid);
}
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabViewAndroidDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabViewAndroidDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabViewAndroidDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabViewAndroidDelegate.java
@@ -14,6 +14,10 @@ import org.chromium.content_public.browser.RenderWidgetHostView;
import org.chromium.ui.base.ViewAndroidDelegate;
import org.chromium.ui.base.WindowAndroid;
+import android.util.SparseArray;
+import android.view.autofill.AutofillValue;
+import android.view.ViewStructure;
+
/**
* Implementation of the abstract class {@link ViewAndroidDelegate} for Chrome.
*/
@@ -101,4 +105,14 @@ public class TabViewAndroidDelegate extends ViewAndroidDelegate {
protected int getViewportInsetBottom() {
return mApplicationViewportInsetBottomPx;
}
+
+ @Override
+ public void onProvideAutofillVirtualStructure(ViewStructure structure, int flags) {
+ mTab.onProvideAutofillVirtualStructure(structure, flags);
+ }
+
+ @Override
+ public void autofill(final SparseArray<AutofillValue> values) {
+ mTab.autofill(values);
+ }
}
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -2352,6 +2352,14 @@ static_library("browser") {
"//ui/webui/resources/cr_components/customize_themes:mojom",
"//ui/webui/resources/cr_components/most_visited:mojom",
]
+
+ if (is_android) {
+ deps += [
+ "//components/android_autofill/browser",
+ "//components/android_autofill/browser:android"
+ ]
+ }
+
if (is_chromeos_ash) {
testonly = enable_weston_test
sources += [
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
@@ -65,6 +65,13 @@
#include "url/android/gurl_android.h"
#include "url/gurl.h"
+#include "components/android_autofill/browser/android_autofill_manager.h"
+#include "components/android_autofill/browser/autofill_provider.h"
+#include "components/android_autofill/browser/autofill_provider_android.h"
+#include "components/autofill/content/browser/content_autofill_driver_factory.h"
+#include "chrome/browser/ui/autofill/chrome_autofill_client.h"
+#include "chrome/browser/browser_process.h"
+
using base::android::AttachCurrentThread;
using base::android::ConvertUTF8ToJavaString;
using base::android::JavaParamRef;
@@ -437,3 +444,22 @@ 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);
}
+
+void TabAndroid::InitializeAutofillIfNecessary(JNIEnv* env) {
+ if (!autofill::ContentAutofillDriverFactory::FromWebContents(
+ web_contents_.get())) {
+ content::WebContents* web_contents = web_contents_.get();
+ DCHECK(
+ !autofill::ContentAutofillDriverFactory::FromWebContents(web_contents));
+ DCHECK(autofill::AutofillProvider::FromWebContents(web_contents));
+
+ autofill::ChromeAutofillClient::CreateForWebContents(web_contents);
+
+ autofill::ContentAutofillDriverFactory::CreateForWebContentsAndDelegate(
+ web_contents,
+ autofill::ChromeAutofillClient::FromWebContents(web_contents),
+ g_browser_process->GetApplicationLocale(),
+ autofill::BrowserAutofillManager::DISABLE_AUTOFILL_DOWNLOAD_MANAGER,
+ base::BindRepeating(&autofill::AndroidAutofillManager::Create));
+ }
+}
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
@@ -150,6 +150,8 @@ class TabAndroid : public base::SupportsUserData {
void SetDevToolsAgentHost(scoped_refptr<content::DevToolsAgentHost> host);
+ void InitializeAutofillIfNecessary(JNIEnv* env);
+
private:
JavaObjectWeakGlobalRef weak_java_tab_;
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
@@ -558,6 +558,9 @@ 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>
+ <message name="IDS_ENABLE_ANDROID_AUTOFILL" desc="Title for the checkbox toggling whether enable android autofill or not. [CHAR_LIMIT=32]">
+ Enable native Android autofill
+ </message>
<message name="IDS_PASSWORDS_AUTO_SIGNIN_TITLE" desc="Title for checkbox to enable automatically signing the user in to websites">
Auto Sign-in
</message>
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
@@ -125,6 +125,9 @@
#include "chrome/browser/ui/android/context_menu_helper.h"
#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 "components/android_autofill/browser/android_autofill_manager.h"
+#include "components/android_autofill/browser/autofill_provider.h"
+#include "components/android_autofill/browser/autofill_provider_android.h"
#else
#include "chrome/browser/accuracy_tips/accuracy_service_factory.h"
#include "chrome/browser/banners/app_banner_manager_desktop.h"
@@ -244,7 +247,8 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
web_contents,
autofill::ChromeAutofillClient::FromWebContents(web_contents),
g_browser_process->GetApplicationLocale(),
- autofill::BrowserAutofillManager::ENABLE_AUTOFILL_DOWNLOAD_MANAGER);
+ autofill::BrowserAutofillManager::ENABLE_AUTOFILL_DOWNLOAD_MANAGER,
+ base::BindRepeating(&autofill::AndroidAutofillManager::Create));
chrome_browser_net::NetErrorTabHelper::CreateForWebContents(web_contents);
ChromePasswordManagerClient::CreateForWebContentsWithAutofillClient(
web_contents,
diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/autofill/core/common/autofill_prefs.cc
--- a/components/autofill/core/common/autofill_prefs.cc
+++ b/components/autofill/core/common/autofill_prefs.cc
@@ -135,6 +135,9 @@ const char kAutofillWalletImportStorageCheckboxState[] =
const char kAutocompleteLastVersionRetentionPolicy[] =
"autocomplete.retention_policy_last_version";
+// Boolean that is true to enable native Android Autofill
+const char kAutofillAndroidEnabled[] = "autofill.android_autofill_enabled";
+
void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
// Synced prefs. Used for cross-device choices, e.g., credit card Autofill.
registry->RegisterBooleanPref(
@@ -167,6 +170,8 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(
prefs::kAutofillCreditCardFidoAuthOfferCheckboxState, true);
#endif
+ registry->RegisterBooleanPref(
+ prefs::kAutofillAndroidEnabled, true);
registry->RegisterIntegerPref(
prefs::kAutofillCreditCardSigninPromoImpressionCount, 0);
registry->RegisterBooleanPref(prefs::kAutofillWalletImportEnabled, true);
diff --git a/components/autofill/core/common/autofill_prefs.h b/components/autofill/core/common/autofill_prefs.h
--- a/components/autofill/core/common/autofill_prefs.h
+++ b/components/autofill/core/common/autofill_prefs.h
@@ -48,6 +48,7 @@ extern const char kAutofillUploadEventsLastResetTimestamp[];
extern const char kAutofillWalletImportEnabled[];
extern const char kAutofillWalletImportStorageCheckboxState[];
extern const char kAutocompleteLastVersionRetentionPolicy[];
+extern const char kAutofillAndroidEnabled[];
namespace sync_transport_opt_in {
enum Flags {
diff --git a/components/embedder_support/android/java/src/org/chromium/components/embedder_support/view/ContentView.java b/components/embedder_support/android/java/src/org/chromium/components/embedder_support/view/ContentView.java
--- a/components/embedder_support/android/java/src/org/chromium/components/embedder_support/view/ContentView.java
+++ b/components/embedder_support/android/java/src/org/chromium/components/embedder_support/view/ContentView.java
@@ -36,6 +36,12 @@ import org.chromium.content_public.browser.WebContentsAccessibility;
import org.chromium.ui.base.EventForwarder;
import org.chromium.ui.base.EventOffsetHandler;
+import org.chromium.base.Log;
+import org.chromium.base.annotations.VerifiesOnO;
+import android.util.SparseArray;
+import android.view.autofill.AutofillValue;
+import org.chromium.ui.base.ViewAndroidDelegate;
+
/**
* The containing view for {@link WebContents} that exists in the Android UI hierarchy and exposes
* the various {@link View} functionality to it.
@@ -82,6 +88,8 @@ public class ContentView extends FrameLayout
*/
public static ContentView createContentView(Context context,
@Nullable EventOffsetHandler eventOffsetHandler, @Nullable WebContents webContents) {
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O)
+ return new ContentViewWithAutofill(context, eventOffsetHandler, webContents);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
return new ContentViewApi23(context, eventOffsetHandler, webContents);
}
@@ -549,4 +557,44 @@ public class ContentView extends FrameLayout
if (wcax != null) wcax.onProvideVirtualStructure(structure, false);
}
}
+
+ /**
+ * API level 26 implementation that includes autofill.
+ */
+ @VerifiesOnO
+ public static class ContentViewWithAutofill extends ContentViewApi23 {
+ private ViewAndroidDelegate viewAndroidDelegate;
+
+ private ContentViewWithAutofill(Context context, EventOffsetHandler eventOffsetHandler, WebContents webContents) {
+ super(context, eventOffsetHandler, webContents);
+
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+ // The Autofill system-level infrastructure has heuristics for which Views it considers
+ // important for autofill; only these Views will be queried for their autofill
+ // structure on notifications that a new (virtual) View was entered. By default,
+ // FrameLayout is not considered important for autofill. Thus, for ContentView to be
+ // queried for its autofill structure, we must explicitly inform the autofill system
+ // that this View is important for autofill.
+ setImportantForAutofill(View.IMPORTANT_FOR_AUTOFILL_YES);
+ }
+ }
+
+ @Override
+ public void setWebContents(WebContents webContents) {
+ viewAndroidDelegate = webContents.getViewAndroidDelegate();
+ super.setWebContents(webContents);
+ }
+
+ @Override
+ public void onProvideAutofillVirtualStructure(ViewStructure structure, int flags) {
+ if (viewAndroidDelegate != null)
+ viewAndroidDelegate.onProvideAutofillVirtualStructure(structure, flags);
+ }
+
+ @Override
+ public void autofill(final SparseArray<AutofillValue> values) {
+ if (viewAndroidDelegate != null)
+ viewAndroidDelegate.autofill(values);
+ }
+ }
}
diff --git a/ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java b/ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java
--- a/ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java
+++ b/ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java
@@ -26,6 +26,10 @@ import org.chromium.base.annotations.JNINamespace;
import org.chromium.base.compat.ApiHelperForN;
import org.chromium.ui.mojom.CursorType;
+import android.util.SparseArray;
+import android.view.autofill.AutofillValue;
+import android.view.ViewStructure;
+
/**
* Class to acquire, position, and remove anchor views from the implementing View.
*/
@@ -488,4 +492,8 @@ public class ViewAndroidDelegate {
protected int[] getDisplayFeature() {
return null;
}
+
+ public void onProvideAutofillVirtualStructure(ViewStructure structure, int flags) {}
+
+ public void autofill(final SparseArray<AutofillValue> values) {}
}
--
2.17.1

View file

@ -11,7 +11,7 @@ Unexpire #darken-websites-checkbox-in-themes-setting
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -903,7 +903,7 @@
@@ -941,7 +941,7 @@
{
"name": "darken-websites-checkbox-in-themes-setting",
"owners": [ "lazzzis@google.com", "twellington" ],
@ -23,7 +23,7 @@ diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.js
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -560,7 +560,7 @@ const base::Feature kContextualSearchTranslations{
@@ -561,7 +561,7 @@ const base::Feature kContextualSearchTranslations{
"ContextualSearchTranslations", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kDarkenWebsitesCheckboxInThemesSetting{
@ -33,5 +33,5 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
const base::Feature kQuickActionSearchWidgetAndroidDinoVariant{
"QuickActionSearchWidgetAndroidDinoVariant",
--
2.17.1
2.20.1

View file

@ -42,7 +42,7 @@ Excerpt from https://github.com/bromite/bromite/issues/226
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -349,6 +349,10 @@ config("compiler") {
@@ -350,6 +350,10 @@ config("compiler") {
}
}
@ -54,5 +54,5 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
if (fatal_linker_warnings && !is_apple && current_os != "aix") {
ldflags += [ "-Wl,--fatal-warnings" ]
--
2.17.1
2.20.1

View file

@ -28,7 +28,7 @@ See also: https://github.com/bromite/bromite/issues/547
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -410,6 +410,7 @@ android_library("chrome_java") {
@@ -414,6 +414,7 @@ android_library("chrome_java") {
"//chrome/browser/xsurface:java",
"//components/autofill/android:autofill_java",
"//components/autofill_assistant/browser:proto_java",
@ -140,7 +140,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/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
@@ -72,6 +72,18 @@ import org.chromium.url.GURL;
@@ -74,6 +74,18 @@ import org.chromium.url.GURL;
import java.nio.ByteBuffer;
@ -159,7 +159,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 +227,8 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -217,6 +229,8 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
/** Whether or not the user manually changed the user agent. */
private boolean mUserForcedUserAgent;
@ -168,7 +168,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
/**
* Creates an instance of a {@link TabImpl}.
*
@@ -765,6 +779,11 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -767,6 +781,11 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
for (TabObserver observer : mObservers) observer.onDestroyed(this);
mObservers.clear();
@ -180,7 +180,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
mUserDataHost.destroy();
mTabViewManager.destroy();
hideNativePage(false, null);
@@ -1356,6 +1375,16 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -1358,6 +1377,16 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
return tabsPtrArray;
}
@ -197,7 +197,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.
@@ -1405,6 +1434,19 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -1407,6 +1436,19 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
mDelegateFactory.createContextMenuPopulatorFactory(this), this));
mWebContents.notifyRendererPreferenceUpdate();
@ -217,7 +217,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
TabHelpers.initWebContentsHelpers(this);
notifyContentChanged();
} finally {
@@ -1765,5 +1807,6 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
@@ -1769,5 +1811,6 @@ public class TabImpl implements Tab, TabObscuringHandler.Observer {
void setActiveNavigationEntryTitleForUrl(long nativeTabAndroid, String url, String title);
void loadOriginalImage(long nativeTabAndroid);
boolean handleNonNavigationAboutURL(GURL url);
@ -256,9 +256,9 @@ 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
@@ -2352,6 +2352,14 @@ static_library("browser") {
"//ui/webui/resources/cr_components/customize_themes:mojom",
@@ -2376,6 +2376,14 @@ static_library("browser") {
"//ui/webui/resources/cr_components/most_visited:mojom",
"//ui/webui/resources/js/browser_command:mojo_bindings",
]
+
+ if (is_android) {
@ -326,7 +326,7 @@ diff --git a/chrome/browser/android/tab_android.h b/chrome/browser/android/tab_a
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
@@ -558,6 +558,9 @@ CHAR_LIMIT guidelines:
@@ -555,6 +555,9 @@ 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>
@ -339,7 +339,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
@@ -125,6 +125,9 @@
@@ -126,6 +126,9 @@
#include "chrome/browser/ui/android/context_menu_helper.h"
#include "chrome/browser/ui/javascript_dialogs/javascript_tab_modal_dialog_manager_delegate_android.h"
#include "chrome/browser/video_tutorials/video_tutorial_tab_helper.h"
@ -349,7 +349,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"
@@ -244,7 +247,8 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
@@ -245,7 +248,8 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
web_contents,
autofill::ChromeAutofillClient::FromWebContents(web_contents),
g_browser_process->GetApplicationLocale(),
@ -362,7 +362,7 @@ diff --git a/chrome/browser/ui/tab_helpers.cc b/chrome/browser/ui/tab_helpers.cc
diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/autofill/core/common/autofill_prefs.cc
--- a/components/autofill/core/common/autofill_prefs.cc
+++ b/components/autofill/core/common/autofill_prefs.cc
@@ -135,6 +135,9 @@ const char kAutofillWalletImportStorageCheckboxState[] =
@@ -128,6 +128,9 @@ const char kAutofillWalletImportStorageCheckboxState[] =
const char kAutocompleteLastVersionRetentionPolicy[] =
"autocomplete.retention_policy_last_version";
@ -372,7 +372,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto
void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
// Synced prefs. Used for cross-device choices, e.g., credit card Autofill.
registry->RegisterBooleanPref(
@@ -167,6 +170,8 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
@@ -160,6 +163,8 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(
prefs::kAutofillCreditCardFidoAuthOfferCheckboxState, true);
#endif
@ -384,7 +384,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto
diff --git a/components/autofill/core/common/autofill_prefs.h b/components/autofill/core/common/autofill_prefs.h
--- a/components/autofill/core/common/autofill_prefs.h
+++ b/components/autofill/core/common/autofill_prefs.h
@@ -48,6 +48,7 @@ extern const char kAutofillUploadEventsLastResetTimestamp[];
@@ -47,6 +47,7 @@ extern const char kAutofillUploadEventsLastResetTimestamp[];
extern const char kAutofillWalletImportEnabled[];
extern const char kAutofillWalletImportStorageCheckboxState[];
extern const char kAutocompleteLastVersionRetentionPolicy[];
@ -486,5 +486,5 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/ViewAndroidDelegate.java b
+ public void autofill(final SparseArray<AutofillValue> values) {}
}
--
2.17.1
2.20.1

View file

@ -13,8 +13,8 @@ PartitionNelAndReportingByNetworkIsolationKey
diff --git a/net/base/features.cc b/net/base/features.cc
--- a/net/base/features.cc
+++ b/net/base/features.cc
@@ -93,30 +93,30 @@ const base::Feature kNetworkQualityEstimator{"NetworkQualityEstimator",
base::FEATURE_DISABLED_BY_DEFAULT};
@@ -96,30 +96,30 @@ const base::Feature kSplitCacheByIncludeCredentials{
"SplitCacheByIncludeCredentials", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kSplitCacheByNetworkIsolationKey{
- "SplitCacheByNetworkIsolationKey", base::FEATURE_DISABLED_BY_DEFAULT};
@ -52,5 +52,5 @@ diff --git a/net/base/features.cc b/net/base/features.cc
const base::Feature kExpectCTPruning{"ExpectCTPruning",
base::FEATURE_ENABLED_BY_DEFAULT};
--
2.17.1
2.20.1

View file

@ -9,7 +9,7 @@ Subject: Enable prefetch-privacy-changes by default
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -399,7 +399,7 @@ const base::Feature kComputePressure{"ComputePressure",
@@ -408,7 +408,7 @@ const base::Feature kComputePressure{"ComputePressure",
// Prefetch request properties are updated to be privacy-preserving. See
// crbug.com/988956.
const base::Feature kPrefetchPrivacyChanges{"PrefetchPrivacyChanges",
@ -19,5 +19,5 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
// Decodes jpeg 4:2:0 formatted images to YUV instead of RGBX and stores in this
// format in the image decode cache. See crbug.com/919627 for details on the
--
2.17.1
2.20.1

View file

@ -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
@@ -1053,6 +1053,7 @@ chrome_java_sources = [
@@ -1052,6 +1052,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",
@ -171,9 +171,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessIni
import org.chromium.chrome.browser.sharing.shared_clipboard.SharedClipboardShareActivity;
+import org.chromium.chrome.browser.sharing.shared_intent.SharedIntentShareActivity;
import org.chromium.chrome.browser.tab.state.ShoppingPersistedTabData;
import org.chromium.chrome.browser.ui.searchactivityutils.SearchActivityPreferencesManager;
import org.chromium.chrome.browser.util.AfterStartupTaskUtils;
import org.chromium.chrome.browser.webapps.WebApkVersionManager;
@@ -405,6 +406,8 @@ public class ProcessInitializationHandler {
@@ -397,6 +398,8 @@ public class ProcessInitializationHandler {
deferredStartupHandler.addDeferredTask(
() -> IncognitoTabLauncher.updateComponentEnabledState());
@ -304,7 +304,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
@@ -5402,6 +5402,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -5637,6 +5637,10 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(sharing_hub::kDesktopScreenshots)},
#endif
@ -318,7 +318,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
@@ -2275,6 +2275,11 @@ const char kSharingDesktopScreenshotsDescription[] =
@@ -2319,6 +2319,11 @@ const char kSharingDesktopScreenshotsDescription[] =
"Enables taking"
" screenshots from the desktop sharing hub.";
@ -333,7 +333,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
@@ -1307,6 +1307,9 @@ extern const char kSharedClipboardUIDescription[];
@@ -1336,6 +1336,9 @@ extern const char kSharedClipboardUIDescription[];
extern const char kSharingDesktopScreenshotsName[];
extern const char kSharingDesktopScreenshotsDescription[];
@ -346,7 +346,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -256,6 +256,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -258,6 +258,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kServiceManagerForDownload,
&kShareButtonInTopToolbar,
&kSharedClipboardUI,
@ -354,7 +354,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
&kSharingHubLinkToggle,
&kSingleTouchSelect,
&kSpannableInlineAutocomplete,
@@ -640,6 +641,9 @@ const base::Feature kSearchEnginePromoExistingDevice{
@@ -644,6 +645,9 @@ const base::Feature kSearchEnginePromoExistingDevice{
const base::Feature kSearchEnginePromoNewDevice{
"SearchEnginePromo.NewDevice", base::FEATURE_ENABLED_BY_DEFAULT};
@ -378,7 +378,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
@@ -495,6 +495,7 @@ public abstract class ChromeFeatureList {
@@ -481,6 +481,7 @@ public abstract class ChromeFeatureList {
public static final String SHARE_USAGE_RANKING = "ShareUsageRanking";
public static final String SHARE_USAGE_RANKING_FIXED_MORE = "ShareUsageRankingFixedMore";
public static final String SHARED_CLIPBOARD_UI = "SharedClipboardUI";
@ -389,7 +389,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -4459,6 +4459,19 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4518,6 +4518,19 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
Send text to Your Devices
</message>
@ -410,5 +410,5 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<message name="IDS_SMS_FETCHER_NOTIFICATION_TITLE" desc="Title text shown when the Android Chrome receives a ONE_TIME_CODE from an incoming SMS and ask users for permission to submit the code to their linked Desktop Chrome">
Submit <ph name="ONE_TIME_CODE">%1$s<ex>123</ex></ph> on <ph name="CLIENT_NAME">%2$s<ex>Zoe's Macbook</ex></ph>?
--
2.17.1
2.20.1

View file

@ -9,7 +9,7 @@ Subject: Enable user-agent freeze by default
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -77,7 +77,7 @@ const base::Feature kFreezePurgeMemoryAllPagesFrozen{
@@ -81,7 +81,7 @@ const base::Feature kFreezePurgeMemoryAllPagesFrozen{
// Freezes the user-agent as part of https://github.com/WICG/ua-client-hints.
const base::Feature kReduceUserAgent{"ReduceUserAgent",
@ -19,5 +19,5 @@ diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/fea
// Enables the frequency capping for detecting overlay popups. Overlay-popups
// are the interstitials that pop up and block the main content of the page.
--
2.17.1
2.20.1

View file

@ -236,7 +236,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
}
if (enable_vr) {
@@ -513,6 +517,7 @@ android_library("chrome_java") {
@@ -517,6 +521,7 @@ android_library("chrome_java") {
"//components/ukm/android:java",
"//components/url_formatter/android:url_formatter_java",
"//components/user_prefs/android:java",
@ -262,7 +262,7 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
@@ -63,6 +63,7 @@ import org.chromium.content_public.browser.BrowserStartupController;
@@ -68,6 +68,7 @@ import org.chromium.content_public.browser.BrowserStartupController;
import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.widget.Toast;
@ -270,7 +270,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
import java.io.File;
@@ -414,6 +415,11 @@ public class DownloadUtils {
@@ -419,6 +420,11 @@ public class DownloadUtils {
public static boolean openFile(String filePath, String mimeType, String downloadGuid,
OTRProfileID otrProfileID, String originalUrl, String referrer,
@DownloadOpenSource int source, Context context) {
@ -285,7 +285,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessInitializationHandler.java
@@ -113,6 +113,8 @@ import java.util.Date;
@@ -111,6 +111,8 @@ import java.util.Date;
import java.util.List;
import java.util.Locale;
@ -294,7 +294,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ProcessIni
/**
* Handles the initialization dependences of the browser process. This is meant to handle the
* initialization that is not tied to any particular Activity, and the logic that should only be
@@ -293,6 +295,7 @@ public class ProcessInitializationHandler {
@@ -285,6 +287,7 @@ public class ProcessInitializationHandler {
DefaultBrowserInfo.initBrowserFetcher();
@ -313,7 +313,7 @@ diff --git a/chrome/android/java_sources.gni b/chrome/android/java_sources.gni
chrome_java_sources += public_autofill_assistant_java_sources
@@ -59,3 +60,5 @@ if (enable_arcore) {
@@ -60,3 +61,5 @@ if (enable_arcore) {
"java/src/org/chromium/chrome/browser/vr/ArDelegateImpl.java",
]
}
@ -322,7 +322,7 @@ diff --git a/chrome/android/java_sources.gni b/chrome/android/java_sources.gni
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -3410,6 +3410,11 @@ static_library("browser") {
@@ -3454,6 +3454,11 @@ static_library("browser") {
]
deps += [ "//chrome/android/modules/dev_ui/provider:native" ]
}
@ -337,7 +337,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
@@ -141,6 +141,7 @@
@@ -147,6 +147,7 @@
#include "components/translate/core/browser/translate_ranker_impl.h"
#include "components/translate/core/common/translate_util.h"
#include "components/ui_devtools/switches.h"
@ -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"
@@ -6386,6 +6387,10 @@ const FeatureEntry kFeatureEntries[] = {
@@ -6591,6 +6592,10 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kUserDataSnapshot)},
#endif
@ -359,7 +359,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
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
@@ -4475,7 +4475,8 @@ ChromeContentBrowserClient::CreateURLLoaderThrottles(
@@ -4480,7 +4480,8 @@ ChromeContentBrowserClient::CreateURLLoaderThrottles(
chrome::mojom::DynamicParams dynamic_params = {
profile->GetPrefs()->GetBoolean(prefs::kForceGoogleSafeSearch),
profile->GetPrefs()->GetInteger(prefs::kForceYouTubeRestrict),
@ -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
@@ -5249,6 +5249,11 @@ const char kUserDataSnapshotDescription[] =
@@ -5358,6 +5358,11 @@ const char kUserDataSnapshotDescription[] =
"update and restoring them after a version rollback.";
#endif // !defined(OS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
@ -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
@@ -3052,6 +3052,9 @@ extern const char kUserDataSnapshotName[];
@@ -3125,6 +3125,9 @@ extern const char kUserDataSnapshotName[];
extern const char kUserDataSnapshotDescription[];
#endif // !defined(OS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
@ -406,9 +406,9 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
#include "components/query_tiles/tile_service_prefs.h"
+#include "components/user_scripts/browser/user_script_prefs.h"
#else // defined(OS_ANDROID)
#include "chrome/browser/accessibility/live_caption_controller.h"
#include "chrome/browser/cart/cart_service.h"
@@ -1148,6 +1149,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
#include "chrome/browser/device_api/device_service_impl.h"
@@ -1177,6 +1178,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
translate::TranslatePrefs::RegisterProfilePrefs(registry);
omnibox::RegisterProfilePrefs(registry);
ZeroSuggestProvider::RegisterProfilePrefs(registry);
@ -430,7 +430,7 @@ diff --git a/chrome/browser/profiles/BUILD.gn b/chrome/browser/profiles/BUILD.gn
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
@@ -212,6 +212,8 @@
@@ -214,6 +214,8 @@
#include "chrome/browser/ui/cocoa/screentime/screentime_features.h"
#endif
@ -439,7 +439,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
namespace chrome {
void AddProfilesExtraParts(ChromeBrowserMainParts* main_parts) {
@@ -503,6 +505,7 @@ void ChromeBrowserMainExtraPartsProfiles::
@@ -506,6 +508,7 @@ void ChromeBrowserMainExtraPartsProfiles::
#endif
WebDataServiceFactory::GetInstance();
webrtc_event_logging::WebRtcEventLogManagerKeyedServiceFactory::GetInstance();
@ -450,7 +450,7 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profiles/profile_manager.cc
--- a/chrome/browser/profiles/profile_manager.cc
+++ b/chrome/browser/profiles/profile_manager.cc
@@ -113,6 +113,8 @@
@@ -114,6 +114,8 @@
#include "extensions/common/manifest.h"
#endif
@ -459,7 +459,7 @@ diff --git a/chrome/browser/profiles/profile_manager.cc b/chrome/browser/profile
#if BUILDFLAG(ENABLE_SESSION_SERVICE)
#include "chrome/browser/sessions/session_service_factory.h"
#endif
@@ -1512,6 +1514,13 @@ void ProfileManager::DoFinalInitForServices(Profile* profile,
@@ -1522,6 +1524,13 @@ void ProfileManager::DoFinalInitForServices(Profile* profile,
}
#endif
@ -504,7 +504,7 @@ diff --git a/chrome/browser/profiles/renderer_updater.cc b/chrome/browser/profil
}
RendererUpdater::~RendererUpdater() {
@@ -223,5 +230,6 @@ void RendererUpdater::UpdateRenderer(
@@ -237,5 +244,6 @@ void RendererUpdater::UpdateRenderer(
->SetConfiguration(chrome::mojom::DynamicParams::New(
force_google_safesearch_.GetValue(),
force_youtube_restrict_.GetValue(),
@ -534,7 +534,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom
#include "content/public/browser/web_contents.h"
#include "content/public/browser/web_ui.h"
#include "content/public/common/content_client.h"
@@ -650,6 +651,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
@@ -669,6 +670,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
return &NewWebUI<UserActionsUI>;
if (url.host_piece() == chrome::kChromeUIVersionHost)
return &NewWebUI<VersionUI>;
@ -542,7 +542,7 @@ diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrom
+ return &NewWebUI<user_scripts::UserScriptsUI>;
#if !defined(OS_ANDROID)
#if !BUILDFLAG(IS_CHROMEOS_ASH)
#if !defined(OS_CHROMEOS)
diff --git a/chrome/chrome_paks.gni b/chrome/chrome_paks.gni
--- a/chrome/chrome_paks.gni
+++ b/chrome/chrome_paks.gni
@ -597,7 +597,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer
using autofill::AutofillAgent;
using autofill::AutofillAssistantAgent;
using autofill::PasswordAutofillAgent;
@@ -405,6 +408,12 @@ void ChromeContentRendererClient::RenderThreadStarted() {
@@ -416,6 +419,12 @@ void ChromeContentRendererClient::RenderThreadStarted() {
WebString::FromASCII(extensions::kExtensionScheme));
#endif
@ -610,7 +610,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer
#if BUILDFLAG(ENABLE_SPELLCHECK)
if (!spellcheck_)
InitSpellCheck();
@@ -541,6 +550,13 @@ void ChromeContentRendererClient::RenderFrameCreated(
@@ -552,6 +561,13 @@ void ChromeContentRendererClient::RenderFrameCreated(
render_frame, registry);
#endif
@ -624,7 +624,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer
#if BUILDFLAG(ENABLE_PLUGINS)
new PepperHelper(render_frame);
#endif
@@ -1533,7 +1549,14 @@ void ChromeContentRendererClient::RunScriptsAtDocumentStart(
@@ -1549,7 +1565,14 @@ void ChromeContentRendererClient::RunScriptsAtDocumentStart(
ChromeExtensionsRendererClient::GetInstance()->RunScriptsAtDocumentStart(
render_frame);
// |render_frame| might be dead by now.
@ -639,7 +639,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer
}
void ChromeContentRendererClient::RunScriptsAtDocumentEnd(
@@ -1542,7 +1565,14 @@ void ChromeContentRendererClient::RunScriptsAtDocumentEnd(
@@ -1558,7 +1581,14 @@ void ChromeContentRendererClient::RunScriptsAtDocumentEnd(
ChromeExtensionsRendererClient::GetInstance()->RunScriptsAtDocumentEnd(
render_frame);
// |render_frame| might be dead by now.
@ -654,7 +654,7 @@ diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer
}
void ChromeContentRendererClient::RunScriptsAtDocumentIdle(
@@ -1551,7 +1581,14 @@ void ChromeContentRendererClient::RunScriptsAtDocumentIdle(
@@ -1567,7 +1597,14 @@ void ChromeContentRendererClient::RunScriptsAtDocumentIdle(
ChromeExtensionsRendererClient::GetInstance()->RunScriptsAtDocumentIdle(
render_frame);
// |render_frame| might be dead by now.
@ -692,7 +692,7 @@ diff --git a/chrome/renderer/chrome_render_thread_observer.cc b/chrome/renderer/
diff --git a/components/components_strings.grd b/components/components_strings.grd
--- a/components/components_strings.grd
+++ b/components/components_strings.grd
@@ -334,6 +334,7 @@
@@ -335,6 +335,7 @@
<part file="undo_strings.grdp" />
<part file="version_ui_strings.grdp" />
<part file="webapps_strings.grdp" />
@ -1919,7 +1919,7 @@ new file mode 100644
+ window.showIntent(fileSelector,
+ new WindowAndroid.IntentCallback() {
+ @Override
+ public void onIntentCompleted(WindowAndroid window, int resultCode, Intent data) {
+ public void onIntentCompleted(int resultCode, Intent data) {
+ if (data == null) return;
+ Uri filePath = data.getData();
+ TryToInstall(context, filePath.toString());
@ -2118,7 +2118,7 @@ new file mode 100755
+ @Override
+ public void onActivityResult(int requestCode, int resultCode, Intent data) {
+ // handle picker callback from SelectFileDialog
+ mWindowAndroid.getIntentRequestTracker().onActivityResult(requestCode, resultCode, data, mWindowAndroid);
+ mWindowAndroid.getIntentRequestTracker().onActivityResult(requestCode, resultCode, data);
+ }
+
+ public void onHelpAndFeebackPressed() {
@ -2689,7 +2689,7 @@ new file mode 100644
+ void RegisterMessages() override;
+
+ private:
+ void HandleRequestSource(const base::ListValue* args);
+ void HandleRequestSource(base::Value::ConstListView args);
+ void OnScriptsLoaded(
+ const std::string callback_id,
+ const std::string script_key,
@ -2716,13 +2716,13 @@ new file mode 100644
+ base::Unretained(this)));
+}
+
+void UserScriptsUIHandler::HandleRequestSource(const base::ListValue* args) {
+void UserScriptsUIHandler::HandleRequestSource(base::Value::ConstListView args) {
+ AllowJavascript();
+ std::string callback_id;
+ CHECK(args->GetString(0, &callback_id));
+ if (args.size() < 2) return;
+
+ std::string script_key;
+ if (args->GetString(1, &script_key) == false) {
+ std::string callback_id = args[0].GetString();
+ std::string script_key = args[1].GetString();
+ if (script_key.empty()) {
+ std::string json = "Missing key value.";
+ ResolveJavascriptCallback(base::Value(callback_id), base::Value(json));
+ return;
@ -2785,7 +2785,6 @@ new file mode 100644
+}
+
+}
\ No newline at end of file
diff --git a/components/user_scripts/browser/ui/user_scripts_ui.h b/components/user_scripts/browser/ui/user_scripts_ui.h
new file mode 100644
--- /dev/null
@ -6246,7 +6245,7 @@ new file mode 100755
+ bool allow_file_access,
+ std::string* error) {
+ std::vector<std::string> patterns;
+ for (size_t i = 0; i < value.GetSize(); ++i) {
+ for (size_t i = 0; i < value.GetList().size(); ++i) {
+ std::string item;
+ if (!value.GetString(i, &item))
+ return false;
@ -8725,7 +8724,7 @@ new file mode 100755
+ void DidCreateNewDocument() override;
+ void DidCreateDocumentElement() override;
+ void DidFailProvisionalLoad() override;
+ void DidFinishDocumentLoad() override;
+ void DidDispatchDOMContentLoadedEvent() override;
+ void WillDetach() override;
+ void OnDestruct() override;
+ void OnStop() override;
@ -8817,9 +8816,9 @@ new file mode 100755
+ }
+}
+
+void ScriptInjectionManager::RFOHelper::DidFinishDocumentLoad() {
+void ScriptInjectionManager::RFOHelper::DidDispatchDOMContentLoadedEvent() {
+ if (base::FeatureList::IsEnabled(features::kEnableLoggingUserScripts))
+ LOG(INFO) << "UserScripts: DidFinishDocumentLoad -> DOCUMENT_END";
+ LOG(INFO) << "UserScripts: DidDispatchDOMContentLoadedEvent -> DOCUMENT_END";
+
+ DCHECK(content::RenderThread::Get());
+ ExtensionFrameHelper::Get(render_frame())
@ -8828,7 +8827,7 @@ new file mode 100755
+ weak_factory_.GetWeakPtr(), UserScript::DOCUMENT_END));
+
+ // We try to run idle in two places: a delayed task here and in response to
+ // ContentRendererClient::RunScriptsAtDocumentIdle(). DidFinishDocumentLoad()
+ // ContentRendererClient::RunScriptsAtDocumentIdle(). DidDispatchDOMContentLoadedEvent()
+ // corresponds to completing the document's load, whereas
+ // RunScriptsAtDocumentIdle() corresponds to completing the document and all
+ // subresources' load (but before the window.onload event). We don't want to
@ -10623,7 +10622,7 @@ new file mode 100755
diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_ids.spec
--- a/tools/gritsettings/resource_ids.spec
+++ b/tools/gritsettings/resource_ids.spec
@@ -556,6 +556,12 @@
@@ -567,6 +567,12 @@
"components/autofill/core/browser/autofill_address_rewriter_resources.grd":{
"includes": [2880]
},
@ -10637,5 +10636,5 @@ diff --git a/tools/gritsettings/resource_ids.spec b/tools/gritsettings/resource_
# START ios/ section.
--
2.17.1
2.20.1

View file

@ -0,0 +1,40 @@
From: Allen Luce <allen.luce@prometheanworld.com>
Date: Thu, 18 Nov 2021 21:37:04 +0000
Subject: [PATCH] Force package name to org.chromium.chrome
This is so the package will match the list set in the core OS that
determines window settings:
https://gerrit-hk.waq.be/plugins/gitiles/AP9/platform/frameworks/base/+/refs/heads/master/core/res/res/values/config.xml#31
At some point this method should be changed to instead allow the
AndroidManifest.xml to determine the windowing state of the app.
Done for AP9-2571
---
chrome/android/BUILD.gn | 9 ---------
1 file changed, 9 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
index 62fea240ee53d..6387769c4a3ad 100644
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -45,15 +45,6 @@ if (android_64bit_target_cpu && skip_secondary_abi_for_cq) {
}
_default_package = "org.chromium.chrome"
-if (android_channel != "default") {
- # android-binary-size trybot may checks if an internal Chrome variant's
- # AndroidManifest is as expected by ensuring the differences between its
- # AndroidManifest and its upstream target's .AndroidManifest.expected file
- # are as expected. Upstream targets having a "org.chromium.chrome" package
- # name will cause the comparison to output many unnecessary differences.
- # See https://source.chromium.org/chromium/chromium/src/+/main:chrome/android/java/README.md
- _default_package += "." + android_channel
-}
declare_args() {
# Android package name to use when compiling the public chrome targets
--
2.17.1

View file

@ -19,5 +19,5 @@ diff --git a/storage/browser/quota/quota_settings.cc b/storage/browser/quota/quo
// Skews |value| by +/- |percent|.
int64_t RandomizeByPercent(int64_t value, int percent) {
--
2.17.1
2.20.1

View file

@ -28,5 +28,5 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/password_manage
PreferenceCategory profileCategory = new PreferenceCategory(getStyledContext());
profileCategory.setKey(PREF_KEY_CATEGORY_EXCEPTIONS);
--
2.17.1
2.20.1

View file

@ -19,5 +19,5 @@ diff --git a/chrome/android/java/res/layout/fre_tosanduma.xml b/chrome/android/j
<include
--
2.17.1
2.20.1

View file

@ -21,5 +21,5 @@ diff --git a/chrome/browser/enterprise/util/android/java/src/org/chromium/chrome
if (mOwnedState != null) {
mHandler.post(() -> callback.onResult(mOwnedState));
--
2.17.1
2.20.1

View file

@ -46,5 +46,5 @@ diff --git a/components/omnibox/browser/omnibox_field_trial.cc b/components/omni
return default_max_matches_per_provider;
}
--
2.17.1
2.20.1

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
@@ -274,6 +274,7 @@
@@ -275,6 +275,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"
@ -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();
@@ -6536,6 +6539,61 @@ void Document::setAllowDeclarativeShadowRoots(bool val) {
@@ -6532,6 +6535,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);
@@ -6591,6 +6649,10 @@ void Document::FinishedParsing() {
@@ -6587,6 +6645,10 @@ void Document::FinishedParsing() {
if (frame->GetFrameScheduler())
frame->GetFrameScheduler()->OnDomContentLoaded();
@ -126,7 +126,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/renderer/core/dom/document.h
--- a/third_party/blink/renderer/core/dom/document.h
+++ b/third_party/blink/renderer/core/dom/document.h
@@ -1746,6 +1746,9 @@ class CORE_EXPORT Document : public ContainerNode,
@@ -1772,6 +1772,9 @@ class CORE_EXPORT Document : public ContainerNode,
void AddAXContext(AXContext*);
void RemoveAXContext(AXContext*);
@ -161,7 +161,7 @@ new file mode 100644
diff --git a/third_party/blink/renderer/core/html/html_script_element.cc b/third_party/blink/renderer/core/html/html_script_element.cc
--- a/third_party/blink/renderer/core/html/html_script_element.cc
+++ b/third_party/blink/renderer/core/html/html_script_element.cc
@@ -168,6 +168,11 @@ void HTMLScriptElement::setTextContent(const String& string) {
@@ -169,6 +169,11 @@ void HTMLScriptElement::setTextContent(const String& string) {
script_text_internal_slot_ = ParkableString(string.Impl());
}
@ -176,7 +176,7 @@ diff --git a/third_party/blink/renderer/core/html/html_script_element.cc b/third
diff --git a/third_party/blink/renderer/core/html/html_script_element.h b/third_party/blink/renderer/core/html/html_script_element.h
--- a/third_party/blink/renderer/core/html/html_script_element.h
+++ b/third_party/blink/renderer/core/html/html_script_element.h
@@ -56,6 +56,7 @@ class CORE_EXPORT HTMLScriptElement final : public HTMLElement,
@@ -59,6 +59,7 @@ class CORE_EXPORT HTMLScriptElement final : public HTMLElement,
void setTextContentForBinding(const V8UnionStringOrTrustedScript* value,
ExceptionState& exception_state) override;
void setTextContent(const String&) override;
@ -185,5 +185,5 @@ diff --git a/third_party/blink/renderer/core/html/html_script_element.h b/third_
void setAsync(bool);
bool async() const;
--
2.17.1
2.20.1

View file

@ -13,7 +13,7 @@ Subject: JIT-less toggle
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -28,6 +28,11 @@
@@ -32,6 +32,11 @@
android:title="@string/preload_pages_title"
android:summary="@string/preload_pages_summary"
android:persistent="false"/>
@ -36,15 +36,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
import android.os.Build;
import android.content.SharedPreferences;
import android.os.Bundle;
@@ -71,6 +72,7 @@ public class PrivacySettings
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";
@@ -79,6 +80,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 static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
@@ -201,6 +203,10 @@ public class PrivacySettings
private ChromeSwitchPreference mSearchSuggestions;
private @Nullable ChromeSwitchPreference mAutofillAssistant;
private @Nullable Preference mContextualSearch;
@@ -200,6 +202,10 @@ public class PrivacySettings
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
prefService.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
@ -55,7 +55,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
} else if (PREF_AUTOFILL_ASSISTANT.equals(key)) {
mSharedPreferencesManager.writeBoolean(
ChromePreferenceKeys.AUTOFILL_ASSISTANT_ENABLED, (boolean) newValue);
@@ -280,6 +286,12 @@ public class PrivacySettings
@@ -279,6 +285,12 @@ public class PrivacySettings
historyInIncognitoPref.setChecked(
prefService.getBoolean(Pref.INCOGNITO_TAB_HISTORY_ENABLED));
}
@ -71,7 +71,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
@@ -929,6 +929,13 @@ Privacy Sandbox trials are still in active development and are available in sele
@@ -944,6 +944,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>
@ -118,5 +118,5 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/Device
+ }
}
--
2.17.1
2.20.1

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