Compare commits

...
11 Commits
Author SHA1 Message Date
Carmelo Messina b7acca2470 v109 2023-01-06 15:39:07 +01:00
Carmelo Messina 1d38ff41ec v108 2022-12-18 21:08:10 +01:00
Carmelo Messina 2316e737ad v107 2022-11-14 15:00:34 +01:00
Carmelo Messina 5a5169ec88 first version 2022-09-29 13:36:34 +02:00
csagan5 a9fa3ee3a7 Fix some typos in CHANGELOG 2022-09-28 22:24:33 +02:00
csagan5 992d7ba767 Release 105.0.5195.147 2022-09-28 22:22:16 +02:00
8dcef19700 Remove http referrals in cross origin navigation (#2343)
* Remove http referrals in cross origin navigation

* Update build/patches/Remove-http-referrals-in-cross-origin-navigation.patch

Co-authored-by: Carl <32685696+csagan5@users.noreply.github.com>

* Update patch description

Co-authored-by: Carmelo Messina <uazo@users.noreply.github.com>
Co-authored-by: Carl <32685696+csagan5@users.noreply.github.com>
2022-09-28 01:28:03 +02:00
ebb00aec78 fixed injection with back-forward cache enabled (#2334)
Co-authored-by: Carmelo Messina <uazo@users.noreply.github.com>
2022-09-28 01:23:30 +02:00
csagan5 42b1cc902b Remove incorrect information about site-engagement flag 2022-09-27 23:42:12 +02:00
1910dad049 Partition blobs by top frame url (#2338)
Co-authored-by: Carmelo Messina <uazo@users.noreply.github.com>
2022-09-27 23:38:13 +02:00
87d3ef70eb Uses the first of the accept-languages as the system language for blink (#2311)
and fix the selection in the UI for the browser language

Co-authored-by: Carmelo Messina <uazo@users.noreply.github.com>
2022-09-27 23:37:41 +02:00
30 changed files with 170158 additions and 100 deletions
+9
View File
@@ -1,3 +1,12 @@
# 105.0.5195.147
* enable HEVC by default (fixes https://github.com/bromite/bromite/issues/2331)
* partition blobs by top frame URL (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2312)
* use first accept-language as system language for Blink (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2160)
* fix user scripts injection with back-forward cache enabled (thanks to @uazo)
* remove HTTP referrals in cross-origin navigation (thanks to @uazo)
* update noise factor for anti-fingerpriting mitigations only once per document (fixes https://github.com/bromite/bromite/issues/2352)
* disable add to home screen prompt (fixes https://github.com/bromite/bromite/issues/2340)
# 105.0.5195.41
* revert by-pass for clipboard permissions for NTP doodles (fixes https://bugs.chromium.org/p/chromium/issues/detail?id=1334203)
* prevent history detection via favicon (fixes https://github.com/bromite/bromite/issues/2269)
+1 -1
View File
@@ -152,7 +152,7 @@ New flags:
* `#enable-userscripts-log`, see https://github.com/bromite/bromite/wiki/UserScripts#flags
* `#certificate-transparency-enabled`, enabled by default; see https://chromium.googlesource.com/chromium/src/+/master/net/docs/certificate-transparency.md
* `#move-top-toolbar-to-bottom`, disabled by default
* `#site-engagement`, enabled by default, can be used to disable the automatically-generated icons for most visited sites on the NTP
* `#site-engagement`, enabled by default
### Site settings
+1 -1
View File
@@ -1 +1 @@
e3a3a1fe718bf559be801d14660fb6f9dc9bf603-
f62e5bffd9c2c0b8c221851fa8a032f02f105141-
+1 -1
View File
@@ -1 +1 @@
105.0.5195.41
105.0.5195.147
+1 -1
View File
@@ -1 +1 @@
5923fa90d4e3587c130983442b9cf90f4c76e851
5c842aa7b24e6252ccabc8bcac8dafa4fe8ad9cd
+5
View File
@@ -200,4 +200,9 @@ Re-introduce-kWebAuthCable.patch
Add-new-cache-check-function.patch
Stop-cross-origin-cache-hits.patch
Revert-clipboard-user-gesture-requirement-removal.patch
Enable-HEVC-by-default.patch
Partition-blobs-by-top-frame-URL.patch
Override-Navigator-Language.patch
Disable-add-to-home-screen-prompt.patch
Remove-HTTP-referrals-in-cross-origin-navigation.patch
Automated-domain-substitution.patch
-1
View File
@@ -22,7 +22,6 @@ enable_platform_dolby_vision=true
enable_platform_hevc=true
enable_remoting=false
enable_reporting=true
enable_supervised_users=false
enable_vr=false
exclude_unwind_tables=false
ffmpeg_branding="Chrome"
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -873,7 +873,7 @@ diff --git a/components/permissions/android/permissions_android_strings.grd b/co
+ <!-- Session permissions -->
+ <message name="IDS_SESSION_PERMISSIONS_TITLE" desc="Title for the session section in the permission request">
+ Remeber my decision
+ Remember my decision
+ </message>
+ <message name="IDS_SESSION_PERMISSIONS_ONLY_THIS_THIS" desc="Message indicating that the permission is only for this time">
+ Only this time
@@ -565,7 +565,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../core/counters/history_counter.cc | 2 +-
.../core/history_notice_utils.cc | 4 +-
.../core/captive_portal_detector.cc | 2 +-
.../data/log_list.json | 18 +-
.../data/log_list.json | 22 +-
.../resources/cart_domain_cart_url_regex.json | 2 +-
.../components_google_chrome_strings.grd | 2 +-
.../notes/core/server/notes_repository.cc | 2 +-
@@ -1756,7 +1756,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
url/third_party/mozilla/LICENSE.txt | 4 +-
...weblayer_security_blocking_page_factory.cc | 2 +-
weblayer/shell/app/shell_main_params.cc | 2 +-
1752 files changed, 5344 insertions(+), 5344 deletions(-)
1752 files changed, 5346 insertions(+), 5346 deletions(-)
diff --git a/PRESUBMIT.py b/PRESUBMIT.py
--- a/PRESUBMIT.py
@@ -9480,7 +9480,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
CHAR_LIMIT guidelines:
Certain strings need character limits to prevent a long translation from breaking the UI.
@@ -1121,7 +1121,7 @@ Trust tokens improve privacy on the web and cant be used to find out who you
@@ -1124,7 +1124,7 @@ Trust tokens improve privacy on the web and cant be used to find out who you
<message name="IDS_PRIVACY_SANDBOX_NOTICE_SHEET_CLOSED_DESCRIPTION" desc="The accessibility string read when the Privacy Sandbox prompt bottom sheet is closed.">
Privacy Sandbox prompt closed
</message>
@@ -9489,7 +9489,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
Help us build a better web
</message>
<message name="IDS_PRIVACY_SANDBOX_NOTICE_SHEET_DESCRIPTION" desc="* “Chrome is finding new ways”: “finding” is meant to convey a work in progress, like “build” in the title. The features are live and functional, but still in beta. So we want a verb thats stronger than “exploring” but weaker than “launching”. * “reduce tracking”: This used to read “reduce cross-site tracking”, but weve dropped “cross-site” because it makes the idea unnecessarily complicated. * “estimate your interests”: Topics of interest include things like “Live comedy” and “Rock music”. Chrome estimates these interests based on the sites users visit. Its an “estimation”, and we dont want to suggest that we know with certainty the users interests. Avoid words like “guess”, “establish”, “define”, etc. (in place of “estimate”). * “Then” is an important keyword. It suggests some amount of time later. The first step is that interests are generated. Later (minutes or weeks), a different site might request interests.">
@@ -1151,7 +1151,7 @@ Trust tokens improve privacy on the web and cant be used to find out who you
@@ -1154,7 +1154,7 @@ Trust tokens improve privacy on the web and cant be used to find out who you
Choose another provider
</message>
<message name="IDS_SETTINGS_SECURE_DROPDOWN_MODE_PRIVACY_POLICY" desc="Text that displays a link to the privacy policy of the resolver selected from a dropdown menu">
@@ -9498,7 +9498,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_SETTINGS_SECURE_DNS_DISABLED_FOR_MANAGED_ENVIRONMENT" desc="Substring of the secure DNS setting when secure DNS is disabled due to detection of a managed environment">
This setting is disabled on managed browsers
@@ -1181,7 +1181,7 @@ Trust tokens improve privacy on the web and cant be used to find out who you
@@ -1184,7 +1184,7 @@ Trust tokens improve privacy on the web and cant be used to find out who you
<message name="IDS_CLEAR_BROWSING_DATA_HISTORY_DIALOG_DATA_TEXT" desc="Text of the dialog that is shown after the deletion of browsing history items finished, indicating that the selected data has been removed, but there may be other forms of browsing history still present in user's Google account.">
The selected data has been removed from Chrome and your synced devices.
@@ -9507,7 +9507,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_CLEAR_CACHE_TITLE" desc="Title for Clear Cache in Clear Browsing Data dialog">
Cached images and files
@@ -1320,7 +1320,7 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1323,7 +1323,7 @@ Your Google account may have other forms of browsing history like searches and a
Basic
</message>
<message name="IDS_ANDROID_HISTORY_OTHER_FORMS_OF_HISTORY" desc="The notification at the top of the history page indicating that deleting Chrome browsing history will not delete other forms of history stored at Google My Activity.">
@@ -9516,7 +9516,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_ANDROID_HISTORY_BLOCKED_SITE" desc="The text displayed in the history page indicating that a visit to a web site was blocked due to an administrator policy.">
Blocked site
@@ -1922,10 +1922,10 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1925,10 +1925,10 @@ Your Google account may have other forms of browsing history like searches and a
Waiting for details of parents.
</message>
<message name="IDS_ACCOUNT_MANAGEMENT_ONE_PARENT_NAME" desc="String for name of single parent for child account.">
@@ -9529,7 +9529,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_ACCOUNT_MANAGEMENT_CHILD_CONTENT_TITLE" desc="Title of the Content setting, which controls which websites a child is allowed to visit.">
Content
@@ -2000,22 +2000,22 @@ Your Google account may have other forms of browsing history like searches and a
@@ -2003,22 +2003,22 @@ Your Google account may have other forms of browsing history like searches and a
Google Terms of Service
</message>
<message name="IDS_GOOGLE_TERMS_OF_SERVICE_URL" desc="URL for Google terms of service" translateable="false">
@@ -9556,7 +9556,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<!-- Sign-in strings -->
@@ -2041,7 +2041,7 @@ Your Google account may have other forms of browsing history like searches and a
@@ -2044,7 +2044,7 @@ Your Google account may have other forms of browsing history like searches and a
Also clear your Chrome data from this device
</message>
<message name="IDS_SIGNOUT_MANAGED_ACCOUNT_MESSAGE" desc="Message to display for sign out of Chrome dialog when the account has enterprise management, and all user data will be erased">
@@ -9565,7 +9565,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_SIGN_IN_GETTING_ACCOUNT_MANAGEMENT_POLICY" desc="Title of progress bar dialog for getting management policy">
Contacting Google. This may take a minute…
@@ -2115,7 +2115,7 @@ Your Google account may have other forms of browsing history like searches and a
@@ -2118,7 +2118,7 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_SYNC_ENCRYPTION" desc="Preference category name for sync encryption. [CHAR_LIMIT=32]">
Encryption
</message>
@@ -9574,7 +9574,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
Review your synced data
</message>
<message name="IDS_SYNC_PASSPHRASE_TYPE_TITLE" desc="Title of sync passphrase type dialog. [CHAR_LIMIT=24]">
@@ -2146,7 +2146,7 @@ Your Google account may have other forms of browsing history like searches and a
@@ -2149,7 +2149,7 @@ Your Google account may have other forms of browsing history like searches and a
Your data was encrypted with your <ph name="BEGIN_LINK">&lt;learnmore&gt;</ph>sync passphrase<ph name="END_LINK">&lt;/learnmore&gt;</ph> on <ph name="TIME">%1$s<ex>Sept 1, 2012</ex></ph>. Enter it to start sync.
</message>
<message name="IDS_SYNC_ACCOUNT_INFO" desc="The message that appears in the options dialog indicating that the user is signed in with the given email address.">
@@ -9583,7 +9583,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_SYNC_PASSPHRASE_CANNOT_BE_BLANK" desc="Inform user that they cannot use a blank password [CHAR_LIMIT=40]">
This field cannot be blank
@@ -2959,7 +2959,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -2962,7 +2962,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_SIGNIN_FRE_DISMISS_BUTTON" desc="Button on the very first screen of Chrome to continue without signing into Chrome. Ensure consistency with OneGoogle strings while still omitting “Chrome” (see e.g. TC ID 5336438894576002929).">
Use without an account
</message>
@@ -9592,7 +9592,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
By continuing, you agree to the <ph name="BEGIN_TOS_LINK">&lt;TOS_LINK&gt;</ph>Terms of Service<ph name="END_TOS_LINK">&lt;/TOS_LINK&gt;</ph>.\nTo help improve the app, Chrome sends usage and crash data to Google. <ph name="BEGIN_UMA_LINK">&lt;UMA_LINK&gt;</ph>Manage<ph name="END_UMA_LINK">&lt;/UMA_LINK&gt;</ph>
</message>
<message name="IDS_SIGNIN_FRE_FOOTER_TOS" desc="The text is displayed in a footer on the very first screen of Chrome. The link Terms of Service opens the Google Terms of Service.">
@@ -2968,7 +2968,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -2971,7 +2971,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_SIGNIN_FRE_FOOTER_TOS_WITH_SUPERVISED_USER" desc="The text is displayed in a footer on the very first screen of Chrome. The link 'Terms of Service' opens the Google Terms of Service. The link 'Privacy Policy' opens the Google Privacy Policy.">
By continuing, you agree to the <ph name="BEGIN_TOS_LINK">&lt;TOS_LINK&gt;</ph>Terms of Service<ph name="END_TOS_LINK">&lt;/TOS_LINK&gt;</ph> and <ph name="BEGIN_PRIVACY_LINK">&lt;PRIVACY_LINK&gt;</ph>Privacy\u00A0Policy<ph name="END_PRIVACY_LINK">&lt;/PRIVACY_LINK&gt;</ph>.
</message>
@@ -9601,7 +9601,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
To help improve the app, Chrome sends usage and crash data to Google. <ph name="BEGIN_UMA_LINK">&lt;UMA_LINK&gt;</ph>Manage<ph name="END_UMA_LINK">&lt;/UMA_LINK&gt;</ph>
</message>
<message name="IDS_SIGNIN_FRE_UMA_DIALOG_TITLE" desc="Title of the dialog where users can change their Chrome metric sharing settings, like usage data. This appears when they open the Chrome app for the first time on their phone.">
@@ -4068,7 +4068,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4071,7 +4071,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_ACCESSIBILITY_OMNIBOX_SHOWING_SUGGESTIONS_FOR_WEBSITE" desc="Whenever the User is visiting a Website, when they click the Omnibox, we will announce this message, if we have suggestions to show.">
Showing suggestions for <ph name="WEBSITE_TITLE">%1$s<ex>Crater Lake National Park (U.S. National Park Service)</ex></ph>
</message>
@@ -9610,7 +9610,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
Chrome action button: <ph name="ACTION">%s<ex>clear browsing data</ex></ph>
</message>
<message name="IDS_ACCESSIBILITY_OMNIBOX_SUGGESTED_ITEMS" desc="Announcement about the presence and volume of suggestions below the Omnibox.">
@@ -4319,7 +4319,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4322,7 +4322,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<!-- WebUsb Picker UI strings -->
<message name="IDS_USB_CHOOSER_DIALOG_PROMPT" desc="The text that is used to introduce the USB chooser dialog to the user.">
@@ -9619,7 +9619,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_USB_CHOOSER_DIALOG_NO_DEVICES_FOUND_PROMPT" desc="The label shown to the user to inform them that no USB devices were found matching the requirements that the application provided.">
No compatible devices found
@@ -4356,7 +4356,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4359,7 +4359,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
Running in <ph name="APP_NAME">%1$s<ex>Chromium</ex></ph>
</message>
<message name="IDS_TWA_RUNNING_IN_CHROME_V2" desc="Updated message on a snackbar indicating that the current Activity may use Chrome data (the rest of the app may not be).">
@@ -9628,7 +9628,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_TWA_CLEAR_DATA_DIALOG_TITLE" desc="Title of the clear data dialog showing after user uninstalls or clears data of an app hosting a Trusted Web Activity">
<ph name="APP_NAME">%1$s<ex>YouTube</ex></ph> also has data in Chrome
@@ -4709,7 +4709,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4712,7 +4712,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
Sending to <ph name="device_name">%1$s<ex>Tanya's Pixel 2</ex></ph>...
</message>
<message name="IDS_SEND_TAB_TO_SELF_NOTIFICATION_CONTEXT_TEXT" desc="Text displayed as the second line of a notification indicating the domain and the device the tab is shared from.">
@@ -9637,7 +9637,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_SEND_TAB_TO_SELF_CONTENT_DESCRIPTION" desc="Accessibility string read when the bottom sheet is opened. It describes the bottom sheet where a user can pick a device to share the tab with.">
List of devices to share a tab with.
@@ -4748,7 +4748,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -4751,7 +4751,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
Page sent. To see it, open Chrome on your <ph name="device_type">%1$s<ex>phone</ex></ph>
</message>
<message name="IDS_SEND_TAB_TO_SELF_MANAGE_DEVICES_LINK" desc="Text with a link to a page where the user can manage the devices they can share a tab to.">
@@ -9646,7 +9646,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_SEND_TAB_TO_SELF_WHEN_SIGNED_IN_UNAVAILABLE" desc="Instructions for the user to enable the feature when it's currently unavailable.">
You can send tabs between devices that are signed in with the same Google Account
@@ -5763,7 +5763,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -5766,7 +5766,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
Your browser is managed by your administrator
</message>
<message name="IDS_MANAGEMENT_SUBTITLE_MANAGED_BY" desc="The title of the chrome://management page when the browser runs in an environment managed by a known organization. (e.g. Employer owned device enrolled to CBCM)">
@@ -9655,7 +9655,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_MANAGEMENT_NOT_MANAGED_SUBTITLE" desc="The title of the chrome://management page when the browser runs in an environment which is not not managed by any organization. (e.g. A personal device bought at a store)">
Your browser is not managed
@@ -5778,7 +5778,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -5781,7 +5781,7 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
Update password?
</message>
<message name="IDS_PASSWORD_EDIT_DIALOG_SYNCED_FOOTER_GOOGLE" desc="Footer for a dialog which allows users to see and edit passwords while saving/updating a new credential. Displayed for users who are syncing passwords.">
@@ -13475,6 +13475,15 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components
"state": {
"usable": {
@@ -44,7 +44,7 @@
"description": "Google 'Argon2024' log",
"log_id": "7s3QZNXbGs7FXLedtM0TojKHRny87N7DUUhZRnEftZs=",
"key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEHblsqctplMVc5ramA7vSuNxUQxcomQwGAVAdnWTAWUYr3MgDHQW0LagJ95lB7QT75Ve6JgT2EVLOFGU7L3YrwA==",
- "url": "https://ct.googleapis.com/logs/us1/argon2024/",
+ "url": "https://ct.9oo91eapis.qjz9zk/logs/us1/argon2024/",
"mmd": 86400,
"state": {
"qualified": {
@@ -60,7 +60,7 @@
"description": "Google 'Xenon2022' log",
"log_id": "RqVV63X6kSAwtaKJafTzfREsQXS+/Um4havy/HD+bUc=",
"key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE+WS9FSxAYlCVEzg8xyGwOrmPonoV14nWjjETAIdZvLvukPzIWBMKv6tDNlQjpIHNrUcUt1igRPpqoKDXw2MeKw==",
@@ -13483,7 +13492,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components
"mmd": 86400,
"state": {
"usable": {
@@ -60,7 +60,7 @@
@@ -76,7 +76,7 @@
"description": "Google 'Xenon2023' log",
"log_id": "rfe++nz/EMiLnT2cHj4YarRnKV3PsQwkyoWGNOvcgoo=",
"key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEchY+C+/vzj5g3ZXLY3q5qY1Kb2zcYYCmRV4vg6yU84WI0KV00HuO/8XuQqLwLZPjwtCymeLhQunSxgAnaXSuzg==",
@@ -13492,7 +13501,16 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components
"mmd": 86400,
"state": {
"usable": {
@@ -76,7 +76,7 @@
@@ -92,7 +92,7 @@
"description": "Google 'Xenon2024' log",
"log_id": "dv+IPwq2+5VRwmHM9Ye6NLSkzbsp3GhCCp/mZ0xaOnQ=",
"key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEuWDgNB415GUAk0+QCb1a7ETdjA/O7RE+KllGmjG2x5n33O89zY+GwjWlPtwpurvyVOKoDIMIUQbeIW02UI44TQ==",
- "url": "https://ct.googleapis.com/logs/eu1/xenon2024/",
+ "url": "https://ct.9oo91eapis.qjz9zk/logs/eu1/xenon2024/",
"mmd": 86400,
"state": {
"qualified": {
@@ -108,7 +108,7 @@
"description": "Google 'Icarus' log",
"log_id": "KTxRllTIOWW6qlD8WAfUt2+/WHopctykwwz05UVH9Hg=",
"key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAETtK8v7MICve56qTHHDhhBOuV4IlUaESxZryCfk9QbG9co/CqPvTsgPDbCpp6oFtyAHwlDhnvr7JijXRD9Cb2FA==",
@@ -13500,8 +13518,8 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components
+ "url": "https://ct.9oo91eapis.qjz9zk/icarus/",
"mmd": 86400,
"state": {
"readonly": {
@@ -92,7 +92,7 @@
"retired": {
@@ -120,7 +120,7 @@
"description": "Google 'Pilot' log",
"log_id": "pLkJkLQYWBSHuxOizGdwCjw1mAT5G9+443fNDsgN3BA=",
"key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEfahLEimAoz2t01p3uMziiLOl/fHTDM0YDOhBRuiBARsV4UvxG2LdNgoIGLrtCzWE0J5APC2em4JlvR8EEEFMoA==",
@@ -13509,8 +13527,8 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components
+ "url": "https://ct.9oo91eapis.qjz9zk/pilot/",
"mmd": 86400,
"state": {
"readonly": {
@@ -108,7 +108,7 @@
"retired": {
@@ -132,7 +132,7 @@
"description": "Google 'Rocketeer' log",
"log_id": "7ku9t3XOYLrhQmkfq+GeZqMPfl+wctiDAMR7iXqo/cs=",
"key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIFsYyDzBi7MxCAC/oJBXK7dHjG+1aLCOkHjpoHPqTyghLpzA9BYbqvnV16mAw04vUjyYASVGJCUoI3ctBcJAeg==",
@@ -13518,8 +13536,8 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components
+ "url": "https://ct.9oo91eapis.qjz9zk/rocketeer/",
"mmd": 86400,
"state": {
"readonly": {
@@ -124,7 +124,7 @@
"retired": {
@@ -144,7 +144,7 @@
"description": "Google 'Skydiver' log",
"log_id": "u9nfvB+KcbWTlCOXqpJ7RzhXlQqrUugakJZkNo4e0YU=",
"key": "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEEmyGDvYXsRJsNyXSrYc9DjHsIa2xzb4UR7ZxVoV6mrc9iZB7xjI6+NrOiwH+P/xxkRmOFG6Jel20q37hTh58rA==",
@@ -13527,7 +13545,7 @@ diff --git a/components/certificate_transparency/data/log_list.json b/components
+ "url": "https://ct.9oo91eapis.qjz9zk/skydiver/",
"mmd": 86400,
"state": {
"readonly": {
"retired": {
diff --git a/components/commerce/core/heuristics/resources/cart_domain_cart_url_regex.json b/components/commerce/core/heuristics/resources/cart_domain_cart_url_regex.json
--- a/components/commerce/core/heuristics/resources/cart_domain_cart_url_regex.json
+++ b/components/commerce/core/heuristics/resources/cart_domain_cart_url_regex.json
@@ -29289,7 +29307,7 @@ diff --git a/content/browser/portal/portal_navigation_throttle.cc b/content/brow
diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
--- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc
@@ -5379,7 +5379,7 @@ NavigationRequest::CheckCredentialedSubresource() const {
@@ -5386,7 +5386,7 @@ NavigationRequest::CheckCredentialedSubresource() const {
const char* console_message =
"Subresource requests whose URLs contain embedded credentials (e.g. "
"`https://user:pass@host/`) are blocked. See "
@@ -29298,7 +29316,7 @@ diff --git a/content/browser/renderer_host/navigation_request.cc b/content/brows
"details.";
parent->AddMessageToConsole(blink::mojom::ConsoleMessageLevel::kWarning,
console_message);
@@ -5610,7 +5610,7 @@ void NavigationRequest::RecordDownloadUseCountersPrePolicyCheck(
@@ -5617,7 +5617,7 @@ void NavigationRequest::RecordDownloadUseCountersPrePolicyCheck(
base::StringPrintf(
"Navigating a cross-origin opener to a download (%s) is "
"deprecated, see "
@@ -35199,7 +35217,7 @@ diff --git a/testing/variations/PRESUBMIT.py b/testing/variations/PRESUBMIT.py
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
@@ -784,7 +784,7 @@
@@ -799,7 +799,7 @@
{
"name": "Enabled_20210611",
"params": {
@@ -35208,7 +35226,7 @@ diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variati
},
"enable_features": [
"AutofillAssistantInCctTriggering",
@@ -1521,7 +1521,7 @@
@@ -1536,7 +1536,7 @@
{
"name": "Enabled_All_20220418",
"params": {
@@ -35217,7 +35235,7 @@ diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variati
},
"enable_features": [
"AutomaticLazyFrameLoadingToAds",
@@ -1532,7 +1532,7 @@
@@ -1547,7 +1547,7 @@
{
"name": "Enabled_LazyEmbeds_20220418",
"params": {
@@ -35226,7 +35244,7 @@ diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variati
},
"enable_features": [
"AutomaticLazyFrameLoadingToEmbedUrls",
@@ -1555,7 +1555,7 @@
@@ -1570,7 +1570,7 @@
{
"name": "Control_20220418",
"params": {
@@ -35235,7 +35253,7 @@ diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variati
},
"enable_features": [
"AutomaticLazyFrameLoadingToEmbedUrls"
@@ -7208,14 +7208,14 @@
@@ -7253,14 +7253,14 @@
{
"name": "Prefetch_2_20220214",
"params": {
@@ -35252,7 +35270,7 @@ diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variati
"use_speculation_rules": "true"
},
"enable_features": [
@@ -7407,7 +7407,7 @@
@@ -7452,7 +7452,7 @@
{
"name": "EnabledExploreAndServerRankingAndRawTrendingSegmentation2",
"params": {
@@ -35261,7 +35279,7 @@ diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variati
"experiment_tag": "{maxLevels : 1, rankTiles : true, enableTrending : true, maxTrendingQueries : 8, disableEntityTranslation: true}",
"image_prefetch_mode": "top",
"is_unmetered_network_required": "false",
@@ -7432,7 +7432,7 @@
@@ -7477,7 +7477,7 @@
{
"name": "EnabledExploreAndTrendingSegmentation2",
"params": {
@@ -35270,7 +35288,7 @@ diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variati
"behavioural_targeting": "model_comparison",
"experiment_tag": "{maxLevels : 1, enableTrending : true, maxTrendingQueries : 8}",
"image_prefetch_mode": "top",
@@ -9575,7 +9575,7 @@
@@ -9635,7 +9635,7 @@
{
"name": "Enabled",
"params": {
@@ -0,0 +1,26 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Wed, 28 Sep 2022 00:54:10 +0200
Subject: Disable add to home screen prompt
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../webapps/AddToHomescreenMostVisitedTileClickObserver.java | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/AddToHomescreenMostVisitedTileClickObserver.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/AddToHomescreenMostVisitedTileClickObserver.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/AddToHomescreenMostVisitedTileClickObserver.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/AddToHomescreenMostVisitedTileClickObserver.java
@@ -43,10 +43,7 @@ public class AddToHomescreenMostVisitedTileClickObserver implements MostVisitedT
ntp.addMostVisitedTileClickObserver(
AddToHomescreenMostVisitedTileClickObserver.this);
} else {
- // If it is a regular web page, and started from a most visited tile, show IPH.
- if (url.getOrigin().equals(mLastClickedMostVisitedTileUrl)) {
- addToHomescreenIPHController.showAddToHomescreenIPH(tab);
- }
+ // do not show any add to home screen IPH in Bromite
removeObserver(tab);
}
mLastClickedMostVisitedTileUrl = null;
--
2.25.1
@@ -97,7 +97,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
@@ -2400,6 +2400,21 @@
@@ -2415,6 +2415,21 @@
]
}
],
@@ -0,0 +1,23 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Tue, 27 Sep 2022 23:39:54 +0200
Subject: Enable HEVC by default
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
media/base/media_switches.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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
@@ -275,7 +275,7 @@ const base::Feature kPictureInPicture{"PictureInPicture",
#if BUILDFLAG(ENABLE_PLATFORM_HEVC)
// Enables HEVC hardware accelerated decoding.
const base::Feature kPlatformHEVCDecoderSupport{
- "PlatformHEVCDecoderSupport", base::FEATURE_DISABLED_BY_DEFAULT};
+ "PlatformHEVCDecoderSupport", base::FEATURE_ENABLED_BY_DEFAULT};
#endif // BUILDFLAG(ENABLE_PLATFORM_HEVC)
// Only decode preload=metadata elements upon visibility.
--
2.25.1
@@ -133,12 +133,12 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../renderer/user_scripts_dispatcher.cc | 36 +
.../renderer/user_scripts_dispatcher.h | 49 ++
.../renderer/user_scripts_renderer_client.cc | 105 +++
.../renderer/user_scripts_renderer_client.h | 37 +
.../renderer/user_scripts_renderer_client.h | 36 +
.../renderer/web_ui_injection_host.cc | 40 +
.../renderer/web_ui_injection_host.h | 27 +
.../strings/userscripts_strings.grdp | 57 ++
tools/gritsettings/resource_ids.spec | 6 +
111 files changed, 9595 insertions(+), 2 deletions(-)
111 files changed, 9594 insertions(+), 2 deletions(-)
create mode 100644 components/user_scripts/README.md
create mode 100755 components/user_scripts/android/BUILD.gn
create mode 100644 components/user_scripts/android/java/res/layout/accept_script_item.xml
@@ -10405,15 +10405,15 @@ new file mode 100755
+ enabled_ = params.allow_userscript;
+ if (!enabled_) return;
+
+ if (loaded_ == false) {
+ loaded_ = true;
+ ExtensionFrameHelper* frame_helper = ExtensionFrameHelper::Get(render_frame);
+ if (!frame_helper) {
+ new user_scripts::ExtensionFrameHelper(render_frame);
+ dispatcher_->OnRenderFrameCreated(render_frame);
+ }
+}
+
+void UserScriptsRendererClient::RunScriptsAtDocumentStart(content::RenderFrame* render_frame) {
+ if (!enabled_ || !loaded_) return;
+ if (!enabled_) return;
+
+ ExtensionFrameHelper* frame_helper = ExtensionFrameHelper::Get(render_frame);
+ if (!frame_helper)
@@ -10424,7 +10424,7 @@ new file mode 100755
+}
+
+void UserScriptsRendererClient::RunScriptsAtDocumentEnd(content::RenderFrame* render_frame) {
+ if (!enabled_ || !loaded_) return;
+ if (!enabled_) return;
+
+ ExtensionFrameHelper* frame_helper = ExtensionFrameHelper::Get(render_frame);
+ if (!frame_helper)
@@ -10435,7 +10435,7 @@ new file mode 100755
+}
+
+void UserScriptsRendererClient::RunScriptsAtDocumentIdle(content::RenderFrame* render_frame) {
+ if (!enabled_ || !loaded_) return;
+ if (!enabled_) return;
+
+ ExtensionFrameHelper* frame_helper = ExtensionFrameHelper::Get(render_frame);
+ if (!frame_helper)
@@ -10446,12 +10446,11 @@ new file mode 100755
+}
+
+}
\ No newline at end of file
diff --git a/components/user_scripts/renderer/user_scripts_renderer_client.h b/components/user_scripts/renderer/user_scripts_renderer_client.h
new file mode 100755
--- /dev/null
+++ b/components/user_scripts/renderer/user_scripts_renderer_client.h
@@ -0,0 +1,37 @@
@@ -0,0 +1,36 @@
+#ifndef USERSCRIPTS_RENDER_CLIENT_H_
+#define USERSCRIPTS_RENDER_CLIENT_H_
+
@@ -10483,7 +10482,6 @@ new file mode 100755
+ private:
+ std::unique_ptr<UserScriptsDispatcher> dispatcher_;
+ bool enabled_ = false;
+ bool loaded_ = false;
+};
+
+}
@@ -1321,7 +1321,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
PrivacyPreferencesManagerImpl.getInstance(), mLocationBarModel,
mActionModeController.getActionModeCallback(),
new WindowDelegate(mActivity.getWindow()), windowAndroid, mActivityTabProvider,
@@ -860,11 +863,13 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -865,11 +868,13 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
// the height won't be measured by the background image.
if (mControlContainer.getBackground() == null) {
setControlContainerTopMargin(getToolbarExtraYOffset());
@@ -1335,7 +1335,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
mControlContainer.removeOnLayoutChangeListener(mLayoutChangeListener);
mLayoutChangeListener = null;
}
@@ -1227,13 +1232,25 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -1226,13 +1231,25 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
return mLocationBar.getOmniboxStub().isUrlBarFocused();
}
@@ -1363,7 +1363,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
mScrimCoordinator, mOmniboxFocusStateSupplier, mBottomSheetController,
mActivityLifecycleDispatcher, mIsWarmOnResumeSupplier, mTabModelSelector,
mTabContentManager, mCompositorViewHolder,
@@ -1242,8 +1259,9 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -1241,8 +1258,9 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
mBottomControlsCoordinatorSupplier.set(
new BottomControlsCoordinator(mActivity, mWindowAndroid, mLayoutManager,
mCompositorViewHolder.getResourceManager(), mBrowserControlsSizer,
@@ -1375,7 +1375,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
}
/**
@@ -1985,6 +2003,15 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -1984,6 +2002,15 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
private void setControlContainerTopMargin(int margin) {
final ViewGroup.MarginLayoutParams layoutParams =
((ViewGroup.MarginLayoutParams) mControlContainer.getLayoutParams());
@@ -195,11 +195,10 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
#include "base/notreached.h"
#include "base/time/time.h"
#include "cc/animation/animation_host.h"
@@ -2235,6 +2236,23 @@ void Document::UpdateStyleAndLayoutTreeForThisDocument() {
#if DCHECK_IS_ON()
AssertLayoutTreeUpdated(*this, true /* allow_dirty_container_subtrees */);
#endif
+
@@ -810,6 +811,15 @@ Document::Document(const DocumentInit& initializer,
? MakeGarbageCollected<RenderBlockingResourceManager>(*this)
: nullptr),
data_(MakeGarbageCollected<DocumentData>(GetExecutionContext())) {
+ if (RuntimeEnabledFeatures::FingerprintingClientRectsNoiseEnabled()) {
+ // Precompute -0.0003% to 0.0003% noise factor for get*ClientRect*() fingerprinting
+ noise_factor_x_ = 1 + (base::RandDouble() - 0.5) * 0.000003;
@@ -208,17 +207,25 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
+ noise_factor_x_ = 1;
+ noise_factor_y_ = 1;
+ }
+}
+
if (base::FeatureList::IsEnabled(features::kDelayAsyncScriptExecution))
script_runner_delayer_->Activate();
@@ -2237,6 +2247,14 @@ void Document::UpdateStyleAndLayoutTreeForThisDocument() {
#endif
}
+double Document::GetNoiseFactorX() {
+ return noise_factor_x_;
+}
+
+double Document::GetNoiseFactorY() {
+ return noise_factor_y_;
}
+}
+
void Document::InvalidateStyleAndLayoutForFontUpdates() {
DCHECK(IsActive());
DCHECK(IsMainThread());
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
@@ -0,0 +1,96 @@
From: uazo <uazo@users.noreply.github.com>
Date: Fri, 2 Sep 2022 07:44:58 +0000
Subject: Override Navigator Language
Uses the first of the accept-languages as the system language for blink
and fix the selection in the UI for the browser language
Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../browser/language/AppLocaleUtils.java | 20 +++++++++++++++++++
.../AppLanguagePreferenceDelegate.java | 8 ++++++++
.../renderer_host/render_process_host_impl.cc | 6 +++++-
3 files changed, 33 insertions(+), 1 deletion(-)
diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java
--- a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java
+++ b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/AppLocaleUtils.java
@@ -35,6 +35,10 @@ import java.util.Locale;
public class AppLocaleUtils {
private AppLocaleUtils(){};
+ public interface InstallListener {
+ void onComplete(boolean success);
+ }
+
// Value of AppLocale preference when the system language is used.
public static final String APP_LOCALE_USE_SYSTEM_LANGUAGE = null;
@@ -99,6 +103,22 @@ public class AppLocaleUtils {
return locale.toLanguageTag();
}
+ public static void setAppLanguagePref(
+ String languageName, InstallListener listener) {
+ InstallListener wrappedListener = (success) -> {
+ if (success) {
+ if (shouldUseSystemManagedLocale()) {
+ setSystemManagedAppLanguage(languageName);
+ } else {
+ SharedPreferencesManager.getInstance().writeString(
+ ChromePreferenceKeys.APPLICATION_OVERRIDE_LANGUAGE, languageName);
+ }
+ }
+ listener.onComplete(success);
+ };
+ wrappedListener.onComplete(true);
+ }
+
/**
* Gets the first original system locale from {@link LocaleManager}. This is the language that
* Chrome would use if there was no override set. If there are no possible UI languages en-US is
diff --git a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/AppLanguagePreferenceDelegate.java b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/AppLanguagePreferenceDelegate.java
--- a/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/AppLanguagePreferenceDelegate.java
+++ b/chrome/browser/language/android/java/src/org/chromium/chrome/browser/language/settings/AppLanguagePreferenceDelegate.java
@@ -87,6 +87,14 @@ public class AppLanguagePreferenceDelegate {
// Disable preference so a second downloaded cannot be started while one is in progress.
mPreference.setEnabled(false);
+
+ AppLocaleUtils.setAppLanguagePref(code, (success) -> {
+ if (success) {
+ languageSplitDownloadComplete();
+ } else {
+ languageSplitDownloadFailed();
+ }
+ });
}
/**
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -68,6 +68,7 @@
#include "cc/base/switches.h"
#include "components/discardable_memory/public/mojom/discardable_shared_memory_manager.mojom.h"
#include "components/discardable_memory/service/discardable_shared_memory_manager.h"
+#include "components/language/core/browser/language_prefs.h"
#include "components/metrics/single_sample_metrics.h"
#include "components/services/storage/privileged/mojom/indexed_db_control.mojom.h"
#include "components/services/storage/public/cpp/buckets/bucket_id.h"
@@ -3152,8 +3153,11 @@ void RenderProcessHostImpl::AppendRendererCommandLine(
PropagateBrowserCommandLineToRenderer(browser_command_line, command_line);
// Pass on the browser locale.
- const std::string locale =
+ std::string locale =
GetContentClient()->browser()->GetApplicationLocale();
+ const std::string accept_langs = GetContentClient()->browser()->GetAcceptLangs(browser_context_);
+ if (!accept_langs.empty())
+ locale = language::GetFirstLanguage(accept_langs);
command_line->AppendSwitchASCII(switches::kLang, locale);
// A non-empty RendererCmdPrefix implies that Zygote is disabled.
--
2.25.1
@@ -0,0 +1,217 @@
From: uazo <uazo@users.noreply.github.com>
Date: Tue, 20 Sep 2022 07:20:01 +0000
Subject: Partition blobs by top frame URL
Verifies that the blob was created with the same top frame URL
or, if not defined, by the same agent cluster.
Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
storage/browser/blob/blob_url_store_impl.cc | 37 ++++++++++++++++++-
storage/browser/blob/blob_url_store_impl.h | 14 ++++++-
.../public/mojom/blob/blob_url_store.mojom | 12 ++++--
.../core/fileapi/public_url_manager.cc | 17 +++++++++
4 files changed, 75 insertions(+), 5 deletions(-)
diff --git a/storage/browser/blob/blob_url_store_impl.cc b/storage/browser/blob/blob_url_store_impl.cc
--- a/storage/browser/blob/blob_url_store_impl.cc
+++ b/storage/browser/blob/blob_url_store_impl.cc
@@ -72,6 +72,20 @@ BlobURLStoreImpl::~BlobURLStoreImpl() {
}
}
+bool BlobURLStoreImpl::IsSamePartition(
+ const GURL& blob_url,
+ const base::UnguessableToken& unsafe_agent_cluster_id,
+ const absl::optional<net::SchemefulSite>& unsafe_top_level_site) {
+ const absl::optional<net::SchemefulSite>& top_level_site =
+ registry_->GetUnsafeTopLevelSite(blob_url);
+ if (top_level_site.has_value())
+ return top_level_site == unsafe_top_level_site;
+
+ absl::optional<base::UnguessableToken> agent_cluster_id =
+ registry_->GetUnsafeAgentClusterID(blob_url);
+ return agent_cluster_id == unsafe_agent_cluster_id;
+}
+
void BlobURLStoreImpl::Register(
mojo::PendingRemote<blink::mojom::Blob> blob,
const GURL& url,
@@ -102,11 +116,18 @@ void BlobURLStoreImpl::Revoke(const GURL& url) {
urls_.erase(url);
}
-void BlobURLStoreImpl::Resolve(const GURL& url, ResolveCallback callback) {
+void BlobURLStoreImpl::Resolve(const GURL& url,
+ const base::UnguessableToken& unsafe_agent_cluster_id,
+ const absl::optional<net::SchemefulSite>& unsafe_top_level_site,
+ ResolveCallback callback) {
if (!registry_) {
std::move(callback).Run(mojo::NullRemote(), absl::nullopt);
return;
}
+ if (!IsSamePartition(url, unsafe_agent_cluster_id, unsafe_top_level_site)) {
+ std::move(callback).Run(mojo::NullRemote(), absl::nullopt);
+ return;
+ }
mojo::PendingRemote<blink::mojom::Blob> blob = registry_->GetBlobFromUrl(url);
std::move(callback).Run(std::move(blob),
registry_->GetUnsafeAgentClusterID(url));
@@ -115,6 +136,8 @@ void BlobURLStoreImpl::Resolve(const GURL& url, ResolveCallback callback) {
void BlobURLStoreImpl::ResolveAsURLLoaderFactory(
const GURL& url,
mojo::PendingReceiver<network::mojom::URLLoaderFactory> receiver,
+ const base::UnguessableToken& unsafe_agent_cluster_id,
+ const absl::optional<net::SchemefulSite>& unsafe_top_level_site,
ResolveAsURLLoaderFactoryCallback callback) {
if (!registry_) {
BlobURLLoaderFactory::Create(mojo::NullRemote(), url, std::move(receiver));
@@ -122,6 +145,12 @@ void BlobURLStoreImpl::ResolveAsURLLoaderFactory(
return;
}
+ if (!IsSamePartition(url, unsafe_agent_cluster_id, unsafe_top_level_site)) {
+ BlobURLLoaderFactory::Create(mojo::NullRemote(), url, std::move(receiver));
+ std::move(callback).Run(absl::nullopt, absl::nullopt);
+ return;
+ }
+
BlobURLLoaderFactory::Create(registry_->GetBlobFromUrl(url), url,
std::move(receiver));
std::move(callback).Run(registry_->GetUnsafeAgentClusterID(url),
@@ -131,11 +160,17 @@ void BlobURLStoreImpl::ResolveAsURLLoaderFactory(
void BlobURLStoreImpl::ResolveForNavigation(
const GURL& url,
mojo::PendingReceiver<blink::mojom::BlobURLToken> token,
+ const base::UnguessableToken& unsafe_agent_cluster_id,
+ const absl::optional<net::SchemefulSite>& unsafe_top_level_site,
ResolveForNavigationCallback callback) {
if (!registry_) {
std::move(callback).Run(absl::nullopt);
return;
}
+ if (!IsSamePartition(url, unsafe_agent_cluster_id, unsafe_top_level_site)) {
+ std::move(callback).Run(absl::nullopt);
+ return;
+ }
mojo::PendingRemote<blink::mojom::Blob> blob = registry_->GetBlobFromUrl(url);
if (!blob) {
std::move(callback).Run(absl::nullopt);
diff --git a/storage/browser/blob/blob_url_store_impl.h b/storage/browser/blob/blob_url_store_impl.h
--- a/storage/browser/blob/blob_url_store_impl.h
+++ b/storage/browser/blob/blob_url_store_impl.h
@@ -39,14 +39,21 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) BlobURLStoreImpl
const absl::optional<net::SchemefulSite>& unsafe_top_level_site,
RegisterCallback callback) override;
void Revoke(const GURL& url) override;
- void Resolve(const GURL& url, ResolveCallback callback) override;
+ void Resolve(const GURL& url,
+ const base::UnguessableToken& unsafe_agent_cluster_id,
+ const absl::optional<net::SchemefulSite>& unsafe_top_level_site,
+ ResolveCallback callback) override;
void ResolveAsURLLoaderFactory(
const GURL& url,
mojo::PendingReceiver<network::mojom::URLLoaderFactory> receiver,
+ const base::UnguessableToken& unsafe_agent_cluster_id,
+ const absl::optional<net::SchemefulSite>& unsafe_top_level_site,
ResolveAsURLLoaderFactoryCallback callback) override;
void ResolveForNavigation(
const GURL& url,
mojo::PendingReceiver<blink::mojom::BlobURLToken> token,
+ const base::UnguessableToken& unsafe_agent_cluster_id,
+ const absl::optional<net::SchemefulSite>& unsafe_top_level_site,
ResolveForNavigationCallback callback) override;
private:
@@ -54,6 +61,11 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) BlobURLStoreImpl
// Returns false and reports a bad mojo message if not.
bool BlobUrlIsValid(const GURL& url, const char* method) const;
+ bool IsSamePartition(
+ const GURL& blob_url,
+ const base::UnguessableToken& unsafe_agent_cluster_id,
+ const absl::optional<net::SchemefulSite>& unsafe_top_level_site);
+
const url::Origin origin_;
base::WeakPtr<BlobUrlRegistry> registry_;
diff --git a/third_party/blink/public/mojom/blob/blob_url_store.mojom b/third_party/blink/public/mojom/blob/blob_url_store.mojom
--- a/third_party/blink/public/mojom/blob/blob_url_store.mojom
+++ b/third_party/blink/public/mojom/blob/blob_url_store.mojom
@@ -28,7 +28,9 @@ interface BlobURLStore {
Revoke(url.mojom.Url url);
// Resolves a public Blob URL.
- Resolve(url.mojom.Url url) => (
+ Resolve(url.mojom.Url url,
+ mojo_base.mojom.UnguessableToken unsafe_agent_cluster_id,
+ network.mojom.SchemefulSite? unsafe_top_level_site) => (
pending_remote<blink.mojom.Blob>? blob,
// TODO(https://crbug.com/1224926): Remove this once experiment is over.
mojo_base.mojom.UnguessableToken? unsafe_agent_cluster_id);
@@ -42,7 +44,9 @@ interface BlobURLStore {
// both the blob URL and all other references to the blob have been dropped.
ResolveAsURLLoaderFactory(
url.mojom.Url url,
- pending_receiver<network.mojom.URLLoaderFactory> factory) => (
+ pending_receiver<network.mojom.URLLoaderFactory> factory,
+ mojo_base.mojom.UnguessableToken unsafe_agent_cluster_id,
+ network.mojom.SchemefulSite? unsafe_top_level_site) => (
// TODO(https://crbug.com/1224926): Remove these once experiment is over.
mojo_base.mojom.UnguessableToken? unsafe_agent_cluster_id,
network.mojom.SchemefulSite? unsafe_top_level_site);
@@ -52,7 +56,9 @@ interface BlobURLStore {
// refer to, even after the URL is revoked.
// As long as the token is alive, the resolved blob will also be kept alive.
ResolveForNavigation(url.mojom.Url url,
- pending_receiver<BlobURLToken> token) => (
+ pending_receiver<BlobURLToken> token,
+ mojo_base.mojom.UnguessableToken unsafe_agent_cluster_id,
+ network.mojom.SchemefulSite? unsafe_top_level_site) => (
// TODO(https://crbug.com/1224926): Remove this once experiment is over.
mojo_base.mojom.UnguessableToken? unsafe_agent_cluster_id);
};
diff --git a/third_party/blink/renderer/core/fileapi/public_url_manager.cc b/third_party/blink/renderer/core/fileapi/public_url_manager.cc
--- a/third_party/blink/renderer/core/fileapi/public_url_manager.cc
+++ b/third_party/blink/renderer/core/fileapi/public_url_manager.cc
@@ -56,6 +56,21 @@ static void RemoveFromNullOriginMapIfNecessary(const KURL& blob_url) {
BlobURLNullOriginMap::GetInstance()->Remove(blob_url);
}
+static absl::optional<BlinkSchemefulSite> GetInsecureTopLevelSite(
+ ExecutionContext* execution_context) {
+ absl::optional<BlinkSchemefulSite> top_level_site;
+ if (execution_context->IsWindow()) {
+ auto* window = To<LocalDOMWindow>(execution_context);
+ if (window->top() && window->top()->GetFrame()) {
+ top_level_site = BlinkSchemefulSite(window->top()
+ ->GetFrame()
+ ->GetSecurityContext()
+ ->GetSecurityOrigin());
+ }
+ }
+ return top_level_site;
+}
+
} // namespace
PublicURLManager::PublicURLManager(ExecutionContext* context)
@@ -176,6 +191,7 @@ void PublicURLManager::Resolve(
url_store_->ResolveAsURLLoaderFactory(
url, std::move(factory_receiver),
+ GetExecutionContext()->GetAgentClusterID(), GetInsecureTopLevelSite(GetExecutionContext()),
WTF::Bind(
[](ExecutionContext* execution_context,
const absl::optional<base::UnguessableToken>&
@@ -249,6 +265,7 @@ void PublicURLManager::Resolve(
url_store_->ResolveForNavigation(
url, std::move(token_receiver),
+ GetExecutionContext()->GetAgentClusterID(), GetInsecureTopLevelSite(GetExecutionContext()),
WTF::Bind(
[](ExecutionContext* execution_context,
const absl::optional<base::UnguessableToken>&
--
2.25.1
@@ -0,0 +1,110 @@
From: uazo <uazo@users.noreply.github.com>
Date: Wed, 21 Sep 2022 12:28:17 +0000
Subject: Remove HTTP referrals in cross origin navigation
The patch removes the referrals if the navigation is cross-origin and occurs in the top frame.
The value is not removed across iframes because the referrals are statically defined
by the HTML and the Javascript of the page, and therefore they do not tell anything about the
user. Also, some services may not work, such as video iframes.
A preference is also introduced to completely removes referrals management, for advanced users.
Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
chrome/android/java/res/xml/privacy_preferences.xml | 4 ++++
.../chrome/browser/privacy/settings/PrivacySettings.java | 8 ++++++++
.../browser/ui/android/strings/android_chrome_strings.grd | 3 +++
content/browser/renderer_host/navigation_request.cc | 7 +++++++
services/network/public/cpp/resource_request.h | 2 +-
5 files changed, 23 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
@@ -57,6 +57,10 @@
android:title="@string/close_tabs_on_exit_title"
android:summary="@string/close_tabs_on_exit_summary"
android:defaultValue="false" />
+ <org.chromium.components.browser_ui.settings.ChromeSwitchPreference
+ android:key="enable_referrers"
+ android:title="@string/enable_referrers_title"
+ android:defaultValue="false" />
<Preference
android:fragment="org.chromium.chrome.browser.privacy.settings.DoNotTrackSettings"
android:key="do_not_track"
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
@@ -64,6 +64,7 @@ public class PrivacySettings
private static final String PREF_HTTPS_FIRST_MODE = "https_first_mode";
private static final String PREF_SECURE_DNS = "secure_dns";
private static final String PREF_DO_NOT_TRACK = "do_not_track";
+ private static final String PREF_ENABLE_REFERRERS = "enable_referrers";
private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data";
private static final String PREF_PROXY_OPTIONS = "proxy";
private static final String PREF_PRIVACY_REVIEW = "privacy_review";
@@ -188,6 +189,9 @@ public class PrivacySettings
} else if (PREF_CAN_MAKE_PAYMENT.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED, (boolean) newValue);
+ } else if (PREF_ENABLE_REFERRERS.equals(key)) {
+ UserPrefs.get(Profile.getLastUsedRegularProfile())
+ .setBoolean(Pref.ENABLE_REFERRERS, (boolean) newValue);
} else if (PREF_HTTPS_FIRST_MODE.equals(key)) {
UserPrefs.get(Profile.getLastUsedRegularProfile())
.setBoolean(Pref.HTTPS_ONLY_MODE_ENABLED, (boolean) newValue);
@@ -241,6 +245,10 @@ public class PrivacySettings
: R.string.text_off);
}
+ ChromeSwitchPreference enableReferrerPref = findPreference(PREF_ENABLE_REFERRERS);
+ enableReferrerPref.setChecked(prefService.getBoolean(Pref.ENABLE_REFERRERS));
+ enableReferrerPref.setOnPreferenceChangeListener(this);
+
Preference preloadPagesPreference = findPreference(PREF_PRELOAD_PAGES);
if (preloadPagesPreference != null) {
preloadPagesPreference.setSummary(
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -873,6 +873,9 @@ CHAR_LIMIT guidelines:
For example, some websites may respond to this request by showing you ads that arent based on other websites youve visited. Many websites will still collect and use your browsing data — for example to improve security, to provide content, ads and recommendations, and to generate reporting statistics.
</message>
+ <message name="IDS_ENABLE_REFERRERS_TITLE" desc="Title for 'Enable referrers' preference">
+ Enable HTTP Referer header
+ </message>
<message name="IDS_CAN_MAKE_PAYMENT_TITLE" desc="Title for preference to allow websites to know whether you have payment methods available through PaymentRequest.CanMakePayment interface">
Access payment methods
</message>
diff --git a/content/browser/renderer_host/navigation_request.cc b/content/browser/renderer_host/navigation_request.cc
--- a/content/browser/renderer_host/navigation_request.cc
+++ b/content/browser/renderer_host/navigation_request.cc
@@ -425,6 +425,13 @@ void AddAdditionalRequestHeaders(
blink::mojom::Referrer(GURL(), network::mojom::ReferrerPolicy::kNever);
}
+ if (!url::IsSameOriginWith(referrer->url.GetAsReferrer(), url) &&
+ frame_tree_node->IsOutermostMainFrame()) {
+ // remove referrer if the navigation is done on the top frame
+ *referrer =
+ blink::mojom::Referrer(GURL(), network::mojom::ReferrerPolicy::kNever);
+ }
+
// Next, set the HTTP Origin if needed.
if (NeedsHTTPOrigin(headers, method)) {
url::Origin origin_header_value = initiator_origin.value_or(url::Origin());
diff --git a/services/network/public/cpp/resource_request.h b/services/network/public/cpp/resource_request.h
--- a/services/network/public/cpp/resource_request.h
+++ b/services/network/public/cpp/resource_request.h
@@ -130,7 +130,7 @@ struct COMPONENT_EXPORT(NETWORK_CPP_BASE) ResourceRequest {
std::vector<GURL> navigation_redirect_chain;
GURL referrer;
- net::ReferrerPolicy referrer_policy = net::ReferrerPolicy::NEVER_CLEAR;
+ net::ReferrerPolicy referrer_policy = net::ReferrerPolicy::REDUCE_GRANULARITY_ON_TRANSITION_CROSS_ORIGIN;
net::HttpRequestHeaders headers;
net::HttpRequestHeaders cors_exempt_headers;
int load_flags = 0;
--
2.25.1
@@ -1414,7 +1414,7 @@ diff --git a/components/component_updater/android/java/src/org/chromium/componen
diff --git a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java
--- a/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java
+++ b/components/external_intents/android/java/src/org/chromium/components/external_intents/ExternalNavigationHandler.java
@@ -2463,14 +2463,6 @@ public class ExternalNavigationHandler {
@@ -2466,14 +2466,6 @@ public class ExternalNavigationHandler {
* @return Whether the given intent is going to open an Instant App.
*/
private static boolean isIntentToInstantApp(Intent intent) {
@@ -3439,7 +3439,7 @@ diff --git a/content/public/android/BUILD.gn b/content/public/android/BUILD.gn
diff --git a/content/test/BUILD.gn b/content/test/BUILD.gn
--- a/content/test/BUILD.gn
+++ b/content/test/BUILD.gn
@@ -3069,10 +3069,6 @@ if (is_android) {
@@ -3068,10 +3068,6 @@ if (is_android) {
testonly = true
sources = content_java_sources_needing_jni
deps = [
@@ -8,8 +8,10 @@ and disable observers
Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../blink/renderer/modules/netinfo/network_information.cc | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
.../renderer/modules/netinfo/network_information.cc | 5 ++++-
.../platform/network/network_state_notifier.cc | 11 +++++++++++
.../platform/network/network_state_notifier.h | 2 +-
3 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/third_party/blink/renderer/modules/netinfo/network_information.cc b/third_party/blink/renderer/modules/netinfo/network_information.cc
--- a/third_party/blink/renderer/modules/netinfo/network_information.cc
@@ -31,23 +33,54 @@ diff --git a/third_party/blink/renderer/modules/netinfo/network_information.cc b
DCHECK(GetExecutionContext()->IsContextThread());
const String host = Host();
@@ -242,6 +243,8 @@ void NetworkInformation::ContextDestroyed() {
@@ -242,6 +243,7 @@ void NetworkInformation::ContextDestroyed() {
}
void NetworkInformation::StartObserving() {
+ //is_fake_observing_ = true;
+ if ((true)) return;
if (!IsObserving() && !context_stopped_) {
type_ = GetNetworkStateNotifier().ConnectionType();
DCHECK(!connection_observer_handle_);
@@ -252,6 +255,8 @@ void NetworkInformation::StartObserving() {
@@ -252,6 +254,7 @@ void NetworkInformation::StartObserving() {
}
void NetworkInformation::StopObserving() {
+ //is_fake_observing_ = false;
+ if ((true)) return;
if (IsObserving()) {
DCHECK(connection_observer_handle_);
connection_observer_handle_ = nullptr;
diff --git a/third_party/blink/renderer/platform/network/network_state_notifier.cc b/third_party/blink/renderer/platform/network/network_state_notifier.cc
--- a/third_party/blink/renderer/platform/network/network_state_notifier.cc
+++ b/third_party/blink/renderer/platform/network/network_state_notifier.cc
@@ -99,6 +99,17 @@ NetworkStateNotifier::ScopedNotifier::~ScopedNotifier() {
}
}
+NetworkStateNotifier::NetworkStateNotifier() : has_override_(false) {
+ // set default data
+ SetNetworkConnectionInfoOverride(
+ /*on_line*/ true,
+ /*type*/ WebConnectionType::kWebConnectionTypeWifi,
+ /*effective_type*/ absl::nullopt,
+ /*http_rtt_msec*/ 0,
+ /*max_bandwidth_mbps*/ std::numeric_limits<double>::max());
+ SetNetworkQuality(/*effective_type*/ WebEffectiveConnectionType::kType4G, base::TimeDelta(), base::TimeDelta(), 10000);
+}
+
NetworkStateNotifier::NetworkStateObserverHandle::NetworkStateObserverHandle(
NetworkStateNotifier* notifier,
NetworkStateNotifier::ObserverType type,
diff --git a/third_party/blink/renderer/platform/network/network_state_notifier.h b/third_party/blink/renderer/platform/network/network_state_notifier.h
--- a/third_party/blink/renderer/platform/network/network_state_notifier.h
+++ b/third_party/blink/renderer/platform/network/network_state_notifier.h
@@ -122,7 +122,7 @@ class PLATFORM_EXPORT NetworkStateNotifier {
scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
};
- NetworkStateNotifier() : has_override_(false) {}
+ NetworkStateNotifier();
NetworkStateNotifier(const NetworkStateNotifier&) = delete;
NetworkStateNotifier& operator=(const NetworkStateNotifier&) = delete;
--
2.25.1
@@ -556,7 +556,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
private ThumbnailProvider mThumbnailProvider;
private boolean mActionsOnAllRelatedTabs;
@@ -554,7 +504,6 @@ class TabListMediator {
@@ -559,7 +509,6 @@ class TabListMediator {
* @param gridCardOnClickListenerProvider Provides the onClickListener for opening dialog when
* click on a grid card.
* @param dialogHandler A handler to handle requests about updating TabGridDialog.
@@ -564,7 +564,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
* @param componentName This is a unique string to identify different components.
* @param uiType The type of UI this mediator should be building.
*/
@@ -565,7 +514,6 @@ class TabListMediator {
@@ -570,7 +519,6 @@ class TabListMediator {
@Nullable SelectionDelegateProvider selectionDelegateProvider,
@Nullable GridCardOnClickListenerProvider gridCardOnClickListenerProvider,
@Nullable TabGridDialogHandler dialogHandler,
@@ -572,7 +572,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
String componentName, @UiType int uiType) {
mContext = context;
mTabModelSelector = tabModelSelector;
@@ -580,7 +528,6 @@ class TabListMediator {
@@ -585,7 +533,6 @@ class TabListMediator {
mTabGridDialogHandler = dialogHandler;
mActionsOnAllRelatedTabs = actionOnRelatedTabs;
mUiType = uiType;
@@ -580,7 +580,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
mTabModelObserver = new TabModelObserver() {
@Override
@@ -761,35 +708,6 @@ class TabListMediator {
@@ -766,35 +713,6 @@ class TabListMediator {
mTabGridItemTouchHelperCallback = new TabGridItemTouchHelperCallback(context, mModel,
mTabModelSelector, mTabClosedListener, mTabGridDialogHandler, mComponentName,
mActionsOnAllRelatedTabs, mMode);
@@ -616,7 +616,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
}
public void initWithNative(Profile profile) {
@@ -1178,9 +1096,6 @@ class TabListMediator {
@@ -1183,9 +1101,6 @@ class TabListMediator {
Collections.sort(tabsList, LAST_SHOWN_COMPARATOR);
}
mVisible = tabsList != null;
@@ -626,7 +626,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
if (areTabsUnchanged(tabsList)) {
if (tabsList == null) return true;
for (int i = 0; i < tabsList.size(); i++) {
@@ -1721,34 +1636,6 @@ class TabListMediator {
@@ -1726,34 +1641,6 @@ class TabListMediator {
}
private void setupPersistedTabDataFetcherForTab(PseudoTab pseudoTab, int index) {
@@ -661,7 +661,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
}
@VisibleForTesting
@@ -1856,23 +1743,6 @@ class TabListMediator {
@@ -1861,23 +1748,6 @@ class TabListMediator {
return false;
}
@@ -685,7 +685,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
/**
* Update the layout of tab switcher to make it compact. Because now we have messages within the
* tabs like PriceMessage and these messages take up the entire row, some operations like
@@ -1883,7 +1753,7 @@ class TabListMediator {
@@ -1888,7 +1758,7 @@ class TabListMediator {
void updateLayout() {
// Right now we need to update layout only if there is a price welcome message card in tab
// switcher.
@@ -694,7 +694,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
assert mGridLayoutManager != null;
int spanCount = mGridLayoutManager.getSpanCount();
GridLayoutManager.SpanSizeLookup spanSizeLookup = mGridLayoutManager.getSpanSizeLookup();
@@ -1975,25 +1845,4 @@ class TabListMediator {
@@ -1980,25 +1850,4 @@ class TabListMediator {
private boolean isShowingTabsInMRUOrder() {
return TabSwitcherCoordinator.isShowingTabsInMRUOrder(mMode);
}
@@ -1837,7 +1837,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
import org.chromium.chrome.browser.privacy.settings.PrivacyPreferencesManagerImpl;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory;
@@ -1892,27 +1891,6 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -1891,27 +1890,6 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
}
private void maybeShowPriceDropIPH() {
@@ -3575,7 +3575,7 @@ diff --git a/chrome/browser/first_run/android/java/src/org/chromium/chrome/brows
diff --git a/chrome/browser/media/router/discovery/access_code/BUILD.gn b/chrome/browser/media/router/discovery/access_code/BUILD.gn
--- a/chrome/browser/media/router/discovery/access_code/BUILD.gn
+++ b/chrome/browser/media/router/discovery/access_code/BUILD.gn
@@ -55,7 +55,6 @@ if (!is_android) {
@@ -57,7 +57,6 @@ if (!is_android) {
"//chrome/browser/media/router/discovery:discovery",
"//chrome/browser/media/router/discovery/access_code:discovery_resources_proto",
"//chrome/browser/profiles:profile",
@@ -482,7 +482,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
import org.chromium.chrome.browser.page_info.ChromePageInfo;
import org.chromium.chrome.browser.partnercustomizations.PartnerBrowserCustomizations;
import org.chromium.chrome.browser.privacy.settings.PrivacyPreferencesManagerImpl;
@@ -1953,11 +1952,6 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -1952,11 +1951,6 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
return mLocationBar.getOmniboxStub();
}
@@ -421,7 +421,7 @@ diff --git a/components/ntp_snippets/features.cc b/components/ntp_snippets/featu
diff --git a/testing/variations/fieldtrial_testing_config.json b/testing/variations/fieldtrial_testing_config.json
--- a/testing/variations/fieldtrial_testing_config.json
+++ b/testing/variations/fieldtrial_testing_config.json
@@ -4701,6 +4701,24 @@
@@ -4731,6 +4731,24 @@
]
}
],
@@ -192,7 +192,7 @@ diff --git a/components/external_intents/android/javatests/src/org/chromium/comp
}
@Test
@@ -2835,6 +2833,11 @@ public class ExternalNavigationHandlerTest {
@@ -2841,6 +2839,11 @@ public class ExternalNavigationHandlerTest {
&& !packageName.equals(INVALID_WEBAPK_PACKAGE_NAME);
}
@@ -15,7 +15,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/app/resources/generated_resources_zh-CN.xtb b/chrome/app/resources/generated_resources_zh-CN.xtb
--- a/chrome/app/resources/generated_resources_zh-CN.xtb
+++ b/chrome/app/resources/generated_resources_zh-CN.xtb
@@ -8558,4 +8558,6 @@
@@ -8557,4 +8557,6 @@
<translation id="996803490569799917">查看与亲朋好友相聚时刻的回忆集锦</translation>
<translation id="99731366405731005">您需要开启 <ph name="LINK1_BEGIN" />Chrome 同步<ph name="LINK1_END" />才能使用 Wi-Fi 同步功能。<ph name="LINK2_BEGIN" />了解详情<ph name="LINK2_END" /></translation>
<translation id="998747458861718449">检查(&amp;N)</translation>
+8 -8
View File
@@ -68,7 +68,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/ChildA
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunActivity.java
@@ -31,8 +31,6 @@ import org.chromium.chrome.browser.customtabs.CustomTabActivity;
@@ -32,8 +32,6 @@ import org.chromium.chrome.browser.customtabs.CustomTabActivity;
import org.chromium.chrome.browser.fonts.FontPreloader;
import org.chromium.chrome.browser.metrics.UmaUtils;
import org.chromium.chrome.browser.search_engines.TemplateUrlServiceFactory;
@@ -77,7 +77,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
import org.chromium.components.browser_ui.modaldialog.AppModalPresenter;
import org.chromium.ui.base.LocalizationUtils;
import org.chromium.ui.modaldialog.ModalDialogManager;
@@ -144,18 +142,7 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
@@ -145,18 +143,7 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
/** Creates first page and sets up adapter. Should result UI being shown on the screen. */
private void createFirstPage() {
BooleanSupplier showWelcomePage = () -> !FirstRunStatus.shouldSkipWelcomePage();
@@ -97,7 +97,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
mFreProgressStates.add(MobileFreProgress.WELCOME_SHOWN);
mPagerAdapter = new FirstRunPagerAdapter(FirstRunActivity.this, mPages);
mPager.setAdapter(mPagerAdapter);
@@ -163,15 +150,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
@@ -164,15 +151,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
// native and policy service have been initialized.
}
@@ -113,7 +113,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
/**
* Create the page sequence which requires native initialized, and policies loaded if any
* on-device policies may exists.
@@ -185,7 +163,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
@@ -186,7 +164,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
BooleanSupplier showSearchEnginePromo =
() -> mFreProperties.getBoolean(SHOW_SEARCH_ENGINE_PAGE);
@@ -121,7 +121,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
// An optional page to select a default search engine.
if (showSearchEnginePromo.getAsBoolean()) {
@@ -194,11 +171,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
@@ -195,11 +172,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
mFreProgressStates.add(MobileFreProgress.DEFAULT_SEARCH_ENGINE_SHOWN);
}
@@ -133,7 +133,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
if (mPagerAdapter != null) {
mPagerAdapter.notifyDataSetChanged();
}
@@ -243,10 +215,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
@@ -244,10 +216,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
@Override
public void triggerLayoutInflation() {
@@ -144,7 +144,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
super.triggerLayoutInflation();
initializeStateFromLaunchData();
@@ -256,7 +224,7 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
@@ -257,7 +225,7 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
setFinishOnTouchOutside(true);
setContentView(createContentView());
@@ -153,7 +153,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
// SigninFirstRunFragment doesn't use getProperties() and can be shown right away,
// without waiting for FirstRunFlowSequencer.
createFirstPage();
@@ -528,10 +496,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
@@ -529,10 +497,6 @@ public class FirstRunActivity extends FirstRunActivityBase implements FirstRunPa
public void acceptTermsOfService(boolean allowCrashUpload) {
assert mNativeSideIsInitializedSupplier.hasValue();
-1
View File
@@ -21,7 +21,6 @@ enable_platform_dolby_vision=true
enable_platform_hevc=true
enable_remoting=false
enable_reporting=false
enable_supervised_users=false
enable_vr=false
exclude_unwind_tables=false
ffmpeg_branding="Chrome"