Compare commits
103
Commits
remove-site-data
...
v109
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
21397e931a | ||
|
|
6def6dbb13 | ||
|
|
4bd07ff2a8 | ||
|
|
9af802b19a | ||
|
|
6c61862192 | ||
|
|
8de6ebd120 | ||
|
|
0e90d1abc4 | ||
|
|
029f26f52b | ||
|
|
fd697a78a1 | ||
|
|
782a40f709 | ||
|
|
e20700b880 | ||
|
|
4edd166532 | ||
|
|
a0daaacf6d | ||
|
|
868202cc90 | ||
|
|
a036ebc7fa | ||
|
|
d4d64568c4 | ||
|
|
6c7c3a464b | ||
|
|
37dc3f3f9a | ||
|
|
506078ceec | ||
|
|
5305deddb4 | ||
|
|
ce0831ac07 | ||
|
|
4d9aeafe84 | ||
|
|
b832e272de | ||
|
|
3c356c438e | ||
|
|
6147d667f1 | ||
|
|
9e6782f08d | ||
|
|
e9bf23509a | ||
|
|
be2a93f8b3 | ||
|
|
1a98943b7b | ||
|
|
499e54afc2 | ||
|
|
9ee77a4e1d | ||
|
|
a34a56760f | ||
|
|
fa31ed23d4 | ||
|
|
196b7aeb57 | ||
|
|
ed157739e4 | ||
|
|
b53615f711 | ||
|
|
9f00f57f9b | ||
|
|
1dd630c767 | ||
|
|
5b3407dac4 | ||
|
|
58211b7d40 | ||
|
|
bec354837c | ||
|
|
fdb76cca90 | ||
|
|
a9fa3ee3a7 | ||
|
|
992d7ba767 | ||
|
|
8dcef19700 | ||
|
|
ebb00aec78 | ||
|
|
42b1cc902b | ||
|
|
1910dad049 | ||
|
|
87d3ef70eb | ||
|
|
a38283a21a | ||
|
|
0b195c831b | ||
|
|
236a41fbc4 | ||
|
|
182c239e96 | ||
|
|
c2366cad99 | ||
|
|
a2cf968b7d | ||
|
|
a3605523e5 | ||
|
|
7dcdc98732 | ||
|
|
adcc477c33 | ||
|
|
6df964528a | ||
|
|
dca45015a4 | ||
|
|
069095f200 | ||
|
|
1a874980c9 | ||
|
|
94fb357b3e | ||
|
|
41ab84eba8 | ||
|
|
ff8c9f219c | ||
|
|
8d0f1903c7 | ||
|
|
69e7f5cc91 | ||
|
|
5971dfdcb0 | ||
|
|
82625a734e | ||
|
|
622da7ae82 | ||
|
|
2b57217034 | ||
|
|
d65d4a3d6b | ||
|
|
ddb789ed0d | ||
|
|
a8f50230a0 | ||
|
|
5d7913cf42 | ||
|
|
ae91ca61c9 | ||
|
|
3b19df2828 | ||
|
|
650d6bfcb6 | ||
|
|
996fff2c7a | ||
|
|
216f4ce5c0 | ||
|
|
506d1a51b8 | ||
|
|
9a8759023c | ||
|
|
57ea2280a0 | ||
|
|
67edc4337f | ||
|
|
994c9dbd98 | ||
|
|
505b939073 | ||
|
|
99ed991ace | ||
|
|
c7a6d5e006 | ||
|
|
1576384e02 | ||
|
|
f77ac33155 | ||
|
|
8439ece721 | ||
|
|
b60242dde9 | ||
|
|
10247f9b65 | ||
|
|
32258dc105 | ||
|
|
0162eb0566 | ||
|
|
796a3b0acf | ||
|
|
b590fcae83 | ||
|
|
b21c08de2f | ||
|
|
76277b4c08 | ||
|
|
90e29193cb | ||
|
|
06259daa58 | ||
|
|
b7d091858e | ||
|
|
a880d8cf53 |
+1
-1
@@ -1,4 +1,4 @@
|
||||
# These are supported funding model platforms
|
||||
|
||||
liberapay: csagan5
|
||||
patreon: csagan5
|
||||
custom: https://www.bromite.org/#donate
|
||||
|
||||
@@ -6,7 +6,8 @@ body:
|
||||
value: |
|
||||
Welcome! Thanks for taking the time to submit a bug report.
|
||||
|
||||
If you are looking for a place to ask a question to the Bromite community then please use the [GitHub Discussions](https://github.com/bromite/bromite/discussions) instead.
|
||||
If this is not a bug about the Bromite browser, or you are looking for a place to ask a question to the community,
|
||||
then please use the [GitHub Discussions](https://github.com/bromite/bromite/discussions) instead.
|
||||
|
||||
Make sure you have acknowledged and completed this template before submitting your issue.
|
||||
|
||||
@@ -25,6 +26,8 @@ body:
|
||||
required: true
|
||||
- label: "I have updated Bromite to the latest version. The bug is reproducible on this latest version."
|
||||
required: true
|
||||
- label: "This is a bug report about the Bromite browser (not about the website, building Bromite, F-Droid or anything else)."
|
||||
required: true
|
||||
|
||||
- type: dropdown
|
||||
id: is_chromium
|
||||
@@ -73,6 +76,7 @@ body:
|
||||
multiple: false
|
||||
description: What version of Android are you running?
|
||||
options:
|
||||
- 13
|
||||
- 12.1
|
||||
- 12.0
|
||||
- 11
|
||||
|
||||
@@ -6,7 +6,8 @@ body:
|
||||
value: |
|
||||
Welcome! Thanks for taking time to submit a feature request.
|
||||
|
||||
If you are looking for a place to ask a question to the Bromite community then please use the [GitHub Discussions](https://github.com/bromite/bromite/discussions) instead.
|
||||
If this is not a feature request about the Bromite browser, or you are looking for a place
|
||||
to ask a question to the community then please use the [GitHub Discussions](https://github.com/bromite/bromite/discussions) instead.
|
||||
|
||||
Make sure you have acknowledged and completed this template before submitting your issue.
|
||||
|
||||
@@ -27,6 +28,8 @@ body:
|
||||
required: true
|
||||
- label: "I have searched [existing issues](https://github.com/bromite/bromite/issues) for my feature request. This is a new issue (NOT a duplicate) and is not related to another issue."
|
||||
required: true
|
||||
- label: "This is a feature request for the Bromite browser; not the website nor F-Droid nor anything else."
|
||||
required: true
|
||||
|
||||
- type: dropdown
|
||||
id: is_privacy_related
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
## Description
|
||||
|
||||
*Please explain here what feature or bugfix these changes are addressing and why they should be included*
|
||||
|
||||
## All submissions
|
||||
|
||||
* [ ] there are no other open [Pull Requests](../../../pulls) for the same update/change
|
||||
* [ ] Bromite can be built with these changes
|
||||
* [ ] I have tested that the new change works as intended (AVD or physical device will do)
|
||||
|
||||
### Format
|
||||
|
||||
* [ ] patch subject and filename match (e.g. `Subject: Alternative cache (NIK-based)` -> `Alternative-cache-NIK-based.patch`)
|
||||
* [ ] patch description contains explanation of changes
|
||||
* [ ] no unnecessary whitespace or unrelated changes
|
||||
@@ -1,3 +1,86 @@
|
||||
# 108.0.5359.156
|
||||
|
||||
# 108.0.5359.109
|
||||
* reintroduce adaptive-button-in-top-toolbar-customization flag
|
||||
|
||||
# 108.0.5359.106
|
||||
* fix crash when using always incognito (fixes https://github.com/bromite/bromite/issues/2482)
|
||||
* enable third-party storage partitioning (fixes https://github.com/bromite/bromite/issues/2337)
|
||||
* disable features ExperimentsForAgsa, KeepPrefetchedContentSuggestions, CriticalClientHint, AcceptCHFrame (accidentally enabled but not effective in 108.0.5359.75)
|
||||
|
||||
# 108.0.5359.75
|
||||
* drop patch to mark all favicons ON_DEMAND (fixed by upstream, see https://bugs.chromium.org/p/chromium/issues/detail?id=1096660)
|
||||
* enable AutomaticLazyFrameLoadingToAds and AutomaticLazyFrameLoadingToEmbeds features
|
||||
* drop patch for SDK21 to prevent crashes on download
|
||||
* fix patch to ignore enterprise policies for secure DNS (fixes https://github.com/bromite/bromite/issues/2463)
|
||||
* stop using SM-G960U as model provided via client hints and Javascript (fixes https://github.com/bromite/bromite/issues/2465)
|
||||
* temptative fix for OfflinePageModelFactory crash (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2419)
|
||||
* fix fingerprinting vector via Window.requestAnimationFrame() (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2370)
|
||||
* remove patch for offline measurements background task (fixes https://github.com/bromite/bromite/issues/2468)
|
||||
* enable PermuteTLSExtensions (fixes https://github.com/bromite/bromite/issues/2467)
|
||||
* hide "turn on enhanced protection" in security interstitials
|
||||
|
||||
# 107.0.5304.114
|
||||
* fix for drag selection not working with bottom toolbar (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2411)
|
||||
* fix for navbar color not matching site color (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2416)
|
||||
* clamp time resolution in WebWorkers' requestAnimationFrame (thanks to @uazo)
|
||||
* drop patch for AV1 codec support (already in upstream)
|
||||
|
||||
# 107.0.5304.96
|
||||
* bottom toolbar: fix for white strip at top in tab view (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2407)
|
||||
* reverse tab order from top to bottom when using bottom toolbar (thanks to @uazo)
|
||||
* dropped patches already merged upstream (partition DNS requests by top frame NIK, clipboard user gesture requirement removal)
|
||||
* disable StartSurface feature
|
||||
|
||||
# 106.0.5249.163
|
||||
* enable ECH (Encrypted ClientHello) by default
|
||||
|
||||
# 106.0.5249.72
|
||||
* dropped patches already merged upstream
|
||||
|
||||
# 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)
|
||||
* fix the lack of protection in canvas.convertToBlob()
|
||||
* improve incognito mode detection countermeasures (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/1615)
|
||||
* fix toolbar gesture when using bottom navigation bar (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2253)
|
||||
|
||||
# 104.0.5112.91
|
||||
* re-introduce modal flag to prompt when closing all tabs
|
||||
* sharing hub: always use visible URL (fixes https://github.com/bromite/bromite/issues/2204)
|
||||
* add SVG fingerprinting mitigation (thanks to @uazo)
|
||||
* updated zh_CN translactions (thanks to @zhmars)
|
||||
* dropped patch to open YouTube links in Bromite
|
||||
|
||||
# 104.0.5112.63
|
||||
|
||||
# 103.0.5060.140
|
||||
* fix timezone override not working correctly (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2133)
|
||||
* never provide navigator.connection info (thanks to @uazo)
|
||||
* fix management of custom User-Agent (thanks to @uazo)
|
||||
|
||||
# 103.0.5060.126
|
||||
* fix malfunctioning sticky desktop mode (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2179)
|
||||
* fix non-working passwords manager (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2188)
|
||||
* fix crash when opening recent tabs (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2190)
|
||||
* fix autoplay not working correctly (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2096)
|
||||
* add GN flag for clangd builds (thanks to @uazo)
|
||||
|
||||
# 103.0.5060.121
|
||||
* do not enable always use HTTPS by default
|
||||
* match system dark mode (thanks to @krlvm)
|
||||
* remove window name on cross origin navigation (thanks to @uazo)
|
||||
* remove preload of GMS fonts on stock Android (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2156)
|
||||
|
||||
# 102.0.5005.96
|
||||
* fix history expiration bug (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2104)
|
||||
* fix category setting activation (thanks to @uazo, fixes https://github.com/bromite/bromite/issues/2091)
|
||||
|
||||
@@ -38,7 +38,7 @@ No.
|
||||
We cannot add add-ons to Bromite (merely some features).
|
||||
|
||||
## Is Bromite on Play Store?
|
||||
No, and this is unlikely to change. Many limitations apply for submissions there, including which ads are allowed to be blocked.
|
||||
No, and this is not going to change. Many limitations apply for submissions there, including which ads are allowed to be blocked.
|
||||
|
||||
Bromite favors user freedom in software choice: the device is yours so you get to choose which software to run on it, end of the story.
|
||||
|
||||
@@ -85,7 +85,11 @@ Various Android browsers get some fee to ship their apps with a specific default
|
||||
Changing the default search engine would lead to an endless series of requests to change it based on personal preferences, thus no change is made to the default.
|
||||
See also: https://github.com/bromite/bromite/wiki/SearchEngines
|
||||
|
||||
## Some sites show ads, how can I fix this?
|
||||
## Some websites show ads, how can I fix this?
|
||||
You can compare the blocked URLs with a desktop browser and Bromite (using [remote debugging](https://developer.chrome.com/docs/devtools/remote-debugging/)) and figure out some new filter rules to be added.
|
||||
If the ads are blocked via cosmetic filtering then blocking them is not possible with Bromite's engine and you might need something like an [user script](https://github.com/bromite/bromite/wiki/UserScripts) instead.
|
||||
See also: https://github.com/bromite/bromite/wiki/AdBlocking
|
||||
|
||||
## This JavaScript/WebGL website is not performing well with Bromite, how can I fix this?
|
||||
Bromite comes with [JavaScript JIT](https://hacks.mozilla.org/2017/02/a-crash-course-in-just-in-time-jit-compilers/) disabled by default; if you trust the website you can enable it.
|
||||
For more information about this, search "javascript jit vulnerabilities" on your favorite search engine.
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
[](https://stand-with-ukraine.pp.ua/)
|
||||
|
||||
# Bromite - Take back your browser
|
||||
<a href="https://github.com/bromite/bromite/releases/latest">
|
||||
<img src="https://www.bromite.org/release.svg" alt="current Bromite release" title="current Bromite release" /> </a>
|
||||
@@ -27,7 +29,9 @@ Minimal UI changes are applied to help curbing the idea of "browser as an advert
|
||||
|
||||
Please donate to support development of Bromite and the costs for the build system.
|
||||
|
||||
[→ Support development with a donation](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=JP3XTQPVRNET2): [](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=JP3XTQPVRNET2)
|
||||
## → Support development with a donation
|
||||
|
||||
Patreon: https://www.patreon.com/csagan5
|
||||
|
||||
<a href="bitcoin:bc1qlx7h0lj9z88g2xfeuwsrtfs77sxuhrxf2t28sw">BTC donations address</a>: `bc1qlx7h0lj9z88g2xfeuwsrtfs77sxuhrxf2t28sw`
|
||||
|
||||
@@ -86,7 +90,7 @@ ETH donations address: `0x5d392F8FBf3465afe05B1Adc575e248D33B891F6`
|
||||
* HTTPS-only mode enabled by default
|
||||
* disable TLS resumption by default
|
||||
* partition DoH requests by top-frame NIK
|
||||
* add option to use home page as NTP
|
||||
* strict site isolation and strict origin isolation
|
||||
|
||||
## Features not related to privacy
|
||||
* browser automatic updates, enabled by default
|
||||
@@ -116,6 +120,7 @@ ETH donations address: `0x5d392F8FBf3465afe05B1Adc575e248D33B891F6`
|
||||
* keyboard dictionary hints in address bar
|
||||
* always allow `view-source:` URLs
|
||||
* allow moving navigation bar to bottom
|
||||
* add option to use home page as NTP
|
||||
|
||||
You can inspect all functionality/privacy changes by reading the [patches](https://github.com/bromite/bromite/tree/master/build/patches) and/or the [CHANGELOG](./CHANGELOG.md).
|
||||
|
||||
@@ -147,11 +152,13 @@ New flags:
|
||||
* `#allow-user-certificates`, disabled by default
|
||||
* `#cleartext-permitted`, enabled by default, can be used to disable all cleartext-HTTP traffic
|
||||
* `#omnibox-autocomplete-filtering`, can be used to restrict omnibox autocomplete results
|
||||
* `#disable-external-intent-requests`
|
||||
* `#disable-external-intent-requests`, can be used to disable opening any external app for any URL
|
||||
* `#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
|
||||
* `#offline-pages-auto-save`, disabled by default, allows auto-saving of pages when device goes offline
|
||||
* `#adaptive-button-in-top-toolbar-customization`, disabled by default, allows having a new tab or share button on the address bar
|
||||
|
||||
### Site settings
|
||||
|
||||
@@ -209,6 +216,8 @@ The Chromium version tag used as base for the patches is available here: [RELEAS
|
||||
The GN args used to build Bromite are available here: [bromite.gn_args](./build/bromite.gn_args).
|
||||
The patches are to be applied second the order specified in the `bromite_patches_list.txt` file (you can use `git am`).
|
||||
|
||||
NOTE: no official support is provided for builds.
|
||||
|
||||
## How to build the filters
|
||||
|
||||
See upstream documentation: https://github.com/chromium/chromium/blob/master/components/subresource_filter/FILTER_LIST_GENERATION.md
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
<svg viewBox="0 0 1040 200" xmlns="http://www.w3.org/2000/svg">
|
||||
<style>
|
||||
@namespace svg url(http://www.w3.org/2000/svg);
|
||||
|
||||
svg {
|
||||
font-family: Helvetica, Arial, sans-serif;
|
||||
text-rendering: geometricPrecision;
|
||||
}
|
||||
svg|a:link, svg|a:visited {
|
||||
cursor: pointer;
|
||||
}
|
||||
.flag-blue {
|
||||
fill: #0057b7;
|
||||
}
|
||||
.flag-yellow {
|
||||
fill: #ffd700;
|
||||
}
|
||||
.message {
|
||||
fill: white;
|
||||
font-size: 20px;
|
||||
}
|
||||
.call {
|
||||
fill: black;
|
||||
font-size: 32px;
|
||||
}
|
||||
.mobile-only {
|
||||
display: none;
|
||||
}
|
||||
.arrow {
|
||||
font-size: 24px;
|
||||
}
|
||||
@media (max-width: 770px) {
|
||||
.message {
|
||||
display: none;
|
||||
font-size: 29px;
|
||||
}
|
||||
.mobile-only {
|
||||
display: inherit;
|
||||
}
|
||||
.call {
|
||||
font-size: 36px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<a href="https://stand-with-ukraine.pp.ua">
|
||||
<rect x="0" y="0" width="100%" height="100%" class="flag-yellow"/>
|
||||
<rect x="0" y="0" width="100%" height="110px" class="flag-blue"/>
|
||||
|
||||
<text x="0" y="25" class="message">
|
||||
<tspan x="25" dy="1.15em">Russia has invaded Ukraine and already killed tens of thousands of civilians, with many more raped or tortured.</tspan>
|
||||
<tspan x="25" dy="1.35em">The death toll keeps climbing. It's a <tspan font-weight="bold">genocide</tspan>. We need your help. Let's fight back against the Russian regime.</tspan>
|
||||
</text>
|
||||
<text x="0" y="25" class="message mobile-only">
|
||||
<tspan x="25" dy=".7em">Russia has invaded Ukraine and already killed tens of thousands of civilians,</tspan>
|
||||
<tspan x="25" dy="1.2em">with many more raped or tortured. It's a <tspan font-weight="bold">genocide</tspan>. We need your help.</tspan>
|
||||
</text>
|
||||
|
||||
<text x="50%" y="78.5%" dominant-baseline="middle" text-anchor="middle" class="call">
|
||||
Help Ukraine Now <tspan dominant-baseline="middle" class="arrow">➔</tspan>
|
||||
</text>
|
||||
</a>
|
||||
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
+1
-1
@@ -1 +1 @@
|
||||
d5d96df7c999fb23a203ac332784b203afe8614f-
|
||||
56775bdf8d12f9d3e1a99fcf1dde6a7417522963-
|
||||
+1
-1
@@ -1 +1 @@
|
||||
102.0.5005.96
|
||||
109.0.5414.61
|
||||
@@ -1 +1 @@
|
||||
91e2c8c16071b47c9a1d2c1bba592f6a643dd1b1
|
||||
1b133d62395a6ad11c65997a1c24acffb3f73d9e
|
||||
@@ -22,7 +22,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"
|
||||
@@ -37,11 +36,13 @@ safe_browsing_mode=0
|
||||
symbol_level=1
|
||||
system_webview_package_name="org.bromite.webview"
|
||||
target_os="android"
|
||||
treat_warnings_as_errors=true
|
||||
use_cfi_cast=true
|
||||
use_debug_fission=true
|
||||
use_errorprone_java_compiler=false
|
||||
use_gnome_keyring=false
|
||||
use_official_google_api_keys=false
|
||||
use_rtti=false
|
||||
use_stable_package_name_for_trichrome=false
|
||||
use_sysroot=false
|
||||
webview_includes_weblayer=false
|
||||
|
||||
@@ -1,9 +1,28 @@
|
||||
Disable-third-party-cookies-by-default.patch
|
||||
Remove-EV-certificates.patch
|
||||
do-not-hide-.orig-files.patch
|
||||
Do-not-link-with-libatomic.patch
|
||||
do-not-add-suffix-to-package-name.patch
|
||||
exit-on-failure-of-inclusion.patch
|
||||
AV1-codec-support.patch
|
||||
Disable-safe-browsing.patch
|
||||
Remove-signin-and-sync-integrations.patch
|
||||
Move-some-account-settings-back-to-privacy-settings.patch
|
||||
Remove-contextual-search-manager.patch
|
||||
kill-Vision.patch
|
||||
kill-Location-fall-back-to-system.patch
|
||||
kill-Auth.patch
|
||||
Remove-binary-blob-integrations.patch
|
||||
Remove-SMS-integration.patch
|
||||
Remove-price-shopping-commerce-integrations.patch
|
||||
Remove-voice-recognition-integration.patch
|
||||
Do-not-compile-QR-code-sharing.patch
|
||||
Timezone-customization.patch
|
||||
Revert-the-removal-of-an-option-to-block-autoplay.patch
|
||||
Add-support-for-ISupportHelpAndFeedback.patch
|
||||
JIT-site-settings.patch
|
||||
Site-setting-for-images.patch
|
||||
Content-settings-infrastructure.patch
|
||||
Add-webGL-site-setting.patch
|
||||
Add-webRTC-site-settings.patch
|
||||
Switch-to-fstack-protector-strong.patch
|
||||
Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch
|
||||
Bromite-package-name.patch
|
||||
@@ -12,8 +31,6 @@ Always-use-new-tab-page-for-default-home-page.patch
|
||||
disable-battery-status-updater.patch
|
||||
Battery-API-return-nothing.patch
|
||||
updater-disable-updater-pings.patch
|
||||
Remove-EV-certificates.patch
|
||||
promo-disable-Google-promotion-fetching.patch
|
||||
Disable-omission-of-URL-elements-in-Omnibox.patch
|
||||
Modify-default-preferences.patch
|
||||
Do-not-hide-component-extensions.patch
|
||||
@@ -30,10 +47,7 @@ ungoogled-chromium-Disable-intranet-detector.patch
|
||||
ungoogled-chromium-no-special-hosts-domains.patch
|
||||
ungoogled-chromium-Disable-Gaia.patch
|
||||
ungoogled-chromium-Disable-Network-Time-Tracker.patch
|
||||
Disable-safe-browsing.patch
|
||||
Disable-all-promo-dialogs.patch
|
||||
Remove-signin-integrations.patch
|
||||
Hide-passwords-manager-link.patch
|
||||
Disable-update-scheduler.patch
|
||||
Add-English-only-search-engine.patch
|
||||
Add-DuckDuckGo-Lite-search-engine.patch
|
||||
@@ -42,7 +56,6 @@ build-remove-calling-untrusted-hooks.patch
|
||||
Inject-scripts-for-AMP-tracking-ads-and-video.patch
|
||||
Allow-playing-audio-in-background.patch
|
||||
Add-flag-to-control-video-playback-resume-feature.patch
|
||||
Open-YouTube-links-in-Bromite.patch
|
||||
Add-exit-menu-item.patch
|
||||
Remove-help-menu-item.patch
|
||||
AudioBuffer-AnalyserNode-fp-mitigations.patch
|
||||
@@ -56,8 +69,6 @@ Add-an-always-incognito-mode.patch
|
||||
Keep-flag-to-allow-screenshots-in-Incognito-mode.patch
|
||||
Add-option-to-not-persist-tabs-across-sessions.patch
|
||||
Add-a-proxy-configuration-page.patch
|
||||
Move-some-account-settings-back-to-privacy-settings.patch
|
||||
Remove-contextual-search-manager.patch
|
||||
Add-custom-tab-intents-privacy-option.patch
|
||||
Disable-FLoC-and-privacy-sandbox.patch
|
||||
History-number-of-days-privacy-setting.patch
|
||||
@@ -72,29 +83,19 @@ autofill-miscellaneous.patch
|
||||
Enable-native-Android-autofill.patch
|
||||
first_run-deactivate-autoupdate-globally.patch
|
||||
translate-disable-fetching-of-languages-from-server.patch
|
||||
kill-Vision.patch
|
||||
kill-Location-fall-back-to-system.patch
|
||||
kill-Auth.patch
|
||||
Remove-binary-blob-integrations.patch
|
||||
Remove-SMS-integration.patch
|
||||
Do-not-compile-QR-code-sharing.patch
|
||||
Allow-website-sign-in-without-account-sign-in.patch
|
||||
Offer-builtin-autocomplete-for-chrome-flags.patch
|
||||
Use-4-tile-rows-never-show-logo.patch
|
||||
Disable-various-metrics.patch
|
||||
Enable-SPPI-for-devices-with-enough-memory.patch
|
||||
Enable-StrictOriginIsolation-and-SitePerProcess.patch
|
||||
Use-64-bit-WebView-processes.patch
|
||||
prefs-disable-signinallowed-by-default.patch
|
||||
prefs-always-prompt-for-download-directory.patch
|
||||
Disable-offline-pages-in-CCT.patch
|
||||
disable-payment-support-by-default.patch
|
||||
disable-background-sync-by-default.patch
|
||||
disable-sensors-access-site-setting-by-default.patch
|
||||
Disable-media-router-and-remoting-by-default.patch
|
||||
Restore-Search-Ready-Omnibox-flag.patch
|
||||
disable-AdsBlockedInfoBar.patch
|
||||
Bromite-AdBlockUpdaterService.patch
|
||||
Bromite-subresource-adblocker.patch
|
||||
Bromite-auto-updater.patch
|
||||
Replace-DoH-probe-domain-with-RIPE-domain.patch
|
||||
Increase-number-of-autocomplete-matches-to-10.patch
|
||||
Disable-requests-for-single-word-Omnibar-searches.patch
|
||||
@@ -107,10 +108,10 @@ Disable-feeds-support-by-default.patch
|
||||
Show-site-settings-for-cookies-javascript-and-ads.patch
|
||||
Disable-DRM-media-origin-IDs-preprovisioning.patch
|
||||
Disable-smart-selection-by-default.patch
|
||||
Enable-user-agent-freeze-by-default.patch
|
||||
disable-browser-autologin-by-default.patch
|
||||
Guard-for-user-agent-reduction.patch
|
||||
AImageReader-CFI-crash-mitigations.patch
|
||||
Add-menu-item-to-view-source.patch
|
||||
Revert-removal-of-execution-context-address-space.patch
|
||||
Block-gateway-attacks-via-websockets.patch
|
||||
Enable-prefetch-privacy-changes-by-default.patch
|
||||
Disable-support-for-RAR-files-inspection.patch
|
||||
@@ -120,43 +121,33 @@ Disable-the-DIAL-repeating-discovery.patch
|
||||
Block-qjz9zk-or-trk-requests.patch
|
||||
Hardening-against-incognito-mode-detection.patch
|
||||
Remove-weblayer-dependency-on-Play-Services.patch
|
||||
Timezone-customization.patch
|
||||
Restore-Simplified-NTP-launch.patch
|
||||
Add-option-to-use-home-page-as-NTP.patch
|
||||
Revert-the-removal-of-an-option-to-block-autoplay.patch
|
||||
Disable-text-fragments-by-default.patch
|
||||
disable-WebView-variations-support.patch
|
||||
ask-permission-to-play-protected-media-by-default.patch
|
||||
Enable-network-isolation-features.patch
|
||||
Revert-flags-remove-num-raster-threads.patch
|
||||
webview-Hard-no-to-persistent-histograms.patch
|
||||
Ignore-enterprise-policies-for-secure-DNS.patch
|
||||
Add-menu-item-to-bookmark-all-tabs.patch
|
||||
Ask-user-before-closing-all-tabs.patch
|
||||
Re-introduce-modal-dialog-flag-to-close-all-tabs.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
|
||||
Add-AllowUserCertificates-flag.patch
|
||||
Add-IsCleartextPermitted-flag.patch
|
||||
Unexpire-tab-groups-flags.patch
|
||||
Add-flag-for-omnibox-autocomplete-filtering.patch
|
||||
Enable-IntentBlockExternalFormRedirectsNoGesture.patch
|
||||
Revert-Delete-block-external-form-redirects.patch
|
||||
Add-flag-to-disable-external-intent-requests.patch
|
||||
Enable-share-intent.patch
|
||||
Logcat-crash-reports-UI.patch
|
||||
Add-support-for-ISupportHelpAndFeedback.patch
|
||||
JIT-site-settings.patch
|
||||
API-level-21-prevent-crash-on-download.patch
|
||||
Add-flag-to-disable-vibration.patch
|
||||
mime_util-force-text-x-suse-ymp-to-be-downloaded.patch
|
||||
Client-hints-overrides.patch
|
||||
Disable-AGSA-by-default.patch
|
||||
Allow-building-without-enable_reporting.patch
|
||||
Disable-lock-icon-in-address-bar-by-default.patch
|
||||
Enable-share-intent.patch
|
||||
Site-setting-for-images.patch
|
||||
Bromite-auto-updater.patch
|
||||
Experimental-user-scripts-support.patch
|
||||
Keep-empty-tabs-between-sessions.patch
|
||||
Disable-third-party-origin-trials.patch
|
||||
@@ -164,10 +155,9 @@ Never-use-HTTP-probes-for-connection-detection.patch
|
||||
Disable-Accessibility-service-by-default.patch
|
||||
Disable-conversion-measurement-api.patch
|
||||
Restore-offline-indicator-v2-flag.patch
|
||||
Reintroduce-override_build_timestamp.patch
|
||||
Re-introduce-override_build_timestamp.patch
|
||||
enable-ftrivial-auto-var-init-zero.patch
|
||||
disable-appending-variations-header.patch
|
||||
Make-HTTPS-only-mode-the-default.patch
|
||||
Disable-idle-detection.patch
|
||||
Allow-building-without-supervised-users.patch
|
||||
Disable-minidump-upload-scheduling.patch
|
||||
@@ -184,16 +174,31 @@ Add-lifetime-options-for-permissions.patch
|
||||
Disable-crash-reporting.patch
|
||||
Samsung-Note-9-SDK27-crazylinker-workaround.patch
|
||||
Disable-TLS-resumption.patch
|
||||
Partition-DNS-requests-by-top-frame-NIK.patch
|
||||
Remove-mremap-from-seccomp-baseline-policy.patch
|
||||
Move-navigation-bar-to-bottom.patch
|
||||
Welcome-screen.patch
|
||||
Content-settings-infrastructure.patch
|
||||
Add-webGL-site-setting.patch
|
||||
Add-site-engagement-flag.patch
|
||||
Add-webRTC-site-settings.patch
|
||||
enable-process-isolated-sandboxed-iframes-by-default.patch
|
||||
Enable-Certificate-Transparency.patch
|
||||
Invalidate-components-public-key.patch
|
||||
Improve-plain-text-rendering-on-mobile.patch
|
||||
Remove-segmentation-platform.patch
|
||||
Follow-only-system-dark-mode.patch
|
||||
Remove-window-name-on-cross-origin-navigation.patch
|
||||
Remove-preload-of-com.google.android.gms.fonts.patch
|
||||
Partition-Blink-memory-cache.patch
|
||||
Remove-navigator.connection-info.patch
|
||||
Disable-PrivacyGuide.patch
|
||||
sharing-hub-always-use-visible-URL.patch
|
||||
Re-introduce-kWebAuthCable.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
|
||||
Enable-ECH-by-default.patch
|
||||
Disable-StartSurface-feature.patch
|
||||
Clamp-time-resolution-in-requestAnimationFrame.patch
|
||||
Enable-PermuteTLSExtensions-by-default.patch
|
||||
Enable-third-party-storage-partitioning.patch
|
||||
Restore-adaptive-button-in-top-toolbar-customization.patch
|
||||
Automated-domain-substitution.patch
|
||||
|
||||
@@ -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"
|
||||
@@ -37,11 +36,13 @@ safe_browsing_mode=2
|
||||
symbol_level=1
|
||||
system_webview_package_name="com.android.webview"
|
||||
target_os="android"
|
||||
treat_warnings_as_errors=true
|
||||
use_cfi_cast=true
|
||||
use_debug_fission=true
|
||||
use_errorprone_java_compiler=false
|
||||
use_gnome_keyring=false
|
||||
use_official_google_api_keys=false
|
||||
use_rtti=false
|
||||
use_stable_package_name_for_trichrome=false
|
||||
use_sysroot=false
|
||||
webview_includes_weblayer=false
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
AV1-codec-support.patch
|
||||
exit-on-failure-of-inclusion.patch
|
||||
Reintroduce-override_build_timestamp.patch
|
||||
do-not-hide-.orig-files.patch
|
||||
@@ -8,5 +7,4 @@ Switch-to-fstack-protector-strong.patch
|
||||
Enable-fwrapv-in-Clang-for-non-UBSan-builds.patch
|
||||
enable-ftrivial-auto-var-init-zero.patch
|
||||
Disable-feeds-support-by-default.patch
|
||||
Allow-building-without-supervised-users.patch
|
||||
Chromium-package-name.patch
|
||||
|
||||
@@ -0,0 +1,650 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 08:14:13 +0000
|
||||
Subject: 109 Move navigation bar to bottom fixup
|
||||
|
||||
---
|
||||
.../features/start_surface/StartSurfaceMediator.java | 2 +-
|
||||
.../tasks/tab_management/TabGroupUiToolbarView.java | 2 +-
|
||||
.../browser/tasks/tab_management/TabListCoordinator.java | 2 +-
|
||||
.../browser/tasks/tab_management/TabListRecyclerView.java | 6 +++---
|
||||
.../browser/tasks/tab_management/TabSwitcherMediator.java | 8 ++++----
|
||||
.../settings/ChromeAccessibilitySettingsDelegate.java | 2 +-
|
||||
.../org/chromium/chrome/browser/app/ChromeActivity.java | 2 +-
|
||||
.../chrome/browser/compositor/CompositorViewHolder.java | 2 +-
|
||||
.../browser/compositor/layouts/LayoutManagerChrome.java | 2 +-
|
||||
.../browser/compositor/layouts/ToolbarSwipeLayout.java | 4 ++--
|
||||
.../overlays/strip/StripLayoutHelperManager.java | 2 +-
|
||||
.../compositor/scene_layer/StaticTabSceneLayer.java | 2 +-
|
||||
.../browser/compositor/scene_layer/TabListSceneLayer.java | 4 ++--
|
||||
.../compositor/scene_layer/TabStripSceneLayer.java | 2 +-
|
||||
.../chrome/browser/findinpage/FindToolbarTablet.java | 2 +-
|
||||
.../chrome/browser/fullscreen/BrowserControlsManager.java | 4 ++--
|
||||
.../browser/messages/MessageContainerCoordinator.java | 4 ++--
|
||||
.../src/org/chromium/chrome/browser/ntp/NewTabPage.java | 2 +-
|
||||
.../org/chromium/chrome/browser/ntp/RecentTabsPage.java | 6 +++---
|
||||
.../chrome/browser/searchwidget/SearchActivity.java | 2 +-
|
||||
.../status_indicator/StatusIndicatorCoordinator.java | 2 +-
|
||||
.../status_indicator/StatusIndicatorSceneLayer.java | 2 +-
|
||||
.../chromium/chrome/browser/toolbar/ToolbarManager.java | 4 ++--
|
||||
.../org/chromium/chrome/browser/ui/BottomContainer.java | 6 +++---
|
||||
.../browser/ui/system/StatusBarColorController.java | 2 +-
|
||||
.../browser_controls/BrowserControlsMarginSupplier.java | 2 +-
|
||||
.../org/chromium/chrome/browser/ui/appmenu/AppMenu.java | 8 ++++----
|
||||
.../chrome/browser/ui/appmenu/AppMenuHandlerImpl.java | 2 +-
|
||||
.../chrome/browser/omnibox/UrlBarCoordinator.java | 2 +-
|
||||
.../omnibox/suggestions/AutocompleteCoordinator.java | 2 +-
|
||||
.../browser/omnibox/suggestions/AutocompleteMediator.java | 2 +-
|
||||
.../omnibox/suggestions/OmniboxSuggestionsDropdown.java | 4 ++--
|
||||
.../browser/toolbar/LocationBarFocusScrimHandler.java | 2 +-
|
||||
.../browser/toolbar/bottom/BottomControlsMediator.java | 2 +-
|
||||
.../toolbar/bottom/ScrollingBottomViewSceneLayer.java | 2 +-
|
||||
.../browser/toolbar/top/ToolbarControlContainer.java | 2 +-
|
||||
.../chrome/browser/toolbar/top/TopToolbarSceneLayer.java | 2 +-
|
||||
37 files changed, 55 insertions(+), 55 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java b/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java
|
||||
--- a/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java
|
||||
+++ b/chrome/android/features/start_surface/java/src/org/chromium/chrome/features/start_surface/StartSurfaceMediator.java
|
||||
@@ -1134,7 +1134,7 @@ class StartSurfaceMediator implements TabSwitcher.TabSwitcherViewObserver, View.
|
||||
}
|
||||
|
||||
private void setTopMargin(int topMargin) {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM))
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled())
|
||||
topMargin = 0;
|
||||
mPropertyModel.set(TOP_MARGIN, topMargin);
|
||||
}
|
||||
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiToolbarView.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiToolbarView.java
|
||||
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiToolbarView.java
|
||||
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabGroupUiToolbarView.java
|
||||
@@ -177,7 +177,7 @@ public class TabGroupUiToolbarView extends FrameLayout {
|
||||
}
|
||||
|
||||
void setPrimaryColorAndApplyTint(int color) {
|
||||
- if (!CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM))
|
||||
+ if (!ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled())
|
||||
return;
|
||||
|
||||
// change the background color of the bottom bar if the top toolbar is below
|
||||
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java
|
||||
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java
|
||||
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListCoordinator.java
|
||||
@@ -324,7 +324,7 @@ public class TabListCoordinator
|
||||
if (mMode == TabListMode.GRID) {
|
||||
GridLayoutManager gridLayoutManager =
|
||||
new GridLayoutManager(context, GRID_LAYOUT_SPAN_COUNT_COMPACT);
|
||||
- if (titleProvider != null && CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (titleProvider != null && ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
gridLayoutManager =
|
||||
new GridLayoutManagerDockBottom(context, GRID_LAYOUT_SPAN_COUNT_COMPACT);
|
||||
((GridLayoutManagerDockBottom)gridLayoutManager)
|
||||
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListRecyclerView.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListRecyclerView.java
|
||||
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListRecyclerView.java
|
||||
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListRecyclerView.java
|
||||
@@ -232,7 +232,7 @@ class TabListRecyclerView
|
||||
}
|
||||
|
||||
void setShadowVisibility(boolean shouldShowShadow) {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()
|
||||
&& mIsVisible) {
|
||||
// always show shadow
|
||||
shouldShowShadow = true;
|
||||
@@ -250,7 +250,7 @@ class TabListRecyclerView
|
||||
// Add shadow for grid tab switcher.
|
||||
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(
|
||||
LayoutParams.MATCH_PARENT, shadowHeight,
|
||||
- (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM) ?
|
||||
+ (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled() ?
|
||||
Gravity.BOTTOM :
|
||||
Gravity.TOP));
|
||||
mShadowImageView.setLayoutParams(params);
|
||||
@@ -279,7 +279,7 @@ class TabListRecyclerView
|
||||
|
||||
void setShadowTopOffset(int shadowTopOffset) {
|
||||
mShadowTopOffset = shadowTopOffset;
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// invert the offset since Gravity is set to BOTTOM
|
||||
mShadowTopOffset = -mShadowTopOffset;
|
||||
}
|
||||
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMediator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMediator.java
|
||||
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMediator.java
|
||||
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMediator.java
|
||||
@@ -461,7 +461,7 @@ class TabSwitcherMediator implements TabSwitcher.Controller, TabListRecyclerView
|
||||
updateTopControlsProperties();
|
||||
mContainerViewModel.set(
|
||||
BOTTOM_CONTROLS_HEIGHT, browserControlsStateProvider.getBottomControlsHeight());
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
mContainerViewModel.set(
|
||||
BOTTOM_CONTROLS_HEIGHT, mContainerViewModel.get(BOTTOM_CONTROLS_HEIGHT) +
|
||||
mBrowserControlsStateProvider.getContentOffset());
|
||||
@@ -471,7 +471,7 @@ class TabSwitcherMediator implements TabSwitcher.Controller, TabListRecyclerView
|
||||
if (mMode == TabListMode.GRID) {
|
||||
mContainerViewModel.set(BOTTOM_PADDING,
|
||||
(int) context.getResources().getDimension(R.dimen.tab_grid_bottom_padding));
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// adjust the bottom margin so as not to cover the top toolbar at the bottom
|
||||
mContainerViewModel.set(
|
||||
BOTTOM_PADDING, mContainerViewModel.get(BOTTOM_PADDING) +
|
||||
@@ -604,7 +604,7 @@ class TabSwitcherMediator implements TabSwitcher.Controller, TabListRecyclerView
|
||||
final int contentOffset = mBrowserControlsStateProvider.getContentOffset();
|
||||
|
||||
mContainerViewModel.set(TOP_MARGIN, contentOffset);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// move the view up since the toolbar is at the bottom
|
||||
mContainerViewModel.set(TOP_MARGIN, 0);
|
||||
}
|
||||
@@ -764,7 +764,7 @@ class TabSwitcherMediator implements TabSwitcher.Controller, TabListRecyclerView
|
||||
private void setInitialScrollIndexOffset() {
|
||||
int offset = mMode == TabListMode.CAROUSEL ? INITIAL_SCROLL_INDEX_OFFSET_CAROUSEL
|
||||
: INITIAL_SCROLL_INDEX_OFFSET_GTS;
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
offset = 0;
|
||||
}
|
||||
int initialPosition = Math.max(
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java
|
||||
@@ -104,7 +104,7 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting
|
||||
private static class MoveTopToolbarToBottomDelegate implements BooleanPreferenceDelegate {
|
||||
@Override
|
||||
public boolean isEnabled() {
|
||||
- return CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM);
|
||||
+ return ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled();
|
||||
}
|
||||
|
||||
@Override
|
||||
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
|
||||
@@ -764,7 +764,7 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
ImageView shadowImage = findViewById(R.id.toolbar_hairline);
|
||||
if (shadowImage != null) {
|
||||
// Invert the shadown if the top toolbar is at the bottom
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
ViewGroup.MarginLayoutParams marginParams = (ViewGroup.MarginLayoutParams)shadowImage.getLayoutParams();
|
||||
marginParams.setMargins(marginParams.leftMargin, 0,
|
||||
marginParams.rightMargin, marginParams.bottomMargin);
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/CompositorViewHolder.java
|
||||
@@ -319,7 +319,7 @@ public class CompositorViewHolder extends FrameLayout
|
||||
WebContents webContents = mTabVisible.getWebContents();
|
||||
if (webContents == null) return;
|
||||
EventForwarder forwarder = webContents.getEventForwarder();
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// no need to adjust the touch offsets, since the content view is never moved
|
||||
top = 0;
|
||||
}
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChrome.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChrome.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChrome.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChrome.java
|
||||
@@ -213,7 +213,7 @@ public class LayoutManagerChrome
|
||||
@Override
|
||||
public SwipeHandler createToolbarSwipeHandler(boolean supportSwipeDown) {
|
||||
boolean move_top_toolbar =
|
||||
- CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM);
|
||||
+ ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled();
|
||||
return new ToolbarSwipeHandler(supportSwipeDown && !move_top_toolbar,
|
||||
supportSwipeDown && move_top_toolbar);
|
||||
}
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/ToolbarSwipeLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/ToolbarSwipeLayout.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/ToolbarSwipeLayout.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/ToolbarSwipeLayout.java
|
||||
@@ -411,7 +411,7 @@ public class ToolbarSwipeLayout extends Layout {
|
||||
mLeftToolbarOverlay.setXOffset(leftX * dpToPx);
|
||||
}
|
||||
mLeftTab.setX(leftX);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
mLeftTab.setY(0);
|
||||
} else {
|
||||
mLeftTab.setY(mBrowserControlsStateProvider.getContentOffset() / dpToPx);
|
||||
@@ -428,7 +428,7 @@ public class ToolbarSwipeLayout extends Layout {
|
||||
mRightToolbarOverlay.setXOffset(rightX * dpToPx);
|
||||
}
|
||||
mRightTab.setX(rightX);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
mRightTab.setY(0);
|
||||
} else {
|
||||
mRightTab.setY(mBrowserControlsStateProvider.getContentOffset() / dpToPx);
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java
|
||||
@@ -421,7 +421,7 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
|
||||
mWidth, mHeight, orientationChanged, LayoutManagerImpl.time());
|
||||
|
||||
float top = 0;
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM) &&
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled() &&
|
||||
mBrowserControlsManagerSupplier.get() != null) {
|
||||
// move the rectangle to grab the touch events as the tab list (in tablet mode)
|
||||
// is down and is following the toolbar offset as it moves.
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/StaticTabSceneLayer.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/StaticTabSceneLayer.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/StaticTabSceneLayer.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/StaticTabSceneLayer.java
|
||||
@@ -48,7 +48,7 @@ public class StaticTabSceneLayer extends SceneLayer {
|
||||
float x = model.get(LayoutTab.RENDER_X) * LayoutTab.sDpToPx;
|
||||
float y = model.get(LayoutTab.CONTENT_OFFSET)
|
||||
+ model.get(LayoutTab.RENDER_Y) * LayoutTab.sDpToPx;
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// the page content window never moves, it is fixed at the top
|
||||
y = 0;
|
||||
}
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabListSceneLayer.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabListSceneLayer.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabListSceneLayer.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabListSceneLayer.java
|
||||
@@ -86,7 +86,7 @@ public class TabListSceneLayer extends SceneLayer {
|
||||
|
||||
TabListSceneLayerJni.get().beginBuildingFrame(mNativePtr, TabListSceneLayer.this);
|
||||
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// the tabs list content window is fixed at the top, where the top toolbar used to be
|
||||
viewport.top = 0;
|
||||
backgroundTopOffset = 0;
|
||||
@@ -126,7 +126,7 @@ public class TabListSceneLayer extends SceneLayer {
|
||||
contentOffset = browserControls.getContentOffset();
|
||||
}
|
||||
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
toolbarYOffset = 0;
|
||||
contentOffset = 0;
|
||||
}
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/scene_layer/TabStripSceneLayer.java
|
||||
@@ -84,7 +84,7 @@ public class TabStripSceneLayer extends SceneOverlayLayer {
|
||||
if (mNativePtr == 0) return;
|
||||
|
||||
boolean visible = yOffset > -layoutHelper.getHeight();
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// the list of open tabs (in tablet mode) is moved down, above the top
|
||||
// toolbar which is also below.
|
||||
// values are in pixel.
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/findinpage/FindToolbarTablet.java b/chrome/android/java/src/org/chromium/chrome/browser/findinpage/FindToolbarTablet.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/findinpage/FindToolbarTablet.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/findinpage/FindToolbarTablet.java
|
||||
@@ -169,7 +169,7 @@ public class FindToolbarTablet extends FindToolbar {
|
||||
|
||||
if (show && getVisibility() != View.VISIBLE && mCurrentAnimation != mAnimationEnter) {
|
||||
View anchorView = getRootView().findViewById(R.id.toolbar);
|
||||
- if (!CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (!ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) getLayoutParams();
|
||||
lp.topMargin = anchorView.getBottom() - mYInsetPx;
|
||||
setLayoutParams(lp);
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/BrowserControlsManager.java b/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/BrowserControlsManager.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/BrowserControlsManager.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/fullscreen/BrowserControlsManager.java
|
||||
@@ -400,7 +400,7 @@ public class BrowserControlsManager
|
||||
|
||||
@Override
|
||||
public int getTopControlsHeightRealOffset() {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM))
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled())
|
||||
return 0;
|
||||
else
|
||||
return mTopControlContainerHeight;
|
||||
@@ -472,7 +472,7 @@ public class BrowserControlsManager
|
||||
|
||||
@Override
|
||||
public float getTopVisibleContentOffset() {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM))
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled())
|
||||
return 0;
|
||||
return getTopControlsHeight() + getTopControlOffset();
|
||||
}
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/messages/MessageContainerCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/messages/MessageContainerCoordinator.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/messages/MessageContainerCoordinator.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/messages/MessageContainerCoordinator.java
|
||||
@@ -64,7 +64,7 @@ public class MessageContainerCoordinator implements BrowserControlsStateProvider
|
||||
}
|
||||
CoordinatorLayout.LayoutParams params =
|
||||
(CoordinatorLayout.LayoutParams) mContainer.getLayoutParams();
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
params.gravity = Gravity.START | Gravity.BOTTOM;
|
||||
params.bottomMargin = getContainerTopOffset();
|
||||
} else {
|
||||
@@ -129,7 +129,7 @@ public class MessageContainerCoordinator implements BrowserControlsStateProvider
|
||||
|
||||
/** @return Offset of the message container from the top of the screen. */
|
||||
private int getContainerTopOffset() {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
return mControlsManager.getContentOffset()
|
||||
+ (mControlsManager.getBottomControlsHeight() - mControlsManager.getBottomControlOffset())
|
||||
+ mContainer.getMessageShadowTopMargin();
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java
|
||||
@@ -565,7 +565,7 @@ public class NewTabPage implements NativePage, InvalidationAwareThumbnailProvide
|
||||
|
||||
int bottomMargin = mBrowserControlsStateProvider.getBottomControlsHeight()
|
||||
- mBrowserControlsStateProvider.getBottomControlOffset();
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// move the margin of the new tab page up if the top toolbar is at the bottom
|
||||
bottomMargin += mBrowserControlsStateProvider.getTopControlsHeight();
|
||||
topMargin = -mBrowserControlsStateProvider.getTopControlsHeight();
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsPage.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsPage.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsPage.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/RecentTabsPage.java
|
||||
@@ -91,7 +91,7 @@ public class RecentTabsPage
|
||||
mView.addOnAttachStateChangeListener(this);
|
||||
|
||||
if (!DeviceFormFactor.isNonMultiDisplayContextOnTablet(mActivity) ||
|
||||
- CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
mBrowserControlsStateProvider = browserControlsStateProvider;
|
||||
mBrowserControlsStateProvider.addObserver(this);
|
||||
onBottomControlsHeightChanged(mBrowserControlsStateProvider.getBottomControlsHeight(),
|
||||
@@ -289,7 +289,7 @@ public class RecentTabsPage
|
||||
|
||||
// If the content offset is different from the margin, we use translationY to position the
|
||||
// view in line with the content offset.
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
topMargin = 0;
|
||||
recentTabsRoot.setTranslationY(0);
|
||||
} else {
|
||||
@@ -297,7 +297,7 @@ public class RecentTabsPage
|
||||
}
|
||||
|
||||
int bottomMargin = mBrowserControlsStateProvider.getBottomControlsHeight();
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
bottomMargin += mBrowserControlsStateProvider.getTopControlsHeight();
|
||||
}
|
||||
if (topMargin != layoutParams.topMargin || bottomMargin != layoutParams.bottomMargin) {
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/SearchActivity.java
|
||||
@@ -194,7 +194,7 @@ public class SearchActivity extends AsyncInitializationActivity
|
||||
mSearchBox = (SearchActivityLocationBarLayout) mContentView.findViewById(
|
||||
R.id.search_location_bar);
|
||||
mAnchorView = mContentView.findViewById(R.id.toolbar);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
CoordinatorLayout.LayoutParams layoutParams = (CoordinatorLayout.LayoutParams)
|
||||
mAnchorView.getLayoutParams();
|
||||
layoutParams.gravity = Gravity.START | Gravity.BOTTOM;
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorCoordinator.java b/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorCoordinator.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorCoordinator.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorCoordinator.java
|
||||
@@ -179,7 +179,7 @@ public class StatusIndicatorCoordinator {
|
||||
private void initialize() {
|
||||
final ViewStub stub = mActivity.findViewById(R.id.status_indicator_stub);
|
||||
final ViewResourceFrameLayout root = (ViewResourceFrameLayout) stub.inflate();
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// status messages (such as the offline indicator) are docked at the bottom
|
||||
CoordinatorLayout.LayoutParams layoutParams = (CoordinatorLayout.LayoutParams)root.getLayoutParams();
|
||||
layoutParams.gravity = Gravity.START | Gravity.BOTTOM;
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorSceneLayer.java b/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorSceneLayer.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorSceneLayer.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/status_indicator/StatusIndicatorSceneLayer.java
|
||||
@@ -80,7 +80,7 @@ class StatusIndicatorSceneLayer extends SceneOverlayLayer implements SceneOverla
|
||||
public SceneOverlayLayer getUpdatedSceneOverlayTree(
|
||||
RectF viewport, RectF visibleViewport, ResourceManager resourceManager, float yOffset) {
|
||||
int offset = mBrowserControlsStateProvider.getTopControlsMinHeightOffset();
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
offset = (int)viewport.bottom - offset;
|
||||
}
|
||||
StatusIndicatorSceneLayerJni.get().updateStatusIndicatorLayer(
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarManager.java
|
||||
@@ -1318,7 +1318,7 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
|
||||
|
||||
private void MoveBottomBarOverTopBar() {
|
||||
if (bottomRoot != null &&
|
||||
- CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// move up the container view of the ui
|
||||
// below there is the toolbar
|
||||
bottomRoot.setTranslationY(-mBrowserControlsSizer.getTopControlsHeight());
|
||||
@@ -2123,7 +2123,7 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
|
||||
private void setControlContainerTopMargin(int margin) {
|
||||
final ViewGroup.MarginLayoutParams layoutParams =
|
||||
((ViewGroup.MarginLayoutParams) mControlContainer.getLayoutParams());
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
if (layoutParams.bottomMargin == margin) {
|
||||
return;
|
||||
}
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/BottomContainer.java b/chrome/android/java/src/org/chromium/chrome/browser/ui/BottomContainer.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/ui/BottomContainer.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/BottomContainer.java
|
||||
@@ -66,13 +66,13 @@ public class BottomContainer
|
||||
|
||||
@Override
|
||||
public void onTopControlsHeightChanged(int topControlsHeight, int topControlsMinHeight) {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM))
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled())
|
||||
setTranslationY(mBaseYOffset);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAndroidVisibilityChanged(int visibility) {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM))
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled())
|
||||
setTranslationY(mBaseYOffset);
|
||||
}
|
||||
|
||||
@@ -80,7 +80,7 @@ public class BottomContainer
|
||||
public void setTranslationY(float y) {
|
||||
mBaseYOffset = y;
|
||||
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// the snackbar container is moved up because there is the top toolbar at the bottom
|
||||
mBaseYOffset = -(mBrowserControlsStateProvider.getTopControlsHeight()
|
||||
+ mBrowserControlsStateProvider.getTopControlOffset());
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/system/StatusBarColorController.java b/chrome/android/java/src/org/chromium/chrome/browser/ui/system/StatusBarColorController.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/ui/system/StatusBarColorController.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ui/system/StatusBarColorController.java
|
||||
@@ -428,7 +428,7 @@ public class StatusBarColorController
|
||||
boolean needsDarkStatusBarIcons = !ColorUtils.shouldUseLightForegroundOnBackground(color);
|
||||
ApiCompatibilityUtils.setStatusBarIconColor(root, needsDarkStatusBarIcons);
|
||||
ApiCompatibilityUtils.setStatusBarColor(mWindow, color);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM) &&
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled() &&
|
||||
Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
UiUtils.setNavigationBarIconColor(mWindow.getDecorView().getRootView(),
|
||||
needsDarkStatusBarIcons);
|
||||
diff --git a/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserControlsMarginSupplier.java b/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserControlsMarginSupplier.java
|
||||
--- a/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserControlsMarginSupplier.java
|
||||
+++ b/chrome/browser/browser_controls/android/java/src/org/chromium/chrome/browser/browser_controls/BrowserControlsMarginSupplier.java
|
||||
@@ -54,7 +54,7 @@ public class BrowserControlsMarginSupplier extends ObservableSupplierImpl<Rect>
|
||||
+ mBrowserControlsStateProvider.getTopControlOffset();
|
||||
int bottomMargin = mBrowserControlsStateProvider.getBottomControlsHeight()
|
||||
- mBrowserControlsStateProvider.getBottomControlOffset();
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
bottomMargin += topMargin;
|
||||
topMargin = 0;
|
||||
}
|
||||
diff --git a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenu.java b/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenu.java
|
||||
--- a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenu.java
|
||||
+++ b/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenu.java
|
||||
@@ -265,7 +265,7 @@ class AppMenu implements OnItemClickListener, OnKeyListener, AppMenuClickHandler
|
||||
}
|
||||
|
||||
mListView = (ListView) contentView.findViewById(R.id.app_menu_list);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// always scroll to the bottom to show new items
|
||||
mListView.setTranscriptMode(ListView.TRANSCRIPT_MODE_ALWAYS_SCROLL);
|
||||
// fill content starting from the bottom of the view
|
||||
@@ -310,7 +310,7 @@ class AppMenu implements OnItemClickListener, OnKeyListener, AppMenuClickHandler
|
||||
if (popupHeight + popupPosition[1] > visibleDisplayFrame.bottom) {
|
||||
mPopup.setHeight(visibleDisplayFrame.height());
|
||||
}
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// due to some unknown behaviour, the popup must be resized to
|
||||
// allow selection without leaving touch
|
||||
mPopup.setHeight(popupHeight-1);
|
||||
@@ -362,7 +362,7 @@ class AppMenu implements OnItemClickListener, OnKeyListener, AppMenuClickHandler
|
||||
int anchorViewX = tempLocation[0];
|
||||
int anchorViewY = tempLocation[1];
|
||||
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// moves the view offset up by the height of the popup
|
||||
anchorViewY -= popupHeight;
|
||||
// fix it if it goes offscreen
|
||||
@@ -560,7 +560,7 @@ class AppMenu implements OnItemClickListener, OnKeyListener, AppMenuClickHandler
|
||||
}
|
||||
int availableScreenSpace = Math.max(
|
||||
anchorViewY, appDimensions.height() - anchorViewY - anchorViewImpactHeight);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// use all available space
|
||||
availableScreenSpace = appDimensions.height() - anchorViewImpactHeight;
|
||||
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.N) {
|
||||
diff --git a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenuHandlerImpl.java b/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenuHandlerImpl.java
|
||||
--- a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenuHandlerImpl.java
|
||||
+++ b/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/chrome/browser/ui/appmenu/AppMenuHandlerImpl.java
|
||||
@@ -184,7 +184,7 @@ class AppMenuHandlerImpl
|
||||
}),
|
||||
this);
|
||||
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// reverses the order of items in the menu
|
||||
ModelList modelListReversed = new ModelList();
|
||||
for (int i = 0; i < modelList.size(); i++) {
|
||||
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java
|
||||
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java
|
||||
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java
|
||||
@@ -239,7 +239,7 @@ public class UrlBarCoordinator implements UrlBarEditingTextStateProvider, UrlFoc
|
||||
// to show or hide keyboard anyway. This may happen when we schedule keyboard hide, and
|
||||
// receive a second request to hide the keyboard instantly.
|
||||
if (showKeyboard) {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// probably due to an android bug, fix the size rather than pan the view.
|
||||
// with the pan the bar may not always follow the focus if not at the first input by the user
|
||||
setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE, /* delay */ false);
|
||||
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteCoordinator.java
|
||||
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteCoordinator.java
|
||||
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteCoordinator.java
|
||||
@@ -236,7 +236,7 @@ public class AutocompleteCoordinator implements UrlFocusChangeListener, UrlTextC
|
||||
ViewGroup container = (ViewGroup) ((ViewStub) mParent.getRootView().findViewById(
|
||||
R.id.omnibox_results_container_stub))
|
||||
.inflate();
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// make margins works
|
||||
dropdown.getViewGroup().setClipToPadding(true);
|
||||
container.bringToFront();
|
||||
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java
|
||||
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java
|
||||
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java
|
||||
@@ -1013,7 +1013,7 @@ class AutocompleteMediator implements OnSuggestionsReceivedListener,
|
||||
@Override
|
||||
public void onSuggestionDropdownScroll() {
|
||||
mSuggestionsListScrolled = true;
|
||||
- if (!CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (!ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
mDelegate.setKeyboardVisibility(false, false);
|
||||
}
|
||||
}
|
||||
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/OmniboxSuggestionsDropdown.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/OmniboxSuggestionsDropdown.java
|
||||
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/OmniboxSuggestionsDropdown.java
|
||||
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/suggestions/OmniboxSuggestionsDropdown.java
|
||||
@@ -266,7 +266,7 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
|
||||
final Resources resources = context.getResources();
|
||||
int paddingBottom =
|
||||
resources.getDimensionPixelOffset(R.dimen.omnibox_suggestion_list_padding_bottom);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// reverse the layout so that the items are at the bottom (in reverse order)
|
||||
// and anchored to the bottom edge
|
||||
mLayoutScrollListener.setReverseLayout(true);
|
||||
@@ -496,7 +496,7 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
|
||||
}
|
||||
|
||||
private int calculateAnchorBottomRelativeToContent() {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM))
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled())
|
||||
return 0;
|
||||
View contentView =
|
||||
mEmbedder.getAnchorView().getRootView().findViewById(android.R.id.content);
|
||||
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarFocusScrimHandler.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarFocusScrimHandler.java
|
||||
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarFocusScrimHandler.java
|
||||
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/LocationBarFocusScrimHandler.java
|
||||
@@ -58,7 +58,7 @@ public class LocationBarFocusScrimHandler implements UrlFocusChangeListener {
|
||||
|
||||
Resources resources = context.getResources();
|
||||
int topMargin = resources.getDimensionPixelSize(R.dimen.tab_strip_height);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// since the top bar is at the bottom, we need to cover the whole page
|
||||
topMargin = 0;
|
||||
}
|
||||
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java
|
||||
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java
|
||||
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/BottomControlsMediator.java
|
||||
@@ -105,7 +105,7 @@ class BottomControlsMediator implements BrowserControlsStateProvider.Observer,
|
||||
void setBottomControlsVisible(boolean visible) {
|
||||
if (visible == true
|
||||
&& mIsBottomControlsVisible == false
|
||||
- && CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ && ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// always show the toolbar if the bottom controls are visible, so as not to leave the hole below.
|
||||
mBrowserControlsSizer.getBrowserVisibilityDelegate().showControlsTransient();
|
||||
}
|
||||
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/ScrollingBottomViewSceneLayer.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/ScrollingBottomViewSceneLayer.java
|
||||
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/ScrollingBottomViewSceneLayer.java
|
||||
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/bottom/ScrollingBottomViewSceneLayer.java
|
||||
@@ -127,7 +127,7 @@ public class ScrollingBottomViewSceneLayer extends SceneOverlayLayer implements
|
||||
boolean isShadowVisible = mBottomView.getVisibility() != View.VISIBLE;
|
||||
|
||||
float offsetPy = viewport.height() + mCurrentYOffsetPx;
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// fix the offset of the fake bottom controls, used only for animations
|
||||
offsetPy -= (mBottomView.getHeight() - mCurrentYOffsetPx + mTopControlsMinHeightOffset);
|
||||
}
|
||||
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
|
||||
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
|
||||
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
|
||||
@@ -109,7 +109,7 @@ public class ToolbarControlContainer extends OptimizedFrameLayout implements Con
|
||||
@Override
|
||||
public void initWithToolbar(int toolbarLayoutId) {
|
||||
try (TraceEvent te = TraceEvent.scoped("ToolbarControlContainer.initWithToolbar")) {
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// the top toolbar is docked at the bottom
|
||||
CoordinatorLayout.LayoutParams layoutParams = (CoordinatorLayout.LayoutParams)getLayoutParams();
|
||||
layoutParams.gravity = Gravity.START | Gravity.BOTTOM;
|
||||
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/TopToolbarSceneLayer.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/TopToolbarSceneLayer.java
|
||||
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/TopToolbarSceneLayer.java
|
||||
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/TopToolbarSceneLayer.java
|
||||
@@ -41,7 +41,7 @@ class TopToolbarSceneLayer extends SceneOverlayLayer {
|
||||
private void pushProperties(PropertyModel model) {
|
||||
if (mResourceManagerSupplier.get() == null) return;
|
||||
float offsetY = model.get(TopToolbarOverlayProperties.Y_OFFSET);
|
||||
- if (CachedFeatureFlags.isEnabled(ChromeFeatureList.MOVE_TOP_TOOLBAR_TO_BOTTOM)) {
|
||||
+ if (ChromeFeatureList.sMoveTopToolbarToBottom.isEnabled()) {
|
||||
// fix the offset of the fake top controls, used only for animations
|
||||
offsetY = model.get(TopToolbarOverlayProperties.VIEWPORT_HEIGHT) -
|
||||
model.get(TopToolbarOverlayProperties.TOOLBAR_HEIGHT) -
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,53 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:48:07 +0000
|
||||
Subject: Add a proxy configuration page (add fixup)
|
||||
|
||||
---
|
||||
chrome/browser/resources/proxy_config.js | 13 ++++++++++++-
|
||||
chrome/browser/ui/webui/proxy_config_ui.cc | 2 +-
|
||||
2 files changed, 13 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/resources/proxy_config.js b/chrome/browser/resources/proxy_config.js
|
||||
--- a/chrome/browser/resources/proxy_config.js
|
||||
+++ b/chrome/browser/resources/proxy_config.js
|
||||
@@ -16,7 +16,6 @@
|
||||
*/
|
||||
|
||||
import {$} from 'chrome://resources/js/util.js';
|
||||
-import {addSingletonGetter} from 'chrome://resources/js/cr.m.js';
|
||||
|
||||
/**
|
||||
* Main entry point called once the page has loaded.
|
||||
@@ -60,6 +59,18 @@ var ProxyConfigView = (function() {
|
||||
var kIdFtpProxies = 'ftp-proxies';
|
||||
var kIdFallbackProxies = 'fallback-proxies';
|
||||
|
||||
+ /**
|
||||
+ * Adds a {@code getInstance} static method that always return the same
|
||||
+ * instance object.
|
||||
+ * @param {!Function} ctor The constructor for the class to add the static
|
||||
+ * method to.
|
||||
+ */
|
||||
+ function addSingletonGetter(ctor) {
|
||||
+ ctor.getInstance = function() {
|
||||
+ return ctor.instance_ || (ctor.instance_ = new ctor());
|
||||
+ };
|
||||
+ }
|
||||
+
|
||||
/**
|
||||
* @constructor
|
||||
*/
|
||||
diff --git a/chrome/browser/ui/webui/proxy_config_ui.cc b/chrome/browser/ui/webui/proxy_config_ui.cc
|
||||
--- a/chrome/browser/ui/webui/proxy_config_ui.cc
|
||||
+++ b/chrome/browser/ui/webui/proxy_config_ui.cc
|
||||
@@ -164,7 +164,7 @@ void ProxyConfigMessageHandler::OnProxyConfigChanged(
|
||||
|
||||
// call Javascript function
|
||||
web_ui()->CallJavascriptFunctionUnsafe("ProxyConfigView.getInstance().onProxyConfigChanged",
|
||||
- *state.CreateDeepCopy());
|
||||
+ state.Clone());
|
||||
}
|
||||
|
||||
const std::string omitDirect(const std::string pacString) {
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,26 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:37:12 +0000
|
||||
Subject: Add webGL site setting (add fixup)
|
||||
|
||||
---
|
||||
.../core/browser/content_settings_registry.cc | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
--- a/components/content_settings/core/browser/content_settings_registry.cc
|
||||
+++ b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
@@ -636,9 +636,9 @@ void ContentSettingsRegistry::Init() {
|
||||
|
||||
Register(ContentSettingsType::WEBGL, "webgl", CONTENT_SETTING_BLOCK,
|
||||
WebsiteSettingsInfo::SYNCABLE,
|
||||
- AllowlistedSchemes(),
|
||||
- ValidSettings(CONTENT_SETTING_ALLOW,
|
||||
- CONTENT_SETTING_BLOCK),
|
||||
+ /*allowlisted_schemes=*/{},
|
||||
+ /*valid_settings=*/{CONTENT_SETTING_ALLOW,
|
||||
+ CONTENT_SETTING_BLOCK},
|
||||
WebsiteSettingsInfo::TOP_ORIGIN_ONLY_SCOPE,
|
||||
WebsiteSettingsRegistry::PLATFORM_ANDROID,
|
||||
ContentSettingsInfo::INHERIT_IN_INCOGNITO,
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,26 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:37:41 +0000
|
||||
Subject: Add webRTC site settings (add fixup)
|
||||
|
||||
---
|
||||
.../core/browser/content_settings_registry.cc | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
--- a/components/content_settings/core/browser/content_settings_registry.cc
|
||||
+++ b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
@@ -650,9 +650,9 @@ void ContentSettingsRegistry::Init() {
|
||||
|
||||
Register(ContentSettingsType::WEBRTC, "webrtc", CONTENT_SETTING_BLOCK,
|
||||
WebsiteSettingsInfo::SYNCABLE,
|
||||
- AllowlistedSchemes(),
|
||||
- ValidSettings(CONTENT_SETTING_ALLOW,
|
||||
- CONTENT_SETTING_BLOCK),
|
||||
+ /*allowlisted_schemes=*/{},
|
||||
+ /*valid_settings=*/{CONTENT_SETTING_ALLOW,
|
||||
+ CONTENT_SETTING_BLOCK},
|
||||
WebsiteSettingsInfo::TOP_ORIGIN_ONLY_SCOPE,
|
||||
WebsiteSettingsRegistry::PLATFORM_ANDROID,
|
||||
ContentSettingsInfo::INHERIT_IN_INCOGNITO,
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,24 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Sun, 18 Dec 2022 16:38:48 +0000
|
||||
Subject: Client hints overrides (add fixup)
|
||||
|
||||
---
|
||||
.../blink/renderer/platform/runtime_enabled_features.json5 | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
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
|
||||
@@ -2832,8 +2832,8 @@
|
||||
public: true,
|
||||
},
|
||||
{
|
||||
- name: "UserAgentClientHint",
|
||||
- status: "stable",
|
||||
+ name: "UserAgentClientHint", // always disabled
|
||||
+ status: "experimental", // in bromite
|
||||
base_feature: "UserAgentClientHint",
|
||||
},
|
||||
{
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,29 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:35:28 +0000
|
||||
Subject: Disable all predictors code (add fixup)
|
||||
|
||||
---
|
||||
components/optimization_guide/core/BUILD.gn | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/components/optimization_guide/core/BUILD.gn b/components/optimization_guide/core/BUILD.gn
|
||||
--- a/components/optimization_guide/core/BUILD.gn
|
||||
+++ b/components/optimization_guide/core/BUILD.gn
|
||||
@@ -77,12 +77,14 @@ static_library("model_executor") {
|
||||
}
|
||||
deps = [
|
||||
":features",
|
||||
- ":machine_learning",
|
||||
"//base",
|
||||
"//components/optimization_guide/proto:optimization_guide_proto",
|
||||
"//net",
|
||||
"//url",
|
||||
]
|
||||
+ if (build_with_tflite_lib) {
|
||||
+ deps += [ ":machine_learning", ]
|
||||
+ }
|
||||
}
|
||||
|
||||
mojom("interfaces") {
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,48 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:33:47 +0000
|
||||
Subject: Disable conversion measurement api (add fixup)
|
||||
|
||||
---
|
||||
.../attribution_report_network_sender.cc | 8 ++++++--
|
||||
content/renderer/render_thread_impl.cc | 2 +-
|
||||
2 files changed, 7 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/content/browser/attribution_reporting/attribution_report_network_sender.cc b/content/browser/attribution_reporting/attribution_report_network_sender.cc
|
||||
--- a/content/browser/attribution_reporting/attribution_report_network_sender.cc
|
||||
+++ b/content/browser/attribution_reporting/attribution_report_network_sender.cc
|
||||
@@ -76,6 +76,9 @@ void AttributionReportNetworkSender::SendReport(AttributionDebugReport report) {
|
||||
void AttributionReportNetworkSender::SendReport(GURL url,
|
||||
base::ValueView report_body,
|
||||
UrlLoaderCallback callback) {
|
||||
+ // this is never called on Bromite but nothing would be sent if it were
|
||||
+ if ((true)) return;
|
||||
+
|
||||
auto resource_request = std::make_unique<network::ResourceRequest>();
|
||||
resource_request->url = std::move(url);
|
||||
resource_request->method = net::HttpRequestHeaders::kPostMethod;
|
||||
@@ -132,8 +135,9 @@ void AttributionReportNetworkSender::SendReport(GURL url,
|
||||
network::SimpleURLLoader::RETRY_ON_NAME_NOT_RESOLVED;
|
||||
simple_url_loader_ptr->SetRetryOptions(/*max_retries=*/1, retry_mode);
|
||||
|
||||
- // this is never called on Bromite but nothing would be sent if it were
|
||||
- OnReportSent(std::move(it), report, is_debug_report, std::move(sent_callback), nullptr);
|
||||
+ simple_url_loader_ptr->DownloadHeadersOnly(
|
||||
+ url_loader_factory_.get(),
|
||||
+ base::BindOnce(std::move(callback), std::move(it)));
|
||||
}
|
||||
|
||||
void AttributionReportNetworkSender::OnReportSent(
|
||||
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
|
||||
--- a/content/renderer/render_thread_impl.cc
|
||||
+++ b/content/renderer/render_thread_impl.cc
|
||||
@@ -1823,7 +1823,7 @@ RenderThreadImpl::GetOsSupportForAttributionReporting() {
|
||||
|
||||
void RenderThreadImpl::SetOsSupportForAttributionReporting(
|
||||
blink::mojom::AttributionOsSupport attribution_os_support) {
|
||||
- attribution_os_support_ = attribution_os_support;
|
||||
+ attribution_os_support_ = blink::mojom::AttributionOsSupport::kDisabled;
|
||||
}
|
||||
|
||||
} // namespace content
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,74 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:34:41 +0000
|
||||
Subject: Disable safe browsing (add fixup)
|
||||
|
||||
---
|
||||
.../chrome_file_system_access_permission_context.cc | 4 +++-
|
||||
chrome/browser/ui/android/strings/android_chrome_strings.grd | 3 +++
|
||||
chrome/browser/ui/webui/interstitials/interstitial_ui.cc | 4 ----
|
||||
3 files changed, 6 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc
|
||||
--- a/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc
|
||||
+++ b/chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc
|
||||
@@ -115,6 +115,7 @@ const char kPathKey[] = "path";
|
||||
const char kPathTypeKey[] = "path-type";
|
||||
const char kTimestampKey[] = "timestamp";
|
||||
|
||||
+#if defined(FULL_SAFE_BROWSING)
|
||||
void ShowFileSystemAccessRestrictedDirectoryDialogOnUIThread(
|
||||
content::GlobalRenderFrameHostId frame_id,
|
||||
const url::Origin& origin,
|
||||
@@ -144,7 +145,6 @@ void ShowFileSystemAccessRestrictedDirectoryDialogOnUIThread(
|
||||
origin, handle_type, std::move(callback), web_contents);
|
||||
}
|
||||
|
||||
-#if defined(FULL_SAFE_BROWSING)
|
||||
void ShowFileSystemAccessDangerousFileDialogOnUIThread(
|
||||
content::GlobalRenderFrameHostId frame_id,
|
||||
const url::Origin& origin,
|
||||
@@ -431,6 +431,7 @@ base::StringPiece GetGrantKeyFromGrantType(GrantType type) {
|
||||
: kPermissionReadableKey;
|
||||
}
|
||||
|
||||
+#if defined(FULL_SAFE_BROWSING)
|
||||
bool FileHasDangerousExtension(const url::Origin& origin,
|
||||
const base::FilePath& path,
|
||||
Profile* profile) {
|
||||
@@ -442,6 +443,7 @@ bool FileHasDangerousExtension(const url::Origin& origin,
|
||||
return danger_level == safe_browsing::DownloadFileType::DANGEROUS ||
|
||||
danger_level == safe_browsing::DownloadFileType::ALLOW_ON_USER_GESTURE;
|
||||
}
|
||||
+#endif
|
||||
|
||||
} // namespace
|
||||
|
||||
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
|
||||
@@ -467,6 +467,9 @@ CHAR_LIMIT guidelines:
|
||||
<message name="IDS_PRELOAD_PAGES_EXTENDED_PRELOADING_BULLET_FOUR" desc="Fourth bullet point under the Preload Pages extended preloading mode. Informs the user about what the extended preloading setting does.">
|
||||
Because the preloaded pages are encrypted, Google will not learn anything about the preloaded page content. Google servers will learn which sites are privately preloaded. This information is only used to preload the pages, and is not linked to other information from your Google Account.
|
||||
</message>
|
||||
+ <message name="IDS_USAGE_AND_CRASH_REPORTS_TITLE" desc="Title for a preference that enables sending usage statistics and crash reports.">
|
||||
+ Help improve Chrome\u2019s features and performance
|
||||
+ </message>
|
||||
|
||||
<!-- 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]">
|
||||
diff --git a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc b/chrome/browser/ui/webui/interstitials/interstitial_ui.cc
|
||||
--- a/chrome/browser/ui/webui/interstitials/interstitial_ui.cc
|
||||
+++ b/chrome/browser/ui/webui/interstitials/interstitial_ui.cc
|
||||
@@ -518,10 +518,6 @@ void InterstitialHTMLSource::StartDataRequest(
|
||||
interstitial_delegate = CreateMITMSoftwareBlockingPage(web_contents);
|
||||
} else if (path_without_query == "/blocked-interception") {
|
||||
interstitial_delegate = CreateBlockedInterceptionBlockingPage(web_contents);
|
||||
- } else if (path_without_query == "/enterprise-block") {
|
||||
- interstitial_delegate = CreateEnterpriseBlockPage(web_contents);
|
||||
- } else if (path_without_query == "/enterprise-warn") {
|
||||
- interstitial_delegate = CreateEnterpriseWarnPage(web_contents);
|
||||
} else if (path_without_query == "/clock") {
|
||||
interstitial_delegate = CreateBadClockBlockingPage(web_contents);
|
||||
} else if (path_without_query == "/lookalike") {
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,53 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:26:25 +0000
|
||||
Subject: Remove binary blob integrations (add fixup)
|
||||
|
||||
---
|
||||
chrome/android/java/AndroidManifest.xml | 2 ++
|
||||
chrome/browser/privacy/BUILD.gn | 1 +
|
||||
.../browser/ui/signin/fre/SigninFirstRunMediator.java | 8 ++------
|
||||
3 files changed, 5 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
|
||||
--- a/chrome/android/java/AndroidManifest.xml
|
||||
+++ b/chrome/android/java/AndroidManifest.xml
|
||||
@@ -751,6 +751,8 @@ by a child template that "extends" this file.
|
||||
android:theme="@style/Theme.BrowserUI.Translucent.NoTitleBar"
|
||||
android:excludeFromRecents="true"
|
||||
android:process=":browser_restart_process">
|
||||
+ </activity>
|
||||
+
|
||||
<activity
|
||||
android:name="org.chromium.chrome.browser.sharing.shared_intent.SharedIntentShareActivity"
|
||||
android:icon="@drawable/ic_launcher"
|
||||
diff --git a/chrome/browser/privacy/BUILD.gn b/chrome/browser/privacy/BUILD.gn
|
||||
--- a/chrome/browser/privacy/BUILD.gn
|
||||
+++ b/chrome/browser/privacy/BUILD.gn
|
||||
@@ -11,6 +11,7 @@ if (is_android) {
|
||||
"//chrome/android:*",
|
||||
"//chrome/browser/feed/android:*",
|
||||
"//chrome/browser/ui/android/omnibox:*",
|
||||
+ "//chrome/browser/ui/android/signin:*",
|
||||
]
|
||||
sources = [
|
||||
"java/src/org/chromium/chrome/browser/privacy/secure_dns/SecureDnsBridge.java",
|
||||
diff --git a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/fre/SigninFirstRunMediator.java b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/fre/SigninFirstRunMediator.java
|
||||
--- a/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/fre/SigninFirstRunMediator.java
|
||||
+++ b/chrome/browser/ui/android/signin/java/src/org/chromium/chrome/browser/ui/signin/fre/SigninFirstRunMediator.java
|
||||
@@ -186,12 +186,8 @@ public class SigninFirstRunMediator
|
||||
boolean isSigninDisabledByPolicy = false;
|
||||
boolean isMetricsReportingDisabledByPolicy = false;
|
||||
if (hasPolicies) {
|
||||
- isSigninDisabledByPolicy =
|
||||
- IdentityServicesProvider.get()
|
||||
- .getSigninManager(Profile.getLastUsedRegularProfile())
|
||||
- .isSigninDisabledByPolicy();
|
||||
- isMetricsReportingDisabledByPolicy =
|
||||
- !mPrivacyPreferencesManager.isUsageAndCrashReportingPermittedByPolicy();
|
||||
+ isSigninDisabledByPolicy = true;
|
||||
+ isMetricsReportingDisabledByPolicy = true;
|
||||
|
||||
final FrePolicy frePolicy = new FrePolicy();
|
||||
frePolicy.metricsReportingDisabledByPolicy = isMetricsReportingDisabledByPolicy;
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,105 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:29:23 +0000
|
||||
Subject: Remove price/shopping/commerce integra (add fixup)
|
||||
|
||||
---
|
||||
.../chrome/browser/app/ChromeActivity.java | 4 ----
|
||||
.../bookmarks/BookmarkItemsAdapter.java | 2 --
|
||||
.../bookmarks/BookmarkSaveFlowMediator.java | 21 -------------------
|
||||
.../commerce/core/commerce_feature_list.cc | 4 ++--
|
||||
4 files changed, 2 insertions(+), 29 deletions(-)
|
||||
|
||||
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
|
||||
@@ -2395,10 +2395,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
}
|
||||
|
||||
if (id == R.id.disable_price_tracking_menu_id) {
|
||||
- PowerBookmarkUtils.setPriceTrackingEnabledWithSnackbars(mBookmarkModelSupplier.get(),
|
||||
- mBookmarkModelSupplier.get().getUserBookmarkIdForTab(currentTab),
|
||||
- /*enabled=*/false, mSnackbarManager, getResources(), (success) -> {});
|
||||
- RecordUserAction.record("MobileMenuDisablePriceTracking");
|
||||
return true;
|
||||
}
|
||||
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkItemsAdapter.java
|
||||
@@ -25,7 +25,6 @@ import org.chromium.chrome.browser.bookmarks.BookmarkRow.Location;
|
||||
import org.chromium.chrome.browser.feature_engagement.TrackerFactory;
|
||||
import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
||||
import org.chromium.chrome.browser.profiles.Profile;
|
||||
-import org.chromium.chrome.browser.subscriptions.CommerceSubscriptionsServiceFactory;
|
||||
import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
|
||||
import org.chromium.components.bookmarks.BookmarkId;
|
||||
import org.chromium.components.bookmarks.BookmarkItem;
|
||||
@@ -226,7 +225,6 @@ public class BookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkLis
|
||||
return createViewHolderHelper(parent, R.layout.bookmark_folder_row);
|
||||
case ViewType.BOOKMARK:
|
||||
return createViewHolderHelper(parent, R.layout.bookmark_item_row);
|
||||
- .init(mImageFetcher, mDelegate.getModel(), mSnackbarManager);
|
||||
case ViewType.DIVIDER:
|
||||
return new ViewHolder(
|
||||
LayoutInflater.from(parent.getContext())
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkSaveFlowMediator.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkSaveFlowMediator.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkSaveFlowMediator.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkSaveFlowMediator.java
|
||||
@@ -17,7 +17,6 @@ import org.chromium.base.metrics.RecordUserAction;
|
||||
import org.chromium.chrome.R;
|
||||
import org.chromium.chrome.browser.commerce.PriceTrackingUtils;
|
||||
import org.chromium.chrome.browser.feature_engagement.TrackerFactory;
|
||||
-import org.chromium.chrome.browser.price_tracking.PriceDropNotificationManagerFactory;
|
||||
import org.chromium.chrome.browser.profiles.Profile;
|
||||
import org.chromium.components.bookmarks.BookmarkId;
|
||||
import org.chromium.components.bookmarks.BookmarkItem;
|
||||
@@ -39,9 +38,6 @@ public class BookmarkSaveFlowMediator
|
||||
private BookmarkId mBookmarkId;
|
||||
private PowerBookmarkMeta mPowerBookmarkMeta;
|
||||
private boolean mWasBookmarkMoved;
|
||||
- private SubscriptionsManager mSubscriptionsManager;
|
||||
- private CommerceSubscription mSubscription;
|
||||
- private Callback<Boolean> mSubscriptionsManagerCallback;
|
||||
private String mFolderName;
|
||||
|
||||
/**
|
||||
@@ -121,23 +117,6 @@ public class BookmarkSaveFlowMediator
|
||||
}
|
||||
|
||||
void handleNotificationSwitchToggle(CompoundButton view, boolean toggled) {
|
||||
- if (mSubscriptionsManagerCallback == null) {
|
||||
- mSubscriptionsManagerCallback =
|
||||
- mCallbackController.makeCancelable((Boolean success) -> {
|
||||
- setPriceTrackingToggleVisualsOnly(success && view.isChecked());
|
||||
- setPriceTrackingNotificationUiEnabled(success);
|
||||
- });
|
||||
- }
|
||||
-
|
||||
- // Make sure the notification channel is initialized when the user tracks a product.
|
||||
- // TODO(crbug.com/1382191): Add a SubscriptionsObserver in the PriceDropNotificationManager
|
||||
- // and initialize the channel there.
|
||||
- if (toggled && Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||
- PriceDropNotificationManagerFactory.create().createNotificationChannel();
|
||||
- }
|
||||
- setPriceTrackingIconForEnabledState(toggled);
|
||||
- PriceTrackingUtils.setPriceTrackingStateForBookmark(Profile.getLastUsedRegularProfile(),
|
||||
- mBookmarkId.getId(), toggled, mSubscriptionsManagerCallback);
|
||||
}
|
||||
|
||||
void setPriceTrackingNotificationUiEnabled(boolean enabled) {
|
||||
diff --git a/components/commerce/core/commerce_feature_list.cc b/components/commerce/core/commerce_feature_list.cc
|
||||
--- a/components/commerce/core/commerce_feature_list.cc
|
||||
+++ b/components/commerce/core/commerce_feature_list.cc
|
||||
@@ -98,8 +98,8 @@ BASE_FEATURE(kCommerceMerchantViewer,
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
|
||||
BASE_FEATURE(kCommercePriceTracking,
|
||||
- "CommercePriceTracking",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "CommercePriceTracking", // guard this
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // guard this
|
||||
|
||||
const base::FeatureParam<bool> kDeleteAllMerchantsOnClearBrowsingHistory{
|
||||
&kCommerceMerchantViewer, "delete_all_merchants_on_clear_history", false};
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,42 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:27:59 +0000
|
||||
Subject: Remove signin and sync integrations (add fixup)
|
||||
|
||||
---
|
||||
chrome/android/BUILD.gn | 1 +
|
||||
.../chrome/browser/app/feed/FeedActionDelegateImpl.java | 3 ---
|
||||
2 files changed, 1 insertion(+), 3 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
|
||||
--- a/chrome/android/BUILD.gn
|
||||
+++ b/chrome/android/BUILD.gn
|
||||
@@ -276,6 +276,7 @@ if (current_toolchain == default_toolchain) {
|
||||
"//chrome/browser/ui/android/management:java_resources",
|
||||
"//chrome/browser/ui/android/omnibox:java_resources",
|
||||
"//chrome/browser/ui/android/quickactionsearchwidget:java_resources",
|
||||
+ "//chrome/browser/ui/android/signin:java_resources",
|
||||
"//chrome/browser/ui/android/strings:ui_strings_grd",
|
||||
"//chrome/browser/ui/android/theme:java_resources",
|
||||
"//chrome/browser/ui/android/toolbar:java_resources",
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/feed/FeedActionDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/feed/FeedActionDelegateImpl.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/feed/FeedActionDelegateImpl.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/feed/FeedActionDelegateImpl.java
|
||||
@@ -19,7 +19,6 @@ import org.chromium.chrome.browser.offlinepages.OfflinePageBridge;
|
||||
import org.chromium.chrome.browser.offlinepages.RequestCoordinatorBridge;
|
||||
import org.chromium.chrome.browser.profiles.Profile;
|
||||
import org.chromium.chrome.browser.share.crow.CrowButtonDelegate;
|
||||
-import org.chromium.chrome.browser.signin.SyncConsentActivityLauncherImpl;
|
||||
import org.chromium.chrome.browser.suggestions.SuggestionsConfig;
|
||||
import org.chromium.chrome.browser.tab.EmptyTabObserver;
|
||||
import org.chromium.chrome.browser.tab.Tab;
|
||||
@@ -129,8 +128,6 @@ public class FeedActionDelegateImpl implements FeedActionDelegate {
|
||||
@Override
|
||||
public void showSignInActivity() {
|
||||
if (ChromeFeatureList.isEnabled(ChromeFeatureList.FEED_SHOW_SIGN_IN_COMMAND)) {
|
||||
- SyncConsentActivityLauncherImpl.get().launchActivityIfAllowed(
|
||||
- mActivityContext, SigninAccessPoint.NTP_CONTENT_SUGGESTIONS);
|
||||
}
|
||||
}
|
||||
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,28 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:36:46 +0000
|
||||
Subject: Timezone customization (add fixup)
|
||||
|
||||
---
|
||||
.../core/browser/content_settings_registry.cc | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
--- a/components/content_settings/core/browser/content_settings_registry.cc
|
||||
+++ b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
@@ -614,10 +614,10 @@ void ContentSettingsRegistry::Init() {
|
||||
|
||||
Register(ContentSettingsType::TIMEZONE_OVERRIDE, "timezone-override", CONTENT_SETTING_ALLOW,
|
||||
WebsiteSettingsInfo::SYNCABLE,
|
||||
- AllowlistedSchemes(kChromeUIScheme, kChromeDevToolsScheme),
|
||||
- ValidSettings(CONTENT_SETTING_ALLOW, // use system time
|
||||
- CONTENT_SETTING_ASK, // custom timezone, default UTC
|
||||
- CONTENT_SETTING_BLOCK), // random
|
||||
+ /*allowlisted_schemes=*/{},
|
||||
+ /*valid_settings=*/{CONTENT_SETTING_ALLOW, // use system time
|
||||
+ CONTENT_SETTING_ASK, // custom timezone, default UTC
|
||||
+ CONTENT_SETTING_BLOCK}, // random
|
||||
WebsiteSettingsInfo::TOP_ORIGIN_ONLY_SCOPE,
|
||||
WebsiteSettingsRegistry::PLATFORM_ANDROID,
|
||||
ContentSettingsInfo::INHERIT_IN_INCOGNITO,
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,31 @@
|
||||
From: Your Name <you@example.com>
|
||||
Date: Thu, 5 Jan 2023 11:30:19 +0000
|
||||
Subject: User agent customization (add fixup)
|
||||
|
||||
---
|
||||
.../android/preferences/privacy_preferences_manager_impl.cc | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/chrome/browser/android/preferences/privacy_preferences_manager_impl.cc b/chrome/browser/android/preferences/privacy_preferences_manager_impl.cc
|
||||
--- a/chrome/browser/android/preferences/privacy_preferences_manager_impl.cc
|
||||
+++ b/chrome/browser/android/preferences/privacy_preferences_manager_impl.cc
|
||||
@@ -17,6 +17,7 @@
|
||||
#include "base/command_line.h"
|
||||
#include "base/base_switches.h"
|
||||
#include "chrome/common/chrome_switches.h"
|
||||
+#include "content/browser/attribution_reporting/attribution_manager.h"
|
||||
#include "content/browser/renderer_host/render_process_host_impl.h"
|
||||
#include "content/common/renderer.mojom.h"
|
||||
#include "chrome/browser/chrome_content_browser_client.h"
|
||||
@@ -88,7 +89,8 @@ static void UpdateOverrideUserAgent() {
|
||||
std::vector<std::string> cors_exempt_header_list;
|
||||
iter.GetCurrentValue()->GetRendererInterface()->InitializeRenderer(
|
||||
/*user_agent*/ ua, /*full_user_agent*/ ua, /*reduced_user_agent*/ ua,
|
||||
- /*metadata*/ blink::UserAgentMetadata(), cors_exempt_header_list);
|
||||
+ /*metadata*/ blink::UserAgentMetadata(), cors_exempt_header_list,
|
||||
+ content::AttributionManager::GetOsSupport());
|
||||
}
|
||||
}
|
||||
}
|
||||
--
|
||||
2.25.1
|
||||
@@ -17,6 +17,8 @@ See discussions at:
|
||||
* https://github.com/bromite/bromite/issues/445
|
||||
* https://github.com/bromite/bromite/issues/814
|
||||
* https://github.com/bromite/bromite/issues/1005
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
base/android/android_image_reader_compat.cc | 8 +++++++-
|
||||
base/android/android_image_reader_compat.h | 4 ++++
|
||||
@@ -28,9 +30,9 @@ See discussions at:
|
||||
gpu/config/gpu_workaround_list.txt | 1 +
|
||||
gpu/ipc/service/gpu_init.cc | 5 +++++
|
||||
gpu/ipc/service/stream_texture_android.cc | 11 ++++++++++-
|
||||
media/base/media_switches.cc | 4 ++++
|
||||
media/base/media_switches.cc | 5 +++++
|
||||
media/base/media_switches.h | 1 +
|
||||
12 files changed, 65 insertions(+), 5 deletions(-)
|
||||
12 files changed, 66 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/base/android/android_image_reader_compat.cc b/base/android/android_image_reader_compat.cc
|
||||
--- a/base/android/android_image_reader_compat.cc
|
||||
@@ -82,8 +84,8 @@ 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
|
||||
@@ -2243,9 +2243,9 @@
|
||||
"expiry_milestone": 106
|
||||
@@ -2515,9 +2515,9 @@
|
||||
"expiry_milestone": 115
|
||||
},
|
||||
{
|
||||
- "name": "enable-image-reader",
|
||||
@@ -124,9 +126,9 @@ diff --git a/gpu/config/gpu_driver_bug_list.json b/gpu/config/gpu_driver_bug_lis
|
||||
diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc
|
||||
--- a/gpu/config/gpu_finch_features.cc
|
||||
+++ b/gpu/config/gpu_finch_features.cc
|
||||
@@ -52,6 +52,11 @@ bool IsDeviceBlocked(const char* field, const std::string& block_list) {
|
||||
|
||||
} // namespace
|
||||
@@ -64,6 +64,11 @@ BASE_FEATURE(kUseGles2ForOopR,
|
||||
#endif
|
||||
);
|
||||
|
||||
+
|
||||
+// Use android AImageReader when playing videos with MediaPlayer.
|
||||
@@ -134,23 +136,23 @@ diff --git a/gpu/config/gpu_finch_features.cc b/gpu/config/gpu_finch_features.cc
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
// Used to limit GL version to 2.0 for skia raster on Android.
|
||||
const base::Feature kUseGles2ForOopR{"UseGles2ForOopR",
|
||||
// Use android SurfaceControl API for managing display compositor's buffer queue
|
||||
// and using overlays on Android. Also used by webview to disable surface
|
||||
diff --git a/gpu/config/gpu_finch_features.h b/gpu/config/gpu_finch_features.h
|
||||
--- a/gpu/config/gpu_finch_features.h
|
||||
+++ b/gpu/config/gpu_finch_features.h
|
||||
@@ -17,6 +17,7 @@ namespace features {
|
||||
GPU_EXPORT BASE_DECLARE_FEATURE(kUseGles2ForOopR);
|
||||
|
||||
// All features in alphabetical order. The features should be documented
|
||||
+GPU_EXPORT extern const base::Feature kAImageReaderMediaPlayer;
|
||||
// alongside the definition of their values in the .cc file.
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
+GPU_EXPORT extern const base::Feature kAImageReaderMediaPlayer;
|
||||
GPU_EXPORT extern const base::Feature kUseGles2ForOopR;
|
||||
GPU_EXPORT extern const base::Feature kAndroidSurfaceControl;
|
||||
GPU_EXPORT extern const base::Feature kWebViewSurfaceControl;
|
||||
GPU_EXPORT BASE_DECLARE_FEATURE(kAndroidSurfaceControl);
|
||||
diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
|
||||
--- a/gpu/config/gpu_util.cc
|
||||
+++ b/gpu/config/gpu_util.cc
|
||||
@@ -120,6 +120,9 @@ GpuFeatureStatus GetAndroidSurfaceControlFeatureStatus(
|
||||
@@ -121,6 +121,9 @@ GpuFeatureStatus GetAndroidSurfaceControlFeatureStatus(
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
return kGpuFeatureStatusDisabled;
|
||||
#else
|
||||
@@ -160,7 +162,7 @@ diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
|
||||
if (!gpu_preferences.enable_android_surface_control)
|
||||
return kGpuFeatureStatusDisabled;
|
||||
|
||||
@@ -343,6 +346,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
|
||||
@@ -344,6 +347,11 @@ void AdjustGpuFeatureStatusToWorkarounds(GpuFeatureInfo* gpu_feature_info) {
|
||||
gpu_feature_info->status_values[GPU_FEATURE_TYPE_CANVAS_OOP_RASTERIZATION] =
|
||||
kGpuFeatureStatusBlocklisted;
|
||||
}
|
||||
@@ -175,18 +177,18 @@ diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
|
||||
diff --git a/gpu/config/gpu_workaround_list.txt b/gpu/config/gpu_workaround_list.txt
|
||||
--- a/gpu/config/gpu_workaround_list.txt
|
||||
+++ b/gpu/config/gpu_workaround_list.txt
|
||||
@@ -14,6 +14,7 @@ decode_encode_srgb_for_generatemipmap
|
||||
@@ -15,6 +15,7 @@ decode_encode_srgb_for_generatemipmap
|
||||
depth_stencil_renderbuffer_resize_emulation
|
||||
disable_2d_canvas_auto_flush
|
||||
disable_accelerated_av1_decode
|
||||
+disable_aimagereader
|
||||
disable_accelerated_av1_encode
|
||||
disable_accelerated_h264_encode
|
||||
disable_accelerated_hevc_decode
|
||||
disable_accelerated_vp8_decode
|
||||
diff --git a/gpu/ipc/service/gpu_init.cc b/gpu/ipc/service/gpu_init.cc
|
||||
--- a/gpu/ipc/service/gpu_init.cc
|
||||
+++ b/gpu/ipc/service/gpu_init.cc
|
||||
@@ -580,6 +580,11 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
|
||||
@@ -626,6 +626,11 @@ bool GpuInit::InitializeAndStartSandbox(base::CommandLine* command_line,
|
||||
}
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
|
||||
@@ -229,27 +231,28 @@ 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
|
||||
@@ -711,6 +711,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};
|
||||
@@ -758,6 +758,11 @@ BASE_FEATURE(kHardwareSecureDecryptionExperiment,
|
||||
// Allows automatically disabling hardware secure Content Decryption Module
|
||||
// (CDM) after failures or crashes to fallback to software secure CDMs. If this
|
||||
// feature is disabled, the fallback will never happen and users could be stuck
|
||||
+// Enables the Android Image Reader path for Video decoding(for AVDA and MCVD)
|
||||
+const base::Feature kAImageReaderVideoOutput{"AImageReaderVideoOutput",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kAImageReaderVideoOutput,
|
||||
+ "AImageReaderVideoOutput",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+
|
||||
|
||||
// Enable picture in picture web api for android.
|
||||
const base::Feature kPictureInPictureAPI{"PictureInPictureAPI",
|
||||
// in playback failures.
|
||||
BASE_FEATURE(kHardwareSecureDecryptionFallback,
|
||||
"HardwareSecureDecryptionFallback",
|
||||
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
|
||||
@@ -223,6 +223,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;
|
||||
+MEDIA_EXPORT extern const base::Feature kAImageReaderVideoOutput;
|
||||
MEDIA_EXPORT extern const base::Feature kMediaDrmPreprovisioning;
|
||||
MEDIA_EXPORT extern const base::Feature kMediaDrmPreprovisioningAtStartup;
|
||||
MEDIA_EXPORT extern const base::Feature kCanPlayHls;
|
||||
@@ -235,6 +235,7 @@ MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiVp8TemporalLayerHWEncoding);
|
||||
MEDIA_EXPORT BASE_DECLARE_FEATURE(kVaapiVp9kSVCHWEncoding);
|
||||
#endif // defined(ARCH_CPU_X86_FAMILY) && BUILDFLAG(IS_CHROMEOS)
|
||||
MEDIA_EXPORT BASE_DECLARE_FEATURE(kVideoBlitColorAccuracy);
|
||||
+MEDIA_EXPORT BASE_DECLARE_FEATURE(kAImageReaderVideoOutput);
|
||||
MEDIA_EXPORT BASE_DECLARE_FEATURE(kVp9kSVCHWDecoding);
|
||||
MEDIA_EXPORT BASE_DECLARE_FEATURE(kWakeLockOptimisationHiddenMuted);
|
||||
MEDIA_EXPORT BASE_DECLARE_FEATURE(kWebContentsCaptureHiDpi);
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -1,45 +0,0 @@
|
||||
From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sun, 27 Jun 2021 16:53:48 +0200
|
||||
Subject: API level 21: prevent crash on download
|
||||
|
||||
On Lollipop 5.0.x it is not possible to use the system persistent bundle.
|
||||
This patch ignores boolean settings for them and prevents the crash.
|
||||
|
||||
See also: https://github.com/bromite/bromite/issues/1184
|
||||
---
|
||||
.../BundleToPersistableBundleConverter.java | 13 +++++++++++--
|
||||
1 file changed, 11 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BundleToPersistableBundleConverter.java b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BundleToPersistableBundleConverter.java
|
||||
--- a/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BundleToPersistableBundleConverter.java
|
||||
+++ b/components/background_task_scheduler/internal/android/java/src/org/chromium/components/background_task_scheduler/internal/BundleToPersistableBundleConverter.java
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
package org.chromium.components.background_task_scheduler.internal;
|
||||
|
||||
+import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.os.PersistableBundle;
|
||||
|
||||
@@ -82,9 +83,17 @@ class BundleToPersistableBundleConverter {
|
||||
if (obj == null) {
|
||||
persistableBundle.putString(key, null);
|
||||
} else if (obj instanceof Boolean) {
|
||||
- persistableBundle.putBoolean(key, (Boolean) obj);
|
||||
+ if (Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP) {
|
||||
+ failedKeys.add(key);
|
||||
+ } else {
|
||||
+ persistableBundle.putBoolean(key, (Boolean) obj);
|
||||
+ }
|
||||
} else if (obj instanceof boolean[]) {
|
||||
- persistableBundle.putBooleanArray(key, (boolean[]) obj);
|
||||
+ if (Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP) {
|
||||
+ failedKeys.add(key);
|
||||
+ } else {
|
||||
+ persistableBundle.putBooleanArray(key, (boolean[]) obj);
|
||||
+ }
|
||||
} else if (obj instanceof Double) {
|
||||
persistableBundle.putDouble(key, (Double) obj);
|
||||
} else if (obj instanceof double[]) {
|
||||
--
|
||||
2.25.1
|
||||
@@ -1,214 +0,0 @@
|
||||
From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sun, 16 Dec 2018 15:24:19 +0100
|
||||
Subject: AV1 codec support
|
||||
|
||||
libaom build fixes (requires -fPIC)
|
||||
Report AV1 as playable on Android
|
||||
---
|
||||
third_party/libaom/BUILD.gn | 6 ++++--
|
||||
third_party/libaom/libaom_srcs.gni | 5 +++++
|
||||
.../config/linux/arm-neon-cpu-detect/config/aom_config.asm | 2 +-
|
||||
.../config/linux/arm-neon-cpu-detect/config/aom_config.h | 2 +-
|
||||
.../source/config/linux/arm-neon/config/aom_config.asm | 2 +-
|
||||
.../libaom/source/config/linux/arm-neon/config/aom_config.h | 2 +-
|
||||
.../libaom/source/config/linux/arm/config/aom_config.asm | 2 +-
|
||||
.../libaom/source/config/linux/arm/config/aom_config.h | 2 +-
|
||||
.../libaom/source/config/linux/arm64/config/aom_config.asm | 2 +-
|
||||
.../libaom/source/config/linux/arm64/config/aom_config.h | 2 +-
|
||||
.../source/config/linux/generic/config/aom_config.asm | 2 +-
|
||||
.../libaom/source/config/linux/generic/config/aom_config.h | 2 +-
|
||||
.../libaom/source/config/linux/x64/config/aom_config.asm | 2 +-
|
||||
.../libaom/source/config/linux/x64/config/aom_config.h | 2 +-
|
||||
14 files changed, 21 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/third_party/libaom/BUILD.gn b/third_party/libaom/BUILD.gn
|
||||
--- a/third_party/libaom/BUILD.gn
|
||||
+++ b/third_party/libaom/BUILD.gn
|
||||
@@ -81,7 +81,7 @@ if (current_cpu == "x86" || (current_cpu == "x64" && !is_msan)) {
|
||||
sources += aom_dsp_encoder_asm_sse2_x86_64
|
||||
sources += aom_dsp_encoder_asm_ssse3_x86_64
|
||||
}
|
||||
- defines = [ "CHROMIUM" ]
|
||||
+ defines = [ "CHROMIUM", "PIC" ]
|
||||
include_dirs = libaom_include_dirs
|
||||
}
|
||||
|
||||
@@ -193,7 +193,7 @@ if (current_cpu == "arm64" || cpu_arch_full == "arm-neon" ||
|
||||
configs += [ "//build/config/compiler:no_chromium_code" ]
|
||||
if (current_cpu == "arm") {
|
||||
configs -= [ "//build/config/compiler:compiler_arm_fpu" ]
|
||||
- cflags = [ "-mfpu=neon" ]
|
||||
+ cflags = [ "-mfpu=neon", "-fPIC" ]
|
||||
}
|
||||
configs += [ ":libaom_config" ]
|
||||
|
||||
@@ -255,6 +255,8 @@ static_library("libaom") {
|
||||
if (current_cpu == "arm64" || cpu_arch_full == "arm-neon" ||
|
||||
cpu_arch_full == "arm-neon-cpu-detect") {
|
||||
deps += [ ":libaom_intrinsics_neon" ]
|
||||
+ # will detect CPU
|
||||
+ sources += aom_ports_arm_sources
|
||||
}
|
||||
if (is_android) {
|
||||
deps += [ "//third_party/android_ndk:cpu_features" ]
|
||||
diff --git a/third_party/libaom/libaom_srcs.gni b/third_party/libaom/libaom_srcs.gni
|
||||
--- a/third_party/libaom/libaom_srcs.gni
|
||||
+++ b/third_party/libaom/libaom_srcs.gni
|
||||
@@ -652,6 +652,11 @@ aom_rc_interface_sources = [
|
||||
"//third_party/libaom/source/libaom/test/yuv_video_source.h",
|
||||
]
|
||||
|
||||
+aom_ports_arm_sources = [
|
||||
+ "//third_party/libaom/source/libaom/aom_ports/arm_cpudetect.c",
|
||||
+ "//third_party/libaom/source/libaom/aom_ports/arm.h",
|
||||
+ ]
|
||||
+
|
||||
aom_rtcd_sources = [
|
||||
"//third_party/libaom/source/libaom/aom_dsp/aom_dsp_rtcd.c",
|
||||
"//third_party/libaom/source/libaom/aom_scale/aom_scale_rtcd.c",
|
||||
diff --git a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.asm b/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.asm
|
||||
--- a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.asm
|
||||
+++ b/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.asm
|
||||
@@ -50,7 +50,7 @@ CONFIG_NORMAL_TILE_MODE equ 1
|
||||
CONFIG_OPTICAL_FLOW_API equ 0
|
||||
CONFIG_OS_SUPPORT equ 1
|
||||
CONFIG_PARTITION_SEARCH_ORDER equ 0
|
||||
-CONFIG_PIC equ 0
|
||||
+CONFIG_PIC equ 1
|
||||
CONFIG_RATECTRL_LOG equ 0
|
||||
CONFIG_RD_COMMAND equ 0
|
||||
CONFIG_RD_DEBUG equ 0
|
||||
diff --git a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.h b/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.h
|
||||
--- a/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.h
|
||||
+++ b/third_party/libaom/source/config/linux/arm-neon-cpu-detect/config/aom_config.h
|
||||
@@ -52,7 +52,7 @@
|
||||
#define CONFIG_OPTICAL_FLOW_API 0
|
||||
#define CONFIG_OS_SUPPORT 1
|
||||
#define CONFIG_PARTITION_SEARCH_ORDER 0
|
||||
-#define CONFIG_PIC 0
|
||||
+#define CONFIG_PIC 1
|
||||
#define CONFIG_RATECTRL_LOG 0
|
||||
#define CONFIG_RD_COMMAND 0
|
||||
#define CONFIG_RD_DEBUG 0
|
||||
diff --git a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.asm b/third_party/libaom/source/config/linux/arm-neon/config/aom_config.asm
|
||||
--- a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.asm
|
||||
+++ b/third_party/libaom/source/config/linux/arm-neon/config/aom_config.asm
|
||||
@@ -50,7 +50,7 @@ CONFIG_NORMAL_TILE_MODE equ 1
|
||||
CONFIG_OPTICAL_FLOW_API equ 0
|
||||
CONFIG_OS_SUPPORT equ 1
|
||||
CONFIG_PARTITION_SEARCH_ORDER equ 0
|
||||
-CONFIG_PIC equ 0
|
||||
+CONFIG_PIC equ 1
|
||||
CONFIG_RATECTRL_LOG equ 0
|
||||
CONFIG_RD_COMMAND equ 0
|
||||
CONFIG_RD_DEBUG equ 0
|
||||
diff --git a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.h b/third_party/libaom/source/config/linux/arm-neon/config/aom_config.h
|
||||
--- a/third_party/libaom/source/config/linux/arm-neon/config/aom_config.h
|
||||
+++ b/third_party/libaom/source/config/linux/arm-neon/config/aom_config.h
|
||||
@@ -52,7 +52,7 @@
|
||||
#define CONFIG_OPTICAL_FLOW_API 0
|
||||
#define CONFIG_OS_SUPPORT 1
|
||||
#define CONFIG_PARTITION_SEARCH_ORDER 0
|
||||
-#define CONFIG_PIC 0
|
||||
+#define CONFIG_PIC 1
|
||||
#define CONFIG_RATECTRL_LOG 0
|
||||
#define CONFIG_RD_COMMAND 0
|
||||
#define CONFIG_RD_DEBUG 0
|
||||
diff --git a/third_party/libaom/source/config/linux/arm/config/aom_config.asm b/third_party/libaom/source/config/linux/arm/config/aom_config.asm
|
||||
--- a/third_party/libaom/source/config/linux/arm/config/aom_config.asm
|
||||
+++ b/third_party/libaom/source/config/linux/arm/config/aom_config.asm
|
||||
@@ -50,7 +50,7 @@ CONFIG_NORMAL_TILE_MODE equ 1
|
||||
CONFIG_OPTICAL_FLOW_API equ 0
|
||||
CONFIG_OS_SUPPORT equ 1
|
||||
CONFIG_PARTITION_SEARCH_ORDER equ 0
|
||||
-CONFIG_PIC equ 0
|
||||
+CONFIG_PIC equ 1
|
||||
CONFIG_RATECTRL_LOG equ 0
|
||||
CONFIG_RD_COMMAND equ 0
|
||||
CONFIG_RD_DEBUG equ 0
|
||||
diff --git a/third_party/libaom/source/config/linux/arm/config/aom_config.h b/third_party/libaom/source/config/linux/arm/config/aom_config.h
|
||||
--- a/third_party/libaom/source/config/linux/arm/config/aom_config.h
|
||||
+++ b/third_party/libaom/source/config/linux/arm/config/aom_config.h
|
||||
@@ -52,7 +52,7 @@
|
||||
#define CONFIG_OPTICAL_FLOW_API 0
|
||||
#define CONFIG_OS_SUPPORT 1
|
||||
#define CONFIG_PARTITION_SEARCH_ORDER 0
|
||||
-#define CONFIG_PIC 0
|
||||
+#define CONFIG_PIC 1
|
||||
#define CONFIG_RATECTRL_LOG 0
|
||||
#define CONFIG_RD_COMMAND 0
|
||||
#define CONFIG_RD_DEBUG 0
|
||||
diff --git a/third_party/libaom/source/config/linux/arm64/config/aom_config.asm b/third_party/libaom/source/config/linux/arm64/config/aom_config.asm
|
||||
--- a/third_party/libaom/source/config/linux/arm64/config/aom_config.asm
|
||||
+++ b/third_party/libaom/source/config/linux/arm64/config/aom_config.asm
|
||||
@@ -50,7 +50,7 @@ CONFIG_NORMAL_TILE_MODE equ 1
|
||||
CONFIG_OPTICAL_FLOW_API equ 0
|
||||
CONFIG_OS_SUPPORT equ 1
|
||||
CONFIG_PARTITION_SEARCH_ORDER equ 0
|
||||
-CONFIG_PIC equ 0
|
||||
+CONFIG_PIC equ 1
|
||||
CONFIG_RATECTRL_LOG equ 0
|
||||
CONFIG_RD_COMMAND equ 0
|
||||
CONFIG_RD_DEBUG equ 0
|
||||
diff --git a/third_party/libaom/source/config/linux/arm64/config/aom_config.h b/third_party/libaom/source/config/linux/arm64/config/aom_config.h
|
||||
--- a/third_party/libaom/source/config/linux/arm64/config/aom_config.h
|
||||
+++ b/third_party/libaom/source/config/linux/arm64/config/aom_config.h
|
||||
@@ -52,7 +52,7 @@
|
||||
#define CONFIG_OPTICAL_FLOW_API 0
|
||||
#define CONFIG_OS_SUPPORT 1
|
||||
#define CONFIG_PARTITION_SEARCH_ORDER 0
|
||||
-#define CONFIG_PIC 0
|
||||
+#define CONFIG_PIC 1
|
||||
#define CONFIG_RATECTRL_LOG 0
|
||||
#define CONFIG_RD_COMMAND 0
|
||||
#define CONFIG_RD_DEBUG 0
|
||||
diff --git a/third_party/libaom/source/config/linux/generic/config/aom_config.asm b/third_party/libaom/source/config/linux/generic/config/aom_config.asm
|
||||
--- a/third_party/libaom/source/config/linux/generic/config/aom_config.asm
|
||||
+++ b/third_party/libaom/source/config/linux/generic/config/aom_config.asm
|
||||
@@ -50,7 +50,7 @@ CONFIG_NORMAL_TILE_MODE equ 1
|
||||
CONFIG_OPTICAL_FLOW_API equ 0
|
||||
CONFIG_OS_SUPPORT equ 1
|
||||
CONFIG_PARTITION_SEARCH_ORDER equ 0
|
||||
-CONFIG_PIC equ 0
|
||||
+CONFIG_PIC equ 1
|
||||
CONFIG_RATECTRL_LOG equ 0
|
||||
CONFIG_RD_COMMAND equ 0
|
||||
CONFIG_RD_DEBUG equ 0
|
||||
diff --git a/third_party/libaom/source/config/linux/generic/config/aom_config.h b/third_party/libaom/source/config/linux/generic/config/aom_config.h
|
||||
--- a/third_party/libaom/source/config/linux/generic/config/aom_config.h
|
||||
+++ b/third_party/libaom/source/config/linux/generic/config/aom_config.h
|
||||
@@ -52,7 +52,7 @@
|
||||
#define CONFIG_OPTICAL_FLOW_API 0
|
||||
#define CONFIG_OS_SUPPORT 1
|
||||
#define CONFIG_PARTITION_SEARCH_ORDER 0
|
||||
-#define CONFIG_PIC 0
|
||||
+#define CONFIG_PIC 1
|
||||
#define CONFIG_RATECTRL_LOG 0
|
||||
#define CONFIG_RD_COMMAND 0
|
||||
#define CONFIG_RD_DEBUG 0
|
||||
diff --git a/third_party/libaom/source/config/linux/x64/config/aom_config.asm b/third_party/libaom/source/config/linux/x64/config/aom_config.asm
|
||||
--- a/third_party/libaom/source/config/linux/x64/config/aom_config.asm
|
||||
+++ b/third_party/libaom/source/config/linux/x64/config/aom_config.asm
|
||||
@@ -40,7 +40,7 @@
|
||||
%define CONFIG_OPTICAL_FLOW_API 0
|
||||
%define CONFIG_OS_SUPPORT 1
|
||||
%define CONFIG_PARTITION_SEARCH_ORDER 0
|
||||
-%define CONFIG_PIC 0
|
||||
+%define CONFIG_PIC 1
|
||||
%define CONFIG_RATECTRL_LOG 0
|
||||
%define CONFIG_RD_COMMAND 0
|
||||
%define CONFIG_RD_DEBUG 0
|
||||
diff --git a/third_party/libaom/source/config/linux/x64/config/aom_config.h b/third_party/libaom/source/config/linux/x64/config/aom_config.h
|
||||
--- a/third_party/libaom/source/config/linux/x64/config/aom_config.h
|
||||
+++ b/third_party/libaom/source/config/linux/x64/config/aom_config.h
|
||||
@@ -52,7 +52,7 @@
|
||||
#define CONFIG_OPTICAL_FLOW_API 0
|
||||
#define CONFIG_OS_SUPPORT 1
|
||||
#define CONFIG_PARTITION_SEARCH_ORDER 0
|
||||
-#define CONFIG_PIC 0
|
||||
+#define CONFIG_PIC 1
|
||||
#define CONFIG_RATECTRL_LOG 0
|
||||
#define CONFIG_RD_COMMAND 0
|
||||
#define CONFIG_RD_DEBUG 0
|
||||
--
|
||||
2.25.1
|
||||
@@ -2,23 +2,24 @@ From: uazo <uazo@users.noreply.github.com>
|
||||
Date: Mon, 26 Apr 2021 13:28:24 +0000
|
||||
Subject: Add AllowUserCertificates flag
|
||||
|
||||
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
|
||||
---
|
||||
.../src/org/chromium/chrome/browser/app/ChromeActivity.java | 3 +++
|
||||
.../chrome/browser/app/flags/ChromeCachedFlags.java | 1 +
|
||||
chrome/browser/about_flags.cc | 6 +++++-
|
||||
chrome/browser/flag_descriptions.cc | 5 +++++
|
||||
chrome/browser/flag_descriptions.h | 3 +++
|
||||
chrome/browser/flags/android/chrome_feature_list.cc | 4 ++++
|
||||
chrome/browser/flags/android/chrome_feature_list.h | 1 +
|
||||
.../chromium/chrome/browser/flags/CachedFeatureFlags.java | 1 +
|
||||
.../chromium/chrome/browser/flags/ChromeFeatureList.java | 1 +
|
||||
net/android/java/src/org/chromium/net/X509Util.java | 5 +++++
|
||||
10 files changed, 29 insertions(+), 1 deletion(-)
|
||||
.../src/org/chromium/chrome/browser/app/ChromeActivity.java | 3 +++
|
||||
.../chromium/chrome/browser/app/flags/ChromeCachedFlags.java | 1 +
|
||||
chrome/browser/about_flags.cc | 4 ++++
|
||||
chrome/browser/flag_descriptions.cc | 5 +++++
|
||||
chrome/browser/flag_descriptions.h | 3 +++
|
||||
chrome/browser/flags/android/chrome_feature_list.cc | 5 +++++
|
||||
chrome/browser/flags/android/chrome_feature_list.h | 1 +
|
||||
.../org/chromium/chrome/browser/flags/ChromeFeatureList.java | 3 +++
|
||||
net/android/java/src/org/chromium/net/X509Util.java | 5 +++++
|
||||
9 files changed, 30 insertions(+)
|
||||
|
||||
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
|
||||
@@ -231,6 +231,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 +27,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;
|
||||
@@ -994,6 +995,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
@@ -961,6 +962,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
UpdateMenuItemHelper.getInstance().onStart();
|
||||
ChromeActivitySessionTracker.getInstance().onStartWithNative();
|
||||
ChromeCachedFlags.getInstance().cacheNativeFlags();
|
||||
@@ -38,30 +39,28 @@ 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
|
||||
@@ -94,6 +94,7 @@ public class ChromeCachedFlags {
|
||||
.GIVE_JAVA_UI_THREAD_DEFAULT_TASK_TRAITS_USER_BLOCKING_PRIORITY);
|
||||
add(ChromeFeatureList.GRID_TAB_SWITCHER_FOR_TABLETS);
|
||||
add(ChromeFeatureList.IMMERSIVE_UI_MODE);
|
||||
+ add(ChromeFeatureList.ALLOW_USER_CERTIFICATES);
|
||||
add(ChromeFeatureList.INSTANT_START);
|
||||
add(ChromeFeatureList.INSTANCE_SWITCHER);
|
||||
add(ChromeFeatureList.INTEREST_FEED_V2);
|
||||
@@ -77,6 +77,7 @@ public class ChromeCachedFlags {
|
||||
add(ChromeFeatureList.sAndroidAuxiliarySearch);
|
||||
add(ChromeFeatureList.sAnonymousUpdateChecks);
|
||||
add(ChromeFeatureList.sAppMenuMobileSiteOption);
|
||||
+ add(ChromeFeatureList.sAllowUserCertificates);
|
||||
add(ChromeFeatureList.sBackGestureRefactorAndroid);
|
||||
add(ChromeFeatureList.sCctBrandTransparency);
|
||||
add(ChromeFeatureList.sCctIncognito);
|
||||
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
|
||||
@@ -3220,7 +3220,11 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
{"enable-container-queries", flag_descriptions::kCSSContainerQueriesName,
|
||||
flag_descriptions::kCSSContainerQueriesDescription, kOsAll,
|
||||
FEATURE_VALUE_TYPE(blink::features::kCSSContainerQueries)},
|
||||
-#if BUILDFLAG(IS_ANDROID)
|
||||
+#if BUILDFLAG(IS_ANDROID) // Bromite allow user certificates
|
||||
@@ -8936,6 +8936,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
FEATURE_VALUE_TYPE(features::kWin10TabSearchCaptionButton)},
|
||||
#endif // BUILDFLAG(IS_WIN)
|
||||
|
||||
+ {"allow-user-certificates",
|
||||
+ flag_descriptions::kAllowUserCertificatesName,
|
||||
+ flag_descriptions::kAllowUserCertificatesDescription, kOsAndroid,
|
||||
+ FEATURE_VALUE_TYPE(chrome::android::kAllowUserCertificates)},
|
||||
{"explore-sites", flag_descriptions::kExploreSitesName,
|
||||
flag_descriptions::kExploreSitesDescription, kOsAndroid,
|
||||
FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kExploreSites,
|
||||
{"omnibox-updated-connection-security-indicators",
|
||||
flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsName,
|
||||
flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsDescription,
|
||||
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
|
||||
@@ -80,7 +79,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
|
||||
@@ -38,6 +38,9 @@ namespace flag_descriptions {
|
||||
@@ -40,6 +40,9 @@ namespace flag_descriptions {
|
||||
|
||||
// Cross-platform -------------------------------------------------------------
|
||||
|
||||
@@ -93,50 +92,40 @@ 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
|
||||
@@ -144,6 +144,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
||||
&feed::kFeedLoadingPlaceholder,
|
||||
@@ -153,6 +153,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
||||
&feed::kFeedReplaceAll,
|
||||
&feed::kFeedShowSignInCommand,
|
||||
&feed::kInterestFeedContentSuggestions,
|
||||
&feed::kInterestFeedSpinnerAlwaysAnimate,
|
||||
+ &kAllowUserCertificates,
|
||||
&feed::kInterestFeedV1ClicksAndViewsConditionalUpload,
|
||||
&feed::kInterestFeedV2,
|
||||
&feed::kInterestFeedV2Autoplay,
|
||||
@@ -399,6 +400,9 @@ const base::Feature kAdaptiveButtonInTopToolbarCustomizationV2{
|
||||
"AdaptiveButtonInTopToolbarCustomizationV2",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
@@ -469,6 +470,10 @@ BASE_FEATURE(kAllowNewIncognitoTabIntents,
|
||||
"AllowNewIncognitoTabIntents",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
|
||||
+const base::Feature kAllowUserCertificates = {
|
||||
+ "AllowUserCertificates", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kAllowUserCertificates,
|
||||
+ "AllowUserCertificates",
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+
|
||||
const base::Feature kAddToHomescreenIPH{"AddToHomescreenIPH",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
|
||||
BASE_FEATURE(kFocusOmniboxInIncognitoTabIntents,
|
||||
"FocusOmniboxInIncognitoTabIntents",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h
|
||||
--- a/chrome/browser/flags/android/chrome_feature_list.h
|
||||
+++ b/chrome/browser/flags/android/chrome_feature_list.h
|
||||
@@ -12,6 +12,7 @@
|
||||
namespace chrome {
|
||||
namespace android {
|
||||
|
||||
+extern const base::Feature kAllowUserCertificates;
|
||||
// Alphabetical:
|
||||
extern const base::Feature kAdaptiveButtonInTopToolbar;
|
||||
extern const base::Feature kAdaptiveButtonInTopToolbarCustomizationV2;
|
||||
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
|
||||
@@ -51,6 +51,7 @@ public class CachedFeatureFlags {
|
||||
.put(ChromeFeatureList.ANONYMOUS_UPDATE_CHECKS, true)
|
||||
.put(ChromeFeatureList.BOOKMARK_BOTTOM_SHEET, false)
|
||||
.put(ChromeFeatureList.CONDITIONAL_TAB_STRIP_ANDROID, false)
|
||||
+ .put(ChromeFeatureList.ALLOW_USER_CERTIFICATES, false)
|
||||
.put(ChromeFeatureList.LENS_CAMERA_ASSISTED_SEARCH, false)
|
||||
.put(ChromeFeatureList.SERVICE_MANAGER_FOR_DOWNLOAD, true)
|
||||
.put(ChromeFeatureList.SERVICE_MANAGER_FOR_BACKGROUND_PREFETCH, true)
|
||||
@@ -17,6 +17,7 @@ BASE_DECLARE_FEATURE(kAdaptiveButtonInTopToolbar);
|
||||
BASE_DECLARE_FEATURE(kAdaptiveButtonInTopToolbarCustomizationV2);
|
||||
BASE_DECLARE_FEATURE(kAddToHomescreenIPH);
|
||||
BASE_DECLARE_FEATURE(kAllowNewIncognitoTabIntents);
|
||||
+BASE_DECLARE_FEATURE(kAllowUserCertificates);
|
||||
BASE_DECLARE_FEATURE(kAndroidScrollOptimizations);
|
||||
BASE_DECLARE_FEATURE(kAndroidSearchEngineChoiceNotification);
|
||||
BASE_DECLARE_FEATURE(kAssistantConsentModal);
|
||||
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
|
||||
@@ -193,6 +193,7 @@ public abstract class ChromeFeatureList {
|
||||
@@ -162,6 +162,7 @@ public abstract class ChromeFeatureList {
|
||||
}
|
||||
|
||||
/* Alphabetical: */
|
||||
@@ -144,6 +133,15 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
|
||||
public static final String ABOUT_THIS_SITE_BANNER = "AboutThisSiteBanner";
|
||||
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR = "AdaptiveButtonInTopToolbar";
|
||||
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2 =
|
||||
@@ -612,6 +613,8 @@ public abstract class ChromeFeatureList {
|
||||
"SkipServiceWorkerForInstallPromot";
|
||||
|
||||
/* Alphabetical: */
|
||||
+ public static final CachedFlag sAllowUserCertificates =
|
||||
+ new CachedFlag(ALLOW_USER_CERTIFICATES, false);
|
||||
public static final CachedFlag sAndroidAuxiliarySearch =
|
||||
new CachedFlag(OMNIBOX_ANDROID_AUXILIARY_SEARCH, false);
|
||||
public static final CachedFlag sAnonymousUpdateChecks =
|
||||
diff --git a/net/android/java/src/org/chromium/net/X509Util.java b/net/android/java/src/org/chromium/net/X509Util.java
|
||||
--- a/net/android/java/src/org/chromium/net/X509Util.java
|
||||
+++ b/net/android/java/src/org/chromium/net/X509Util.java
|
||||
|
||||
@@ -2,6 +2,7 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Tue, 9 Mar 2021 19:43:00 +0100
|
||||
Subject: Add Alt+D hotkey to focus address bar
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../java/src/org/chromium/chrome/browser/KeyboardShortcuts.java | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
@@ -2,6 +2,7 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Thu, 12 Oct 2017 11:06:18 +0200
|
||||
Subject: Add DuckDuckGo Lite search engine
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../search_engines/prepopulated_engines.json | 10 +
|
||||
.../search_engines/search_engine_type.h | 1 +
|
||||
@@ -31,18 +32,18 @@ diff --git a/components/search_engines/prepopulated_engines.json b/components/se
|
||||
diff --git a/components/search_engines/search_engine_type.h b/components/search_engines/search_engine_type.h
|
||||
--- a/components/search_engines/search_engine_type.h
|
||||
+++ b/components/search_engines/search_engine_type.h
|
||||
@@ -76,6 +76,7 @@ enum SearchEngineType {
|
||||
SEARCH_ENGINE_ECOSIA = 59,
|
||||
SEARCH_ENGINE_PETALSEARCH = 60,
|
||||
SEARCH_ENGINE_GOOGLE_EN = 61,
|
||||
+ SEARCH_ENGINE_DUCKDUCKGOLIGHT = 62,
|
||||
@@ -79,6 +79,7 @@ enum SearchEngineType {
|
||||
SEARCH_ENGINE_STARTER_PACK_HISTORY = 62,
|
||||
SEARCH_ENGINE_STARTER_PACK_TABS = 63,
|
||||
SEARCH_ENGINE_GOOGLE_EN = 64,
|
||||
+ SEARCH_ENGINE_DUCKDUCKGOLIGHT = 65,
|
||||
|
||||
SEARCH_ENGINE_MAX // Bounding value needed for UMA histogram macro.
|
||||
};
|
||||
diff --git a/components/search_engines/template_url_prepopulate_data.cc b/components/search_engines/template_url_prepopulate_data.cc
|
||||
--- a/components/search_engines/template_url_prepopulate_data.cc
|
||||
+++ b/components/search_engines/template_url_prepopulate_data.cc
|
||||
@@ -41,7 +41,7 @@ const PrepopulatedEngine* const engines_AE[] = {
|
||||
@@ -42,7 +42,7 @@ const PrepopulatedEngine* const engines_AE[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -51,7 +52,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -50,7 +50,7 @@ const PrepopulatedEngine* const engines_AL[] = {
|
||||
@@ -51,7 +51,7 @@ const PrepopulatedEngine* const engines_AL[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -60,7 +61,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_com,
|
||||
};
|
||||
|
||||
@@ -59,7 +59,7 @@ const PrepopulatedEngine* const engines_AR[] = {
|
||||
@@ -60,7 +60,7 @@ const PrepopulatedEngine* const engines_AR[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_ar,
|
||||
@@ -69,7 +70,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -67,7 +67,7 @@ const PrepopulatedEngine* const engines_AR[] = {
|
||||
@@ -68,7 +68,7 @@ const PrepopulatedEngine* const engines_AR[] = {
|
||||
const PrepopulatedEngine* const engines_AT[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
@@ -78,7 +79,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo_at,
|
||||
&ecosia,
|
||||
};
|
||||
@@ -77,7 +77,7 @@ const PrepopulatedEngine* const engines_AU[] = {
|
||||
@@ -78,7 +78,7 @@ const PrepopulatedEngine* const engines_AU[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_au,
|
||||
@@ -87,7 +88,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -86,7 +86,7 @@ const PrepopulatedEngine* const engines_BA[] = {
|
||||
@@ -87,7 +87,7 @@ const PrepopulatedEngine* const engines_BA[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -96,7 +97,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_com,
|
||||
};
|
||||
|
||||
@@ -96,7 +96,7 @@ const PrepopulatedEngine* const engines_BE[] = {
|
||||
@@ -97,7 +97,7 @@ const PrepopulatedEngine* const engines_BE[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&ecosia,
|
||||
@@ -105,7 +106,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Bulgaria
|
||||
@@ -104,7 +104,7 @@ const PrepopulatedEngine* const engines_BG[] = {
|
||||
@@ -105,7 +105,7 @@ const PrepopulatedEngine* const engines_BG[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -114,7 +115,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
};
|
||||
|
||||
@@ -113,7 +113,7 @@ const PrepopulatedEngine* const engines_BH[] = {
|
||||
@@ -114,7 +114,7 @@ const PrepopulatedEngine* const engines_BH[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -123,7 +124,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_com,
|
||||
};
|
||||
|
||||
@@ -122,7 +122,7 @@ const PrepopulatedEngine* const engines_BI[] = {
|
||||
@@ -123,7 +123,7 @@ const PrepopulatedEngine* const engines_BI[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -132,7 +133,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
};
|
||||
|
||||
@@ -131,7 +131,7 @@ const PrepopulatedEngine* const engines_BN[] = {
|
||||
@@ -132,7 +132,7 @@ const PrepopulatedEngine* const engines_BN[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -141,7 +142,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -140,7 +140,7 @@ const PrepopulatedEngine* const engines_BO[] = {
|
||||
@@ -141,7 +141,7 @@ const PrepopulatedEngine* const engines_BO[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -150,7 +151,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -149,7 +149,7 @@ const PrepopulatedEngine* const engines_BR[] = {
|
||||
@@ -150,7 +150,7 @@ const PrepopulatedEngine* const engines_BR[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_br,
|
||||
@@ -159,7 +160,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -159,7 +159,7 @@ const PrepopulatedEngine* const engines_BY[] = {
|
||||
@@ -160,7 +160,7 @@ const PrepopulatedEngine* const engines_BY[] = {
|
||||
&yandex_by,
|
||||
&mail_ru,
|
||||
&bing,
|
||||
@@ -168,7 +169,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Belize
|
||||
@@ -167,7 +167,7 @@ const PrepopulatedEngine* const engines_BZ[] = {
|
||||
@@ -168,7 +168,7 @@ const PrepopulatedEngine* const engines_BZ[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -177,7 +178,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -176,7 +176,7 @@ const PrepopulatedEngine* const engines_CA[] = {
|
||||
@@ -177,7 +177,7 @@ const PrepopulatedEngine* const engines_CA[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_ca,
|
||||
@@ -186,7 +187,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -184,7 +184,7 @@ const PrepopulatedEngine* const engines_CA[] = {
|
||||
@@ -185,7 +185,7 @@ const PrepopulatedEngine* const engines_CA[] = {
|
||||
const PrepopulatedEngine* const engines_CH[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
@@ -195,7 +196,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
&yahoo_ch,
|
||||
};
|
||||
@@ -194,7 +194,7 @@ const PrepopulatedEngine* const engines_CL[] = {
|
||||
@@ -195,7 +195,7 @@ const PrepopulatedEngine* const engines_CL[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_cl,
|
||||
@@ -204,7 +205,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -213,7 +213,7 @@ const PrepopulatedEngine* const engines_CO[] = {
|
||||
@@ -214,7 +214,7 @@ const PrepopulatedEngine* const engines_CO[] = {
|
||||
&bing,
|
||||
&yahoo_co,
|
||||
&ecosia,
|
||||
@@ -213,7 +214,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Costa Rica
|
||||
@@ -221,7 +221,7 @@ const PrepopulatedEngine* const engines_CR[] = {
|
||||
@@ -222,7 +222,7 @@ const PrepopulatedEngine* const engines_CR[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -222,7 +223,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -231,7 +231,7 @@ const PrepopulatedEngine* const engines_CZ[] = {
|
||||
@@ -232,7 +232,7 @@ const PrepopulatedEngine* const engines_CZ[] = {
|
||||
&seznam_cz,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -231,7 +232,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Germany
|
||||
@@ -239,7 +239,7 @@ const PrepopulatedEngine* const engines_DE[] = {
|
||||
@@ -240,7 +240,7 @@ const PrepopulatedEngine* const engines_DE[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&ecosia,
|
||||
@@ -240,7 +241,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo_de,
|
||||
};
|
||||
|
||||
@@ -248,7 +248,7 @@ const PrepopulatedEngine* const engines_DK[] = {
|
||||
@@ -249,7 +249,7 @@ const PrepopulatedEngine* const engines_DK[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_dk,
|
||||
@@ -249,7 +250,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -257,7 +257,7 @@ const PrepopulatedEngine* const engines_DO[] = {
|
||||
@@ -258,7 +258,7 @@ const PrepopulatedEngine* const engines_DO[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -258,7 +259,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -267,7 +267,7 @@ const PrepopulatedEngine* const engines_DZ[] = {
|
||||
@@ -268,7 +268,7 @@ const PrepopulatedEngine* const engines_DZ[] = {
|
||||
&bing,
|
||||
&yahoo_fr,
|
||||
&yandex_com,
|
||||
@@ -267,7 +268,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Ecuador
|
||||
@@ -276,7 +276,7 @@ const PrepopulatedEngine* const engines_EC[] = {
|
||||
@@ -277,7 +277,7 @@ const PrepopulatedEngine* const engines_EC[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&ecosia,
|
||||
@@ -276,7 +277,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Estonia
|
||||
@@ -284,7 +284,7 @@ const PrepopulatedEngine* const engines_EE[] = {
|
||||
@@ -285,7 +285,7 @@ const PrepopulatedEngine* const engines_EE[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yandex_ru,
|
||||
@@ -285,7 +286,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo,
|
||||
};
|
||||
|
||||
@@ -294,7 +294,7 @@ const PrepopulatedEngine* const engines_EG[] = {
|
||||
@@ -295,7 +295,7 @@ const PrepopulatedEngine* const engines_EG[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -294,7 +295,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Spain
|
||||
@@ -302,7 +302,7 @@ const PrepopulatedEngine* const engines_ES[] = {
|
||||
@@ -303,7 +303,7 @@ const PrepopulatedEngine* const engines_ES[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
@@ -303,7 +304,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -311,7 +311,7 @@ const PrepopulatedEngine* const engines_FI[] = {
|
||||
@@ -312,7 +312,7 @@ const PrepopulatedEngine* const engines_FI[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_fi,
|
||||
@@ -312,7 +313,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
};
|
||||
|
||||
@@ -320,7 +320,7 @@ const PrepopulatedEngine* const engines_FO[] = {
|
||||
@@ -321,7 +321,7 @@ const PrepopulatedEngine* const engines_FO[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_dk,
|
||||
@@ -321,7 +322,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -338,7 +338,7 @@ const PrepopulatedEngine* const engines_GB[] = {
|
||||
@@ -339,7 +339,7 @@ const PrepopulatedEngine* const engines_GB[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_uk,
|
||||
@@ -330,7 +331,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -347,7 +347,7 @@ const PrepopulatedEngine* const engines_GR[] = {
|
||||
@@ -348,7 +348,7 @@ const PrepopulatedEngine* const engines_GR[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -339,7 +340,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
};
|
||||
|
||||
@@ -356,7 +356,7 @@ const PrepopulatedEngine* const engines_GT[] = {
|
||||
@@ -357,7 +357,7 @@ const PrepopulatedEngine* const engines_GT[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -348,7 +349,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -366,7 +366,7 @@ const PrepopulatedEngine* const engines_HK[] = {
|
||||
@@ -367,7 +367,7 @@ const PrepopulatedEngine* const engines_HK[] = {
|
||||
&yahoo_hk,
|
||||
&bing,
|
||||
&baidu,
|
||||
@@ -357,7 +358,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Honduras
|
||||
@@ -374,7 +374,7 @@ const PrepopulatedEngine* const engines_HN[] = {
|
||||
@@ -375,7 +375,7 @@ const PrepopulatedEngine* const engines_HN[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -366,7 +367,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -383,7 +383,7 @@ const PrepopulatedEngine* const engines_HR[] = {
|
||||
@@ -384,7 +384,7 @@ const PrepopulatedEngine* const engines_HR[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -375,7 +376,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -392,7 +392,7 @@ const PrepopulatedEngine* const engines_HU[] = {
|
||||
@@ -393,7 +393,7 @@ const PrepopulatedEngine* const engines_HU[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -384,7 +385,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_com,
|
||||
};
|
||||
|
||||
@@ -402,7 +402,7 @@ const PrepopulatedEngine* const engines_ID[] = {
|
||||
@@ -403,7 +403,7 @@ const PrepopulatedEngine* const engines_ID[] = {
|
||||
&yahoo_id,
|
||||
&bing,
|
||||
&yandex_com,
|
||||
@@ -393,7 +394,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Ireland
|
||||
@@ -410,7 +410,7 @@ const PrepopulatedEngine* const engines_IE[] = {
|
||||
@@ -411,7 +411,7 @@ const PrepopulatedEngine* const engines_IE[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_uk,
|
||||
@@ -402,7 +403,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -420,7 +420,7 @@ const PrepopulatedEngine* const engines_IL[] = {
|
||||
@@ -421,7 +421,7 @@ const PrepopulatedEngine* const engines_IL[] = {
|
||||
&bing,
|
||||
&yandex_ru,
|
||||
&yahoo,
|
||||
@@ -411,7 +412,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// India
|
||||
@@ -428,7 +428,7 @@ const PrepopulatedEngine* const engines_IN[] = {
|
||||
@@ -429,7 +429,7 @@ const PrepopulatedEngine* const engines_IN[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_in,
|
||||
@@ -420,7 +421,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&info_com,
|
||||
};
|
||||
|
||||
@@ -438,7 +438,7 @@ const PrepopulatedEngine* const engines_IQ[] = {
|
||||
@@ -439,7 +439,7 @@ const PrepopulatedEngine* const engines_IQ[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_tr,
|
||||
@@ -429,7 +430,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Iran
|
||||
@@ -447,14 +447,14 @@ const PrepopulatedEngine* const engines_IR[] = {
|
||||
@@ -448,14 +448,14 @@ const PrepopulatedEngine* const engines_IR[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&ask,
|
||||
@@ -446,7 +447,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo,
|
||||
&ecosia,
|
||||
};
|
||||
@@ -464,7 +464,7 @@ const PrepopulatedEngine* const engines_IT[] = {
|
||||
@@ -465,7 +465,7 @@ const PrepopulatedEngine* const engines_IT[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -455,7 +456,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -473,7 +473,7 @@ const PrepopulatedEngine* const engines_JM[] = {
|
||||
@@ -474,7 +474,7 @@ const PrepopulatedEngine* const engines_JM[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -464,7 +465,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -482,7 +482,7 @@ const PrepopulatedEngine* const engines_JO[] = {
|
||||
@@ -483,7 +483,7 @@ const PrepopulatedEngine* const engines_JO[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -473,7 +474,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_com,
|
||||
};
|
||||
|
||||
@@ -491,7 +491,7 @@ const PrepopulatedEngine* const engines_JP[] = {
|
||||
@@ -492,7 +492,7 @@ const PrepopulatedEngine* const engines_JP[] = {
|
||||
&googleen, &google,
|
||||
&yahoo_jp,
|
||||
&bing,
|
||||
@@ -482,7 +483,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&baidu,
|
||||
};
|
||||
|
||||
@@ -500,7 +500,7 @@ const PrepopulatedEngine* const engines_KE[] = {
|
||||
@@ -501,7 +501,7 @@ const PrepopulatedEngine* const engines_KE[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -491,7 +492,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -518,7 +518,7 @@ const PrepopulatedEngine* const engines_KW[] = {
|
||||
@@ -519,7 +519,7 @@ const PrepopulatedEngine* const engines_KW[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -500,7 +501,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_com,
|
||||
};
|
||||
|
||||
@@ -528,7 +528,7 @@ const PrepopulatedEngine* const engines_KZ[] = {
|
||||
@@ -529,7 +529,7 @@ const PrepopulatedEngine* const engines_KZ[] = {
|
||||
&yandex_kz,
|
||||
&mail_ru,
|
||||
&bing,
|
||||
@@ -509,7 +510,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Lebanon
|
||||
@@ -536,7 +536,7 @@ const PrepopulatedEngine* const engines_LB[] = {
|
||||
@@ -537,7 +537,7 @@ const PrepopulatedEngine* const engines_LB[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -518,7 +519,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -544,7 +544,7 @@ const PrepopulatedEngine* const engines_LB[] = {
|
||||
@@ -545,7 +545,7 @@ const PrepopulatedEngine* const engines_LB[] = {
|
||||
const PrepopulatedEngine* const engines_LI[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
@@ -527,7 +528,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo,
|
||||
&ecosia,
|
||||
};
|
||||
@@ -554,7 +554,7 @@ const PrepopulatedEngine* const engines_LT[] = {
|
||||
@@ -555,7 +555,7 @@ const PrepopulatedEngine* const engines_LT[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -536,7 +537,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
};
|
||||
|
||||
@@ -562,7 +562,7 @@ const PrepopulatedEngine* const engines_LT[] = {
|
||||
@@ -563,7 +563,7 @@ const PrepopulatedEngine* const engines_LT[] = {
|
||||
const PrepopulatedEngine* const engines_LU[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
@@ -545,7 +546,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo,
|
||||
&ecosia,
|
||||
};
|
||||
@@ -573,7 +573,7 @@ const PrepopulatedEngine* const engines_LV[] = {
|
||||
@@ -574,7 +574,7 @@ const PrepopulatedEngine* const engines_LV[] = {
|
||||
&bing,
|
||||
&yandex_ru,
|
||||
&yahoo,
|
||||
@@ -554,7 +555,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Libya
|
||||
@@ -582,7 +582,7 @@ const PrepopulatedEngine* const engines_LY[] = {
|
||||
@@ -583,7 +583,7 @@ const PrepopulatedEngine* const engines_LY[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -563,7 +564,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Morocco
|
||||
@@ -591,14 +591,14 @@ const PrepopulatedEngine* const engines_MA[] = {
|
||||
@@ -592,14 +592,14 @@ const PrepopulatedEngine* const engines_MA[] = {
|
||||
&bing,
|
||||
&yahoo_fr,
|
||||
&yandex_com,
|
||||
@@ -580,7 +581,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo_fr,
|
||||
&ecosia,
|
||||
};
|
||||
@@ -618,7 +618,7 @@ const PrepopulatedEngine* const engines_ME[] = {
|
||||
@@ -619,7 +619,7 @@ const PrepopulatedEngine* const engines_ME[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_ru,
|
||||
@@ -589,7 +590,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Macedonia
|
||||
@@ -626,7 +626,7 @@ const PrepopulatedEngine* const engines_MK[] = {
|
||||
@@ -627,7 +627,7 @@ const PrepopulatedEngine* const engines_MK[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -598,7 +599,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
};
|
||||
|
||||
@@ -635,7 +635,7 @@ const PrepopulatedEngine* const engines_MX[] = {
|
||||
@@ -636,7 +636,7 @@ const PrepopulatedEngine* const engines_MX[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_mx,
|
||||
@@ -607,7 +608,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -644,7 +644,7 @@ const PrepopulatedEngine* const engines_MY[] = {
|
||||
@@ -645,7 +645,7 @@ const PrepopulatedEngine* const engines_MY[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_my,
|
||||
@@ -616,7 +617,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -653,7 +653,7 @@ const PrepopulatedEngine* const engines_NI[] = {
|
||||
@@ -654,7 +654,7 @@ const PrepopulatedEngine* const engines_NI[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -625,7 +626,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -662,7 +662,7 @@ const PrepopulatedEngine* const engines_NL[] = {
|
||||
@@ -663,7 +663,7 @@ const PrepopulatedEngine* const engines_NL[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_nl,
|
||||
@@ -634,7 +635,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -671,7 +671,7 @@ const PrepopulatedEngine* const engines_NO[] = {
|
||||
@@ -672,7 +672,7 @@ const PrepopulatedEngine* const engines_NO[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -643,7 +644,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -680,7 +680,7 @@ const PrepopulatedEngine* const engines_NZ[] = {
|
||||
@@ -681,7 +681,7 @@ const PrepopulatedEngine* const engines_NZ[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_nz,
|
||||
@@ -652,7 +653,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -689,7 +689,7 @@ const PrepopulatedEngine* const engines_OM[] = {
|
||||
@@ -690,7 +690,7 @@ const PrepopulatedEngine* const engines_OM[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -661,7 +662,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&petal_search,
|
||||
};
|
||||
|
||||
@@ -698,7 +698,7 @@ const PrepopulatedEngine* const engines_PA[] = {
|
||||
@@ -699,7 +699,7 @@ const PrepopulatedEngine* const engines_PA[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
@@ -670,7 +671,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -708,7 +708,7 @@ const PrepopulatedEngine* const engines_PE[] = {
|
||||
@@ -709,7 +709,7 @@ const PrepopulatedEngine* const engines_PE[] = {
|
||||
&bing,
|
||||
&yahoo_pe,
|
||||
&ecosia,
|
||||
@@ -679,7 +680,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Philippines
|
||||
@@ -717,7 +717,7 @@ const PrepopulatedEngine* const engines_PH[] = {
|
||||
@@ -718,7 +718,7 @@ const PrepopulatedEngine* const engines_PH[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&ecosia,
|
||||
@@ -688,7 +689,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Pakistan
|
||||
@@ -725,7 +725,7 @@ const PrepopulatedEngine* const engines_PK[] = {
|
||||
@@ -726,7 +726,7 @@ const PrepopulatedEngine* const engines_PK[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -697,7 +698,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_com,
|
||||
};
|
||||
|
||||
@@ -734,7 +734,7 @@ const PrepopulatedEngine* const engines_PL[] = {
|
||||
@@ -735,7 +735,7 @@ const PrepopulatedEngine* const engines_PL[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -706,7 +707,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
};
|
||||
|
||||
@@ -743,7 +743,7 @@ const PrepopulatedEngine* const engines_PR[] = {
|
||||
@@ -744,7 +744,7 @@ const PrepopulatedEngine* const engines_PR[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -715,7 +716,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -752,7 +752,7 @@ const PrepopulatedEngine* const engines_PT[] = {
|
||||
@@ -753,7 +753,7 @@ const PrepopulatedEngine* const engines_PT[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -724,7 +725,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -761,7 +761,7 @@ const PrepopulatedEngine* const engines_PY[] = {
|
||||
@@ -762,7 +762,7 @@ const PrepopulatedEngine* const engines_PY[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
@@ -733,7 +734,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -770,7 +770,7 @@ const PrepopulatedEngine* const engines_QA[] = {
|
||||
@@ -771,7 +771,7 @@ const PrepopulatedEngine* const engines_QA[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -742,7 +743,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_tr,
|
||||
};
|
||||
|
||||
@@ -779,7 +779,7 @@ const PrepopulatedEngine* const engines_RO[] = {
|
||||
@@ -780,7 +780,7 @@ const PrepopulatedEngine* const engines_RO[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -751,7 +752,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_tr,
|
||||
};
|
||||
|
||||
@@ -788,7 +788,7 @@ const PrepopulatedEngine* const engines_RS[] = {
|
||||
@@ -789,7 +789,7 @@ const PrepopulatedEngine* const engines_RS[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -760,7 +761,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
};
|
||||
|
||||
@@ -798,7 +798,7 @@ const PrepopulatedEngine* const engines_RU[] = {
|
||||
@@ -799,7 +799,7 @@ const PrepopulatedEngine* const engines_RU[] = {
|
||||
&yandex_ru,
|
||||
&mail_ru,
|
||||
&bing,
|
||||
@@ -769,7 +770,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Rwanda
|
||||
@@ -806,7 +806,7 @@ const PrepopulatedEngine* const engines_RW[] = {
|
||||
@@ -807,7 +807,7 @@ const PrepopulatedEngine* const engines_RW[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -778,7 +779,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -816,7 +816,7 @@ const PrepopulatedEngine* const engines_SA[] = {
|
||||
@@ -817,7 +817,7 @@ const PrepopulatedEngine* const engines_SA[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -787,7 +788,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Sweden
|
||||
@@ -824,7 +824,7 @@ const PrepopulatedEngine* const engines_SE[] = {
|
||||
@@ -825,7 +825,7 @@ const PrepopulatedEngine* const engines_SE[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_se,
|
||||
@@ -796,7 +797,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -833,7 +833,7 @@ const PrepopulatedEngine* const engines_SG[] = {
|
||||
@@ -834,7 +834,7 @@ const PrepopulatedEngine* const engines_SG[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_sg,
|
||||
@@ -805,7 +806,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&baidu,
|
||||
};
|
||||
|
||||
@@ -841,7 +841,7 @@ const PrepopulatedEngine* const engines_SG[] = {
|
||||
@@ -842,7 +842,7 @@ const PrepopulatedEngine* const engines_SG[] = {
|
||||
const PrepopulatedEngine* const engines_SI[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
@@ -814,7 +815,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
};
|
||||
@@ -850,7 +850,7 @@ const PrepopulatedEngine* const engines_SI[] = {
|
||||
@@ -851,7 +851,7 @@ const PrepopulatedEngine* const engines_SI[] = {
|
||||
const PrepopulatedEngine* const engines_SK[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
@@ -823,7 +824,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
};
|
||||
@@ -860,7 +860,7 @@ const PrepopulatedEngine* const engines_SV[] = {
|
||||
@@ -861,7 +861,7 @@ const PrepopulatedEngine* const engines_SV[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
@@ -832,7 +833,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -870,7 +870,7 @@ const PrepopulatedEngine* const engines_SY[] = {
|
||||
@@ -871,7 +871,7 @@ const PrepopulatedEngine* const engines_SY[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -841,7 +842,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Thailand
|
||||
@@ -887,7 +887,7 @@ const PrepopulatedEngine* const engines_TN[] = {
|
||||
@@ -888,7 +888,7 @@ const PrepopulatedEngine* const engines_TN[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_fr,
|
||||
@@ -850,7 +851,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_com,
|
||||
};
|
||||
|
||||
@@ -897,7 +897,7 @@ const PrepopulatedEngine* const engines_TR[] = {
|
||||
@@ -898,7 +898,7 @@ const PrepopulatedEngine* const engines_TR[] = {
|
||||
&yandex_tr,
|
||||
&yahoo_tr,
|
||||
&bing,
|
||||
@@ -859,7 +860,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Trinidad and Tobago
|
||||
@@ -905,7 +905,7 @@ const PrepopulatedEngine* const engines_TT[] = {
|
||||
@@ -906,7 +906,7 @@ const PrepopulatedEngine* const engines_TT[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -868,7 +869,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -915,7 +915,7 @@ const PrepopulatedEngine* const engines_TW[] = {
|
||||
@@ -916,7 +916,7 @@ const PrepopulatedEngine* const engines_TW[] = {
|
||||
&yahoo_tw,
|
||||
&bing,
|
||||
&baidu,
|
||||
@@ -877,7 +878,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// Tanzania
|
||||
@@ -923,7 +923,7 @@ const PrepopulatedEngine* const engines_TZ[] = {
|
||||
@@ -924,7 +924,7 @@ const PrepopulatedEngine* const engines_TZ[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -886,7 +887,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&baidu,
|
||||
};
|
||||
|
||||
@@ -932,7 +932,7 @@ const PrepopulatedEngine* const engines_UA[] = {
|
||||
@@ -933,7 +933,7 @@ const PrepopulatedEngine* const engines_UA[] = {
|
||||
&googleen, &google,
|
||||
&yandex_ua,
|
||||
&bing,
|
||||
@@ -895,7 +896,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo,
|
||||
};
|
||||
|
||||
@@ -941,7 +941,7 @@ const PrepopulatedEngine* const engines_US[] = {
|
||||
@@ -942,7 +942,7 @@ const PrepopulatedEngine* const engines_US[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -904,7 +905,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -950,7 +950,7 @@ const PrepopulatedEngine* const engines_UY[] = {
|
||||
@@ -951,7 +951,7 @@ const PrepopulatedEngine* const engines_UY[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
@@ -913,7 +914,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -959,7 +959,7 @@ const PrepopulatedEngine* const engines_VE[] = {
|
||||
@@ -960,7 +960,7 @@ const PrepopulatedEngine* const engines_VE[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
@@ -922,7 +923,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -978,7 +978,7 @@ const PrepopulatedEngine* const engines_YE[] = {
|
||||
@@ -979,7 +979,7 @@ const PrepopulatedEngine* const engines_YE[] = {
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -931,7 +932,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
};
|
||||
|
||||
// South Africa
|
||||
@@ -986,7 +986,7 @@ const PrepopulatedEngine* const engines_ZA[] = {
|
||||
@@ -987,7 +987,7 @@ const PrepopulatedEngine* const engines_ZA[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -940,7 +941,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&ecosia,
|
||||
};
|
||||
|
||||
@@ -995,7 +995,7 @@ const PrepopulatedEngine* const engines_ZW[] = {
|
||||
@@ -996,7 +996,7 @@ const PrepopulatedEngine* const engines_ZW[] = {
|
||||
&googleen, &google,
|
||||
&bing,
|
||||
&yahoo,
|
||||
|
||||
@@ -4,6 +4,8 @@ Subject: Add English-only search engine
|
||||
|
||||
Add a Google search engine that forces languages to English,
|
||||
disable from all its searches RLZ and field experiments querystring parameters.
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../search_engines/prepopulated_engines.json | 21 ++
|
||||
.../search_engines/search_engine_type.h | 1 +
|
||||
@@ -13,7 +15,7 @@ disable from all its searches RLZ and field experiments querystring parameters.
|
||||
diff --git a/components/search_engines/prepopulated_engines.json b/components/search_engines/prepopulated_engines.json
|
||||
--- a/components/search_engines/prepopulated_engines.json
|
||||
+++ b/components/search_engines/prepopulated_engines.json
|
||||
@@ -134,6 +134,27 @@
|
||||
@@ -138,6 +138,27 @@
|
||||
"id": 1
|
||||
},
|
||||
|
||||
@@ -44,18 +46,18 @@ diff --git a/components/search_engines/prepopulated_engines.json b/components/se
|
||||
diff --git a/components/search_engines/search_engine_type.h b/components/search_engines/search_engine_type.h
|
||||
--- a/components/search_engines/search_engine_type.h
|
||||
+++ b/components/search_engines/search_engine_type.h
|
||||
@@ -75,6 +75,7 @@ enum SearchEngineType {
|
||||
SEARCH_ENGINE_PRIVACYWALL = 58,
|
||||
SEARCH_ENGINE_ECOSIA = 59,
|
||||
SEARCH_ENGINE_PETALSEARCH = 60,
|
||||
+ SEARCH_ENGINE_GOOGLE_EN = 61,
|
||||
@@ -78,6 +78,7 @@ enum SearchEngineType {
|
||||
SEARCH_ENGINE_STARTER_PACK_BOOKMARKS = 61,
|
||||
SEARCH_ENGINE_STARTER_PACK_HISTORY = 62,
|
||||
SEARCH_ENGINE_STARTER_PACK_TABS = 63,
|
||||
+ SEARCH_ENGINE_GOOGLE_EN = 64,
|
||||
|
||||
SEARCH_ENGINE_MAX // Bounding value needed for UMA histogram macro.
|
||||
};
|
||||
diff --git a/components/search_engines/template_url_prepopulate_data.cc b/components/search_engines/template_url_prepopulate_data.cc
|
||||
--- a/components/search_engines/template_url_prepopulate_data.cc
|
||||
+++ b/components/search_engines/template_url_prepopulate_data.cc
|
||||
@@ -28,7 +28,7 @@ namespace {
|
||||
@@ -29,7 +29,7 @@ namespace {
|
||||
|
||||
// Default (for countries with no better engine set)
|
||||
const PrepopulatedEngine* const engines_default[] = {
|
||||
@@ -64,7 +66,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
};
|
||||
@@ -38,7 +38,7 @@ const PrepopulatedEngine* const engines_default[] = {
|
||||
@@ -39,7 +39,7 @@ const PrepopulatedEngine* const engines_default[] = {
|
||||
// clang-format off
|
||||
// United Arab Emirates
|
||||
const PrepopulatedEngine* const engines_AE[] = {
|
||||
@@ -73,7 +75,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -47,7 +47,7 @@ const PrepopulatedEngine* const engines_AE[] = {
|
||||
@@ -48,7 +48,7 @@ const PrepopulatedEngine* const engines_AE[] = {
|
||||
|
||||
// Albania
|
||||
const PrepopulatedEngine* const engines_AL[] = {
|
||||
@@ -82,7 +84,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -56,7 +56,7 @@ const PrepopulatedEngine* const engines_AL[] = {
|
||||
@@ -57,7 +57,7 @@ const PrepopulatedEngine* const engines_AL[] = {
|
||||
|
||||
// Argentina
|
||||
const PrepopulatedEngine* const engines_AR[] = {
|
||||
@@ -91,7 +93,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_ar,
|
||||
&duckduckgo,
|
||||
@@ -65,7 +65,7 @@ const PrepopulatedEngine* const engines_AR[] = {
|
||||
@@ -66,7 +66,7 @@ const PrepopulatedEngine* const engines_AR[] = {
|
||||
|
||||
// Austria
|
||||
const PrepopulatedEngine* const engines_AT[] = {
|
||||
@@ -100,7 +102,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
&yahoo_at,
|
||||
@@ -74,7 +74,7 @@ const PrepopulatedEngine* const engines_AT[] = {
|
||||
@@ -75,7 +75,7 @@ const PrepopulatedEngine* const engines_AT[] = {
|
||||
|
||||
// Australia
|
||||
const PrepopulatedEngine* const engines_AU[] = {
|
||||
@@ -109,7 +111,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_au,
|
||||
&duckduckgo,
|
||||
@@ -83,7 +83,7 @@ const PrepopulatedEngine* const engines_AU[] = {
|
||||
@@ -84,7 +84,7 @@ const PrepopulatedEngine* const engines_AU[] = {
|
||||
|
||||
// Bosnia and Herzegovina
|
||||
const PrepopulatedEngine* const engines_BA[] = {
|
||||
@@ -118,7 +120,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -92,7 +92,7 @@ const PrepopulatedEngine* const engines_BA[] = {
|
||||
@@ -93,7 +93,7 @@ const PrepopulatedEngine* const engines_BA[] = {
|
||||
|
||||
// Belgium
|
||||
const PrepopulatedEngine* const engines_BE[] = {
|
||||
@@ -127,7 +129,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&ecosia,
|
||||
@@ -101,7 +101,7 @@ const PrepopulatedEngine* const engines_BE[] = {
|
||||
@@ -102,7 +102,7 @@ const PrepopulatedEngine* const engines_BE[] = {
|
||||
|
||||
// Bulgaria
|
||||
const PrepopulatedEngine* const engines_BG[] = {
|
||||
@@ -136,7 +138,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -110,7 +110,7 @@ const PrepopulatedEngine* const engines_BG[] = {
|
||||
@@ -111,7 +111,7 @@ const PrepopulatedEngine* const engines_BG[] = {
|
||||
|
||||
// Bahrain
|
||||
const PrepopulatedEngine* const engines_BH[] = {
|
||||
@@ -145,7 +147,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -119,7 +119,7 @@ const PrepopulatedEngine* const engines_BH[] = {
|
||||
@@ -120,7 +120,7 @@ const PrepopulatedEngine* const engines_BH[] = {
|
||||
|
||||
// Burundi
|
||||
const PrepopulatedEngine* const engines_BI[] = {
|
||||
@@ -154,7 +156,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -128,7 +128,7 @@ const PrepopulatedEngine* const engines_BI[] = {
|
||||
@@ -129,7 +129,7 @@ const PrepopulatedEngine* const engines_BI[] = {
|
||||
|
||||
// Brunei
|
||||
const PrepopulatedEngine* const engines_BN[] = {
|
||||
@@ -163,7 +165,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -137,7 +137,7 @@ const PrepopulatedEngine* const engines_BN[] = {
|
||||
@@ -138,7 +138,7 @@ const PrepopulatedEngine* const engines_BN[] = {
|
||||
|
||||
// Bolivia
|
||||
const PrepopulatedEngine* const engines_BO[] = {
|
||||
@@ -172,7 +174,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -146,7 +146,7 @@ const PrepopulatedEngine* const engines_BO[] = {
|
||||
@@ -147,7 +147,7 @@ const PrepopulatedEngine* const engines_BO[] = {
|
||||
|
||||
// Brazil
|
||||
const PrepopulatedEngine* const engines_BR[] = {
|
||||
@@ -181,7 +183,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_br,
|
||||
&duckduckgo,
|
||||
@@ -155,7 +155,7 @@ const PrepopulatedEngine* const engines_BR[] = {
|
||||
@@ -156,7 +156,7 @@ const PrepopulatedEngine* const engines_BR[] = {
|
||||
|
||||
// Belarus
|
||||
const PrepopulatedEngine* const engines_BY[] = {
|
||||
@@ -190,7 +192,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_by,
|
||||
&mail_ru,
|
||||
&bing,
|
||||
@@ -164,7 +164,7 @@ const PrepopulatedEngine* const engines_BY[] = {
|
||||
@@ -165,7 +165,7 @@ const PrepopulatedEngine* const engines_BY[] = {
|
||||
|
||||
// Belize
|
||||
const PrepopulatedEngine* const engines_BZ[] = {
|
||||
@@ -199,7 +201,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -173,7 +173,7 @@ const PrepopulatedEngine* const engines_BZ[] = {
|
||||
@@ -174,7 +174,7 @@ const PrepopulatedEngine* const engines_BZ[] = {
|
||||
|
||||
// Canada
|
||||
const PrepopulatedEngine* const engines_CA[] = {
|
||||
@@ -208,7 +210,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_ca,
|
||||
&duckduckgo,
|
||||
@@ -182,7 +182,7 @@ const PrepopulatedEngine* const engines_CA[] = {
|
||||
@@ -183,7 +183,7 @@ const PrepopulatedEngine* const engines_CA[] = {
|
||||
|
||||
// Switzerland
|
||||
const PrepopulatedEngine* const engines_CH[] = {
|
||||
@@ -217,7 +219,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
&ecosia,
|
||||
@@ -191,7 +191,7 @@ const PrepopulatedEngine* const engines_CH[] = {
|
||||
@@ -192,7 +192,7 @@ const PrepopulatedEngine* const engines_CH[] = {
|
||||
|
||||
// Chile
|
||||
const PrepopulatedEngine* const engines_CL[] = {
|
||||
@@ -226,7 +228,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_cl,
|
||||
&duckduckgo,
|
||||
@@ -203,13 +203,13 @@ const PrepopulatedEngine* const engines_CN[] = {
|
||||
@@ -204,13 +204,13 @@ const PrepopulatedEngine* const engines_CN[] = {
|
||||
&sogou,
|
||||
&baidu,
|
||||
&bing,
|
||||
@@ -242,7 +244,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_co,
|
||||
&ecosia,
|
||||
@@ -218,7 +218,7 @@ const PrepopulatedEngine* const engines_CO[] = {
|
||||
@@ -219,7 +219,7 @@ const PrepopulatedEngine* const engines_CO[] = {
|
||||
|
||||
// Costa Rica
|
||||
const PrepopulatedEngine* const engines_CR[] = {
|
||||
@@ -251,7 +253,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -227,7 +227,7 @@ const PrepopulatedEngine* const engines_CR[] = {
|
||||
@@ -228,7 +228,7 @@ const PrepopulatedEngine* const engines_CR[] = {
|
||||
|
||||
// Czech Republic
|
||||
const PrepopulatedEngine* const engines_CZ[] = {
|
||||
@@ -260,7 +262,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&seznam_cz,
|
||||
&bing,
|
||||
&yahoo,
|
||||
@@ -236,7 +236,7 @@ const PrepopulatedEngine* const engines_CZ[] = {
|
||||
@@ -237,7 +237,7 @@ const PrepopulatedEngine* const engines_CZ[] = {
|
||||
|
||||
// Germany
|
||||
const PrepopulatedEngine* const engines_DE[] = {
|
||||
@@ -269,7 +271,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&ecosia,
|
||||
&duckduckgo,
|
||||
@@ -245,7 +245,7 @@ const PrepopulatedEngine* const engines_DE[] = {
|
||||
@@ -246,7 +246,7 @@ const PrepopulatedEngine* const engines_DE[] = {
|
||||
|
||||
// Denmark
|
||||
const PrepopulatedEngine* const engines_DK[] = {
|
||||
@@ -278,7 +280,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_dk,
|
||||
&duckduckgo,
|
||||
@@ -254,7 +254,7 @@ const PrepopulatedEngine* const engines_DK[] = {
|
||||
@@ -255,7 +255,7 @@ const PrepopulatedEngine* const engines_DK[] = {
|
||||
|
||||
// Dominican Republic
|
||||
const PrepopulatedEngine* const engines_DO[] = {
|
||||
@@ -287,7 +289,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -263,7 +263,7 @@ const PrepopulatedEngine* const engines_DO[] = {
|
||||
@@ -264,7 +264,7 @@ const PrepopulatedEngine* const engines_DO[] = {
|
||||
|
||||
// Algeria
|
||||
const PrepopulatedEngine* const engines_DZ[] = {
|
||||
@@ -296,7 +298,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_fr,
|
||||
&yandex_com,
|
||||
@@ -272,7 +272,7 @@ const PrepopulatedEngine* const engines_DZ[] = {
|
||||
@@ -273,7 +273,7 @@ const PrepopulatedEngine* const engines_DZ[] = {
|
||||
|
||||
// Ecuador
|
||||
const PrepopulatedEngine* const engines_EC[] = {
|
||||
@@ -305,7 +307,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&ecosia,
|
||||
@@ -281,7 +281,7 @@ const PrepopulatedEngine* const engines_EC[] = {
|
||||
@@ -282,7 +282,7 @@ const PrepopulatedEngine* const engines_EC[] = {
|
||||
|
||||
// Estonia
|
||||
const PrepopulatedEngine* const engines_EE[] = {
|
||||
@@ -314,7 +316,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yandex_ru,
|
||||
&duckduckgo,
|
||||
@@ -290,7 +290,7 @@ const PrepopulatedEngine* const engines_EE[] = {
|
||||
@@ -291,7 +291,7 @@ const PrepopulatedEngine* const engines_EE[] = {
|
||||
|
||||
// Egypt
|
||||
const PrepopulatedEngine* const engines_EG[] = {
|
||||
@@ -323,7 +325,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -299,7 +299,7 @@ const PrepopulatedEngine* const engines_EG[] = {
|
||||
@@ -300,7 +300,7 @@ const PrepopulatedEngine* const engines_EG[] = {
|
||||
|
||||
// Spain
|
||||
const PrepopulatedEngine* const engines_ES[] = {
|
||||
@@ -332,7 +334,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
&duckduckgo,
|
||||
@@ -308,7 +308,7 @@ const PrepopulatedEngine* const engines_ES[] = {
|
||||
@@ -309,7 +309,7 @@ const PrepopulatedEngine* const engines_ES[] = {
|
||||
|
||||
// Finland
|
||||
const PrepopulatedEngine* const engines_FI[] = {
|
||||
@@ -341,7 +343,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_fi,
|
||||
&duckduckgo,
|
||||
@@ -317,7 +317,7 @@ const PrepopulatedEngine* const engines_FI[] = {
|
||||
@@ -318,7 +318,7 @@ const PrepopulatedEngine* const engines_FI[] = {
|
||||
|
||||
// Faroe Islands
|
||||
const PrepopulatedEngine* const engines_FO[] = {
|
||||
@@ -350,7 +352,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_dk,
|
||||
&duckduckgo,
|
||||
@@ -326,7 +326,7 @@ const PrepopulatedEngine* const engines_FO[] = {
|
||||
@@ -327,7 +327,7 @@ const PrepopulatedEngine* const engines_FO[] = {
|
||||
|
||||
// France
|
||||
const PrepopulatedEngine* const engines_FR[] = {
|
||||
@@ -359,7 +361,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_fr,
|
||||
&qwant,
|
||||
@@ -335,7 +335,7 @@ const PrepopulatedEngine* const engines_FR[] = {
|
||||
@@ -336,7 +336,7 @@ const PrepopulatedEngine* const engines_FR[] = {
|
||||
|
||||
// United Kingdom
|
||||
const PrepopulatedEngine* const engines_GB[] = {
|
||||
@@ -368,7 +370,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_uk,
|
||||
&duckduckgo,
|
||||
@@ -344,7 +344,7 @@ const PrepopulatedEngine* const engines_GB[] = {
|
||||
@@ -345,7 +345,7 @@ const PrepopulatedEngine* const engines_GB[] = {
|
||||
|
||||
// Greece
|
||||
const PrepopulatedEngine* const engines_GR[] = {
|
||||
@@ -377,7 +379,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -353,7 +353,7 @@ const PrepopulatedEngine* const engines_GR[] = {
|
||||
@@ -354,7 +354,7 @@ const PrepopulatedEngine* const engines_GR[] = {
|
||||
|
||||
// Guatemala
|
||||
const PrepopulatedEngine* const engines_GT[] = {
|
||||
@@ -386,7 +388,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -362,7 +362,7 @@ const PrepopulatedEngine* const engines_GT[] = {
|
||||
@@ -363,7 +363,7 @@ const PrepopulatedEngine* const engines_GT[] = {
|
||||
|
||||
// Hong Kong
|
||||
const PrepopulatedEngine* const engines_HK[] = {
|
||||
@@ -395,7 +397,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo_hk,
|
||||
&bing,
|
||||
&baidu,
|
||||
@@ -371,7 +371,7 @@ const PrepopulatedEngine* const engines_HK[] = {
|
||||
@@ -372,7 +372,7 @@ const PrepopulatedEngine* const engines_HK[] = {
|
||||
|
||||
// Honduras
|
||||
const PrepopulatedEngine* const engines_HN[] = {
|
||||
@@ -404,7 +406,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -380,7 +380,7 @@ const PrepopulatedEngine* const engines_HN[] = {
|
||||
@@ -381,7 +381,7 @@ const PrepopulatedEngine* const engines_HN[] = {
|
||||
|
||||
// Croatia
|
||||
const PrepopulatedEngine* const engines_HR[] = {
|
||||
@@ -413,7 +415,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -389,7 +389,7 @@ const PrepopulatedEngine* const engines_HR[] = {
|
||||
@@ -390,7 +390,7 @@ const PrepopulatedEngine* const engines_HR[] = {
|
||||
|
||||
// Hungary
|
||||
const PrepopulatedEngine* const engines_HU[] = {
|
||||
@@ -422,7 +424,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -398,7 +398,7 @@ const PrepopulatedEngine* const engines_HU[] = {
|
||||
@@ -399,7 +399,7 @@ const PrepopulatedEngine* const engines_HU[] = {
|
||||
|
||||
// Indonesia
|
||||
const PrepopulatedEngine* const engines_ID[] = {
|
||||
@@ -431,7 +433,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo_id,
|
||||
&bing,
|
||||
&yandex_com,
|
||||
@@ -407,7 +407,7 @@ const PrepopulatedEngine* const engines_ID[] = {
|
||||
@@ -408,7 +408,7 @@ const PrepopulatedEngine* const engines_ID[] = {
|
||||
|
||||
// Ireland
|
||||
const PrepopulatedEngine* const engines_IE[] = {
|
||||
@@ -440,7 +442,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_uk,
|
||||
&duckduckgo,
|
||||
@@ -416,7 +416,7 @@ const PrepopulatedEngine* const engines_IE[] = {
|
||||
@@ -417,7 +417,7 @@ const PrepopulatedEngine* const engines_IE[] = {
|
||||
|
||||
// Israel
|
||||
const PrepopulatedEngine* const engines_IL[] = {
|
||||
@@ -449,7 +451,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yandex_ru,
|
||||
&yahoo,
|
||||
@@ -425,7 +425,7 @@ const PrepopulatedEngine* const engines_IL[] = {
|
||||
@@ -426,7 +426,7 @@ const PrepopulatedEngine* const engines_IL[] = {
|
||||
|
||||
// India
|
||||
const PrepopulatedEngine* const engines_IN[] = {
|
||||
@@ -458,7 +460,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_in,
|
||||
&duckduckgo,
|
||||
@@ -434,7 +434,7 @@ const PrepopulatedEngine* const engines_IN[] = {
|
||||
@@ -435,7 +435,7 @@ const PrepopulatedEngine* const engines_IN[] = {
|
||||
|
||||
// Iraq
|
||||
const PrepopulatedEngine* const engines_IQ[] = {
|
||||
@@ -467,7 +469,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_tr,
|
||||
@@ -443,7 +443,7 @@ const PrepopulatedEngine* const engines_IQ[] = {
|
||||
@@ -444,7 +444,7 @@ const PrepopulatedEngine* const engines_IQ[] = {
|
||||
|
||||
// Iran
|
||||
const PrepopulatedEngine* const engines_IR[] = {
|
||||
@@ -476,7 +478,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&ask,
|
||||
@@ -452,7 +452,7 @@ const PrepopulatedEngine* const engines_IR[] = {
|
||||
@@ -453,7 +453,7 @@ const PrepopulatedEngine* const engines_IR[] = {
|
||||
|
||||
// Iceland
|
||||
const PrepopulatedEngine* const engines_IS[] = {
|
||||
@@ -485,7 +487,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
&yahoo,
|
||||
@@ -461,7 +461,7 @@ const PrepopulatedEngine* const engines_IS[] = {
|
||||
@@ -462,7 +462,7 @@ const PrepopulatedEngine* const engines_IS[] = {
|
||||
|
||||
// Italy
|
||||
const PrepopulatedEngine* const engines_IT[] = {
|
||||
@@ -494,7 +496,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -470,7 +470,7 @@ const PrepopulatedEngine* const engines_IT[] = {
|
||||
@@ -471,7 +471,7 @@ const PrepopulatedEngine* const engines_IT[] = {
|
||||
|
||||
// Jamaica
|
||||
const PrepopulatedEngine* const engines_JM[] = {
|
||||
@@ -503,7 +505,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -479,7 +479,7 @@ const PrepopulatedEngine* const engines_JM[] = {
|
||||
@@ -480,7 +480,7 @@ const PrepopulatedEngine* const engines_JM[] = {
|
||||
|
||||
// Jordan
|
||||
const PrepopulatedEngine* const engines_JO[] = {
|
||||
@@ -512,7 +514,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -488,7 +488,7 @@ const PrepopulatedEngine* const engines_JO[] = {
|
||||
@@ -489,7 +489,7 @@ const PrepopulatedEngine* const engines_JO[] = {
|
||||
|
||||
// Japan
|
||||
const PrepopulatedEngine* const engines_JP[] = {
|
||||
@@ -521,7 +523,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo_jp,
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
@@ -497,7 +497,7 @@ const PrepopulatedEngine* const engines_JP[] = {
|
||||
@@ -498,7 +498,7 @@ const PrepopulatedEngine* const engines_JP[] = {
|
||||
|
||||
// Kenya
|
||||
const PrepopulatedEngine* const engines_KE[] = {
|
||||
@@ -530,7 +532,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -506,7 +506,7 @@ const PrepopulatedEngine* const engines_KE[] = {
|
||||
@@ -507,7 +507,7 @@ const PrepopulatedEngine* const engines_KE[] = {
|
||||
|
||||
// South Korea
|
||||
const PrepopulatedEngine* const engines_KR[] = {
|
||||
@@ -539,7 +541,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&naver,
|
||||
&daum,
|
||||
&bing,
|
||||
@@ -515,7 +515,7 @@ const PrepopulatedEngine* const engines_KR[] = {
|
||||
@@ -516,7 +516,7 @@ const PrepopulatedEngine* const engines_KR[] = {
|
||||
|
||||
// Kuwait
|
||||
const PrepopulatedEngine* const engines_KW[] = {
|
||||
@@ -548,7 +550,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -524,7 +524,7 @@ const PrepopulatedEngine* const engines_KW[] = {
|
||||
@@ -525,7 +525,7 @@ const PrepopulatedEngine* const engines_KW[] = {
|
||||
|
||||
// Kazakhstan
|
||||
const PrepopulatedEngine* const engines_KZ[] = {
|
||||
@@ -557,7 +559,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_kz,
|
||||
&mail_ru,
|
||||
&bing,
|
||||
@@ -533,7 +533,7 @@ const PrepopulatedEngine* const engines_KZ[] = {
|
||||
@@ -534,7 +534,7 @@ const PrepopulatedEngine* const engines_KZ[] = {
|
||||
|
||||
// Lebanon
|
||||
const PrepopulatedEngine* const engines_LB[] = {
|
||||
@@ -566,7 +568,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -542,7 +542,7 @@ const PrepopulatedEngine* const engines_LB[] = {
|
||||
@@ -543,7 +543,7 @@ const PrepopulatedEngine* const engines_LB[] = {
|
||||
|
||||
// Liechtenstein
|
||||
const PrepopulatedEngine* const engines_LI[] = {
|
||||
@@ -575,7 +577,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
&yahoo,
|
||||
@@ -551,7 +551,7 @@ const PrepopulatedEngine* const engines_LI[] = {
|
||||
@@ -552,7 +552,7 @@ const PrepopulatedEngine* const engines_LI[] = {
|
||||
|
||||
// Lithuania
|
||||
const PrepopulatedEngine* const engines_LT[] = {
|
||||
@@ -584,7 +586,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -560,7 +560,7 @@ const PrepopulatedEngine* const engines_LT[] = {
|
||||
@@ -561,7 +561,7 @@ const PrepopulatedEngine* const engines_LT[] = {
|
||||
|
||||
// Luxembourg
|
||||
const PrepopulatedEngine* const engines_LU[] = {
|
||||
@@ -593,7 +595,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
&yahoo,
|
||||
@@ -569,7 +569,7 @@ const PrepopulatedEngine* const engines_LU[] = {
|
||||
@@ -570,7 +570,7 @@ const PrepopulatedEngine* const engines_LU[] = {
|
||||
|
||||
// Latvia
|
||||
const PrepopulatedEngine* const engines_LV[] = {
|
||||
@@ -602,7 +604,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yandex_ru,
|
||||
&yahoo,
|
||||
@@ -578,7 +578,7 @@ const PrepopulatedEngine* const engines_LV[] = {
|
||||
@@ -579,7 +579,7 @@ const PrepopulatedEngine* const engines_LV[] = {
|
||||
|
||||
// Libya
|
||||
const PrepopulatedEngine* const engines_LY[] = {
|
||||
@@ -611,7 +613,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -587,7 +587,7 @@ const PrepopulatedEngine* const engines_LY[] = {
|
||||
@@ -588,7 +588,7 @@ const PrepopulatedEngine* const engines_LY[] = {
|
||||
|
||||
// Morocco
|
||||
const PrepopulatedEngine* const engines_MA[] = {
|
||||
@@ -620,7 +622,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_fr,
|
||||
&yandex_com,
|
||||
@@ -596,7 +596,7 @@ const PrepopulatedEngine* const engines_MA[] = {
|
||||
@@ -597,7 +597,7 @@ const PrepopulatedEngine* const engines_MA[] = {
|
||||
|
||||
// Monaco
|
||||
const PrepopulatedEngine* const engines_MC[] = {
|
||||
@@ -629,7 +631,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
&yahoo_fr,
|
||||
@@ -605,7 +605,7 @@ const PrepopulatedEngine* const engines_MC[] = {
|
||||
@@ -606,7 +606,7 @@ const PrepopulatedEngine* const engines_MC[] = {
|
||||
|
||||
// Moldova
|
||||
const PrepopulatedEngine* const engines_MD[] = {
|
||||
@@ -638,7 +640,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
&bing,
|
||||
&mail_ru,
|
||||
@@ -614,7 +614,7 @@ const PrepopulatedEngine* const engines_MD[] = {
|
||||
@@ -615,7 +615,7 @@ const PrepopulatedEngine* const engines_MD[] = {
|
||||
|
||||
// Montenegro
|
||||
const PrepopulatedEngine* const engines_ME[] = {
|
||||
@@ -647,7 +649,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_ru,
|
||||
@@ -623,7 +623,7 @@ const PrepopulatedEngine* const engines_ME[] = {
|
||||
@@ -624,7 +624,7 @@ const PrepopulatedEngine* const engines_ME[] = {
|
||||
|
||||
// Macedonia
|
||||
const PrepopulatedEngine* const engines_MK[] = {
|
||||
@@ -656,7 +658,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -632,7 +632,7 @@ const PrepopulatedEngine* const engines_MK[] = {
|
||||
@@ -633,7 +633,7 @@ const PrepopulatedEngine* const engines_MK[] = {
|
||||
|
||||
// Mexico
|
||||
const PrepopulatedEngine* const engines_MX[] = {
|
||||
@@ -665,7 +667,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_mx,
|
||||
&duckduckgo,
|
||||
@@ -641,7 +641,7 @@ const PrepopulatedEngine* const engines_MX[] = {
|
||||
@@ -642,7 +642,7 @@ const PrepopulatedEngine* const engines_MX[] = {
|
||||
|
||||
// Malaysia
|
||||
const PrepopulatedEngine* const engines_MY[] = {
|
||||
@@ -674,7 +676,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_my,
|
||||
&duckduckgo,
|
||||
@@ -650,7 +650,7 @@ const PrepopulatedEngine* const engines_MY[] = {
|
||||
@@ -651,7 +651,7 @@ const PrepopulatedEngine* const engines_MY[] = {
|
||||
|
||||
// Nicaragua
|
||||
const PrepopulatedEngine* const engines_NI[] = {
|
||||
@@ -683,7 +685,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -659,7 +659,7 @@ const PrepopulatedEngine* const engines_NI[] = {
|
||||
@@ -660,7 +660,7 @@ const PrepopulatedEngine* const engines_NI[] = {
|
||||
|
||||
// Netherlands
|
||||
const PrepopulatedEngine* const engines_NL[] = {
|
||||
@@ -692,7 +694,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_nl,
|
||||
&duckduckgo,
|
||||
@@ -668,7 +668,7 @@ const PrepopulatedEngine* const engines_NL[] = {
|
||||
@@ -669,7 +669,7 @@ const PrepopulatedEngine* const engines_NL[] = {
|
||||
|
||||
// Norway
|
||||
const PrepopulatedEngine* const engines_NO[] = {
|
||||
@@ -701,7 +703,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -677,7 +677,7 @@ const PrepopulatedEngine* const engines_NO[] = {
|
||||
@@ -678,7 +678,7 @@ const PrepopulatedEngine* const engines_NO[] = {
|
||||
|
||||
// New Zealand
|
||||
const PrepopulatedEngine* const engines_NZ[] = {
|
||||
@@ -710,7 +712,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_nz,
|
||||
&duckduckgo,
|
||||
@@ -686,7 +686,7 @@ const PrepopulatedEngine* const engines_NZ[] = {
|
||||
@@ -687,7 +687,7 @@ const PrepopulatedEngine* const engines_NZ[] = {
|
||||
|
||||
// Oman
|
||||
const PrepopulatedEngine* const engines_OM[] = {
|
||||
@@ -719,7 +721,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -695,7 +695,7 @@ const PrepopulatedEngine* const engines_OM[] = {
|
||||
@@ -696,7 +696,7 @@ const PrepopulatedEngine* const engines_OM[] = {
|
||||
|
||||
// Panama
|
||||
const PrepopulatedEngine* const engines_PA[] = {
|
||||
@@ -728,7 +730,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
&duckduckgo,
|
||||
@@ -704,7 +704,7 @@ const PrepopulatedEngine* const engines_PA[] = {
|
||||
@@ -705,7 +705,7 @@ const PrepopulatedEngine* const engines_PA[] = {
|
||||
|
||||
// Peru
|
||||
const PrepopulatedEngine* const engines_PE[] = {
|
||||
@@ -737,7 +739,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_pe,
|
||||
&ecosia,
|
||||
@@ -713,7 +713,7 @@ const PrepopulatedEngine* const engines_PE[] = {
|
||||
@@ -714,7 +714,7 @@ const PrepopulatedEngine* const engines_PE[] = {
|
||||
|
||||
// Philippines
|
||||
const PrepopulatedEngine* const engines_PH[] = {
|
||||
@@ -746,7 +748,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&ecosia,
|
||||
@@ -722,7 +722,7 @@ const PrepopulatedEngine* const engines_PH[] = {
|
||||
@@ -723,7 +723,7 @@ const PrepopulatedEngine* const engines_PH[] = {
|
||||
|
||||
// Pakistan
|
||||
const PrepopulatedEngine* const engines_PK[] = {
|
||||
@@ -755,7 +757,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -731,7 +731,7 @@ const PrepopulatedEngine* const engines_PK[] = {
|
||||
@@ -732,7 +732,7 @@ const PrepopulatedEngine* const engines_PK[] = {
|
||||
|
||||
// Poland
|
||||
const PrepopulatedEngine* const engines_PL[] = {
|
||||
@@ -764,7 +766,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -740,7 +740,7 @@ const PrepopulatedEngine* const engines_PL[] = {
|
||||
@@ -741,7 +741,7 @@ const PrepopulatedEngine* const engines_PL[] = {
|
||||
|
||||
// Puerto Rico
|
||||
const PrepopulatedEngine* const engines_PR[] = {
|
||||
@@ -773,7 +775,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -749,7 +749,7 @@ const PrepopulatedEngine* const engines_PR[] = {
|
||||
@@ -750,7 +750,7 @@ const PrepopulatedEngine* const engines_PR[] = {
|
||||
|
||||
// Portugal
|
||||
const PrepopulatedEngine* const engines_PT[] = {
|
||||
@@ -782,7 +784,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -758,7 +758,7 @@ const PrepopulatedEngine* const engines_PT[] = {
|
||||
@@ -759,7 +759,7 @@ const PrepopulatedEngine* const engines_PT[] = {
|
||||
|
||||
// Paraguay
|
||||
const PrepopulatedEngine* const engines_PY[] = {
|
||||
@@ -791,7 +793,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
&duckduckgo,
|
||||
@@ -767,7 +767,7 @@ const PrepopulatedEngine* const engines_PY[] = {
|
||||
@@ -768,7 +768,7 @@ const PrepopulatedEngine* const engines_PY[] = {
|
||||
|
||||
// Qatar
|
||||
const PrepopulatedEngine* const engines_QA[] = {
|
||||
@@ -800,7 +802,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -776,7 +776,7 @@ const PrepopulatedEngine* const engines_QA[] = {
|
||||
@@ -777,7 +777,7 @@ const PrepopulatedEngine* const engines_QA[] = {
|
||||
|
||||
// Romania
|
||||
const PrepopulatedEngine* const engines_RO[] = {
|
||||
@@ -809,7 +811,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -785,7 +785,7 @@ const PrepopulatedEngine* const engines_RO[] = {
|
||||
@@ -786,7 +786,7 @@ const PrepopulatedEngine* const engines_RO[] = {
|
||||
|
||||
// Serbia
|
||||
const PrepopulatedEngine* const engines_RS[] = {
|
||||
@@ -818,7 +820,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -794,7 +794,7 @@ const PrepopulatedEngine* const engines_RS[] = {
|
||||
@@ -795,7 +795,7 @@ const PrepopulatedEngine* const engines_RS[] = {
|
||||
|
||||
// Russia
|
||||
const PrepopulatedEngine* const engines_RU[] = {
|
||||
@@ -827,7 +829,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ru,
|
||||
&mail_ru,
|
||||
&bing,
|
||||
@@ -803,7 +803,7 @@ const PrepopulatedEngine* const engines_RU[] = {
|
||||
@@ -804,7 +804,7 @@ const PrepopulatedEngine* const engines_RU[] = {
|
||||
|
||||
// Rwanda
|
||||
const PrepopulatedEngine* const engines_RW[] = {
|
||||
@@ -836,7 +838,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -812,7 +812,7 @@ const PrepopulatedEngine* const engines_RW[] = {
|
||||
@@ -813,7 +813,7 @@ const PrepopulatedEngine* const engines_RW[] = {
|
||||
|
||||
// Saudi Arabia
|
||||
const PrepopulatedEngine* const engines_SA[] = {
|
||||
@@ -845,7 +847,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -821,7 +821,7 @@ const PrepopulatedEngine* const engines_SA[] = {
|
||||
@@ -822,7 +822,7 @@ const PrepopulatedEngine* const engines_SA[] = {
|
||||
|
||||
// Sweden
|
||||
const PrepopulatedEngine* const engines_SE[] = {
|
||||
@@ -854,7 +856,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_se,
|
||||
&duckduckgo,
|
||||
@@ -830,7 +830,7 @@ const PrepopulatedEngine* const engines_SE[] = {
|
||||
@@ -831,7 +831,7 @@ const PrepopulatedEngine* const engines_SE[] = {
|
||||
|
||||
// Singapore
|
||||
const PrepopulatedEngine* const engines_SG[] = {
|
||||
@@ -863,7 +865,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_sg,
|
||||
&duckduckgo,
|
||||
@@ -839,7 +839,7 @@ const PrepopulatedEngine* const engines_SG[] = {
|
||||
@@ -840,7 +840,7 @@ const PrepopulatedEngine* const engines_SG[] = {
|
||||
|
||||
// Slovenia
|
||||
const PrepopulatedEngine* const engines_SI[] = {
|
||||
@@ -872,7 +874,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
&yahoo,
|
||||
@@ -848,7 +848,7 @@ const PrepopulatedEngine* const engines_SI[] = {
|
||||
@@ -849,7 +849,7 @@ const PrepopulatedEngine* const engines_SI[] = {
|
||||
|
||||
// Slovakia
|
||||
const PrepopulatedEngine* const engines_SK[] = {
|
||||
@@ -881,7 +883,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
&yahoo,
|
||||
@@ -857,7 +857,7 @@ const PrepopulatedEngine* const engines_SK[] = {
|
||||
@@ -858,7 +858,7 @@ const PrepopulatedEngine* const engines_SK[] = {
|
||||
|
||||
// El Salvador
|
||||
const PrepopulatedEngine* const engines_SV[] = {
|
||||
@@ -890,7 +892,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
&duckduckgo,
|
||||
@@ -866,7 +866,7 @@ const PrepopulatedEngine* const engines_SV[] = {
|
||||
@@ -867,7 +867,7 @@ const PrepopulatedEngine* const engines_SV[] = {
|
||||
|
||||
// Syria
|
||||
const PrepopulatedEngine* const engines_SY[] = {
|
||||
@@ -899,7 +901,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -875,7 +875,7 @@ const PrepopulatedEngine* const engines_SY[] = {
|
||||
@@ -876,7 +876,7 @@ const PrepopulatedEngine* const engines_SY[] = {
|
||||
|
||||
// Thailand
|
||||
const PrepopulatedEngine* const engines_TH[] = {
|
||||
@@ -908,7 +910,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_th,
|
||||
&yandex_ru,
|
||||
@@ -884,7 +884,7 @@ const PrepopulatedEngine* const engines_TH[] = {
|
||||
@@ -885,7 +885,7 @@ const PrepopulatedEngine* const engines_TH[] = {
|
||||
|
||||
// Tunisia
|
||||
const PrepopulatedEngine* const engines_TN[] = {
|
||||
@@ -917,7 +919,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_fr,
|
||||
&duckduckgo,
|
||||
@@ -893,7 +893,7 @@ const PrepopulatedEngine* const engines_TN[] = {
|
||||
@@ -894,7 +894,7 @@ const PrepopulatedEngine* const engines_TN[] = {
|
||||
|
||||
// Turkey
|
||||
const PrepopulatedEngine* const engines_TR[] = {
|
||||
@@ -926,7 +928,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_tr,
|
||||
&yahoo_tr,
|
||||
&bing,
|
||||
@@ -902,7 +902,7 @@ const PrepopulatedEngine* const engines_TR[] = {
|
||||
@@ -903,7 +903,7 @@ const PrepopulatedEngine* const engines_TR[] = {
|
||||
|
||||
// Trinidad and Tobago
|
||||
const PrepopulatedEngine* const engines_TT[] = {
|
||||
@@ -935,7 +937,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -911,7 +911,7 @@ const PrepopulatedEngine* const engines_TT[] = {
|
||||
@@ -912,7 +912,7 @@ const PrepopulatedEngine* const engines_TT[] = {
|
||||
|
||||
// Taiwan
|
||||
const PrepopulatedEngine* const engines_TW[] = {
|
||||
@@ -944,7 +946,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yahoo_tw,
|
||||
&bing,
|
||||
&baidu,
|
||||
@@ -920,7 +920,7 @@ const PrepopulatedEngine* const engines_TW[] = {
|
||||
@@ -921,7 +921,7 @@ const PrepopulatedEngine* const engines_TW[] = {
|
||||
|
||||
// Tanzania
|
||||
const PrepopulatedEngine* const engines_TZ[] = {
|
||||
@@ -953,7 +955,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -929,7 +929,7 @@ const PrepopulatedEngine* const engines_TZ[] = {
|
||||
@@ -930,7 +930,7 @@ const PrepopulatedEngine* const engines_TZ[] = {
|
||||
|
||||
// Ukraine
|
||||
const PrepopulatedEngine* const engines_UA[] = {
|
||||
@@ -962,7 +964,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&yandex_ua,
|
||||
&bing,
|
||||
&duckduckgo,
|
||||
@@ -938,7 +938,7 @@ const PrepopulatedEngine* const engines_UA[] = {
|
||||
@@ -939,7 +939,7 @@ const PrepopulatedEngine* const engines_UA[] = {
|
||||
|
||||
// United States
|
||||
const PrepopulatedEngine* const engines_US[] = {
|
||||
@@ -971,7 +973,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -947,7 +947,7 @@ const PrepopulatedEngine* const engines_US[] = {
|
||||
@@ -948,7 +948,7 @@ const PrepopulatedEngine* const engines_US[] = {
|
||||
|
||||
// Uruguay
|
||||
const PrepopulatedEngine* const engines_UY[] = {
|
||||
@@ -980,7 +982,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
&duckduckgo,
|
||||
@@ -956,7 +956,7 @@ const PrepopulatedEngine* const engines_UY[] = {
|
||||
@@ -957,7 +957,7 @@ const PrepopulatedEngine* const engines_UY[] = {
|
||||
|
||||
// Venezuela
|
||||
const PrepopulatedEngine* const engines_VE[] = {
|
||||
@@ -989,7 +991,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo_es,
|
||||
&duckduckgo,
|
||||
@@ -965,7 +965,7 @@ const PrepopulatedEngine* const engines_VE[] = {
|
||||
@@ -966,7 +966,7 @@ const PrepopulatedEngine* const engines_VE[] = {
|
||||
|
||||
// Vietnam
|
||||
const PrepopulatedEngine* const engines_VN[] = {
|
||||
@@ -998,7 +1000,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&coccoc,
|
||||
&yahoo,
|
||||
&bing,
|
||||
@@ -974,7 +974,7 @@ const PrepopulatedEngine* const engines_VN[] = {
|
||||
@@ -975,7 +975,7 @@ const PrepopulatedEngine* const engines_VN[] = {
|
||||
|
||||
// Yemen
|
||||
const PrepopulatedEngine* const engines_YE[] = {
|
||||
@@ -1007,7 +1009,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&yandex_com,
|
||||
@@ -983,7 +983,7 @@ const PrepopulatedEngine* const engines_YE[] = {
|
||||
@@ -984,7 +984,7 @@ const PrepopulatedEngine* const engines_YE[] = {
|
||||
|
||||
// South Africa
|
||||
const PrepopulatedEngine* const engines_ZA[] = {
|
||||
@@ -1016,7 +1018,7 @@ diff --git a/components/search_engines/template_url_prepopulate_data.cc b/compon
|
||||
&bing,
|
||||
&yahoo,
|
||||
&duckduckgo,
|
||||
@@ -992,7 +992,7 @@ const PrepopulatedEngine* const engines_ZA[] = {
|
||||
@@ -993,7 +993,7 @@ const PrepopulatedEngine* const engines_ZA[] = {
|
||||
|
||||
// Zimbabwe
|
||||
const PrepopulatedEngine* const engines_ZW[] = {
|
||||
|
||||
@@ -2,19 +2,21 @@ From: uazo <uazo@users.noreply.github.com>
|
||||
Date: Mon, 26 Apr 2021 15:04:11 +0000
|
||||
Subject: Add IsCleartextPermitted flag
|
||||
|
||||
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/browser/about_flags.cc | 4 ++++
|
||||
chrome/browser/flag_descriptions.cc | 4 ++++
|
||||
chrome/browser/flag_descriptions.h | 3 +++
|
||||
net/base/features.cc | 3 +++
|
||||
net/base/features.cc | 4 ++++
|
||||
net/base/features.h | 2 ++
|
||||
net/url_request/url_request_http_job.cc | 4 ++++
|
||||
6 files changed, 20 insertions(+)
|
||||
6 files changed, 21 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
|
||||
@@ -8201,6 +8201,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
@@ -9171,6 +9171,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
flag_descriptions::kRequestDesktopSiteExceptionsName,
|
||||
flag_descriptions::kRequestDesktopSiteExceptionsDescription, kOsAndroid,
|
||||
FEATURE_VALUE_TYPE(features::kRequestDesktopSiteExceptions)},
|
||||
@@ -28,7 +30,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
|
||||
@@ -1477,6 +1477,10 @@ const char kHttpsOnlyModeDescription[] =
|
||||
@@ -1651,6 +1651,10 @@ const char kHttpsOnlyModeDescription[] =
|
||||
"Adds a setting under chrome://settings/security to opt-in to HTTPS-First "
|
||||
"Mode.";
|
||||
|
||||
@@ -42,7 +44,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
|
||||
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
|
||||
--- a/chrome/browser/flag_descriptions.h
|
||||
+++ b/chrome/browser/flag_descriptions.h
|
||||
@@ -834,6 +834,9 @@ extern const char kHideShelfControlsInTabletModeDescription[];
|
||||
@@ -935,6 +935,9 @@ extern const char kHideShelfControlsInTabletModeDescription[];
|
||||
extern const char kHttpsOnlyModeName[];
|
||||
extern const char kHttpsOnlyModeDescription[];
|
||||
|
||||
@@ -55,32 +57,33 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
|
||||
diff --git a/net/base/features.cc b/net/base/features.cc
|
||||
--- a/net/base/features.cc
|
||||
+++ b/net/base/features.cc
|
||||
@@ -115,6 +115,9 @@ const base::Feature kEnableTLS13EarlyData{"EnableTLS13EarlyData",
|
||||
const base::Feature kEncryptedClientHello{"EncryptedClientHello",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
@@ -113,6 +113,10 @@ BASE_FEATURE(kPartitionNelAndReportingByNetworkIsolationKey,
|
||||
"PartitionNelAndReportingByNetworkIsolationKey", // must be enabled
|
||||
base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
+const base::Feature kIsCleartextPermitted{"IsCleartextPermitted",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kIsCleartextPermitted,
|
||||
+ "IsCleartextPermitted",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+
|
||||
const base::Feature kNetworkQualityEstimator{"NetworkQualityEstimator",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
|
||||
BASE_FEATURE(kEnableDoubleKeyNetworkAnonymizationKey,
|
||||
"EnableDoubleKeyNetworkAnonymizationKey",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
diff --git a/net/base/features.h b/net/base/features.h
|
||||
--- a/net/base/features.h
|
||||
+++ b/net/base/features.h
|
||||
@@ -37,6 +37,8 @@ NET_EXPORT extern const base::Feature kCapReferrerToOriginOnCrossOrigin;
|
||||
// Enables the ParsedCookie domain attribute to be the empty string.
|
||||
NET_EXPORT extern const base::Feature kCookieDomainAttributeEmptyString;
|
||||
@@ -29,6 +29,8 @@ NET_EXPORT BASE_DECLARE_FEATURE(kAvoidH2Reprioritization);
|
||||
// origin requests are restricted to contain at most the source origin.
|
||||
NET_EXPORT BASE_DECLARE_FEATURE(kCapReferrerToOriginOnCrossOrigin);
|
||||
|
||||
+NET_EXPORT extern const base::Feature kIsCleartextPermitted;
|
||||
+NET_EXPORT BASE_DECLARE_FEATURE(kIsCleartextPermitted);
|
||||
+
|
||||
// Support for altering the parameters used for DNS transaction timeout. See
|
||||
// ResolveContext::SecureTransactionTimeout().
|
||||
NET_EXPORT extern const base::Feature kDnsTransactionDynamicTimeouts;
|
||||
NET_EXPORT BASE_DECLARE_FEATURE(kDnsTransactionDynamicTimeouts);
|
||||
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
|
||||
@@ -210,6 +210,10 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
|
||||
@@ -212,6 +212,10 @@ std::unique_ptr<URLRequestJob> URLRequestHttpJob::Create(URLRequest* request) {
|
||||
}
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
|
||||
@@ -3,11 +3,17 @@ Date: Thu, 29 Mar 2018 00:43:32 +0200
|
||||
Subject: Add a proxy configuration page
|
||||
|
||||
Accessible from proxy settings and chrome://proxy
|
||||
Allows to use a PAC script URL, automatic configuration and explicit proxy
|
||||
settings.
|
||||
Allows to use a PAC script URL, automatic configuration and explicit proxy settings.
|
||||
Offer auto-complete for the proxy page URL.
|
||||
Store proxy settings in LocalState instead of Profile, so that proxy is used
|
||||
for SimpleURLLoaders as well.
|
||||
Store proxy settings in LocalState instead of Profile, so that proxy is used for SimpleURLLoaders as well;
|
||||
this implementation is the same as the one in ChromeOS which gets proxy information from the LocalState
|
||||
for the system network context; this is strictly not correct on Android because the network context is
|
||||
never connected to any user profile and only gets proxy information from the system.
|
||||
Existing settings on Profile are migrated to LocalState on startup.
|
||||
|
||||
Credits to @uazo for the LocalState integration.
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/android/java/res/values/values.xml | 3 +
|
||||
.../java/res/xml/privacy_preferences.xml | 4 +
|
||||
@@ -19,8 +25,8 @@ for SimpleURLLoaders as well.
|
||||
chrome/browser/prefs/browser_prefs.cc | 4 +
|
||||
.../prefs/chrome_command_line_pref_store.cc | 2 +-
|
||||
chrome/browser/resources/proxy_config.css | 61 +++
|
||||
chrome/browser/resources/proxy_config.html | 79 ++++
|
||||
chrome/browser/resources/proxy_config.js | 266 +++++++++++
|
||||
chrome/browser/resources/proxy_config.html | 78 ++++
|
||||
chrome/browser/resources/proxy_config.js | 267 +++++++++++
|
||||
chrome/browser/ui/BUILD.gn | 2 +
|
||||
.../webui/chrome_web_ui_controller_factory.cc | 3 +
|
||||
chrome/browser/ui/webui/proxy_config_ui.cc | 418 ++++++++++++++++++
|
||||
@@ -43,7 +49,7 @@ for SimpleURLLoaders as well.
|
||||
diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res/values/values.xml
|
||||
--- a/chrome/android/java/res/values/values.xml
|
||||
+++ b/chrome/android/java/res/values/values.xml
|
||||
@@ -25,6 +25,9 @@
|
||||
@@ -27,6 +27,9 @@ found in the LICENSE file.
|
||||
<!-- Compositor Tab Title Text -->
|
||||
<bool name="compositor_tab_title_fake_bold_text">true</bool>
|
||||
|
||||
@@ -56,7 +62,7 @@ diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res
|
||||
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
--- a/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
@@ -6,6 +6,10 @@
|
||||
@@ -8,6 +8,10 @@ found in the LICENSE file.
|
||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
@@ -70,18 +76,18 @@ 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
|
||||
@@ -58,6 +58,7 @@ public class PrivacySettings
|
||||
@@ -59,6 +59,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";
|
||||
+ private static final String PREF_PROXY_OPTIONS = "proxy";
|
||||
private static final String PREF_PRIVACY_REVIEW = "privacy_review";
|
||||
private static final String PREF_PRIVACY_GUIDE = "privacy_guide";
|
||||
private static final String PREF_INCOGNITO_LOCK = "incognito_lock";
|
||||
private static final String PREF_PHONE_AS_A_SECURITY_KEY = "phone_as_a_security_key";
|
||||
|
||||
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
|
||||
@@ -275,6 +275,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
|
||||
@@ -284,6 +284,8 @@ ChromeAutocompleteProviderClient::GetBuiltinsToProvideAsUserTypes() {
|
||||
builtins_to_provide.push_back(
|
||||
base::ASCIIToUTF16(chrome::kChromeUISettingsURL));
|
||||
#endif
|
||||
@@ -93,8 +99,8 @@ 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
|
||||
@@ -74,6 +74,12 @@
|
||||
<include name="IDR_HANGOUT_SERVICES_MANIFEST" file="resources\hangout_services\manifest.json" type="BINDATA" />
|
||||
@@ -81,6 +81,12 @@
|
||||
<include name="IDR_DESK_API_MANIFEST" file="resources\chromeos\desk_api\manifest.json" type="BINDATA" />
|
||||
</if>
|
||||
|
||||
+ <!-- Bromite Proxy Configuration UI -->
|
||||
@@ -117,29 +123,29 @@ diff --git a/chrome/browser/net/proxy_service_factory.cc b/chrome/browser/net/pr
|
||||
#include "base/threading/thread_task_runner_handle.h"
|
||||
#include "build/build_config.h"
|
||||
#include "build/chromeos_buildflags.h"
|
||||
@@ -14,6 +15,9 @@
|
||||
@@ -13,6 +14,9 @@
|
||||
#include "content/public/browser/browser_task_traits.h"
|
||||
#include "content/public/browser/browser_thread.h"
|
||||
#include "net/proxy_resolution/configured_proxy_resolution_service.h"
|
||||
#include "net/proxy_resolution/proxy_config_service.h"
|
||||
+#include "components/proxy_config/proxy_config_pref_names.h"
|
||||
+#include "components/prefs/pref_service.h"
|
||||
+#include "components/prefs/pref_registry_simple.h"
|
||||
|
||||
#if BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
#include "chromeos/network/proxy/proxy_config_service_impl.h"
|
||||
@@ -72,7 +76,20 @@ ProxyServiceFactory::CreatePrefProxyConfigTrackerOfProfile(
|
||||
return std::make_unique<chromeos::ProxyConfigServiceImpl>(
|
||||
#include "chromeos/ash/components/network/proxy/proxy_config_service_impl.h"
|
||||
@@ -70,7 +74,20 @@ ProxyServiceFactory::CreatePrefProxyConfigTrackerOfProfile(
|
||||
return std::make_unique<ash::ProxyConfigServiceImpl>(
|
||||
profile_prefs, local_state_prefs, nullptr);
|
||||
#else
|
||||
- return std::make_unique<PrefProxyConfigTrackerImpl>(profile_prefs, nullptr);
|
||||
+ // Migrate from profile_prefs to local_state_prefs
|
||||
+ if (local_state_prefs->GetBoolean("proxy_migrated") == false) {
|
||||
+ const base::Value* dict =
|
||||
+ profile_prefs->GetDictionary(proxy_config::prefs::kProxy);
|
||||
+ const base::Value::Dict& dict =
|
||||
+ profile_prefs->GetDict(proxy_config::prefs::kProxy);
|
||||
+
|
||||
+ LOG(INFO) << "CreatePrefProxyConfigTrackerOfProfile: Migration from profile to local state";
|
||||
+
|
||||
+ const base::Value /*ProxyConfigDictionary*/ proxy_dict(dict->Clone());
|
||||
+ const base::Value /*ProxyConfigDictionary*/ proxy_dict(dict.Clone());
|
||||
+ local_state_prefs->Set(proxy_config::prefs::kProxy, proxy_dict);
|
||||
+
|
||||
+ local_state_prefs->SetBoolean("proxy_migrated", true);
|
||||
@@ -149,7 +155,7 @@ diff --git a/chrome/browser/net/proxy_service_factory.cc b/chrome/browser/net/pr
|
||||
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
}
|
||||
|
||||
@@ -88,3 +105,8 @@ ProxyServiceFactory::CreatePrefProxyConfigTrackerOfLocalState(
|
||||
@@ -86,3 +103,8 @@ ProxyServiceFactory::CreatePrefProxyConfigTrackerOfLocalState(
|
||||
nullptr);
|
||||
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
}
|
||||
@@ -181,16 +187,16 @@ diff --git a/chrome/browser/net/proxy_service_factory.h b/chrome/browser/net/pro
|
||||
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
|
||||
--- a/chrome/browser/prefs/browser_prefs.cc
|
||||
+++ b/chrome/browser/prefs/browser_prefs.cc
|
||||
@@ -161,6 +161,8 @@
|
||||
#include "printing/buildflags/buildflags.h"
|
||||
@@ -167,6 +167,8 @@
|
||||
#include "rlz/buildflags/buildflags.h"
|
||||
#include "third_party/abseil-cpp/absl/types/optional.h"
|
||||
|
||||
+#include "chrome/browser/net/proxy_service_factory.h"
|
||||
+
|
||||
#if BUILDFLAG(ENABLE_BACKGROUND_MODE)
|
||||
#include "chrome/browser/background/background_mode_manager.h"
|
||||
#endif
|
||||
@@ -994,6 +996,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
|
||||
@@ -1055,6 +1057,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
|
||||
chrome::enterprise_util::RegisterLocalStatePrefs(registry);
|
||||
component_updater::RegisterPrefs(registry);
|
||||
embedder_support::OriginTrialPrefs::RegisterPrefs(registry);
|
||||
@@ -202,13 +208,13 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
|
||||
diff --git a/chrome/browser/prefs/chrome_command_line_pref_store.cc b/chrome/browser/prefs/chrome_command_line_pref_store.cc
|
||||
--- a/chrome/browser/prefs/chrome_command_line_pref_store.cc
|
||||
+++ b/chrome/browser/prefs/chrome_command_line_pref_store.cc
|
||||
@@ -157,7 +157,7 @@ void ChromeCommandLinePrefStore::ApplyProxyMode() {
|
||||
SetValue(
|
||||
proxy_config::prefs::kProxy,
|
||||
std::make_unique<base::Value>(ProxyConfigDictionary::CreateFixedServers(
|
||||
- proxy_server, bypass_list)),
|
||||
+ proxy_server, bypass_list, false)),
|
||||
WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
|
||||
@@ -159,7 +159,7 @@ void ChromeCommandLinePrefStore::ApplyProxyMode() {
|
||||
command_line()->GetSwitchValueASCII(switches::kProxyBypassList);
|
||||
SetValue(proxy_config::prefs::kProxy,
|
||||
base::Value(ProxyConfigDictionary::CreateFixedServers(
|
||||
- proxy_server, bypass_list)),
|
||||
+ proxy_server, bypass_list, false)),
|
||||
WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS);
|
||||
}
|
||||
}
|
||||
diff --git a/chrome/browser/resources/proxy_config.css b/chrome/browser/resources/proxy_config.css
|
||||
@@ -281,7 +287,7 @@ diff --git a/chrome/browser/resources/proxy_config.html b/chrome/browser/resourc
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/chrome/browser/resources/proxy_config.html
|
||||
@@ -0,0 +1,79 @@
|
||||
@@ -0,0 +1,78 @@
|
||||
+<!doctype html>
|
||||
+<html>
|
||||
+<head>
|
||||
@@ -295,8 +301,7 @@ new file mode 100644
|
||||
+<script src="chrome://resources/js/ios/web_ui.js"></script>
|
||||
+</if>
|
||||
+
|
||||
+<script src="chrome://resources/js/assert.js"></script>
|
||||
+<script src="chrome://resources/js/util.js"></script>
|
||||
+<script type="module" src="chrome://resources/js/assert.js"></script>
|
||||
+<script type="module" src="chrome://proxy/proxy_config.js"></script>
|
||||
+<link rel="stylesheet" href="chrome://resources/css/text_defaults.css">
|
||||
+<link rel="stylesheet" href="proxy_config.css">
|
||||
@@ -365,7 +370,7 @@ diff --git a/chrome/browser/resources/proxy_config.js b/chrome/browser/resources
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/chrome/browser/resources/proxy_config.js
|
||||
@@ -0,0 +1,266 @@
|
||||
@@ -0,0 +1,267 @@
|
||||
+/*
|
||||
+ This file is part of Bromite.
|
||||
+
|
||||
@@ -383,6 +388,7 @@ new file mode 100644
|
||||
+ along with Bromite. If not, see <https://www.gnu.org/licenses/>.
|
||||
+*/
|
||||
+
|
||||
+import {$} from 'chrome://resources/js/util.js';
|
||||
+import {addSingletonGetter} from 'chrome://resources/js/cr.m.js';
|
||||
+
|
||||
+/**
|
||||
@@ -635,8 +641,8 @@ new file mode 100644
|
||||
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
|
||||
--- a/chrome/browser/ui/BUILD.gn
|
||||
+++ b/chrome/browser/ui/BUILD.gn
|
||||
@@ -281,6 +281,8 @@ static_library("ui") {
|
||||
"webui/metrics_handler.h",
|
||||
@@ -287,6 +287,8 @@ static_library("ui") {
|
||||
"webui/metrics_internals/metrics_internals_ui.h",
|
||||
"webui/net_export_ui.cc",
|
||||
"webui/net_export_ui.h",
|
||||
+ "webui/proxy_config_ui.cc",
|
||||
@@ -647,16 +653,16 @@ diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
|
||||
diff --git a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
|
||||
--- a/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
|
||||
+++ b/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
|
||||
@@ -56,6 +56,7 @@
|
||||
@@ -60,6 +60,7 @@
|
||||
#include "chrome/browser/ui/webui/ntp_tiles_internals_ui.h"
|
||||
#include "chrome/browser/ui/webui/omnibox/omnibox_ui.h"
|
||||
#include "chrome/browser/ui/webui/policy/policy_ui.h"
|
||||
+#include "chrome/browser/ui/webui/proxy_config_ui.h"
|
||||
#include "chrome/browser/ui/webui/predictors/predictors_ui.h"
|
||||
#include "chrome/browser/ui/webui/profiles/profile_internals_ui.h"
|
||||
#include "chrome/browser/ui/webui/segmentation_internals/segmentation_internals_ui.h"
|
||||
@@ -778,6 +779,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
|
||||
return &NewWebUI<MemoryInternalsUI>;
|
||||
#include "chrome/browser/ui/webui/signin_internals_ui.h"
|
||||
@@ -801,6 +802,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
|
||||
return &NewWebUI<MetricsInternalsUI>;
|
||||
if (url.host_piece() == chrome::kChromeUINetExportHost)
|
||||
return &NewWebUI<NetExportUI>;
|
||||
+ if (url.host_piece() == chrome::kChromeUIProxyConfigHost)
|
||||
@@ -928,9 +934,9 @@ new file mode 100644
|
||||
+ net::ProxyConfigWithAnnotation config;
|
||||
+ auto availability = proxy_config_service_->GetLatestProxyConfig(&config);
|
||||
+
|
||||
+ const base::Value* dict =
|
||||
+ pref_service_->GetDictionary(proxy_config::prefs::kProxy);
|
||||
+ ProxyConfigDictionary proxy_dict(dict->Clone());
|
||||
+ const PrefService::Preference* const pref =
|
||||
+ pref_service_->FindPreference(proxy_config::prefs::kProxy);
|
||||
+ ProxyConfigDictionary proxy_dict(pref->GetValue()->GetDict().Clone());
|
||||
+ ProxyPrefs::ProxyMode mode;
|
||||
+ if (!proxy_dict.GetMode(&mode) || mode == ProxyPrefs::MODE_SYSTEM) {
|
||||
+ availability = net::ProxyConfigService::CONFIG_UNSET;
|
||||
@@ -942,8 +948,8 @@ new file mode 100644
|
||||
+void ProxyConfigMessageHandler::OnClear(const base::Value::List& list) {
|
||||
+ DCHECK_CURRENTLY_ON(BrowserThread::UI);
|
||||
+
|
||||
+ const base::Value cfg = ProxyConfigDictionary::CreateSystem();
|
||||
+ pref_service_->Set(proxy_config::prefs::kProxy, cfg);
|
||||
+ const base::Value::Dict cfg = ProxyConfigDictionary::CreateSystem();
|
||||
+ pref_service_->SetDict(proxy_config::prefs::kProxy, cfg.Clone());
|
||||
+ pref_service_->CommitPendingWrite();
|
||||
+ OnEnableNotifyUIWithState(list);
|
||||
+}
|
||||
@@ -1054,22 +1060,22 @@ new file mode 100644
|
||||
+
|
||||
+void ProxyConfigMessageHandler::apply(const net::ProxyConfig& proxyConfig) {
|
||||
+ if (proxyConfig.auto_detect()) {
|
||||
+ const base::Value cfg = ProxyConfigDictionary::CreateAutoDetect();
|
||||
+ pref_service_->Set(proxy_config::prefs::kProxy, cfg);
|
||||
+ const base::Value::Dict cfg = ProxyConfigDictionary::CreateAutoDetect();
|
||||
+ pref_service_->SetDict(proxy_config::prefs::kProxy, cfg.Clone());
|
||||
+ } else if (proxyConfig.has_pac_url()) {
|
||||
+ const base::Value cfg = ProxyConfigDictionary::CreatePacScript(proxyConfig.pac_url().spec(), proxyConfig.pac_mandatory());
|
||||
+ pref_service_->Set(proxy_config::prefs::kProxy, cfg);
|
||||
+ const base::Value::Dict cfg = ProxyConfigDictionary::CreatePacScript(proxyConfig.pac_url().spec(), proxyConfig.pac_mandatory());
|
||||
+ pref_service_->SetDict(proxy_config::prefs::kProxy, cfg.Clone());
|
||||
+ } else if (proxyConfig.proxy_rules().type == net::ProxyConfig::ProxyRules::Type::EMPTY) {
|
||||
+ const base::Value cfg = ProxyConfigDictionary::CreateDirect();
|
||||
+ pref_service_->Set(proxy_config::prefs::kProxy, cfg);
|
||||
+ const base::Value::Dict cfg = ProxyConfigDictionary::CreateDirect();
|
||||
+ pref_service_->SetDict(proxy_config::prefs::kProxy, cfg.Clone());
|
||||
+ } else {
|
||||
+ auto proxyRulesAsString = proxyConfig.proxy_rules().ToString();
|
||||
+ auto bypassRulesAsString = proxyConfig.proxy_rules().bypass_rules.ToString();
|
||||
+
|
||||
+ // fixed servers
|
||||
+ const base::Value cfg = ProxyConfigDictionary::CreateFixedServers(proxyRulesAsString,
|
||||
+ const base::Value::Dict cfg = ProxyConfigDictionary::CreateFixedServers(proxyRulesAsString,
|
||||
+ bypassRulesAsString, proxyConfig.proxy_rules().reverse_bypass);
|
||||
+ pref_service_->Set(proxy_config::prefs::kProxy, cfg);
|
||||
+ pref_service_->SetDict(proxy_config::prefs::kProxy, cfg.Clone());
|
||||
+ }
|
||||
+ pref_service_->CommitPendingWrite();
|
||||
+
|
||||
@@ -1126,7 +1132,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
|
||||
@@ -48,6 +48,8 @@ const char kChromeUICertificateViewerHost[] = "view-cert";
|
||||
@@ -47,6 +47,8 @@ const char kChromeUICertificateViewerHost[] = "view-cert";
|
||||
const char kChromeUICertificateViewerURL[] = "chrome://view-cert/";
|
||||
const char kChromeUIChromeSigninHost[] = "chrome-signin";
|
||||
const char kChromeUIChromeSigninURL[] = "chrome://chrome-signin/";
|
||||
@@ -1135,15 +1141,15 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
|
||||
const char kChromeUIChromeURLsHost[] = "chrome-urls";
|
||||
const char kChromeUIChromeURLsURL[] = "chrome://chrome-urls/";
|
||||
const char kChromeUIComponentsHost[] = "components";
|
||||
@@ -421,6 +423,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
|
||||
@@ -446,6 +448,7 @@ bool IsSystemWebUIHost(base::StringPiece host) {
|
||||
kChromeUILockScreenNetworkHost,
|
||||
kChromeUILockScreenStartReauthHost,
|
||||
kChromeUIMobileSetupHost,
|
||||
+ kChromeUIProxyConfigHost,
|
||||
kChromeUIMultiDeviceSetupHost,
|
||||
kChromeUINetworkHost,
|
||||
+ kChromeUIProxyConfigHost,
|
||||
kChromeUIOobeHost,
|
||||
kChromeUIOSCreditsHost,
|
||||
kChromeUIOSSettingsHost,
|
||||
@@ -672,6 +675,7 @@ const char* const kChromeHostURLs[] = {
|
||||
kChromeUINotificationTesterHost,
|
||||
@@ -718,6 +721,7 @@ const char* const kChromeHostURLs[] = {
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
#if !BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
kChromeUIAppLauncherPageHost,
|
||||
@@ -1154,7 +1160,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
|
||||
@@ -132,6 +132,8 @@ extern const char kChromeUIMemoryInternalsHost[];
|
||||
@@ -134,6 +134,8 @@ extern const char kChromeUIMetricsInternalsHost[];
|
||||
extern const char kChromeUINTPTilesInternalsHost[];
|
||||
extern const char kChromeUINaClHost[];
|
||||
extern const char kChromeUINetExportHost[];
|
||||
@@ -1166,7 +1172,7 @@ diff --git a/chrome/common/webui_url_constants.h b/chrome/common/webui_url_const
|
||||
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
|
||||
@@ -381,6 +381,7 @@ bool PrefProxyConfigTrackerImpl::PrefConfigToNetConfig(
|
||||
@@ -380,6 +380,7 @@ bool PrefProxyConfigTrackerImpl::PrefConfigToNetConfig(
|
||||
if (proxy_dict.GetBypassList(&proxy_bypass)) {
|
||||
proxy_config.proxy_rules().bypass_rules.ParseFromString(proxy_bypass);
|
||||
}
|
||||
@@ -1186,46 +1192,47 @@ diff --git a/components/proxy_config/proxy_config_dictionary.cc b/components/pro
|
||||
|
||||
} // namespace
|
||||
|
||||
@@ -78,6 +80,14 @@ bool ProxyConfigDictionary::HasBypassList() const {
|
||||
return dict_.FindKey(kProxyBypassList);
|
||||
@@ -76,6 +78,14 @@ bool ProxyConfigDictionary::HasBypassList() const {
|
||||
return dict_.Find(kProxyBypassList);
|
||||
}
|
||||
|
||||
+bool ProxyConfigDictionary::HasReverseBypass() const {
|
||||
+ const base::Value* value = dict_.FindKey(kProxyReverseBypass);
|
||||
+ const base::Value* value = dict_.Find(kProxyReverseBypass);
|
||||
+ if (!value || !value->is_bool()) {
|
||||
+ return false;
|
||||
+ }
|
||||
+ return value->GetBool();
|
||||
+}
|
||||
+
|
||||
const base::Value& ProxyConfigDictionary::GetDictionary() const {
|
||||
const base::Value::Dict& ProxyConfigDictionary::GetDictionary() const {
|
||||
return dict_;
|
||||
}
|
||||
@@ -85,29 +95,30 @@ const base::Value& ProxyConfigDictionary::GetDictionary() const {
|
||||
@@ -83,13 +93,13 @@ const base::Value::Dict& ProxyConfigDictionary::GetDictionary() const {
|
||||
// static
|
||||
base::Value ProxyConfigDictionary::CreateDirect() {
|
||||
base::Value::Dict ProxyConfigDictionary::CreateDirect() {
|
||||
return CreateDictionary(ProxyPrefs::MODE_DIRECT, std::string(), false,
|
||||
- std::string(), std::string());
|
||||
+ std::string(), std::string(), false);
|
||||
}
|
||||
|
||||
// static
|
||||
base::Value ProxyConfigDictionary::CreateAutoDetect() {
|
||||
base::Value::Dict ProxyConfigDictionary::CreateAutoDetect() {
|
||||
return CreateDictionary(ProxyPrefs::MODE_AUTO_DETECT, std::string(), false,
|
||||
- std::string(), std::string());
|
||||
+ std::string(), std::string(), false);
|
||||
}
|
||||
|
||||
// static
|
||||
base::Value ProxyConfigDictionary::CreatePacScript(const std::string& pac_url,
|
||||
bool pac_mandatory) {
|
||||
@@ -97,16 +107,17 @@ base::Value::Dict ProxyConfigDictionary::CreatePacScript(
|
||||
const std::string& pac_url,
|
||||
bool pac_mandatory) {
|
||||
return CreateDictionary(ProxyPrefs::MODE_PAC_SCRIPT, pac_url, pac_mandatory,
|
||||
- std::string(), std::string());
|
||||
+ std::string(), std::string(), false);
|
||||
}
|
||||
|
||||
// static
|
||||
base::Value ProxyConfigDictionary::CreateFixedServers(
|
||||
base::Value::Dict ProxyConfigDictionary::CreateFixedServers(
|
||||
const std::string& proxy_server,
|
||||
- const std::string& bypass_list) {
|
||||
+ const std::string& bypass_list,
|
||||
@@ -1237,33 +1244,33 @@ diff --git a/components/proxy_config/proxy_config_dictionary.cc b/components/pro
|
||||
} else {
|
||||
return CreateDirect();
|
||||
}
|
||||
@@ -116,7 +127,7 @@ base::Value ProxyConfigDictionary::CreateFixedServers(
|
||||
@@ -115,7 +126,7 @@ base::Value::Dict ProxyConfigDictionary::CreateFixedServers(
|
||||
// static
|
||||
base::Value ProxyConfigDictionary::CreateSystem() {
|
||||
base::Value::Dict ProxyConfigDictionary::CreateSystem() {
|
||||
return CreateDictionary(ProxyPrefs::MODE_SYSTEM, std::string(), false,
|
||||
- std::string(), std::string());
|
||||
+ std::string(), std::string(), false);
|
||||
}
|
||||
|
||||
// static
|
||||
@@ -125,7 +136,8 @@ base::Value ProxyConfigDictionary::CreateDictionary(
|
||||
@@ -124,7 +135,8 @@ base::Value::Dict ProxyConfigDictionary::CreateDictionary(
|
||||
const std::string& pac_url,
|
||||
bool pac_mandatory,
|
||||
const std::string& proxy_server,
|
||||
- const std::string& bypass_list) {
|
||||
+ const std::string& bypass_list,
|
||||
+ bool reverse_bypass) {
|
||||
base::Value dict(base::Value::Type::DICTIONARY);
|
||||
dict.SetKey(kProxyMode, base::Value(ProxyModeToString(mode)));
|
||||
base::Value::Dict dict;
|
||||
dict.Set(kProxyMode, base::Value(ProxyModeToString(mode)));
|
||||
if (!pac_url.empty()) {
|
||||
@@ -134,8 +146,10 @@ base::Value ProxyConfigDictionary::CreateDictionary(
|
||||
@@ -133,8 +145,10 @@ base::Value::Dict ProxyConfigDictionary::CreateDictionary(
|
||||
}
|
||||
if (!proxy_server.empty())
|
||||
dict.SetKey(kProxyServer, base::Value(proxy_server));
|
||||
dict.Set(kProxyServer, base::Value(proxy_server));
|
||||
- if (!bypass_list.empty())
|
||||
+ if (!bypass_list.empty()) {
|
||||
dict.SetKey(kProxyBypassList, base::Value(bypass_list));
|
||||
+ dict.SetKey(kProxyReverseBypass, base::Value(reverse_bypass));
|
||||
dict.Set(kProxyBypassList, base::Value(bypass_list));
|
||||
+ dict.Set(kProxyReverseBypass, base::Value(reverse_bypass));
|
||||
+ }
|
||||
return dict;
|
||||
}
|
||||
@@ -1277,44 +1284,44 @@ diff --git a/components/proxy_config/proxy_config_dictionary.h b/components/prox
|
||||
bool HasBypassList() const;
|
||||
+ bool HasReverseBypass() const;
|
||||
|
||||
const base::Value& GetDictionary() const;
|
||||
const base::Value::Dict& GetDictionary() const;
|
||||
|
||||
@@ -50,7 +51,8 @@ class PROXY_CONFIG_EXPORT ProxyConfigDictionary {
|
||||
static base::Value CreatePacScript(const std::string& pac_url,
|
||||
bool pac_mandatory);
|
||||
static base::Value CreateFixedServers(const std::string& proxy_server,
|
||||
- const std::string& bypass_list);
|
||||
+ const std::string& bypass_list,
|
||||
+ bool reverse_bypass);
|
||||
static base::Value CreateSystem();
|
||||
static base::Value::Dict CreatePacScript(const std::string& pac_url,
|
||||
bool pac_mandatory);
|
||||
static base::Value::Dict CreateFixedServers(const std::string& proxy_server,
|
||||
- const std::string& bypass_list);
|
||||
+ const std::string& bypass_list,
|
||||
+ bool reverse_bypass);
|
||||
static base::Value::Dict CreateSystem();
|
||||
|
||||
// Encodes the proxy server as "<url-scheme>=<proxy-scheme>://<proxy>".
|
||||
@@ -66,7 +68,8 @@ class PROXY_CONFIG_EXPORT ProxyConfigDictionary {
|
||||
const std::string& pac_url,
|
||||
bool pac_mandatory,
|
||||
const std::string& proxy_server,
|
||||
- const std::string& bypass_list);
|
||||
+ const std::string& bypass_list,
|
||||
+ bool reverse_bypass);
|
||||
const std::string& pac_url,
|
||||
bool pac_mandatory,
|
||||
const std::string& proxy_server,
|
||||
- const std::string& bypass_list);
|
||||
+ const std::string& bypass_list,
|
||||
+ bool reverse_bypass);
|
||||
|
||||
base::Value dict_;
|
||||
base::Value::Dict 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
|
||||
@@ -258,7 +258,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));
|
||||
@@ -263,7 +263,7 @@ void ProxyPolicyHandler::ApplyPolicySettings(const PolicyMap& policies,
|
||||
set_proxy_pref_value(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
|
||||
@@ -112,7 +112,7 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) {
|
||||
@@ -109,7 +109,7 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) {
|
||||
&single_proxies,
|
||||
ProxyServer::SCHEME_HTTP);
|
||||
type = Type::PROXY_LIST;
|
||||
@@ -1323,7 +1330,7 @@ diff --git a/net/proxy_resolution/proxy_config.cc b/net/proxy_resolution/proxy_c
|
||||
}
|
||||
|
||||
// Trim whitespace off the url scheme.
|
||||
@@ -143,6 +143,56 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) {
|
||||
@@ -140,6 +140,56 @@ void ProxyConfig::ProxyRules::ParseFromString(const std::string& proxy_rules) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,12 +7,14 @@ Reduce permissions needed for bookmarks import/export
|
||||
Completely remove contacts picker permission from the file dialog
|
||||
|
||||
Requires patch: Adds-support-for-writing-URIs.patch
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/android/java/AndroidManifest.xml | 1 -
|
||||
.../res/menu/bookmark_action_bar_menu.xml | 14 +
|
||||
.../browser/TabbedModeTabDelegateFactory.java | 5 +-
|
||||
.../app/bookmarks/BookmarkActivity.java | 31 ++
|
||||
.../browser/bookmarks/BookmarkActionBar.java | 12 +
|
||||
.../browser/bookmarks/BookmarkActivity.java | 30 ++
|
||||
.../browser/bookmarks/BookmarkBridge.java | 278 +++++++++++++++++
|
||||
.../browser/bookmarks/BookmarkDelegate.java | 10 +
|
||||
.../browser/bookmarks/BookmarkManager.java | 22 ++
|
||||
@@ -20,14 +22,14 @@ Requires patch: Adds-support-for-writing-URIs.patch
|
||||
.../native_page/NativePageFactory.java | 11 +-
|
||||
chrome/browser/BUILD.gn | 11 +-
|
||||
chrome/browser/about_flags.cc | 6 +
|
||||
.../android/bookmarks/bookmark_bridge.cc | 283 ++++++++++++++++++
|
||||
.../android/bookmarks/bookmark_bridge.h | 30 +-
|
||||
.../bookmarks/android/bookmark_bridge.cc | 283 ++++++++++++++++++
|
||||
.../bookmarks/android/bookmark_bridge.h | 30 +-
|
||||
.../browser/bookmarks/bookmark_html_writer.cc | 8 +-
|
||||
.../dialogs/DownloadLocationCustomView.java | 8 +-
|
||||
.../DownloadLocationDialogCoordinator.java | 8 +-
|
||||
chrome/browser/flag_descriptions.cc | 5 +
|
||||
chrome/browser/flag_descriptions.h | 3 +
|
||||
.../flags/android/chrome_feature_list.cc | 5 +
|
||||
.../flags/android/chrome_feature_list.cc | 6 +
|
||||
.../flags/android/chrome_feature_list.h | 1 +
|
||||
.../browser/flags/ChromeFeatureList.java | 1 +
|
||||
chrome/browser/importer/profile_writer.cc | 12 +
|
||||
@@ -43,12 +45,12 @@ Requires patch: Adds-support-for-writing-URIs.patch
|
||||
ui/shell_dialogs/select_file_dialog.h | 2 +
|
||||
.../select_file_dialog_android.cc | 6 +
|
||||
ui/shell_dialogs/select_file_dialog_android.h | 2 +
|
||||
35 files changed, 846 insertions(+), 29 deletions(-)
|
||||
35 files changed, 848 insertions(+), 29 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
|
||||
--- a/chrome/android/java/AndroidManifest.xml
|
||||
+++ b/chrome/android/java/AndroidManifest.xml
|
||||
@@ -59,7 +59,6 @@ by a child template that "extends" this file.
|
||||
@@ -61,7 +61,6 @@ by a child template that "extends" this file.
|
||||
<uses-permission-sdk-23 android:name="android.permission.BLUETOOTH_SCAN"
|
||||
android:usesPermissionFlags="neverForLocation"/>
|
||||
|
||||
@@ -59,7 +61,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
|
||||
diff --git a/chrome/android/java/res/menu/bookmark_action_bar_menu.xml b/chrome/android/java/res/menu/bookmark_action_bar_menu.xml
|
||||
--- a/chrome/android/java/res/menu/bookmark_action_bar_menu.xml
|
||||
+++ b/chrome/android/java/res/menu/bookmark_action_bar_menu.xml
|
||||
@@ -21,6 +21,20 @@
|
||||
@@ -23,6 +23,20 @@ found in the LICENSE file.
|
||||
android:visible="false"
|
||||
app:showAsAction="ifRoom"
|
||||
app:iconTint="@color/default_icon_color_secondary_tint_list" />
|
||||
@@ -91,7 +93,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe
|
||||
import org.chromium.chrome.browser.app.tab_activity_glue.ActivityTabWebContentsDelegateAndroid;
|
||||
import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider;
|
||||
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
|
||||
@@ -46,7 +47,7 @@ import org.chromium.ui.modaldialog.ModalDialogManager;
|
||||
@@ -47,7 +48,7 @@ import org.chromium.ui.modaldialog.ModalDialogManager;
|
||||
* {@link ChromeTabbedActivity}.
|
||||
*/
|
||||
public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
|
||||
@@ -100,7 +102,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe
|
||||
private final BrowserControlsVisibilityDelegate mAppBrowserControlsVisibilityDelegate;
|
||||
private final Supplier<ShareDelegate> mShareDelegateSupplier;
|
||||
private final Supplier<EphemeralTabCoordinator> mEphemeralTabCoordinatorSupplier;
|
||||
@@ -72,7 +73,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
|
||||
@@ -74,7 +75,7 @@ public class TabbedModeTabDelegateFactory implements TabDelegateFactory {
|
||||
|
||||
private NativePageFactory mNativePageFactory;
|
||||
|
||||
@@ -109,54 +111,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/TabbedModeTabDe
|
||||
BrowserControlsVisibilityDelegate appBrowserControlsVisibilityDelegate,
|
||||
Supplier<ShareDelegate> shareDelegateSupplier,
|
||||
Supplier<EphemeralTabCoordinator> ephemeralTabCoordinatorSupplier,
|
||||
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
|
||||
@@ -86,6 +86,12 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
} else if (menuItem.getItemId() == R.id.search_menu_id) {
|
||||
mDelegate.openSearchUI();
|
||||
return true;
|
||||
+ } else if (menuItem.getItemId() == R.id.import_menu_id) {
|
||||
+ mDelegate.importBookmarks();
|
||||
+ return true;
|
||||
+ } else if (menuItem.getItemId() == R.id.export_menu_id) {
|
||||
+ mDelegate.exportBookmarks();
|
||||
+ return true;
|
||||
}
|
||||
|
||||
SelectionDelegate<BookmarkId> selectionDelegate = mDelegate.getSelectionDelegate();
|
||||
@@ -137,6 +143,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
void showLoadingUi() {
|
||||
setTitle(null);
|
||||
setNavigationButton(NAVIGATION_BUTTON_NONE);
|
||||
+ getMenu().findItem(R.id.import_menu_id).setVisible(false);
|
||||
+ getMenu().findItem(R.id.export_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.search_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.edit_menu_id).setVisible(false);
|
||||
}
|
||||
@@ -146,6 +154,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
super.showNormalView();
|
||||
|
||||
if (mDelegate == null) {
|
||||
+ getMenu().findItem(R.id.import_menu_id).setVisible(false);
|
||||
+ getMenu().findItem(R.id.export_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.search_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.edit_menu_id).setVisible(false);
|
||||
}
|
||||
@@ -175,6 +185,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
@Override
|
||||
public void onFolderStateSet(BookmarkId folder) {
|
||||
mCurrentFolder = mDelegate.getModel().getBookmarkById(folder);
|
||||
+ getMenu().findItem(R.id.import_menu_id).setVisible(true);
|
||||
+ getMenu().findItem(R.id.export_menu_id).setVisible(true);
|
||||
getMenu().findItem(R.id.search_menu_id).setVisible(true);
|
||||
getMenu().findItem(R.id.edit_menu_id).setVisible(mCurrentFolder.isEditable());
|
||||
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkActivity.java
|
||||
@@ -16,6 +16,11 @@ import org.chromium.chrome.browser.IntentHandler;
|
||||
import org.chromium.chrome.browser.SnackbarActivity;
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/BookmarkActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/BookmarkActivity.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/BookmarkActivity.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/bookmarks/BookmarkActivity.java
|
||||
@@ -18,6 +18,11 @@ import org.chromium.chrome.browser.bookmarks.BookmarkManager;
|
||||
import org.chromium.chrome.browser.bookmarks.BookmarkPage;
|
||||
import org.chromium.components.bookmarks.BookmarkId;
|
||||
import org.chromium.components.embedder_support.util.UrlConstants;
|
||||
+import org.chromium.ui.base.ActivityWindowAndroid;
|
||||
@@ -167,15 +126,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
|
||||
/**
|
||||
* The activity that displays the bookmark UI on the phone. It keeps a {@link BookmarkManager}
|
||||
@@ -25,6 +30,7 @@ import org.chromium.components.embedder_support.util.UrlConstants;
|
||||
public class BookmarkActivity extends SnackbarActivity {
|
||||
|
||||
private BookmarkManager mBookmarkManager;
|
||||
+ private ActivityWindowAndroid mWindowAndroid;
|
||||
static final int EDIT_BOOKMARK_REQUEST_CODE = 14;
|
||||
@@ -29,6 +34,8 @@ public class BookmarkActivity extends SnackbarActivity {
|
||||
public static final int EDIT_BOOKMARK_REQUEST_CODE = 14;
|
||||
public static final String INTENT_VISIT_BOOKMARK_ID = "BookmarkEditActivity.VisitBookmarkId";
|
||||
|
||||
@@ -42,8 +48,23 @@ public class BookmarkActivity extends SnackbarActivity {
|
||||
+ private ActivityWindowAndroid mWindowAndroid;
|
||||
+
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
@@ -43,8 +50,23 @@ public class BookmarkActivity extends SnackbarActivity {
|
||||
mBookmarkManager.updateForUrl(url);
|
||||
setContentView(mBookmarkManager.getView());
|
||||
BackPressHelper.create(this, getOnBackPressedDispatcher(), mBookmarkManager::onBackPressed);
|
||||
@@ -199,15 +159,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
super.onDestroy();
|
||||
@@ -53,6 +74,7 @@ public class BookmarkActivity extends SnackbarActivity {
|
||||
@@ -54,6 +76,7 @@ public class BookmarkActivity extends SnackbarActivity {
|
||||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
+ 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));
|
||||
@@ -60,6 +82,14 @@ public class BookmarkActivity extends SnackbarActivity {
|
||||
BookmarkId bookmarkId = BookmarkId.getBookmarkIdFromString(
|
||||
data.getStringExtra(INTENT_VISIT_BOOKMARK_ID));
|
||||
@@ -61,6 +84,14 @@ public class BookmarkActivity extends SnackbarActivity {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -222,6 +182,49 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
/**
|
||||
* @return The {@link BookmarkManager} for testing purposes.
|
||||
*/
|
||||
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
|
||||
@@ -84,6 +84,12 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
} else if (menuItem.getItemId() == R.id.search_menu_id) {
|
||||
mDelegate.openSearchUI();
|
||||
return true;
|
||||
+ } else if (menuItem.getItemId() == R.id.import_menu_id) {
|
||||
+ mDelegate.importBookmarks();
|
||||
+ return true;
|
||||
+ } else if (menuItem.getItemId() == R.id.export_menu_id) {
|
||||
+ mDelegate.exportBookmarks();
|
||||
+ return true;
|
||||
}
|
||||
|
||||
SelectionDelegate<BookmarkId> selectionDelegate = mDelegate.getSelectionDelegate();
|
||||
@@ -149,6 +155,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
void showLoadingUi() {
|
||||
setTitle(null);
|
||||
setNavigationButton(NAVIGATION_BUTTON_NONE);
|
||||
+ getMenu().findItem(R.id.import_menu_id).setVisible(false);
|
||||
+ getMenu().findItem(R.id.export_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.search_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.edit_menu_id).setVisible(false);
|
||||
}
|
||||
@@ -158,6 +166,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
super.showNormalView();
|
||||
|
||||
if (mDelegate == null) {
|
||||
+ getMenu().findItem(R.id.import_menu_id).setVisible(false);
|
||||
+ getMenu().findItem(R.id.export_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.search_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.edit_menu_id).setVisible(false);
|
||||
}
|
||||
@@ -187,6 +197,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
@Override
|
||||
public void onFolderStateSet(BookmarkId folder) {
|
||||
mCurrentFolder = mDelegate.getModel().getBookmarkById(folder);
|
||||
+ getMenu().findItem(R.id.import_menu_id).setVisible(true);
|
||||
+ getMenu().findItem(R.id.export_menu_id).setVisible(true);
|
||||
getMenu().findItem(R.id.search_menu_id).setVisible(true);
|
||||
getMenu().findItem(R.id.edit_menu_id).setVisible(mCurrentFolder.isEditable());
|
||||
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkBridge.java
|
||||
@@ -246,7 +249,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
import android.text.TextUtils;
|
||||
import android.util.Pair;
|
||||
|
||||
@@ -46,6 +59,32 @@ import java.util.HashMap;
|
||||
@@ -40,6 +53,32 @@ import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
|
||||
@@ -279,7 +282,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
/**
|
||||
* Provides the communication channel for Android to fetch and manipulate the
|
||||
* bookmark model stored in native.
|
||||
@@ -737,6 +776,209 @@ public class BookmarkBridge {
|
||||
@@ -405,6 +444,209 @@ class BookmarkBridge {
|
||||
mNativeBookmarkBridge, BookmarkBridge.this, id.getId(), id.getType());
|
||||
}
|
||||
|
||||
@@ -489,7 +492,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
/**
|
||||
* Synchronously gets a list of bookmarks that match the specified search query.
|
||||
* @param query Keyword used for searching bookmarks.
|
||||
@@ -1319,6 +1561,39 @@ public class BookmarkBridge {
|
||||
@@ -869,6 +1111,39 @@ class BookmarkBridge {
|
||||
depthList.add(depth);
|
||||
}
|
||||
|
||||
@@ -529,7 +532,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
private static List<Pair<Integer, Integer>> createPairsList(int[] left, int[] right) {
|
||||
List<Pair<Integer, Integer>> pairList = new ArrayList<Pair<Integer, Integer>>();
|
||||
for (int i = 0; i < left.length; i++) {
|
||||
@@ -1389,6 +1664,9 @@ public class BookmarkBridge {
|
||||
@@ -901,6 +1176,9 @@ class BookmarkBridge {
|
||||
int getChildCount(long nativeBookmarkBridge, BookmarkBridge caller, long id, int type);
|
||||
void getChildIDs(long nativeBookmarkBridge, BookmarkBridge caller, long id, int type,
|
||||
List<BookmarkId> bookmarksList);
|
||||
@@ -542,7 +545,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/BookmarkDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkDelegate.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkDelegate.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkDelegate.java
|
||||
@@ -67,6 +67,16 @@ interface BookmarkDelegate {
|
||||
@@ -79,6 +79,16 @@ public interface BookmarkDelegate {
|
||||
*/
|
||||
void openSearchUI();
|
||||
|
||||
@@ -562,7 +565,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkManager.java
|
||||
@@ -35,6 +35,8 @@ import org.chromium.components.browser_ui.util.ConversionUtils;
|
||||
@@ -36,6 +36,8 @@ import org.chromium.components.browser_ui.util.ConversionUtils;
|
||||
import org.chromium.components.browser_ui.widget.dragreorder.DragStateDelegate;
|
||||
import org.chromium.components.browser_ui.widget.selectable_list.SelectableListLayout;
|
||||
import org.chromium.components.browser_ui.widget.selectable_list.SelectableListToolbar.SearchDelegate;
|
||||
@@ -571,7 +574,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelegate;
|
||||
import org.chromium.components.favicon.LargeIconBridge;
|
||||
import org.chromium.url.GURL;
|
||||
@@ -57,6 +59,8 @@ public class BookmarkManager
|
||||
@@ -59,6 +61,8 @@ public class BookmarkManager
|
||||
private ComponentName mOpenBookmarkComponentName;
|
||||
private ViewGroup mMainView;
|
||||
private BookmarkModel mBookmarkModel;
|
||||
@@ -580,7 +583,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
private BookmarkUndoController mUndoController;
|
||||
private final ObserverList<BookmarkUIObserver> mUIObservers = new ObserverList<>();
|
||||
private BasicNativePage mNativePage;
|
||||
@@ -351,6 +355,14 @@ public class BookmarkManager
|
||||
@@ -344,6 +348,14 @@ public class BookmarkManager
|
||||
mNativePage = nativePage;
|
||||
}
|
||||
|
||||
@@ -595,7 +598,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
/**
|
||||
* @return Current URL representing the UI state of bookmark manager. If no state has been shown
|
||||
* yet in this session, on phone return last used state stored in preference; on tablet
|
||||
@@ -531,6 +543,16 @@ public class BookmarkManager
|
||||
@@ -540,6 +552,16 @@ public class BookmarkManager
|
||||
}
|
||||
}
|
||||
|
||||
@@ -653,7 +656,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
|
||||
import org.chromium.chrome.browser.app.download.home.DownloadPage;
|
||||
import org.chromium.chrome.browser.bookmarks.BookmarkPage;
|
||||
import org.chromium.chrome.browser.browser_controls.BrowserControlsMarginSupplier;
|
||||
@@ -54,7 +55,7 @@ import org.chromium.ui.util.ColorUtils;
|
||||
@@ -55,7 +56,7 @@ import org.chromium.ui.util.ColorUtils;
|
||||
* Creates NativePage objects to show chrome-native:// URLs using the native Android view system.
|
||||
*/
|
||||
public class NativePageFactory {
|
||||
@@ -662,7 +665,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
|
||||
private final BottomSheetController mBottomSheetController;
|
||||
private final BrowserControlsManager mBrowserControlsManager;
|
||||
private final Supplier<Tab> mCurrentTabSupplier;
|
||||
@@ -71,7 +72,7 @@ public class NativePageFactory {
|
||||
@@ -73,7 +74,7 @@ public class NativePageFactory {
|
||||
|
||||
private NativePageBuilder mNativePageBuilder;
|
||||
|
||||
@@ -671,7 +674,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
|
||||
@NonNull BottomSheetController sheetController,
|
||||
@NonNull BrowserControlsManager browserControlsManager,
|
||||
@NonNull Supplier<Tab> currentTabSupplier,
|
||||
@@ -119,7 +120,7 @@ public class NativePageFactory {
|
||||
@@ -124,7 +125,7 @@ public class NativePageFactory {
|
||||
|
||||
@VisibleForTesting
|
||||
static class NativePageBuilder {
|
||||
@@ -680,16 +683,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
|
||||
private final BottomSheetController mBottomSheetController;
|
||||
private final Supplier<NewTabPageUma> mUma;
|
||||
private final BrowserControlsManager mBrowserControlsManager;
|
||||
@@ -132,7 +133,7 @@ public class NativePageFactory {
|
||||
private final JankTracker mJankTracker;
|
||||
@@ -138,7 +139,7 @@ public class NativePageFactory {
|
||||
private final Supplier<Toolbar> mToolbarSupplier;
|
||||
private final CrowButtonDelegate mCrowButtonDelegate;
|
||||
|
||||
- public NativePageBuilder(Activity activity, Supplier<NewTabPageUma> uma,
|
||||
+ public NativePageBuilder(ChromeActivity activity, Supplier<NewTabPageUma> uma,
|
||||
BottomSheetController sheetController,
|
||||
BrowserControlsManager browserControlsManager, Supplier<Tab> currentTabSupplier,
|
||||
Supplier<SnackbarManager> snackbarManagerSupplier,
|
||||
@@ -169,7 +170,7 @@ public class NativePageFactory {
|
||||
@@ -177,7 +178,7 @@ public class NativePageFactory {
|
||||
protected NativePage buildBookmarksPage(Tab tab) {
|
||||
return new BookmarkPage(mActivity.getComponentName(), mSnackbarManagerSupplier.get(),
|
||||
mTabModelSelector.isIncognitoSelected(),
|
||||
@@ -701,9 +704,18 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/native_page/Nat
|
||||
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
|
||||
--- a/chrome/browser/BUILD.gn
|
||||
+++ b/chrome/browser/BUILD.gn
|
||||
@@ -1845,6 +1845,13 @@ static_library("browser") {
|
||||
"webid/federated_identity_sharing_permission_context_factory.h",
|
||||
]
|
||||
@@ -214,6 +214,8 @@ static_library("browser") {
|
||||
"bluetooth/chrome_bluetooth_delegate_impl_client.h",
|
||||
"bookmarks/bookmark_model_factory.cc",
|
||||
"bookmarks/bookmark_model_factory.h",
|
||||
+ "bookmarks/bookmark_html_writer.cc",
|
||||
+ "bookmarks/bookmark_html_writer.h",
|
||||
"bookmarks/chrome_bookmark_client.cc",
|
||||
"bookmarks/chrome_bookmark_client.h",
|
||||
"bookmarks/managed_bookmark_service_factory.cc",
|
||||
@@ -1877,6 +1879,13 @@ static_library("browser") {
|
||||
]
|
||||
}
|
||||
|
||||
+ if (is_android) {
|
||||
+ sources += [
|
||||
@@ -715,28 +727,19 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
|
||||
configs += [
|
||||
"//build/config/compiler:wexit_time_destructors",
|
||||
"//build/config:precompiled_headers",
|
||||
@@ -3003,6 +3010,8 @@ static_library("browser") {
|
||||
"autofill/manual_filling_view_interface.h",
|
||||
"banners/android/chrome_app_banner_manager_android.cc",
|
||||
"banners/android/chrome_app_banner_manager_android.h",
|
||||
+ "bookmarks/bookmark_html_writer.cc",
|
||||
+ "bookmarks/bookmark_html_writer.h",
|
||||
"browser_process_platform_part_android.cc",
|
||||
"browser_process_platform_part_android.h",
|
||||
"chrome_browser_field_trials_mobile.cc",
|
||||
@@ -3621,8 +3630,6 @@ static_library("browser") {
|
||||
@@ -3551,8 +3560,6 @@ static_library("browser") {
|
||||
"badging/badge_manager_factory.h",
|
||||
"banners/app_banner_manager_desktop.cc",
|
||||
"banners/app_banner_manager_desktop.h",
|
||||
- "bookmarks/bookmark_html_writer.cc",
|
||||
- "bookmarks/bookmark_html_writer.h",
|
||||
"bookmarks/url_and_id.h",
|
||||
"cart/cart_db.cc",
|
||||
"cart/cart_db.h",
|
||||
"cart/cart_discount_fetcher.cc",
|
||||
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
|
||||
@@ -8246,6 +8246,12 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
@@ -9140,6 +9140,12 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
FEATURE_VALUE_TYPE(features::kRequestDesktopSiteExceptions)},
|
||||
#endif
|
||||
|
||||
@@ -749,10 +752,10 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
#if BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
{"snooping-protection", flag_descriptions::kSnoopingProtectionName,
|
||||
flag_descriptions::kSnoopingProtectionDescription, kOsCrOS,
|
||||
diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browser/android/bookmarks/bookmark_bridge.cc
|
||||
--- a/chrome/browser/android/bookmarks/bookmark_bridge.cc
|
||||
+++ b/chrome/browser/android/bookmarks/bookmark_bridge.cc
|
||||
@@ -56,6 +56,25 @@
|
||||
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc
|
||||
--- a/chrome/browser/bookmarks/android/bookmark_bridge.cc
|
||||
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc
|
||||
@@ -55,6 +55,25 @@
|
||||
#include "content/public/browser/browser_thread.h"
|
||||
#include "content/public/browser/web_contents.h"
|
||||
|
||||
@@ -776,11 +779,11 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
|
||||
+#include "content/public/browser/browser_task_traits.h"
|
||||
+
|
||||
using base::android::AttachCurrentThread;
|
||||
using base::android::ConvertUTF8ToJavaString;
|
||||
using base::android::ConvertUTF16ToJavaString;
|
||||
@@ -72,8 +91,92 @@ using bookmarks::BookmarkNode;
|
||||
using bookmarks::BookmarkType;
|
||||
using base::android::ConvertUTF8ToJavaString;
|
||||
@@ -72,8 +91,92 @@ using bookmarks::android::JavaBookmarkIdGetType;
|
||||
using content::BrowserThread;
|
||||
using power_bookmarks::PowerBookmarkMeta;
|
||||
|
||||
+namespace internal {
|
||||
+
|
||||
@@ -871,7 +874,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
|
||||
class BookmarkTitleComparer {
|
||||
public:
|
||||
explicit BookmarkTitleComparer(BookmarkBridge* bookmark_bridge,
|
||||
@@ -160,6 +263,10 @@ BookmarkBridge::~BookmarkBridge() {
|
||||
@@ -158,6 +261,10 @@ BookmarkBridge::~BookmarkBridge() {
|
||||
if (partner_bookmarks_shim_)
|
||||
partner_bookmarks_shim_->RemoveObserver(this);
|
||||
reading_list_manager_->RemoveObserver(this);
|
||||
@@ -882,7 +885,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
|
||||
}
|
||||
|
||||
void BookmarkBridge::Destroy(JNIEnv*, const JavaParamRef<jobject>&) {
|
||||
@@ -577,6 +684,182 @@ jint BookmarkBridge::GetTotalBookmarkCount(
|
||||
@@ -568,6 +675,182 @@ jint BookmarkBridge::GetTotalBookmarkCount(
|
||||
return count;
|
||||
}
|
||||
|
||||
@@ -1063,11 +1066,11 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
|
||||
+}
|
||||
+
|
||||
void BookmarkBridge::SetBookmarkTitle(JNIEnv* env,
|
||||
const JavaParamRef<jobject>& obj,
|
||||
jlong id,
|
||||
diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser/android/bookmarks/bookmark_bridge.h
|
||||
--- a/chrome/browser/android/bookmarks/bookmark_bridge.h
|
||||
+++ b/chrome/browser/android/bookmarks/bookmark_bridge.h
|
||||
const JavaParamRef<jobject>& obj,
|
||||
jlong id,
|
||||
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser/bookmarks/android/bookmark_bridge.h
|
||||
--- a/chrome/browser/bookmarks/android/bookmark_bridge.h
|
||||
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.h
|
||||
@@ -18,6 +18,7 @@
|
||||
#include "base/scoped_observation.h"
|
||||
#include "base/strings/utf_string_conversions.h"
|
||||
@@ -1076,7 +1079,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
|
||||
#include "chrome/browser/profiles/profile.h"
|
||||
#include "chrome/browser/profiles/profile_observer.h"
|
||||
#include "chrome/browser/reading_list/android/reading_list_manager.h"
|
||||
@@ -27,6 +28,9 @@
|
||||
@@ -26,6 +27,9 @@
|
||||
#include "components/prefs/pref_change_registrar.h"
|
||||
#include "url/android/gurl_android.h"
|
||||
|
||||
@@ -1086,7 +1089,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
|
||||
namespace bookmarks {
|
||||
class BookmarkModel;
|
||||
class ManagedBookmarkService;
|
||||
@@ -42,7 +46,8 @@ class Profile;
|
||||
@@ -40,7 +44,8 @@ class Profile;
|
||||
class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
public PartnerBookmarksShim::Observer,
|
||||
public ReadingListManager::Observer,
|
||||
@@ -1096,7 +1099,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
|
||||
public:
|
||||
BookmarkBridge(JNIEnv* env,
|
||||
const base::android::JavaRef<jobject>& obj,
|
||||
@@ -62,6 +67,12 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
@@ -60,6 +65,12 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
bool IsDoingExtensiveChanges(JNIEnv* env,
|
||||
const base::android::JavaParamRef<jobject>& obj);
|
||||
|
||||
@@ -1109,7 +1112,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
|
||||
jboolean IsEditBookmarksEnabled(JNIEnv* env);
|
||||
|
||||
void LoadEmptyPartnerBookmarkShimForTesting(
|
||||
@@ -159,6 +170,15 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
@@ -157,6 +168,15 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
jlong id,
|
||||
jint type);
|
||||
|
||||
@@ -1125,7 +1128,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
|
||||
void SetBookmarkTitle(JNIEnv* env,
|
||||
const base::android::JavaParamRef<jobject>& obj,
|
||||
jlong id,
|
||||
@@ -381,12 +401,16 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
@@ -348,12 +368,16 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
void DestroyJavaObject();
|
||||
|
||||
raw_ptr<Profile> profile_;
|
||||
@@ -1142,7 +1145,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
|
||||
|
||||
// Information about the Partner bookmarks (must check for IsLoaded()).
|
||||
// This is owned by profile.
|
||||
@@ -398,6 +422,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
@@ -365,6 +389,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
// Observes the profile destruction and creation.
|
||||
base::ScopedObservation<Profile, ProfileObserver> profile_observation_{this};
|
||||
|
||||
@@ -1150,13 +1153,13 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
|
||||
+ void FileSelectedImplOnUIThread(const base::FilePath& path,
|
||||
+ const std::string& contents);
|
||||
+
|
||||
// A means of accessing metadata about bookmarks.
|
||||
OptimizationGuideKeyedService* opt_guide_;
|
||||
|
||||
// Weak pointers for creating callbacks that won't call into a destroyed
|
||||
// object.
|
||||
base::WeakPtrFactory<BookmarkBridge> weak_ptr_factory_;
|
||||
diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/bookmarks/bookmark_html_writer.cc
|
||||
--- a/chrome/browser/bookmarks/bookmark_html_writer.cc
|
||||
+++ b/chrome/browser/bookmarks/bookmark_html_writer.cc
|
||||
@@ -26,6 +26,7 @@
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "base/task/thread_pool.h"
|
||||
#include "base/time/time.h"
|
||||
#include "base/values.h"
|
||||
@@ -1220,7 +1223,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
|
||||
diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java
|
||||
--- a/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java
|
||||
+++ b/chrome/browser/download/android/java/src/org/chromium/chrome/browser/download/dialogs/DownloadLocationDialogCoordinator.java
|
||||
@@ -37,12 +37,12 @@ import java.util.ArrayList;
|
||||
@@ -36,12 +36,12 @@ import java.util.ArrayList;
|
||||
public class DownloadLocationDialogCoordinator implements ModalDialogProperties.Controller {
|
||||
@NonNull
|
||||
private DownloadLocationDialogController mController;
|
||||
@@ -1236,7 +1239,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
|
||||
private long mTotalBytes;
|
||||
private @DownloadLocationDialogType int mDialogType;
|
||||
private String mSuggestedPath;
|
||||
@@ -131,7 +131,7 @@ public class DownloadLocationDialogCoordinator implements ModalDialogProperties.
|
||||
@@ -130,7 +130,7 @@ public class DownloadLocationDialogCoordinator implements ModalDialogProperties.
|
||||
* Called after retrieved the download directory options.
|
||||
* @param dirs An list of available download directories.
|
||||
*/
|
||||
@@ -1248,8 +1251,8 @@ 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
|
||||
@@ -5872,6 +5872,11 @@ const char kWebKioskEnableLacrosDescription[] =
|
||||
"ChromeOS. When disabled, the Ash-chrome will be used";
|
||||
@@ -6643,6 +6643,11 @@ const char kVcControlsUiDescription[] =
|
||||
|
||||
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
|
||||
+const char kBookmarksExportUseSafName[] = "Use saf for bookmarks export";
|
||||
@@ -1263,9 +1266,9 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
|
||||
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
|
||||
--- a/chrome/browser/flag_descriptions.h
|
||||
+++ b/chrome/browser/flag_descriptions.h
|
||||
@@ -3404,6 +3404,9 @@ extern const char kWebKioskEnableLacrosName[];
|
||||
extern const char kWebKioskEnableLacrosDescription[];
|
||||
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
@@ -3851,6 +3851,9 @@ extern const char kDisableLacrosTtsSupportDescription[];
|
||||
extern const char kVcControlsUiName[];
|
||||
extern const char kVcControlsUiDescription[];
|
||||
|
||||
+extern const char kBookmarksExportUseSafName[];
|
||||
+extern const char kBookmarksExportUseSafDescription[];
|
||||
@@ -1276,21 +1279,22 @@ 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
|
||||
@@ -174,6 +174,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
||||
&kBulkTabRestore,
|
||||
@@ -186,6 +186,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
||||
&kCastDeviceFilter,
|
||||
&kCloseAllTabsModalDialog,
|
||||
+ &kBookmarksExportUseSaf,
|
||||
&kClearOmniboxFocusAfterNavigation,
|
||||
&kCloseTabSuggestions,
|
||||
+ &kBookmarksExportUseSaf,
|
||||
&kCriticalPersistedTabData,
|
||||
&kCommerceCoupons,
|
||||
&kCCTBackgroundTab,
|
||||
@@ -854,6 +855,10 @@ const base::Feature kWebApkInstallService{"WebApkInstallService",
|
||||
const base::Feature kWebApkTrampolineOnInitialIntent{
|
||||
"WebApkTrampolineOnInitialIntent", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
@@ -1106,6 +1107,11 @@ BASE_FEATURE(kWebApkTrampolineOnInitialIntent,
|
||||
"WebApkTrampolineOnInitialIntent",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
|
||||
+// disabled by default because of an issue on Android 6.0
|
||||
+const base::Feature kBookmarksExportUseSaf{"BookmarksExportUseSaf",
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kBookmarksExportUseSaf,
|
||||
+ "BookmarksExportUseSaf",
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+
|
||||
static jboolean JNI_ChromeFeatureList_IsEnabled(
|
||||
JNIEnv* env,
|
||||
@@ -1298,29 +1302,29 @@ 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
|
||||
@@ -154,6 +154,7 @@ extern const base::Feature kToolbarMicIphAndroid;
|
||||
extern const base::Feature kToolbarUseHardwareBitmapDraw;
|
||||
extern const base::Feature kTrustedWebActivityLocationDelegation;
|
||||
extern const base::Feature kTrustedWebActivityNewDisclosure;
|
||||
+extern const base::Feature kBookmarksExportUseSaf;
|
||||
extern const base::Feature kTrustedWebActivityPostMessage;
|
||||
extern const base::Feature kTrustedWebActivityQualityEnforcement;
|
||||
extern const base::Feature kTrustedWebActivityQualityEnforcementForced;
|
||||
@@ -158,6 +158,7 @@ BASE_DECLARE_FEATURE(kDiscoverFeedMultiColumn);
|
||||
BASE_DECLARE_FEATURE(kTabStripRedesign);
|
||||
BASE_DECLARE_FEATURE(kTabSwitcherOnReturn);
|
||||
BASE_DECLARE_FEATURE(kTabToGTSAnimation);
|
||||
+BASE_DECLARE_FEATURE(kBookmarksExportUseSaf);
|
||||
BASE_DECLARE_FEATURE(kTestDefaultDisabled);
|
||||
BASE_DECLARE_FEATURE(kTestDefaultEnabled);
|
||||
BASE_DECLARE_FEATURE(kToolbarMicIphAndroid);
|
||||
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
|
||||
@@ -557,6 +557,7 @@ public abstract class ChromeFeatureList {
|
||||
public static final String WEB_APK_INSTALL_SERVICE = "WebApkInstallService";
|
||||
public static final String XSURFACE_METRICS_REPORTING = "XsurfaceMetricsReporting";
|
||||
public static final String WEB_OTP_CROSS_DEVICE_SIMPLE_STRING = "WebOtpCrossDeviceSimpleString";
|
||||
@@ -580,6 +580,7 @@ public abstract class ChromeFeatureList {
|
||||
public static final String USE_LIBUNWINDSTACK_NATIVE_UNWINDER_ANDROID =
|
||||
"UseLibunwindstackNativeUnwinderAndroid";
|
||||
public static final String VOICE_SEARCH_AUDIO_CAPTURE_POLICY = "VoiceSearchAudioCapturePolicy";
|
||||
+ public static final String BOOKMARKS_EXPORT_USESAF = "BookmarksExportUseSaf";
|
||||
|
||||
@NativeMethods
|
||||
interface Natives {
|
||||
public static final String VOICE_BUTTON_IN_TOP_TOOLBAR = "VoiceButtonInTopToolbar";
|
||||
public static final String VR_BROWSING_FEEDBACK = "VrBrowsingFeedback";
|
||||
public static final String WEB_FEED = "WebFeed";
|
||||
diff --git a/chrome/browser/importer/profile_writer.cc b/chrome/browser/importer/profile_writer.cc
|
||||
--- a/chrome/browser/importer/profile_writer.cc
|
||||
+++ b/chrome/browser/importer/profile_writer.cc
|
||||
@@ -105,12 +105,14 @@ void ProfileWriter::AddHistoryPage(const history::URLRows& page,
|
||||
@@ -106,12 +106,14 @@ void ProfileWriter::AddHistoryPage(const history::URLRows& page,
|
||||
HistoryServiceFactory::GetForProfile(profile_,
|
||||
ServiceAccessType::EXPLICIT_ACCESS)
|
||||
->AddPagesWithDetails(page, visit_source);
|
||||
@@ -1335,7 +1339,7 @@ diff --git a/chrome/browser/importer/profile_writer.cc b/chrome/browser/importer
|
||||
}
|
||||
|
||||
void ProfileWriter::AddHomepage(const GURL& home_page) {
|
||||
@@ -131,6 +133,16 @@ void ProfileWriter::AddBookmarks(
|
||||
@@ -132,6 +134,16 @@ void ProfileWriter::AddBookmarks(
|
||||
return;
|
||||
|
||||
BookmarkModel* model = BookmarkModelFactory::GetForBrowserContext(profile_);
|
||||
@@ -1378,7 +1382,7 @@ diff --git a/chrome/browser/importer/profile_writer.h b/chrome/browser/importer/
|
||||
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
|
||||
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
|
||||
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
|
||||
@@ -99,6 +99,8 @@ public final class ChromePreferenceKeys {
|
||||
@@ -113,6 +113,8 @@ public final class ChromePreferenceKeys {
|
||||
public static final String BOOKMARKS_LAST_USED_URL = "enhanced_bookmark_last_used_url";
|
||||
public static final String BOOKMARKS_LAST_USED_PARENT =
|
||||
"enhanced_bookmark_last_used_parent_folder";
|
||||
@@ -1387,14 +1391,14 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
|
||||
|
||||
/**
|
||||
* Whether Chrome is set as the default browser.
|
||||
@@ -1017,6 +1019,7 @@ public final class ChromePreferenceKeys {
|
||||
ASSISTANT_VOICE_SEARCH_ENABLED,
|
||||
@@ -1037,6 +1039,7 @@ public final class ChromePreferenceKeys {
|
||||
AUTOFILL_ASSISTANT_PROACTIVE_HELP_ENABLED,
|
||||
APP_LAUNCH_LAST_KNOWN_ACTIVE_TAB_STATE,
|
||||
APP_LAUNCH_SEARCH_ENGINE_HAD_LOGO,
|
||||
+ BOOKMARKS_LAST_EXPORT_URI,
|
||||
APPLICATION_OVERRIDE_LANGUAGE,
|
||||
BLUETOOTH_NOTIFICATION_IDS,
|
||||
CHROME_SURVEY_DOWNLOAD_ATTEMPTS.pattern(),
|
||||
CHROME_SURVEY_PROMPT_DISPLAYED_TIMESTAMP.pattern(),
|
||||
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
|
||||
@@ -1426,7 +1430,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
|
||||
@@ -383,6 +383,9 @@ static_library("common") {
|
||||
@@ -401,6 +401,9 @@ static_library("common_lib") {
|
||||
sources += [
|
||||
"media/chrome_media_drm_bridge_client.cc",
|
||||
"media/chrome_media_drm_bridge_client.h",
|
||||
@@ -1439,7 +1443,7 @@ diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn
|
||||
diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
|
||||
--- a/chrome/utility/BUILD.gn
|
||||
+++ b/chrome/utility/BUILD.gn
|
||||
@@ -78,8 +78,6 @@ static_library("utility") {
|
||||
@@ -89,8 +89,6 @@ static_library("utility") {
|
||||
|
||||
if (!is_android) {
|
||||
sources += [
|
||||
@@ -1448,7 +1452,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",
|
||||
@@ -196,6 +194,11 @@ static_library("utility") {
|
||||
@@ -215,6 +213,11 @@ static_library("utility") {
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1463,7 +1467,7 @@ diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
|
||||
diff --git a/chrome/utility/importer/bookmark_html_reader.cc b/chrome/utility/importer/bookmark_html_reader.cc
|
||||
--- a/chrome/utility/importer/bookmark_html_reader.cc
|
||||
+++ b/chrome/utility/importer/bookmark_html_reader.cc
|
||||
@@ -16,7 +16,9 @@
|
||||
@@ -17,7 +17,9 @@
|
||||
#include "base/strings/utf_string_conversions.h"
|
||||
#include "base/time/time.h"
|
||||
#include "chrome/common/importer/imported_bookmark_entry.h"
|
||||
@@ -1563,7 +1567,7 @@ diff --git a/chrome/utility/importer/bookmark_html_reader.h b/chrome/utility/imp
|
||||
diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java
|
||||
--- a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java
|
||||
+++ b/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java
|
||||
@@ -39,6 +39,7 @@ import org.chromium.base.task.AsyncTask;
|
||||
@@ -41,6 +41,7 @@ import org.chromium.base.task.AsyncTask;
|
||||
import org.chromium.base.task.PostTask;
|
||||
import org.chromium.base.task.TaskTraits;
|
||||
import org.chromium.ui.R;
|
||||
@@ -1571,7 +1575,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
|
||||
import org.chromium.ui.UiUtils;
|
||||
import org.chromium.ui.permissions.PermissionConstants;
|
||||
|
||||
@@ -58,6 +59,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
@@ -64,6 +65,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
private static final String TAG = "SelectFileDialog";
|
||||
private static final String IMAGE_TYPE = "image";
|
||||
private static final String VIDEO_TYPE = "video";
|
||||
@@ -1579,7 +1583,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
|
||||
private static final String AUDIO_TYPE = "audio";
|
||||
private static final String ALL_TYPES = "*/*";
|
||||
|
||||
@@ -241,6 +243,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
@@ -258,6 +260,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
mFileTypes = fileTypes;
|
||||
}
|
||||
|
||||
@@ -1591,16 +1595,16 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
|
||||
/**
|
||||
* Creates and starts an intent based on the passed fileTypes and capture value.
|
||||
* @param fileTypes MIME types requested (i.e. "image/*")
|
||||
@@ -267,7 +274,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
@@ -284,7 +291,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
List<String> missingPermissions = new ArrayList<>();
|
||||
String storagePermission = Manifest.permission.READ_EXTERNAL_STORAGE;
|
||||
boolean shouldUsePhotoPicker = shouldUsePhotoPicker();
|
||||
- if (shouldUsePhotoPicker) {
|
||||
+ if (shouldUsePhotoPicker || shouldShowHtmlTypes()) {
|
||||
if (BuildInfo.isAtLeastT()) {
|
||||
if (!window.hasPermission(PermissionConstants.READ_MEDIA_IMAGES)
|
||||
&& shouldShowImageTypes()) {
|
||||
@@ -308,7 +315,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
// The permission scenario for accessing media has evolved a bit over the years:
|
||||
// Early on, READ_EXTERNAL_STORAGE was required to access media, but that permission was
|
||||
// later deprecated. In its place (starting with Android T) READ_MEDIA_IMAGES and
|
||||
@@ -333,7 +340,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
}
|
||||
|
||||
// TODO(finnur): Remove once we figure out the cause of crbug.com/950024.
|
||||
@@ -1609,7 +1613,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
|
||||
if (permissions.length != requestPermissions.length) {
|
||||
throw new RuntimeException(
|
||||
String.format("Permissions arrays misaligned: %d != %d",
|
||||
@@ -322,7 +329,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
@@ -347,7 +354,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1618,7 +1622,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
|
||||
if (permissions[i].equals(storagePermission)
|
||||
|| permissions[i].equals(PermissionConstants.READ_MEDIA_IMAGES)
|
||||
|| permissions[i].equals(
|
||||
@@ -523,6 +530,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
@@ -553,6 +560,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
}
|
||||
if (!mimeTypes.contains(mimeType)) mimeTypes.add(mimeType);
|
||||
}
|
||||
@@ -1626,7 +1630,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
|
||||
return mimeTypes;
|
||||
}
|
||||
|
||||
@@ -828,6 +836,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
@@ -881,6 +889,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
|
||||
return countAcceptTypesFor(superType) == mFileTypes.size();
|
||||
}
|
||||
|
||||
@@ -1640,9 +1644,9 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
|
||||
diff --git a/ui/android/java/strings/android_ui_strings.grd b/ui/android/java/strings/android_ui_strings.grd
|
||||
--- a/ui/android/java/strings/android_ui_strings.grd
|
||||
+++ b/ui/android/java/strings/android_ui_strings.grd
|
||||
@@ -178,6 +178,9 @@
|
||||
<message name="IDS_OPENING_FILE_ERROR" desc="Toast when the browser is unable to open a file for upload. [CHAR_LIMIT=32]">
|
||||
Failed to open selected file
|
||||
@@ -184,6 +184,9 @@
|
||||
<message name="IDS_PERMISSION_DENIED_ERROR" desc="Toast when the browser is unable to open a file for upload due to missing permission. [CHAR_LIMIT=NONE]">
|
||||
Unable to select media due to denied permissions
|
||||
</message>
|
||||
+ <message name="IDS_SAVING_FILE_ERROR" desc="Toast when the browser is unable to save a file. [CHAR-LIMIT=32]">
|
||||
+ Failed to save selected file
|
||||
@@ -1653,8 +1657,8 @@ diff --git a/ui/android/java/strings/android_ui_strings.grd b/ui/android/java/st
|
||||
diff --git a/ui/shell_dialogs/select_file_dialog.h b/ui/shell_dialogs/select_file_dialog.h
|
||||
--- a/ui/shell_dialogs/select_file_dialog.h
|
||||
+++ b/ui/shell_dialogs/select_file_dialog.h
|
||||
@@ -205,6 +205,8 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog
|
||||
void* params);
|
||||
@@ -210,6 +210,8 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog
|
||||
const GURL* caller = nullptr);
|
||||
bool HasMultipleFileTypeChoices();
|
||||
|
||||
+ virtual void ShowToast(const std::string& message) = 0;
|
||||
@@ -1665,7 +1669,7 @@ diff --git a/ui/shell_dialogs/select_file_dialog.h b/ui/shell_dialogs/select_fil
|
||||
diff --git a/ui/shell_dialogs/select_file_dialog_android.cc b/ui/shell_dialogs/select_file_dialog_android.cc
|
||||
--- a/ui/shell_dialogs/select_file_dialog_android.cc
|
||||
+++ b/ui/shell_dialogs/select_file_dialog_android.cc
|
||||
@@ -140,6 +140,12 @@ void SelectFileDialogImpl::SelectFileImpl(
|
||||
@@ -142,6 +142,12 @@ void SelectFileDialogImpl::SelectFileImpl(
|
||||
owning_window->GetJavaObject());
|
||||
}
|
||||
|
||||
@@ -1681,9 +1685,9 @@ diff --git a/ui/shell_dialogs/select_file_dialog_android.cc b/ui/shell_dialogs/s
|
||||
diff --git a/ui/shell_dialogs/select_file_dialog_android.h b/ui/shell_dialogs/select_file_dialog_android.h
|
||||
--- a/ui/shell_dialogs/select_file_dialog_android.h
|
||||
+++ b/ui/shell_dialogs/select_file_dialog_android.h
|
||||
@@ -57,6 +57,8 @@ class SelectFileDialogImpl : public SelectFileDialog {
|
||||
gfx::NativeWindow owning_window,
|
||||
void* params) override;
|
||||
@@ -58,6 +58,8 @@ class SelectFileDialogImpl : public SelectFileDialog {
|
||||
void* params,
|
||||
const GURL* caller) override;
|
||||
|
||||
+ void ShowToast(const std::string& message) override;
|
||||
+
|
||||
|
||||
@@ -8,6 +8,8 @@ open external links in incognito flag.
|
||||
Flags are mutually exclusive.
|
||||
|
||||
See also: https://github.com/bromite/bromite/issues/1474
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../java/res/xml/privacy_preferences.xml | 10 ++++++++
|
||||
.../browser/LaunchIntentDispatcher.java | 22 +++++++++++++++++
|
||||
@@ -20,7 +22,7 @@ See also: https://github.com/bromite/bromite/issues/1474
|
||||
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
|
||||
@@ -55,6 +55,16 @@
|
||||
@@ -58,6 +58,16 @@ found in the LICENSE file.
|
||||
android:fragment="org.chromium.chrome.browser.privacy.settings.DoNotTrackSettings"
|
||||
android:key="do_not_track"
|
||||
android:title="@string/do_not_track_title"/>
|
||||
@@ -40,7 +42,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDispatcher.java
|
||||
@@ -44,6 +44,7 @@ import org.chromium.chrome.browser.notifications.NotificationPlatformBridge;
|
||||
@@ -45,6 +45,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;
|
||||
@@ -48,7 +50,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
|
||||
import org.chromium.chrome.browser.translate.TranslateIntentHandler;
|
||||
import org.chromium.chrome.browser.util.AndroidTaskUtils;
|
||||
import org.chromium.chrome.browser.vr.VrModuleProvider;
|
||||
@@ -57,6 +58,8 @@ import java.lang.annotation.Retention;
|
||||
@@ -58,6 +59,8 @@ import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.util.Set;
|
||||
|
||||
@@ -57,7 +59,7 @@ 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.
|
||||
@@ -273,6 +276,9 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
|
||||
@@ -268,6 +271,9 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
|
||||
*/
|
||||
public static boolean isCustomTabIntent(Intent intent) {
|
||||
if (intent == null) return false;
|
||||
@@ -67,7 +69,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
|
||||
if (CustomTabsIntent.shouldAlwaysUseBrowserUI(intent)
|
||||
|| !intent.hasExtra(CustomTabsIntent.EXTRA_SESSION)) {
|
||||
return false;
|
||||
@@ -292,6 +298,10 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
|
||||
@@ -287,6 +293,10 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
|
||||
newIntent.setData(uri);
|
||||
newIntent.setClassName(context, CustomTabActivity.class.getName());
|
||||
|
||||
@@ -78,7 +80,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
|
||||
// Since configureIntentForResizableCustomTab() might change the componenet/class
|
||||
// associated with the passed intent, it needs to be called after #setClassName(context,
|
||||
// CustomTabActivity.class.getName());
|
||||
@@ -411,6 +421,18 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
|
||||
@@ -438,6 +448,18 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
|
||||
|
||||
if (Intent.ACTION_VIEW.equals(newIntent.getAction())
|
||||
&& !IntentHandler.wasIntentSenderChrome(newIntent)) {
|
||||
@@ -100,7 +102,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
|
||||
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;
|
||||
@@ -35,6 +35,9 @@ import org.chromium.components.browser_ui.widget.TintedDrawable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@@ -110,22 +112,22 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Inco
|
||||
/**
|
||||
* A model class that parses the incoming intent for incognito Custom Tabs specific customization
|
||||
* data.
|
||||
@@ -109,6 +112,9 @@ public class IncognitoCustomTabIntentDataProvider extends BrowserServicesIntentD
|
||||
@@ -108,6 +111,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);
|
||||
return ChromeFeatureList.sCctIncognitoAvailableToThirdParty.isEnabled();
|
||||
}
|
||||
|
||||
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
|
||||
@@ -83,6 +83,9 @@ public class PrivacySettings
|
||||
private ViewGroup mDialogContainer;
|
||||
private BottomSheetController mBottomSheetController;
|
||||
@@ -76,6 +76,9 @@ public class PrivacySettings
|
||||
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
|
||||
private IncognitoLockSettings mIncognitoLockSettings;
|
||||
|
||||
+ private ChromeSwitchPreference allowCustomTabIntentsPref;
|
||||
+ private ChromeSwitchPreference openExternalLinksPref;
|
||||
@@ -133,7 +135,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
|
||||
@Override
|
||||
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
|
||||
PrivacyPreferencesManagerImpl privacyPrefManager =
|
||||
@@ -154,6 +157,9 @@ public class PrivacySettings
|
||||
@@ -135,6 +138,9 @@ public class PrivacySettings
|
||||
updatePreferences();
|
||||
}
|
||||
|
||||
@@ -143,7 +145,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();
|
||||
@@ -170,6 +176,14 @@ public class PrivacySettings
|
||||
@@ -151,6 +157,14 @@ public class PrivacySettings
|
||||
} else if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
|
||||
UserPrefs.get(Profile.getLastUsedRegularProfile())
|
||||
.setBoolean(Pref.SEARCH_SUGGEST_ENABLED, (boolean) newValue);
|
||||
@@ -158,7 +160,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -192,6 +206,16 @@ public class PrivacySettings
|
||||
@@ -173,6 +187,16 @@ public class PrivacySettings
|
||||
canMakePaymentPref.setChecked(prefService.getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
|
||||
}
|
||||
|
||||
@@ -194,7 +196,7 @@ diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/TabAsso
|
||||
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
|
||||
@@ -4626,6 +4626,21 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
@@ -4783,6 +4783,21 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></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>
|
||||
|
||||
@@ -3,6 +3,8 @@ Date: Tue, 31 Jan 2017 22:12:27 -0500
|
||||
Subject: Add exit menu item
|
||||
|
||||
Corrected Exit functionality
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/android/java/res/menu/main_menu.xml | 6 ++++++
|
||||
.../org/chromium/chrome/browser/ApplicationLifetime.java | 2 ++
|
||||
@@ -15,17 +17,17 @@ Corrected Exit functionality
|
||||
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
|
||||
--- a/chrome/android/java/res/menu/main_menu.xml
|
||||
+++ b/chrome/android/java/res/menu/main_menu.xml
|
||||
@@ -158,6 +158,9 @@
|
||||
android:icon="@drawable/ic_business" />
|
||||
@@ -161,6 +161,9 @@ found in the LICENSE file.
|
||||
<item android:id="@+id/managed_by_menu_id"
|
||||
android:title="@string/managed" />
|
||||
android:title="@string/managed_browser"
|
||||
android:icon="@drawable/ic_business" />
|
||||
+ <item android:id="@+id/exit_id"
|
||||
+ android:title="@string/menu_exit"
|
||||
+ android:icon="@drawable/ic_exit_to_app_white_24dp" />
|
||||
</group>
|
||||
|
||||
<!-- Items shown only in the tab switcher -->
|
||||
@@ -184,6 +187,9 @@
|
||||
@@ -187,6 +190,9 @@ found in the LICENSE file.
|
||||
<item android:id="@id/preferences_id"
|
||||
android:title="@string/menu_settings"
|
||||
android:icon="@drawable/settings_cog" />
|
||||
@@ -57,7 +59,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ApplicationLife
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
|
||||
@@ -215,6 +215,8 @@ import java.util.HashSet;
|
||||
@@ -225,6 +225,8 @@ import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
@@ -66,7 +68,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.
|
||||
@@ -2137,6 +2139,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
@@ -2202,6 +2204,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
} else if (id == R.id.close_tab) {
|
||||
getCurrentTabModel().closeTab(currentTab, true, false, true);
|
||||
RecordUserAction.record("MobileTabClosed");
|
||||
@@ -78,7 +80,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
|
||||
@@ -65,6 +65,7 @@ import org.chromium.chrome.R;
|
||||
@@ -63,6 +63,7 @@ import org.chromium.chrome.R;
|
||||
import org.chromium.chrome.browser.ActivityTabProvider;
|
||||
import org.chromium.chrome.browser.ActivityUtils;
|
||||
import org.chromium.chrome.browser.AppHooks;
|
||||
@@ -86,7 +88,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;
|
||||
@@ -2393,6 +2394,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
@@ -2332,6 +2333,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -117,7 +119,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
|
||||
@@ -3341,6 +3341,9 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
@@ -3470,6 +3470,9 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
<message name="IDS_MENU_AUTO_DARK_WEB_CONTENTS" desc="Menu item in Chrome's overflow/options menu. When Chrome's browser UI is set to dark theme and this option is checked, sites will have a dark theme automatically applied as well. [CHAR_LIMIT=24]">
|
||||
Dark theme
|
||||
</message>
|
||||
|
||||
@@ -4,6 +4,8 @@ Subject: Add flag for omnibox autocomplete filtering
|
||||
|
||||
Adds a flag that restricts whether search history, clipboard, bookmarks
|
||||
and internal chrome:// pages will be used for the autocomplete results.
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/about_flags.cc | 22 ++++++++++++++++++-
|
||||
.../browser/autocomplete_controller.cc | 11 ++++++++++
|
||||
@@ -15,7 +17,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
|
||||
@@ -466,6 +466,22 @@ const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = {
|
||||
@@ -539,6 +539,22 @@ const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = {
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
@@ -38,8 +40,8 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNone[] = {
|
||||
{"mode", "always-none"}};
|
||||
const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNewTab[] = {
|
||||
@@ -3868,7 +3884,11 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
kOsMac | kOsLinux | kOsLacros | kOsWin,
|
||||
@@ -4428,7 +4444,11 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
kOsMac | kOsLinux | kOsWin,
|
||||
FEATURE_VALUE_TYPE(features::kSystemNotifications)},
|
||||
#endif // BUILDFLAG(ENABLE_SYSTEM_NOTIFICATIONS) && !BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
-#if BUILDFLAG(IS_ANDROID)
|
||||
@@ -62,11 +64,11 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/
|
||||
+#include "base/command_line.h"
|
||||
#include "base/feature_list.h"
|
||||
#include "base/format_macros.h"
|
||||
#include "base/metrics/histogram.h"
|
||||
@@ -292,6 +294,15 @@ AutocompleteController::AutocompleteController(
|
||||
#include "base/metrics/histogram_functions.h"
|
||||
@@ -337,6 +339,15 @@ AutocompleteController::AutocompleteController(
|
||||
is_cros_launcher_(is_cros_launcher),
|
||||
search_service_worker_signal_sent_(false),
|
||||
template_url_service_(provider_client_->GetTemplateURLService()) {
|
||||
provider_types &= ~OmniboxFieldTrial::GetDisabledProviderTypes();
|
||||
+ if (base::CommandLine::ForCurrentProcess()->HasSwitch("omnibox-autocomplete-filtering")) {
|
||||
+ const std::string flag_value = base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII("omnibox-autocomplete-filtering");
|
||||
+ provider_types &= AutocompleteProvider::TYPE_KEYWORD | AutocompleteProvider::TYPE_SEARCH |
|
||||
@@ -76,13 +78,13 @@ diff --git a/components/omnibox/browser/autocomplete_controller.cc b/components/
|
||||
+ if (!base::Contains(flag_value, "chrome"))
|
||||
+ provider_types &= ~AutocompleteProvider::TYPE_BUILTIN;
|
||||
+ }
|
||||
if (provider_types & AutocompleteProvider::TYPE_BOOKMARK)
|
||||
providers_.push_back(new BookmarkProvider(provider_client_.get()));
|
||||
if (provider_types & AutocompleteProvider::TYPE_BUILTIN)
|
||||
provider_types &= ~OmniboxFieldTrial::GetDisabledProviderTypes();
|
||||
|
||||
if (OmniboxFieldTrial::kAutocompleteStabilityAsyncProvidersFirst.Get()) {
|
||||
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
|
||||
@@ -472,6 +472,9 @@ void HistoryURLProvider::Start(const AutocompleteInput& input,
|
||||
@@ -475,6 +475,9 @@ void HistoryURLProvider::Start(const AutocompleteInput& input,
|
||||
if (fixed_up_input.type() != metrics::OmniboxInputType::QUERY)
|
||||
matches_.push_back(what_you_typed_match);
|
||||
|
||||
@@ -103,7 +105,7 @@ diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/
|
||||
#include "base/feature_list.h"
|
||||
#include "base/i18n/break_iterator.h"
|
||||
#include "base/i18n/case_conversion.h"
|
||||
@@ -646,6 +647,9 @@ void SearchProvider::Run(bool query_is_private) {
|
||||
@@ -671,6 +672,9 @@ void SearchProvider::Run(bool query_is_private) {
|
||||
}
|
||||
|
||||
void SearchProvider::DoHistoryQuery(bool minimal_changes) {
|
||||
@@ -116,16 +118,16 @@ diff --git a/components/omnibox/browser/search_provider.cc b/components/omnibox/
|
||||
diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/url_fixer.cc
|
||||
--- a/components/url_formatter/url_fixer.cc
|
||||
+++ b/components/url_formatter/url_fixer.cc
|
||||
@@ -9,6 +9,8 @@
|
||||
#include <algorithm>
|
||||
@@ -7,6 +7,8 @@
|
||||
#include <stddef.h>
|
||||
|
||||
#include "base/check_op.h"
|
||||
+#include "base/containers/contains.h"
|
||||
+#include "base/command_line.h"
|
||||
#include "base/files/file_path.h"
|
||||
#include "base/files/file_util.h"
|
||||
#include "base/ranges/algorithm.h"
|
||||
@@ -607,6 +609,8 @@ GURL FixupURL(const std::string& text, const std::string& desired_tld) {
|
||||
#include "base/i18n/char_iterator.h"
|
||||
@@ -608,6 +610,8 @@ GURL FixupURL(const std::string& text, const std::string& desired_tld) {
|
||||
|
||||
FixupHost(trimmed, parts.host, parts.scheme.is_valid(), desired_tld, &url);
|
||||
if (chrome_url && !parts.host.is_valid())
|
||||
|
||||
@@ -2,19 +2,20 @@ From: Wengling Chen <feiyu2817@gmail.com>
|
||||
Date: Mon, 1 Feb 2021 19:18:55 +0200
|
||||
Subject: Add flag for save-data-header
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/about_flags.cc | 5 ++++-
|
||||
chrome/browser/flag_descriptions.cc | 4 ++++
|
||||
chrome/browser/flag_descriptions.h | 3 +++
|
||||
.../browser/loader/browser_initiated_resource_request.cc | 8 ++++++++
|
||||
services/network/public/cpp/features.cc | 5 +++++
|
||||
services/network/public/cpp/features.h | 3 ++-
|
||||
6 files changed, 26 insertions(+), 2 deletions(-)
|
||||
services/network/public/cpp/features.h | 2 +-
|
||||
6 files changed, 25 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
--- a/chrome/browser/about_flags.cc
|
||||
+++ b/chrome/browser/about_flags.cc
|
||||
@@ -4443,7 +4443,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
@@ -5018,7 +5018,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
{"force-text-direction", flag_descriptions::kForceTextDirectionName,
|
||||
flag_descriptions::kForceTextDirectionDescription, kOsAll,
|
||||
MULTI_VALUE_TYPE(kForceTextDirectionChoices)},
|
||||
@@ -29,9 +30,9 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
|
||||
--- a/chrome/browser/flag_descriptions.cc
|
||||
+++ b/chrome/browser/flag_descriptions.cc
|
||||
@@ -1099,6 +1099,10 @@ const char kDisableKeepaliveFetchDescription[] =
|
||||
"Disable fetch with keepalive set "
|
||||
"(https://fetch.spec.whatwg.org/#request-keepalive-flag).";
|
||||
@@ -1222,6 +1222,10 @@ const char kDeprecateAltBasedSixPackDescription[] =
|
||||
"Show deprecation notifications and disable functionality for Alt based "
|
||||
"six pack deprecations. The Search based versions continue to work.";
|
||||
|
||||
+const char kEnableSaveDataHeaderName[] = "Enable save-data header";
|
||||
+const char kEnableSaveDataHeaderDescription[] =
|
||||
@@ -43,9 +44,9 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
|
||||
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
|
||||
--- a/chrome/browser/flag_descriptions.h
|
||||
+++ b/chrome/browser/flag_descriptions.h
|
||||
@@ -583,6 +583,9 @@ extern const char kDeprecateAltBasedSixPackDescription[];
|
||||
extern const char kDisableKeepaliveFetchName[];
|
||||
extern const char kDisableKeepaliveFetchDescription[];
|
||||
@@ -650,6 +650,9 @@ extern const char kDeprecateAltClickDescription[];
|
||||
extern const char kDeprecateAltBasedSixPackName[];
|
||||
extern const char kDeprecateAltBasedSixPackDescription[];
|
||||
|
||||
+extern const char kEnableSaveDataHeaderName[];
|
||||
+extern const char kEnableSaveDataHeaderDescription[];
|
||||
@@ -83,30 +84,29 @@ 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
|
||||
@@ -20,6 +20,11 @@ namespace features {
|
||||
const base::Feature kExpectCTReporting{"ExpectCTReporting",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
@@ -20,6 +20,11 @@ BASE_FEATURE(kExpectCTReporting,
|
||||
"ExpectCTReporting",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
|
||||
+
|
||||
+// Enable save-data header separately (without enabled data reduction service).
|
||||
+const base::Feature kEnableSaveDataHeader{"EnableSaveDataHeader",
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kEnableSaveDataHeader,
|
||||
+ "EnableSaveDataHeader",
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+
|
||||
const base::Feature kNetworkErrorLogging{"NetworkErrorLogging",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
|
||||
BASE_FEATURE(kNetworkErrorLogging,
|
||||
"NetworkErrorLogging",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
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
|
||||
@@ -47,7 +47,8 @@ COMPONENT_EXPORT(NETWORK_CPP)
|
||||
extern const base::Feature kDisableKeepaliveFetch;
|
||||
@@ -50,7 +50,7 @@ extern const base::FeatureParam<TrustTokenOriginTrialSpec>
|
||||
kTrustTokenOperationsRequiringOriginTrial;
|
||||
COMPONENT_EXPORT(NETWORK_CPP)
|
||||
extern const base::Feature kOpaqueResponseBlockingV01;
|
||||
extern const base::FeatureParam<bool> kPlatformProvidedTrustTokenIssuance;
|
||||
-
|
||||
+COMPONENT_EXPORT(NETWORK_CPP)
|
||||
+extern const base::Feature kEnableSaveDataHeader;
|
||||
+COMPONENT_EXPORT(NETWORK_CPP) BASE_DECLARE_FEATURE(kEnableSaveDataHeader);
|
||||
COMPONENT_EXPORT(NETWORK_CPP)
|
||||
extern const base::Feature kTrustTokens;
|
||||
BASE_DECLARE_FEATURE(kWebSocketReassembleShortMessages);
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -5,6 +5,8 @@ Subject: Add flag to configure maximum connections per host
|
||||
With the introduction of this flag it is possible to increase the maximum
|
||||
allowed connections per host; this can however be detrimental to devices
|
||||
with limited CPU/memory resources and it is disabled by default.
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/about_flags.cc | 8 ++++++++
|
||||
chrome/browser/flag_descriptions.cc | 4 ++++
|
||||
@@ -19,8 +21,8 @@ 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
|
||||
@@ -882,6 +882,11 @@ const FeatureEntry::FeatureVariation
|
||||
std::size(kIsolatedPrerenderPrefetchLimitFifteen), nullptr},
|
||||
@@ -1097,6 +1097,11 @@ const FeatureEntry::Choice kForceColorProfileChoices[] = {
|
||||
switches::kForceDisplayColorProfile, "hdr10"},
|
||||
};
|
||||
|
||||
+const FeatureEntry::Choice kMaxConnectionsPerHostChoices[] = {
|
||||
@@ -31,7 +33,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
const FeatureEntry::Choice kMemlogModeChoices[] = {
|
||||
{flags_ui::kGenericExperimentChoiceDisabled, "", ""},
|
||||
{flag_descriptions::kMemlogModeMinimal, heap_profiling::kMemlogMode,
|
||||
@@ -4417,6 +4422,9 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
@@ -4917,6 +4922,9 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
flag_descriptions::kAndroidPictureInPictureAPIName,
|
||||
flag_descriptions::kAndroidPictureInPictureAPIDescription, kOsAndroid,
|
||||
FEATURE_VALUE_TYPE(media::kPictureInPictureAPI)},
|
||||
@@ -44,7 +46,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
|
||||
@@ -1600,6 +1600,10 @@ const char kUnthrottledNestedTimeoutDescription[] =
|
||||
@@ -1830,6 +1830,10 @@ const char kUnthrottledNestedTimeoutDescription[] =
|
||||
"websites abusing the API will still eventually have their setTimeouts "
|
||||
"clamped.";
|
||||
|
||||
@@ -58,7 +60,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
|
||||
@@ -903,6 +903,9 @@ extern const char kLogJsConsoleMessagesDescription[];
|
||||
@@ -1037,6 +1037,9 @@ extern const char kLogJsConsoleMessagesDescription[];
|
||||
extern const char kUnthrottledNestedTimeoutName[];
|
||||
extern const char kUnthrottledNestedTimeoutDescription[];
|
||||
|
||||
|
||||
@@ -3,31 +3,33 @@ Date: Thu, 25 Oct 2018 23:13:34 +0200
|
||||
Subject: Add flag to control video playback resume feature
|
||||
|
||||
Disable it by default on Android as it is everywhere else
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/about_flags.cc | 4 ++++
|
||||
chrome/browser/flag_descriptions.cc | 5 +++++
|
||||
chrome/browser/flag_descriptions.h | 3 +++
|
||||
media/base/media_switches.cc | 4 ----
|
||||
4 files changed, 12 insertions(+), 4 deletions(-)
|
||||
media/base/media_switches.cc | 8 ++------
|
||||
4 files changed, 14 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
--- a/chrome/browser/about_flags.cc
|
||||
+++ b/chrome/browser/about_flags.cc
|
||||
@@ -3168,6 +3168,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
flag_descriptions::kWebRtcRemoteEventLogName,
|
||||
flag_descriptions::kWebRtcRemoteEventLogDescription, kOsDesktop,
|
||||
FEATURE_VALUE_TYPE(features::kWebRtcRemoteEventLog)},
|
||||
@@ -3730,6 +3730,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
SINGLE_VALUE_TYPE(extensions::switches::kExtensionsOnChromeURLs)},
|
||||
#endif // ENABLE_EXTENSIONS
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
+ {"resume-background-video",
|
||||
+ flag_descriptions::kResumeBackgroundVideoName,
|
||||
+ flag_descriptions::kResumeBackgroundVideoDescription, kOsAll,
|
||||
+ FEATURE_VALUE_TYPE(media::kResumeBackgroundVideo)},
|
||||
#endif
|
||||
{"enable-webrtc-srtp-aes-gcm", flag_descriptions::kWebrtcSrtpAesGcmName,
|
||||
flag_descriptions::kWebrtcSrtpAesGcmDescription, kOsAll,
|
||||
{"osk-resizes-visual-viewport-by-default",
|
||||
flag_descriptions::kEnableOskResizesVisualViewportByDefaultName,
|
||||
flag_descriptions::kEnableOskResizesVisualViewportByDefaultDescription,
|
||||
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
|
||||
@@ -1183,6 +1183,11 @@ const char kEnablePenetratingImageSelectionDescription[] =
|
||||
@@ -1317,6 +1317,11 @@ const char kEnablePenetratingImageSelectionDescription[] =
|
||||
"Enables image options to be surfaced in the context menu for nodes "
|
||||
"covered by transparent overlays.";
|
||||
|
||||
@@ -42,7 +44,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
|
||||
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
|
||||
--- a/chrome/browser/flag_descriptions.h
|
||||
+++ b/chrome/browser/flag_descriptions.h
|
||||
@@ -646,6 +646,9 @@ extern const char kEnablePortalsDescription[];
|
||||
@@ -722,6 +722,9 @@ extern const char kEnablePortalsDescription[];
|
||||
extern const char kEnablePortalsCrossOriginName[];
|
||||
extern const char kEnablePortalsCrossOriginDescription[];
|
||||
|
||||
@@ -55,17 +57,20 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
|
||||
diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
|
||||
--- a/media/base/media_switches.cc
|
||||
+++ b/media/base/media_switches.cc
|
||||
@@ -276,11 +276,7 @@ const base::Feature kPreloadMetadataLazyLoad{"PreloadMetadataLazyLoad",
|
||||
@@ -316,12 +316,8 @@ BASE_FEATURE(kPreloadMetadataLazyLoad,
|
||||
// Let videos be resumed via remote controls (for example, the notification)
|
||||
// when in background.
|
||||
const base::Feature kResumeBackgroundVideo {
|
||||
"resume-background-video",
|
||||
BASE_FEATURE(kResumeBackgroundVideo,
|
||||
- "resume-background-video",
|
||||
-#if BUILDFLAG(IS_ANDROID)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
-#else
|
||||
base::FEATURE_DISABLED_BY_DEFAULT
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT
|
||||
-#endif
|
||||
};
|
||||
+ "resume-background-video", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT // in Bromite
|
||||
);
|
||||
|
||||
// Experimental: Try to avoid destroying the media player when transferring a
|
||||
// When enabled, MediaCapabilities will check with GPU Video Accelerator
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,6 +2,7 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sun, 18 Nov 2018 13:06:49 +0100
|
||||
Subject: Add flag to disable IPv6 probes
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/about_flags.cc | 4 ++++
|
||||
chrome/browser/flag_descriptions.cc | 4 ++++
|
||||
@@ -9,14 +10,14 @@ Subject: Add flag to disable IPv6 probes
|
||||
components/subresource_filter/tools/BUILD.gn | 6 ++++++
|
||||
.../url_formatter/spoof_checks/top_domains/BUILD.gn | 3 ++-
|
||||
net/dns/host_resolver_manager.cc | 9 ++++++++-
|
||||
services/network/public/cpp/features.cc | 4 ++++
|
||||
services/network/public/cpp/features.h | 2 ++
|
||||
services/network/public/cpp/features.cc | 5 +++++
|
||||
services/network/public/cpp/features.h | 1 +
|
||||
8 files changed, 33 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
--- a/chrome/browser/about_flags.cc
|
||||
+++ b/chrome/browser/about_flags.cc
|
||||
@@ -5333,6 +5333,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
@@ -6166,6 +6166,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
{"enable-reader-mode-in-cct", flag_descriptions::kReaderModeInCCTName,
|
||||
flag_descriptions::kReaderModeInCCTDescription, kOsAndroid,
|
||||
FEATURE_VALUE_TYPE(chrome::android::kReaderModeInCCT)},
|
||||
@@ -26,13 +27,13 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
+ FEATURE_VALUE_TYPE(network::features::kIPv6Probing)},
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
|
||||
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
|
||||
{"shopping-list", commerce::flag_descriptions::kShoppingListName,
|
||||
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
|
||||
@@ -3017,6 +3017,10 @@ const char kCCTResizableForThirdPartiesName[] =
|
||||
const char kCCTResizableForThirdPartiesDescription[] =
|
||||
"Enable bottom sheet Custom Tabs for third party apps.";
|
||||
@@ -3517,6 +3517,10 @@ const char kCCTRealTimeEngagementSignalsDescription[] =
|
||||
"Enables sending real-time engagement signals (e.g. scroll) through "
|
||||
"CustomTabsCallback.";
|
||||
|
||||
+const char kIPv6ProbingName[] = "Enable IPv6 probing.";
|
||||
+const char kIPv6ProbingDescription[] =
|
||||
@@ -44,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
|
||||
@@ -715,6 +715,9 @@ extern const char kEnableWasmLazyCompilationName[];
|
||||
@@ -788,6 +788,9 @@ extern const char kEnableWasmLazyCompilationName[];
|
||||
extern const char kEnableWasmLazyCompilationDescription[];
|
||||
|
||||
extern const char kEnableWasmTieringName[];
|
||||
@@ -108,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"
|
||||
@@ -4129,8 +4130,14 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) {
|
||||
@@ -3758,8 +3759,14 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) {
|
||||
if (last_ipv6_probe_time_.is_null() ||
|
||||
(tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() >
|
||||
kIPv6ProbePeriodMs) {
|
||||
@@ -127,13 +128,14 @@ diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
|
||||
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
|
||||
@@ -36,6 +36,10 @@ const base::Feature kReporting{"Reporting", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
const base::Feature kThrottleDelayable{"ThrottleDelayable",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
@@ -38,6 +38,11 @@ BASE_FEATURE(kThrottleDelayable,
|
||||
"ThrottleDelayable",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
|
||||
+// Enable IPv6 ping probes to RIPE DNS.
|
||||
+const base::Feature kIPv6Probing{"IPv6Probing",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kIPv6Probing,
|
||||
+ "IPv6Probing",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+
|
||||
// When kPriorityRequestsDelayableOnSlowConnections is enabled, HTTP
|
||||
// requests fetched from a SPDY/QUIC/H2 proxies can be delayed by the
|
||||
@@ -141,14 +143,13 @@ 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
|
||||
@@ -18,6 +18,8 @@ extern const base::Feature kExpectCTReporting;
|
||||
@@ -17,6 +17,7 @@ COMPONENT_EXPORT(NETWORK_CPP) BASE_DECLARE_FEATURE(kExpectCTReporting);
|
||||
COMPONENT_EXPORT(NETWORK_CPP) BASE_DECLARE_FEATURE(kNetworkErrorLogging);
|
||||
COMPONENT_EXPORT(NETWORK_CPP) BASE_DECLARE_FEATURE(kReporting);
|
||||
COMPONENT_EXPORT(NETWORK_CPP) BASE_DECLARE_FEATURE(kThrottleDelayable);
|
||||
+COMPONENT_EXPORT(NETWORK_CPP) BASE_DECLARE_FEATURE(kIPv6Probing);
|
||||
COMPONENT_EXPORT(NETWORK_CPP)
|
||||
extern const base::Feature kNetworkErrorLogging;
|
||||
BASE_DECLARE_FEATURE(kDelayRequestsOnMultiplexedConnections);
|
||||
COMPONENT_EXPORT(NETWORK_CPP)
|
||||
+extern const base::Feature kIPv6Probing;
|
||||
+COMPONENT_EXPORT(NETWORK_CPP)
|
||||
extern const base::Feature kReporting;
|
||||
COMPONENT_EXPORT(NETWORK_CPP)
|
||||
extern const base::Feature kThrottleDelayable;
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,6 +2,10 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Tue, 25 May 2021 19:46:14 +0200
|
||||
Subject: Add flag to disable external intent requests
|
||||
|
||||
Adds a new flag that allows to control the switch with same name;
|
||||
when flag is disabled no external intent will ever be allowed, for any URL.
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/about_flags.cc | 3 +++
|
||||
chrome/browser/flag_descriptions.cc | 6 ++++++
|
||||
@@ -11,7 +15,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
|
||||
@@ -3148,6 +3148,9 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
@@ -3692,6 +3692,9 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
{"ui-disable-partial-swap", flag_descriptions::kUiPartialSwapName,
|
||||
flag_descriptions::kUiPartialSwapDescription, kOsAll,
|
||||
SINGLE_DISABLE_VALUE_TYPE(switches::kUIDisablePartialSwap)},
|
||||
@@ -24,7 +28,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
|
||||
@@ -3391,6 +3391,12 @@ const char kPhotoPickerVideoSupportName[] = "Photo Picker Video Support";
|
||||
@@ -3874,6 +3874,12 @@ const char kPhotoPickerVideoSupportName[] = "Photo Picker Video Support";
|
||||
const char kPhotoPickerVideoSupportDescription[] =
|
||||
"Enables video files to be shown in the Photo Picker dialog";
|
||||
|
||||
@@ -40,9 +44,9 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
|
||||
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
|
||||
--- a/chrome/browser/flag_descriptions.h
|
||||
+++ b/chrome/browser/flag_descriptions.h
|
||||
@@ -1938,6 +1938,9 @@ extern const char kQueryTilesDescription[];
|
||||
extern const char kQueryTilesNTPName[];
|
||||
extern const char kQueryTilesNTPDescription[];
|
||||
@@ -2236,6 +2236,9 @@ extern const char kQueryTilesNTPDescription[];
|
||||
extern const char kQueryTilesOnStartName[];
|
||||
extern const char kQueryTilesOnStartDescription[];
|
||||
extern const char kQueryTilesSingleTierName[];
|
||||
+extern const char kDisableExternalIntentRequestsName[];
|
||||
+extern const char kDisableExternalIntentRequestsDescription[];
|
||||
|
||||
@@ -2,23 +2,24 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sun, 27 Jun 2021 17:35:39 +0200
|
||||
Subject: Add flag to disable vibration
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/about_flags.cc | 4 ++++
|
||||
chrome/browser/flag_descriptions.cc | 3 +++
|
||||
chrome/browser/flag_descriptions.h | 2 ++
|
||||
content/child/runtime_features.cc | 1 +
|
||||
content/public/common/content_features.cc | 4 ++++
|
||||
content/public/common/content_features.h | 2 ++
|
||||
third_party/blink/public/platform/web_runtime_features.h | 1 +
|
||||
.../blink/renderer/modules/vibration/vibration_controller.cc | 3 +++
|
||||
.../blink/renderer/platform/exported/web_runtime_features.cc | 4 ++++
|
||||
.../blink/renderer/platform/runtime_enabled_features.json5 | 4 ++++
|
||||
10 files changed, 28 insertions(+)
|
||||
chrome/browser/about_flags.cc | 4 ++++
|
||||
chrome/browser/flag_descriptions.cc | 3 +++
|
||||
chrome/browser/flag_descriptions.h | 2 ++
|
||||
content/child/runtime_features.cc | 1 +
|
||||
content/public/common/content_features.cc | 5 +++++
|
||||
content/public/common/content_features.h | 2 ++
|
||||
third_party/blink/public/platform/web_runtime_features.h | 1 +
|
||||
.../blink/renderer/modules/vibration/vibration_controller.cc | 3 +++
|
||||
.../blink/renderer/platform/exported/web_runtime_features.cc | 4 ++++
|
||||
.../blink/renderer/platform/runtime_enabled_features.json5 | 4 ++++
|
||||
10 files changed, 29 insertions(+)
|
||||
|
||||
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
|
||||
@@ -6670,6 +6670,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
@@ -7623,6 +7623,10 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
FEATURE_VALUE_TYPE(features::kNewMacNotificationAPI)},
|
||||
#endif
|
||||
|
||||
@@ -32,20 +33,20 @@ 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
|
||||
@@ -5608,6 +5608,9 @@ const char kDefaultCalculatorWebAppDescription[] =
|
||||
"chrome app.";
|
||||
#endif // BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
@@ -6271,6 +6271,9 @@ const char kLacrosScreenCoordinatesEnabledDescription[] =
|
||||
"moveBy, moveTo or session restore.";
|
||||
#endif // #if BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
|
||||
+const char kEnableVibrationName[] = "Vibration";
|
||||
+const char kEnableVibrationDescription[] = "Enable vibration API; an user gesture will still be needed.";
|
||||
+
|
||||
#if BUILDFLAG(IS_CHROMEOS)
|
||||
const char kDeprecateLowUsageCodecsName[] = "Deprecates low usage media codecs";
|
||||
const char kDeprecateLowUsageCodecsDescription[] =
|
||||
const char kAllowDefaultWebAppMigrationForChromeOsManagedUsersName[] =
|
||||
"Allow default web app migration for ChromeOS managed users";
|
||||
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
|
||||
@@ -3406,6 +3406,8 @@ extern const char kWebUITabStripTabDragIntegrationName[];
|
||||
@@ -3847,6 +3847,8 @@ extern const char kWebUITabStripTabDragIntegrationName[];
|
||||
extern const char kWebUITabStripTabDragIntegrationDescription[];
|
||||
#endif // BUILDFLAG(ENABLE_WEBUI_TAB_STRIP) && BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
|
||||
@@ -57,7 +58,7 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
|
||||
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
|
||||
--- a/content/child/runtime_features.cc
|
||||
+++ b/content/child/runtime_features.cc
|
||||
@@ -100,6 +100,7 @@ void SetRuntimeFeatureDefaultsForPlatform(
|
||||
@@ -102,6 +102,7 @@ void SetRuntimeFeatureDefaultsForPlatform(
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
if (command_line.HasSwitch(switches::kDisableMediaSessionAPI))
|
||||
WebRuntimeFeatures::EnableMediaSession(false);
|
||||
@@ -68,13 +69,14 @@ diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.
|
||||
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
|
||||
--- a/content/public/common/content_features.cc
|
||||
+++ b/content/public/common/content_features.cc
|
||||
@@ -121,6 +121,10 @@ const base::Feature kBackForwardCacheMemoryControls {
|
||||
@@ -131,6 +131,11 @@ BASE_FEATURE(kBackForwardCacheMemoryControls,
|
||||
#endif
|
||||
};
|
||||
);
|
||||
|
||||
+// Enables vibration; an user gesture will still be required if enabled.
|
||||
+const base::Feature kVibration{"Vibration",
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kVibration,
|
||||
+ "Vibration",
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+
|
||||
// When this feature is enabled, private network requests initiated from
|
||||
// non-secure contexts in the `public` address space are blocked.
|
||||
@@ -82,38 +84,38 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
|
||||
diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h
|
||||
--- a/content/public/common/content_features.h
|
||||
+++ b/content/public/common/content_features.h
|
||||
@@ -318,6 +318,8 @@ CONTENT_EXPORT extern const base::FeatureParam<base::TimeDelta>
|
||||
@@ -322,6 +322,8 @@ CONTENT_EXPORT extern const base::FeatureParam<base::TimeDelta>
|
||||
kCompositorLockTimeout;
|
||||
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
+CONTENT_EXPORT extern const base::Feature kVibration;
|
||||
+CONTENT_EXPORT BASE_DECLARE_FEATURE(kVibration);
|
||||
+
|
||||
|
||||
#if BUILDFLAG(IS_MAC)
|
||||
CONTENT_EXPORT extern const base::Feature kDeviceMonitorMac;
|
||||
CONTENT_EXPORT BASE_DECLARE_FEATURE(kDeviceMonitorMac);
|
||||
diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_party/blink/public/platform/web_runtime_features.h
|
||||
--- a/third_party/blink/public/platform/web_runtime_features.h
|
||||
+++ b/third_party/blink/public/platform/web_runtime_features.h
|
||||
@@ -87,6 +87,7 @@ class WebRuntimeFeatures {
|
||||
BLINK_PLATFORM_EXPORT static void EnableBlockingFocusWithoutUserActivation(
|
||||
bool);
|
||||
BLINK_PLATFORM_EXPORT static void EnableCacheInlineScriptCode(bool);
|
||||
+ BLINK_PLATFORM_EXPORT static void EnableVibration(bool);
|
||||
BLINK_PLATFORM_EXPORT static void EnableCapabilityDelegationPaymentRequest(
|
||||
bool enable);
|
||||
BLINK_PLATFORM_EXPORT static void EnableClickPointerEvent(bool enable);
|
||||
@@ -70,6 +70,7 @@ class BLINK_PLATFORM_EXPORT WebRuntimeFeatures : public WebRuntimeFeaturesBase {
|
||||
static void EnableFingerprintingCanvasMeasureTextNoise(bool);
|
||||
static void EnableFingerprintingCanvasImageDataNoise(bool);
|
||||
static void EnableFluentScrollbars(bool);
|
||||
+ static void EnableVibration(bool);
|
||||
|
||||
WebRuntimeFeatures() = delete;
|
||||
};
|
||||
diff --git a/third_party/blink/renderer/modules/vibration/vibration_controller.cc b/third_party/blink/renderer/modules/vibration/vibration_controller.cc
|
||||
--- a/third_party/blink/renderer/modules/vibration/vibration_controller.cc
|
||||
+++ b/third_party/blink/renderer/modules/vibration/vibration_controller.cc
|
||||
@@ -30,6 +30,7 @@
|
||||
@@ -29,6 +29,7 @@
|
||||
#include "third_party/blink/renderer/core/frame/local_frame.h"
|
||||
#include "third_party/blink/renderer/core/frame/navigator.h"
|
||||
#include "third_party/blink/renderer/core/page/page.h"
|
||||
#include "third_party/blink/renderer/platform/mojo/mojo_helper.h"
|
||||
+#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
|
||||
|
||||
// Maximum number of entries in a vibration pattern.
|
||||
const unsigned kVibrationPatternLengthMax = 99;
|
||||
@@ -149,6 +150,8 @@ bool VibrationController::vibrate(Navigator& navigator,
|
||||
@@ -152,6 +153,8 @@ bool VibrationController::vibrate(Navigator& navigator,
|
||||
// reference to |window| or |navigator| was retained in another window.
|
||||
if (!navigator.DomWindow())
|
||||
return false;
|
||||
@@ -125,21 +127,21 @@ diff --git a/third_party/blink/renderer/modules/vibration/vibration_controller.c
|
||||
diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.cc b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
|
||||
--- a/third_party/blink/renderer/platform/exported/web_runtime_features.cc
|
||||
+++ b/third_party/blink/renderer/platform/exported/web_runtime_features.cc
|
||||
@@ -164,6 +164,10 @@ void WebRuntimeFeatures::EnableScrollTopLeftInterop(bool enable) {
|
||||
RuntimeEnabledFeatures::SetScrollTopLeftInteropEnabled(enable);
|
||||
@@ -52,6 +52,10 @@ void WebRuntimeFeatures::EnableTestOnlyFeatures(bool enable) {
|
||||
RuntimeEnabledFeatures::SetTestFeaturesEnabled(enable);
|
||||
}
|
||||
|
||||
+void WebRuntimeFeatures::EnableVibration(bool enable) {
|
||||
+ RuntimeEnabledFeatures::SetVibrationEnabled(enable);
|
||||
+}
|
||||
+
|
||||
void WebRuntimeFeatures::EnableKeyboardAccessibleTooltip(bool enable) {
|
||||
RuntimeEnabledFeatures::SetKeyboardAccessibleTooltipEnabled(enable);
|
||||
void WebRuntimeFeatures::EnableOriginTrialControlledFeatures(bool enable) {
|
||||
RuntimeEnabledFeatures::SetOriginTrialControlledFeaturesEnabled(enable);
|
||||
}
|
||||
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
|
||||
@@ -1668,6 +1668,10 @@
|
||||
@@ -1903,6 +1903,10 @@
|
||||
name: "OrientationEvent",
|
||||
status: {"Android": "stable"},
|
||||
},
|
||||
|
||||
@@ -48,6 +48,9 @@ origins and allows to perform operations when all the tabs relating to that orig
|
||||
deleting the session content settings of `UntilOriginClosed`.
|
||||
|
||||
See also: https://github.com/bromite/bromite/issues/1549
|
||||
|
||||
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
|
||||
---
|
||||
.../permissions/last_tab_standing_tracker.cc | 33 +++++++-
|
||||
.../permissions/last_tab_standing_tracker.h | 4 +-
|
||||
@@ -62,9 +65,6 @@ See also: https://github.com/bromite/bromite/issues/1549
|
||||
components/content_settings/android/BUILD.gn | 1 +
|
||||
.../core/browser/content_settings_utils.cc | 29 +++++++
|
||||
.../core/browser/content_settings_utils.h | 6 ++
|
||||
.../core/browser/host_content_settings_map.cc | 2 +-
|
||||
.../core/common/content_settings.cc | 7 +-
|
||||
.../core/common/content_settings.h | 4 +-
|
||||
.../common/content_settings_constraints.h | 11 +++
|
||||
.../page_info/PageInfoController.java | 4 +-
|
||||
.../PermissionParamsListBuilder.java | 13 ++-
|
||||
@@ -73,21 +73,21 @@ See also: https://github.com/bromite/bromite/issues/1549
|
||||
components/page_info/page_info.h | 1 +
|
||||
.../permissions/PermissionDialogDelegate.java | 13 +++
|
||||
.../permissions/PermissionDialogModel.java | 81 ++++++++++++++++++-
|
||||
.../android/permission_dialog_delegate.cc | 19 +++++
|
||||
.../android/permission_dialog_delegate.h | 1 +
|
||||
.../android/permission_prompt_android.cc | 8 ++
|
||||
.../android/permission_prompt_android.h | 2 +
|
||||
.../permission_dialog_delegate.cc | 19 +++++
|
||||
.../permission_dialog_delegate.h | 1 +
|
||||
.../permission_prompt_android.cc | 8 ++
|
||||
.../permission_prompt_android.h | 2 +
|
||||
.../android/permissions_android_strings.grd | 17 ++++
|
||||
.../geolocation_permission_context_android.cc | 35 ++++++--
|
||||
.../geolocation_permission_context_android.h | 13 ++-
|
||||
.../permissions/permission_context_base.cc | 50 ++++++++++--
|
||||
.../permissions/permission_context_base.cc | 49 ++++++++++-
|
||||
.../permissions/permission_context_base.h | 24 +++++-
|
||||
components/permissions/permission_prompt.h | 3 +-
|
||||
components/permissions/permission_request.cc | 34 +++++++-
|
||||
components/permissions/permission_request.h | 17 +++-
|
||||
.../permissions/permission_request_manager.cc | 38 ++++++---
|
||||
.../permissions/permission_request_manager.cc | 37 ++++++---
|
||||
.../permissions/permission_request_manager.h | 11 ++-
|
||||
38 files changed, 481 insertions(+), 62 deletions(-)
|
||||
35 files changed, 472 insertions(+), 56 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/permissions/last_tab_standing_tracker.cc b/chrome/browser/permissions/last_tab_standing_tracker.cc
|
||||
--- a/chrome/browser/permissions/last_tab_standing_tracker.cc
|
||||
@@ -171,20 +171,18 @@ diff --git a/chrome/browser/permissions/last_tab_standing_tracker.h b/chrome/bro
|
||||
diff --git a/chrome/browser/permissions/last_tab_standing_tracker_factory.cc b/chrome/browser/permissions/last_tab_standing_tracker_factory.cc
|
||||
--- a/chrome/browser/permissions/last_tab_standing_tracker_factory.cc
|
||||
+++ b/chrome/browser/permissions/last_tab_standing_tracker_factory.cc
|
||||
@@ -33,7 +33,7 @@ bool LastTabStandingTrackerFactory::ServiceIsCreatedWithBrowserContext() const {
|
||||
@@ -31,5 +31,5 @@ bool LastTabStandingTrackerFactory::ServiceIsCreatedWithBrowserContext() const {
|
||||
|
||||
KeyedService* LastTabStandingTrackerFactory::BuildServiceInstanceFor(
|
||||
content::BrowserContext* context) const {
|
||||
- return new LastTabStandingTracker();
|
||||
+ return new LastTabStandingTracker(context);
|
||||
}
|
||||
|
||||
content::BrowserContext* LastTabStandingTrackerFactory::GetBrowserContextToUse(
|
||||
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
|
||||
@@ -372,10 +372,7 @@ void ChromeBrowserMainExtraPartsProfiles::
|
||||
InstantServiceFactory::GetInstance();
|
||||
@@ -415,10 +415,7 @@ void ChromeBrowserMainExtraPartsProfiles::
|
||||
FirstRunServiceFactory::GetInstance();
|
||||
#endif
|
||||
LanguageModelManagerFactory::GetInstance();
|
||||
- if (base::FeatureList::IsEnabled(
|
||||
@@ -192,15 +190,15 @@ diff --git a/chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc
|
||||
- LastTabStandingTrackerFactory::GetInstance();
|
||||
- }
|
||||
+ LastTabStandingTrackerFactory::GetInstance();
|
||||
login_detection::LoginDetectionKeyedServiceFactory::GetInstance();
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
LoginUIServiceFactory::GetInstance();
|
||||
captions::LiveCaptionControllerFactory::GetInstance();
|
||||
if (base::FeatureList::IsEnabled(media::kLiveTranslate))
|
||||
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
|
||||
@@ -481,6 +481,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
|
||||
web_contents);
|
||||
}
|
||||
@@ -487,6 +487,7 @@ void TabHelpers::AttachTabHelpers(WebContents* web_contents) {
|
||||
PolicyAuditorBridge::CreateForWebContents(web_contents);
|
||||
PluginObserverAndroid::CreateForWebContents(web_contents);
|
||||
video_tutorials::VideoTutorialTabHelper::CreateForWebContents(web_contents);
|
||||
+ LastTabStandingTrackerTabHelper::CreateForWebContents(web_contents);
|
||||
#else
|
||||
@@ -252,16 +250,16 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
|
||||
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
|
||||
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
|
||||
@@ -34,6 +34,7 @@ import org.chromium.components.browser_ui.settings.ManagedPreferencesUtils;
|
||||
import org.chromium.components.browser_ui.settings.SettingsUtils;
|
||||
@@ -35,6 +35,7 @@ import org.chromium.components.browser_ui.settings.SettingsUtils;
|
||||
import org.chromium.components.browser_ui.settings.TextMessagePreference;
|
||||
import org.chromium.components.content_settings.ContentSettingValues;
|
||||
import org.chromium.components.content_settings.ContentSettingsType;
|
||||
+import org.chromium.components.content_settings.SessionModel;
|
||||
import org.chromium.components.embedder_support.util.Origin;
|
||||
import org.chromium.content_public.browser.BrowserContextHandle;
|
||||
|
||||
@@ -525,6 +526,11 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
return mSite.getPermissionInfo(type) != null && mSite.getPermissionInfo(type).isEmbargoed();
|
||||
import org.chromium.content_public.browser.ContentFeatureList;
|
||||
@@ -539,6 +540,11 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
}
|
||||
}
|
||||
|
||||
+ private boolean isSessionPermission(@ContentSettingsType int type) {
|
||||
@@ -272,7 +270,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
private void setUpClearDataPreference() {
|
||||
ClearWebsiteStorage preference = findPreference(PREF_CLEAR_DATA);
|
||||
long usage = mSite.getTotalUsage();
|
||||
@@ -911,6 +917,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
@@ -970,6 +976,10 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
if (contentType == mHighlightedPermission) {
|
||||
switchPreference.setBackgroundColor(mHighlightColor);
|
||||
}
|
||||
@@ -294,7 +292,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
import org.chromium.components.location.LocationUtils;
|
||||
import org.chromium.content_public.browser.BrowserContextHandle;
|
||||
import org.chromium.url.GURL;
|
||||
@@ -54,7 +55,8 @@ public class WebsitePreferenceBridge {
|
||||
@@ -55,7 +56,8 @@ public class WebsitePreferenceBridge {
|
||||
|
||||
@CalledByNative
|
||||
private static void insertPermissionInfoIntoList(@ContentSettingsType int type,
|
||||
@@ -304,7 +302,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
if (type == ContentSettingsType.MEDIASTREAM_CAMERA
|
||||
|| type == ContentSettingsType.MEDIASTREAM_MIC) {
|
||||
for (PermissionInfo info : list) {
|
||||
@@ -63,7 +65,7 @@ public class WebsitePreferenceBridge {
|
||||
@@ -64,7 +66,7 @@ public class WebsitePreferenceBridge {
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -316,7 +314,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
diff --git a/components/browser_ui/site_settings/android/website_preference_bridge.cc b/components/browser_ui/site_settings/android/website_preference_bridge.cc
|
||||
--- a/components/browser_ui/site_settings/android/website_preference_bridge.cc
|
||||
+++ b/components/browser_ui/site_settings/android/website_preference_bridge.cc
|
||||
@@ -112,7 +112,8 @@ typedef void (*InfoListInsertionFunction)(
|
||||
@@ -122,7 +122,8 @@ typedef void (*InfoListInsertionFunction)(
|
||||
const base::android::JavaRef<jobject>&,
|
||||
const base::android::JavaRef<jstring>&,
|
||||
const base::android::JavaRef<jstring>&,
|
||||
@@ -326,16 +324,16 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid
|
||||
|
||||
void GetOrigins(JNIEnv* env,
|
||||
const JavaParamRef<jobject>& jbrowser_context_handle,
|
||||
@@ -153,7 +154,7 @@ void GetOrigins(JNIEnv* env,
|
||||
@@ -164,7 +165,7 @@ void GetOrigins(JNIEnv* env,
|
||||
seen_origins.push_back(origin);
|
||||
insertionFunc(env, static_cast<int>(content_type), list,
|
||||
ConvertOriginToJavaString(env, origin), jembedder,
|
||||
- /*is_embargoed=*/false);
|
||||
+ /*is_embargoed=*/false, static_cast<int>(settings_it.session_model));
|
||||
+ /*is_embargoed=*/false, static_cast<int>(settings_it.metadata.session_model));
|
||||
}
|
||||
|
||||
// Add any origins which have a default content setting value (thus skipped
|
||||
@@ -176,7 +177,7 @@ void GetOrigins(JNIEnv* env,
|
||||
@@ -186,7 +187,7 @@ void GetOrigins(JNIEnv* env,
|
||||
seen_origins.push_back(origin);
|
||||
insertionFunc(env, static_cast<int>(content_type), list,
|
||||
ConvertOriginToJavaString(env, origin), jembedder,
|
||||
@@ -347,7 +345,7 @@ diff --git a/components/browser_ui/site_settings/android/website_preference_brid
|
||||
diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/components/browser_ui/strings/android/browser_ui_strings.grd
|
||||
--- a/components/browser_ui/strings/android/browser_ui_strings.grd
|
||||
+++ b/components/browser_ui/strings/android/browser_ui_strings.grd
|
||||
@@ -590,6 +590,11 @@
|
||||
@@ -608,6 +608,11 @@
|
||||
<message name="IDS_PAGE_INFO_URL_TRUNCATED" desc="Accessibility announcement when the URL in PageInfo switches from full to truncated display">
|
||||
URL truncated
|
||||
</message>
|
||||
@@ -362,7 +360,7 @@ diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/comp
|
||||
diff --git a/components/content_settings/android/BUILD.gn b/components/content_settings/android/BUILD.gn
|
||||
--- a/components/content_settings/android/BUILD.gn
|
||||
+++ b/components/content_settings/android/BUILD.gn
|
||||
@@ -57,6 +57,7 @@ java_cpp_enum("content_settings_enums_javagen") {
|
||||
@@ -58,6 +58,7 @@ java_cpp_enum("content_settings_enums_javagen") {
|
||||
"../core/common/content_settings_types.h",
|
||||
"../core/common/cookie_controls_enforcement.h",
|
||||
"../core/common/cookie_controls_status.h",
|
||||
@@ -373,7 +371,7 @@ diff --git a/components/content_settings/android/BUILD.gn b/components/content_s
|
||||
diff --git a/components/content_settings/core/browser/content_settings_utils.cc b/components/content_settings/core/browser/content_settings_utils.cc
|
||||
--- a/components/content_settings/core/browser/content_settings_utils.cc
|
||||
+++ b/components/content_settings/core/browser/content_settings_utils.cc
|
||||
@@ -184,4 +184,33 @@ base::Time GetConstraintExpiration(const base::TimeDelta duration) {
|
||||
@@ -189,6 +189,35 @@ base::Time GetConstraintExpiration(const base::TimeDelta duration) {
|
||||
return base::Time::Now() + duration;
|
||||
}
|
||||
|
||||
@@ -391,13 +389,13 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc
|
||||
+
|
||||
+bool IsConstraintSessionExpiration(const ContentSettingPatternSource& source,
|
||||
+ LifetimeMode lifetime_mode) {
|
||||
+ if (source.session_model != content_settings::SessionModel::UserSession)
|
||||
+ if (source.metadata.session_model != content_settings::SessionModel::UserSession)
|
||||
+ return false;
|
||||
+
|
||||
+ LifetimeMode type;
|
||||
+ if (source.expiration == base::Time()) {
|
||||
+ if (source.metadata.expiration == base::Time()) {
|
||||
+ type = LifetimeMode::UntilBrowserClosed;
|
||||
+ } else if (source.expiration == (base::Time() + base::Hours(1))) {
|
||||
+ } else if (source.metadata.expiration == (base::Time() + base::Hours(1))) {
|
||||
+ type = LifetimeMode::OnlyThisTime;
|
||||
+ } else {
|
||||
+ type = LifetimeMode::UntilOriginClosed;
|
||||
@@ -406,13 +404,15 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc
|
||||
+ return lifetime_mode == type;
|
||||
+}
|
||||
+
|
||||
} // namespace content_settings
|
||||
bool CanTrackLastVisit(ContentSettingsType type) {
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
// The notification provider on Android does not support last visit tracking.
|
||||
diff --git a/components/content_settings/core/browser/content_settings_utils.h b/components/content_settings/core/browser/content_settings_utils.h
|
||||
--- a/components/content_settings/core/browser/content_settings_utils.h
|
||||
+++ b/components/content_settings/core/browser/content_settings_utils.h
|
||||
@@ -73,6 +73,12 @@ bool IsConstraintPersistent(const ContentSettingConstraints& constraints);
|
||||
// Returns the expiration time for a supplied |duration|.
|
||||
base::Time GetConstraintExpiration(const base::TimeDelta duration);
|
||||
@@ -76,6 +76,12 @@ base::Time GetConstraintExpiration(const base::TimeDelta duration);
|
||||
// Returns whether the given type supports tracking last_visit timestamps.
|
||||
bool CanTrackLastVisit(ContentSettingsType type);
|
||||
|
||||
+ContentSettingConstraints GetConstraintSessionExpiration(LifetimeMode lifetime_mode);
|
||||
+
|
||||
@@ -420,71 +420,9 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.h b
|
||||
+ const ContentSettingPatternSource& source,
|
||||
+ LifetimeMode lifetime_mode);
|
||||
+
|
||||
} // namespace content_settings
|
||||
// Get a timestamp with week-precision.
|
||||
base::Time GetCoarseTime(base::Time time);
|
||||
|
||||
#endif // COMPONENTS_CONTENT_SETTINGS_CORE_BROWSER_CONTENT_SETTINGS_UTILS_H_
|
||||
diff --git a/components/content_settings/core/browser/host_content_settings_map.cc b/components/content_settings/core/browser/host_content_settings_map.cc
|
||||
--- a/components/content_settings/core/browser/host_content_settings_map.cc
|
||||
+++ b/components/content_settings/core/browser/host_content_settings_map.cc
|
||||
@@ -824,7 +824,7 @@ void HostContentSettingsMap::AddSettingsForOneType(
|
||||
settings->emplace_back(rule.primary_pattern, rule.secondary_pattern,
|
||||
std::move(value),
|
||||
kProviderNamesSourceMap[provider_type].provider_name,
|
||||
- incognito, rule.expiration);
|
||||
+ incognito, rule.expiration, rule.session_model);
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/components/content_settings/core/common/content_settings.cc b/components/content_settings/core/common/content_settings.cc
|
||||
--- a/components/content_settings/core/common/content_settings.cc
|
||||
+++ b/components/content_settings/core/common/content_settings.cc
|
||||
@@ -156,13 +156,15 @@ ContentSettingPatternSource::ContentSettingPatternSource(
|
||||
base::Value setting_value,
|
||||
const std::string& source,
|
||||
bool incognito,
|
||||
- base::Time expiration)
|
||||
+ base::Time expiration,
|
||||
+ content_settings::SessionModel session_model)
|
||||
: primary_pattern(primary_pattern),
|
||||
secondary_pattern(secondary_pattern),
|
||||
setting_value(std::move(setting_value)),
|
||||
expiration(expiration),
|
||||
source(source),
|
||||
- incognito(incognito) {}
|
||||
+ incognito(incognito),
|
||||
+ session_model(session_model) {}
|
||||
|
||||
ContentSettingPatternSource::ContentSettingPatternSource() : incognito(false) {}
|
||||
|
||||
@@ -179,6 +181,7 @@ ContentSettingPatternSource& ContentSettingPatternSource::operator=(
|
||||
expiration = other.expiration;
|
||||
source = other.source;
|
||||
incognito = other.incognito;
|
||||
+ session_model = other.session_model;
|
||||
return *this;
|
||||
}
|
||||
|
||||
diff --git a/components/content_settings/core/common/content_settings.h b/components/content_settings/core/common/content_settings.h
|
||||
--- a/components/content_settings/core/common/content_settings.h
|
||||
+++ b/components/content_settings/core/common/content_settings.h
|
||||
@@ -49,7 +49,8 @@ struct ContentSettingPatternSource {
|
||||
base::Value setting_value,
|
||||
const std::string& source,
|
||||
bool incognito,
|
||||
- base::Time expiration = base::Time());
|
||||
+ base::Time expiration = base::Time(),
|
||||
+ content_settings::SessionModel session_model = content_settings::SessionModel::Durable);
|
||||
ContentSettingPatternSource(const ContentSettingPatternSource& other);
|
||||
ContentSettingPatternSource();
|
||||
ContentSettingPatternSource& operator=(
|
||||
@@ -64,6 +65,7 @@ struct ContentSettingPatternSource {
|
||||
base::Time expiration;
|
||||
std::string source;
|
||||
bool incognito;
|
||||
+ content_settings::SessionModel session_model;
|
||||
};
|
||||
|
||||
typedef std::vector<ContentSettingPatternSource> ContentSettingsForOneType;
|
||||
diff --git a/components/content_settings/core/common/content_settings_constraints.h b/components/content_settings/core/common/content_settings_constraints.h
|
||||
--- a/components/content_settings/core/common/content_settings_constraints.h
|
||||
+++ b/components/content_settings/core/common/content_settings_constraints.h
|
||||
@@ -516,7 +454,7 @@ diff --git a/components/content_settings/core/common/content_settings_constraint
|
||||
diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
|
||||
--- a/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
|
||||
+++ b/components/page_info/android/java/src/org/chromium/components/page_info/PageInfoController.java
|
||||
@@ -383,9 +383,9 @@ public class PageInfoController implements PageInfoMainController, ModalDialogPr
|
||||
@@ -344,9 +344,9 @@ public class PageInfoController implements PageInfoMainController, ModalDialogPr
|
||||
*/
|
||||
@CalledByNative
|
||||
private void addPermissionSection(String name, String nameMidSentence, int type,
|
||||
@@ -554,7 +492,7 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_
|
||||
}
|
||||
}
|
||||
|
||||
@@ -123,13 +128,15 @@ public class PermissionParamsListBuilder {
|
||||
@@ -124,13 +129,15 @@ public class PermissionParamsListBuilder {
|
||||
public final String nameMidSentence;
|
||||
public final int type;
|
||||
public final @ContentSettingValues int setting;
|
||||
@@ -574,7 +512,7 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_
|
||||
diff --git a/components/page_info/android/page_info_controller_android.cc b/components/page_info/android/page_info_controller_android.cc
|
||||
--- a/components/page_info/android/page_info_controller_android.cc
|
||||
+++ b/components/page_info/android/page_info_controller_android.cc
|
||||
@@ -158,6 +158,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
@@ -171,6 +171,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
|
||||
std::map<ContentSettingsType, ContentSetting>
|
||||
user_specified_settings_to_display;
|
||||
@@ -583,7 +521,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
|
||||
|
||||
for (const auto& permission : permission_info_list) {
|
||||
if (base::Contains(permissions_to_display, permission.type)) {
|
||||
@@ -166,6 +168,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
@@ -179,6 +181,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
if (setting_to_display) {
|
||||
user_specified_settings_to_display[permission.type] =
|
||||
*setting_to_display;
|
||||
@@ -592,7 +530,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -182,7 +186,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
@@ -195,7 +199,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
ConvertUTF16ToJavaString(env, setting_title),
|
||||
ConvertUTF16ToJavaString(env, setting_title_mid_sentence),
|
||||
static_cast<jint>(permission),
|
||||
@@ -602,10 +540,10 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
|
||||
}
|
||||
}
|
||||
|
||||
@@ -195,7 +200,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
@@ -208,7 +213,8 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
env, controller_jobject_, ConvertUTF16ToJavaString(env, object_title),
|
||||
ConvertUTF16ToJavaString(env, object_title),
|
||||
static_cast<jint>(chosen_object->ui_info.content_settings_type),
|
||||
static_cast<jint>(chosen_object->ui_info->content_settings_type),
|
||||
- static_cast<jint>(CONTENT_SETTING_ALLOW));
|
||||
+ static_cast<jint>(CONTENT_SETTING_ALLOW),
|
||||
+ /* is_user_session */ false);
|
||||
@@ -615,19 +553,19 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
|
||||
diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.cc
|
||||
--- a/components/page_info/page_info.cc
|
||||
+++ b/components/page_info/page_info.cc
|
||||
@@ -982,6 +982,8 @@ void PageInfo::PresentSitePermissions() {
|
||||
@@ -1189,6 +1189,8 @@ void PageInfo::PresentSitePermissions() {
|
||||
permission_info.source = info.source;
|
||||
permission_info.is_one_time =
|
||||
(info.session_model == content_settings::SessionModel::OneTime);
|
||||
permission_info.is_one_time = (info.metadata.session_model ==
|
||||
content_settings::SessionModel::OneTime);
|
||||
+ permission_info.is_user_session =
|
||||
+ (info.session_model == content_settings::SessionModel::UserSession);
|
||||
+ (info.metadata.session_model == content_settings::SessionModel::UserSession);
|
||||
|
||||
if (info.primary_pattern == ContentSettingsPattern::Wildcard() &&
|
||||
info.secondary_pattern == ContentSettingsPattern::Wildcard()) {
|
||||
diff --git a/components/page_info/page_info.h b/components/page_info/page_info.h
|
||||
--- a/components/page_info/page_info.h
|
||||
+++ b/components/page_info/page_info.h
|
||||
@@ -174,6 +174,7 @@ class PageInfo {
|
||||
@@ -181,6 +181,7 @@ class PageInfo : private content_settings::CookieControlsView {
|
||||
content_settings::SettingSource source =
|
||||
content_settings::SETTING_SOURCE_NONE;
|
||||
bool is_one_time = false;
|
||||
@@ -777,9 +715,9 @@ diff --git a/components/permissions/android/java/src/org/chromium/components/per
|
||||
}
|
||||
|
||||
private static View loadDialogView(Context context) {
|
||||
diff --git a/components/permissions/android/permission_dialog_delegate.cc b/components/permissions/android/permission_dialog_delegate.cc
|
||||
--- a/components/permissions/android/permission_dialog_delegate.cc
|
||||
+++ b/components/permissions/android/permission_dialog_delegate.cc
|
||||
diff --git a/components/permissions/android/permission_prompt/permission_dialog_delegate.cc b/components/permissions/android/permission_prompt/permission_dialog_delegate.cc
|
||||
--- a/components/permissions/android/permission_prompt/permission_dialog_delegate.cc
|
||||
+++ b/components/permissions/android/permission_prompt/permission_dialog_delegate.cc
|
||||
@@ -67,6 +67,11 @@ void PermissionDialogJavaDelegate::DismissDialog() {
|
||||
Java_PermissionDialogDelegate_dismissFromNative(env, j_delegate_);
|
||||
}
|
||||
@@ -819,9 +757,9 @@ diff --git a/components/permissions/android/permission_dialog_delegate.cc b/comp
|
||||
permission_prompt_->Deny();
|
||||
}
|
||||
|
||||
diff --git a/components/permissions/android/permission_dialog_delegate.h b/components/permissions/android/permission_dialog_delegate.h
|
||||
--- a/components/permissions/android/permission_dialog_delegate.h
|
||||
+++ b/components/permissions/android/permission_dialog_delegate.h
|
||||
diff --git a/components/permissions/android/permission_prompt/permission_dialog_delegate.h b/components/permissions/android/permission_prompt/permission_dialog_delegate.h
|
||||
--- a/components/permissions/android/permission_prompt/permission_dialog_delegate.h
|
||||
+++ b/components/permissions/android/permission_prompt/permission_dialog_delegate.h
|
||||
@@ -35,6 +35,7 @@ class PermissionDialogJavaDelegate {
|
||||
PermissionDialogDelegate* owner);
|
||||
virtual void CreateDialog();
|
||||
@@ -830,10 +768,10 @@ diff --git a/components/permissions/android/permission_dialog_delegate.h b/compo
|
||||
|
||||
private:
|
||||
base::android::ScopedJavaGlobalRef<jobject> j_delegate_;
|
||||
diff --git a/components/permissions/android/permission_prompt_android.cc b/components/permissions/android/permission_prompt_android.cc
|
||||
--- a/components/permissions/android/permission_prompt_android.cc
|
||||
+++ b/components/permissions/android/permission_prompt_android.cc
|
||||
@@ -83,6 +83,14 @@ void PermissionPromptAndroid::Accept() {
|
||||
diff --git a/components/permissions/android/permission_prompt/permission_prompt_android.cc b/components/permissions/android/permission_prompt/permission_prompt_android.cc
|
||||
--- a/components/permissions/android/permission_prompt/permission_prompt_android.cc
|
||||
+++ b/components/permissions/android/permission_prompt/permission_prompt_android.cc
|
||||
@@ -41,6 +41,14 @@ void PermissionPromptAndroid::Accept() {
|
||||
delegate_->Accept();
|
||||
}
|
||||
|
||||
@@ -848,10 +786,10 @@ diff --git a/components/permissions/android/permission_prompt_android.cc b/compo
|
||||
void PermissionPromptAndroid::Deny() {
|
||||
delegate_->Deny();
|
||||
}
|
||||
diff --git a/components/permissions/android/permission_prompt_android.h b/components/permissions/android/permission_prompt_android.h
|
||||
--- a/components/permissions/android/permission_prompt_android.h
|
||||
+++ b/components/permissions/android/permission_prompt_android.h
|
||||
@@ -50,7 +50,9 @@ class PermissionPromptAndroid : public permissions::PermissionPrompt,
|
||||
diff --git a/components/permissions/android/permission_prompt/permission_prompt_android.h b/components/permissions/android/permission_prompt/permission_prompt_android.h
|
||||
--- a/components/permissions/android/permission_prompt/permission_prompt_android.h
|
||||
+++ b/components/permissions/android/permission_prompt/permission_prompt_android.h
|
||||
@@ -43,7 +43,9 @@ class PermissionPromptAndroid : public PermissionPrompt {
|
||||
|
||||
void Closing();
|
||||
void Accept();
|
||||
@@ -921,7 +859,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
|
||||
LogLocationSettingsMetric(
|
||||
kLocationSettingsSuppressMetricBase, is_default_search,
|
||||
LocationSettingsBackOffLevel(is_default_search));
|
||||
@@ -194,7 +208,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
|
||||
@@ -193,7 +207,8 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
|
||||
!location_settings_dialog_callback_.is_null()) {
|
||||
FinishNotifyPermissionSet(id, requesting_origin, embedding_origin,
|
||||
std::move(callback), false /* persist */,
|
||||
@@ -931,7 +869,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
|
||||
// This case should be very rare, so just pretend it was a denied prompt
|
||||
// for metrics purposes.
|
||||
LogLocationSettingsMetric(
|
||||
@@ -211,12 +226,13 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
|
||||
@@ -210,12 +225,13 @@ void GeolocationPermissionContextAndroid::NotifyPermissionSet(
|
||||
base::BindOnce(
|
||||
&GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown,
|
||||
weak_factory_.GetWeakPtr(), requesting_origin, embedding_origin,
|
||||
@@ -947,7 +885,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
|
||||
}
|
||||
|
||||
PermissionResult
|
||||
@@ -383,6 +399,7 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
|
||||
@@ -382,6 +398,7 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
|
||||
const GURL& embedding_origin,
|
||||
bool persist,
|
||||
ContentSetting content_setting,
|
||||
@@ -955,7 +893,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
|
||||
LocationSettingsDialogOutcome prompt_outcome) {
|
||||
bool is_default_search = IsRequestingOriginDSE(requesting_origin);
|
||||
if (prompt_outcome == GRANTED) {
|
||||
@@ -410,7 +427,8 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
|
||||
@@ -405,7 +422,8 @@ void GeolocationPermissionContextAndroid::OnLocationSettingsDialogShown(
|
||||
|
||||
FinishNotifyPermissionSet(
|
||||
location_settings_dialog_request_id_, requesting_origin, embedding_origin,
|
||||
@@ -964,8 +902,8 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
|
||||
+ is_one_time, lifetime_option);
|
||||
|
||||
location_settings_dialog_request_id_ =
|
||||
PermissionRequestID(0, 0, PermissionRequestID::RequestLocalId());
|
||||
@@ -422,10 +440,11 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet(
|
||||
PermissionRequestID(content::GlobalRenderFrameHostId(0, 0),
|
||||
@@ -418,10 +436,11 @@ void GeolocationPermissionContextAndroid::FinishNotifyPermissionSet(
|
||||
const GURL& embedding_origin,
|
||||
BrowserPermissionCallback callback,
|
||||
bool persist,
|
||||
@@ -983,7 +921,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
|
||||
diff --git a/components/permissions/contexts/geolocation_permission_context_android.h b/components/permissions/contexts/geolocation_permission_context_android.h
|
||||
--- a/components/permissions/contexts/geolocation_permission_context_android.h
|
||||
+++ b/components/permissions/contexts/geolocation_permission_context_android.h
|
||||
@@ -88,6 +88,14 @@ class GeolocationPermissionContextAndroid
|
||||
@@ -87,6 +87,14 @@ class GeolocationPermissionContextAndroid
|
||||
bool persist,
|
||||
ContentSetting content_setting,
|
||||
bool is_one_time) override;
|
||||
@@ -998,7 +936,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
|
||||
PermissionResult UpdatePermissionStatusWithDeviceStatus(
|
||||
PermissionResult result,
|
||||
const GURL& requesting_origin,
|
||||
@@ -130,6 +138,7 @@ class GeolocationPermissionContextAndroid
|
||||
@@ -129,6 +137,7 @@ class GeolocationPermissionContextAndroid
|
||||
const GURL& embedding_origin,
|
||||
bool persist,
|
||||
ContentSetting content_setting,
|
||||
@@ -1006,7 +944,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
|
||||
LocationSettingsDialogOutcome prompt_outcome);
|
||||
|
||||
void FinishNotifyPermissionSet(const PermissionRequestID& id,
|
||||
@@ -137,7 +146,9 @@ class GeolocationPermissionContextAndroid
|
||||
@@ -136,7 +145,9 @@ class GeolocationPermissionContextAndroid
|
||||
const GURL& embedding_origin,
|
||||
BrowserPermissionCallback callback,
|
||||
bool persist,
|
||||
@@ -1020,7 +958,7 @@ diff --git a/components/permissions/contexts/geolocation_permission_context_andr
|
||||
diff --git a/components/permissions/permission_context_base.cc b/components/permissions/permission_context_base.cc
|
||||
--- a/components/permissions/permission_context_base.cc
|
||||
+++ b/components/permissions/permission_context_base.cc
|
||||
@@ -244,6 +244,20 @@ PermissionContextBase::CreatePermissionRequest(
|
||||
@@ -226,6 +226,20 @@ PermissionContextBase::CreatePermissionRequest(
|
||||
std::move(delete_callback));
|
||||
}
|
||||
|
||||
@@ -1041,7 +979,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
|
||||
PermissionResult PermissionContextBase::GetPermissionStatus(
|
||||
content::RenderFrameHost* render_frame_host,
|
||||
const GURL& requesting_origin,
|
||||
@@ -436,7 +450,8 @@ void PermissionContextBase::PermissionDecided(
|
||||
@@ -405,7 +419,8 @@ void PermissionContextBase::PermissionDecided(
|
||||
const GURL& embedding_origin,
|
||||
BrowserPermissionCallback callback,
|
||||
ContentSetting content_setting,
|
||||
@@ -1051,7 +989,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
|
||||
DCHECK(content_setting == CONTENT_SETTING_ALLOW ||
|
||||
content_setting == CONTENT_SETTING_BLOCK ||
|
||||
content_setting == CONTENT_SETTING_DEFAULT);
|
||||
@@ -444,9 +459,9 @@ void PermissionContextBase::PermissionDecided(
|
||||
@@ -413,9 +428,9 @@ void PermissionContextBase::PermissionDecided(
|
||||
content_setting);
|
||||
|
||||
bool persist = content_setting != CONTENT_SETTING_DEFAULT;
|
||||
@@ -1063,7 +1001,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
|
||||
}
|
||||
|
||||
content::BrowserContext* PermissionContextBase::browser_context() const {
|
||||
@@ -496,11 +511,26 @@ void PermissionContextBase::NotifyPermissionSet(
|
||||
@@ -465,11 +480,26 @@ void PermissionContextBase::NotifyPermissionSet(
|
||||
bool persist,
|
||||
ContentSetting content_setting,
|
||||
bool is_one_time) {
|
||||
@@ -1091,7 +1029,7 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
|
||||
}
|
||||
|
||||
UpdateTabContext(id, requesting_origin,
|
||||
@@ -521,6 +551,15 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin,
|
||||
@@ -490,6 +520,15 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin,
|
||||
const GURL& embedding_origin,
|
||||
ContentSetting content_setting,
|
||||
bool is_one_time) {
|
||||
@@ -1107,20 +1045,19 @@ diff --git a/components/permissions/permission_context_base.cc b/components/perm
|
||||
DCHECK_EQ(requesting_origin, requesting_origin.DeprecatedGetOriginAsURL());
|
||||
DCHECK_EQ(embedding_origin, embedding_origin.DeprecatedGetOriginAsURL());
|
||||
DCHECK(content_setting == CONTENT_SETTING_ALLOW ||
|
||||
@@ -532,8 +571,7 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin,
|
||||
->SetContentSettingDefaultScope(
|
||||
requesting_origin, embedding_origin, content_settings_type_,
|
||||
content_setting,
|
||||
- is_one_time ? Constraints{base::Time(),
|
||||
- content_settings::SessionModel::OneTime}
|
||||
+ is_one_time ? content_settings::GetConstraintSessionExpiration(lifetime_option)
|
||||
: Constraints());
|
||||
}
|
||||
@@ -498,6 +537,8 @@ void PermissionContextBase::UpdateContentSetting(const GURL& requesting_origin,
|
||||
content_settings::ContentSettingConstraints constraints = {
|
||||
base::Time(), is_one_time ? content_settings::SessionModel::OneTime
|
||||
: content_settings::SessionModel::Durable};
|
||||
+ if (is_one_time)
|
||||
+ constraints = content_settings::GetConstraintSessionExpiration(lifetime_option);
|
||||
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
if (base::FeatureList::IsEnabled(
|
||||
diff --git a/components/permissions/permission_context_base.h b/components/permissions/permission_context_base.h
|
||||
--- a/components/permissions/permission_context_base.h
|
||||
+++ b/components/permissions/permission_context_base.h
|
||||
@@ -143,6 +143,14 @@ class PermissionContextBase : public KeyedService,
|
||||
@@ -138,6 +138,14 @@ class PermissionContextBase : public content_settings::Observer {
|
||||
|
||||
// Updates stored content setting if persist is set, updates tab indicators
|
||||
// and runs the callback to finish the request.
|
||||
@@ -1135,7 +1072,7 @@ diff --git a/components/permissions/permission_context_base.h b/components/permi
|
||||
virtual void NotifyPermissionSet(const PermissionRequestID& id,
|
||||
const GURL& requesting_origin,
|
||||
const GURL& embedding_origin,
|
||||
@@ -163,6 +171,11 @@ class PermissionContextBase : public KeyedService,
|
||||
@@ -158,6 +166,11 @@ class PermissionContextBase : public content_settings::Observer {
|
||||
// Store the decided permission as a content setting.
|
||||
// virtual since the permission might be stored with different restrictions
|
||||
// (for example for desktop notifications).
|
||||
@@ -1147,7 +1084,7 @@ diff --git a/components/permissions/permission_context_base.h b/components/permi
|
||||
virtual void UpdateContentSetting(const GURL& requesting_origin,
|
||||
const GURL& embedding_origin,
|
||||
ContentSetting content_setting,
|
||||
@@ -195,6 +208,14 @@ class PermissionContextBase : public KeyedService,
|
||||
@@ -190,6 +203,14 @@ class PermissionContextBase : public content_settings::Observer {
|
||||
PermissionRequest::PermissionDecidedCallback permission_decided_callback,
|
||||
base::OnceClosure delete_callback) const;
|
||||
|
||||
@@ -1162,7 +1099,7 @@ diff --git a/components/permissions/permission_context_base.h b/components/permi
|
||||
ContentSettingsType content_settings_type() const {
|
||||
return content_settings_type_;
|
||||
}
|
||||
@@ -221,7 +242,8 @@ class PermissionContextBase : public KeyedService,
|
||||
@@ -216,7 +237,8 @@ class PermissionContextBase : public content_settings::Observer {
|
||||
const GURL& embedding_origin,
|
||||
BrowserPermissionCallback callback,
|
||||
ContentSetting content_setting,
|
||||
@@ -1189,7 +1126,7 @@ diff --git a/components/permissions/permission_prompt.h b/components/permissions
|
||||
diff --git a/components/permissions/permission_request.cc b/components/permissions/permission_request.cc
|
||||
--- a/components/permissions/permission_request.cc
|
||||
+++ b/components/permissions/permission_request.cc
|
||||
@@ -30,6 +30,18 @@ PermissionRequest::PermissionRequest(
|
||||
@@ -31,6 +31,18 @@ PermissionRequest::PermissionRequest(
|
||||
permission_decided_callback_(std::move(permission_decided_callback)),
|
||||
delete_callback_(std::move(delete_callback)) {}
|
||||
|
||||
@@ -1208,7 +1145,7 @@ diff --git a/components/permissions/permission_request.cc b/components/permissio
|
||||
PermissionRequest::~PermissionRequest() {
|
||||
DCHECK(delete_callback_.is_null());
|
||||
}
|
||||
@@ -237,17 +249,35 @@ std::u16string PermissionRequest::GetMessageTextFragment() const {
|
||||
@@ -235,17 +247,35 @@ std::u16string PermissionRequest::GetMessageTextFragment() const {
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -1273,7 +1210,7 @@ diff --git a/components/permissions/permission_request.h b/components/permission
|
||||
PermissionRequest(const PermissionRequest&) = delete;
|
||||
PermissionRequest& operator=(const PermissionRequest&) = delete;
|
||||
|
||||
@@ -97,10 +107,10 @@ class PermissionRequest {
|
||||
@@ -106,10 +116,10 @@ class PermissionRequest {
|
||||
// If |is_one_time| is true the permission will last until all tabs of
|
||||
// |origin| are closed or navigated away from, and then the permission will
|
||||
// automatically expire after 1 day.
|
||||
@@ -1286,7 +1223,7 @@ diff --git a/components/permissions/permission_request.h b/components/permission
|
||||
|
||||
// Called when the user has cancelled the permission request. This
|
||||
// corresponds to a denial, but is segregated in case the context needs to
|
||||
@@ -138,6 +148,9 @@ class PermissionRequest {
|
||||
@@ -147,6 +157,9 @@ class PermissionRequest {
|
||||
// Called once a decision is made about the permission.
|
||||
PermissionDecidedCallback permission_decided_callback_;
|
||||
|
||||
@@ -1299,7 +1236,7 @@ diff --git a/components/permissions/permission_request.h b/components/permission
|
||||
diff --git a/components/permissions/permission_request_manager.cc b/components/permissions/permission_request_manager.cc
|
||||
--- a/components/permissions/permission_request_manager.cc
|
||||
+++ b/components/permissions/permission_request_manager.cc
|
||||
@@ -162,7 +162,7 @@ void PermissionRequestManager::AddRequest(
|
||||
@@ -148,7 +148,7 @@ void PermissionRequestManager::AddRequest(
|
||||
|
||||
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
||||
switches::kDenyPermissionPrompts)) {
|
||||
@@ -1308,7 +1245,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
|
||||
request->RequestFinished();
|
||||
return;
|
||||
}
|
||||
@@ -238,7 +238,7 @@ void PermissionRequestManager::AddRequest(
|
||||
@@ -224,7 +224,7 @@ void PermissionRequestManager::AddRequest(
|
||||
if (auto_approval_origin) {
|
||||
if (url::Origin::Create(request->requesting_origin()) ==
|
||||
auto_approval_origin.value()) {
|
||||
@@ -1317,14 +1254,16 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
|
||||
}
|
||||
request->RequestFinished();
|
||||
return;
|
||||
@@ -498,12 +498,13 @@ void PermissionRequestManager::Accept() {
|
||||
for (requests_iter = requests_.begin(); requests_iter != requests_.end();
|
||||
requests_iter++) {
|
||||
@@ -541,14 +541,15 @@ void PermissionRequestManager::Accept() {
|
||||
(*requests_iter)->request_type(),
|
||||
PermissionAction::GRANTED);
|
||||
PermissionGrantedIncludingDuplicates(*requests_iter,
|
||||
- /*is_one_time=*/false);
|
||||
+ /*is_one_time=*/false,
|
||||
+ content_settings::LifetimeMode::Always);
|
||||
}
|
||||
|
||||
NotifyRequestDecided(PermissionAction::GRANTED);
|
||||
FinalizeCurrentRequests(PermissionAction::GRANTED);
|
||||
}
|
||||
|
||||
@@ -1333,15 +1272,17 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
|
||||
if (ignore_callbacks_from_prompt_)
|
||||
return;
|
||||
DCHECK(view_);
|
||||
@@ -511,12 +512,22 @@ void PermissionRequestManager::AcceptThisTime() {
|
||||
for (requests_iter = requests_.begin(); requests_iter != requests_.end();
|
||||
requests_iter++) {
|
||||
@@ -559,7 +560,8 @@ void PermissionRequestManager::AcceptThisTime() {
|
||||
(*requests_iter)->request_type(),
|
||||
PermissionAction::GRANTED_ONCE);
|
||||
PermissionGrantedIncludingDuplicates(*requests_iter,
|
||||
- /*is_one_time=*/true);
|
||||
+ /*is_one_time=*/true,
|
||||
+ mode);
|
||||
}
|
||||
FinalizeCurrentRequests(PermissionAction::GRANTED_ONCE);
|
||||
|
||||
NotifyRequestDecided(PermissionAction::GRANTED_ONCE);
|
||||
@@ -567,6 +569,15 @@ void PermissionRequestManager::AcceptThisTime() {
|
||||
}
|
||||
|
||||
void PermissionRequestManager::Deny() {
|
||||
@@ -1357,24 +1298,24 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
|
||||
if (ignore_callbacks_from_prompt_)
|
||||
return;
|
||||
DCHECK(view_);
|
||||
@@ -538,7 +549,7 @@ void PermissionRequestManager::Deny() {
|
||||
std::vector<PermissionRequest*>::iterator requests_iter;
|
||||
for (requests_iter = requests_.begin(); requests_iter != requests_.end();
|
||||
requests_iter++) {
|
||||
@@ -589,7 +600,7 @@ void PermissionRequestManager::Deny() {
|
||||
StorePermissionActionForUMA((*requests_iter)->requesting_origin(),
|
||||
(*requests_iter)->request_type(),
|
||||
PermissionAction::DENIED);
|
||||
- PermissionDeniedIncludingDuplicates(*requests_iter);
|
||||
+ PermissionDeniedIncludingDuplicates(*requests_iter, is_one_time, lifetime_option);
|
||||
}
|
||||
FinalizeCurrentRequests(PermissionAction::DENIED);
|
||||
}
|
||||
@@ -890,25 +901,26 @@ PermissionRequest* PermissionRequestManager::GetExistingRequest(
|
||||
|
||||
NotifyRequestDecided(PermissionAction::DENIED);
|
||||
@@ -971,25 +982,25 @@ PermissionRequest* PermissionRequestManager::GetExistingRequest(
|
||||
|
||||
void PermissionRequestManager::PermissionGrantedIncludingDuplicates(
|
||||
PermissionRequest* request,
|
||||
- bool is_one_time) {
|
||||
+ bool is_one_time, content_settings::LifetimeMode lifetime_option) {
|
||||
DCHECK_EQ(1, base::STLCount(requests_, request) +
|
||||
base::STLCount(queued_requests_, request))
|
||||
<< "Only requests in [queued_[frame_]]requests_ can have duplicates";
|
||||
DCHECK_EQ(1ul, base::ranges::count(requests_, request) +
|
||||
pending_permission_requests_.Count(request))
|
||||
<< "Only requests in [pending_permission_]requests_ can have duplicates";
|
||||
- request->PermissionGranted(is_one_time);
|
||||
+ request->PermissionGranted(is_one_time, lifetime_option);
|
||||
auto range = duplicate_requests_.equal_range(request);
|
||||
@@ -1385,11 +1326,10 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
|
||||
|
||||
void PermissionRequestManager::PermissionDeniedIncludingDuplicates(
|
||||
- PermissionRequest* request) {
|
||||
+ PermissionRequest* request, bool is_one_time,
|
||||
+ content_settings::LifetimeMode lifetime_option) {
|
||||
DCHECK_EQ(1, base::STLCount(requests_, request) +
|
||||
base::STLCount(queued_requests_, request))
|
||||
<< "Only requests in [queued_]requests_ can have duplicates";
|
||||
+ PermissionRequest* request, bool is_one_time, content_settings::LifetimeMode lifetime_option) {
|
||||
DCHECK_EQ(1ul, base::ranges::count(requests_, request) +
|
||||
pending_permission_requests_.Count(request))
|
||||
<< "Only requests in [pending_permission_]requests_ can have duplicates";
|
||||
- request->PermissionDenied();
|
||||
+ request->PermissionDenied(is_one_time, lifetime_option);
|
||||
auto range = duplicate_requests_.equal_range(request);
|
||||
@@ -1399,7 +1339,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
|
||||
}
|
||||
|
||||
void PermissionRequestManager::CancelledIncludingDuplicates(
|
||||
@@ -1084,7 +1096,7 @@ void PermissionRequestManager::LogWarningToConsole(const char* message) {
|
||||
@@ -1215,7 +1226,7 @@ void PermissionRequestManager::LogWarningToConsole(const char* message) {
|
||||
void PermissionRequestManager::DoAutoResponseForTesting() {
|
||||
switch (auto_response_for_test_) {
|
||||
case ACCEPT_ONCE:
|
||||
@@ -1411,7 +1351,7 @@ diff --git a/components/permissions/permission_request_manager.cc b/components/p
|
||||
diff --git a/components/permissions/permission_request_manager.h b/components/permissions/permission_request_manager.h
|
||||
--- a/components/permissions/permission_request_manager.h
|
||||
+++ b/components/permissions/permission_request_manager.h
|
||||
@@ -136,8 +136,10 @@ class PermissionRequestManager
|
||||
@@ -155,8 +155,10 @@ class PermissionRequestManager
|
||||
GURL GetRequestingOrigin() const override;
|
||||
GURL GetEmbeddingOrigin() const override;
|
||||
void Accept() override;
|
||||
@@ -1423,7 +1363,7 @@ diff --git a/components/permissions/permission_request_manager.h b/components/pe
|
||||
void Dismiss() override;
|
||||
void Ignore() override;
|
||||
bool WasCurrentRequestAlreadyDisplayed() override;
|
||||
@@ -272,9 +274,12 @@ class PermissionRequestManager
|
||||
@@ -317,9 +319,12 @@ class PermissionRequestManager
|
||||
|
||||
// Calls PermissionGranted on a request and all its duplicates.
|
||||
void PermissionGrantedIncludingDuplicates(PermissionRequest* request,
|
||||
|
||||
@@ -2,13 +2,14 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Thu, 18 Feb 2021 21:22:52 +0100
|
||||
Subject: Add menu item to bookmark all tabs
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/android/java/res/menu/main_menu.xml | 7 +++
|
||||
.../chrome/browser/ChromeTabbedActivity.java | 26 ++++++++
|
||||
.../browser/bookmarks/BookmarkBridge.java | 60 +++++++++++++++++++
|
||||
.../chrome/browser/ChromeTabbedActivity.java | 24 ++++++++
|
||||
.../browser/bookmarks/BookmarkBridge.java | 61 +++++++++++++++++++
|
||||
.../browser/bookmarks/BookmarkUtils.java | 4 ++
|
||||
.../android/bookmarks/bookmark_bridge.cc | 17 ++++++
|
||||
.../android/bookmarks/bookmark_bridge.h | 4 ++
|
||||
.../bookmarks/android/bookmark_bridge.cc | 17 ++++++
|
||||
.../bookmarks/android/bookmark_bridge.h | 4 ++
|
||||
.../browser/bookmarks/bookmark_html_writer.cc | 8 ++-
|
||||
.../bookmarks/chrome_bookmark_client.cc | 2 +
|
||||
.../dialogs/DownloadLocationCustomView.java | 4 +-
|
||||
@@ -24,12 +25,12 @@ Subject: Add menu item to bookmark all tabs
|
||||
components/bookmarks/browser/bookmark_node.h | 5 ++
|
||||
components/bookmarks/browser/model_loader.cc | 3 +-
|
||||
.../bookmark_specifics_conversions.cc | 1 +
|
||||
21 files changed, 202 insertions(+), 10 deletions(-)
|
||||
21 files changed, 201 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
|
||||
--- a/chrome/android/java/res/menu/main_menu.xml
|
||||
+++ b/chrome/android/java/res/menu/main_menu.xml
|
||||
@@ -64,6 +64,10 @@
|
||||
@@ -66,6 +66,10 @@ found in the LICENSE file.
|
||||
<item android:id="@+id/all_bookmarks_menu_id"
|
||||
android:title="@string/menu_bookmarks"
|
||||
android:icon="@drawable/btn_star_filled" />
|
||||
@@ -40,29 +41,28 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re
|
||||
<item android:id="@+id/recent_tabs_menu_id"
|
||||
android:title="@string/menu_recent_tabs"
|
||||
android:icon="@drawable/devices_black_24dp" />
|
||||
@@ -181,6 +185,9 @@
|
||||
@@ -184,6 +188,9 @@ found in the LICENSE file.
|
||||
<item android:id="@+id/menu_group_tabs"
|
||||
android:title="@string/menu_group_tabs"
|
||||
android:icon="@drawable/ic_widgets" />
|
||||
+ <item android:id="@+id/bookmark_all_tabs_menu_id"
|
||||
+ android:title="@string/menu_bookmark_all_tabs"
|
||||
+ android:icon="@drawable/ic_folder_blue_24dp" />
|
||||
<item android:id="@+id/track_prices_row_menu_id"
|
||||
android:title="@string/menu_track_prices"
|
||||
android:icon="@drawable/ic_trending_down_black" />
|
||||
<item android:id="@+id/menu_select_tabs"
|
||||
android:title="@string/menu_select_tabs"
|
||||
android:icon="@drawable/ic_select_tabs" />
|
||||
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
|
||||
@@ -69,6 +69,8 @@ import org.chromium.chrome.browser.app.tabmodel.ChromeNextTabPolicySupplier;
|
||||
import org.chromium.chrome.browser.app.tabmodel.TabModelOrchestrator;
|
||||
import org.chromium.chrome.browser.app.tabmodel.TabWindowManagerSingleton;
|
||||
import org.chromium.chrome.browser.app.tabmodel.TabbedModeTabModelOrchestrator;
|
||||
+import org.chromium.chrome.browser.bookmarks.BookmarkBridge;
|
||||
+import org.chromium.chrome.browser.bookmarks.BookmarkModel;
|
||||
@@ -77,6 +77,7 @@ import org.chromium.chrome.browser.back_press.MinimizeAppAndCloseTabBackPressHan
|
||||
import org.chromium.chrome.browser.bookmarks.BookmarkUtils;
|
||||
import org.chromium.chrome.browser.browserservices.intents.WebappConstants;
|
||||
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
|
||||
@@ -2150,6 +2152,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
+import org.chromium.chrome.browser.bookmarks.BookmarkModel;
|
||||
import org.chromium.chrome.browser.compositor.layouts.Layout;
|
||||
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome;
|
||||
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone;
|
||||
@@ -2217,6 +2218,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(),
|
||||
() -> getTabModelSelector().closeAllTabs(), /*isIncognito=*/false);
|
||||
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
|
||||
CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(),
|
||||
@@ -2202,6 +2206,28 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
@@ -2269,6 +2272,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
mTabModalHandler.onOmniboxFocusChanged(hasFocus);
|
||||
}
|
||||
|
||||
@@ -83,17 +83,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ final BookmarkBridge bridge = mBookmarkBridgeSupplier.get();
|
||||
+ final BookmarkModel bookmarkModel = new BookmarkModel();
|
||||
+ final BookmarkModel bookmarkModel = mBookmarkModelSupplier.get();
|
||||
+ bookmarkModel.finishLoadingBookmarkModel(() -> {
|
||||
+ for (int i = 0; i < tabModel.getCount(); i++) {
|
||||
+ Tab tab = tabModel.getTabAt(i);
|
||||
+ if (tab.isNativePage()) {
|
||||
+ continue;
|
||||
+ }
|
||||
+ bridge.addToTabsCollection(this, tab);
|
||||
+ bookmarkModel.addToTabsCollection(this, tab);
|
||||
+ }
|
||||
+ bridge.finishedAddingToTabsCollection(this, getSnackbarManager());
|
||||
+ bookmarkModel.finishedAddingToTabsCollection(this, getSnackbarManager());
|
||||
+ });
|
||||
+ }
|
||||
+
|
||||
@@ -111,26 +110,27 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
import org.chromium.base.ObserverList;
|
||||
import org.chromium.base.ThreadUtils;
|
||||
import org.chromium.base.annotations.CalledByNative;
|
||||
@@ -46,6 +47,10 @@ import org.chromium.chrome.browser.subscriptions.CommerceSubscription;
|
||||
import org.chromium.chrome.browser.subscriptions.CommerceSubscriptionsServiceFactory;
|
||||
import org.chromium.chrome.browser.subscriptions.SubscriptionsManager;
|
||||
@@ -40,6 +41,10 @@ import org.chromium.chrome.browser.partnerbookmarks.PartnerBookmarksShim;
|
||||
import org.chromium.chrome.browser.profiles.Profile;
|
||||
import org.chromium.chrome.browser.read_later.ReadingListUtils;
|
||||
import org.chromium.chrome.browser.tab.Tab;
|
||||
+import org.chromium.chrome.browser.ui.messages.snackbar.Snackbar;
|
||||
+import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager;
|
||||
+import org.chromium.chrome.browser.ui.messages.snackbar.SnackbarManager.SnackbarController;
|
||||
+import org.chromium.chrome.R;
|
||||
import org.chromium.components.bookmarks.BookmarkId;
|
||||
import org.chromium.components.bookmarks.BookmarkItem;
|
||||
import org.chromium.components.bookmarks.BookmarkType;
|
||||
import org.chromium.components.commerce.PriceTracking.ProductPrice;
|
||||
@@ -90,6 +95,7 @@ import java.io.File;
|
||||
@@ -84,6 +89,8 @@ import java.io.File;
|
||||
* bookmark model stored in native.
|
||||
*/
|
||||
public class BookmarkBridge {
|
||||
class BookmarkBridge {
|
||||
+ private static final String TAG = "BookmarkBridge";
|
||||
+
|
||||
private final Profile mProfile;
|
||||
private boolean mIsDestroyed;
|
||||
private boolean mIsDoingExtensiveChanges;
|
||||
@@ -633,6 +639,16 @@ public class BookmarkBridge {
|
||||
@@ -356,6 +363,16 @@ class BookmarkBridge {
|
||||
mNativeBookmarkBridge, BookmarkBridge.this);
|
||||
}
|
||||
|
||||
@@ -147,7 +147,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
/**
|
||||
* @return Id representing the special "other" folder from bookmark model.
|
||||
*/
|
||||
@@ -1358,6 +1374,49 @@ public class BookmarkBridge {
|
||||
@@ -957,6 +974,49 @@ class BookmarkBridge {
|
||||
mNativeBookmarkBridge, BookmarkBridge.this, title, url);
|
||||
}
|
||||
|
||||
@@ -164,7 +164,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
+ }
|
||||
+ }
|
||||
+ BookmarkId bookmarkId =
|
||||
+ addBookmark(parent, getChildCount(parent), tab.getTitle(), tab.getUrl().getSpec());
|
||||
+ addBookmark(parent, getChildCount(parent), tab.getTitle(), tab.getUrl());
|
||||
+
|
||||
+ if (bookmarkId == null) {
|
||||
+ Log.e(TAG,
|
||||
@@ -197,7 +197,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
/**
|
||||
* @param url The URL of the reading list item.
|
||||
* @return The reading list item with the URL, or null if no such reading list item.
|
||||
@@ -1655,6 +1714,7 @@ public class BookmarkBridge {
|
||||
@@ -1167,6 +1227,7 @@ class BookmarkBridge {
|
||||
void getAllFoldersWithDepths(long nativeBookmarkBridge, BookmarkBridge caller,
|
||||
List<BookmarkId> folderList, List<Integer> depthList);
|
||||
BookmarkId getRootFolderId(long nativeBookmarkBridge, BookmarkBridge caller);
|
||||
@@ -208,7 +208,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
|
||||
@@ -633,6 +633,7 @@ public class BookmarkUtils {
|
||||
@@ -648,6 +648,7 @@ public class BookmarkUtils {
|
||||
List<BookmarkId> topLevelFolders = new ArrayList<>();
|
||||
BookmarkId desktopNodeId = bookmarkModel.getDesktopFolderId();
|
||||
BookmarkId mobileNodeId = bookmarkModel.getMobileFolderId();
|
||||
@@ -216,7 +216,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
BookmarkId othersNodeId = bookmarkModel.getOtherFolderId();
|
||||
|
||||
List<BookmarkId> specialFoldersIds =
|
||||
@@ -658,6 +659,9 @@ public class BookmarkUtils {
|
||||
@@ -673,6 +674,9 @@ public class BookmarkUtils {
|
||||
if (bookmarkModel.isFolderVisible(mobileNodeId)) {
|
||||
topLevelFolders.add(mobileNodeId);
|
||||
}
|
||||
@@ -226,10 +226,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
if (bookmarkModel.isFolderVisible(desktopNodeId)) {
|
||||
topLevelFolders.add(desktopNodeId);
|
||||
}
|
||||
diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browser/android/bookmarks/bookmark_bridge.cc
|
||||
--- a/chrome/browser/android/bookmarks/bookmark_bridge.cc
|
||||
+++ b/chrome/browser/android/bookmarks/bookmark_bridge.cc
|
||||
@@ -434,6 +434,11 @@ void BookmarkBridge::GetTopLevelFolderIDs(
|
||||
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc
|
||||
--- a/chrome/browser/bookmarks/android/bookmark_bridge.cc
|
||||
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc
|
||||
@@ -431,6 +431,11 @@ void BookmarkBridge::GetTopLevelFolderIDs(
|
||||
top_level_folders.push_back(node.get());
|
||||
}
|
||||
|
||||
@@ -241,7 +241,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
|
||||
for (const auto& node : bookmark_model_->bookmark_bar_node()->children()) {
|
||||
if (node->is_folder())
|
||||
top_level_folders.push_back(node.get());
|
||||
@@ -482,6 +487,7 @@ void BookmarkBridge::GetAllFoldersWithDepths(
|
||||
@@ -478,6 +483,7 @@ void BookmarkBridge::GetAllFoldersWithDepths(
|
||||
// Vector to temporarily contain all child bookmarks at same level for sorting
|
||||
std::vector<const BookmarkNode*> bookmarks = {
|
||||
bookmark_model_->mobile_node(),
|
||||
@@ -249,7 +249,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
|
||||
bookmark_model_->bookmark_bar_node(),
|
||||
bookmark_model_->other_node(),
|
||||
};
|
||||
@@ -536,6 +542,17 @@ ScopedJavaLocalRef<jobject> BookmarkBridge::GetMobileFolderId(
|
||||
@@ -530,6 +536,17 @@ ScopedJavaLocalRef<jobject> BookmarkBridge::GetMobileFolderId(
|
||||
return folder_id_obj;
|
||||
}
|
||||
|
||||
@@ -267,10 +267,10 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
|
||||
ScopedJavaLocalRef<jobject> BookmarkBridge::GetOtherFolderId(
|
||||
JNIEnv* env,
|
||||
const JavaParamRef<jobject>& obj) {
|
||||
diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser/android/bookmarks/bookmark_bridge.h
|
||||
--- a/chrome/browser/android/bookmarks/bookmark_bridge.h
|
||||
+++ b/chrome/browser/android/bookmarks/bookmark_bridge.h
|
||||
@@ -121,6 +121,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser/bookmarks/android/bookmark_bridge.h
|
||||
--- a/chrome/browser/bookmarks/android/bookmark_bridge.h
|
||||
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.h
|
||||
@@ -119,6 +119,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
|
||||
JNIEnv* env,
|
||||
const base::android::JavaParamRef<jobject>& obj);
|
||||
|
||||
@@ -316,7 +316,7 @@ diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/b
|
||||
diff --git a/chrome/browser/bookmarks/chrome_bookmark_client.cc b/chrome/browser/bookmarks/chrome_bookmark_client.cc
|
||||
--- a/chrome/browser/bookmarks/chrome_bookmark_client.cc
|
||||
+++ b/chrome/browser/bookmarks/chrome_bookmark_client.cc
|
||||
@@ -117,6 +117,8 @@ bool ChromeBookmarkClient::IsPermanentNodeVisibleWhenEmpty(
|
||||
@@ -144,6 +144,8 @@ bool ChromeBookmarkClient::IsPermanentNodeVisibleWhenEmpty(
|
||||
return !is_mobile;
|
||||
case bookmarks::BookmarkNode::MOBILE:
|
||||
return is_mobile;
|
||||
@@ -349,9 +349,9 @@ 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
|
||||
@@ -3414,6 +3414,9 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
<message name="IDS_MENU_TRACK_PRICES" desc="Menu item for tracking prices on tabs. [CHAR_LIMIT=27]">
|
||||
Track prices
|
||||
@@ -3603,6 +3603,9 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
<message name="IDS_MENU_SELECT_TABS" desc="Menu item for bulk editing tabs. [CHAR_LIMIT=27]">
|
||||
Select tabs
|
||||
</message>
|
||||
+ <message name="IDS_MENU_BOOKMARK_ALL_TABS" desc="Menu item to bookmark all tabs. [CHAR-LIMIT=27]">
|
||||
+ Bookmark all tabs
|
||||
@@ -385,7 +385,7 @@ diff --git a/components/bookmark_bar_strings.grdp b/components/bookmark_bar_stri
|
||||
diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmarks/browser/bookmark_codec.cc
|
||||
--- a/components/bookmarks/browser/bookmark_codec.cc
|
||||
+++ b/components/bookmarks/browser/bookmark_codec.cc
|
||||
@@ -34,6 +34,7 @@ const char BookmarkCodec::kBookmarkBarFolderNameKey[] = "bookmark_bar";
|
||||
@@ -35,6 +35,7 @@ const char BookmarkCodec::kBookmarkBarFolderNameKey[] = "bookmark_bar";
|
||||
const char BookmarkCodec::kOtherBookmarkFolderNameKey[] = "other";
|
||||
// The value is left as 'synced' for historical reasons.
|
||||
const char BookmarkCodec::kMobileBookmarkFolderNameKey[] = "synced";
|
||||
@@ -393,33 +393,33 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
|
||||
const char BookmarkCodec::kVersionKey[] = "version";
|
||||
const char BookmarkCodec::kChecksumKey[] = "checksum";
|
||||
const char BookmarkCodec::kIdKey[] = "id";
|
||||
@@ -75,7 +76,8 @@ BookmarkCodec::~BookmarkCodec() = default;
|
||||
@@ -78,7 +79,8 @@ BookmarkCodec::~BookmarkCodec() = default;
|
||||
base::Value BookmarkCodec::Encode(BookmarkModel* model,
|
||||
std::string sync_metadata_str) {
|
||||
return Encode(model->bookmark_bar_node(), model->other_node(),
|
||||
- model->mobile_node(), model->root_node()->GetMetaInfoMap(),
|
||||
+ model->mobile_node(), model->tabs_collection_node(),
|
||||
+ model->root_node()->GetMetaInfoMap(),
|
||||
model->root_node()->GetUnsyncedMetaInfoMap(),
|
||||
std::move(sync_metadata_str));
|
||||
}
|
||||
|
||||
@@ -83,6 +85,7 @@ base::Value BookmarkCodec::Encode(
|
||||
@@ -87,6 +89,7 @@ base::Value BookmarkCodec::Encode(
|
||||
const BookmarkNode* bookmark_bar_node,
|
||||
const BookmarkNode* other_folder_node,
|
||||
const BookmarkNode* mobile_folder_node,
|
||||
+ const BookmarkNode* tabs_folder_node,
|
||||
const BookmarkNode::MetaInfoMap* model_meta_info_map,
|
||||
const BookmarkNode::MetaInfoMap* model_unsynced_meta_info_map,
|
||||
std::string sync_metadata_str) {
|
||||
ids_reassigned_ = false;
|
||||
@@ -104,6 +107,7 @@ base::Value BookmarkCodec::Encode(
|
||||
@@ -109,6 +112,7 @@ base::Value BookmarkCodec::Encode(
|
||||
roots.SetKey(kBookmarkBarFolderNameKey, EncodeNode(bookmark_bar_node));
|
||||
roots.SetKey(kOtherBookmarkFolderNameKey, EncodeNode(other_folder_node));
|
||||
roots.SetKey(kMobileBookmarkFolderNameKey, EncodeNode(mobile_folder_node));
|
||||
+ roots.SetKey(kTabsBookmarkFolderNameKey, EncodeNode(tabs_folder_node));
|
||||
if (model_meta_info_map)
|
||||
roots.SetKey(kMetaInfo, EncodeMetaInfo(*model_meta_info_map));
|
||||
FinalizeChecksum();
|
||||
@@ -120,6 +124,7 @@ bool BookmarkCodec::Decode(const base::Value& value,
|
||||
if (model_unsynced_meta_info_map) {
|
||||
@@ -130,6 +134,7 @@ bool BookmarkCodec::Decode(const base::Value& value,
|
||||
BookmarkNode* bb_node,
|
||||
BookmarkNode* other_folder_node,
|
||||
BookmarkNode* mobile_folder_node,
|
||||
@@ -427,7 +427,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
|
||||
int64_t* max_id,
|
||||
std::string* sync_metadata_str) {
|
||||
ids_.clear();
|
||||
@@ -127,7 +132,8 @@ bool BookmarkCodec::Decode(const base::Value& value,
|
||||
@@ -137,7 +142,8 @@ bool BookmarkCodec::Decode(const base::Value& value,
|
||||
base::GUID::ParseLowercase(BookmarkNode::kBookmarkBarNodeGuid),
|
||||
base::GUID::ParseLowercase(BookmarkNode::kOtherBookmarksNodeGuid),
|
||||
base::GUID::ParseLowercase(BookmarkNode::kMobileBookmarksNodeGuid),
|
||||
@@ -437,7 +437,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
|
||||
ids_reassigned_ = false;
|
||||
guids_reassigned_ = false;
|
||||
ids_valid_ = true;
|
||||
@@ -135,12 +141,13 @@ bool BookmarkCodec::Decode(const base::Value& value,
|
||||
@@ -145,12 +151,13 @@ bool BookmarkCodec::Decode(const base::Value& value,
|
||||
stored_checksum_.clear();
|
||||
InitializeChecksum();
|
||||
bool success = DecodeHelper(bb_node, other_folder_node, mobile_folder_node,
|
||||
@@ -452,7 +452,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
|
||||
*max_id = maximum_id_ + 1;
|
||||
return success;
|
||||
}
|
||||
@@ -190,6 +197,7 @@ base::Value BookmarkCodec::EncodeMetaInfo(
|
||||
@@ -207,6 +214,7 @@ base::Value BookmarkCodec::EncodeMetaInfo(
|
||||
bool BookmarkCodec::DecodeHelper(BookmarkNode* bb_node,
|
||||
BookmarkNode* other_folder_node,
|
||||
BookmarkNode* mobile_folder_node,
|
||||
@@ -460,7 +460,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
|
||||
const base::Value& value,
|
||||
std::string* sync_metadata_str) {
|
||||
if (!value.is_dict())
|
||||
@@ -221,6 +229,12 @@ bool BookmarkCodec::DecodeHelper(BookmarkNode* bb_node,
|
||||
@@ -238,6 +246,12 @@ bool BookmarkCodec::DecodeHelper(BookmarkNode* bb_node,
|
||||
return false;
|
||||
|
||||
DecodeNode(*bb_value, nullptr, bb_node);
|
||||
@@ -473,7 +473,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
|
||||
DecodeNode(*other_folder_value, nullptr, other_folder_node);
|
||||
DecodeNode(*mobile_folder_value, nullptr, mobile_folder_node);
|
||||
|
||||
@@ -456,11 +470,13 @@ void BookmarkCodec::DecodeMetaInfoHelper(
|
||||
@@ -508,11 +522,13 @@ void BookmarkCodec::DecodeMetaInfoHelper(
|
||||
|
||||
void BookmarkCodec::ReassignIDs(BookmarkNode* bb_node,
|
||||
BookmarkNode* other_node,
|
||||
@@ -491,15 +491,15 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar
|
||||
diff --git a/components/bookmarks/browser/bookmark_codec.h b/components/bookmarks/browser/bookmark_codec.h
|
||||
--- a/components/bookmarks/browser/bookmark_codec.h
|
||||
+++ b/components/bookmarks/browser/bookmark_codec.h
|
||||
@@ -48,6 +48,7 @@ class BookmarkCodec {
|
||||
base::Value Encode(const BookmarkNode* bookmark_bar_node,
|
||||
const BookmarkNode* other_folder_node,
|
||||
const BookmarkNode* mobile_folder_node,
|
||||
+ const BookmarkNode* tabs_folder_node,
|
||||
const BookmarkNode::MetaInfoMap* model_meta_info_map,
|
||||
std::string sync_metadata_str);
|
||||
|
||||
@@ -60,6 +61,7 @@ class BookmarkCodec {
|
||||
@@ -49,6 +49,7 @@ class BookmarkCodec {
|
||||
const BookmarkNode* bookmark_bar_node,
|
||||
const BookmarkNode* other_folder_node,
|
||||
const BookmarkNode* mobile_folder_node,
|
||||
+ const BookmarkNode* tabs_folder_node,
|
||||
const BookmarkNode::MetaInfoMap* model_meta_info_map,
|
||||
const BookmarkNode::MetaInfoMap* model_unsynced_meta_info_map,
|
||||
std::string sync_metadata_str);
|
||||
@@ -62,6 +63,7 @@ class BookmarkCodec {
|
||||
BookmarkNode* bb_node,
|
||||
BookmarkNode* other_folder_node,
|
||||
BookmarkNode* mobile_folder_node,
|
||||
@@ -507,15 +507,15 @@ diff --git a/components/bookmarks/browser/bookmark_codec.h b/components/bookmark
|
||||
int64_t* max_node_id,
|
||||
std::string* sync_metadata_str);
|
||||
|
||||
@@ -105,6 +107,7 @@ class BookmarkCodec {
|
||||
@@ -113,6 +115,7 @@ class BookmarkCodec {
|
||||
// Allows the BookmarkClient to read and a write a string blob from the JSON
|
||||
// file. That string captures the bookmarks sync metadata.
|
||||
static const char kSyncMetadata[];
|
||||
+ static const char kTabsBookmarkFolderNameKey[];
|
||||
static const char kDateLastUsed[];
|
||||
|
||||
// Possible values for kTypeKey.
|
||||
static const char kTypeURL[];
|
||||
@@ -121,6 +124,7 @@ class BookmarkCodec {
|
||||
@@ -130,6 +133,7 @@ class BookmarkCodec {
|
||||
bool DecodeHelper(BookmarkNode* bb_node,
|
||||
BookmarkNode* other_folder_node,
|
||||
BookmarkNode* mobile_folder_node,
|
||||
@@ -523,7 +523,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.h b/components/bookmark
|
||||
const base::Value& value,
|
||||
std::string* sync_metadata_str);
|
||||
|
||||
@@ -132,7 +136,8 @@ class BookmarkCodec {
|
||||
@@ -141,7 +145,8 @@ class BookmarkCodec {
|
||||
// Reassigns bookmark IDs for all nodes.
|
||||
void ReassignIDs(BookmarkNode* bb_node,
|
||||
BookmarkNode* other_node,
|
||||
@@ -536,7 +536,7 @@ diff --git a/components/bookmarks/browser/bookmark_codec.h b/components/bookmark
|
||||
diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/bookmarks/browser/bookmark_load_details.cc
|
||||
--- a/components/bookmarks/browser/bookmark_load_details.cc
|
||||
+++ b/components/bookmarks/browser/bookmark_load_details.cc
|
||||
@@ -36,6 +36,10 @@ BookmarkLoadDetails::BookmarkLoadDetails(BookmarkClient* client)
|
||||
@@ -37,6 +37,10 @@ BookmarkLoadDetails::BookmarkLoadDetails(BookmarkClient* client)
|
||||
root_node_->Add(BookmarkPermanentNode::CreateMobileBookmarks(
|
||||
max_id_++,
|
||||
client->IsPermanentNodeVisibleWhenEmpty(BookmarkNode::MOBILE))));
|
||||
@@ -550,7 +550,7 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.cc b/components/
|
||||
diff --git a/components/bookmarks/browser/bookmark_load_details.h b/components/bookmarks/browser/bookmark_load_details.h
|
||||
--- a/components/bookmarks/browser/bookmark_load_details.h
|
||||
+++ b/components/bookmarks/browser/bookmark_load_details.h
|
||||
@@ -43,6 +43,7 @@ class BookmarkLoadDetails {
|
||||
@@ -47,6 +47,7 @@ class BookmarkLoadDetails {
|
||||
BookmarkPermanentNode* bb_node() { return bb_node_; }
|
||||
BookmarkPermanentNode* mobile_folder_node() { return mobile_folder_node_; }
|
||||
BookmarkPermanentNode* other_folder_node() { return other_folder_node_; }
|
||||
@@ -558,10 +558,10 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.h b/components/b
|
||||
|
||||
TitledUrlIndex* index() { return index_.get(); }
|
||||
std::unique_ptr<TitledUrlIndex> owned_index() { return std::move(index_); }
|
||||
@@ -97,6 +98,7 @@ class BookmarkLoadDetails {
|
||||
raw_ptr<BookmarkPermanentNode> bb_node_ = nullptr;
|
||||
raw_ptr<BookmarkPermanentNode> other_folder_node_ = nullptr;
|
||||
raw_ptr<BookmarkPermanentNode> mobile_folder_node_ = nullptr;
|
||||
@@ -112,6 +113,7 @@ class BookmarkLoadDetails {
|
||||
nullptr;
|
||||
raw_ptr<BookmarkPermanentNode, DanglingUntriaged> mobile_folder_node_ =
|
||||
nullptr;
|
||||
+ BookmarkPermanentNode* tabs_collection_folder_node_ = nullptr;
|
||||
LoadManagedNodeCallback load_managed_node_callback_;
|
||||
std::unique_ptr<TitledUrlIndex> index_;
|
||||
@@ -569,7 +569,7 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.h b/components/b
|
||||
diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmarks/browser/bookmark_model.cc
|
||||
--- a/components/bookmarks/browser/bookmark_model.cc
|
||||
+++ b/components/bookmarks/browser/bookmark_model.cc
|
||||
@@ -565,7 +565,7 @@ bool BookmarkModel::HasBookmarks() {
|
||||
@@ -670,7 +670,7 @@ bool BookmarkModel::HasBookmarks() {
|
||||
bool BookmarkModel::HasNoUserCreatedBookmarksOrFolders() {
|
||||
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
|
||||
return bookmark_bar_node_->children().empty() &&
|
||||
@@ -578,7 +578,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmar
|
||||
}
|
||||
|
||||
bool BookmarkModel::IsBookmarked(const GURL& url) {
|
||||
@@ -807,6 +807,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr<BookmarkLoadDetails> details) {
|
||||
@@ -926,6 +926,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr<BookmarkLoadDetails> details) {
|
||||
bookmark_bar_node_ = details->bb_node();
|
||||
other_node_ = details->other_folder_node();
|
||||
mobile_node_ = details->mobile_folder_node();
|
||||
@@ -589,7 +589,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmar
|
||||
diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmarks/browser/bookmark_model.h
|
||||
--- a/components/bookmarks/browser/bookmark_model.h
|
||||
+++ b/components/bookmarks/browser/bookmark_model.h
|
||||
@@ -121,6 +121,12 @@ class BookmarkModel : public BookmarkUndoProvider,
|
||||
@@ -122,6 +122,12 @@ class BookmarkModel : public BookmarkUndoProvider,
|
||||
return mobile_node_;
|
||||
}
|
||||
|
||||
@@ -602,10 +602,10 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark
|
||||
bool is_root_node(const BookmarkNode* node) const {
|
||||
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
|
||||
return node == root_;
|
||||
@@ -396,6 +402,7 @@ class BookmarkModel : public BookmarkUndoProvider,
|
||||
raw_ptr<BookmarkPermanentNode> bookmark_bar_node_ = nullptr;
|
||||
raw_ptr<BookmarkPermanentNode> other_node_ = nullptr;
|
||||
raw_ptr<BookmarkPermanentNode> mobile_node_ = nullptr;
|
||||
@@ -446,6 +452,7 @@ class BookmarkModel : public BookmarkUndoProvider,
|
||||
nullptr;
|
||||
raw_ptr<BookmarkPermanentNode, DanglingUntriaged> other_node_ = nullptr;
|
||||
raw_ptr<BookmarkPermanentNode, DanglingUntriaged> mobile_node_ = nullptr;
|
||||
+ raw_ptr<BookmarkPermanentNode> tabs_collection_node_ = nullptr;
|
||||
|
||||
// The maximum ID assigned to the bookmark nodes in the model.
|
||||
@@ -624,7 +624,7 @@ diff --git a/components/bookmarks/browser/bookmark_node.cc b/components/bookmark
|
||||
// static
|
||||
const char BookmarkNode::kManagedNodeGuid[] =
|
||||
"323123f4-9381-5aee-80e6-ea5fca2f7672";
|
||||
@@ -225,6 +229,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id,
|
||||
@@ -275,6 +279,17 @@ BookmarkPermanentNode::CreateMobileBookmarks(int64_t id,
|
||||
visible_when_empty));
|
||||
}
|
||||
|
||||
@@ -661,7 +661,7 @@ diff --git a/components/bookmarks/browser/bookmark_node.h b/components/bookmarks
|
||||
static const char kManagedNodeGuid[];
|
||||
|
||||
// A bug in sync caused some problematic GUIDs to be produced.
|
||||
@@ -250,6 +252,9 @@ class BookmarkPermanentNode : public BookmarkNode {
|
||||
@@ -270,6 +272,9 @@ class BookmarkPermanentNode : public BookmarkNode {
|
||||
static std::unique_ptr<BookmarkPermanentNode> CreateMobileBookmarks(
|
||||
int64_t id,
|
||||
bool visible_when_empty);
|
||||
@@ -674,7 +674,7 @@ diff --git a/components/bookmarks/browser/bookmark_node.h b/components/bookmarks
|
||||
diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks/browser/model_loader.cc
|
||||
--- a/components/bookmarks/browser/model_loader.cc
|
||||
+++ b/components/bookmarks/browser/model_loader.cc
|
||||
@@ -54,7 +54,8 @@ void LoadBookmarks(const base::FilePath& path,
|
||||
@@ -58,7 +58,8 @@ void LoadBookmarks(const base::FilePath& path,
|
||||
std::string sync_metadata_str;
|
||||
BookmarkCodec codec;
|
||||
codec.Decode(*root, details->bb_node(), details->other_folder_node(),
|
||||
@@ -687,7 +687,7 @@ diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks
|
||||
diff --git a/components/sync_bookmarks/bookmark_specifics_conversions.cc b/components/sync_bookmarks/bookmark_specifics_conversions.cc
|
||||
--- a/components/sync_bookmarks/bookmark_specifics_conversions.cc
|
||||
+++ b/components/sync_bookmarks/bookmark_specifics_conversions.cc
|
||||
@@ -419,6 +419,7 @@ sync_pb::BookmarkSpecifics::Type GetProtoTypeFromBookmarkNode(
|
||||
@@ -446,6 +446,7 @@ sync_pb::BookmarkSpecifics::Type GetProtoTypeFromBookmarkNode(
|
||||
case bookmarks::BookmarkNode::BOOKMARK_BAR:
|
||||
case bookmarks::BookmarkNode::OTHER_NODE:
|
||||
case bookmarks::BookmarkNode::MOBILE:
|
||||
|
||||
@@ -2,20 +2,21 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Mon, 13 Jul 2020 00:37:06 +0200
|
||||
Subject: Add menu item to view source
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/android/java/res/menu/custom_tabs_menu.xml | 3 +++
|
||||
chrome/android/java/res/menu/main_menu.xml | 3 +++
|
||||
.../chrome/browser/ChromeTabbedActivity.java | 2 ++
|
||||
.../chrome/browser/app/ChromeActivity.java | 5 +++++
|
||||
.../app/appmenu/AppMenuPropertiesDelegateImpl.java | 14 ++++++++++++++
|
||||
.../CustomTabAppMenuPropertiesDelegate.java | 1 +
|
||||
.../ui/android/strings/android_chrome_strings.grd | 4 ++++
|
||||
7 files changed, 32 insertions(+)
|
||||
.../android/java/res/menu/custom_tabs_menu.xml | 3 +++
|
||||
chrome/android/java/res/menu/main_menu.xml | 3 +++
|
||||
.../chrome/browser/ChromeTabbedActivity.java | 2 ++
|
||||
.../chrome/browser/app/ChromeActivity.java | 5 +++++
|
||||
.../appmenu/AppMenuPropertiesDelegateImpl.java | 18 ++++++++++++++++++
|
||||
.../CustomTabAppMenuPropertiesDelegate.java | 1 +
|
||||
.../android/strings/android_chrome_strings.grd | 4 ++++
|
||||
7 files changed, 36 insertions(+)
|
||||
|
||||
diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/java/res/menu/custom_tabs_menu.xml
|
||||
--- a/chrome/android/java/res/menu/custom_tabs_menu.xml
|
||||
+++ b/chrome/android/java/res/menu/custom_tabs_menu.xml
|
||||
@@ -46,6 +46,9 @@
|
||||
@@ -51,6 +51,9 @@ found in the LICENSE file.
|
||||
<item android:id="@+id/add_to_homescreen_id"
|
||||
android:title="@string/menu_add_to_homescreen"
|
||||
android:orderInCategory="2" />
|
||||
@@ -28,7 +29,7 @@ diff --git a/chrome/android/java/res/menu/custom_tabs_menu.xml b/chrome/android/
|
||||
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
|
||||
--- a/chrome/android/java/res/menu/main_menu.xml
|
||||
+++ b/chrome/android/java/res/menu/main_menu.xml
|
||||
@@ -106,6 +106,9 @@
|
||||
@@ -108,6 +108,9 @@ found in the LICENSE file.
|
||||
<item android:id="@+id/add_to_homescreen_id"
|
||||
android:title="@string/menu_add_to_homescreen"
|
||||
android:icon="@drawable/ic_add_to_home_screen" />
|
||||
@@ -41,7 +42,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
|
||||
@@ -2176,6 +2176,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
@@ -2243,6 +2243,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
|
||||
}
|
||||
RecordUserAction.record("MobileMenuDownloadManager");
|
||||
@@ -53,7 +54,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
|
||||
@@ -2518,6 +2518,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
@@ -2488,6 +2488,11 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -68,7 +69,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/AppMenuPropertiesDelegateImpl.java
|
||||
@@ -507,6 +507,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
|
||||
@@ -550,6 +550,7 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
|
||||
isChromeScheme, isFileScheme, isContentScheme, isIncognito, url));
|
||||
|
||||
updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */, isChromeScheme);
|
||||
@@ -76,8 +77,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
|
||||
|
||||
updateAutoDarkMenuItem(menu, currentTab, isChromeScheme);
|
||||
|
||||
@@ -1153,6 +1154,19 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
|
||||
stopPriceTrackingMenuItem.setVisible(priceTrackingEnabled);
|
||||
@@ -1244,6 +1245,23 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
|
||||
stopPriceTrackingMenuItem.setVisible(false);
|
||||
}
|
||||
|
||||
+ /**
|
||||
@@ -89,8 +90,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
|
||||
+ protected void updateViewSourceMenuItem(
|
||||
+ Menu menu, Tab currentTab) {
|
||||
+ MenuItem viewSourceMenuItem = menu.findItem(R.id.view_source_id);
|
||||
+ String url = currentTab.getUrl().getSpec();
|
||||
+ viewSourceMenuItem.setVisible(!url.isEmpty() && !url.startsWith("view-source:"));
|
||||
+ boolean visible = false;
|
||||
+ if (currentTab != null) {
|
||||
+ String url = currentTab.getUrl().getSpec();
|
||||
+ visible = !url.isEmpty() && !url.startsWith("view-source:");
|
||||
+ }
|
||||
+ viewSourceMenuItem.setVisible(visible);
|
||||
+ }
|
||||
+
|
||||
/**
|
||||
@@ -99,7 +104,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/appmenu/App
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabAppMenuPropertiesDelegate.java
|
||||
@@ -216,6 +216,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
|
||||
@@ -228,6 +228,7 @@ public class CustomTabAppMenuPropertiesDelegate extends AppMenuPropertiesDelegat
|
||||
|
||||
updateRequestDesktopSiteMenuItem(
|
||||
menu, currentTab, requestDesktopSiteVisible, isChromeScheme);
|
||||
@@ -110,16 +115,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
|
||||
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
|
||||
@@ -306,6 +306,10 @@ CHAR_LIMIT guidelines:
|
||||
Chrome tips
|
||||
@@ -312,6 +312,10 @@ CHAR_LIMIT guidelines:
|
||||
USB
|
||||
</message>
|
||||
|
||||
+ <message name="IDS_VIEW_SOURCE" desc="Title for the menu command to view the source of the current page. [CHAR-LIMIT=40]">
|
||||
+ View source
|
||||
+ </message>
|
||||
+
|
||||
<message name="IDS_UNSUPPORTED" desc="Message displayed to the user when an attempted action is not supported.">
|
||||
Unsupported
|
||||
</message>
|
||||
<!-- Sign-in, sync and personalization preferences -->
|
||||
<message name="IDS_PREFS_SECTION_ACCOUNT_AND_GOOGLE_SERVICES" desc="Title for the group of account-related entries and google services in Settings. [CHAR_LIMIT=32]">
|
||||
You and Google
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,23 +2,55 @@ From: Wengling Chen <feiyu2817@gmail.com>
|
||||
Date: Mon, 1 Feb 2021 19:18:55 +0200
|
||||
Subject: Add option to force tablet UI
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../preferences/ChromePreferenceKeys.java | 1 +
|
||||
.../preferences/LegacyChromePreferenceKeys.java | 1 +
|
||||
.../browser/omnibox/LocationBarCoordinator.java | 2 +-
|
||||
.../android/strings/android_chrome_strings.grd | 6 ++++++
|
||||
.../toolbar/top/ToolbarControlContainer.java | 16 ----------------
|
||||
components/BUILD.gn | 6 +++---
|
||||
.../java/res/xml/accessibility_preferences.xml | 5 +++++
|
||||
.../accessibility/AccessibilitySettings.java | 10 ++++++++++
|
||||
ui/android/BUILD.gn | 2 ++
|
||||
.../org/chromium/ui/base/DeviceFormFactor.java | 5 +++++
|
||||
10 files changed, 34 insertions(+), 20 deletions(-)
|
||||
.../ChromeAccessibilitySettingsDelegate.java | 19 +++++++++++++++++++
|
||||
.../preferences/ChromePreferenceKeys.java | 1 +
|
||||
.../LegacyChromePreferenceKeys.java | 1 +
|
||||
.../omnibox/LocationBarCoordinator.java | 2 +-
|
||||
.../strings/android_chrome_strings.grd | 6 ++++++
|
||||
.../toolbar/top/ToolbarControlContainer.java | 16 ----------------
|
||||
components/BUILD.gn | 6 +++---
|
||||
.../res/xml/accessibility_preferences.xml | 5 +++++
|
||||
.../accessibility/AccessibilitySettings.java | 10 ++++++++++
|
||||
.../AccessibilitySettingsDelegate.java | 2 ++
|
||||
ui/android/BUILD.gn | 2 ++
|
||||
.../chromium/ui/base/DeviceFormFactor.java | 5 +++++
|
||||
12 files changed, 55 insertions(+), 20 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java
|
||||
@@ -68,6 +68,25 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting
|
||||
return new ReaderForAccessibilityDelegate();
|
||||
}
|
||||
|
||||
+ private static class ForceTabletUIDelegate implements BooleanPreferenceDelegate {
|
||||
+ @Override
|
||||
+ public boolean isEnabled() {
|
||||
+ return SharedPreferencesManager.getInstance().readBoolean(
|
||||
+ ChromePreferenceKeys.FLAGS_FORCE_TABLET_UI_ENABLED, false);
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public void setEnabled(boolean value) {
|
||||
+ SharedPreferencesManager.getInstance().writeBoolean(
|
||||
+ ChromePreferenceKeys.FLAGS_FORCE_TABLET_UI_ENABLED, value);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ public BooleanPreferenceDelegate getForceTabletUIDelegate() {
|
||||
+ return new ForceTabletUIDelegate();
|
||||
+ }
|
||||
+
|
||||
@Override
|
||||
public void addExtraPreferences(PreferenceFragmentCompat fragment) {
|
||||
if (ImageDescriptionsController.getInstance().shouldShowImageDescriptionsMenuItem()) {
|
||||
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
|
||||
@@ -441,6 +441,7 @@ public final class ChromePreferenceKeys {
|
||||
@@ -418,6 +418,7 @@ public final class ChromePreferenceKeys {
|
||||
AccessibilityConstants.FONT_USER_SET_FORCE_ENABLE_ZOOM;
|
||||
|
||||
public static final String HISTORY_SHOW_HISTORY_INFO = "history_home_show_info";
|
||||
@@ -29,7 +61,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
|
||||
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
|
||||
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
|
||||
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
|
||||
@@ -85,6 +85,7 @@ public class LegacyChromePreferenceKeys {
|
||||
@@ -67,6 +67,7 @@ public class LegacyChromePreferenceKeys {
|
||||
ChromePreferenceKeys.FLAGS_CACHED_SWAP_PIXEL_FORMAT_TO_FIX_CONVERT_FROM_TRANSLUCENT,
|
||||
ChromePreferenceKeys.FLAGS_CACHED_TAB_GROUPS_ANDROID_ENABLED,
|
||||
ChromePreferenceKeys.FONT_USER_FONT_SCALE_FACTOR,
|
||||
@@ -40,7 +72,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
|
||||
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
|
||||
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
|
||||
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
|
||||
@@ -365,7 +365,7 @@ public final class LocationBarCoordinator implements LocationBar, NativeInitObse
|
||||
@@ -376,7 +376,7 @@ public class LocationBarCoordinator implements LocationBar, NativeInitObserver,
|
||||
// OmniboxSuggestionsDropdownEmbedder implementation
|
||||
@Override
|
||||
public boolean isTablet() {
|
||||
@@ -52,8 +84,8 @@ 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
|
||||
@@ -1359,6 +1359,12 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
<message name="IDS_PRIVACY_REVIEW_SB_ENHANCED_ITEM_SEVEN" desc="Seventh bullet point that describes the details of the Safe Browsing control.">
|
||||
@@ -1439,6 +1439,12 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
<message name="IDS_PRIVACY_GUIDE_SB_ENHANCED_ITEM_SEVEN" desc="Seventh bullet point that describes the details of the Safe Browsing control.">
|
||||
Temporarily links this data to your Google Account when you’re signed in, to protect you across Google apps
|
||||
</message>
|
||||
+ <message name="IDS_FORCE_TABLET_UI_SUMMARY" desc="Summary of the preference that allows the user to force chromium to use tablet UI.">
|
||||
@@ -68,10 +100,10 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
|
||||
diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
|
||||
--- a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
|
||||
+++ b/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/browser/toolbar/top/ToolbarControlContainer.java
|
||||
@@ -106,22 +106,6 @@ public class ToolbarControlContainer extends OptimizedFrameLayout implements Con
|
||||
public void setToolbar(Toolbar toolbar, boolean isIncognito) {
|
||||
mToolbar = toolbar;
|
||||
mToolbarContainer.setToolbar(mToolbar);
|
||||
@@ -138,22 +138,6 @@ public class ToolbarControlContainer extends OptimizedFrameLayout implements Con
|
||||
mToolbarContainer.setPostInitializationDependencies(mToolbar, constraintsSupplier,
|
||||
tabSupplier, compositorInMotionSupplier,
|
||||
browserStateBrowserControlsVisibilityDelegate, isVisible);
|
||||
-
|
||||
- View toolbarView = findViewById(R.id.toolbar);
|
||||
- assert toolbarView != null;
|
||||
@@ -94,7 +126,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
|
||||
@@ -44,7 +44,7 @@ if (is_ios) {
|
||||
@@ -45,7 +45,7 @@ if (is_ios) {
|
||||
|
||||
# Omit Lacros because it allows //components to depend on //chrome, which in
|
||||
# turn depends on //extensions.
|
||||
@@ -103,7 +135,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
|
||||
disallowed_extension_deps_ = [
|
||||
# Components should largely not depend on //extensions. Since // extensions
|
||||
# is not a component target and is linked with //chrome, depending on most
|
||||
@@ -630,7 +630,7 @@ test("components_unittests") {
|
||||
@@ -686,7 +686,7 @@ test("components_unittests") {
|
||||
# On other platforms, no components should depend on Chrome.
|
||||
# Since //chrome depends on //extensions, we also only assert_no_deps on
|
||||
# extensions targets for non-lacros builds.
|
||||
@@ -112,7 +144,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
|
||||
assert_no_deps = [ "//chrome/*" ]
|
||||
assert_no_deps += disallowed_extension_deps_
|
||||
}
|
||||
@@ -910,7 +910,7 @@ if (!is_ios) {
|
||||
@@ -966,7 +966,7 @@ if (!is_ios) {
|
||||
# dependency. On other platforms, no components should depend on Chrome.
|
||||
# Since //chrome depends on //extensions, we also only assert_no_deps on
|
||||
# extensions targets for non-lacros builds.
|
||||
@@ -124,7 +156,7 @@ diff --git a/components/BUILD.gn b/components/BUILD.gn
|
||||
diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
|
||||
--- a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
|
||||
+++ b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
|
||||
@@ -25,6 +25,11 @@
|
||||
@@ -36,6 +36,11 @@ found in the LICENSE file.
|
||||
android:summary="@string/accessibility_tab_switcher_summary"
|
||||
android:title="@string/accessibility_tab_switcher_title" />
|
||||
|
||||
@@ -139,53 +171,65 @@ diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibil
|
||||
diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java
|
||||
--- a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java
|
||||
+++ b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java
|
||||
@@ -27,6 +27,7 @@ public class AccessibilitySettings
|
||||
@@ -30,6 +30,8 @@ public class AccessibilitySettings
|
||||
public static final String PREF_READER_FOR_ACCESSIBILITY = "reader_for_accessibility";
|
||||
public static final String PREF_CAPTIONS = "captions";
|
||||
|
||||
+ private BooleanPreferenceDelegate mForceTabletUIDelegate;
|
||||
+ static final String PREF_FORCE_TABLET_UI = "force_tablet_ui";
|
||||
private TextScalePreference mTextScalePref;
|
||||
private ChromeBaseCheckBoxPreference mForceEnableZoomPref;
|
||||
private boolean mRecordFontSizeChangeOnStop;
|
||||
@@ -85,6 +86,12 @@ public class AccessibilitySettings
|
||||
private PageZoomPreference mPageZoomDefaultZoomPref;
|
||||
private ChromeSwitchPreference mPageZoomAlwaysShowPref;
|
||||
@@ -106,6 +108,12 @@ public class AccessibilitySettings
|
||||
getPreferenceScreen().removePreference(readerForAccessibilityPref);
|
||||
}
|
||||
|
||||
+ ChromeBaseCheckBoxPreference forceTabletUiPref =
|
||||
+ (ChromeBaseCheckBoxPreference) findPreference(PREF_FORCE_TABLET_UI);
|
||||
+ forceTabletUiPref.setChecked(SharedPreferencesManager.getInstance().readBoolean(
|
||||
+ ChromePreferenceKeys.FLAGS_FORCE_TABLET_UI_ENABLED, false));
|
||||
+ mForceTabletUIDelegate = mDelegate.getForceTabletUIDelegate();
|
||||
+ forceTabletUiPref.setChecked(mForceTabletUIDelegate.isEnabled());
|
||||
+ forceTabletUiPref.setOnPreferenceChangeListener(this);
|
||||
+
|
||||
ChromeBaseCheckBoxPreference accessibilityTabSwitcherPref =
|
||||
(ChromeBaseCheckBoxPreference) findPreference(
|
||||
AccessibilityConstants.ACCESSIBILITY_TAB_SWITCHER);
|
||||
@@ -133,6 +140,9 @@ public class AccessibilitySettings
|
||||
@@ -162,6 +170,8 @@ public class AccessibilitySettings
|
||||
mFontSizePrefs.setUserFontScaleFactor((Float) newValue);
|
||||
} else if (PREF_FORCE_ENABLE_ZOOM.equals(preference.getKey())) {
|
||||
mFontSizePrefs.setForceEnableZoomFromUser((Boolean) newValue);
|
||||
+ } else if (PREF_FORCE_TABLET_UI.equals(preference.getKey())) {
|
||||
+ SharedPreferencesManager.getInstance().writeBoolean(
|
||||
+ ChromePreferenceKeys.FLAGS_FORCE_TABLET_UI_ENABLED, (Boolean) newValue);
|
||||
+ mForceTabletUIDelegate.setEnabled((Boolean) newValue);
|
||||
} else if (PREF_READER_FOR_ACCESSIBILITY.equals(preference.getKey())) {
|
||||
if (mReaderForAccessibilityDelegate != null) {
|
||||
mReaderForAccessibilityDelegate.setEnabled((Boolean) newValue);
|
||||
diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java
|
||||
--- a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java
|
||||
+++ b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java
|
||||
@@ -44,6 +44,8 @@ public interface AccessibilitySettingsDelegate {
|
||||
*/
|
||||
BooleanPreferenceDelegate getReaderForAccessibilityDelegate();
|
||||
|
||||
+ BooleanPreferenceDelegate getForceTabletUIDelegate();
|
||||
+
|
||||
/**
|
||||
* Allows the embedder to add more preferences to the preference screen.
|
||||
*
|
||||
diff --git a/ui/android/BUILD.gn b/ui/android/BUILD.gn
|
||||
--- a/ui/android/BUILD.gn
|
||||
+++ b/ui/android/BUILD.gn
|
||||
@@ -362,6 +362,8 @@ android_library("ui_no_recycler_view_java") {
|
||||
@@ -373,6 +373,8 @@ android_library("ui_no_recycler_view_java") {
|
||||
deps = [
|
||||
":ui_java_resources",
|
||||
":ui_utils_java",
|
||||
"//base:base_java",
|
||||
+ # dependency for ui_no_recycler_view_java
|
||||
+ "//chrome/browser/preferences:java",
|
||||
"//components/url_formatter/android:url_formatter_java",
|
||||
"//third_party/androidx:androidx_annotation_annotation_java",
|
||||
"//third_party/androidx:androidx_appcompat_appcompat_java",
|
||||
"//base:base_java",
|
||||
"//base:jni_java",
|
||||
"//build/android:build_java",
|
||||
diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java
|
||||
--- a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java
|
||||
+++ b/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java
|
||||
@@ -11,6 +11,8 @@ import androidx.annotation.UiThread;
|
||||
@@ -12,6 +12,8 @@ import androidx.annotation.VisibleForTesting;
|
||||
import org.chromium.base.ContextUtils;
|
||||
import org.chromium.base.ThreadUtils;
|
||||
import org.chromium.base.annotations.CalledByNative;
|
||||
@@ -194,7 +238,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/DeviceFormFactor.java b/ui
|
||||
import org.chromium.ui.R;
|
||||
import org.chromium.ui.display.DisplayAndroid;
|
||||
import org.chromium.ui.display.DisplayUtil;
|
||||
@@ -60,6 +62,9 @@ public class DeviceFormFactor {
|
||||
@@ -62,6 +64,9 @@ public class DeviceFormFactor {
|
||||
* E.g. http://developer.samsung.com/samsung-dex/testing
|
||||
*/
|
||||
public static boolean isNonMultiDisplayContextOnTablet(Context context) {
|
||||
|
||||
@@ -2,17 +2,18 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sat, 7 Sep 2019 15:07:42 +0200
|
||||
Subject: Add option to not persist tabs across sessions
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../android/java/res/xml/privacy_preferences.xml | 5 +++++
|
||||
.../chrome/browser/ChromeTabbedActivity.java | 4 +++-
|
||||
.../chrome/browser/ChromeTabbedActivity.java | 5 ++++-
|
||||
.../privacy/settings/PrivacySettings.java | 16 +++++++++++++++-
|
||||
.../android/strings/android_chrome_strings.grd | 6 ++++++
|
||||
4 files changed, 29 insertions(+), 2 deletions(-)
|
||||
4 files changed, 30 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
--- a/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
@@ -42,6 +42,11 @@
|
||||
@@ -45,6 +45,11 @@ found in the LICENSE file.
|
||||
android:title="@string/incognito_settings_title"
|
||||
android:summary="@string/incognito_settings_summary"
|
||||
android:fragment="org.chromium.chrome.browser.privacy.settings.IncognitoSettings"/>
|
||||
@@ -27,7 +28,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/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
|
||||
@@ -1263,8 +1263,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
@@ -40,6 +40,7 @@ import androidx.lifecycle.LifecycleRegistry;
|
||||
import org.chromium.base.BuildInfo;
|
||||
import org.chromium.base.CallbackController;
|
||||
import org.chromium.base.CommandLine;
|
||||
+import org.chromium.base.ContextUtils;
|
||||
import org.chromium.base.IntentUtils;
|
||||
import org.chromium.base.Log;
|
||||
import org.chromium.base.MemoryPressureListener;
|
||||
@@ -1322,8 +1323,10 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
|
||||
boolean hadCipherData =
|
||||
CipherFactory.getInstance().restoreFromBundle(getSavedInstanceState());
|
||||
|
||||
@@ -50,7 +59,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
|
||||
import android.os.Bundle;
|
||||
import android.text.SpannableString;
|
||||
import android.view.Menu;
|
||||
@@ -16,6 +17,8 @@ import androidx.preference.Preference;
|
||||
@@ -15,6 +16,8 @@ import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceFragmentCompat;
|
||||
import androidx.vectordrawable.graphics.drawable.VectorDrawableCompat;
|
||||
|
||||
@@ -59,16 +68,16 @@ 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;
|
||||
@@ -59,6 +62,8 @@ public class PrivacySettings
|
||||
private static final String PREF_INCOGNITO_LOCK = "incognito_lock";
|
||||
private static final String PREF_PHONE_AS_A_SECURITY_KEY = "phone_as_a_security_key";
|
||||
@@ -67,6 +70,8 @@ public class PrivacySettings
|
||||
SharedPreferencesManager.getInstance();
|
||||
private final PrefService prefService = UserPrefs.get(Profile.getLastUsedRegularProfile());
|
||||
|
||||
+ private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
|
||||
+
|
||||
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
|
||||
private IncognitoLockSettings mIncognitoLockSettings;
|
||||
private ViewGroup mDialogContainer;
|
||||
@@ -134,7 +139,11 @@ public class PrivacySettings
|
||||
|
||||
@@ -132,7 +137,11 @@ public class PrivacySettings
|
||||
@Override
|
||||
public boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
String key = preference.getKey();
|
||||
@@ -81,7 +90,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_HTTPS_FIRST_MODE.equals(key)) {
|
||||
@@ -175,6 +184,11 @@ public class PrivacySettings
|
||||
@@ -176,6 +185,11 @@ public class PrivacySettings
|
||||
PreloadPagesSettingsFragment.getPreloadPagesSummaryString(getContext()));
|
||||
}
|
||||
|
||||
@@ -96,7 +105,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
|
||||
@@ -4314,6 +4314,12 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
@@ -4415,6 +4415,12 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></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>
|
||||
|
||||
@@ -3,6 +3,8 @@ Date: Sat, 20 Nov 2021 15:36:54 +0000
|
||||
Subject: Add option to use home page as NTP
|
||||
|
||||
And allow use about:blank as default homepage
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../java/res/xml/homepage_preferences.xml | 5 +++++
|
||||
.../chrome/browser/homepage/HomepageManager.java | 16 ++++++++++++++++
|
||||
@@ -20,7 +22,7 @@ And allow use about:blank as default homepage
|
||||
diff --git a/chrome/android/java/res/xml/homepage_preferences.xml b/chrome/android/java/res/xml/homepage_preferences.xml
|
||||
--- a/chrome/android/java/res/xml/homepage_preferences.xml
|
||||
+++ b/chrome/android/java/res/xml/homepage_preferences.xml
|
||||
@@ -12,6 +12,11 @@
|
||||
@@ -14,6 +14,11 @@ found in the LICENSE file.
|
||||
android:summaryOn="@string/text_on"
|
||||
android:summaryOff="@string/text_off" />
|
||||
|
||||
@@ -35,7 +37,7 @@ diff --git a/chrome/android/java/res/xml/homepage_preferences.xml b/chrome/andro
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
|
||||
@@ -214,6 +214,22 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
|
||||
@@ -223,6 +223,22 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
|
||||
notifyHomepageUpdated();
|
||||
}
|
||||
|
||||
@@ -108,15 +110,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchM
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/ChromeTabCreator.java
|
||||
@@ -20,6 +20,7 @@ import org.chromium.chrome.browser.ServiceTabLauncher;
|
||||
@@ -19,6 +19,7 @@ import org.chromium.chrome.browser.ServiceTabLauncher;
|
||||
import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingDelegateFactory;
|
||||
import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingTask;
|
||||
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
|
||||
+import org.chromium.chrome.browser.homepage.HomepageManager;
|
||||
import org.chromium.chrome.browser.init.StartupTabPreloader;
|
||||
import org.chromium.chrome.browser.ntp.NewTabPageLaunchOrigin;
|
||||
import org.chromium.chrome.browser.ntp.NewTabPageUtils;
|
||||
@@ -321,6 +322,12 @@ public class ChromeTabCreator extends TabCreator {
|
||||
import org.chromium.chrome.browser.tab.RedirectHandlerTabHelper;
|
||||
@@ -311,6 +312,12 @@ public class ChromeTabCreator extends TabCreator {
|
||||
* @return the created tab.
|
||||
*/
|
||||
public Tab launchUrl(String url, @TabLaunchType int type, Intent intent, long intentTimestamp) {
|
||||
@@ -132,29 +134,29 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
|
||||
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
|
||||
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
|
||||
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
|
||||
@@ -449,6 +449,7 @@ public final class ChromePreferenceKeys {
|
||||
public static final String HOMEPAGE_USE_DEFAULT_URI = "homepage_partner_enabled";
|
||||
public static final String HOMEPAGE_PARTNER_CUSTOMIZED_DEFAULT_URI =
|
||||
"Chrome.Homepage.PartnerCustomizedDefaultUri";
|
||||
+ public static final String HOMEPAGE_NTP_IS_HOMEPAGE = "newtabpage_is_homepage";
|
||||
@@ -429,6 +429,7 @@ public final class ChromePreferenceKeys {
|
||||
public static final String HOMEPAGE_PARTNER_CUSTOMIZED_DEFAULT_GURL =
|
||||
"Chrome.Homepage.PartnerCustomizedDefaultGurl";
|
||||
|
||||
+ public static final String HOMEPAGE_NTP_IS_HOMEPAGE = "newtabpage_is_homepage";
|
||||
/**
|
||||
* Key used to save homepage location set by enterprise policy
|
||||
*/
|
||||
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
|
||||
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
|
||||
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
|
||||
@@ -90,6 +90,7 @@ public class LegacyChromePreferenceKeys {
|
||||
@@ -72,6 +72,7 @@ public class LegacyChromePreferenceKeys {
|
||||
ChromePreferenceKeys.HOMEPAGE_CUSTOM_URI,
|
||||
ChromePreferenceKeys.HOMEPAGE_ENABLED,
|
||||
ChromePreferenceKeys.HOMEPAGE_USE_DEFAULT_URI,
|
||||
+ ChromePreferenceKeys.HOMEPAGE_NTP_IS_HOMEPAGE,
|
||||
ChromePreferenceKeys.INCOGNITO_SHORTCUT_ADDED,
|
||||
ChromePreferenceKeys.LATEST_UNSUPPORTED_VERSION,
|
||||
ChromePreferenceKeys.LOCALE_MANAGER_AUTO_SWITCH,
|
||||
ChromePreferenceKeys.LEGACY_FIRST_RUN_AND_BACKUP_SIGNIN_COMPLETE,
|
||||
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
|
||||
@@ -1174,6 +1174,9 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
@@ -1254,6 +1254,9 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
<message name="IDS_CLEAR_BROWSING_DATA_TAB_PERIOD_HOUR" desc="The option to delete browsing data from the last hour.">
|
||||
Last hour
|
||||
</message>
|
||||
@@ -179,7 +181,7 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u
|
||||
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
|
||||
@@ -60,6 +60,10 @@ const char kForceEphemeralProfiles[] = "profile.ephemeral_mode";
|
||||
@@ -61,6 +61,10 @@ const char kForceEphemeralProfiles[] = "profile.ephemeral_mode";
|
||||
// A boolean specifying whether the New Tab page is the home page or not.
|
||||
const char kHomePageIsNewTabPage[] = "homepage_is_newtabpage";
|
||||
|
||||
@@ -193,7 +195,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
|
||||
@@ -368,6 +368,7 @@ extern const char kSettingsShowOSBanner[];
|
||||
@@ -389,6 +389,7 @@ extern const char kRestrictedManagedGuestSessionExtensionCleanupExemptList[];
|
||||
extern const char kUsedPolicyCertificates[];
|
||||
#endif // BUILDFLAG(IS_CHROMEOS)
|
||||
extern const char kShowHomeButton[];
|
||||
|
||||
@@ -3,6 +3,9 @@ Date: Mon, 2 May 2022 11:48:03 +0000
|
||||
Subject: Add site engagement flag
|
||||
|
||||
Enabled by default.
|
||||
|
||||
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/browser/about_flags.cc | 6 ++++
|
||||
chrome/browser/flag_descriptions.cc | 5 +++
|
||||
@@ -18,17 +21,17 @@ Enabled 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
|
||||
@@ -132,6 +132,7 @@
|
||||
#include "components/security_state/core/security_state.h"
|
||||
@@ -144,6 +144,7 @@
|
||||
#include "components/segmentation_platform/public/features.h"
|
||||
#include "components/send_tab_to_self/features.h"
|
||||
#include "components/services/heap_profiling/public/cpp/switches.h"
|
||||
+#include "components/site_engagement/core/features.h"
|
||||
#include "components/shared_highlighting/core/common/shared_highlighting_features.h"
|
||||
#include "components/signin/core/browser/dice_account_reconcilor_delegate.h"
|
||||
#include "components/signin/public/base/signin_buildflags.h"
|
||||
@@ -8495,6 +8496,11 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
flag_descriptions::kReduceUserAgentMinorVersionDescription, kOsAll,
|
||||
FEATURE_VALUE_TYPE(blink::features::kReduceUserAgentMinorVersion)},
|
||||
@@ -9283,6 +9284,11 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
flag_descriptions::kSearchReadyOmniboxDescription, kOsAndroid,
|
||||
FEATURE_VALUE_TYPE(chrome::android::kSearchReadyOmniboxFeature)},
|
||||
|
||||
+ {"site-engagement",
|
||||
+ flag_descriptions::kSiteEngagementName,
|
||||
@@ -36,14 +39,14 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
|
||||
+ FEATURE_VALUE_TYPE(site_engagement::features::kSiteEngagement)},
|
||||
+
|
||||
#if BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
{"enable-variable-refresh-rate",
|
||||
flag_descriptions::kEnableVariableRefreshRateName,
|
||||
{"use-multiple-overlays", flag_descriptions::kUseMultipleOverlaysName,
|
||||
flag_descriptions::kUseMultipleOverlaysDescription, kOsCrOS,
|
||||
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
|
||||
@@ -2953,6 +2953,11 @@ const char kReduceUserAgentMinorVersionDescription[] =
|
||||
"The Chrome version in the User-Agent string will be reported as "
|
||||
"Chrome/<major_version>.0.0.0.";
|
||||
@@ -3407,6 +3407,11 @@ const char kSkipServiceWorkerFetchHandlerDescription[] =
|
||||
"Skips starting the service worker and run the fetch handler if the fetch "
|
||||
"handler is recognized as skippable.";
|
||||
|
||||
+const char kSiteEngagementName[] =
|
||||
+ "Enable site engagement feature";
|
||||
@@ -56,9 +59,9 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
|
||||
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
|
||||
--- a/chrome/browser/flag_descriptions.h
|
||||
+++ b/chrome/browser/flag_descriptions.h
|
||||
@@ -1680,6 +1680,9 @@ extern const char kDurableClientHintsCacheDescription[];
|
||||
extern const char kReduceUserAgentMinorVersionName[];
|
||||
extern const char kReduceUserAgentMinorVersionDescription[];
|
||||
@@ -1957,6 +1957,9 @@ extern const char kReduceUserAgentPlatformOsCpuDescription[];
|
||||
extern const char kSkipServiceWorkerFetchHandlerName[];
|
||||
extern const char kSkipServiceWorkerFetchHandlerDescription[];
|
||||
|
||||
+extern const char kSiteEngagementName[];
|
||||
+extern const char kSiteEngagementDescription[];
|
||||
@@ -77,8 +80,8 @@ diff --git a/components/site_engagement/content/site_engagement_score.cc b/compo
|
||||
#include "components/site_engagement/content/engagement_type.h"
|
||||
#include "components/site_engagement/content/site_engagement_metrics.h"
|
||||
#include "components/variations/variations_associated_data.h"
|
||||
@@ -277,6 +278,10 @@ void SiteEngagementScore::Commit() {
|
||||
if (!UpdateScoreDict(score_dict_.get()))
|
||||
@@ -275,6 +276,10 @@ void SiteEngagementScore::Commit() {
|
||||
if (!UpdateScoreDict(*score_dict_))
|
||||
return;
|
||||
|
||||
+ if (!base::FeatureList::IsEnabled(features::kSiteEngagement)) {
|
||||
@@ -87,7 +90,7 @@ diff --git a/components/site_engagement/content/site_engagement_score.cc b/compo
|
||||
+ }
|
||||
settings_map_->SetWebsiteSettingDefaultScope(
|
||||
origin_, GURL(), ContentSettingsType::SITE_ENGAGEMENT,
|
||||
base::Value::FromUniquePtrValue(std::move(score_dict_)));
|
||||
base::Value(std::move(*score_dict_)));
|
||||
diff --git a/components/site_engagement/core/BUILD.gn b/components/site_engagement/core/BUILD.gn
|
||||
--- a/components/site_engagement/core/BUILD.gn
|
||||
+++ b/components/site_engagement/core/BUILD.gn
|
||||
|
||||
@@ -2,6 +2,8 @@ From: uazo <uazo@users.noreply.github.com>
|
||||
Date: Mon, 17 May 2021 12:30:12 +0000
|
||||
Subject: Add support for ISupportHelpAndFeedback
|
||||
|
||||
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/browser/settings/SettingsActivity.java | 11 ++++++++---
|
||||
.../components/browser_ui/settings/SettingsUtils.java | 4 ++++
|
||||
@@ -10,15 +12,15 @@ Subject: Add support for ISupportHelpAndFeedback
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
|
||||
@@ -69,6 +69,7 @@ import org.chromium.components.browser_ui.bottomsheet.BottomSheetController;
|
||||
import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFactory;
|
||||
@@ -66,6 +66,7 @@ import org.chromium.components.browser_ui.bottomsheet.BottomSheetControllerFacto
|
||||
import org.chromium.components.browser_ui.modaldialog.AppModalPresenter;
|
||||
import org.chromium.components.browser_ui.settings.FragmentSettingsLauncher;
|
||||
import org.chromium.components.browser_ui.settings.SettingsLauncher;
|
||||
+import org.chromium.components.browser_ui.settings.SettingsUtils;
|
||||
import org.chromium.components.browser_ui.site_settings.SiteSettingsPreferenceFragment;
|
||||
import org.chromium.components.browser_ui.widget.displaystyle.UiConfig;
|
||||
import org.chromium.components.browser_ui.widget.displaystyle.ViewResizer;
|
||||
@@ -333,9 +334,13 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
|
||||
@@ -328,9 +329,13 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
|
||||
finish();
|
||||
return true;
|
||||
} else if (item.getItemId() == R.id.menu_id_general_help) {
|
||||
|
||||
@@ -3,6 +3,9 @@ Date: Tue, 12 Apr 2022 15:58:01 +0000
|
||||
Subject: Add support for writing URIs
|
||||
|
||||
Allows native-side URI file writing
|
||||
|
||||
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
|
||||
---
|
||||
base/android/content_uri_utils.cc | 10 ++++++
|
||||
base/android/content_uri_utils.h | 4 +++
|
||||
|
||||
@@ -5,6 +5,9 @@ Subject: Add webGL site setting
|
||||
Do not provide any device information when serving context creation errors.
|
||||
|
||||
Requires patch: Content-settings-infrastructure.patch
|
||||
|
||||
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_ui/site_settings/android/BUILD.gn | 3 +
|
||||
.../BromiteCustomContentSettingImpl.java | 1 +
|
||||
@@ -15,7 +18,7 @@ Requires patch: Content-settings-infrastructure.patch
|
||||
components/components_strings.grd | 1 +
|
||||
.../core/browser/content_settings_registry.cc | 14 +++
|
||||
.../core/browser/content_settings_utils.cc | 2 +
|
||||
.../core/common/content_settings.cc | 3 +-
|
||||
.../core/common/content_settings.cc | 4 +-
|
||||
.../core/common/content_settings.h | 1 +
|
||||
.../core/common/content_settings.mojom | 1 +
|
||||
.../common/content_settings_mojom_traits.cc | 3 +-
|
||||
@@ -28,14 +31,14 @@ Requires patch: Content-settings-infrastructure.patch
|
||||
.../execution_context/execution_context.h | 5 ++
|
||||
.../webgl/webgl_rendering_context_base.cc | 32 +++----
|
||||
.../webgl/webgl_rendering_context_base.h | 2 +
|
||||
22 files changed, 196 insertions(+), 23 deletions(-)
|
||||
22 files changed, 197 insertions(+), 23 deletions(-)
|
||||
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteWebGLContentSetting.java
|
||||
create mode 100644 components/browser_ui/strings/android/webgl.grdp
|
||||
|
||||
diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/browser_ui/site_settings/android/BUILD.gn
|
||||
--- a/components/browser_ui/site_settings/android/BUILD.gn
|
||||
+++ b/components/browser_ui/site_settings/android/BUILD.gn
|
||||
@@ -72,6 +72,9 @@ android_library("java") {
|
||||
@@ -92,6 +92,9 @@ android_library("java") {
|
||||
"java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSettingImpl.java",
|
||||
"java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSetting.java",
|
||||
]
|
||||
@@ -180,7 +183,7 @@ diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/comp
|
||||
<part file="site_settings.grdp" />
|
||||
+ <part file="webgl.grdp" />
|
||||
|
||||
<message name="IDS_GOT_IT" desc="Button for the user to accept a disclosure/message">
|
||||
<message name="IDS_GOT_IT" desc="Button for the user to accept a disclosure/message" formatter_data="android_java">
|
||||
Got it
|
||||
diff --git a/components/browser_ui/strings/android/webgl.grdp b/components/browser_ui/strings/android/webgl.grdp
|
||||
new file mode 100644
|
||||
@@ -208,18 +211,18 @@ new file mode 100644
|
||||
diff --git a/components/components_strings.grd b/components/components_strings.grd
|
||||
--- a/components/components_strings.grd
|
||||
+++ b/components/components_strings.grd
|
||||
@@ -336,6 +336,7 @@
|
||||
@@ -338,6 +338,7 @@
|
||||
<part file="version_ui_strings.grdp" />
|
||||
<part file="webapps_strings.grdp" />
|
||||
<part file="user_scripts/strings/userscripts_strings.grdp" />
|
||||
+ <part file="browser_ui/strings/android/webgl.grdp" />
|
||||
|
||||
+ <part file="browser_ui/strings/android/webgl.grdp" />
|
||||
<if expr="not is_ios">
|
||||
<part file="management_strings.grdp" />
|
||||
<part file="history_clusters_strings.grdp" />
|
||||
</if>
|
||||
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
--- a/components/content_settings/core/browser/content_settings_registry.cc
|
||||
+++ b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
@@ -677,6 +677,20 @@ void ContentSettingsRegistry::Init() {
|
||||
@@ -633,6 +633,20 @@ void ContentSettingsRegistry::Init() {
|
||||
ContentSettingsInfo::INHERIT_IN_INCOGNITO,
|
||||
ContentSettingsInfo::PERSISTENT,
|
||||
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY);
|
||||
@@ -229,7 +232,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
|
||||
+ AllowlistedSchemes(),
|
||||
+ ValidSettings(CONTENT_SETTING_ALLOW,
|
||||
+ CONTENT_SETTING_BLOCK),
|
||||
+ WebsiteSettingsInfo::SINGLE_ORIGIN_WITH_EMBEDDED_EXCEPTIONS_SCOPE,
|
||||
+ WebsiteSettingsInfo::TOP_ORIGIN_ONLY_SCOPE,
|
||||
+ WebsiteSettingsRegistry::PLATFORM_ANDROID,
|
||||
+ ContentSettingsInfo::INHERIT_IN_INCOGNITO,
|
||||
+ ContentSettingsInfo::PERSISTENT,
|
||||
@@ -243,7 +246,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
|
||||
diff --git a/components/content_settings/core/browser/content_settings_utils.cc b/components/content_settings/core/browser/content_settings_utils.cc
|
||||
--- a/components/content_settings/core/browser/content_settings_utils.cc
|
||||
+++ b/components/content_settings/core/browser/content_settings_utils.cc
|
||||
@@ -155,6 +155,8 @@ void GetRendererContentSettingRules(const HostContentSettingsMap* map,
|
||||
@@ -156,6 +156,8 @@ void GetRendererContentSettingRules(const HostContentSettingsMap* map,
|
||||
std::string timezone;
|
||||
map->GetTimezoneOverrideValue(timezone);
|
||||
rules->timezone_override_value = timezone;
|
||||
@@ -255,7 +258,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc
|
||||
diff --git a/components/content_settings/core/common/content_settings.cc b/components/content_settings/core/common/content_settings.cc
|
||||
--- a/components/content_settings/core/common/content_settings.cc
|
||||
+++ b/components/content_settings/core/common/content_settings.cc
|
||||
@@ -204,7 +204,8 @@ bool RendererContentSettingRules::IsRendererContentSetting(
|
||||
@@ -208,7 +208,8 @@ bool RendererContentSettingRules::IsRendererContentSetting(
|
||||
content_type == ContentSettingsType::AUTOPLAY ||
|
||||
content_type == ContentSettingsType::MIXEDSCRIPT ||
|
||||
content_type == ContentSettingsType::AUTO_DARK_WEB_CONTENT ||
|
||||
@@ -265,10 +268,18 @@ diff --git a/components/content_settings/core/common/content_settings.cc b/compo
|
||||
}
|
||||
|
||||
void RendererContentSettingRules::FilterRulesByOutermostMainFrameURL(
|
||||
@@ -220,6 +221,7 @@ void RendererContentSettingRules::FilterRulesByOutermostMainFrameURL(
|
||||
FilterRulesForType(auto_dark_content_rules, outermost_main_frame_url);
|
||||
FilterRulesForType(timezone_override_rules, outermost_main_frame_url);
|
||||
FilterRulesForType(autoplay_rules, outermost_main_frame_url);
|
||||
+ FilterRulesForType(webgl_rules, outermost_main_frame_url);
|
||||
}
|
||||
|
||||
RendererContentSettingRules::RendererContentSettingRules() = default;
|
||||
diff --git a/components/content_settings/core/common/content_settings.h b/components/content_settings/core/common/content_settings.h
|
||||
--- a/components/content_settings/core/common/content_settings.h
|
||||
+++ b/components/content_settings/core/common/content_settings.h
|
||||
@@ -97,6 +97,7 @@ struct RendererContentSettingRules {
|
||||
@@ -96,6 +96,7 @@ struct RendererContentSettingRules {
|
||||
ContentSettingsForOneType auto_dark_content_rules;
|
||||
ContentSettingsForOneType timezone_override_rules;
|
||||
std::string timezone_override_value;
|
||||
@@ -288,7 +299,7 @@ diff --git a/components/content_settings/core/common/content_settings.mojom b/co
|
||||
diff --git a/components/content_settings/core/common/content_settings_mojom_traits.cc b/components/content_settings/core/common/content_settings_mojom_traits.cc
|
||||
--- a/components/content_settings/core/common/content_settings_mojom_traits.cc
|
||||
+++ b/components/content_settings/core/common/content_settings_mojom_traits.cc
|
||||
@@ -104,7 +104,8 @@ bool StructTraits<content_settings::mojom::RendererContentSettingRulesDataView,
|
||||
@@ -105,7 +105,8 @@ bool StructTraits<content_settings::mojom::RendererContentSettingRulesDataView,
|
||||
data.ReadMixedContentRules(&out->mixed_content_rules) &&
|
||||
data.ReadAutoDarkContentRules(&out->auto_dark_content_rules) &&
|
||||
data.ReadTimezoneOverrideRules(&out->timezone_override_rules) &&
|
||||
@@ -316,7 +327,7 @@ diff --git a/components/content_settings/core/common/content_settings_mojom_trai
|
||||
diff --git a/components/content_settings/core/common/content_settings_types.h b/components/content_settings/core/common/content_settings_types.h
|
||||
--- a/components/content_settings/core/common/content_settings_types.h
|
||||
+++ b/components/content_settings/core/common/content_settings_types.h
|
||||
@@ -287,6 +287,8 @@ enum class ContentSettingsType : int32_t {
|
||||
@@ -277,6 +277,8 @@ enum class ContentSettingsType : int32_t {
|
||||
// site instead of the mobile one.
|
||||
REQUEST_DESKTOP_SITE,
|
||||
|
||||
@@ -328,7 +339,7 @@ diff --git a/components/content_settings/core/common/content_settings_types.h b/
|
||||
diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc
|
||||
--- a/components/content_settings/renderer/content_settings_agent_impl.cc
|
||||
+++ b/components/content_settings/renderer/content_settings_agent_impl.cc
|
||||
@@ -455,6 +455,15 @@ void ContentSettingsAgentImpl::ClearBlockedContentSettings() {
|
||||
@@ -449,6 +449,15 @@ void ContentSettingsAgentImpl::ClearBlockedContentSettings() {
|
||||
cached_script_permissions_.clear();
|
||||
}
|
||||
|
||||
@@ -347,7 +358,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc
|
||||
diff --git a/components/content_settings/renderer/content_settings_agent_impl.h b/components/content_settings/renderer/content_settings_agent_impl.h
|
||||
--- a/components/content_settings/renderer/content_settings_agent_impl.h
|
||||
+++ b/components/content_settings/renderer/content_settings_agent_impl.h
|
||||
@@ -94,6 +94,7 @@ class ContentSettingsAgentImpl
|
||||
@@ -99,6 +99,7 @@ class ContentSettingsAgentImpl
|
||||
bool AllowAutoplay(bool default_value) override;
|
||||
bool AllowPopupsAndRedirects(bool default_value) override;
|
||||
bool ShouldAutoupgradeMixedContent() override;
|
||||
@@ -370,7 +381,7 @@ diff --git a/third_party/blink/public/platform/web_content_settings_client.h b/t
|
||||
diff --git a/third_party/blink/renderer/core/execution_context/execution_context.cc b/third_party/blink/renderer/core/execution_context/execution_context.cc
|
||||
--- a/third_party/blink/renderer/core/execution_context/execution_context.cc
|
||||
+++ b/third_party/blink/renderer/core/execution_context/execution_context.cc
|
||||
@@ -64,6 +64,29 @@
|
||||
@@ -67,6 +67,29 @@
|
||||
|
||||
namespace blink {
|
||||
|
||||
@@ -403,7 +414,7 @@ diff --git a/third_party/blink/renderer/core/execution_context/execution_context
|
||||
diff --git a/third_party/blink/renderer/core/execution_context/execution_context.h b/third_party/blink/renderer/core/execution_context/execution_context.h
|
||||
--- a/third_party/blink/renderer/core/execution_context/execution_context.h
|
||||
+++ b/third_party/blink/renderer/core/execution_context/execution_context.h
|
||||
@@ -97,6 +97,7 @@ class SecurityOrigin;
|
||||
@@ -101,6 +101,7 @@ class SecurityOrigin;
|
||||
class ScriptState;
|
||||
class ScriptWrappable;
|
||||
class TrustedTypePolicyFactory;
|
||||
@@ -411,7 +422,7 @@ diff --git a/third_party/blink/renderer/core/execution_context/execution_context
|
||||
|
||||
enum ReasonForCallingCanExecuteScripts {
|
||||
kAboutToExecuteScript,
|
||||
@@ -105,6 +106,10 @@ enum ReasonForCallingCanExecuteScripts {
|
||||
@@ -109,6 +110,10 @@ enum ReasonForCallingCanExecuteScripts {
|
||||
|
||||
enum ReferrerPolicySource { kPolicySourceHttpHeader, kPolicySourceMetaTag };
|
||||
|
||||
@@ -425,7 +436,7 @@ diff --git a/third_party/blink/renderer/core/execution_context/execution_context
|
||||
diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
|
||||
--- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
|
||||
+++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc
|
||||
@@ -242,6 +242,13 @@ void WebGLRenderingContextBase::InitializeWebGLContextLimits(
|
||||
@@ -246,6 +246,13 @@ void WebGLRenderingContextBase::InitializeWebGLContextLimits(
|
||||
}
|
||||
}
|
||||
|
||||
@@ -437,9 +448,9 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba
|
||||
+}
|
||||
+
|
||||
unsigned WebGLRenderingContextBase::CurrentMaxGLContexts() {
|
||||
MutexLocker locker(WebGLContextLimitMutex());
|
||||
base::AutoLock locker(WebGLContextLimitLock());
|
||||
DCHECK(webgl_context_limits_initialized_);
|
||||
@@ -488,25 +495,6 @@ static String ExtractWebGLContextCreationError(
|
||||
@@ -492,25 +499,6 @@ static String ExtractWebGLContextCreationError(
|
||||
const Platform::GraphicsInfo& info) {
|
||||
StringBuilder builder;
|
||||
builder.Append("Could not create a WebGL context");
|
||||
@@ -465,7 +476,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba
|
||||
FormatWebGLStatusString("ErrorMessage", info.error_message.Utf8().c_str(),
|
||||
builder);
|
||||
builder.Append('.');
|
||||
@@ -574,6 +562,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider(
|
||||
@@ -579,6 +567,12 @@ WebGLRenderingContextBase::CreateWebGraphicsContext3DProvider(
|
||||
const CanvasContextCreationAttributesCore& attributes,
|
||||
Platform::ContextType context_type,
|
||||
Platform::GraphicsInfo* graphics_info) {
|
||||
@@ -481,7 +492,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_ba
|
||||
diff --git a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
|
||||
--- a/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
|
||||
+++ b/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
|
||||
@@ -1771,6 +1771,8 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext,
|
||||
@@ -1920,6 +1920,8 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext,
|
||||
DOMArrayBufferView* pixels,
|
||||
int64_t offset);
|
||||
|
||||
|
||||
@@ -3,6 +3,9 @@ Date: Fri, 6 May 2022 14:27:17 +0000
|
||||
Subject: Add webRTC site settings
|
||||
|
||||
Requires patch: Content-settings-infrastructure.patch
|
||||
|
||||
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_ui/site_settings/android/BUILD.gn | 3 +
|
||||
.../BromiteCustomContentSettingImpl.java | 1 +
|
||||
@@ -13,7 +16,7 @@ Requires patch: Content-settings-infrastructure.patch
|
||||
components/components_strings.grd | 1 +
|
||||
.../core/browser/content_settings_registry.cc | 14 +++
|
||||
.../core/browser/content_settings_utils.cc | 2 +
|
||||
.../core/common/content_settings.cc | 3 +-
|
||||
.../core/common/content_settings.cc | 4 +-
|
||||
.../core/common/content_settings.h | 1 +
|
||||
.../core/common/content_settings.mojom | 1 +
|
||||
.../common/content_settings_mojom_traits.cc | 3 +-
|
||||
@@ -22,15 +25,15 @@ Requires patch: Content-settings-infrastructure.patch
|
||||
.../renderer/content_settings_agent_impl.cc | 9 ++
|
||||
.../renderer/content_settings_agent_impl.h | 1 +
|
||||
.../platform/web_content_settings_client.h | 2 +
|
||||
.../peer_connection_dependency_factory.cc | 5 ++
|
||||
19 files changed, 159 insertions(+), 4 deletions(-)
|
||||
.../peer_connection_dependency_factory.cc | 6 ++
|
||||
19 files changed, 161 insertions(+), 4 deletions(-)
|
||||
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteWebRTCContentSetting.java
|
||||
create mode 100644 components/browser_ui/strings/android/webrtc.grdp
|
||||
|
||||
diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/browser_ui/site_settings/android/BUILD.gn
|
||||
--- a/components/browser_ui/site_settings/android/BUILD.gn
|
||||
+++ b/components/browser_ui/site_settings/android/BUILD.gn
|
||||
@@ -75,6 +75,9 @@ android_library("java") {
|
||||
@@ -95,6 +95,9 @@ android_library("java") {
|
||||
sources += [
|
||||
"java/src/org/chromium/components/browser_ui/site_settings/BromiteWebGLContentSetting.java",
|
||||
]
|
||||
@@ -176,7 +179,7 @@ diff --git a/components/browser_ui/strings/android/browser_ui_strings.grd b/comp
|
||||
<part file="webgl.grdp" />
|
||||
+ <part file="webrtc.grdp" />
|
||||
|
||||
<message name="IDS_GOT_IT" desc="Button for the user to accept a disclosure/message">
|
||||
<message name="IDS_GOT_IT" desc="Button for the user to accept a disclosure/message" formatter_data="android_java">
|
||||
Got it
|
||||
diff --git a/components/browser_ui/strings/android/webrtc.grdp b/components/browser_ui/strings/android/webrtc.grdp
|
||||
new file mode 100644
|
||||
@@ -204,18 +207,18 @@ new file mode 100644
|
||||
diff --git a/components/components_strings.grd b/components/components_strings.grd
|
||||
--- a/components/components_strings.grd
|
||||
+++ b/components/components_strings.grd
|
||||
@@ -337,6 +337,7 @@
|
||||
@@ -339,6 +339,7 @@
|
||||
<part file="webapps_strings.grdp" />
|
||||
<part file="user_scripts/strings/userscripts_strings.grdp" />
|
||||
|
||||
<part file="browser_ui/strings/android/webgl.grdp" />
|
||||
+ <part file="browser_ui/strings/android/webrtc.grdp" />
|
||||
|
||||
<if expr="not is_ios">
|
||||
<part file="management_strings.grdp" />
|
||||
<part file="history_clusters_strings.grdp" />
|
||||
</if>
|
||||
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
--- a/components/content_settings/core/browser/content_settings_registry.cc
|
||||
+++ b/components/content_settings/core/browser/content_settings_registry.cc
|
||||
@@ -691,6 +691,20 @@ void ContentSettingsRegistry::Init() {
|
||||
@@ -647,6 +647,20 @@ void ContentSettingsRegistry::Init() {
|
||||
/*show_into_info_page*/ true,
|
||||
/*permission_type_ui*/ IDS_SITE_SETTINGS_TYPE_WEBGL,
|
||||
/*permission_type_ui_mid_sentence*/ IDS_SITE_SETTINGS_TYPE_WEBGL_MID_SENTENCE);
|
||||
@@ -225,7 +228,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
|
||||
+ AllowlistedSchemes(),
|
||||
+ ValidSettings(CONTENT_SETTING_ALLOW,
|
||||
+ CONTENT_SETTING_BLOCK),
|
||||
+ WebsiteSettingsInfo::SINGLE_ORIGIN_WITH_EMBEDDED_EXCEPTIONS_SCOPE,
|
||||
+ WebsiteSettingsInfo::TOP_ORIGIN_ONLY_SCOPE,
|
||||
+ WebsiteSettingsRegistry::PLATFORM_ANDROID,
|
||||
+ ContentSettingsInfo::INHERIT_IN_INCOGNITO,
|
||||
+ ContentSettingsInfo::PERSISTENT,
|
||||
@@ -239,7 +242,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
|
||||
diff --git a/components/content_settings/core/browser/content_settings_utils.cc b/components/content_settings/core/browser/content_settings_utils.cc
|
||||
--- a/components/content_settings/core/browser/content_settings_utils.cc
|
||||
+++ b/components/content_settings/core/browser/content_settings_utils.cc
|
||||
@@ -157,6 +157,8 @@ void GetRendererContentSettingRules(const HostContentSettingsMap* map,
|
||||
@@ -158,6 +158,8 @@ void GetRendererContentSettingRules(const HostContentSettingsMap* map,
|
||||
rules->timezone_override_value = timezone;
|
||||
map->GetSettingsForOneType(ContentSettingsType::WEBGL,
|
||||
&(rules->webgl_rules));
|
||||
@@ -251,7 +254,7 @@ diff --git a/components/content_settings/core/browser/content_settings_utils.cc
|
||||
diff --git a/components/content_settings/core/common/content_settings.cc b/components/content_settings/core/common/content_settings.cc
|
||||
--- a/components/content_settings/core/common/content_settings.cc
|
||||
+++ b/components/content_settings/core/common/content_settings.cc
|
||||
@@ -205,7 +205,8 @@ bool RendererContentSettingRules::IsRendererContentSetting(
|
||||
@@ -209,7 +209,8 @@ bool RendererContentSettingRules::IsRendererContentSetting(
|
||||
content_type == ContentSettingsType::MIXEDSCRIPT ||
|
||||
content_type == ContentSettingsType::AUTO_DARK_WEB_CONTENT ||
|
||||
content_type == ContentSettingsType::TIMEZONE_OVERRIDE ||
|
||||
@@ -261,10 +264,18 @@ diff --git a/components/content_settings/core/common/content_settings.cc b/compo
|
||||
}
|
||||
|
||||
void RendererContentSettingRules::FilterRulesByOutermostMainFrameURL(
|
||||
@@ -222,6 +223,7 @@ void RendererContentSettingRules::FilterRulesByOutermostMainFrameURL(
|
||||
FilterRulesForType(timezone_override_rules, outermost_main_frame_url);
|
||||
FilterRulesForType(autoplay_rules, outermost_main_frame_url);
|
||||
FilterRulesForType(webgl_rules, outermost_main_frame_url);
|
||||
+ FilterRulesForType(webrtc_rules, outermost_main_frame_url);
|
||||
}
|
||||
|
||||
RendererContentSettingRules::RendererContentSettingRules() = default;
|
||||
diff --git a/components/content_settings/core/common/content_settings.h b/components/content_settings/core/common/content_settings.h
|
||||
--- a/components/content_settings/core/common/content_settings.h
|
||||
+++ b/components/content_settings/core/common/content_settings.h
|
||||
@@ -98,6 +98,7 @@ struct RendererContentSettingRules {
|
||||
@@ -97,6 +97,7 @@ struct RendererContentSettingRules {
|
||||
ContentSettingsForOneType timezone_override_rules;
|
||||
std::string timezone_override_value;
|
||||
ContentSettingsForOneType webgl_rules;
|
||||
@@ -284,7 +295,7 @@ diff --git a/components/content_settings/core/common/content_settings.mojom b/co
|
||||
diff --git a/components/content_settings/core/common/content_settings_mojom_traits.cc b/components/content_settings/core/common/content_settings_mojom_traits.cc
|
||||
--- a/components/content_settings/core/common/content_settings_mojom_traits.cc
|
||||
+++ b/components/content_settings/core/common/content_settings_mojom_traits.cc
|
||||
@@ -105,7 +105,8 @@ bool StructTraits<content_settings::mojom::RendererContentSettingRulesDataView,
|
||||
@@ -106,7 +106,8 @@ bool StructTraits<content_settings::mojom::RendererContentSettingRulesDataView,
|
||||
data.ReadAutoDarkContentRules(&out->auto_dark_content_rules) &&
|
||||
data.ReadTimezoneOverrideRules(&out->timezone_override_rules) &&
|
||||
data.ReadTimezoneOverrideValue(&out->timezone_override_value) &&
|
||||
@@ -312,7 +323,7 @@ diff --git a/components/content_settings/core/common/content_settings_mojom_trai
|
||||
diff --git a/components/content_settings/core/common/content_settings_types.h b/components/content_settings/core/common/content_settings_types.h
|
||||
--- a/components/content_settings/core/common/content_settings_types.h
|
||||
+++ b/components/content_settings/core/common/content_settings_types.h
|
||||
@@ -289,6 +289,8 @@ enum class ContentSettingsType : int32_t {
|
||||
@@ -279,6 +279,8 @@ enum class ContentSettingsType : int32_t {
|
||||
|
||||
WEBGL,
|
||||
|
||||
@@ -324,7 +335,7 @@ diff --git a/components/content_settings/core/common/content_settings_types.h b/
|
||||
diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc
|
||||
--- a/components/content_settings/renderer/content_settings_agent_impl.cc
|
||||
+++ b/components/content_settings/renderer/content_settings_agent_impl.cc
|
||||
@@ -464,6 +464,15 @@ bool ContentSettingsAgentImpl::AllowWebgl(bool enabled_per_settings) {
|
||||
@@ -458,6 +458,15 @@ bool ContentSettingsAgentImpl::AllowWebgl(bool enabled_per_settings) {
|
||||
url::Origin(frame->GetDocument().GetSecurityOrigin()).GetURL());
|
||||
}
|
||||
|
||||
@@ -343,7 +354,7 @@ diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc
|
||||
diff --git a/components/content_settings/renderer/content_settings_agent_impl.h b/components/content_settings/renderer/content_settings_agent_impl.h
|
||||
--- a/components/content_settings/renderer/content_settings_agent_impl.h
|
||||
+++ b/components/content_settings/renderer/content_settings_agent_impl.h
|
||||
@@ -95,6 +95,7 @@ class ContentSettingsAgentImpl
|
||||
@@ -100,6 +100,7 @@ class ContentSettingsAgentImpl
|
||||
bool AllowPopupsAndRedirects(bool default_value) override;
|
||||
bool ShouldAutoupgradeMixedContent() override;
|
||||
bool AllowWebgl(bool enabled_per_settings) override;
|
||||
@@ -366,7 +377,15 @@ diff --git a/third_party/blink/public/platform/web_content_settings_client.h b/t
|
||||
diff --git a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc
|
||||
--- a/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc
|
||||
+++ b/third_party/blink/renderer/modules/peerconnection/peer_connection_dependency_factory.cc
|
||||
@@ -762,6 +762,11 @@ PeerConnectionDependencyFactory::CreatePortAllocator(
|
||||
@@ -33,6 +33,7 @@
|
||||
#include "third_party/blink/public/common/peerconnection/webrtc_ip_handling_policy.h"
|
||||
#include "third_party/blink/public/platform/modules/webrtc/webrtc_logging.h"
|
||||
#include "third_party/blink/public/platform/platform.h"
|
||||
+#include "third_party/blink/public/platform/web_content_settings_client.h"
|
||||
#include "third_party/blink/public/platform/web_url.h"
|
||||
#include "third_party/blink/public/web/modules/mediastream/media_stream_video_source.h"
|
||||
#include "third_party/blink/public/web/web_document.h"
|
||||
@@ -804,6 +805,11 @@ PeerConnectionDependencyFactory::CreatePortAllocator(
|
||||
// origin.
|
||||
WebRTCIPHandlingPolicy policy =
|
||||
GetWebRTCIPHandlingPolicy(webrtc_ip_handling_policy);
|
||||
|
||||
@@ -2,12 +2,13 @@ From: Zoraver Kang <Zoraver@users.noreply.github.com>
|
||||
Date: Fri, 22 May 2020 22:43:27 -0400
|
||||
Subject: Allow building without enable_reporting
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../browser/devtools/protocol/network_handler.cc | 2 ++
|
||||
.../net/cross_origin_embedder_policy_reporter.cc | 4 +++-
|
||||
.../net/cross_origin_opener_policy_reporter.cc | 16 +++++++---------
|
||||
content/browser/net/reporting_service_proxy.cc | 3 +++
|
||||
.../renderer_host/render_frame_host_impl.cc | 2 ++
|
||||
.../cross_origin_embedder_policy_reporter.cc | 7 +++++--
|
||||
.../cross_origin_opener_policy_reporter.cc | 16 +++++++---------
|
||||
.../browser/network/reporting_service_proxy.cc | 3 +++
|
||||
.../renderer_host/render_frame_host_impl.cc | 6 ------
|
||||
.../web_package/signed_exchange_reporter.cc | 2 ++
|
||||
...content_switch_dependent_feature_overrides.cc | 1 +
|
||||
net/reporting/reporting_service.cc | 6 ++++++
|
||||
@@ -18,12 +19,12 @@ Subject: Allow building without enable_reporting
|
||||
.../blink/renderer/core/frame/local_frame.h | 6 +++---
|
||||
.../renderer/core/frame/reporting_context.cc | 9 +++++++++
|
||||
.../renderer/core/frame/reporting_context.h | 7 +++++--
|
||||
15 files changed, 50 insertions(+), 18 deletions(-)
|
||||
15 files changed, 50 insertions(+), 25 deletions(-)
|
||||
|
||||
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
|
||||
@@ -1289,6 +1289,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
|
||||
@@ -1291,6 +1291,7 @@ String BuildReportStatus(const net::ReportingReport::Status status) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,7 +32,7 @@ diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/brow
|
||||
std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
|
||||
std::vector<GURL> urls;
|
||||
base::queue<FrameTreeNode*> queue;
|
||||
@@ -1306,6 +1307,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
|
||||
@@ -1308,6 +1309,7 @@ std::vector<GURL> ComputeReportingURLs(RenderFrameHostImpl* frame_host) {
|
||||
}
|
||||
return urls;
|
||||
}
|
||||
@@ -39,38 +40,48 @@ diff --git a/content/browser/devtools/protocol/network_handler.cc b/content/brow
|
||||
|
||||
} // namespace
|
||||
|
||||
diff --git a/content/browser/net/cross_origin_embedder_policy_reporter.cc b/content/browser/net/cross_origin_embedder_policy_reporter.cc
|
||||
--- a/content/browser/net/cross_origin_embedder_policy_reporter.cc
|
||||
+++ b/content/browser/net/cross_origin_embedder_policy_reporter.cc
|
||||
diff --git a/content/browser/network/cross_origin_embedder_policy_reporter.cc b/content/browser/network/cross_origin_embedder_policy_reporter.cc
|
||||
--- a/content/browser/network/cross_origin_embedder_policy_reporter.cc
|
||||
+++ b/content/browser/network/cross_origin_embedder_policy_reporter.cc
|
||||
@@ -4,6 +4,7 @@
|
||||
|
||||
#include "content/browser/net/cross_origin_embedder_policy_reporter.h"
|
||||
#include "content/browser/network/cross_origin_embedder_policy_reporter.h"
|
||||
|
||||
+#include "net/base/features.h"
|
||||
#include "base/strings/string_piece.h"
|
||||
#include "base/values.h"
|
||||
#include "content/public/browser/storage_partition.h"
|
||||
@@ -112,6 +113,7 @@ void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
|
||||
@@ -95,8 +96,6 @@ void CrossOriginEmbedderPolicyReporter::Clone(
|
||||
void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
|
||||
std::initializer_list<std::pair<base::StringPiece, base::StringPiece>> body,
|
||||
bool report_only) {
|
||||
- const absl::optional<std::string>& endpoint =
|
||||
- report_only ? report_only_endpoint_ : endpoint_;
|
||||
const char* const disposition = report_only ? "reporting" : "enforce";
|
||||
if (observer_) {
|
||||
std::vector<blink::mojom::ReportBodyElementPtr> list;
|
||||
@@ -111,6 +110,9 @@ void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
|
||||
observer_->Notify(blink::mojom::Report::New(
|
||||
kType, context_url_, blink::mojom::ReportBody::New(std::move(list))));
|
||||
}
|
||||
if (endpoint) {
|
||||
+#if BUILDFLAG(ENABLE_REPORTING)
|
||||
base::DictionaryValue body_to_pass;
|
||||
+ const absl::optional<std::string>& endpoint =
|
||||
+ report_only ? report_only_endpoint_ : endpoint_;
|
||||
if (endpoint) {
|
||||
base::Value::Dict body_to_pass;
|
||||
for (const auto& pair : body) {
|
||||
body_to_pass.SetString(pair.first, pair.second);
|
||||
@@ -123,7 +125,7 @@ void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
|
||||
kType, *endpoint, context_url_, reporting_source_,
|
||||
network_isolation_key_,
|
||||
@@ -125,6 +127,7 @@ void CrossOriginEmbedderPolicyReporter::QueueAndNotify(
|
||||
/*user_agent=*/absl::nullopt, std::move(body_to_pass));
|
||||
- }
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
|
||||
diff --git a/content/browser/net/cross_origin_opener_policy_reporter.cc b/content/browser/net/cross_origin_opener_policy_reporter.cc
|
||||
--- a/content/browser/net/cross_origin_opener_policy_reporter.cc
|
||||
+++ b/content/browser/net/cross_origin_opener_policy_reporter.cc
|
||||
@@ -17,25 +17,17 @@
|
||||
} // namespace content
|
||||
diff --git a/content/browser/network/cross_origin_opener_policy_reporter.cc b/content/browser/network/cross_origin_opener_policy_reporter.cc
|
||||
--- a/content/browser/network/cross_origin_opener_policy_reporter.cc
|
||||
+++ b/content/browser/network/cross_origin_opener_policy_reporter.cc
|
||||
@@ -18,25 +18,17 @@
|
||||
#include "services/network/public/mojom/network_context.mojom.h"
|
||||
#include "services/network/public/mojom/source_location.mojom.h"
|
||||
#include "url/origin.h"
|
||||
@@ -97,7 +108,7 @@ diff --git a/content/browser/net/cross_origin_opener_policy_reporter.cc b/conten
|
||||
constexpr char kType[] = "type";
|
||||
|
||||
// Report attribute values:
|
||||
@@ -44,6 +36,7 @@ constexpr char kDispositionReporting[] = "reporting";
|
||||
@@ -45,6 +37,7 @@ constexpr char kDispositionReporting[] = "reporting";
|
||||
constexpr char kTypeFromResponse[] = "navigation-from-response";
|
||||
constexpr char kTypeToResponse[] = "navigation-to-response";
|
||||
|
||||
@@ -105,15 +116,15 @@ diff --git a/content/browser/net/cross_origin_opener_policy_reporter.cc b/conten
|
||||
std::string ToString(network::mojom::CrossOriginOpenerPolicyValue coop_value) {
|
||||
switch (coop_value) {
|
||||
case network::mojom::CrossOriginOpenerPolicyValue::kUnsafeNone:
|
||||
@@ -59,6 +52,7 @@ std::string ToString(network::mojom::CrossOriginOpenerPolicyValue coop_value) {
|
||||
return "same-origin-allow-popups-plus-coep";
|
||||
@@ -62,6 +55,7 @@ std::string ToString(network::mojom::CrossOriginOpenerPolicyValue coop_value) {
|
||||
return "restrict-properties-plus-coep";
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
|
||||
FrameTreeNode* TopLevelOpener(FrameTreeNode* frame) {
|
||||
FrameTreeNode* opener = frame->original_opener();
|
||||
@@ -229,6 +223,7 @@ void CrossOriginOpenerPolicyReporter::QueueAccessReport(
|
||||
FrameTreeNode* opener =
|
||||
@@ -233,6 +227,7 @@ void CrossOriginOpenerPolicyReporter::QueueAccessReport(
|
||||
network::mojom::SourceLocationPtr source_location,
|
||||
const std::string& reported_window_url,
|
||||
const std::string& initial_popup_url) const {
|
||||
@@ -121,32 +132,32 @@ diff --git a/content/browser/net/cross_origin_opener_policy_reporter.cc b/conten
|
||||
// Cross-Origin-Opener-Policy-Report-Only is not required to provide
|
||||
// endpoints.
|
||||
if (!coop_.report_only_reporting_endpoint)
|
||||
@@ -277,12 +272,14 @@ void CrossOriginOpenerPolicyReporter::QueueAccessReport(
|
||||
@@ -280,12 +275,14 @@ void CrossOriginOpenerPolicyReporter::QueueAccessReport(
|
||||
storage_partition_->GetNetworkContext()->QueueReport(
|
||||
"coop", endpoint, context_url_, reporting_source_, network_isolation_key_,
|
||||
absl::nullopt, std::move(body));
|
||||
"coop", endpoint, context_url_, reporting_source_,
|
||||
network_anonymization_key_, absl::nullopt, std::move(body));
|
||||
+#endif
|
||||
}
|
||||
|
||||
void CrossOriginOpenerPolicyReporter::QueueNavigationReport(
|
||||
base::DictionaryValue body,
|
||||
base::Value::Dict body,
|
||||
const std::string& endpoint,
|
||||
bool is_report_only) {
|
||||
+#if BUILDFLAG(ENABLE_REPORTING)
|
||||
body.SetString(kDisposition,
|
||||
is_report_only ? kDispositionReporting : kDispositionEnforce);
|
||||
body.SetString(
|
||||
@@ -291,6 +288,7 @@ void CrossOriginOpenerPolicyReporter::QueueNavigationReport(
|
||||
storage_partition_->GetNetworkContext()->QueueReport(
|
||||
"coop", endpoint, context_url_, reporting_source_, network_isolation_key_,
|
||||
body.Set(kDisposition,
|
||||
is_report_only ? kDispositionReporting : kDispositionEnforce);
|
||||
body.Set(kEffectivePolicy,
|
||||
@@ -294,6 +291,7 @@ void CrossOriginOpenerPolicyReporter::QueueNavigationReport(
|
||||
"coop", endpoint, context_url_, reporting_source_,
|
||||
network_anonymization_key_,
|
||||
/*user_agent=*/absl::nullopt, std::move(body));
|
||||
+#endif
|
||||
}
|
||||
|
||||
} // namespace content
|
||||
diff --git a/content/browser/net/reporting_service_proxy.cc b/content/browser/net/reporting_service_proxy.cc
|
||||
--- a/content/browser/net/reporting_service_proxy.cc
|
||||
+++ b/content/browser/net/reporting_service_proxy.cc
|
||||
diff --git a/content/browser/network/reporting_service_proxy.cc b/content/browser/network/reporting_service_proxy.cc
|
||||
--- a/content/browser/network/reporting_service_proxy.cc
|
||||
+++ b/content/browser/network/reporting_service_proxy.cc
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "base/memory/ref_counted.h"
|
||||
#include "base/unguessable_token.h"
|
||||
@@ -155,18 +166,17 @@ diff --git a/content/browser/net/reporting_service_proxy.cc b/content/browser/ne
|
||||
#include "content/browser/service_worker/service_worker_host.h"
|
||||
#include "content/browser/worker_host/dedicated_worker_host.h"
|
||||
#include "content/browser/worker_host/shared_worker_host.h"
|
||||
@@ -173,6 +174,7 @@ class ReportingServiceProxyImpl : public blink::mojom::ReportingServiceProxy {
|
||||
@@ -174,12 +175,14 @@ class ReportingServiceProxyImpl : public blink::mojom::ReportingServiceProxy {
|
||||
const std::string& group,
|
||||
const std::string& type,
|
||||
std::unique_ptr<base::Value> body) {
|
||||
base::Value::Dict body) {
|
||||
+#if BUILDFLAG(ENABLE_REPORTING)
|
||||
auto* rph = RenderProcessHost::FromID(render_process_id_);
|
||||
if (!rph)
|
||||
return;
|
||||
@@ -180,6 +182,7 @@ class ReportingServiceProxyImpl : public blink::mojom::ReportingServiceProxy {
|
||||
type, group, url, reporting_source_, network_isolation_key_,
|
||||
/*user_agent=*/absl::nullopt,
|
||||
base::Value::FromUniquePtrValue(std::move(body)));
|
||||
rph->GetStoragePartition()->GetNetworkContext()->QueueReport(
|
||||
type, group, url, reporting_source_, network_anonymization_key_,
|
||||
/*user_agent=*/absl::nullopt, std::move(body));
|
||||
+#endif
|
||||
}
|
||||
|
||||
@@ -174,37 +184,34 @@ diff --git a/content/browser/net/reporting_service_proxy.cc b/content/browser/ne
|
||||
diff --git a/content/browser/renderer_host/render_frame_host_impl.cc b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
--- a/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
+++ b/content/browser/renderer_host/render_frame_host_impl.cc
|
||||
@@ -11437,6 +11437,7 @@ void RenderFrameHostImpl::OnSameDocumentCommitProcessed(
|
||||
void RenderFrameHostImpl::MaybeGenerateCrashReport(
|
||||
base::TerminationStatus status,
|
||||
int exit_code) {
|
||||
+#if BUILDFLAG(ENABLE_REPORTING)
|
||||
if (!last_committed_url_.SchemeIsHTTPOrHTTPS())
|
||||
return;
|
||||
|
||||
@@ -11486,6 +11487,7 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
|
||||
/*type=*/"crash", /*group=*/"default", last_committed_url_,
|
||||
GetReportingSource(), isolation_info_.network_isolation_key(),
|
||||
absl::nullopt /* user_agent */, std::move(body));
|
||||
+#endif
|
||||
@@ -11993,12 +11993,6 @@ void RenderFrameHostImpl::MaybeGenerateCrashReport(
|
||||
base::Value::Dict body;
|
||||
if (!reason.empty())
|
||||
body.Set("reason", reason);
|
||||
-
|
||||
- // Send the crash report to the Reporting API.
|
||||
- GetProcess()->GetStoragePartition()->GetNetworkContext()->QueueReport(
|
||||
- /*type=*/"crash", /*group=*/"default", last_committed_url_,
|
||||
- GetReportingSource(), isolation_info_.network_anonymization_key(),
|
||||
- absl::nullopt /* user_agent */, std::move(body));
|
||||
}
|
||||
|
||||
void RenderFrameHostImpl::SendCommitNavigation(
|
||||
diff --git a/content/browser/web_package/signed_exchange_reporter.cc b/content/browser/web_package/signed_exchange_reporter.cc
|
||||
--- a/content/browser/web_package/signed_exchange_reporter.cc
|
||||
+++ b/content/browser/web_package/signed_exchange_reporter.cc
|
||||
@@ -127,6 +127,7 @@ bool ShouldDowngradeReport(const char* result_string,
|
||||
void ReportResult(int frame_tree_node_id,
|
||||
network::mojom::SignedExchangeReportPtr report,
|
||||
const net::NetworkIsolationKey& network_isolation_key) {
|
||||
@@ -128,6 +128,7 @@ void ReportResult(
|
||||
int frame_tree_node_id,
|
||||
network::mojom::SignedExchangeReportPtr report,
|
||||
const net::NetworkAnonymizationKey& network_anonymization_key) {
|
||||
+#if BUILDFLAG(ENABLE_REPORTING)
|
||||
FrameTreeNode* frame_tree_node =
|
||||
FrameTreeNode::GloballyFindByID(frame_tree_node_id);
|
||||
if (!frame_tree_node)
|
||||
@@ -141,6 +142,7 @@ void ReportResult(int frame_tree_node_id,
|
||||
@@ -142,6 +143,7 @@ void ReportResult(
|
||||
DCHECK(partition);
|
||||
partition->GetNetworkContext()->QueueSignedExchangeReport(
|
||||
std::move(report), network_isolation_key);
|
||||
std::move(report), network_anonymization_key);
|
||||
+#endif
|
||||
}
|
||||
|
||||
@@ -212,7 +219,7 @@ diff --git a/content/browser/web_package/signed_exchange_reporter.cc b/content/b
|
||||
diff --git a/content/public/common/content_switch_dependent_feature_overrides.cc b/content/public/common/content_switch_dependent_feature_overrides.cc
|
||||
--- a/content/public/common/content_switch_dependent_feature_overrides.cc
|
||||
+++ b/content/public/common/content_switch_dependent_feature_overrides.cc
|
||||
@@ -7,6 +7,7 @@
|
||||
@@ -8,6 +8,7 @@
|
||||
#include "content/public/common/content_features.h"
|
||||
#include "content/public/common/content_switches.h"
|
||||
#include "net/base/features.h"
|
||||
@@ -223,8 +230,8 @@ diff --git a/content/public/common/content_switch_dependent_feature_overrides.cc
|
||||
diff --git a/net/reporting/reporting_service.cc b/net/reporting/reporting_service.cc
|
||||
--- a/net/reporting/reporting_service.cc
|
||||
+++ b/net/reporting/reporting_service.cc
|
||||
@@ -212,6 +212,12 @@ class ReportingServiceImpl : public ReportingService {
|
||||
std::unique_ptr<const base::Value> body,
|
||||
@@ -211,6 +211,12 @@ class ReportingServiceImpl : public ReportingService {
|
||||
base::Value::Dict body,
|
||||
int depth,
|
||||
base::TimeTicks queued_ticks) {
|
||||
+#if BUILDFLAG(ENABLE_REPORTING)
|
||||
@@ -235,27 +242,27 @@ diff --git a/net/reporting/reporting_service.cc b/net/reporting/reporting_servic
|
||||
+#endif
|
||||
DCHECK(initialized_);
|
||||
context_->cache()->AddReport(
|
||||
reporting_source, network_isolation_key, sanitized_url, user_agent,
|
||||
reporting_source, network_anonymization_key, sanitized_url, user_agent,
|
||||
diff --git a/services/network/network_context.h b/services/network/network_context.h
|
||||
--- a/services/network/network_context.h
|
||||
+++ b/services/network/network_context.h
|
||||
@@ -459,10 +459,10 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
|
||||
@@ -465,10 +465,10 @@ class COMPONENT_EXPORT(NETWORK_SERVICE) NetworkContext
|
||||
const absl::optional<base::UnguessableToken>& reporting_source,
|
||||
const net::NetworkIsolationKey& network_isolation_key,
|
||||
const net::NetworkAnonymizationKey& network_anonymization_key,
|
||||
const absl::optional<std::string>& user_agent,
|
||||
- base::Value body) override;
|
||||
+ base::Value body);
|
||||
- base::Value::Dict body) override;
|
||||
+ base::Value::Dict body);
|
||||
void QueueSignedExchangeReport(
|
||||
mojom::SignedExchangeReportPtr report,
|
||||
- const net::NetworkIsolationKey& network_isolation_key) override;
|
||||
+ const net::NetworkIsolationKey& network_isolation_key);
|
||||
- const net::NetworkAnonymizationKey& network_anonymization_key) override;
|
||||
+ const net::NetworkAnonymizationKey& network_anonymization_key);
|
||||
void AddDomainReliabilityContextForTesting(
|
||||
const GURL& origin,
|
||||
const url::Origin& origin,
|
||||
const GURL& upload_url,
|
||||
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
|
||||
@@ -963,7 +963,6 @@ mojom("mojom") {
|
||||
@@ -1168,7 +1168,6 @@ mojom("mojom") {
|
||||
export_define_blink = "BLINK_PLATFORM_IMPLEMENTATION=1"
|
||||
export_header_blink = "third_party/blink/public/platform/web_common.h"
|
||||
if (enable_reporting) {
|
||||
@@ -266,7 +273,7 @@ diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mo
|
||||
diff --git a/services/network/public/mojom/network_context.mojom b/services/network/public/mojom/network_context.mojom
|
||||
--- a/services/network/public/mojom/network_context.mojom
|
||||
+++ b/services/network/public/mojom/network_context.mojom
|
||||
@@ -1043,6 +1043,7 @@ interface NetworkContext {
|
||||
@@ -1072,6 +1072,7 @@ interface NetworkContext {
|
||||
// provided |network_isolation_key|.
|
||||
//
|
||||
// Spec: https://w3c.github.io/reporting/#concept-reports
|
||||
@@ -274,13 +281,13 @@ diff --git a/services/network/public/mojom/network_context.mojom b/services/netw
|
||||
QueueReport(string type,
|
||||
string group,
|
||||
url.mojom.Url url,
|
||||
@@ -1056,6 +1057,7 @@ interface NetworkContext {
|
||||
@@ -1085,6 +1086,7 @@ interface NetworkContext {
|
||||
// Note that this queued report will never be delivered if no reporting
|
||||
// endpoint matching is registered for with the provided
|
||||
// |network_isolation_key|.
|
||||
+ [EnableIf=enable_reporting]
|
||||
QueueSignedExchangeReport(SignedExchangeReport report,
|
||||
NetworkIsolationKey network_isolation_key);
|
||||
NetworkAnonymizationKey network_anonymization_key);
|
||||
|
||||
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
|
||||
@@ -293,7 +300,7 @@ diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/
|
||||
#include "services/data_decoder/public/mojom/resource_snapshot_for_web_bundle.mojom-blink.h"
|
||||
#include "services/network/public/cpp/features.h"
|
||||
#include "services/network/public/mojom/content_security_policy.mojom-blink.h"
|
||||
@@ -2334,9 +2335,11 @@ const base::UnguessableToken& LocalFrame::GetAgentClusterId() const {
|
||||
@@ -2328,9 +2329,11 @@ const base::UnguessableToken& LocalFrame::GetAgentClusterId() const {
|
||||
return base::UnguessableToken::Null();
|
||||
}
|
||||
|
||||
@@ -319,7 +326,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"
|
||||
@@ -561,9 +561,9 @@ class CORE_EXPORT LocalFrame final
|
||||
@@ -596,9 +596,9 @@ class CORE_EXPORT LocalFrame final
|
||||
}
|
||||
|
||||
SmoothScrollSequencer& GetSmoothScrollSequencer();
|
||||
|
||||
@@ -2,15 +2,15 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Mon, 21 Feb 2022 01:24:11 +0100
|
||||
Subject: Allow building without supervised users
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../browser/childaccounts/ChildAccountService.java | 11 -----------
|
||||
chrome/browser/startup_data.cc | 3 ---
|
||||
.../browser/supervised_user/ChildAccountService.java | 11 -----------
|
||||
.../child_accounts/child_account_service_android.cc | 9 ---------
|
||||
3 files changed, 23 deletions(-)
|
||||
2 files changed, 20 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/childaccounts/ChildAccountService.java b/chrome/android/java/src/org/chromium/chrome/browser/childaccounts/ChildAccountService.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/childaccounts/ChildAccountService.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/childaccounts/ChildAccountService.java
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/supervised_user/ChildAccountService.java b/chrome/android/java/src/org/chromium/chrome/browser/supervised_user/ChildAccountService.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/supervised_user/ChildAccountService.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/supervised_user/ChildAccountService.java
|
||||
@@ -31,21 +31,10 @@ public class ChildAccountService {
|
||||
ThreadUtils.assertOnUiThread();
|
||||
final Activity activity = windowAndroid.getActivity().get();
|
||||
@@ -33,19 +33,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/childaccounts/C
|
||||
- void onReauthenticationFailed(long onFailureCallbackPtr);
|
||||
- }
|
||||
}
|
||||
diff --git a/chrome/browser/startup_data.cc b/chrome/browser/startup_data.cc
|
||||
--- a/chrome/browser/startup_data.cc
|
||||
+++ b/chrome/browser/startup_data.cc
|
||||
@@ -32,9 +32,6 @@
|
||||
#include "chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.h"
|
||||
#include "chrome/browser/profiles/pref_service_builder_utils.h"
|
||||
#include "chrome/browser/profiles/profile_key.h"
|
||||
-#include "chrome/browser/supervised_user/supervised_user_pref_store.h"
|
||||
-#include "chrome/browser/supervised_user/supervised_user_settings_service.h"
|
||||
-#include "chrome/browser/supervised_user/supervised_user_settings_service_factory.h"
|
||||
#include "chrome/common/chrome_constants.h"
|
||||
#include "chrome/common/chrome_paths.h"
|
||||
#include "components/keyed_service/content/browser_context_dependency_manager.h"
|
||||
diff --git a/chrome/browser/supervised_user/child_accounts/child_account_service_android.cc b/chrome/browser/supervised_user/child_accounts/child_account_service_android.cc
|
||||
--- a/chrome/browser/supervised_user/child_accounts/child_account_service_android.cc
|
||||
+++ b/chrome/browser/supervised_user/child_accounts/child_account_service_android.cc
|
||||
|
||||
@@ -2,15 +2,16 @@ From: AlexeyBarabash <alexey@brave.com>
|
||||
Date: Thu, 2 Nov 2017 18:21:16 +0200
|
||||
Subject: Allow playing audio in background
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../renderer/platform/media/web_media_player_impl.cc | 12 +++++++++++-
|
||||
.../renderer/platform/media/web_media_player_impl.h | 3 +++
|
||||
2 files changed, 14 insertions(+), 1 deletion(-)
|
||||
.../renderer/platform/media/web_media_player_impl.cc | 11 ++++++++++-
|
||||
.../renderer/platform/media/web_media_player_impl.h | 3 +++
|
||||
2 files changed, 13 insertions(+), 1 deletion(-)
|
||||
|
||||
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
|
||||
@@ -1214,6 +1214,12 @@ bool WebMediaPlayerImpl::HasAudio() const {
|
||||
@@ -1237,6 +1237,12 @@ bool WebMediaPlayerImpl::HasAudio() const {
|
||||
return pipeline_metadata_.has_audio;
|
||||
}
|
||||
|
||||
@@ -23,23 +24,22 @@ 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());
|
||||
@@ -3586,7 +3592,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
|
||||
@@ -3662,7 +3668,10 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
|
||||
: HasAudio();
|
||||
|
||||
// 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.
|
||||
- if (!HasVideo())
|
||||
+
|
||||
- if (!HasVideo() && preserve_audio)
|
||||
+ //pipeline_metadata_.has_video is true for MediaPlayerRenderer,
|
||||
+ //see media/base/pipeline_metadata.h. This is a workaround to allow audio
|
||||
+ //streams be played in background.
|
||||
+ if (!HasVideoNonEmptySize())
|
||||
+ if (!HasVideoNonEmptySize() && preserve_audio)
|
||||
return false;
|
||||
|
||||
if (using_media_player_renderer_ &&
|
||||
// MediaPlayer always signals audio and video, so use an empty natural size to
|
||||
diff --git a/third_party/blink/renderer/platform/media/web_media_player_impl.h b/third_party/blink/renderer/platform/media/web_media_player_impl.h
|
||||
--- a/third_party/blink/renderer/platform/media/web_media_player_impl.h
|
||||
+++ b/third_party/blink/renderer/platform/media/web_media_player_impl.h
|
||||
@@ -191,6 +191,9 @@ class PLATFORM_EXPORT WebMediaPlayerImpl
|
||||
@@ -197,6 +197,9 @@ class PLATFORM_EXPORT WebMediaPlayerImpl
|
||||
bool HasVideo() const override;
|
||||
bool HasAudio() const override;
|
||||
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
From: xsmile <xsmile@users.noreply.github.com>
|
||||
Date: Thu, 11 Oct 2018 21:29:35 +0200
|
||||
Subject: Allow website sign-in without account sign-in
|
||||
|
||||
Disable prefs::kSigninAllowedOnNextStartup by default. The setting can be found in chrome://settings
|
||||
---
|
||||
chrome/browser/signin/account_consistency_mode_manager.cc | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/chrome/browser/signin/account_consistency_mode_manager.cc b/chrome/browser/signin/account_consistency_mode_manager.cc
|
||||
--- a/chrome/browser/signin/account_consistency_mode_manager.cc
|
||||
+++ b/chrome/browser/signin/account_consistency_mode_manager.cc
|
||||
@@ -112,7 +112,7 @@ AccountConsistencyModeManager::~AccountConsistencyModeManager() {}
|
||||
// static
|
||||
void AccountConsistencyModeManager::RegisterProfilePrefs(
|
||||
user_prefs::PrefRegistrySyncable* registry) {
|
||||
- registry->RegisterBooleanPref(prefs::kSigninAllowedOnNextStartup, true);
|
||||
+ registry->RegisterBooleanPref(prefs::kSigninAllowedOnNextStartup, false);
|
||||
}
|
||||
|
||||
// static
|
||||
--
|
||||
2.25.1
|
||||
@@ -3,22 +3,25 @@ Date: Wed, 27 Jun 2018 11:02:38 +0200
|
||||
Subject: Always use new tab page for default home page
|
||||
|
||||
Ignore any partner-provided home page.
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../org/chromium/chrome/browser/homepage/HomepageManager.java | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
.../org/chromium/chrome/browser/homepage/HomepageManager.java | 4 ----
|
||||
1 file changed, 4 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
|
||||
@@ -146,9 +146,6 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
|
||||
@@ -147,10 +147,6 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
|
||||
* if the homepage button is force enabled via flag.
|
||||
*/
|
||||
public static String getDefaultHomepageUri() {
|
||||
- if (PartnerBrowserCustomizations.getInstance().isHomepageProviderAvailableAndEnabled()) {
|
||||
- return PartnerBrowserCustomizations.getInstance().getHomePageUrl();
|
||||
- return PartnerBrowserCustomizations.getInstance().getHomePageUrl().getSpec();
|
||||
- }
|
||||
|
||||
String homepagePartnerDefaultUri = SharedPreferencesManager.getInstance().readString(
|
||||
ChromePreferenceKeys.HOMEPAGE_PARTNER_CUSTOMIZED_DEFAULT_URI, "");
|
||||
-
|
||||
String homepagePartnerDefaultUri;
|
||||
String homepagePartnerDefaultGurlSerialized =
|
||||
SharedPreferencesManager.getInstance().readString(
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
From: uazo <uazo@users.noreply.github.com>
|
||||
Date: Sat, 20 Nov 2021 17:42:41 +0000
|
||||
Subject: Ask user before closing all tabs
|
||||
|
||||
---
|
||||
chrome/browser/flags/android/chrome_feature_list.cc | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
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
|
||||
@@ -454,8 +454,8 @@ const base::Feature kConditionalTabStripAndroid{
|
||||
const base::Feature kCastDeviceFilter{"CastDeviceFilter",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
|
||||
-const base::Feature kCloseAllTabsModalDialog{"CloseAllTabsModalDialog",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+const base::Feature kCloseAllTabsModalDialog{"CloseAllTabsModalDialog", // Enabled by default in Bromite
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT}; // ^
|
||||
|
||||
const base::Feature kCloseTabSuggestions{"CloseTabSuggestions",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
--
|
||||
2.25.1
|
||||
@@ -3,6 +3,8 @@ Date: Sun, 25 Mar 2018 21:49:37 +0200
|
||||
Subject: AudioBuffer, AnalyserNode: fp mitigations
|
||||
|
||||
Truncate base latency precision to two digits
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../blink/renderer/modules/webaudio/analyser_node.idl | 8 ++++----
|
||||
.../blink/renderer/modules/webaudio/audio_buffer.idl | 6 ------
|
||||
@@ -46,7 +48,7 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.idl b/thir
|
||||
diff --git a/third_party/blink/renderer/modules/webaudio/audio_context.cc b/third_party/blink/renderer/modules/webaudio/audio_context.cc
|
||||
--- a/third_party/blink/renderer/modules/webaudio/audio_context.cc
|
||||
+++ b/third_party/blink/renderer/modules/webaudio/audio_context.cc
|
||||
@@ -492,7 +492,9 @@ double AudioContext::baseLatency() const {
|
||||
@@ -508,7 +508,9 @@ double AudioContext::baseLatency() const {
|
||||
DCHECK(IsMainThread());
|
||||
DCHECK(destination());
|
||||
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -3,6 +3,8 @@ Date: Thu, 22 Mar 2018 22:11:57 +0100
|
||||
Subject: Battery API: return nothing
|
||||
|
||||
Include @thestinger's fix for correct charging/unknown values
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../modules/battery/battery_manager.cc | 26 +++----------------
|
||||
1 file changed, 4 insertions(+), 22 deletions(-)
|
||||
@@ -10,7 +12,7 @@ Include @thestinger's fix for correct charging/unknown values
|
||||
diff --git a/third_party/blink/renderer/modules/battery/battery_manager.cc b/third_party/blink/renderer/modules/battery/battery_manager.cc
|
||||
--- a/third_party/blink/renderer/modules/battery/battery_manager.cc
|
||||
+++ b/third_party/blink/renderer/modules/battery/battery_manager.cc
|
||||
@@ -84,46 +84,28 @@ ScriptPromise BatteryManager::StartRequest(ScriptState* script_state) {
|
||||
@@ -77,46 +77,28 @@ ScriptPromise BatteryManager::StartRequest(ScriptState* script_state) {
|
||||
}
|
||||
|
||||
bool BatteryManager::charging() {
|
||||
|
||||
@@ -4,6 +4,8 @@ Subject: Block gateway attacks via websockets
|
||||
|
||||
This approach is not comprehensive, see also:
|
||||
* https://bugs.chromium.org/p/chromium/issues/detail?id=590714
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../execution_context/execution_context.cc | 16 ++++++++++
|
||||
.../execution_context/execution_context.h | 1 +
|
||||
@@ -21,8 +23,8 @@ This approach is not comprehensive, see also:
|
||||
diff --git a/third_party/blink/renderer/core/execution_context/execution_context.cc b/third_party/blink/renderer/core/execution_context/execution_context.cc
|
||||
--- a/third_party/blink/renderer/core/execution_context/execution_context.cc
|
||||
+++ b/third_party/blink/renderer/core/execution_context/execution_context.cc
|
||||
@@ -672,4 +672,20 @@ bool ExecutionContext::RequireTrustedTypes() const {
|
||||
RuntimeEnabledFeatures::TrustedDOMTypesEnabled(this);
|
||||
@@ -720,4 +720,20 @@ void ExecutionContext::WriteIntoTrace(
|
||||
proto->set_type(GetContextType(*this));
|
||||
}
|
||||
|
||||
+String ExecutionContext::addressSpaceForBindings() const {
|
||||
@@ -45,18 +47,18 @@ diff --git a/third_party/blink/renderer/core/execution_context/execution_context
|
||||
diff --git a/third_party/blink/renderer/core/execution_context/execution_context.h b/third_party/blink/renderer/core/execution_context/execution_context.h
|
||||
--- a/third_party/blink/renderer/core/execution_context/execution_context.h
|
||||
+++ b/third_party/blink/renderer/core/execution_context/execution_context.h
|
||||
@@ -374,6 +374,7 @@ class CORE_EXPORT ExecutionContext : public Supplementable<ExecutionContext>,
|
||||
const String& message = g_empty_string,
|
||||
const String& source_file = g_empty_string) const {}
|
||||
|
||||
+ String addressSpaceForBindings() const;
|
||||
network::mojom::IPAddressSpace AddressSpace() const;
|
||||
@@ -401,6 +401,7 @@ class CORE_EXPORT ExecutionContext : public Supplementable<ExecutionContext>,
|
||||
void SetAddressSpace(network::mojom::blink::IPAddressSpace ip_address_space);
|
||||
|
||||
HeapObserverSet<ContextLifecycleObserver>& ContextLifecycleObserverSet();
|
||||
+ String addressSpaceForBindings() const;
|
||||
unsigned ContextLifecycleStateObserverCountForTesting() const;
|
||||
|
||||
// Implementation of WindowOrWorkerGlobalScope.crossOriginIsolated.
|
||||
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
|
||||
@@ -83,6 +83,7 @@ class CORE_EXPORT BaseFetchContext : public FetchContext {
|
||||
@@ -84,6 +84,7 @@ class CORE_EXPORT BaseFetchContext : public FetchContext {
|
||||
|
||||
virtual SubresourceFilter* GetSubresourceFilter() const = 0;
|
||||
virtual bool ShouldBlockWebSocketByMixedContentCheck(const KURL&) const = 0;
|
||||
@@ -67,7 +69,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
|
||||
@@ -546,6 +546,26 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
|
||||
@@ -578,6 +578,26 @@ bool FrameFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
|
||||
return should_block_request;
|
||||
}
|
||||
|
||||
@@ -97,18 +99,18 @@ diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.cc b/thi
|
||||
diff --git a/third_party/blink/renderer/core/loader/frame_fetch_context.h b/third_party/blink/renderer/core/loader/frame_fetch_context.h
|
||||
--- a/third_party/blink/renderer/core/loader/frame_fetch_context.h
|
||||
+++ b/third_party/blink/renderer/core/loader/frame_fetch_context.h
|
||||
@@ -171,6 +171,7 @@ class CORE_EXPORT FrameFetchContext final : public BaseFetchContext,
|
||||
@@ -168,6 +168,7 @@ class CORE_EXPORT FrameFetchContext final : public BaseFetchContext,
|
||||
bool ShouldBlockWebSocketByMixedContentCheck(const KURL&) const override;
|
||||
std::unique_ptr<WebSocketHandshakeThrottle> CreateWebSocketHandshakeThrottle()
|
||||
override;
|
||||
+ bool ShouldBlockGateWayAttacks(network::mojom::IPAddressSpace requestor_space, const KURL&) const override;
|
||||
bool ShouldBlockFetchByMixedContentCheck(
|
||||
mojom::blink::RequestContextType request_context,
|
||||
const absl::optional<ResourceRequest::RedirectInfo>& redirect_info,
|
||||
network::mojom::blink::IPAddressSpace target_address_space,
|
||||
diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.cc b/third_party/blink/renderer/core/loader/worker_fetch_context.cc
|
||||
--- a/third_party/blink/renderer/core/loader/worker_fetch_context.cc
|
||||
+++ b/third_party/blink/renderer/core/loader/worker_fetch_context.cc
|
||||
@@ -24,6 +24,7 @@
|
||||
@@ -25,6 +25,7 @@
|
||||
#include "third_party/blink/renderer/platform/loader/fetch/resource_timing_info.h"
|
||||
#include "third_party/blink/renderer/platform/loader/fetch/worker_resource_timing_notifier.h"
|
||||
#include "third_party/blink/renderer/platform/network/network_state_notifier.h"
|
||||
@@ -116,7 +118,7 @@ diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.cc b/th
|
||||
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
|
||||
#include "third_party/blink/renderer/platform/supplementable.h"
|
||||
#include "third_party/blink/renderer/platform/weborigin/security_policy.h"
|
||||
@@ -90,6 +91,26 @@ bool WorkerFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
|
||||
@@ -91,6 +92,26 @@ bool WorkerFetchContext::ShouldBlockRequestByInspector(const KURL& url) const {
|
||||
return should_block_request;
|
||||
}
|
||||
|
||||
@@ -153,11 +155,11 @@ diff --git a/third_party/blink/renderer/core/loader/worker_fetch_context.h b/thi
|
||||
+ bool ShouldBlockGateWayAttacks(network::mojom::IPAddressSpace requestor_space, const KURL&) const override;
|
||||
bool ShouldBlockFetchByMixedContentCheck(
|
||||
mojom::blink::RequestContextType request_context,
|
||||
const absl::optional<ResourceRequest::RedirectInfo>& redirect_info,
|
||||
network::mojom::blink::IPAddressSpace target_address_space,
|
||||
diff --git a/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc b/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc
|
||||
--- a/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc
|
||||
+++ b/third_party/blink/renderer/modules/background_fetch/background_fetch_manager.cc
|
||||
@@ -101,6 +101,30 @@ bool ShouldBlockDanglingMarkup(const KURL& request_url) {
|
||||
@@ -102,6 +102,30 @@ bool ShouldBlockDanglingMarkup(const KURL& request_url) {
|
||||
request_url.ProtocolIsInHTTPFamily();
|
||||
}
|
||||
|
||||
@@ -188,7 +190,7 @@ diff --git a/third_party/blink/renderer/modules/background_fetch/background_fetc
|
||||
scoped_refptr<BlobDataHandle> ExtractBlobHandle(
|
||||
Request* request,
|
||||
ExceptionState& exception_state) {
|
||||
@@ -222,6 +246,13 @@ ScriptPromise BackgroundFetchManager::fetch(
|
||||
@@ -221,6 +245,13 @@ ScriptPromise BackgroundFetchManager::fetch(
|
||||
exception_state);
|
||||
}
|
||||
|
||||
@@ -205,7 +207,7 @@ diff --git a/third_party/blink/renderer/modules/background_fetch/background_fetc
|
||||
diff --git a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
|
||||
--- a/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
|
||||
+++ b/third_party/blink/renderer/modules/websockets/websocket_channel_impl.cc
|
||||
@@ -274,6 +274,11 @@ bool WebSocketChannelImpl::Connect(const KURL& url, const String& protocol) {
|
||||
@@ -276,6 +276,11 @@ bool WebSocketChannelImpl::Connect(const KURL& url, const String& protocol) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -220,7 +222,7 @@ diff --git a/third_party/blink/renderer/modules/websockets/websocket_channel_imp
|
||||
diff --git a/third_party/blink/renderer/modules/websockets/websocket_common.cc b/third_party/blink/renderer/modules/websockets/websocket_common.cc
|
||||
--- a/third_party/blink/renderer/modules/websockets/websocket_common.cc
|
||||
+++ b/third_party/blink/renderer/modules/websockets/websocket_common.cc
|
||||
@@ -124,9 +124,38 @@ WebSocketCommon::ConnectResult WebSocketCommon::Connect(
|
||||
@@ -125,9 +125,38 @@ WebSocketCommon::ConnectResult WebSocketCommon::Connect(
|
||||
return ConnectResult::kException;
|
||||
}
|
||||
|
||||
|
||||
@@ -4,6 +4,8 @@ Subject: Block 'qjz9zk' or 'trk:' requests
|
||||
|
||||
An info bar is displayed unless the --disable-trkbar command-line flag or the chrome://flag option is used.
|
||||
This patch is based on Iridium's 'net: add "trk:" scheme and help identify URLs being retrieved'
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../chrome_autocomplete_scheme_classifier.cc | 1 +
|
||||
chrome/browser/history/history_utils.cc | 1 +
|
||||
@@ -29,17 +31,17 @@ diff --git a/chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.c
|
||||
@@ -58,6 +58,7 @@ ChromeAutocompleteSchemeClassifier::GetInputTypeForScheme(
|
||||
if (base::IsStringASCII(scheme) &&
|
||||
(ProfileIOData::IsHandledProtocol(scheme) ||
|
||||
base::LowerCaseEqualsASCII(scheme, content::kViewSourceScheme) ||
|
||||
+ base::LowerCaseEqualsASCII(scheme, url::kTraceScheme) ||
|
||||
base::LowerCaseEqualsASCII(scheme, url::kJavaScriptScheme) ||
|
||||
base::LowerCaseEqualsASCII(scheme, url::kDataScheme))) {
|
||||
base::EqualsCaseInsensitiveASCII(scheme, content::kViewSourceScheme) ||
|
||||
+ base::EqualsCaseInsensitiveASCII(scheme, url::kTraceScheme) ||
|
||||
base::EqualsCaseInsensitiveASCII(scheme, url::kJavaScriptScheme) ||
|
||||
base::EqualsCaseInsensitiveASCII(scheme, url::kDataScheme))) {
|
||||
return metrics::OmniboxInputType::URL;
|
||||
diff --git a/chrome/browser/history/history_utils.cc b/chrome/browser/history/history_utils.cc
|
||||
--- a/chrome/browser/history/history_utils.cc
|
||||
+++ b/chrome/browser/history/history_utils.cc
|
||||
@@ -21,6 +21,7 @@ bool CanAddURLToHistory(const GURL& url) {
|
||||
url.SchemeIs(content::kChromeDevToolsScheme) ||
|
||||
@@ -22,6 +22,7 @@ bool CanAddURLToHistory(const GURL& url) {
|
||||
url.SchemeIs(content::kChromeUIScheme) ||
|
||||
url.SchemeIs(content::kChromeUIUntrustedScheme) ||
|
||||
url.SchemeIs(content::kViewSourceScheme) ||
|
||||
+ url.SchemeIs(url::kTraceScheme) ||
|
||||
url.SchemeIs(chrome::kChromeNativeScheme) ||
|
||||
@@ -48,7 +50,7 @@ diff --git a/chrome/browser/history/history_utils.cc b/chrome/browser/history/hi
|
||||
diff --git a/chrome/browser/ui/singleton_tabs.cc b/chrome/browser/ui/singleton_tabs.cc
|
||||
--- a/chrome/browser/ui/singleton_tabs.cc
|
||||
+++ b/chrome/browser/ui/singleton_tabs.cc
|
||||
@@ -106,6 +106,11 @@ int GetIndexOfExistingTab(Browser* browser, const NavigateParams& params) {
|
||||
@@ -101,6 +101,11 @@ int GetIndexOfExistingTab(Browser* browser, const NavigateParams& params) {
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -79,20 +81,20 @@ diff --git a/components/omnibox/browser/autocomplete_input.cc b/components/omnib
|
||||
return url::FindAndCompareScheme(utf8_input, scheme, nullptr);
|
||||
}
|
||||
|
||||
@@ -560,7 +565,8 @@ void AutocompleteInput::ParseForEmphasizeComponents(
|
||||
@@ -573,7 +578,8 @@ void AutocompleteInput::ParseForEmphasizeComponents(
|
||||
// For the view-source and blob schemes, we should emphasize the host of the
|
||||
// URL qualified by the view-source or blob prefix.
|
||||
if ((base::LowerCaseEqualsASCII(scheme_str, kViewSourceScheme) ||
|
||||
- base::LowerCaseEqualsASCII(scheme_str, url::kBlobScheme)) &&
|
||||
+ base::LowerCaseEqualsASCII(scheme_str, url::kBlobScheme) ||
|
||||
+ base::LowerCaseEqualsASCII(scheme_str, url::kTraceScheme)) &&
|
||||
if ((base::EqualsCaseInsensitiveASCII(scheme_str, kViewSourceScheme) ||
|
||||
- base::EqualsCaseInsensitiveASCII(scheme_str, url::kBlobScheme)) &&
|
||||
+ base::EqualsCaseInsensitiveASCII(scheme_str, url::kBlobScheme) ||
|
||||
+ base::EqualsCaseInsensitiveASCII(scheme_str, url::kTraceScheme)) &&
|
||||
(static_cast<int>(text.length()) > after_scheme_and_colon)) {
|
||||
// Obtain the URL prefixed by view-source or blob and parse it.
|
||||
std::u16string real_url(text.substr(after_scheme_and_colon));
|
||||
diff --git a/components/url_formatter/url_fixer.cc b/components/url_formatter/url_fixer.cc
|
||||
--- a/components/url_formatter/url_fixer.cc
|
||||
+++ b/components/url_formatter/url_fixer.cc
|
||||
@@ -562,6 +562,10 @@ GURL FixupURL(const std::string& text, const std::string& desired_tld) {
|
||||
@@ -563,6 +563,10 @@ GURL FixupURL(const std::string& text, const std::string& desired_tld) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -106,7 +108,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
|
||||
@@ -747,6 +747,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl()
|
||||
@@ -756,6 +756,7 @@ ChildProcessSecurityPolicyImpl::ChildProcessSecurityPolicyImpl()
|
||||
RegisterPseudoScheme(url::kJavaScriptScheme);
|
||||
RegisterPseudoScheme(kViewSourceScheme);
|
||||
RegisterPseudoScheme(kGoogleChromeScheme);
|
||||
@@ -117,7 +119,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
|
||||
@@ -1033,6 +1033,8 @@ component("net") {
|
||||
@@ -1032,6 +1032,8 @@ component("net") {
|
||||
"url_request/url_request_http_job.cc",
|
||||
"url_request/url_request_http_job.h",
|
||||
"url_request/url_request_interceptor.cc",
|
||||
@@ -208,9 +210,9 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc
|
||||
#include "url/origin.h"
|
||||
+#include "url/url_constants.h"
|
||||
|
||||
using base::Time;
|
||||
using std::string;
|
||||
@@ -609,6 +611,12 @@ URLRequest::URLRequest(const GURL& url,
|
||||
namespace net {
|
||||
|
||||
@@ -593,6 +595,12 @@ URLRequest::URLRequest(const GURL& url,
|
||||
// Sanity check out environment.
|
||||
DCHECK(base::ThreadTaskRunnerHandle::IsSet());
|
||||
|
||||
@@ -226,15 +228,15 @@ diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc
|
||||
diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/url_request_context_builder.cc
|
||||
--- a/net/url_request/url_request_context_builder.cc
|
||||
+++ b/net/url_request/url_request_context_builder.cc
|
||||
@@ -47,6 +47,7 @@
|
||||
@@ -48,6 +48,7 @@
|
||||
#include "net/socket/network_binding_client_socket_factory.h"
|
||||
#include "net/ssl/ssl_config_service_defaults.h"
|
||||
#include "net/url_request/static_http_user_agent_settings.h"
|
||||
+#include "net/url_request/trk_protocol_handler.h"
|
||||
#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"
|
||||
@@ -626,6 +627,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
|
||||
#include "net/url_request/url_request_throttler_manager.h"
|
||||
@@ -571,6 +572,8 @@ std::unique_ptr<URLRequestContext> URLRequestContextBuilder::Build() {
|
||||
job_factory->SetProtocolHandler(scheme_handler.first,
|
||||
std::move(scheme_handler.second));
|
||||
}
|
||||
@@ -242,7 +244,7 @@ diff --git a/net/url_request/url_request_context_builder.cc b/net/url_request/ur
|
||||
+ std::make_unique<TrkProtocolHandler>());
|
||||
protocol_handlers_.clear();
|
||||
|
||||
storage->set_job_factory(std::move(job_factory));
|
||||
context->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
|
||||
@@ -268,7 +270,7 @@ diff --git a/url/url_constants.h b/url/url_constants.h
|
||||
diff --git a/url/url_util.cc b/url/url_util.cc
|
||||
--- a/url/url_util.cc
|
||||
+++ b/url/url_util.cc
|
||||
@@ -35,6 +35,7 @@ struct SchemeRegistry {
|
||||
@@ -46,6 +46,7 @@ struct SchemeRegistry {
|
||||
std::vector<SchemeWithType> standard_schemes = {
|
||||
{kHttpsScheme, SCHEME_WITH_HOST_PORT_AND_USER_INFORMATION},
|
||||
{kHttpScheme, SCHEME_WITH_HOST_PORT_AND_USER_INFORMATION},
|
||||
@@ -276,7 +278,7 @@ diff --git a/url/url_util.cc b/url/url_util.cc
|
||||
// Yes, file URLs can have a hostname, so file URLs should be handled as
|
||||
// "standard". File URLs never have a port as specified by the SchemeType
|
||||
// field. Unlike other SCHEME_WITH_HOST schemes, the 'host' in a file
|
||||
@@ -78,6 +79,7 @@ struct SchemeRegistry {
|
||||
@@ -89,6 +90,7 @@ struct SchemeRegistry {
|
||||
kAboutScheme,
|
||||
kJavaScriptScheme,
|
||||
kDataScheme,
|
||||
|
||||
@@ -2,6 +2,7 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sat, 9 Apr 2022 23:01:55 +0200
|
||||
Subject: Bookmarks select all menu entry
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../java/res/menu/bookmark_action_bar_menu.xml | 7 +++++++
|
||||
.../browser/bookmarks/BookmarkActionBar.java | 15 +++++++++++++++
|
||||
@@ -11,7 +12,7 @@ Subject: Bookmarks select all menu entry
|
||||
diff --git a/chrome/android/java/res/menu/bookmark_action_bar_menu.xml b/chrome/android/java/res/menu/bookmark_action_bar_menu.xml
|
||||
--- a/chrome/android/java/res/menu/bookmark_action_bar_menu.xml
|
||||
+++ b/chrome/android/java/res/menu/bookmark_action_bar_menu.xml
|
||||
@@ -21,6 +21,13 @@
|
||||
@@ -23,6 +23,13 @@ found in the LICENSE file.
|
||||
android:visible="false"
|
||||
app:showAsAction="ifRoom"
|
||||
app:iconTint="@color/default_icon_color_secondary_tint_list" />
|
||||
@@ -28,16 +29,16 @@ diff --git a/chrome/android/java/res/menu/bookmark_action_bar_menu.xml b/chrome/
|
||||
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
|
||||
@@ -29,6 +29,7 @@ import org.chromium.content_public.browser.LoadUrlParams;
|
||||
import org.chromium.url.GURL;
|
||||
@@ -27,6 +27,7 @@ import org.chromium.components.browser_ui.widget.selectable_list.SelectableListT
|
||||
import org.chromium.components.browser_ui.widget.selectable_list.SelectionDelegate;
|
||||
|
||||
import java.util.List;
|
||||
+import java.util.HashSet;
|
||||
|
||||
/**
|
||||
* Main action bar of bookmark UI. It is responsible for displaying title and buttons
|
||||
@@ -134,6 +135,17 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
new TabDelegate(true), mDelegate.getModel());
|
||||
@@ -146,6 +147,17 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
}
|
||||
selectionDelegate.clearSelection();
|
||||
return true;
|
||||
+ } else if (menuItem.getItemId() == R.id.select_all_menu_id) {
|
||||
@@ -54,7 +55,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
}
|
||||
|
||||
assert false : "Unhandled menu click.";
|
||||
@@ -143,6 +155,7 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
@@ -155,6 +167,7 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
void showLoadingUi() {
|
||||
setTitle(null);
|
||||
setNavigationButton(NAVIGATION_BUTTON_NONE);
|
||||
@@ -62,7 +63,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
getMenu().findItem(R.id.import_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.export_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.search_menu_id).setVisible(false);
|
||||
@@ -154,6 +167,7 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
@@ -166,6 +179,7 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
super.showNormalView();
|
||||
|
||||
if (mDelegate == null) {
|
||||
@@ -70,7 +71,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
|
||||
getMenu().findItem(R.id.import_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.export_menu_id).setVisible(false);
|
||||
getMenu().findItem(R.id.search_menu_id).setVisible(false);
|
||||
@@ -185,6 +199,7 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
@@ -197,6 +211,7 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
|
||||
@Override
|
||||
public void onFolderStateSet(BookmarkId folder) {
|
||||
mCurrentFolder = mDelegate.getModel().getBookmarkById(folder);
|
||||
|
||||
@@ -2,7 +2,11 @@ From: uazo <uazo@users.noreply.github.com>
|
||||
Date: Thu, 7 Oct 2021 14:27:12 +0000
|
||||
Subject: Bromite auto updater
|
||||
|
||||
Enable checking for new versions, with notifications and proxy support
|
||||
Enable checking for new versions, with notifications and proxy support.
|
||||
Restore InlineUpdateFlow feature.
|
||||
Some parts authored by csagan5.
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../java/templates/BuildConfig.template | 2 +
|
||||
build/config/android/rules.gni | 3 +
|
||||
@@ -18,15 +22,16 @@ Enable checking for new versions, with notifications and proxy support
|
||||
.../omaha/inline/InlineUpdateController.java | 51 ++++
|
||||
.../inline/InlineUpdateControllerFactory.java | 21 ++
|
||||
chrome/browser/endpoint_fetcher/BUILD.gn | 2 +
|
||||
.../endpoint_fetcher/endpoint_fetcher.cc | 158 +++++++++++-
|
||||
.../endpoint_fetcher/endpoint_fetcher.h | 22 +-
|
||||
.../endpoint_fetcher_android.cc | 52 +++-
|
||||
.../endpoint_fetcher/EndpointFetcher.java | 22 +-
|
||||
.../EndpointHeaderResponse.java | 31 +++
|
||||
.../flags/android/chrome_feature_list.cc | 4 +
|
||||
.../flags/android/chrome_feature_list.cc | 5 +
|
||||
.../flags/android/chrome_feature_list.h | 1 +
|
||||
.../browser/flags/ChromeFeatureList.java | 1 +
|
||||
.../strings/android_chrome_strings.grd | 23 +-
|
||||
22 files changed, 898 insertions(+), 55 deletions(-)
|
||||
.../endpoint_fetcher/endpoint_fetcher.cc | 102 +++++++-
|
||||
.../endpoint_fetcher/endpoint_fetcher.h | 22 +-
|
||||
23 files changed, 897 insertions(+), 53 deletions(-)
|
||||
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/BromiteInlineUpdateController.java
|
||||
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateController.java
|
||||
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/omaha/inline/InlineUpdateControllerFactory.java
|
||||
@@ -35,9 +40,9 @@ Enable checking for new versions, with notifications and proxy support
|
||||
diff --git a/build/android/java/templates/BuildConfig.template b/build/android/java/templates/BuildConfig.template
|
||||
--- a/build/android/java/templates/BuildConfig.template
|
||||
+++ b/build/android/java/templates/BuildConfig.template
|
||||
@@ -86,4 +86,6 @@ public class BuildConfig {
|
||||
@@ -92,4 +92,6 @@ public class BuildConfig {
|
||||
#else
|
||||
public static MAYBE_FINAL boolean ISOLATED_SPLITS_ENABLED MAYBE_FALSE;
|
||||
public static MAYBE_FINAL boolean IS_FOR_TEST MAYBE_FALSE;
|
||||
#endif
|
||||
+
|
||||
+ public static MAYBE_FINAL String BUILD_TARGET_CPU = _BUILD_TARGET_CPU;
|
||||
@@ -45,9 +50,9 @@ diff --git a/build/android/java/templates/BuildConfig.template b/build/android/j
|
||||
diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
|
||||
--- a/build/config/android/rules.gni
|
||||
+++ b/build/config/android/rules.gni
|
||||
@@ -2018,6 +2018,9 @@ if (enable_java_templates) {
|
||||
]
|
||||
}
|
||||
@@ -2285,6 +2285,9 @@ if (enable_java_templates && is_android) {
|
||||
if (defined(testonly) && testonly) {
|
||||
defines += [ "_IS_FOR_TEST" ]
|
||||
}
|
||||
+
|
||||
+ # add arch to org.chromium.build.BuildConfig
|
||||
@@ -58,7 +63,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
|
||||
@@ -807,6 +807,9 @@ chrome_java_sources = [
|
||||
@@ -805,6 +805,9 @@ chrome_java_sources = [
|
||||
"java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java",
|
||||
"java/src/org/chromium/chrome/browser/omaha/UpdateMenuItemHelper.java",
|
||||
"java/src/org/chromium/chrome/browser/omaha/UpdateStatusProvider.java",
|
||||
@@ -71,7 +76,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
|
||||
diff --git a/chrome/android/java/res/xml/about_chrome_preferences.xml b/chrome/android/java/res/xml/about_chrome_preferences.xml
|
||||
--- a/chrome/android/java/res/xml/about_chrome_preferences.xml
|
||||
+++ b/chrome/android/java/res/xml/about_chrome_preferences.xml
|
||||
@@ -7,6 +7,11 @@
|
||||
@@ -9,6 +9,11 @@ found in the LICENSE file.
|
||||
<Preference
|
||||
android:key="application_version"
|
||||
android:title="@string/application_version_title" />
|
||||
@@ -724,7 +729,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
|
||||
@@ -42,7 +42,8 @@ public class VersionNumberGetter {
|
||||
@@ -48,7 +48,8 @@ public class VersionNumberGetter {
|
||||
private static VersionNumberGetter sInstanceForTests;
|
||||
|
||||
/** If false, OmahaClient will never report that a newer version is available. */
|
||||
@@ -1067,7 +1072,7 @@ new file mode 100644
|
||||
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
|
||||
@@ -15,6 +15,7 @@ android_library("java") {
|
||||
@@ -17,6 +17,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",
|
||||
@@ -1075,223 +1080,25 @@ diff --git a/chrome/browser/endpoint_fetcher/BUILD.gn b/chrome/browser/endpoint_
|
||||
]
|
||||
annotation_processor_deps = [ "//base/android/jni_generator:jni_processor" ]
|
||||
}
|
||||
@@ -23,5 +24,6 @@ generate_jni("jni_headers") {
|
||||
@@ -25,5 +26,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",
|
||||
+ "java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointHeaderResponse.java",
|
||||
]
|
||||
}
|
||||
diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc
|
||||
--- a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc
|
||||
+++ b/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc
|
||||
@@ -26,10 +26,15 @@
|
||||
diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher_android.cc b/chrome/browser/endpoint_fetcher/endpoint_fetcher_android.cc
|
||||
--- a/chrome/browser/endpoint_fetcher/endpoint_fetcher_android.cc
|
||||
+++ b/chrome/browser/endpoint_fetcher/endpoint_fetcher_android.cc
|
||||
@@ -9,6 +9,7 @@
|
||||
#include "base/android/jni_string.h"
|
||||
#include "chrome/browser/endpoint_fetcher/jni_headers/EndpointFetcher_jni.h"
|
||||
#include "chrome/browser/endpoint_fetcher/jni_headers/EndpointResponse_jni.h"
|
||||
+#include "chrome/browser/endpoint_fetcher/jni_headers/EndpointHeaderResponse_jni.h"
|
||||
#include "chrome/browser/profiles/profile_android.h"
|
||||
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
|
||||
+#include "net/base/load_flags.h"
|
||||
+#include "net/http/http_status_code.h"
|
||||
+#include "services/network/public/cpp/resource_request.h"
|
||||
+
|
||||
namespace {
|
||||
const char kContentTypeKey[] = "Content-Type";
|
||||
const char kDeveloperKey[] = "X-Developer-Key";
|
||||
@@ -73,6 +78,7 @@ EndpointFetcher::EndpointFetcher(
|
||||
http_method_(http_method),
|
||||
content_type_(content_type),
|
||||
timeout_ms_(timeout_ms),
|
||||
+ intercept_redirect_(false),
|
||||
post_data_(post_data),
|
||||
headers_(headers),
|
||||
annotation_tag_(annotation_tag),
|
||||
@@ -90,6 +96,7 @@ EndpointFetcher::EndpointFetcher(
|
||||
http_method_("GET"),
|
||||
content_type_(std::string()),
|
||||
timeout_ms_(0),
|
||||
+ intercept_redirect_(false),
|
||||
post_data_(std::string()),
|
||||
annotation_tag_(annotation_tag),
|
||||
url_loader_factory_(profile->GetDefaultStoragePartition()
|
||||
@@ -114,6 +121,7 @@ EndpointFetcher::EndpointFetcher(
|
||||
http_method_(http_method),
|
||||
content_type_(content_type),
|
||||
timeout_ms_(timeout_ms),
|
||||
+ intercept_redirect_(false),
|
||||
post_data_(post_data),
|
||||
annotation_tag_(annotation_tag),
|
||||
url_loader_factory_(url_loader_factory),
|
||||
@@ -140,6 +148,7 @@ EndpointFetcher::EndpointFetcher(
|
||||
http_method_(http_method),
|
||||
content_type_(content_type),
|
||||
timeout_ms_(timeout_ms),
|
||||
+ intercept_redirect_(false),
|
||||
post_data_(post_data),
|
||||
headers_(headers),
|
||||
cors_exempt_headers_(cors_exempt_headers),
|
||||
@@ -151,10 +160,29 @@ EndpointFetcher::EndpointFetcher(
|
||||
EndpointFetcher::EndpointFetcher(
|
||||
const net::NetworkTrafficAnnotationTag& annotation_tag)
|
||||
: timeout_ms_(kDefaultTimeOutMs),
|
||||
+ intercept_redirect_(false),
|
||||
annotation_tag_(annotation_tag),
|
||||
identity_manager_(nullptr),
|
||||
sanitize_response_(true) {}
|
||||
|
||||
+// constructor used by Bromite
|
||||
+EndpointFetcher::EndpointFetcher(
|
||||
+ Profile* const profile,
|
||||
+ const GURL& url,
|
||||
+ const std::string& http_method,
|
||||
+ int64_t timeout_ms,
|
||||
+ const bool intercept_redirect,
|
||||
+ const net::NetworkTrafficAnnotationTag& annotation_tag)
|
||||
+ : url_(url),
|
||||
+ http_method_(http_method),
|
||||
+ timeout_ms_(timeout_ms),
|
||||
+ intercept_redirect_(intercept_redirect),
|
||||
+ annotation_tag_(annotation_tag),
|
||||
+ url_loader_factory_(profile->GetDefaultStoragePartition()
|
||||
+ ->GetURLLoaderFactoryForBrowserProcess()),
|
||||
+ identity_manager_(nullptr),
|
||||
+ sanitize_response_(false) {}
|
||||
+
|
||||
EndpointFetcher::~EndpointFetcher() = default;
|
||||
|
||||
void EndpointFetcher::Fetch(EndpointFetcherCallback endpoint_fetcher_callback) {
|
||||
@@ -207,6 +235,8 @@ void EndpointFetcher::PerformRequest(
|
||||
resource_request->method = http_method_;
|
||||
resource_request->url = url_;
|
||||
resource_request->credentials_mode = network::mojom::CredentialsMode::kOmit;
|
||||
+ resource_request->load_flags = net::LOAD_BYPASS_CACHE | net::LOAD_DISABLE_CACHE
|
||||
+ | net::LOAD_DO_NOT_SAVE_COOKIES;
|
||||
if (base::EqualsCaseInsensitiveASCII(http_method_, "POST")) {
|
||||
resource_request->headers.SetHeader(kContentTypeKey, content_type_);
|
||||
}
|
||||
@@ -239,31 +269,59 @@ void EndpointFetcher::PerformRequest(
|
||||
default:
|
||||
break;
|
||||
}
|
||||
+
|
||||
+ if (intercept_redirect_ == true) {
|
||||
+ // will need manual mode to capture the landing page URL
|
||||
+ resource_request->redirect_mode = network::mojom::RedirectMode::kManual; // default is kFollow
|
||||
+ }
|
||||
+
|
||||
// TODO(crbug.com/997018) Make simple_url_loader_ local variable passed to
|
||||
// callback
|
||||
simple_url_loader_ = network::SimpleURLLoader::Create(
|
||||
std::move(resource_request), annotation_tag_);
|
||||
+ simple_url_loader_->SetTimeoutDuration(base::Milliseconds(timeout_ms_));
|
||||
+ simple_url_loader_->SetAllowHttpErrorResults(true);
|
||||
+
|
||||
+ if (!response_) {
|
||||
+ //RFC: what is this for?
|
||||
+ response_ = std::make_unique<EndpointResponse>();
|
||||
+ }
|
||||
+ if (intercept_redirect_ == true) {
|
||||
+ // use a callback to capture landing page URL
|
||||
+ simple_url_loader_->SetOnRedirectCallback(base::BindRepeating(
|
||||
+ &EndpointFetcher::OnSimpleLoaderRedirect, base::Unretained(this)));
|
||||
+ }
|
||||
|
||||
if (base::EqualsCaseInsensitiveASCII(http_method_, "POST")) {
|
||||
simple_url_loader_->AttachStringForUpload(post_data_, content_type_);
|
||||
}
|
||||
simple_url_loader_->SetRetryOptions(kNumRetries,
|
||||
network::SimpleURLLoader::RETRY_ON_5XX);
|
||||
- simple_url_loader_->SetTimeoutDuration(base::Milliseconds(timeout_ms_));
|
||||
- simple_url_loader_->SetAllowHttpErrorResults(true);
|
||||
- network::SimpleURLLoader::BodyAsStringCallback body_as_string_callback =
|
||||
- base::BindOnce(&EndpointFetcher::OnResponseFetched,
|
||||
+
|
||||
+ LOG(INFO) << "performing " << http_method_ << " request to " << url_;
|
||||
+ if (base::EqualsCaseInsensitiveASCII(http_method_, "HEAD")) {
|
||||
+ endpoint_fetcher_callback_ = std::move(endpoint_fetcher_callback);
|
||||
+
|
||||
+ simple_url_loader_->DownloadHeadersOnly(
|
||||
+ url_loader_factory_.get(),
|
||||
+ base::BindOnce(&EndpointFetcher::OnURLLoadComplete,
|
||||
+ base::Unretained(this)));
|
||||
+ } else {
|
||||
+ network::SimpleURLLoader::BodyAsStringCallback body_as_string_callback =
|
||||
+ base::BindOnce(&EndpointFetcher::OnResponseFetched,
|
||||
weak_ptr_factory_.GetWeakPtr(),
|
||||
std::move(endpoint_fetcher_callback));
|
||||
- simple_url_loader_->DownloadToString(
|
||||
- url_loader_factory_.get(), std::move(body_as_string_callback),
|
||||
- network::SimpleURLLoader::kMaxBoundedStringDownloadSize);
|
||||
+ simple_url_loader_->DownloadToString(
|
||||
+ url_loader_factory_.get(), std::move(body_as_string_callback),
|
||||
+ network::SimpleURLLoader::kMaxBoundedStringDownloadSize);
|
||||
+ }
|
||||
}
|
||||
|
||||
void EndpointFetcher::OnResponseFetched(
|
||||
EndpointFetcherCallback endpoint_fetcher_callback,
|
||||
std::unique_ptr<std::string> response_body) {
|
||||
if (response_body) {
|
||||
+ simple_url_loader_.reset();
|
||||
if (sanitize_response_) {
|
||||
data_decoder::JsonSanitizer::Sanitize(
|
||||
std::move(*response_body),
|
||||
@@ -281,9 +339,9 @@ void EndpointFetcher::OnResponseFetched(
|
||||
std::string net_error = net::ErrorToString(simple_url_loader_->NetError());
|
||||
VLOG(1) << __func__ << " with response error: " << net_error;
|
||||
response->response = "There was a response error";
|
||||
+ simple_url_loader_.reset();
|
||||
std::move(endpoint_fetcher_callback).Run(std::move(response));
|
||||
}
|
||||
- simple_url_loader_.reset();
|
||||
}
|
||||
|
||||
void EndpointFetcher::OnSanitizationResult(
|
||||
@@ -304,6 +362,40 @@ std::string EndpointFetcher::GetUrlForTesting() {
|
||||
return url_.spec();
|
||||
}
|
||||
|
||||
+void EndpointFetcher::OnSimpleLoaderRedirect(
|
||||
+ const net::RedirectInfo& redirect_info,
|
||||
+ const network::mojom::URLResponseHead& response_head,
|
||||
+ std::vector<std::string>* removed_headers) {
|
||||
+ url_ = redirect_info.new_url;
|
||||
+ if (response_->redirect_url.empty()) {
|
||||
+ response_->redirect_url = url_.spec();
|
||||
+ response_->response = std::to_string(redirect_info.status_code);
|
||||
+ } else {
|
||||
+ LOG(INFO) << "BromiteUpdater: redirect URL is not empty, status code is " << redirect_info.status_code;
|
||||
+ }
|
||||
+
|
||||
+ std::move(endpoint_fetcher_callback_).Run(std::move(response_));
|
||||
+}
|
||||
+
|
||||
+void EndpointFetcher::OnURLLoadComplete(
|
||||
+ scoped_refptr<net::HttpResponseHeaders> headers) {
|
||||
+ if (!endpoint_fetcher_callback_)
|
||||
+ return;
|
||||
+
|
||||
+ if (headers) {
|
||||
+ if (response_->redirect_url.empty()) {
|
||||
+ std::string location;
|
||||
+ if (simple_url_loader_->ResponseInfo()->headers->IsRedirect(&location)) {
|
||||
+ response_->redirect_url = location;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ std::string net_error = net::ErrorToString(simple_url_loader_->NetError());
|
||||
+ response_->response = net_error;
|
||||
+ std::move(endpoint_fetcher_callback_).Run(std::move(response_));
|
||||
+}
|
||||
+
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
namespace {
|
||||
static void OnEndpointFetcherComplete(
|
||||
@@ -320,6 +412,25 @@ static void OnEndpointFetcherComplete(
|
||||
#include "chrome/browser/signin/identity_manager_factory.h"
|
||||
#include "chrome/common/channel_info.h"
|
||||
@@ -30,6 +31,24 @@ static void OnEndpointFetcherComplete(
|
||||
base::android::AttachCurrentThread(),
|
||||
std::move(endpoint_response->response))));
|
||||
}
|
||||
@@ -1313,11 +1120,10 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse
|
||||
+ base::android::AttachCurrentThread(),
|
||||
+ std::move(endpoint_response->redirect_url))));
|
||||
+}
|
||||
+
|
||||
} // namespace
|
||||
|
||||
// TODO(crbug.com/1077537) Create a KeyProvider so
|
||||
@@ -392,13 +503,15 @@ static void JNI_EndpointFetcher_NativeFetchWithNoAuth(
|
||||
@@ -109,15 +128,17 @@ static void JNI_EndpointFetcher_NativeFetchWithNoAuth(
|
||||
JNIEnv* env,
|
||||
const base::android::JavaParamRef<jobject>& jprofile,
|
||||
const base::android::JavaParamRef<jstring>& jurl,
|
||||
@@ -1325,7 +1131,9 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse
|
||||
+ jlong jtimeout, jboolean intercept_redirect,
|
||||
const base::android::JavaParamRef<jobject>& jcallback) {
|
||||
auto endpoint_fetcher = std::make_unique<EndpointFetcher>(
|
||||
ProfileAndroid::FromProfileAndroid(jprofile),
|
||||
ProfileAndroid::FromProfileAndroid(jprofile)
|
||||
->GetDefaultStoragePartition()
|
||||
->GetURLLoaderFactoryForBrowserProcess(),
|
||||
GURL(base::android::ConvertJavaStringToUTF8(env, jurl)),
|
||||
- net::NetworkTrafficAnnotationTag::FromJavaAnnotation(
|
||||
- jannotation_hash_code));
|
||||
@@ -1336,10 +1144,11 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse
|
||||
auto* const endpoint_fetcher_ptr = endpoint_fetcher.get();
|
||||
endpoint_fetcher_ptr->PerformRequest(
|
||||
base::BindOnce(&OnEndpointFetcherComplete,
|
||||
@@ -409,4 +522,27 @@ static void JNI_EndpointFetcher_NativeFetchWithNoAuth(
|
||||
@@ -127,3 +148,28 @@ static void JNI_EndpointFetcher_NativeFetchWithNoAuth(
|
||||
std::move(endpoint_fetcher)),
|
||||
nullptr);
|
||||
}
|
||||
|
||||
+
|
||||
+static void JNI_EndpointFetcher_NativeHeadWithNoAuth(
|
||||
+ JNIEnv* env,
|
||||
+ const base::android::JavaParamRef<jobject>& jprofile,
|
||||
@@ -1347,7 +1156,9 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse
|
||||
+ jlong jtimeout, jboolean intercept_redirect,
|
||||
+ const base::android::JavaParamRef<jobject>& jcallback) {
|
||||
+ auto endpoint_fetcher = std::make_unique<EndpointFetcher>(
|
||||
+ ProfileAndroid::FromProfileAndroid(jprofile),
|
||||
+ ProfileAndroid::FromProfileAndroid(jprofile)
|
||||
+ ->GetDefaultStoragePartition()
|
||||
+ ->GetURLLoaderFactoryForBrowserProcess(),
|
||||
+ GURL(base::android::ConvertJavaStringToUTF8(env, jurl)),
|
||||
+ "HEAD",
|
||||
+ jtimeout,
|
||||
@@ -1362,78 +1173,6 @@ diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browse
|
||||
+ std::move(endpoint_fetcher)),
|
||||
+ nullptr);
|
||||
+}
|
||||
+
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.h b/chrome/browser/endpoint_fetcher/endpoint_fetcher.h
|
||||
--- a/chrome/browser/endpoint_fetcher/endpoint_fetcher.h
|
||||
+++ b/chrome/browser/endpoint_fetcher/endpoint_fetcher.h
|
||||
@@ -15,6 +15,8 @@
|
||||
#include "components/signin/public/identity_manager/scope_set.h"
|
||||
#include "net/traffic_annotation/network_traffic_annotation.h"
|
||||
#include "services/data_decoder/public/cpp/json_sanitizer.h"
|
||||
+#include "services/network/public/cpp/resource_request.h"
|
||||
+#include "services/network/public/mojom/url_response_head.mojom.h"
|
||||
|
||||
namespace network {
|
||||
struct ResourceRequest;
|
||||
@@ -32,6 +34,8 @@ class Profile;
|
||||
|
||||
struct EndpointResponse {
|
||||
std::string response;
|
||||
+ long last_modified;
|
||||
+ std::string redirect_url;
|
||||
// TODO(crbug.com/993393) Add more detailed error messaging
|
||||
};
|
||||
|
||||
@@ -78,6 +82,14 @@ class EndpointFetcher {
|
||||
const GURL& url,
|
||||
const net::NetworkTrafficAnnotationTag& annotation_tag);
|
||||
|
||||
+ // Constructor if no authentication is needed, with timeout
|
||||
+ EndpointFetcher(Profile* const profile,
|
||||
+ const GURL& url,
|
||||
+ const std::string& http_method,
|
||||
+ int64_t timeout_ms,
|
||||
+ const bool intercept_redirect,
|
||||
+ const net::NetworkTrafficAnnotationTag& annotation_tag);
|
||||
+
|
||||
// Used for tests. Can be used if caller constructs their own
|
||||
// url_loader_factory and identity_manager.
|
||||
EndpointFetcher(
|
||||
@@ -131,6 +143,10 @@ class EndpointFetcher {
|
||||
std::unique_ptr<std::string> response_body);
|
||||
void OnSanitizationResult(EndpointFetcherCallback endpoint_fetcher_callback,
|
||||
data_decoder::JsonSanitizer::Result result);
|
||||
+ void OnURLLoadComplete(scoped_refptr<net::HttpResponseHeaders> headers);
|
||||
+ void OnSimpleLoaderRedirect(const net::RedirectInfo& redirect_info,
|
||||
+ const network::mojom::URLResponseHead& response_head,
|
||||
+ std::vector<std::string>* removed_headers);
|
||||
|
||||
enum AuthType { CHROME_API_KEY, OAUTH, NO_AUTH };
|
||||
AuthType auth_type_;
|
||||
@@ -138,10 +154,11 @@ class EndpointFetcher {
|
||||
// Members set in constructor to be passed to network::ResourceRequest or
|
||||
// network::SimpleURLLoader.
|
||||
const std::string oauth_consumer_name_;
|
||||
- const GURL url_;
|
||||
+ GURL url_;
|
||||
const std::string http_method_;
|
||||
const std::string content_type_;
|
||||
int64_t timeout_ms_;
|
||||
+ const bool intercept_redirect_;
|
||||
const std::string post_data_;
|
||||
const std::vector<std::string> headers_;
|
||||
const std::vector<std::string> cors_exempt_headers_;
|
||||
@@ -158,6 +175,9 @@ class EndpointFetcher {
|
||||
access_token_fetcher_;
|
||||
std::unique_ptr<network::SimpleURLLoader> simple_url_loader_;
|
||||
|
||||
+ EndpointFetcherCallback endpoint_fetcher_callback_;
|
||||
+ std::unique_ptr<EndpointResponse> response_;
|
||||
+
|
||||
base::WeakPtrFactory<EndpointFetcher> weak_ptr_factory_{this};
|
||||
};
|
||||
|
||||
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
|
||||
@@ -1512,42 +1251,43 @@ new file mode 100644
|
||||
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
|
||||
@@ -249,6 +249,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
||||
@@ -255,6 +255,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
|
||||
&kNewWindowAppMenu,
|
||||
&kNotificationPermissionVariant,
|
||||
&kPageAnnotationsService,
|
||||
+ &kInlineUpdateFlow,
|
||||
&kBookmarksImprovedSaveFlow,
|
||||
&kBookmarksRefresh,
|
||||
&kProbabilisticCryptidRenderer,
|
||||
@@ -660,6 +661,9 @@ const base::Feature kIncognitoReauthenticationForAndroid{
|
||||
const base::Feature kIncognitoScreenshot{"IncognitoScreenshot",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
&kBackGestureRefactorAndroid,
|
||||
@@ -698,6 +699,10 @@ BASE_FEATURE(kContextMenuTranslateWithGoogleLens,
|
||||
"ContextMenuTranslateWithGoogleLens",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
|
||||
+const base::Feature kInlineUpdateFlow{"InlineUpdateFlow",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kInlineUpdateFlow,
|
||||
+ "InlineUpdateFlow",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+
|
||||
const base::Feature kInstantStart{"InstantStart",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
|
||||
BASE_FEATURE(kLensCameraAssistedSearch,
|
||||
"LensCameraAssistedSearch",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h
|
||||
--- a/chrome/browser/flags/android/chrome_feature_list.h
|
||||
+++ b/chrome/browser/flags/android/chrome_feature_list.h
|
||||
@@ -101,6 +101,7 @@ extern const base::Feature kImmersiveUiMode;
|
||||
extern const base::Feature kIncognitoReauthenticationForAndroid;
|
||||
extern const base::Feature kIncognitoScreenshot;
|
||||
extern const base::Feature kImprovedA2HS;
|
||||
+extern const base::Feature kInlineUpdateFlow;
|
||||
extern const base::Feature kImproveReaderModePrompt;
|
||||
extern const base::Feature kInstanceSwitcher;
|
||||
extern const base::Feature kInstantStart;
|
||||
@@ -92,6 +92,7 @@ BASE_DECLARE_FEATURE(kGridTabSwitcherForTablets);
|
||||
BASE_DECLARE_FEATURE(kHandleMediaIntents);
|
||||
BASE_DECLARE_FEATURE(kImmersiveUiMode);
|
||||
BASE_DECLARE_FEATURE(kIncognitoReauthenticationForAndroid);
|
||||
+BASE_DECLARE_FEATURE(kInlineUpdateFlow);
|
||||
BASE_DECLARE_FEATURE(kIncognitoScreenshot);
|
||||
BASE_DECLARE_FEATURE(kInfobarScrollOptimization);
|
||||
BASE_DECLARE_FEATURE(kImprovedA2HS);
|
||||
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
|
||||
@@ -363,6 +363,7 @@ public abstract class ChromeFeatureList {
|
||||
public static final String INCOGNITO_REAUTHENTICATION_FOR_ANDROID =
|
||||
@@ -349,6 +349,7 @@ public abstract class ChromeFeatureList {
|
||||
"IncognitoReauthenticationForAndroid";
|
||||
public static final String INCOGNITO_SCREENSHOT = "IncognitoScreenshot";
|
||||
public static final String INFOBAR_SCROLL_OPTIMIZATION = "InfobarScrollOptimization";
|
||||
+ public static final String INLINE_UPDATE_FLOW = "InlineUpdateFlow";
|
||||
public static final String INSTALLABLE_AMBIENT_BADGE_INFOBAR = "InstallableAmbientBadgeInfoBar";
|
||||
public static final String INSTALLABLE_AMBIENT_BADGE_MESSAGE = "InstallableAmbientBadgeMessage";
|
||||
@@ -1555,7 +1295,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
|
||||
@@ -1840,6 +1840,12 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
@@ -1837,6 +1837,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>
|
||||
@@ -1568,7 +1308,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]">
|
||||
@@ -3333,7 +3339,10 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
@@ -3453,7 +3459,10 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
|
||||
<!-- Main menu items -->
|
||||
<message name="IDS_MENU_UPDATE" desc="Menu item for updating chrome. [CHAR_LIMIT=24]">
|
||||
@@ -1580,7 +1320,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
|
||||
</message>
|
||||
<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
|
||||
@@ -3344,6 +3353,18 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
@@ -3464,6 +3473,18 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p
|
||||
<message name="IDS_MENU_UPDATE_UNSUPPORTED_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that the Android version on the device is unsupported. [CHAR_LIMIT=30]">
|
||||
Android version is unsupported
|
||||
</message>
|
||||
@@ -1599,5 +1339,257 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
|
||||
<message name="IDS_MENU_NEW_WINDOW" desc="Menu item for opening a new window. [CHAR_LIMIT=27]">
|
||||
New window
|
||||
</message>
|
||||
diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoint_fetcher/endpoint_fetcher.cc
|
||||
--- a/components/endpoint_fetcher/endpoint_fetcher.cc
|
||||
+++ b/components/endpoint_fetcher/endpoint_fetcher.cc
|
||||
@@ -17,6 +17,11 @@
|
||||
#include "services/network/public/cpp/simple_url_loader.h"
|
||||
#include "services/network/public/mojom/url_response_head.mojom.h"
|
||||
|
||||
+// used for the Bromite customization
|
||||
+#include "net/base/load_flags.h"
|
||||
+#include "net/http/http_status_code.h"
|
||||
+#include "services/network/public/cpp/resource_request.h"
|
||||
+
|
||||
namespace {
|
||||
const char kContentTypeKey[] = "Content-Type";
|
||||
const char kDeveloperKey[] = "X-Developer-Key";
|
||||
@@ -61,6 +66,7 @@ EndpointFetcher::EndpointFetcher(
|
||||
http_method_(http_method),
|
||||
content_type_(content_type),
|
||||
timeout_ms_(timeout_ms),
|
||||
+ intercept_redirect_(false),
|
||||
post_data_(post_data),
|
||||
headers_(headers),
|
||||
annotation_tag_(annotation_tag),
|
||||
@@ -78,6 +84,7 @@ EndpointFetcher::EndpointFetcher(
|
||||
http_method_("GET"),
|
||||
content_type_(std::string()),
|
||||
timeout_ms_(0),
|
||||
+ intercept_redirect_(false),
|
||||
post_data_(std::string()),
|
||||
annotation_tag_(annotation_tag),
|
||||
url_loader_factory_(url_loader_factory),
|
||||
@@ -101,6 +108,7 @@ EndpointFetcher::EndpointFetcher(
|
||||
http_method_(http_method),
|
||||
content_type_(content_type),
|
||||
timeout_ms_(timeout_ms),
|
||||
+ intercept_redirect_(false),
|
||||
post_data_(post_data),
|
||||
annotation_tag_(annotation_tag),
|
||||
url_loader_factory_(url_loader_factory),
|
||||
@@ -127,6 +135,7 @@ EndpointFetcher::EndpointFetcher(
|
||||
http_method_(http_method),
|
||||
content_type_(content_type),
|
||||
timeout_ms_(timeout_ms),
|
||||
+ intercept_redirect_(false),
|
||||
post_data_(post_data),
|
||||
headers_(headers),
|
||||
cors_exempt_headers_(cors_exempt_headers),
|
||||
@@ -138,10 +147,28 @@ EndpointFetcher::EndpointFetcher(
|
||||
EndpointFetcher::EndpointFetcher(
|
||||
const net::NetworkTrafficAnnotationTag& annotation_tag)
|
||||
: timeout_ms_(kDefaultTimeOutMs),
|
||||
+ intercept_redirect_(false),
|
||||
annotation_tag_(annotation_tag),
|
||||
identity_manager_(nullptr),
|
||||
sanitize_response_(true) {}
|
||||
|
||||
+// constructor used by Bromite
|
||||
+EndpointFetcher::EndpointFetcher(
|
||||
+ const scoped_refptr<network::SharedURLLoaderFactory>& url_loader_factory,
|
||||
+ const GURL& url,
|
||||
+ const std::string& http_method,
|
||||
+ int64_t timeout_ms,
|
||||
+ const bool intercept_redirect,
|
||||
+ const net::NetworkTrafficAnnotationTag& annotation_tag)
|
||||
+ : url_(url),
|
||||
+ http_method_(http_method),
|
||||
+ timeout_ms_(timeout_ms),
|
||||
+ intercept_redirect_(intercept_redirect),
|
||||
+ annotation_tag_(annotation_tag),
|
||||
+ url_loader_factory_(url_loader_factory),
|
||||
+ identity_manager_(nullptr),
|
||||
+ sanitize_response_(false) {}
|
||||
+
|
||||
EndpointFetcher::~EndpointFetcher() = default;
|
||||
|
||||
void EndpointFetcher::Fetch(EndpointFetcherCallback endpoint_fetcher_callback) {
|
||||
@@ -198,6 +225,8 @@ void EndpointFetcher::PerformRequest(
|
||||
resource_request->method = http_method_;
|
||||
resource_request->url = url_;
|
||||
resource_request->credentials_mode = network::mojom::CredentialsMode::kOmit;
|
||||
+ resource_request->load_flags = net::LOAD_BYPASS_CACHE | net::LOAD_DISABLE_CACHE
|
||||
+ | net::LOAD_DO_NOT_SAVE_COOKIES;
|
||||
if (base::EqualsCaseInsensitiveASCII(http_method_, "POST")) {
|
||||
resource_request->headers.SetHeader(kContentTypeKey, content_type_);
|
||||
}
|
||||
@@ -228,25 +257,52 @@ void EndpointFetcher::PerformRequest(
|
||||
default:
|
||||
break;
|
||||
}
|
||||
+
|
||||
+ if (intercept_redirect_ == true) {
|
||||
+ // will need manual mode to capture the landing page URL
|
||||
+ resource_request->redirect_mode = network::mojom::RedirectMode::kManual; // default is kFollow
|
||||
+ }
|
||||
+
|
||||
// TODO(crbug.com/997018) Make simple_url_loader_ local variable passed to
|
||||
// callback
|
||||
simple_url_loader_ = network::SimpleURLLoader::Create(
|
||||
std::move(resource_request), annotation_tag_);
|
||||
+ simple_url_loader_->SetTimeoutDuration(base::Milliseconds(timeout_ms_));
|
||||
+ simple_url_loader_->SetAllowHttpErrorResults(true);
|
||||
+
|
||||
+ if (!response_) {
|
||||
+ //RFC: what is this for?
|
||||
+ response_ = std::make_unique<EndpointResponse>();
|
||||
+ }
|
||||
+ if (intercept_redirect_ == true) {
|
||||
+ // use a callback to capture landing page URL
|
||||
+ simple_url_loader_->SetOnRedirectCallback(base::BindRepeating(
|
||||
+ &EndpointFetcher::OnSimpleLoaderRedirect, base::Unretained(this)));
|
||||
+ }
|
||||
|
||||
if (base::EqualsCaseInsensitiveASCII(http_method_, "POST")) {
|
||||
simple_url_loader_->AttachStringForUpload(post_data_, content_type_);
|
||||
}
|
||||
simple_url_loader_->SetRetryOptions(kNumRetries,
|
||||
network::SimpleURLLoader::RETRY_ON_5XX);
|
||||
- simple_url_loader_->SetTimeoutDuration(base::Milliseconds(timeout_ms_));
|
||||
- simple_url_loader_->SetAllowHttpErrorResults(true);
|
||||
- network::SimpleURLLoader::BodyAsStringCallback body_as_string_callback =
|
||||
+
|
||||
+ LOG(INFO) << "performing " << http_method_ << " request to " << url_;
|
||||
+ if (base::EqualsCaseInsensitiveASCII(http_method_, "HEAD")) {
|
||||
+ endpoint_fetcher_callback_ = std::move(endpoint_fetcher_callback);
|
||||
+
|
||||
+ simple_url_loader_->DownloadHeadersOnly(
|
||||
+ url_loader_factory_.get(),
|
||||
+ base::BindOnce(&EndpointFetcher::OnURLLoadComplete,
|
||||
+ base::Unretained(this)));
|
||||
+ } else {
|
||||
+ network::SimpleURLLoader::BodyAsStringCallback body_as_string_callback =
|
||||
base::BindOnce(&EndpointFetcher::OnResponseFetched,
|
||||
weak_ptr_factory_.GetWeakPtr(),
|
||||
std::move(endpoint_fetcher_callback));
|
||||
- simple_url_loader_->DownloadToString(
|
||||
- url_loader_factory_.get(), std::move(body_as_string_callback),
|
||||
- network::SimpleURLLoader::kMaxBoundedStringDownloadSize);
|
||||
+ simple_url_loader_->DownloadToString(
|
||||
+ url_loader_factory_.get(), std::move(body_as_string_callback),
|
||||
+ network::SimpleURLLoader::kMaxBoundedStringDownloadSize);
|
||||
+ }
|
||||
}
|
||||
|
||||
void EndpointFetcher::OnResponseFetched(
|
||||
@@ -315,3 +371,37 @@ void EndpointFetcher::OnSanitizationResult(
|
||||
std::string EndpointFetcher::GetUrlForTesting() {
|
||||
return url_.spec();
|
||||
}
|
||||
+
|
||||
+void EndpointFetcher::OnSimpleLoaderRedirect(
|
||||
+ const net::RedirectInfo& redirect_info,
|
||||
+ const network::mojom::URLResponseHead& response_head,
|
||||
+ std::vector<std::string>* removed_headers) {
|
||||
+ url_ = redirect_info.new_url;
|
||||
+ if (response_->redirect_url.empty()) {
|
||||
+ response_->redirect_url = url_.spec();
|
||||
+ response_->response = std::to_string(redirect_info.status_code);
|
||||
+ } else {
|
||||
+ LOG(INFO) << "BromiteUpdater: redirect URL is not empty, status code is " << redirect_info.status_code;
|
||||
+ }
|
||||
+
|
||||
+ std::move(endpoint_fetcher_callback_).Run(std::move(response_));
|
||||
+}
|
||||
+
|
||||
+void EndpointFetcher::OnURLLoadComplete(
|
||||
+ scoped_refptr<net::HttpResponseHeaders> headers) {
|
||||
+ if (!endpoint_fetcher_callback_)
|
||||
+ return;
|
||||
+
|
||||
+ if (headers) {
|
||||
+ if (response_->redirect_url.empty()) {
|
||||
+ std::string location;
|
||||
+ if (simple_url_loader_->ResponseInfo()->headers->IsRedirect(&location)) {
|
||||
+ response_->redirect_url = location;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ std::string net_error = net::ErrorToString(simple_url_loader_->NetError());
|
||||
+ response_->response = net_error;
|
||||
+ std::move(endpoint_fetcher_callback_).Run(std::move(response_));
|
||||
+}
|
||||
diff --git a/components/endpoint_fetcher/endpoint_fetcher.h b/components/endpoint_fetcher/endpoint_fetcher.h
|
||||
--- a/components/endpoint_fetcher/endpoint_fetcher.h
|
||||
+++ b/components/endpoint_fetcher/endpoint_fetcher.h
|
||||
@@ -16,6 +16,8 @@
|
||||
#include "net/traffic_annotation/network_traffic_annotation.h"
|
||||
#include "services/data_decoder/public/cpp/json_sanitizer.h"
|
||||
#include "third_party/abseil-cpp/absl/types/optional.h"
|
||||
+#include "services/network/public/cpp/resource_request.h"
|
||||
+#include "services/network/public/mojom/url_response_head.mojom.h"
|
||||
|
||||
namespace network {
|
||||
struct ResourceRequest;
|
||||
@@ -38,6 +40,8 @@ enum class FetchErrorType {
|
||||
|
||||
struct EndpointResponse {
|
||||
std::string response;
|
||||
+ long last_modified;
|
||||
+ std::string redirect_url;
|
||||
int http_status_code{-1};
|
||||
absl::optional<FetchErrorType> error_type;
|
||||
};
|
||||
@@ -90,6 +94,14 @@ class EndpointFetcher {
|
||||
const GURL& url,
|
||||
const net::NetworkTrafficAnnotationTag& annotation_tag);
|
||||
|
||||
+ // Constructor if no authentication is needed, with timeout
|
||||
+ EndpointFetcher(const scoped_refptr<network::SharedURLLoaderFactory>& url_loader_factory,
|
||||
+ const GURL& url,
|
||||
+ const std::string& http_method,
|
||||
+ int64_t timeout_ms,
|
||||
+ const bool intercept_redirect,
|
||||
+ const net::NetworkTrafficAnnotationTag& annotation_tag);
|
||||
+
|
||||
// Used for tests. Can be used if caller constructs their own
|
||||
// url_loader_factory and identity_manager.
|
||||
EndpointFetcher(
|
||||
@@ -144,6 +156,10 @@ class EndpointFetcher {
|
||||
void OnSanitizationResult(std::unique_ptr<EndpointResponse> response,
|
||||
EndpointFetcherCallback endpoint_fetcher_callback,
|
||||
data_decoder::JsonSanitizer::Result result);
|
||||
+ void OnURLLoadComplete(scoped_refptr<net::HttpResponseHeaders> headers);
|
||||
+ void OnSimpleLoaderRedirect(const net::RedirectInfo& redirect_info,
|
||||
+ const network::mojom::URLResponseHead& response_head,
|
||||
+ std::vector<std::string>* removed_headers);
|
||||
|
||||
enum AuthType { CHROME_API_KEY, OAUTH, NO_AUTH };
|
||||
AuthType auth_type_;
|
||||
@@ -151,10 +167,11 @@ class EndpointFetcher {
|
||||
// Members set in constructor to be passed to network::ResourceRequest or
|
||||
// network::SimpleURLLoader.
|
||||
const std::string oauth_consumer_name_;
|
||||
- const GURL url_;
|
||||
+ GURL url_;
|
||||
const std::string http_method_;
|
||||
const std::string content_type_;
|
||||
int64_t timeout_ms_;
|
||||
+ const bool intercept_redirect_;
|
||||
const std::string post_data_;
|
||||
const std::vector<std::string> headers_;
|
||||
const std::vector<std::string> cors_exempt_headers_;
|
||||
@@ -172,6 +189,9 @@ class EndpointFetcher {
|
||||
access_token_fetcher_;
|
||||
std::unique_ptr<network::SimpleURLLoader> simple_url_loader_;
|
||||
|
||||
+ EndpointFetcherCallback endpoint_fetcher_callback_;
|
||||
+ std::unique_ptr<EndpointResponse> response_;
|
||||
+
|
||||
base::WeakPtrFactory<EndpointFetcher> weak_ptr_factory_{this};
|
||||
};
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,6 +2,7 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sat, 8 Jan 2022 19:42:34 +0100
|
||||
Subject: Bromite package name
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/android/BUILD.gn | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
@@ -9,14 +10,14 @@ Subject: Bromite package name
|
||||
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
|
||||
--- a/chrome/android/BUILD.gn
|
||||
+++ b/chrome/android/BUILD.gn
|
||||
@@ -44,7 +44,7 @@ if (android_64bit_target_cpu && skip_secondary_abi_for_cq) {
|
||||
assert(current_toolchain != android_secondary_abi_toolchain)
|
||||
}
|
||||
@@ -47,7 +47,7 @@ chrome_jni_registration_header =
|
||||
chrome_jni_for_test_registration_header = "$root_build_dir/gen/chrome/browser/android/chrome_jni_for_test_registration.h"
|
||||
|
||||
-_default_package = "org.chromium.chrome"
|
||||
+_default_package = "org.bromite.bromite"
|
||||
if (android_channel != "default" && android_channel != "stable") {
|
||||
# android-binary-size trybot may checks if an internal Chrome variant's
|
||||
# AndroidManifest is as expected by ensuring the differences between its
|
||||
if (current_toolchain == default_toolchain) {
|
||||
- _default_package = "org.chromium.chrome"
|
||||
+ _default_package = "org.bromite.bromite"
|
||||
if (use_stable_package_name_for_trichrome) {
|
||||
_default_package += ".stable"
|
||||
} else if (android_channel != "default" && android_channel != "stable") {
|
||||
--
|
||||
2.25.1
|
||||
|
||||
+106
-52
@@ -1,6 +1,6 @@
|
||||
From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sat, 14 Sep 2019 10:20:08 +0200
|
||||
Subject: Bromite AdBlockUpdaterService
|
||||
Subject: Bromite subresource adblocker
|
||||
|
||||
Add option to configure the ad blocker filters URL
|
||||
Disable look-alike, metrics, ablation and navigation throttles
|
||||
@@ -8,7 +8,11 @@ Do not use experiments to enable/disable presets
|
||||
Always enable ad filtering
|
||||
Download filters by checking Last-Modified header first
|
||||
Fix RestoreForeignSessionTab by recreating the tab (issue #681)
|
||||
Enable AutomaticLazyFrameLoadingToAds and AutomaticLazyFrameLoadingToEmbeds features
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/android/BUILD.gn | 1 +
|
||||
chrome/android/chrome_java_resources.gni | 2 +
|
||||
chrome/android/chrome_java_sources.gni | 2 +
|
||||
.../java/res/layout/adblock_editor.xml | 67 +++++
|
||||
@@ -20,7 +24,7 @@ Fix RestoreForeignSessionTab by recreating the tab (issue #681)
|
||||
.../browser/settings/AdBlockPreferences.java | 61 ++++
|
||||
.../chrome/browser/tabmodel/TabModelImpl.java | 2 +-
|
||||
chrome/app/generated_resources.grd | 10 +
|
||||
chrome/browser/after_startup_task_utils.cc | 5 +
|
||||
chrome/browser/after_startup_task_utils.cc | 4 +
|
||||
chrome/browser/browser_process.h | 6 +
|
||||
chrome/browser/browser_process_impl.cc | 20 ++
|
||||
chrome/browser/browser_process_impl.h | 2 +
|
||||
@@ -43,10 +47,11 @@ Fix RestoreForeignSessionTab by recreating the tab (issue #681)
|
||||
.../content/browser/ruleset_service.h | 7 +-
|
||||
.../content/browser/ruleset_version.h | 4 +
|
||||
.../browser/verified_ruleset_dealer.cc | 4 +
|
||||
.../browser/subresource_filter_features.cc | 113 +-------
|
||||
.../browser/subresource_filter_features.cc | 116 +-------
|
||||
.../core/common/indexed_ruleset.cc | 5 +-
|
||||
.../navigation_throttle_runner.cc | 5 -
|
||||
37 files changed, 1160 insertions(+), 126 deletions(-)
|
||||
third_party/blink/common/features.cc | 12 +-
|
||||
39 files changed, 1166 insertions(+), 135 deletions(-)
|
||||
create mode 100644 chrome/android/java/res/layout/adblock_editor.xml
|
||||
create mode 100644 chrome/android/java/res/xml/adblock_preferences.xml
|
||||
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/AdBlockEditor.java
|
||||
@@ -56,18 +61,29 @@ Fix RestoreForeignSessionTab by recreating the tab (issue #681)
|
||||
create mode 100644 components/component_updater/download_filters_task.cc
|
||||
create mode 100644 components/component_updater/download_filters_task.h
|
||||
|
||||
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
|
||||
--- a/chrome/android/BUILD.gn
|
||||
+++ b/chrome/android/BUILD.gn
|
||||
@@ -382,6 +382,7 @@ if (current_toolchain == default_toolchain) {
|
||||
"//chrome/android/modules/image_editor/provider:java",
|
||||
"//chrome/android/modules/stack_unwinder/provider:java",
|
||||
"//chrome/android/webapk/libs/client:client_java",
|
||||
+ "//chrome/browser/endpoint_fetcher:java",
|
||||
"//chrome/android/webapk/libs/common:common_java",
|
||||
"//chrome/android/webapk/libs/common:splash_java",
|
||||
"//chrome/android/webapk/libs/runtime_library:webapk_service_aidl_java",
|
||||
diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
|
||||
--- a/chrome/android/chrome_java_resources.gni
|
||||
+++ b/chrome/android/chrome_java_resources.gni
|
||||
@@ -473,6 +473,7 @@ chrome_java_resources = [
|
||||
@@ -447,6 +447,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",
|
||||
+ "java/res/layout/adblock_editor.xml",
|
||||
+ "java/res/layout/adblock_editor.xml",
|
||||
"java/res/layout/auto_sign_in_first_run_dialog.xml",
|
||||
"java/res/layout/autofill_billing_address_dropdown.xml",
|
||||
"java/res/layout/autofill_card_unmask_prompt.xml",
|
||||
@@ -667,6 +668,7 @@ chrome_java_resources = [
|
||||
@@ -639,6 +640,7 @@ chrome_java_resources = [
|
||||
"java/res/values/values.xml",
|
||||
"java/res/xml/about_chrome_preferences.xml",
|
||||
"java/res/xml/account_management_preferences.xml",
|
||||
@@ -78,15 +94,15 @@ 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
|
||||
@@ -904,6 +904,8 @@ chrome_java_sources = [
|
||||
@@ -900,6 +900,8 @@ chrome_java_sources = [
|
||||
"java/src/org/chromium/chrome/browser/permissions/PermissionSettingsBridge.java",
|
||||
"java/src/org/chromium/chrome/browser/permissions/PermissionUpdateRequester.java",
|
||||
"java/src/org/chromium/chrome/browser/photo_picker/DecoderServiceImpl.java",
|
||||
+ "java/src/org/chromium/chrome/browser/settings/AdBlockEditor.java",
|
||||
+ "java/src/org/chromium/chrome/browser/settings/AdBlockPreferences.java",
|
||||
"java/src/org/chromium/chrome/browser/policy/PolicyAuditor.java",
|
||||
"java/src/org/chromium/chrome/browser/policy/PolicyAuditorBridge.java",
|
||||
"java/src/org/chromium/chrome/browser/prerender/ChromePrerenderServiceImpl.java",
|
||||
"java/src/org/chromium/chrome/browser/printing/PrintShareActivity.java",
|
||||
diff --git a/chrome/android/java/res/layout/adblock_editor.xml b/chrome/android/java/res/layout/adblock_editor.xml
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
@@ -162,7 +178,7 @@ new file mode 100644
|
||||
diff --git a/chrome/android/java/res/values/styles.xml b/chrome/android/java/res/values/styles.xml
|
||||
--- a/chrome/android/java/res/values/styles.xml
|
||||
+++ b/chrome/android/java/res/values/styles.xml
|
||||
@@ -194,6 +194,24 @@
|
||||
@@ -180,6 +180,24 @@ found in the LICENSE file.
|
||||
</item>
|
||||
</style>
|
||||
|
||||
@@ -190,7 +206,7 @@ diff --git a/chrome/android/java/res/values/styles.xml b/chrome/android/java/res
|
||||
diff --git a/chrome/android/java/res/values/values.xml b/chrome/android/java/res/values/values.xml
|
||||
--- a/chrome/android/java/res/values/values.xml
|
||||
+++ b/chrome/android/java/res/values/values.xml
|
||||
@@ -25,6 +25,8 @@
|
||||
@@ -27,6 +27,8 @@ found in the LICENSE file.
|
||||
<!-- Compositor Tab Title Text -->
|
||||
<bool name="compositor_tab_title_fake_bold_text">true</bool>
|
||||
|
||||
@@ -232,7 +248,7 @@ new file mode 100644
|
||||
diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/java/res/xml/main_preferences.xml
|
||||
--- a/chrome/android/java/res/xml/main_preferences.xml
|
||||
+++ b/chrome/android/java/res/xml/main_preferences.xml
|
||||
@@ -42,6 +42,11 @@
|
||||
@@ -44,6 +44,11 @@ found in the LICENSE file.
|
||||
android:key="privacy"
|
||||
android:order="10"
|
||||
android:title="@string/prefs_privacy_security"/>
|
||||
@@ -409,7 +425,7 @@ new file mode 100644
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelImpl.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelImpl.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelImpl.java
|
||||
@@ -670,7 +670,7 @@ public class TabModelImpl extends TabModelJniBridge {
|
||||
@@ -705,7 +705,7 @@ public class TabModelImpl extends TabModelJniBridge {
|
||||
protected boolean createTabWithWebContents(
|
||||
Tab parent, Profile profile, WebContents webContents) {
|
||||
return getTabCreator(profile.isOffTheRecord())
|
||||
@@ -421,7 +437,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
|
||||
@@ -11873,6 +11873,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
|
||||
@@ -12565,6 +12565,16 @@ Please help our engineers fix this problem. Tell us what happened right before y
|
||||
Never show this again.
|
||||
</message>
|
||||
|
||||
@@ -441,8 +457,8 @@ diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources
|
||||
diff --git a/chrome/browser/after_startup_task_utils.cc b/chrome/browser/after_startup_task_utils.cc
|
||||
--- a/chrome/browser/after_startup_task_utils.cc
|
||||
+++ b/chrome/browser/after_startup_task_utils.cc
|
||||
@@ -33,6 +33,8 @@
|
||||
#include "chromeos/lacros/lacros_service.h"
|
||||
@@ -28,6 +28,8 @@
|
||||
#include "chromeos/startup/browser_params_proxy.h"
|
||||
#endif // BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
|
||||
+#include "chrome/browser/browser_process.h"
|
||||
@@ -450,16 +466,15 @@ diff --git a/chrome/browser/after_startup_task_utils.cc b/chrome/browser/after_s
|
||||
using content::BrowserThread;
|
||||
|
||||
namespace {
|
||||
@@ -128,6 +130,9 @@ void SetBrowserStartupIsComplete() {
|
||||
@@ -123,6 +125,8 @@ void SetBrowserStartupIsComplete() {
|
||||
ScheduleTask(base::WrapUnique(queued_task));
|
||||
g_after_startup_tasks.Get().clear();
|
||||
g_after_startup_tasks.Get().shrink_to_fit();
|
||||
|
||||
+ // initialize AdBlock engine scheduled updates
|
||||
+ g_browser_process->adblock_updater()->Start();
|
||||
+
|
||||
// TODO(crbug.com/1052397): Revisit the macro expression once build flag switch
|
||||
// of lacros-chrome is complete.
|
||||
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
}
|
||||
|
||||
// Observes the first visible page load and sets the startup complete
|
||||
diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
|
||||
--- a/chrome/browser/browser_process.h
|
||||
+++ b/chrome/browser/browser_process.h
|
||||
@@ -493,7 +508,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
|
||||
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
|
||||
--- a/chrome/browser/browser_process_impl.cc
|
||||
+++ b/chrome/browser/browser_process_impl.cc
|
||||
@@ -1068,6 +1068,26 @@ BrowserProcessImpl::component_updater() {
|
||||
@@ -1071,6 +1071,26 @@ BrowserProcessImpl::component_updater() {
|
||||
return component_updater_.get();
|
||||
}
|
||||
|
||||
@@ -523,7 +538,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
|
||||
@@ -200,6 +200,7 @@ class BrowserProcessImpl : public BrowserProcess,
|
||||
@@ -192,6 +192,7 @@ class BrowserProcessImpl : public BrowserProcess,
|
||||
#endif
|
||||
|
||||
component_updater::ComponentUpdateService* component_updater() override;
|
||||
@@ -531,7 +546,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,
|
||||
@@ -375,6 +376,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_;
|
||||
@@ -542,16 +557,16 @@ 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
|
||||
@@ -1730,6 +1730,9 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
|
||||
// will be initialized when the app enters foreground mode.
|
||||
variations_service->set_policy_pref_service(profile->GetPrefs());
|
||||
@@ -416,6 +416,9 @@ StartupProfileInfo CreateInitialProfile(
|
||||
// missing code in the above test.
|
||||
CHECK(profile_info.profile) << "Cannot get default profile.";
|
||||
|
||||
+ // force AdBlock updater initialisation
|
||||
+ g_browser_process->adblock_updater();
|
||||
+
|
||||
#else
|
||||
// We are in regular browser boot sequence. Open initial tabs and enter the
|
||||
// main message loop.
|
||||
#if BUILDFLAG(IS_CHROMEOS_LACROS)
|
||||
// Lacros has a special "primary" profile that is tied to the active ChromeOS
|
||||
diff --git a/chrome/browser/flags/android/cached_feature_flags.cc b/chrome/browser/flags/android/cached_feature_flags.cc
|
||||
--- a/chrome/browser/flags/android/cached_feature_flags.cc
|
||||
+++ b/chrome/browser/flags/android/cached_feature_flags.cc
|
||||
@@ -565,7 +580,7 @@ diff --git a/chrome/browser/flags/android/cached_feature_flags.cc b/chrome/brows
|
||||
#include "content/public/common/content_features.h"
|
||||
#include "content/public/common/network_service_util.h"
|
||||
|
||||
@@ -41,3 +44,11 @@ static jboolean JNI_CachedFeatureFlags_IsNetworkServiceWarmUpEnabled(
|
||||
@@ -42,3 +45,11 @@ static jboolean JNI_CachedFeatureFlags_IsNetworkServiceWarmUpEnabled(
|
||||
return content::IsOutOfProcessNetworkService() &&
|
||||
base::FeatureList::IsEnabled(features::kWarmUpNetworkProcess);
|
||||
}
|
||||
@@ -580,7 +595,7 @@ diff --git a/chrome/browser/flags/android/cached_feature_flags.cc b/chrome/brows
|
||||
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
||||
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
||||
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
||||
@@ -270,6 +270,14 @@ public class CachedFeatureFlags {
|
||||
@@ -190,6 +190,14 @@ public class CachedFeatureFlags {
|
||||
ChromeFeatureList.isEnabled(ChromeFeatureList.BACKGROUND_THREAD_POOL));
|
||||
}
|
||||
|
||||
@@ -595,7 +610,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
|
||||
/**
|
||||
* Caches flags that must take effect on startup but are set via native code.
|
||||
*/
|
||||
@@ -487,5 +495,7 @@ public class CachedFeatureFlags {
|
||||
@@ -427,5 +435,7 @@ public class CachedFeatureFlags {
|
||||
@NativeMethods
|
||||
interface Natives {
|
||||
boolean isNetworkServiceWarmUpEnabled();
|
||||
@@ -606,7 +621,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
|
||||
@@ -436,6 +436,8 @@ SystemNetworkContextManager::SystemNetworkContextManager(
|
||||
@@ -422,6 +422,8 @@ SystemNetworkContextManager::SystemNetworkContextManager(
|
||||
ssl_config_service_manager_(local_state_),
|
||||
proxy_config_monitor_(local_state_),
|
||||
stub_resolver_config_reader_(local_state_) {
|
||||
@@ -615,7 +630,7 @@ diff --git a/chrome/browser/net/system_network_context_manager.cc b/chrome/brows
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
// QuicAllowed was not part of Android policy.
|
||||
const base::Value* value =
|
||||
@@ -516,6 +518,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
|
||||
@@ -500,6 +502,8 @@ SystemNetworkContextManager::~SystemNetworkContextManager() {
|
||||
void SystemNetworkContextManager::RegisterPrefs(PrefRegistrySimple* registry) {
|
||||
StubResolverConfigReader::RegisterPrefs(registry);
|
||||
|
||||
@@ -665,7 +680,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
|
||||
@@ -2318,6 +2318,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
|
||||
@@ -2390,6 +2390,9 @@ const char kAudioCaptureAllowed[] = "hardware.audio_capture_enabled";
|
||||
// capture devices without prompt.
|
||||
const char kAudioCaptureAllowedUrls[] = "hardware.audio_capture_allowed_urls";
|
||||
|
||||
@@ -678,7 +693,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
|
||||
@@ -32,6 +32,7 @@ extern const char kDownloadBubbleEnabled[];
|
||||
@@ -33,6 +33,7 @@ extern const char kDownloadBubbleEnabled[];
|
||||
extern const char kForceEphemeralProfiles[];
|
||||
extern const char kHomePageIsNewTabPage[];
|
||||
extern const char kHomePage[];
|
||||
@@ -689,7 +704,7 @@ diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
|
||||
diff --git a/components/browser_ui/strings/android/site_settings.grdp b/components/browser_ui/strings/android/site_settings.grdp
|
||||
--- a/components/browser_ui/strings/android/site_settings.grdp
|
||||
+++ b/components/browser_ui/strings/android/site_settings.grdp
|
||||
@@ -247,8 +247,8 @@
|
||||
@@ -303,8 +303,8 @@
|
||||
<message name="IDS_INTRUSIVE_ADS_INFORMATION" desc="The extra information at the top of the Site Details page when the site tends to show intrusive ads">
|
||||
This site shows intrusive or misleading ads
|
||||
</message>
|
||||
@@ -716,7 +731,7 @@ diff --git a/components/component_updater/BUILD.gn b/components/component_update
|
||||
"component_updater_service.cc",
|
||||
"component_updater_service.h",
|
||||
"component_updater_service_internal.h",
|
||||
@@ -37,6 +43,7 @@ static_library("component_updater") {
|
||||
@@ -39,6 +45,7 @@ static_library("component_updater") {
|
||||
"//components/prefs",
|
||||
"//components/update_client",
|
||||
"//components/version_info",
|
||||
@@ -1472,7 +1487,7 @@ new file mode 100644
|
||||
diff --git a/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc b/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc
|
||||
--- a/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc
|
||||
+++ b/components/subresource_filter/content/browser/content_subresource_filter_throttle_manager.cc
|
||||
@@ -666,6 +666,17 @@ ContentSubresourceFilterThrottleManager::
|
||||
@@ -667,6 +667,17 @@ ContentSubresourceFilterThrottleManager::
|
||||
throttle->NotifyPageActivationWithRuleset(EnsureRulesetHandle(),
|
||||
ad_tagging_state);
|
||||
}
|
||||
@@ -1667,7 +1682,7 @@ diff --git a/components/subresource_filter/content/browser/verified_ruleset_deal
|
||||
diff --git a/components/subresource_filter/core/browser/subresource_filter_features.cc b/components/subresource_filter/core/browser/subresource_filter_features.cc
|
||||
--- a/components/subresource_filter/core/browser/subresource_filter_features.cc
|
||||
+++ b/components/subresource_filter/core/browser/subresource_filter_features.cc
|
||||
@@ -55,69 +55,7 @@ class CommaSeparatedStrings {
|
||||
@@ -54,72 +54,7 @@ class CommaSeparatedStrings {
|
||||
const std::vector<base::StringPiece> pieces_;
|
||||
};
|
||||
|
||||
@@ -1684,18 +1699,21 @@ diff --git a/components/subresource_filter/core/browser/subresource_filter_featu
|
||||
-
|
||||
-mojom::ActivationLevel ParseActivationLevel(
|
||||
- const base::StringPiece activation_level) {
|
||||
- if (base::LowerCaseEqualsASCII(activation_level, kActivationLevelEnabled))
|
||||
- if (base::EqualsCaseInsensitiveASCII(activation_level,
|
||||
- kActivationLevelEnabled))
|
||||
- return mojom::ActivationLevel::kEnabled;
|
||||
- else if (base::LowerCaseEqualsASCII(activation_level, kActivationLevelDryRun))
|
||||
- else if (base::EqualsCaseInsensitiveASCII(activation_level,
|
||||
- kActivationLevelDryRun))
|
||||
- return mojom::ActivationLevel::kDryRun;
|
||||
- return mojom::ActivationLevel::kDisabled;
|
||||
-}
|
||||
-
|
||||
-ActivationScope ParseActivationScope(const base::StringPiece activation_scope) {
|
||||
- if (base::LowerCaseEqualsASCII(activation_scope, kActivationScopeAllSites))
|
||||
- if (base::EqualsCaseInsensitiveASCII(activation_scope,
|
||||
- kActivationScopeAllSites))
|
||||
- return ActivationScope::ALL_SITES;
|
||||
- else if (base::LowerCaseEqualsASCII(activation_scope,
|
||||
- kActivationScopeActivationList))
|
||||
- else if (base::EqualsCaseInsensitiveASCII(activation_scope,
|
||||
- kActivationScopeActivationList))
|
||||
- return ActivationScope::ACTIVATION_LIST;
|
||||
- return ActivationScope::NO_SITES;
|
||||
-}
|
||||
@@ -1738,7 +1756,7 @@ diff --git a/components/subresource_filter/core/browser/subresource_filter_featu
|
||||
// If ad tagging is enabled, turn on the dryrun automatically.
|
||||
bool ad_tagging_enabled = base::FeatureList::IsEnabled(kAdTagging);
|
||||
const struct {
|
||||
@@ -125,23 +63,16 @@ std::vector<Configuration> FillEnabledPresetConfigurations(
|
||||
@@ -127,23 +62,16 @@ std::vector<Configuration> FillEnabledPresetConfigurations(
|
||||
bool enabled_by_default;
|
||||
Configuration (*factory_method)();
|
||||
} kAvailablePresetConfigurations[] = {
|
||||
@@ -1764,7 +1782,7 @@ diff --git a/components/subresource_filter/core/browser/subresource_filter_featu
|
||||
enabled_configurations.push_back(available_preset.factory_method());
|
||||
}
|
||||
}
|
||||
@@ -149,46 +80,10 @@ std::vector<Configuration> FillEnabledPresetConfigurations(
|
||||
@@ -151,46 +79,10 @@ std::vector<Configuration> FillEnabledPresetConfigurations(
|
||||
return enabled_configurations;
|
||||
}
|
||||
|
||||
@@ -1838,10 +1856,10 @@ diff --git a/components/subresource_filter/core/common/indexed_ruleset.cc b/comp
|
||||
diff --git a/content/browser/renderer_host/navigation_throttle_runner.cc b/content/browser/renderer_host/navigation_throttle_runner.cc
|
||||
--- a/content/browser/renderer_host/navigation_throttle_runner.cc
|
||||
+++ b/content/browser/renderer_host/navigation_throttle_runner.cc
|
||||
@@ -180,11 +180,6 @@ void NavigationThrottleRunner::RegisterNavigationThrottles() {
|
||||
// than other throttles that might care about those navigations, e.g.
|
||||
// throttles handling pages with 407 errors that require extra authentication.
|
||||
AddThrottle(HttpErrorNavigationThrottle::MaybeCreateThrottleFor(*request));
|
||||
@@ -190,11 +190,6 @@ void NavigationThrottleRunner::RegisterNavigationThrottles() {
|
||||
// wait for the JS task that starts the navigation to finish, so add it close
|
||||
// to the end to not delay running other throttles.
|
||||
AddThrottle(RendererCancellationThrottle::MaybeCreateThrottleFor(request));
|
||||
-
|
||||
- // Insert all testing NavigationThrottles last.
|
||||
- throttles_.insert(throttles_.end(),
|
||||
@@ -1850,5 +1868,41 @@ diff --git a/content/browser/renderer_host/navigation_throttle_runner.cc b/conte
|
||||
}
|
||||
|
||||
NavigationThrottle* NavigationThrottleRunner::GetDeferringThrottle() const {
|
||||
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
|
||||
@@ -34,8 +34,8 @@ BASE_FEATURE(kAttributionReportingCrossAppWeb,
|
||||
// Apply lazy-loading to ad frames which have embeds likely impacting Core Web
|
||||
// Vitals.
|
||||
BASE_FEATURE(kAutomaticLazyFrameLoadingToAds,
|
||||
- "AutomaticLazyFrameLoadingToAds",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "AutomaticLazyFrameLoadingToAds", // must be enabled
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// The timeout value that forces loading iframes that are lazy loaded by
|
||||
// LazyAds. After this timeout, the frame loading is triggered even when the
|
||||
@@ -55,8 +55,8 @@ const base::FeatureParam<int> kSkipFrameCountForLazyAds(
|
||||
// Apply lazy-loading to frames which have embeds likely impacting Core Web
|
||||
// Vitals.
|
||||
BASE_FEATURE(kAutomaticLazyFrameLoadingToEmbeds,
|
||||
- "AutomaticLazyFrameLoadingToEmbeds",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "AutomaticLazyFrameLoadingToEmbeds", // must be enabled
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// The timeout value that forces loading iframes that are lazy loaded by
|
||||
// LazyEmbeds. After this timeout, the frame loading is triggered even when the
|
||||
@@ -78,8 +78,8 @@ const base::FeatureParam<int> kSkipFrameCountForLazyEmbeds(
|
||||
// to gather Blink.AutomaticLazyLoadFrame.LazyEmbedFrameCount UKM data even when
|
||||
// kAutomaticLazyFrameLoadingToEmbeds is disabled.
|
||||
BASE_FEATURE(kAutomaticLazyFrameLoadingToEmbedUrls,
|
||||
- "AutomaticLazyFrameLoadingToEmbedUrls",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "AutomaticLazyFrameLoadingToEmbedUrls", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Define the strategy for LazyEmbeds to decide which frames we apply
|
||||
// lazy-loading or not. If the loading strategy is kAllowList, the detection
|
||||
--
|
||||
2.25.1
|
||||
@@ -2,6 +2,7 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sat, 8 Jan 2022 19:42:34 +0100
|
||||
Subject: Chromium package name
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/android/BUILD.gn | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
@@ -9,14 +10,14 @@ Subject: Chromium package name
|
||||
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
|
||||
--- a/chrome/android/BUILD.gn
|
||||
+++ b/chrome/android/BUILD.gn
|
||||
@@ -44,7 +44,7 @@ if (android_64bit_target_cpu && skip_secondary_abi_for_cq) {
|
||||
assert(current_toolchain != android_secondary_abi_toolchain)
|
||||
}
|
||||
@@ -51,7 +51,7 @@ chrome_jni_registration_header =
|
||||
chrome_jni_for_test_registration_header = "$root_build_dir/gen/chrome/browser/android/chrome_jni_for_test_registration.h"
|
||||
|
||||
-_default_package = "org.chromium.chrome"
|
||||
+_default_package = "org.bromite.chromium"
|
||||
if (android_channel != "default" && android_channel != "stable") {
|
||||
# android-binary-size trybot may checks if an internal Chrome variant's
|
||||
# AndroidManifest is as expected by ensuring the differences between its
|
||||
if (current_toolchain == default_toolchain) {
|
||||
- _default_package = "org.chromium.chrome"
|
||||
+ _default_package = "org.bromite.chromium"
|
||||
if (use_stable_package_name_for_trichrome) {
|
||||
_default_package += ".stable"
|
||||
} else if (android_channel != "default" && android_channel != "stable") {
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
From: uazo <uazo@users.noreply.github.com>
|
||||
Date: Mon, 3 Oct 2022 09:39:07 +0000
|
||||
Subject: Clamp time resolution in requestAnimationFrame
|
||||
|
||||
Aligns requestAnimationFrame's WebWorker callback to the W3C specification
|
||||
See https://bugs.chromium.org/p/chromium/issues/detail?id=1236113
|
||||
|
||||
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
|
||||
---
|
||||
.../animation_frame/worker_animation_frame_provider.cc | 8 +++++++-
|
||||
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/third_party/blink/renderer/core/animation_frame/worker_animation_frame_provider.cc b/third_party/blink/renderer/core/animation_frame/worker_animation_frame_provider.cc
|
||||
--- a/third_party/blink/renderer/core/animation_frame/worker_animation_frame_provider.cc
|
||||
+++ b/third_party/blink/renderer/core/animation_frame/worker_animation_frame_provider.cc
|
||||
@@ -7,6 +7,8 @@
|
||||
#include "base/trace_event/trace_event.h"
|
||||
#include "third_party/blink/renderer/core/execution_context/agent.h"
|
||||
#include "third_party/blink/renderer/core/offscreencanvas/offscreen_canvas.h"
|
||||
+#include "third_party/blink/renderer/core/workers/worker_global_scope.h"
|
||||
+#include "third_party/blink/renderer/platform/wtf/casting.h"
|
||||
#include "third_party/blink/renderer/core/timing/worker_global_scope_performance.h"
|
||||
#include "third_party/blink/renderer/platform/scheduler/public/event_loop.h"
|
||||
#include "third_party/blink/renderer/platform/wtf/cross_thread_functional.h"
|
||||
@@ -63,7 +65,11 @@ void WorkerAnimationFrameProvider::BeginFrame(const viz::BeginFrameArgs& args) {
|
||||
}
|
||||
}
|
||||
|
||||
- double time = (args.frame_time - base::TimeTicks()).InMillisecondsF();
|
||||
+ auto* global_scope = DynamicTo<WorkerGlobalScope>(provider->context_.Get());
|
||||
+ DCHECK(global_scope);
|
||||
+ double time = Performance::ClampTimeResolution(
|
||||
+ args.frame_time - global_scope->TimeOrigin(),
|
||||
+ provider->context_->CrossOriginIsolatedCapability());
|
||||
provider->callback_collection_.ExecuteFrameCallbacks(time, time);
|
||||
}
|
||||
provider->begin_frame_provider_->FinishBeginFrame(args);
|
||||
--
|
||||
2.25.1
|
||||
@@ -3,38 +3,24 @@ Date: Thu, 22 Jul 2021 23:10:52 +0200
|
||||
Subject: Client hints overrides
|
||||
|
||||
Disable critical client hints
|
||||
Hard-code model to SAMSUNG SM-G960U
|
||||
use Google Chrome branding for client hints
|
||||
---
|
||||
chrome/browser/prefs/browser_prefs.cc | 2 +-
|
||||
components/embedder_support/user_agent_utils.cc | 4 +---
|
||||
content/browser/client_hints/client_hints.cc | 3 ++-
|
||||
content/browser/loader/navigation_url_loader_impl.cc | 5 +++++
|
||||
content/common/user_agent.cc | 9 +--------
|
||||
content/public/common/content_features.cc | 2 +-
|
||||
services/network/public/cpp/client_hints.cc | 1 +
|
||||
services/network/public/cpp/features.cc | 4 ++--
|
||||
third_party/blink/common/client_hints/client_hints.cc | 1 +
|
||||
.../blink/common/client_hints/enabled_client_hints.cc | 4 +++-
|
||||
third_party/blink/common/features.cc | 4 ++--
|
||||
11 files changed, 20 insertions(+), 19 deletions(-)
|
||||
Use Google Chrome branding for client hints
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
components/embedder_support/user_agent_utils.cc | 4 +---
|
||||
content/browser/client_hints/client_hints.cc | 3 ++-
|
||||
content/browser/loader/navigation_url_loader_impl.cc | 5 +++++
|
||||
content/public/common/content_features.cc | 4 ++--
|
||||
services/network/public/cpp/client_hints.cc | 1 +
|
||||
services/network/public/cpp/features.cc | 2 +-
|
||||
third_party/blink/common/client_hints/client_hints.cc | 1 +
|
||||
.../blink/common/client_hints/enabled_client_hints.cc | 4 +++-
|
||||
8 files changed, 16 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
|
||||
--- a/chrome/browser/prefs/browser_prefs.cc
|
||||
+++ b/chrome/browser/prefs/browser_prefs.cc
|
||||
@@ -765,7 +765,7 @@ void RegisterLocalStatePrefsForMigration(PrefRegistrySimple* registry) {
|
||||
registry->RegisterListPref(prefs::kUsedPolicyCertificates);
|
||||
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
|
||||
|
||||
- registry->RegisterBooleanPref(kUserAgentClientHintsEnabled, true);
|
||||
+ registry->RegisterBooleanPref(kUserAgentClientHintsEnabled, false);
|
||||
|
||||
registry->RegisterBooleanPref(kCloudPolicyOverridesPlatformPolicy, false);
|
||||
|
||||
diff --git a/components/embedder_support/user_agent_utils.cc b/components/embedder_support/user_agent_utils.cc
|
||||
--- a/components/embedder_support/user_agent_utils.cc
|
||||
+++ b/components/embedder_support/user_agent_utils.cc
|
||||
@@ -226,9 +226,7 @@ const blink::UserAgentBrandList GetUserAgentBrandList(
|
||||
@@ -265,9 +265,7 @@ const blink::UserAgentBrandList GetUserAgentBrandList(
|
||||
bool parse_result = base::StringToInt(major_version, &major_version_number);
|
||||
DCHECK(parse_result);
|
||||
absl::optional<std::string> brand;
|
||||
@@ -48,8 +34,8 @@ diff --git a/components/embedder_support/user_agent_utils.cc b/components/embedd
|
||||
diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/client_hints/client_hints.cc
|
||||
--- a/content/browser/client_hints/client_hints.cc
|
||||
+++ b/content/browser/client_hints/client_hints.cc
|
||||
@@ -433,7 +433,8 @@ void AddPrefersColorSchemeHeader(net::HttpRequestHeaders* headers,
|
||||
is_dark_mode ? "dark" : "light");
|
||||
@@ -478,7 +478,8 @@ void AddPrefersReducedMotionHeader(net::HttpRequestHeaders* headers,
|
||||
: network::kPrefersReducedMotionNoPreference);
|
||||
}
|
||||
|
||||
-bool IsValidURLForClientHints(const url::Origin& origin) {
|
||||
@@ -61,7 +47,7 @@ diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/clie
|
||||
diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/browser/loader/navigation_url_loader_impl.cc
|
||||
--- a/content/browser/loader/navigation_url_loader_impl.cc
|
||||
+++ b/content/browser/loader/navigation_url_loader_impl.cc
|
||||
@@ -988,6 +988,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived(
|
||||
@@ -1024,6 +1024,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived(
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -73,41 +59,24 @@ diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/brow
|
||||
LogAcceptCHFrameStatus(AcceptCHFrameRestart::kFramePresent);
|
||||
|
||||
// Given that this is happening in the middle of navigation, there should
|
||||
diff --git a/content/common/user_agent.cc b/content/common/user_agent.cc
|
||||
--- a/content/common/user_agent.cc
|
||||
+++ b/content/common/user_agent.cc
|
||||
@@ -300,14 +300,7 @@ std::string BuildUserAgentFromProduct(const std::string& product) {
|
||||
}
|
||||
|
||||
std::string BuildModelInfo() {
|
||||
- std::string model;
|
||||
-#if BUILDFLAG(IS_ANDROID)
|
||||
- // Only send the model information if on the release build of Android,
|
||||
- // matching user agent behaviour.
|
||||
- if (base::SysInfo::GetAndroidBuildCodename() == "REL")
|
||||
- model = base::SysInfo::HardwareModelName();
|
||||
-#endif
|
||||
- return model;
|
||||
+ return "SAMSUNG SM-G960U";
|
||||
}
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
|
||||
--- a/content/public/common/content_features.cc
|
||||
+++ b/content/public/common/content_features.cc
|
||||
@@ -240,7 +240,7 @@ const base::Feature kCrashReporting{"CrashReporting",
|
||||
@@ -257,8 +257,8 @@ BASE_FEATURE(kCrashReporting,
|
||||
// Enables support for the `Critical-CH` response header.
|
||||
// https://github.com/WICG/client-hints-infrastructure/blob/master/reliability.md#critical-ch
|
||||
const base::Feature kCriticalClientHint{"CriticalClientHint",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kCriticalClientHint,
|
||||
- "CriticalClientHint",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "CriticalClientHint", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Enable debugging the issue crbug.com/1201355
|
||||
const base::Feature kDebugHistoryInterventionNoUserActivation{
|
||||
BASE_FEATURE(kDebugHistoryInterventionNoUserActivation,
|
||||
diff --git a/services/network/public/cpp/client_hints.cc b/services/network/public/cpp/client_hints.cc
|
||||
--- a/services/network/public/cpp/client_hints.cc
|
||||
+++ b/services/network/public/cpp/client_hints.cc
|
||||
@@ -98,6 +98,7 @@ const DecodeMap& GetDecodeMap() {
|
||||
@@ -113,6 +113,7 @@ const DecodeMap& GetDecodeMap() {
|
||||
|
||||
absl::optional<std::vector<network::mojom::WebClientHintsType>>
|
||||
ParseClientHintsHeader(const std::string& header) {
|
||||
@@ -118,22 +87,20 @@ diff --git a/services/network/public/cpp/client_hints.cc b/services/network/publ
|
||||
diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc
|
||||
--- a/services/network/public/cpp/features.cc
|
||||
+++ b/services/network/public/cpp/features.cc
|
||||
@@ -184,8 +184,8 @@ const base::Feature kWebSocketReassembleShortMessages{
|
||||
@@ -198,7 +198,7 @@ BASE_FEATURE(kWebSocketReassembleShortMessages,
|
||||
// Enable support for ACCEPT_CH H2/3 frame as part of Client Hint Reliability.
|
||||
// See:
|
||||
// https://tools.ietf.org/html/draft-davidben-http-client-hint-reliability-02#section-4.3
|
||||
-const base::Feature kAcceptCHFrame{"AcceptCHFrame",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+const base::Feature kAcceptCHFrame{"AcceptCHFrame", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT}; // in Bromite
|
||||
-BASE_FEATURE(kAcceptCHFrame, "AcceptCHFrame", base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+BASE_FEATURE(kAcceptCHFrame, "AcceptCHFrame", base::FEATURE_DISABLED_BY_DEFAULT); // disabled by default in Bromite
|
||||
|
||||
const base::Feature kSCTAuditingRetryReports{"SCTAuditingRetryReports",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kSCTAuditingRetryReports,
|
||||
"SCTAuditingRetryReports",
|
||||
diff --git a/third_party/blink/common/client_hints/client_hints.cc b/third_party/blink/common/client_hints/client_hints.cc
|
||||
--- a/third_party/blink/common/client_hints/client_hints.cc
|
||||
+++ b/third_party/blink/common/client_hints/client_hints.cc
|
||||
@@ -118,6 +118,7 @@ const size_t kWebEffectiveConnectionTypeMappingCount =
|
||||
std::size(kWebEffectiveConnectionTypeMapping);
|
||||
@@ -105,6 +105,7 @@ const PolicyFeatureToClientHintMap& GetPolicyFeatureToClientHintMap() {
|
||||
}
|
||||
|
||||
bool IsClientHintSentByDefault(network::mojom::WebClientHintsType type) {
|
||||
+ if ((true)) return false;
|
||||
@@ -143,7 +110,7 @@ diff --git a/third_party/blink/common/client_hints/client_hints.cc b/third_party
|
||||
diff --git a/third_party/blink/common/client_hints/enabled_client_hints.cc b/third_party/blink/common/client_hints/enabled_client_hints.cc
|
||||
--- a/third_party/blink/common/client_hints/enabled_client_hints.cc
|
||||
+++ b/third_party/blink/common/client_hints/enabled_client_hints.cc
|
||||
@@ -22,6 +22,7 @@ namespace {
|
||||
@@ -21,6 +21,7 @@ namespace {
|
||||
using ::network::mojom::WebClientHintsType;
|
||||
|
||||
bool IsDisabledByFeature(const WebClientHintsType type) {
|
||||
@@ -151,7 +118,7 @@ diff --git a/third_party/blink/common/client_hints/enabled_client_hints.cc b/thi
|
||||
switch (type) {
|
||||
case WebClientHintsType::kUA:
|
||||
case WebClientHintsType::kUAArch:
|
||||
@@ -136,7 +137,7 @@ bool IsOriginTrialEnabled(const GURL& url,
|
||||
@@ -138,7 +139,7 @@ bool IsOriginTrialEnabled(const GURL& url,
|
||||
} // namespace
|
||||
|
||||
bool EnabledClientHints::IsEnabled(const WebClientHintsType type) const {
|
||||
@@ -160,7 +127,7 @@ diff --git a/third_party/blink/common/client_hints/enabled_client_hints.cc b/thi
|
||||
}
|
||||
|
||||
void EnabledClientHints::SetIsEnabled(const WebClientHintsType type,
|
||||
@@ -169,6 +170,7 @@ void EnabledClientHints::SetIsEnabled(
|
||||
@@ -167,6 +168,7 @@ void EnabledClientHints::SetIsEnabled(
|
||||
|
||||
std::vector<WebClientHintsType> EnabledClientHints::GetEnabledHints() const {
|
||||
std::vector<WebClientHintsType> hints;
|
||||
@@ -168,26 +135,5 @@ diff --git a/third_party/blink/common/client_hints/enabled_client_hints.cc b/thi
|
||||
for (const auto& elem : network::GetClientHintToNameMap()) {
|
||||
const auto& type = elem.first;
|
||||
if (IsEnabled(type))
|
||||
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
|
||||
@@ -156,7 +156,7 @@ const base::Feature kMixedContentAutoupgrade{"AutoupgradeMixedContent",
|
||||
// An experimental replacement for the `User-Agent` header, defined in
|
||||
// https://tools.ietf.org/html/draft-west-ua-client-hints.
|
||||
const base::Feature kUserAgentClientHint{"UserAgentClientHint",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
|
||||
// Enable `sec-ch-ua-full-version-list` client hint.
|
||||
const base::Feature kUserAgentClientHintFullVersionList{
|
||||
@@ -767,7 +767,7 @@ const base::Feature kResamplingScrollEvents{"ResamplingScrollEvents",
|
||||
const base::Feature kAllowClientHintsToThirdParty {
|
||||
"AllowClientHintsToThirdParty",
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT
|
||||
#else
|
||||
base::FEATURE_DISABLED_BY_DEFAULT
|
||||
#endif
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -6,13 +6,16 @@ This patch is used by other patches to provide the UI for Bromite-specific
|
||||
site settings.
|
||||
|
||||
See BromiteCustomContentSetting_README.md for more information.
|
||||
|
||||
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_ui/site_settings/android/BUILD.gn | 4 +
|
||||
.../BromiteCustomContentSetting.java | 125 ++++++++
|
||||
.../BromiteCustomContentSettingImpl.java | 269 ++++++++++++++++++
|
||||
.../BromiteCustomContentSettingImpl.java | 270 ++++++++++++++++++
|
||||
.../BromiteCustomContentSetting_README.md | 151 ++++++++++
|
||||
.../ContentSettingsResources.java | 13 +-
|
||||
.../site_settings/SingleCategorySettings.java | 28 +-
|
||||
.../site_settings/SingleCategorySettings.java | 30 +-
|
||||
.../site_settings/SingleWebsiteSettings.java | 24 +-
|
||||
.../site_settings/SiteSettings.java | 3 +-
|
||||
.../site_settings/SiteSettingsCategory.java | 9 +-
|
||||
@@ -30,7 +33,7 @@ See BromiteCustomContentSetting_README.md for more information.
|
||||
.../android/page_info_controller_android.cc | 18 ++
|
||||
components/page_info/page_info.cc | 23 +-
|
||||
components/page_info/page_info_ui.cc | 18 ++
|
||||
23 files changed, 730 insertions(+), 28 deletions(-)
|
||||
23 files changed, 733 insertions(+), 28 deletions(-)
|
||||
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSetting.java
|
||||
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSettingImpl.java
|
||||
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSetting_README.md
|
||||
@@ -38,8 +41,8 @@ See BromiteCustomContentSetting_README.md for more information.
|
||||
diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/browser_ui/site_settings/android/BUILD.gn
|
||||
--- a/components/browser_ui/site_settings/android/BUILD.gn
|
||||
+++ b/components/browser_ui/site_settings/android/BUILD.gn
|
||||
@@ -68,6 +68,10 @@ android_library("java") {
|
||||
"java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java",
|
||||
@@ -88,6 +88,10 @@ android_library("java") {
|
||||
"java/src/org/chromium/components/browser_ui/site_settings/WebsiteRowPreference.java",
|
||||
"java/src/org/chromium/components/browser_ui/site_settings/TimezoneOverrideSiteSettingsPreference.java"
|
||||
]
|
||||
+ sources += [
|
||||
@@ -183,7 +186,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
new file mode 100644
|
||||
--- /dev/null
|
||||
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSettingImpl.java
|
||||
@@ -0,0 +1,269 @@
|
||||
@@ -0,0 +1,270 @@
|
||||
+/*
|
||||
+ This file is part of Bromite.
|
||||
+
|
||||
@@ -304,7 +307,7 @@ new file mode 100644
|
||||
+ BrowserContextHandle browserContextHandle,
|
||||
+ Preference preference, Object newValue) {
|
||||
+ for (BromiteCustomContentSetting cs : mItemList) {
|
||||
+ if (!category.showSites(cs.getSiteSettingsCategory())) {
|
||||
+ if (category.getType() != cs.getSiteSettingsCategory()) {
|
||||
+ continue;
|
||||
+ }
|
||||
+
|
||||
@@ -337,7 +340,7 @@ new file mode 100644
|
||||
+
|
||||
+ public static @Nullable Boolean considerException(SiteSettingsCategory category, @ContentSettingValues int value) {
|
||||
+ for (BromiteCustomContentSetting cs : mItemList) {
|
||||
+ if (category.showSites(cs.getSiteSettingsCategory())) {
|
||||
+ if (category.getType() == cs.getSiteSettingsCategory()) {
|
||||
+ return cs.considerException(category, value);
|
||||
+ }
|
||||
+ }
|
||||
@@ -346,7 +349,7 @@ new file mode 100644
|
||||
+
|
||||
+ public static int getAddExceptionDialogMessage(SiteSettingsCategory category) {
|
||||
+ for (BromiteCustomContentSetting cs : mItemList) {
|
||||
+ if (category.showSites(cs.getSiteSettingsCategory())) {
|
||||
+ if (category.getType() == cs.getSiteSettingsCategory()) {
|
||||
+ return cs.getAddExceptionDialogMessage();
|
||||
+ }
|
||||
+ }
|
||||
@@ -355,7 +358,7 @@ new file mode 100644
|
||||
+
|
||||
+ public static @Nullable Boolean allowSpecifyingExceptions(SiteSettingsCategory category) {
|
||||
+ for (BromiteCustomContentSetting cs : mItemList) {
|
||||
+ if (category.showSites(cs.getSiteSettingsCategory())) {
|
||||
+ if (category.getType() == cs.getSiteSettingsCategory()) {
|
||||
+ return cs.isExceptionAllowed();
|
||||
+ }
|
||||
+ }
|
||||
@@ -402,7 +405,8 @@ new file mode 100644
|
||||
+ ContentSettingException exception = cs.createCustomException(type, value, websiteAddress);
|
||||
+ if (exception == null) {
|
||||
+ exception = new ContentSettingException(
|
||||
+ cs.getContentSetting(), websiteAddress.getHost(), value, "");
|
||||
+ cs.getContentSetting(), websiteAddress.getHost(), value, "",
|
||||
+ /*isEmbargoed=*/false);
|
||||
+ }
|
||||
+ return exception;
|
||||
+ }
|
||||
@@ -651,7 +655,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -564,6 +567,8 @@ public class ContentSettingsResources {
|
||||
@@ -570,6 +573,8 @@ public class ContentSettingsResources {
|
||||
* Blocked states, in that order.
|
||||
*/
|
||||
public static int[] getTriStateSettingDescriptionIDs(int contentType) {
|
||||
@@ -663,24 +667,26 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
|
||||
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
|
||||
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
|
||||
@@ -227,6 +227,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
else
|
||||
return ContentSettingValues.BLOCK == contentSetting;
|
||||
}
|
||||
+ if (BromiteCustomContentSettingImpl.processOnBlockList(contentSetting, contentSetting))
|
||||
+ return BromiteCustomContentSettingImpl.isOnBlockList(contentSetting, website, contentSetting);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@@ -376,6 +378,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
@@ -247,6 +247,10 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
@ContentSettingValues
|
||||
Integer contentSetting = website.site().getContentSetting(
|
||||
browserContextHandle, mCategory.getContentSettingsType());
|
||||
+ if (contentSetting != null &&
|
||||
+ BromiteCustomContentSettingImpl.processOnBlockList(contentSetting, contentSetting)) {
|
||||
+ return BromiteCustomContentSettingImpl.isOnBlockList(contentSetting, website, contentSetting);
|
||||
+ }
|
||||
if (contentSetting != null) {
|
||||
if (mCategory.getContentSettingsType() == SiteSettingsCategory.Type.TIMEZONE_OVERRIDE) {
|
||||
return ContentSettingValues.ALLOW != contentSetting;
|
||||
@@ -402,6 +406,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
? new HashSet<>(getArguments().getStringArrayList(EXTRA_SELECTED_DOMAINS))
|
||||
: null;
|
||||
|
||||
+ BromiteCustomContentSettingImpl.onActivityCreated(this);
|
||||
configureGlobalToggles();
|
||||
|
||||
setHasOptionsMenu(true);
|
||||
@@ -475,6 +478,11 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
if (mCategory.getType() == SiteSettingsCategory.Type.REQUEST_DESKTOP_SITE) {
|
||||
RecordUserAction.record("DesktopSiteContentSetting.SettingsPage.Entered");
|
||||
@@ -509,6 +514,11 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
BrowserContextHandle browserContextHandle =
|
||||
getSiteSettingsDelegate().getBrowserContextHandle();
|
||||
PrefService prefService = UserPrefs.get(browserContextHandle);
|
||||
@@ -692,8 +698,8 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
if (BINARY_TOGGLE_KEY.equals(preference.getKey())) {
|
||||
assert !mCategory.isManaged();
|
||||
|
||||
@@ -620,6 +628,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
} else if (mCategory.showSites(SiteSettingsCategory.Type.TIMEZONE_OVERRIDE)) {
|
||||
@@ -673,6 +683,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
} else if (mCategory.getType() == SiteSettingsCategory.Type.TIMEZONE_OVERRIDE) {
|
||||
resource = R.string.website_settings_category_timezone_override_allowed;
|
||||
}
|
||||
+ if (resource == 0)
|
||||
@@ -701,9 +707,9 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
assert resource > 0;
|
||||
return getString(resource);
|
||||
}
|
||||
@@ -730,6 +740,9 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
@@ -791,6 +803,9 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
allowSpecifyingExceptions = true;
|
||||
} else if (mCategory.showSites(SiteSettingsCategory.Type.TIMEZONE_OVERRIDE)) {
|
||||
} else if (mCategory.getType() == SiteSettingsCategory.Type.TIMEZONE_OVERRIDE) {
|
||||
allowSpecifyingExceptions = true;
|
||||
+ } else {
|
||||
+ Boolean allow = BromiteCustomContentSettingImpl.allowSpecifyingExceptions(mCategory);
|
||||
@@ -711,7 +717,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
}
|
||||
if (allowSpecifyingExceptions) {
|
||||
getPreferenceScreen().addPreference(new AddExceptionPreference(getStyledContext(),
|
||||
@@ -901,6 +914,10 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
@@ -962,6 +977,10 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
TriStateSiteSettingsPreference triStateToggle =
|
||||
(TriStateSiteSettingsPreference) getPreferenceScreen().findPreference(
|
||||
TRI_STATE_TOGGLE_KEY);
|
||||
@@ -722,15 +728,15 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
if (triStateToggle != null)
|
||||
return (triStateToggle.getCheckedSetting() == ContentSettingValues.BLOCK);
|
||||
|
||||
@@ -977,6 +994,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
if (!(mCategory.showSites(SiteSettingsCategory.Type.TIMEZONE_OVERRIDE))) {
|
||||
@@ -1040,6 +1059,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
if (mCategory.getType() != SiteSettingsCategory.Type.TIMEZONE_OVERRIDE) {
|
||||
screen.removePreference(screen.findPreference(TIMEOVERRIDE_INFO_TEXT));
|
||||
}
|
||||
+ BromiteCustomContentSettingImpl.configureGlobalToggles(mCategory, screen);
|
||||
|
||||
if (permissionBlockedByOs) {
|
||||
maybeShowOsWarning(screen);
|
||||
@@ -1089,7 +1107,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
@@ -1171,7 +1191,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
getSiteSettingsDelegate().getBrowserContextHandle(), contentType);
|
||||
int[] descriptionIds =
|
||||
ContentSettingsResources.getTriStateSettingDescriptionIDs(contentType);
|
||||
@@ -739,7 +745,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
}
|
||||
|
||||
private void configureTimeOverrideStateToggle(
|
||||
@@ -1182,6 +1200,14 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
@@ -1282,6 +1302,14 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
|
||||
@ContentSettingValues
|
||||
Integer value = site.getContentSetting(browserContextHandle, contentSettingsType);
|
||||
|
||||
@@ -752,12 +758,12 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
+ }
|
||||
+
|
||||
CharSequence[] descriptions = new String[2];
|
||||
descriptions[0] =
|
||||
getString(ContentSettingsResources.getSiteSummary(contentSettingsType,
|
||||
descriptions[0] = getString(ContentSettingsResources.getSiteSummary(
|
||||
ContentSettingValues.ALLOW, contentSettingsType));
|
||||
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
|
||||
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
|
||||
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
|
||||
@@ -41,6 +41,7 @@ import org.chromium.content_public.browser.BrowserContextHandle;
|
||||
@@ -42,6 +42,7 @@ import org.chromium.content_public.browser.ContentFeatureList;
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
@@ -765,7 +771,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
|
||||
/**
|
||||
* Shows the permissions and other settings for a particular website.
|
||||
@@ -166,7 +167,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
@@ -171,7 +172,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
case ContentSettingsType.CLIPBOARD_READ_WRITE:
|
||||
return "clipboard_permission_list";
|
||||
default:
|
||||
@@ -774,7 +780,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
}
|
||||
}
|
||||
|
||||
@@ -491,7 +492,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
@@ -504,7 +505,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
|
||||
private void setupContentSettingsPreferences() {
|
||||
mMaxPermissionOrder = findPreference(PREF_PERMISSIONS_HEADER).getOrder();
|
||||
@@ -784,7 +790,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
Preference preference = new ChromeSwitchPreference(getStyledContext());
|
||||
preference.setKey(getPreferenceKey(type));
|
||||
|
||||
@@ -901,16 +903,22 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
@@ -952,16 +954,22 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
|
||||
private void setupContentSettingsPreference(Preference preference,
|
||||
@ContentSettingValues @Nullable Integer value, boolean isEmbargoed) {
|
||||
@@ -812,7 +818,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
switchPreference.setOnPreferenceChangeListener(this);
|
||||
@ContentSettingsType
|
||||
int contentType = getContentSettingsTypeFromPreferenceKey(preference.getKey());
|
||||
@@ -1159,7 +1167,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
@@ -1213,7 +1221,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
|
||||
}
|
||||
|
||||
mSite.setContentSetting(browserContextHandle, type, permission);
|
||||
@@ -923,8 +929,8 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java
|
||||
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java
|
||||
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java
|
||||
@@ -259,6 +259,10 @@ public final class Website implements Serializable {
|
||||
ContentSettingsType.TIMEZONE_OVERRIDE, getAddress().getHost(), value, "");
|
||||
@@ -277,6 +277,10 @@ public final class Website implements WebsiteEntry {
|
||||
/*isEmbargoed=*/false);
|
||||
setContentSettingException(type, exception);
|
||||
}
|
||||
+ } else if (exception == null) {
|
||||
@@ -937,7 +943,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java
|
||||
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java
|
||||
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java
|
||||
@@ -89,7 +89,7 @@ public class WebsitePermissionsFetcher {
|
||||
@@ -92,7 +92,7 @@ public class WebsitePermissionsFetcher {
|
||||
case ContentSettingsType.USB_GUARD:
|
||||
return WebsitePermissionsType.CHOSEN_OBJECT_INFO;
|
||||
default:
|
||||
@@ -949,7 +955,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
|
||||
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java
|
||||
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java
|
||||
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePreferenceBridge.java
|
||||
@@ -226,7 +226,7 @@ public class WebsitePreferenceBridge {
|
||||
@@ -246,7 +246,7 @@ public class WebsitePreferenceBridge {
|
||||
case ContentSettingsType.TIMEZONE_OVERRIDE:
|
||||
return true;
|
||||
default:
|
||||
@@ -970,7 +976,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
#include "media/base/android/media_drm_bridge.h"
|
||||
@@ -688,7 +690,10 @@ void ContentSettingsRegistry::Register(
|
||||
@@ -644,7 +646,10 @@ void ContentSettingsRegistry::Register(
|
||||
Platforms platforms,
|
||||
ContentSettingsInfo::IncognitoBehavior incognito_behavior,
|
||||
ContentSettingsInfo::StorageBehavior storage_behavior,
|
||||
@@ -982,7 +988,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
|
||||
// Ensure that nothing has been registered yet for the given type.
|
||||
DCHECK(!website_settings_registry_->Get(type));
|
||||
|
||||
@@ -697,7 +702,9 @@ void ContentSettingsRegistry::Register(
|
||||
@@ -653,7 +658,9 @@ void ContentSettingsRegistry::Register(
|
||||
website_settings_registry_->Register(
|
||||
type, name, std::move(default_value), sync_status,
|
||||
WebsiteSettingsInfo::NOT_LOSSY, scoping_type, platforms,
|
||||
@@ -1038,7 +1044,7 @@ diff --git a/components/content_settings/core/browser/website_settings_info.cc b
|
||||
diff --git a/components/content_settings/core/browser/website_settings_info.h b/components/content_settings/core/browser/website_settings_info.h
|
||||
--- a/components/content_settings/core/browser/website_settings_info.h
|
||||
+++ b/components/content_settings/core/browser/website_settings_info.h
|
||||
@@ -69,7 +69,10 @@ class WebsiteSettingsInfo {
|
||||
@@ -88,7 +88,10 @@ class WebsiteSettingsInfo {
|
||||
SyncStatus sync_status,
|
||||
LossyStatus lossy_status,
|
||||
ScopingType scoping_type,
|
||||
@@ -1050,7 +1056,7 @@ diff --git a/components/content_settings/core/browser/website_settings_info.h b/
|
||||
|
||||
WebsiteSettingsInfo(const WebsiteSettingsInfo&) = delete;
|
||||
WebsiteSettingsInfo& operator=(const WebsiteSettingsInfo&) = delete;
|
||||
@@ -94,6 +97,10 @@ class WebsiteSettingsInfo {
|
||||
@@ -113,6 +116,10 @@ class WebsiteSettingsInfo {
|
||||
ScopingType scoping_type() const { return scoping_type_; }
|
||||
IncognitoBehavior incognito_behavior() const { return incognito_behavior_; }
|
||||
|
||||
@@ -1061,7 +1067,7 @@ diff --git a/components/content_settings/core/browser/website_settings_info.h b/
|
||||
private:
|
||||
const ContentSettingsType type_;
|
||||
const std::string name_;
|
||||
@@ -105,6 +112,9 @@ class WebsiteSettingsInfo {
|
||||
@@ -124,6 +131,9 @@ class WebsiteSettingsInfo {
|
||||
const LossyStatus lossy_status_;
|
||||
const ScopingType scoping_type_;
|
||||
const IncognitoBehavior incognito_behavior_;
|
||||
@@ -1114,7 +1120,7 @@ diff --git a/components/content_settings/core/browser/website_settings_registry.
|
||||
diff --git a/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java b/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java
|
||||
--- a/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java
|
||||
+++ b/components/page_info/android/java/src/org/chromium/components/page_info/PermissionParamsListBuilder.java
|
||||
@@ -109,6 +109,7 @@ public class PermissionParamsListBuilder {
|
||||
@@ -104,6 +104,7 @@ public class PermissionParamsListBuilder {
|
||||
permissionParams.allowed = true;
|
||||
break;
|
||||
case ContentSettingValues.BLOCK:
|
||||
@@ -1133,9 +1139,9 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
|
||||
#include "components/content_settings/core/common/content_settings.h"
|
||||
#include "components/content_settings/core/common/content_settings_types.h"
|
||||
#include "components/page_info/android/jni_headers/PageInfoController_jni.h"
|
||||
@@ -156,6 +157,14 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
permissions_to_display.push_back(ContentSettingsType::VR);
|
||||
permissions_to_display.push_back(ContentSettingsType::AR);
|
||||
@@ -160,6 +161,14 @@ void PageInfoControllerAndroid::SetPermissionInfo(
|
||||
ContentSettingsType::FEDERATED_IDENTITY_API);
|
||||
}
|
||||
|
||||
+ content_settings::WebsiteSettingsRegistry* website_settings =
|
||||
+ content_settings::WebsiteSettingsRegistry::GetInstance();
|
||||
@@ -1147,8 +1153,8 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
|
||||
+
|
||||
std::map<ContentSettingsType, ContentSetting>
|
||||
user_specified_settings_to_display;
|
||||
std::map<ContentSettingsType, bool>
|
||||
@@ -238,6 +247,15 @@ absl::optional<ContentSetting> PageInfoControllerAndroid::GetSettingToDisplay(
|
||||
|
||||
@@ -236,6 +245,15 @@ absl::optional<ContentSetting> PageInfoControllerAndroid::GetSettingToDisplay(
|
||||
// The images content setting should show up if it is blocked globally
|
||||
// to give users an easy way to create exceptions.
|
||||
return permission.default_setting;
|
||||
@@ -1172,10 +1178,10 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
|
||||
#include "components/browsing_data/content/local_storage_helper.h"
|
||||
#include "components/content_settings/browser/page_specific_content_settings.h"
|
||||
+#include "components/content_settings/core/browser/website_settings_registry.h"
|
||||
#include "components/content_settings/browser/ui/cookie_controls_controller.h"
|
||||
#include "components/content_settings/core/browser/content_settings_registry.h"
|
||||
#include "components/content_settings/core/browser/content_settings_utils.h"
|
||||
#include "components/content_settings/core/browser/host_content_settings_map.h"
|
||||
@@ -164,6 +165,15 @@ bool ShouldShowPermission(const PageInfo::PermissionInfo& info,
|
||||
@@ -167,6 +168,15 @@ bool ShouldShowPermission(const PageInfo::PermissionInfo& info,
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -1191,7 +1197,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
|
||||
const bool is_incognito = web_contents->GetBrowserContext()->IsOffTheRecord();
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
// Special geolocation DSE settings apply only on Android, so make sure it
|
||||
@@ -964,7 +974,18 @@ void PageInfo::PresentSitePermissions() {
|
||||
@@ -1150,7 +1160,18 @@ void PageInfo::PresentSitePermissions() {
|
||||
PermissionInfo permission_info;
|
||||
HostContentSettingsMap* content_settings = GetContentSettings();
|
||||
DCHECK(web_contents_);
|
||||
@@ -1222,7 +1228,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in
|
||||
#include "components/omnibox/common/omnibox_features.h"
|
||||
#include "components/page_info/core/features.h"
|
||||
#include "components/page_info/page_info_ui_delegate.h"
|
||||
@@ -559,6 +560,12 @@ std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) {
|
||||
@@ -577,6 +578,12 @@ std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) {
|
||||
if (info.type == type)
|
||||
return l10n_util::GetStringUTF16(info.string_id);
|
||||
}
|
||||
@@ -1235,7 +1241,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in
|
||||
NOTREACHED();
|
||||
return std::u16string();
|
||||
}
|
||||
@@ -570,6 +577,12 @@ std::u16string PageInfoUI::PermissionTypeToUIStringMidSentence(
|
||||
@@ -588,6 +595,12 @@ std::u16string PageInfoUI::PermissionTypeToUIStringMidSentence(
|
||||
if (info.type == type)
|
||||
return l10n_util::GetStringUTF16(info.string_id_mid_sentence);
|
||||
}
|
||||
@@ -1248,7 +1254,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in
|
||||
NOTREACHED();
|
||||
return std::u16string();
|
||||
}
|
||||
@@ -970,6 +983,11 @@ bool PageInfoUI::ContentSettingsTypeInPageInfo(ContentSettingsType type) {
|
||||
@@ -975,6 +988,11 @@ bool PageInfoUI::ContentSettingsTypeInPageInfo(ContentSettingsType type) {
|
||||
if (info.type == type)
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -5,6 +5,9 @@ Subject: Dictionary suggestions for the Omnibox
|
||||
Revert "Disable Dictionary suggestions for the Omnibox"
|
||||
|
||||
This reverts commit d3ec2b2d25066ec089f8351a44b919ded4270e83.
|
||||
|
||||
Original License: BSD-3-Clause - https://spdx.org/licenses/BSD-3-Clause.html
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/android/java/res/layout/url_bar.xml | 1 +
|
||||
.../chrome/browser/omnibox/UrlBar.java | 931 ++++++++++++++++++
|
||||
@@ -15,7 +18,7 @@ This reverts commit d3ec2b2d25066ec089f8351a44b919ded4270e83.
|
||||
diff --git a/chrome/android/java/res/layout/url_bar.xml b/chrome/android/java/res/layout/url_bar.xml
|
||||
--- a/chrome/android/java/res/layout/url_bar.xml
|
||||
+++ b/chrome/android/java/res/layout/url_bar.xml
|
||||
@@ -13,5 +13,6 @@
|
||||
@@ -15,5 +15,6 @@ found in the LICENSE file.
|
||||
android:singleLine="true"
|
||||
android:imeOptions="actionGo|flagNoExtractUi|flagNoFullscreen"
|
||||
android:textSize="@dimen/location_bar_url_text_size"
|
||||
@@ -961,10 +964,10 @@ new file mode 100644
|
||||
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java
|
||||
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java
|
||||
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBar.java
|
||||
@@ -207,8 +207,7 @@ public abstract class UrlBar extends AutocompleteEditText {
|
||||
// the first draw.
|
||||
setFocusable(false);
|
||||
setFocusableInTouchMode(false);
|
||||
@@ -223,8 +223,7 @@ public abstract class UrlBar extends AutocompleteEditText {
|
||||
setFocusableInTouchMode(mAllowFocus);
|
||||
});
|
||||
|
||||
- setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_URI
|
||||
- | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
|
||||
+ setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_URI);
|
||||
|
||||
@@ -2,34 +2,305 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sun, 26 Sep 2021 11:17:53 +0200
|
||||
Subject: Disable AGSA by default
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/flags/android/chrome_feature_list.cc | 2 +-
|
||||
.../org/chromium/chrome/browser/flags/CachedFeatureFlags.java | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
chrome/android/BUILD.gn | 3 ---
|
||||
.../org/chromium/chrome/browser/AppHooks.java | 1 -
|
||||
.../chrome/browser/IntentHandler.java | 5 ----
|
||||
.../chrome/browser/app/ChromeActivity.java | 27 -------------------
|
||||
.../ChromeContextMenuPopulator.java | 7 -----
|
||||
...stomTabActivityClientConnectionKeeper.java | 9 -------
|
||||
.../init/ProcessInitializationHandler.java | 8 ------
|
||||
.../browser/ntp/search/SearchBoxMediator.java | 1 -
|
||||
.../chrome/browser/share/LensUtils.java | 12 +--------
|
||||
.../flags/android/chrome_feature_list.cc | 4 +--
|
||||
chrome/browser/ui/android/omnibox/BUILD.gn | 2 --
|
||||
.../browser/omnibox/LocationBarMediator.java | 1 -
|
||||
12 files changed, 3 insertions(+), 77 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
|
||||
--- a/chrome/android/BUILD.gn
|
||||
+++ b/chrome/android/BUILD.gn
|
||||
@@ -420,7 +420,6 @@ if (current_toolchain == default_toolchain) {
|
||||
"//chrome/browser/first_run/android:java",
|
||||
"//chrome/browser/flags:java",
|
||||
"//chrome/browser/fullscreen/android:java",
|
||||
- "//chrome/browser/gsa:java",
|
||||
"//chrome/browser/history_clusters:java",
|
||||
"//chrome/browser/history_clusters:java_resources",
|
||||
"//chrome/browser/image_descriptions:java",
|
||||
@@ -1015,7 +1014,6 @@ if (current_toolchain == default_toolchain) {
|
||||
"//chrome/browser/flags:flags_junit_tests",
|
||||
"//chrome/browser/flags:java",
|
||||
"//chrome/browser/fullscreen/android:java",
|
||||
- "//chrome/browser/gsa:java",
|
||||
"//chrome/browser/history_clusters:java",
|
||||
"//chrome/browser/image_descriptions:java",
|
||||
"//chrome/browser/image_editor/public:java",
|
||||
@@ -1531,7 +1529,6 @@ if (current_toolchain == default_toolchain) {
|
||||
"//chrome/browser/first_run/android:java",
|
||||
"//chrome/browser/flags:java",
|
||||
"//chrome/browser/fullscreen/android:java",
|
||||
- "//chrome/browser/gsa:java",
|
||||
"//chrome/browser/history_clusters:java",
|
||||
"//chrome/browser/image_descriptions:javatests",
|
||||
"//chrome/browser/incognito:incognito_java_tests",
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java b/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/AppHooks.java
|
||||
@@ -17,7 +17,6 @@ import org.chromium.chrome.browser.directactions.DirectActionCoordinator;
|
||||
import org.chromium.chrome.browser.feedback.FeedbackReporter;
|
||||
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncher;
|
||||
import org.chromium.chrome.browser.feedback.HelpAndFeedbackLauncherImpl;
|
||||
-import org.chromium.chrome.browser.gsa.GSAHelper;
|
||||
import org.chromium.chrome.browser.historyreport.AppIndexingReporter;
|
||||
import org.chromium.chrome.browser.init.ChromeStartupDelegate;
|
||||
import org.chromium.chrome.browser.init.ProcessInitializationHandler;
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/IntentHandler.java
|
||||
@@ -43,7 +43,6 @@ import org.chromium.chrome.browser.document.ChromeLauncherActivity;
|
||||
import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler;
|
||||
import org.chromium.chrome.browser.externalnav.IntentWithRequestMetadataHandler.RequestMetadata;
|
||||
import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
||||
-import org.chromium.chrome.browser.gsa.GSAState;
|
||||
import org.chromium.chrome.browser.offlinepages.OfflinePageUtils;
|
||||
import org.chromium.chrome.browser.omnibox.suggestions.AutocompleteCoordinator;
|
||||
import org.chromium.chrome.browser.profiles.Profile;
|
||||
@@ -267,8 +266,6 @@ public class IntentHandler {
|
||||
private static int sReferrerId;
|
||||
private static String sPendingIncognitoUrl;
|
||||
|
||||
- public static final String PACKAGE_GSA = GSAState.PACKAGE_NAME;
|
||||
-
|
||||
private static final String PACKAGE_GMAIL = "com.google.android.gm";
|
||||
private static final String PACKAGE_PLUS = "com.google.android.apps.plus";
|
||||
private static final String PACKAGE_HANGOUTS = "com.google.android.talk";
|
||||
@@ -498,8 +495,6 @@ public class IntentHandler {
|
||||
return ExternalAppId.LINE;
|
||||
} else if (packageName.equals(PACKAGE_WHATSAPP)) {
|
||||
return ExternalAppId.WHATSAPP;
|
||||
- } else if (packageName.equals(PACKAGE_GSA)) {
|
||||
- return ExternalAppId.GSA;
|
||||
} else if (packageName.equals(ContextUtils.getApplicationContext().getPackageName())) {
|
||||
return ExternalAppId.CHROME;
|
||||
} else if (packageName.startsWith(WEBAPK_PACKAGE_PREFIX)) {
|
||||
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
|
||||
@@ -113,10 +113,6 @@ import org.chromium.chrome.browser.fullscreen.BrowserControlsManager;
|
||||
import org.chromium.chrome.browser.fullscreen.BrowserControlsManagerSupplier;
|
||||
import org.chromium.chrome.browser.fullscreen.FullscreenBackPressHandler;
|
||||
import org.chromium.chrome.browser.fullscreen.FullscreenManager;
|
||||
-import org.chromium.chrome.browser.gsa.ContextReporter;
|
||||
-import org.chromium.chrome.browser.gsa.GSAAccountChangeListener;
|
||||
-import org.chromium.chrome.browser.gsa.GSAContextDisplaySelection;
|
||||
-import org.chromium.chrome.browser.gsa.GSAState;
|
||||
import org.chromium.chrome.browser.history.HistoryManagerUtils;
|
||||
import org.chromium.chrome.browser.init.AsyncInitializationActivity;
|
||||
import org.chromium.chrome.browser.init.ProcessInitializationHandler;
|
||||
@@ -377,8 +373,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
|
||||
private LaunchCauseMetrics mLaunchCauseMetrics;
|
||||
|
||||
- private GSAAccountChangeListener mGSAAccountChangeListener;
|
||||
-
|
||||
// TODO(972867): Pull MenuOrKeyboardActionController out of ChromeActivity.
|
||||
private List<MenuOrKeyboardActionController.MenuOrKeyboardActionHandler> mMenuActionHandlers =
|
||||
new ArrayList<>();
|
||||
@@ -1189,10 +1183,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
|
||||
@Override
|
||||
public void onStopWithNative() {
|
||||
- if (GSAState.getInstance(this).isGsaAvailable() && !SysUtils.isLowEndDevice()) {
|
||||
- if (mGSAAccountChangeListener != null) mGSAAccountChangeListener.disconnect();
|
||||
- }
|
||||
-
|
||||
super.onStopWithNative();
|
||||
}
|
||||
|
||||
@@ -1284,23 +1274,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
|
||||
.recordUserFontPrefOnStartup();
|
||||
});
|
||||
|
||||
- // GSA connection is not needed on low-end devices because Icing is disabled.
|
||||
- if (!SysUtils.isLowEndDevice()) {
|
||||
- if (isActivityFinishingOrDestroyed()) return;
|
||||
- DeferredStartupHandler.getInstance().addDeferredTask(() -> {
|
||||
- if (!GSAState.getInstance(this).isGsaAvailable()) {
|
||||
- ContextReporter.reportStatus(ContextReporter.STATUS_GSA_NOT_AVAILABLE);
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
- if (mGSAAccountChangeListener == null) {
|
||||
- mGSAAccountChangeListener =
|
||||
- GSAAccountChangeListener.create(AppHooks.get().createGsaHelper());
|
||||
- }
|
||||
- mGSAAccountChangeListener.connect();
|
||||
- });
|
||||
- }
|
||||
-
|
||||
DeferredStartupHandler.getInstance().addDeferredTask(
|
||||
() -> { MemoryPurgeManager.getInstance().start(); });
|
||||
}
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/ChromeContextMenuPopulator.java
|
||||
@@ -37,7 +37,6 @@ import org.chromium.chrome.browser.contextmenu.ContextMenuCoordinator.ListItemTy
|
||||
import org.chromium.chrome.browser.feature_engagement.TrackerFactory;
|
||||
import org.chromium.chrome.browser.firstrun.FirstRunStatus;
|
||||
import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
||||
-import org.chromium.chrome.browser.gsa.GSAState;
|
||||
import org.chromium.chrome.browser.lens.LensController;
|
||||
import org.chromium.chrome.browser.lens.LensEntryPoint;
|
||||
import org.chromium.chrome.browser.lens.LensIntentParams;
|
||||
@@ -978,12 +977,6 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
|
||||
LensMetrics.LensSupportStatus.ACTIVITY_NOT_ACCESSIBLE);
|
||||
return false;
|
||||
}
|
||||
- if (GSAState.getInstance(mContext).isAgsaVersionBelowMinimum(
|
||||
- versionName, LensUtils.getMinimumAgsaVersionForLensSupport())) {
|
||||
- LensMetrics.recordLensSupportStatus(
|
||||
- LENS_SUPPORT_STATUS_HISTOGRAM_NAME, LensMetrics.LensSupportStatus.OUT_OF_DATE);
|
||||
- return false;
|
||||
- }
|
||||
|
||||
if (LensUtils.isDeviceOsBelowMinimum()) {
|
||||
LensMetrics.recordLensSupportStatus(
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivityClientConnectionKeeper.java
|
||||
@@ -11,7 +11,6 @@ import org.chromium.base.metrics.RecordHistogram;
|
||||
import org.chromium.chrome.browser.browserservices.intents.BrowserServicesIntentDataProvider;
|
||||
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider;
|
||||
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
|
||||
-import org.chromium.chrome.browser.gsa.GSAState;
|
||||
import org.chromium.chrome.browser.lifecycle.ActivityLifecycleDispatcher;
|
||||
import org.chromium.chrome.browser.lifecycle.StartStopWithNativeObserver;
|
||||
import org.chromium.chrome.browser.tab.Tab;
|
||||
@@ -95,13 +94,5 @@ public class CustomTabActivityClientConnectionKeeper implements StartStopWithNat
|
||||
}
|
||||
}
|
||||
assert status >= 0;
|
||||
-
|
||||
- if (GSAState.isGsaPackageName(packageName)) {
|
||||
- RecordHistogram.recordEnumeratedHistogram("CustomTabs.ConnectionStatusOnReturn.GSA",
|
||||
- status, ConnectionStatus.NUM_ENTRIES);
|
||||
- } else {
|
||||
- RecordHistogram.recordEnumeratedHistogram("CustomTabs.ConnectionStatusOnReturn.NonGSA",
|
||||
- status, ConnectionStatus.NUM_ENTRIES);
|
||||
- }
|
||||
}
|
||||
}
|
||||
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
|
||||
@@ -356,14 +356,6 @@ public class ProcessInitializationHandler {
|
||||
}
|
||||
});
|
||||
|
||||
- deferredStartupHandler.addDeferredTask(new Runnable() {
|
||||
- @Override
|
||||
- public void run() {
|
||||
- // Starts syncing with GSA.
|
||||
- AppHooks.get().createGsaHelper().startSync();
|
||||
- }
|
||||
- });
|
||||
-
|
||||
deferredStartupHandler.addDeferredTask(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/search/SearchBoxMediator.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/search/SearchBoxMediator.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/search/SearchBoxMediator.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/search/SearchBoxMediator.java
|
||||
@@ -13,7 +13,6 @@ import android.view.ViewGroup;
|
||||
|
||||
import androidx.core.graphics.drawable.RoundedBitmapDrawable;
|
||||
|
||||
-import org.chromium.chrome.browser.gsa.GSAState;
|
||||
import org.chromium.chrome.browser.lens.LensController;
|
||||
import org.chromium.chrome.browser.lens.LensEntryPoint;
|
||||
import org.chromium.chrome.browser.lens.LensIntentParams;
|
||||
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java
|
||||
--- a/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java
|
||||
+++ b/chrome/android/java/src/org/chromium/chrome/browser/share/LensUtils.java
|
||||
@@ -10,7 +10,6 @@ import android.text.TextUtils;
|
||||
|
||||
import org.chromium.chrome.browser.IntentHandler;
|
||||
import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
||||
-import org.chromium.chrome.browser.gsa.GSAState;
|
||||
import org.chromium.chrome.browser.lens.LensController;
|
||||
import org.chromium.components.externalauth.ExternalAuthUtils;
|
||||
|
||||
@@ -57,12 +56,7 @@ public class LensUtils {
|
||||
if (context == null) {
|
||||
return "";
|
||||
}
|
||||
- String agsaVersion = GSAState.getInstance(context).getAgsaVersionName();
|
||||
- if (agsaVersion == null) {
|
||||
return "";
|
||||
- } else {
|
||||
- return agsaVersion;
|
||||
- }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -114,11 +108,7 @@ public class LensUtils {
|
||||
* @return Whether the package is valid.
|
||||
*/
|
||||
public static boolean isValidAgsaPackage(final ExternalAuthUtils externalAuthUtils) {
|
||||
- if (sFakePassableLensEnvironmentForTesting) {
|
||||
- return true;
|
||||
- }
|
||||
-
|
||||
- return externalAuthUtils.isGoogleSigned(IntentHandler.PACKAGE_GSA);
|
||||
+ return false;
|
||||
}
|
||||
|
||||
/**
|
||||
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
|
||||
@@ -636,7 +636,7 @@ const base::Feature kDynamicColorButtonsAndroid{
|
||||
"DynamicColorButtonsAndroid", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
@@ -750,8 +750,8 @@ BASE_FEATURE(kDuetTabStripIntegrationAndroid,
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
|
||||
const base::Feature kExperimentsForAgsa{"ExperimentsForAgsa",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kExperimentsForAgsa,
|
||||
- "ExperimentsForAgsa",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "ExperimentsForAgsa", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
const base::Feature kExploreSites{"ExploreSites",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
||||
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
||||
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFeatureFlags.java
|
||||
@@ -90,7 +90,7 @@ public class CachedFeatureFlags {
|
||||
.put(ChromeFeatureList.READ_LATER, false)
|
||||
.put(ChromeFeatureList.CCT_REMOVE_REMOTE_VIEW_IDS, true)
|
||||
.put(ChromeFeatureList.CCT_INCOGNITO, true)
|
||||
- .put(ChromeFeatureList.EXPERIMENTS_FOR_AGSA, true)
|
||||
+ .put(ChromeFeatureList.EXPERIMENTS_FOR_AGSA, false)
|
||||
.put(ChromeFeatureList.APP_MENU_MOBILE_SITE_OPTION, false)
|
||||
.put(ChromeFeatureList.OPTIMIZATION_GUIDE_PUSH_NOTIFICATIONS, false)
|
||||
.put(ChromeFeatureList.NEW_WINDOW_APP_MENU, true)
|
||||
BASE_FEATURE(kExploreSites, "ExploreSites", base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
|
||||
diff --git a/chrome/browser/ui/android/omnibox/BUILD.gn b/chrome/browser/ui/android/omnibox/BUILD.gn
|
||||
--- a/chrome/browser/ui/android/omnibox/BUILD.gn
|
||||
+++ b/chrome/browser/ui/android/omnibox/BUILD.gn
|
||||
@@ -146,7 +146,6 @@ android_library("java") {
|
||||
"//chrome/browser/device:java",
|
||||
"//chrome/browser/feature_engagement:java",
|
||||
"//chrome/browser/flags:java",
|
||||
- "//chrome/browser/gsa:java",
|
||||
"//chrome/browser/history_clusters:java",
|
||||
"//chrome/browser/language/android:java",
|
||||
"//chrome/browser/lens:java",
|
||||
@@ -441,7 +440,6 @@ robolectric_library("junit") {
|
||||
"//chrome/browser/commerce/merchant_viewer/android:java",
|
||||
"//chrome/browser/device:java",
|
||||
"//chrome/browser/flags:java",
|
||||
- "//chrome/browser/gsa:java",
|
||||
"//chrome/browser/lens:java",
|
||||
"//chrome/browser/locale:java",
|
||||
"//chrome/browser/preferences:java",
|
||||
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
|
||||
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
|
||||
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarMediator.java
|
||||
@@ -38,7 +38,6 @@ import org.chromium.chrome.browser.back_press.BackPressManager;
|
||||
import org.chromium.chrome.browser.device.DeviceClassManager;
|
||||
import org.chromium.chrome.browser.flags.ChromeFeatureList;
|
||||
import org.chromium.chrome.browser.flags.ChromeSwitches;
|
||||
-import org.chromium.chrome.browser.gsa.GSAState;
|
||||
import org.chromium.chrome.browser.lens.LensController;
|
||||
import org.chromium.chrome.browser.lens.LensEntryPoint;
|
||||
import org.chromium.chrome.browser.lens.LensIntentParams;
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,6 +2,8 @@ From: uazo <uazo@users.noreply.github.com>
|
||||
Date: Mon, 8 Nov 2021 09:47:23 +0000
|
||||
Subject: Disable Accessibility service by default
|
||||
|
||||
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/ui/android/strings/android_chrome_strings.grd | 6 ++++++
|
||||
.../android/java/res/xml/accessibility_preferences.xml | 5 +++++
|
||||
@@ -12,7 +14,7 @@ Subject: Disable Accessibility service by default
|
||||
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
|
||||
@@ -1420,6 +1420,12 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
@@ -1500,6 +1500,12 @@ Your Google account may have other forms of browsing history like searches and a
|
||||
<message name="IDS_SAFETY_CHECK_BUTTON" desc="Text for the button to start Safety check.">
|
||||
Check now
|
||||
</message>
|
||||
@@ -28,7 +30,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
|
||||
diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
|
||||
--- a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
|
||||
+++ b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
|
||||
@@ -5,6 +5,11 @@
|
||||
@@ -7,6 +7,11 @@ found in the LICENSE file.
|
||||
|
||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
@@ -43,8 +45,8 @@ diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibil
|
||||
diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java
|
||||
--- a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java
|
||||
+++ b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettings.java
|
||||
@@ -17,6 +17,9 @@ import org.chromium.components.browser_ui.accessibility.FontSizePrefs.FontSizePr
|
||||
import org.chromium.components.browser_ui.settings.ChromeBaseCheckBoxPreference;
|
||||
@@ -18,6 +18,9 @@ import org.chromium.components.browser_ui.settings.ChromeBaseCheckBoxPreference;
|
||||
import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
|
||||
import org.chromium.components.browser_ui.settings.SettingsUtils;
|
||||
|
||||
+import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
|
||||
@@ -56,7 +58,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c
|
||||
diff --git a/content/public/android/java/src/org/chromium/content/browser/accessibility/WebContentsAccessibilityImpl.java b/content/public/android/java/src/org/chromium/content/browser/accessibility/WebContentsAccessibilityImpl.java
|
||||
--- a/content/public/android/java/src/org/chromium/content/browser/accessibility/WebContentsAccessibilityImpl.java
|
||||
+++ b/content/public/android/java/src/org/chromium/content/browser/accessibility/WebContentsAccessibilityImpl.java
|
||||
@@ -940,6 +940,11 @@ public class WebContentsAccessibilityImpl extends AccessibilityNodeProviderCompa
|
||||
@@ -900,6 +900,11 @@ public class WebContentsAccessibilityImpl extends AccessibilityNodeProviderCompa
|
||||
structure.setChildCount(0);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -4,26 +4,29 @@ Subject: Disable AsyncDNS by default
|
||||
|
||||
This feature is detrimental to privacy, see also:
|
||||
* https://bugs.chromium.org/p/chromium/issues/detail?id=805020
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/common/chrome_features.cc | 8 ++------
|
||||
1 file changed, 2 insertions(+), 6 deletions(-)
|
||||
chrome/common/chrome_features.cc | 9 ++-------
|
||||
1 file changed, 2 insertions(+), 7 deletions(-)
|
||||
|
||||
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
|
||||
@@ -95,12 +95,8 @@ const base::Feature kArcPiGhostWindow{"ArcPiGhostWindow",
|
||||
@@ -98,13 +98,8 @@ BASE_FEATURE(kAppShimNewCloseBehavior,
|
||||
|
||||
// Enables the built-in DNS resolver.
|
||||
const base::Feature kAsyncDns {
|
||||
- "AsyncDns",
|
||||
-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_ANDROID)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
BASE_FEATURE(kAsyncDns,
|
||||
- "AsyncDns",
|
||||
-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_ANDROID) || \
|
||||
- BUILDFLAG(IS_WIN)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
-#else
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT
|
||||
-#endif
|
||||
+ "AsyncDns", // Bromite guard for this feature to be always disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT // ^
|
||||
};
|
||||
+ "AsyncDns", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT // in Bromite
|
||||
);
|
||||
|
||||
#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
|
||||
--
|
||||
|
||||
@@ -2,19 +2,22 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Fri, 24 Jan 2020 09:46:48 +0100
|
||||
Subject: Disable DRM media origin IDs preprovisioning
|
||||
|
||||
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(-)
|
||||
media/base/media_switches.cc | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
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
|
||||
@@ -703,7 +703,7 @@ const base::Feature kMediaDrmPersistentLicense{
|
||||
@@ -851,8 +851,8 @@ 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",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kMediaDrmPreprovisioning,
|
||||
- "MediaDrmPreprovisioning",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "MediaDrmPreprovisioning", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Determines if MediaDrmOriginIdManager should attempt to pre-provision origin
|
||||
// IDs at startup (whenever a profile is loaded). Also used by tests that
|
||||
|
||||
@@ -6,22 +6,23 @@ Remove UI from the settings and set the flags to inactive
|
||||
Permanently removes FLoC support, disabling the download of LSH clusters,
|
||||
the marking the history navigation and the javascript API and permission policies.
|
||||
Also added the disabling of blink features through the DisabledForBromite tag
|
||||
|
||||
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
|
||||
---
|
||||
.../java/res/xml/privacy_preferences.xml | 4 ---
|
||||
.../privacy/settings/PrivacySettings.java | 22 ------------
|
||||
.../privacy/settings/PrivacySettings.java | 23 ------------
|
||||
.../browser/chrome_content_browser_client.cc | 3 ++
|
||||
.../privacy_sandbox/generated_floc_pref.cc | 2 +-
|
||||
.../history/core/browser/history_backend.cc | 13 +------
|
||||
.../history/core/browser/history_service.cc | 2 +-
|
||||
.../privacy_sandbox/privacy_sandbox_prefs.cc | 4 +--
|
||||
.../privacy_sandbox_settings.cc | 36 +++++++++++--------
|
||||
.../privacy_sandbox/privacy_sandbox_prefs.cc | 2 +-
|
||||
.../privacy_sandbox_settings.cc | 35 +++++++++++--------
|
||||
.../privacy_sandbox_settings.h | 1 -
|
||||
9 files changed, 29 insertions(+), 58 deletions(-)
|
||||
7 files changed, 25 insertions(+), 56 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
--- a/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
|
||||
@@ -65,10 +65,6 @@
|
||||
@@ -68,10 +68,6 @@ found in the LICENSE file.
|
||||
android:title="@string/open_external_links_incognito_title"
|
||||
android:summary="@string/open_external_links_incognito_summary"
|
||||
android:defaultValue="false" />
|
||||
@@ -35,15 +36,16 @@ 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
|
||||
@@ -62,7 +62,6 @@ public class PrivacySettings
|
||||
@@ -58,8 +58,6 @@ public class PrivacySettings
|
||||
private static final String PREF_SECURE_DNS = "secure_dns";
|
||||
private static final String PREF_DO_NOT_TRACK = "do_not_track";
|
||||
private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data";
|
||||
- private static final String PREF_PRIVACY_SANDBOX = "privacy_sandbox";
|
||||
private static final String PREF_PROXY_OPTIONS = "proxy";
|
||||
private static final String PREF_PRIVACY_REVIEW = "privacy_review";
|
||||
- private static final String PREF_PROXY_OPTIONS = "proxy";
|
||||
private static final String PREF_PRIVACY_GUIDE = "privacy_guide";
|
||||
private static final String PREF_INCOGNITO_LOCK = "incognito_lock";
|
||||
@@ -93,21 +92,6 @@ public class PrivacySettings
|
||||
|
||||
@@ -86,21 +84,6 @@ public class PrivacySettings
|
||||
SettingsUtils.addPreferencesFromResource(this, R.xml.privacy_preferences);
|
||||
getActivity().setTitle(R.string.prefs_privacy_security);
|
||||
|
||||
@@ -62,10 +64,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
|
||||
- });
|
||||
- }
|
||||
-
|
||||
Preference privacyReviewPreference = findPreference(PREF_PRIVACY_REVIEW);
|
||||
if (!ChromeFeatureList.isEnabled(ChromeFeatureList.PRIVACY_REVIEW)) {
|
||||
getPreferenceScreen().removePreference(privacyReviewPreference);
|
||||
@@ -239,12 +223,6 @@ public class PrivacySettings
|
||||
Preference privacyGuidePreference = findPreference(PREF_PRIVACY_GUIDE);
|
||||
if (!ChromeFeatureList.isEnabled(ChromeFeatureList.PRIVACY_GUIDE)) {
|
||||
getPreferenceScreen().removePreference(privacyGuidePreference);
|
||||
@@ -220,12 +203,6 @@ public class PrivacySettings
|
||||
secureDnsPref.setSummary(SecureDnsSettings.getSummary(getContext()));
|
||||
}
|
||||
|
||||
@@ -81,9 +83,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
|
||||
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
|
||||
@@ -2824,6 +2824,9 @@ bool ChromeContentBrowserClient::IsConversionMeasurementOperationAllowed(
|
||||
const url::Origin* impression_origin,
|
||||
const url::Origin* conversion_origin,
|
||||
@@ -3231,6 +3231,9 @@ bool ChromeContentBrowserClient::IsAttributionReportingOperationAllowed(
|
||||
const url::Origin* source_origin,
|
||||
const url::Origin* destination_origin,
|
||||
const url::Origin* reporting_origin) {
|
||||
+ // make sure that this is always disabled in Bromite even if privacy sandbox is already disabled in the prefs
|
||||
+ if ((true))
|
||||
@@ -91,22 +93,10 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
|
||||
Profile* profile = Profile::FromBrowserContext(browser_context);
|
||||
|
||||
auto* privacy_sandbox_settings =
|
||||
diff --git a/chrome/browser/privacy_sandbox/generated_floc_pref.cc b/chrome/browser/privacy_sandbox/generated_floc_pref.cc
|
||||
--- a/chrome/browser/privacy_sandbox/generated_floc_pref.cc
|
||||
+++ b/chrome/browser/privacy_sandbox/generated_floc_pref.cc
|
||||
@@ -35,7 +35,7 @@ extensions::settings_private::SetPrefResult GeneratedFlocPref::SetPref(
|
||||
return extensions::settings_private::SetPrefResult::PREF_NOT_MODIFIABLE;
|
||||
|
||||
profile_->GetPrefs()->SetBoolean(prefs::kPrivacySandboxFlocEnabled,
|
||||
- value->GetBool());
|
||||
+ false);
|
||||
|
||||
return extensions::settings_private::SetPrefResult::SUCCESS;
|
||||
}
|
||||
diff --git a/components/history/core/browser/history_backend.cc b/components/history/core/browser/history_backend.cc
|
||||
--- a/components/history/core/browser/history_backend.cc
|
||||
+++ b/components/history/core/browser/history_backend.cc
|
||||
@@ -497,18 +497,7 @@ void HistoryBackend::SetBrowsingTopicsAllowed(ContextID context_id,
|
||||
@@ -517,18 +517,7 @@ void HistoryBackend::SetBrowsingTopicsAllowed(ContextID context_id,
|
||||
if (!visit_id)
|
||||
return;
|
||||
|
||||
@@ -126,22 +116,10 @@ diff --git a/components/history/core/browser/history_backend.cc b/components/his
|
||||
ScheduleCommit();
|
||||
}
|
||||
|
||||
diff --git a/components/history/core/browser/history_service.cc b/components/history/core/browser/history_service.cc
|
||||
--- a/components/history/core/browser/history_service.cc
|
||||
+++ b/components/history/core/browser/history_service.cc
|
||||
@@ -394,7 +394,7 @@ void HistoryService::AddPage(const GURL& url,
|
||||
AddPage(HistoryAddPageArgs(
|
||||
url, time, context_id, nav_entry_id, referrer, redirects, transition,
|
||||
!ui::PageTransitionIsMainFrame(transition), visit_source,
|
||||
- did_replace_entry, /*consider_for_ntp_most_visited=*/true, floc_allowed));
|
||||
+ did_replace_entry, /*consider_for_ntp_most_visited=*/true, /*floc_allowed*/false));
|
||||
}
|
||||
|
||||
void HistoryService::AddPage(const GURL& url,
|
||||
diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/privacy_sandbox/privacy_sandbox_prefs.cc
|
||||
--- a/components/privacy_sandbox/privacy_sandbox_prefs.cc
|
||||
+++ b/components/privacy_sandbox/privacy_sandbox_prefs.cc
|
||||
@@ -71,7 +71,7 @@ namespace privacy_sandbox {
|
||||
@@ -66,7 +66,7 @@ namespace privacy_sandbox {
|
||||
|
||||
void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
registry->RegisterBooleanPref(
|
||||
@@ -149,20 +127,11 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_prefs.cc b/components/pr
|
||||
+ prefs::kPrivacySandboxApisEnabled, false,
|
||||
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
|
||||
registry->RegisterBooleanPref(prefs::kPrivacySandboxApisEnabledV2, false);
|
||||
registry->RegisterBooleanPref(prefs::kPrivacySandboxApisEnabledV2Init, false);
|
||||
@@ -88,7 +88,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
registry->RegisterTimePref(prefs::kPrivacySandboxTopicsDataAccessibleSince,
|
||||
base::Time());
|
||||
registry->RegisterBooleanPref(
|
||||
- prefs::kPrivacySandboxFlocEnabled, true,
|
||||
+ prefs::kPrivacySandboxFlocEnabled, false,
|
||||
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
|
||||
registry->RegisterListPref(prefs::kPrivacySandboxBlockedTopics);
|
||||
registry->RegisterDictionaryPref(prefs::kPrivacySandboxFledgeJoinBlocked);
|
||||
diff --git a/components/privacy_sandbox/privacy_sandbox_settings.cc b/components/privacy_sandbox/privacy_sandbox_settings.cc
|
||||
--- a/components/privacy_sandbox/privacy_sandbox_settings.cc
|
||||
+++ b/components/privacy_sandbox/privacy_sandbox_settings.cc
|
||||
@@ -67,8 +67,7 @@ PrivacySandboxSettings::PrivacySandboxSettings(
|
||||
@@ -68,8 +68,7 @@ PrivacySandboxSettings::PrivacySandboxSettings(
|
||||
: delegate_(std::move(delegate)),
|
||||
host_content_settings_map_(host_content_settings_map),
|
||||
cookie_settings_(cookie_settings),
|
||||
@@ -172,7 +141,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings.cc b/components
|
||||
DCHECK(pref_service_);
|
||||
DCHECK(host_content_settings_map_);
|
||||
DCHECK(cookie_settings_);
|
||||
@@ -88,7 +87,8 @@ PrivacySandboxSettings::PrivacySandboxSettings(
|
||||
@@ -94,7 +93,8 @@ PrivacySandboxSettings::PrivacySandboxSettings(
|
||||
|
||||
PrivacySandboxSettings::~PrivacySandboxSettings() = default;
|
||||
|
||||
@@ -183,46 +152,49 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings.cc b/components
|
||||
// cookies, as there will be no context specific check.
|
||||
const auto cookie_controls_mode =
|
||||
@@ -119,7 +119,8 @@ bool PrivacySandboxSettings::IsTopicsAllowedForContext(
|
||||
cookie_settings);
|
||||
IsPrivacySandboxEnabledForContext(url, top_frame_origin);
|
||||
}
|
||||
|
||||
-bool PrivacySandboxSettings::IsTopicAllowed(const CanonicalTopic& topic) {
|
||||
+bool PrivacySandboxSettings::IsTopicAllowed(const CanonicalTopic& topic) { // disabled in Bromite
|
||||
+ if ((true)) return false;
|
||||
auto* blocked_topics =
|
||||
const auto& blocked_topics =
|
||||
pref_service_->GetList(prefs::kPrivacySandboxBlockedTopics);
|
||||
|
||||
@@ -187,7 +188,8 @@ base::Time PrivacySandboxSettings::TopicsDataAccessibleSince() const {
|
||||
@@ -187,9 +188,8 @@ base::Time PrivacySandboxSettings::TopicsDataAccessibleSince() const {
|
||||
|
||||
bool PrivacySandboxSettings::IsConversionMeasurementAllowed(
|
||||
bool PrivacySandboxSettings::IsAttributionReportingAllowed(
|
||||
const url::Origin& top_frame_origin,
|
||||
- const url::Origin& reporting_origin) const {
|
||||
- return IsPrivacySandboxEnabledForContext(reporting_origin.GetURL(),
|
||||
- top_frame_origin);
|
||||
+ const url::Origin& reporting_origin) const { // disabled in Bromite
|
||||
+ if ((true)) return false;
|
||||
ContentSettingsForOneType cookie_settings;
|
||||
cookie_settings_->GetCookieSettings(&cookie_settings);
|
||||
+ return false;
|
||||
}
|
||||
|
||||
@@ -291,7 +293,8 @@ void PrivacySandboxSettings::ClearFledgeJoiningAllowedSettings(
|
||||
bool PrivacySandboxSettings::MaySendAttributionReport(
|
||||
@@ -278,7 +278,8 @@ void PrivacySandboxSettings::ClearFledgeJoiningAllowedSettings(
|
||||
}
|
||||
|
||||
bool PrivacySandboxSettings::IsFledgeJoiningAllowed(
|
||||
- const url::Origin& top_frame_origin) const {
|
||||
+ const url::Origin& top_frame_origin) const { // disabled in Bromite
|
||||
+ if ((true)) return false;
|
||||
DictionaryPrefUpdate scoped_pref_update(
|
||||
ScopedDictPrefUpdate scoped_pref_update(
|
||||
pref_service_, prefs::kPrivacySandboxFledgeJoinBlocked);
|
||||
auto* pref_data = scoped_pref_update.Get();
|
||||
@@ -338,7 +341,8 @@ std::vector<GURL> PrivacySandboxSettings::FilterFledgeAllowedParties(
|
||||
return allowed_parties;
|
||||
auto& pref_data = scoped_pref_update.Get();
|
||||
@@ -334,7 +335,9 @@ bool PrivacySandboxSettings::IsPrivateAggregationAllowed(
|
||||
top_frame_origin);
|
||||
}
|
||||
|
||||
-bool PrivacySandboxSettings::IsPrivacySandboxEnabled() const {
|
||||
+bool PrivacySandboxSettings::IsPrivacySandboxEnabled() const { // disabled in Bromite
|
||||
+ if ((true)) return false;
|
||||
// If the delegate is restricting access, or indicates confirmation has not
|
||||
// occurred, the Privacy Sandbox is disabled.
|
||||
if (delegate_->IsPrivacySandboxRestricted() ||
|
||||
@@ -356,7 +360,7 @@ bool PrivacySandboxSettings::IsPrivacySandboxEnabled() const {
|
||||
+ if ((true))
|
||||
+ return false;
|
||||
// If the delegate is restricting access the Privacy Sandbox is disabled.
|
||||
if (delegate_->IsPrivacySandboxRestricted())
|
||||
return false;
|
||||
@@ -349,7 +352,7 @@ bool PrivacySandboxSettings::IsPrivacySandboxEnabled() const {
|
||||
// settings is available.
|
||||
if (base::FeatureList::IsEnabled(privacy_sandbox::kPrivacySandboxSettings3)) {
|
||||
// For Privacy Sandbox Settings 3, APIs are disabled in incognito.
|
||||
@@ -231,7 +203,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings.cc b/components
|
||||
return false;
|
||||
|
||||
if (should_override_setting_for_local_testing) {
|
||||
@@ -374,7 +378,8 @@ bool PrivacySandboxSettings::IsPrivacySandboxEnabled() const {
|
||||
@@ -367,7 +370,8 @@ bool PrivacySandboxSettings::IsPrivacySandboxEnabled() const {
|
||||
return pref_service_->GetBoolean(prefs::kPrivacySandboxApisEnabled);
|
||||
}
|
||||
|
||||
@@ -241,7 +213,7 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings.cc b/components
|
||||
// Only apply the decision to the appropriate preference.
|
||||
if (base::FeatureList::IsEnabled(privacy_sandbox::kPrivacySandboxSettings3)) {
|
||||
pref_service_->SetBoolean(prefs::kPrivacySandboxApisEnabledV2, enabled);
|
||||
@@ -383,7 +388,8 @@ void PrivacySandboxSettings::SetPrivacySandboxEnabled(bool enabled) {
|
||||
@@ -376,7 +380,8 @@ void PrivacySandboxSettings::SetPrivacySandboxEnabled(bool enabled) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -251,19 +223,8 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings.cc b/components
|
||||
// The PrivacySandboxSettings is only involved in Trust Token access
|
||||
// decisions when the Release 3 flag is enabled.
|
||||
if (!base::FeatureList::IsEnabled(privacy_sandbox::kPrivacySandboxSettings3))
|
||||
@@ -428,8 +434,8 @@ PrivacySandboxSettings::PrivacySandboxSettings() = default;
|
||||
bool PrivacySandboxSettings::IsPrivacySandboxEnabledForContext(
|
||||
const GURL& url,
|
||||
const absl::optional<url::Origin>& top_frame_origin,
|
||||
- const ContentSettingsForOneType& cookie_settings) const {
|
||||
- if (!IsPrivacySandboxEnabled())
|
||||
+ const ContentSettingsForOneType& cookie_settings) const { // always disable this in Bromite
|
||||
+ if ((true))
|
||||
return false;
|
||||
|
||||
// Third party cookies must also be available for this context. An empty site
|
||||
@@ -438,9 +444,9 @@ bool PrivacySandboxSettings::IsPrivacySandboxEnabledForContext(
|
||||
top_frame_origin);
|
||||
@@ -441,9 +446,9 @@ bool PrivacySandboxSettings::IsPrivacySandboxEnabledForContext(
|
||||
content_settings::CookieSettings::QueryReason::kPrivacySandbox);
|
||||
}
|
||||
|
||||
-void PrivacySandboxSettings::SetTopicsDataAccessibleFromNow() const {
|
||||
@@ -278,9 +239,9 @@ diff --git a/components/privacy_sandbox/privacy_sandbox_settings.cc b/components
|
||||
diff --git a/components/privacy_sandbox/privacy_sandbox_settings.h b/components/privacy_sandbox/privacy_sandbox_settings.h
|
||||
--- a/components/privacy_sandbox/privacy_sandbox_settings.h
|
||||
+++ b/components/privacy_sandbox/privacy_sandbox_settings.h
|
||||
@@ -217,7 +217,6 @@ class PrivacySandboxSettings : public KeyedService {
|
||||
@@ -227,7 +227,6 @@ class PrivacySandboxSettings : public KeyedService {
|
||||
scoped_refptr<content_settings::CookieSettings> cookie_settings_;
|
||||
raw_ptr<PrefService> pref_service_;
|
||||
raw_ptr<PrefService, DanglingUntriaged> pref_service_;
|
||||
PrefChangeRegistrar pref_change_registrar_;
|
||||
- bool incognito_profile_;
|
||||
};
|
||||
|
||||
@@ -2,42 +2,12 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Thu, 12 Oct 2017 08:15:17 +0200
|
||||
Subject: Disable NTP remote suggestions by default
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../chrome/browser/feed/FeedSurfaceMediator.java | 13 ++++++++++---
|
||||
components/feed/core/shared_prefs/pref_names.cc | 4 ++--
|
||||
components/ntp_snippets/features.cc | 4 ++--
|
||||
3 files changed, 14 insertions(+), 7 deletions(-)
|
||||
components/feed/core/shared_prefs/pref_names.cc | 4 ++--
|
||||
components/ntp_snippets/features.cc | 8 ++++----
|
||||
2 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java
|
||||
--- a/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java
|
||||
+++ b/chrome/android/feed/core/java/src/org/chromium/chrome/browser/feed/FeedSurfaceMediator.java
|
||||
@@ -294,9 +294,13 @@ public class FeedSurfaceMediator
|
||||
/** Update the content based on supervised user or enterprise policy. */
|
||||
void updateContent() {
|
||||
mFeedEnabled = FeedFeatures.isFeedEnabled();
|
||||
- if (mFeedEnabled == !mTabToStreamMap.isEmpty()) {
|
||||
- return;
|
||||
- }
|
||||
+ // Bromite needs the next lines removed because mFeedEnabled
|
||||
+ // is always false and mTabToStreamMap never empty
|
||||
+ //
|
||||
+ // addHeaderAndStream is called at least once
|
||||
+ // if (mFeedEnabled == !mTabToStreamMap.isEmpty()) {
|
||||
+ // return;
|
||||
+ // }
|
||||
|
||||
RecyclerView recyclerView = mCoordinator.getRecyclerView();
|
||||
if (mSnapScrollHelper != null && recyclerView != null) {
|
||||
@@ -450,6 +454,9 @@ public class FeedSurfaceMediator
|
||||
}
|
||||
|
||||
private void addHeaderAndStream(String headerText, Stream stream) {
|
||||
+ // Bromite also needs this early return because
|
||||
+ // the first item inserted is the feed setting
|
||||
+ if (FeedFeatures.isFeedEnabled() == false) return;
|
||||
int tabId = mSectionHeaderModel.get(SectionHeaderListProperties.SECTION_HEADERS_KEY).size();
|
||||
mTabToStreamMap.put(tabId, stream);
|
||||
|
||||
diff --git a/components/feed/core/shared_prefs/pref_names.cc b/components/feed/core/shared_prefs/pref_names.cc
|
||||
--- a/components/feed/core/shared_prefs/pref_names.cc
|
||||
+++ b/components/feed/core/shared_prefs/pref_names.cc
|
||||
@@ -55,23 +25,27 @@ diff --git a/components/feed/core/shared_prefs/pref_names.cc b/components/feed/c
|
||||
diff --git a/components/ntp_snippets/features.cc b/components/ntp_snippets/features.cc
|
||||
--- a/components/ntp_snippets/features.cc
|
||||
+++ b/components/ntp_snippets/features.cc
|
||||
@@ -38,7 +38,7 @@ const base::Feature* const kAllFeatures[] = {
|
||||
@@ -39,8 +39,8 @@ const base::Feature* const kAllFeatures[] = {
|
||||
&kOptionalImagesEnabledFeature};
|
||||
|
||||
const base::Feature kArticleSuggestionsFeature{
|
||||
- "NTPArticleSuggestions", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ "NTPArticleSuggestions", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kArticleSuggestionsFeature,
|
||||
- "NTPArticleSuggestions",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "NTPArticleSuggestions", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
const base::Feature kRemoteSuggestionsEmulateM58FetchingSchedule{
|
||||
"RemoteSuggestionsEmulateM58FetchingSchedule",
|
||||
@@ -68,7 +68,7 @@ const char kNotificationsDailyLimit[] = "daily_limit";
|
||||
BASE_FEATURE(kRemoteSuggestionsEmulateM58FetchingSchedule,
|
||||
"RemoteSuggestionsEmulateM58FetchingSchedule",
|
||||
@@ -71,8 +71,8 @@ const char kNotificationsDailyLimit[] = "daily_limit";
|
||||
const char kNotificationsIgnoredLimitParam[] = "ignored_limit";
|
||||
|
||||
const base::Feature kKeepPrefetchedContentSuggestions{
|
||||
- "KeepPrefetchedContentSuggestions", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ "KeepPrefetchedContentSuggestions", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kKeepPrefetchedContentSuggestions,
|
||||
- "KeepPrefetchedContentSuggestions",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "KeepPrefetchedContentSuggestions", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
const base::Feature kOptionalImagesEnabledFeature{
|
||||
"NTPRemoteSuggestionsOptionalImages", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kOptionalImagesEnabledFeature,
|
||||
"NTPRemoteSuggestionsOptionalImages",
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sun, 31 Jul 2022 22:13:11 +0200
|
||||
Subject: Disable PrivacyGuide
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/common/chrome_features.cc | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
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
|
||||
@@ -505,8 +505,8 @@ BASE_FEATURE(kHaTSDesktopDevToolsIssuesCSP,
|
||||
|
||||
// Enables or disables the Happiness Tracking System for Desktop Privacy Guide.
|
||||
BASE_FEATURE(kHappinessTrackingSurveysForDesktopPrivacyGuide,
|
||||
- "HappinessTrackingSurveysForDesktopPrivacyGuide",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "HappinessTrackingSurveysForDesktopPrivacyGuide", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
const base::FeatureParam<base::TimeDelta>
|
||||
kHappinessTrackingSurveysForDesktopPrivacyGuideTime{
|
||||
&kHappinessTrackingSurveysForDesktopPrivacyGuide, "settings-time",
|
||||
@@ -915,11 +915,11 @@ BASE_FEATURE(kPrerenderFallbackToPreconnect,
|
||||
"PrerenderFallbackToPreconnect",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
|
||||
-BASE_FEATURE(kPrivacyGuide2, "PrivacyGuide2", base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+BASE_FEATURE(kPrivacyGuide2, "PrivacyGuide2", base::FEATURE_DISABLED_BY_DEFAULT); // always disabled in Bromite
|
||||
|
||||
BASE_FEATURE(kPrivacyGuideAndroid,
|
||||
- "PrivacyGuideAndroid",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "PrivacyGuideAndroid", // always disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Enables or disables push subscriptions keeping Chrome running in the
|
||||
// background when closed.
|
||||
--
|
||||
2.25.1
|
||||
@@ -0,0 +1,27 @@
|
||||
From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Wed, 16 Nov 2022 11:18:07 +0100
|
||||
Subject: Disable StartSurface feature
|
||||
|
||||
This feature would normally show a search box but leads to crashes.
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/flags/android/chrome_feature_list.cc | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
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
|
||||
@@ -1069,8 +1069,8 @@ BASE_FEATURE(kShowExtendedPreloadingSetting,
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
|
||||
BASE_FEATURE(kStartSurfaceAndroid,
|
||||
- "StartSurfaceAndroid",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "StartSurfaceAndroid", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
BASE_FEATURE(kFeedPositionAndroid,
|
||||
"FeedPositionAndroid",
|
||||
--
|
||||
2.25.1
|
||||
@@ -21,22 +21,25 @@ Two new user configurable flags are introduced:
|
||||
|
||||
See also:
|
||||
* https://arxiv.org/abs/1810.07304
|
||||
|
||||
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/browser/about_flags.cc | 6 +++
|
||||
chrome/browser/flag_descriptions.cc | 8 ++++
|
||||
chrome/browser/flag_descriptions.h | 6 +++
|
||||
net/base/features.cc | 6 +++
|
||||
net/base/features.cc | 8 ++++
|
||||
net/base/features.h | 6 +++
|
||||
net/http/http_network_session.cc | 1 +
|
||||
net/quic/quic_stream_factory.cc | 35 ++++++++++++++++-
|
||||
net/socket/ssl_client_socket_impl.cc | 59 ++++++++++++++++++++++++++++
|
||||
net/socket/ssl_client_socket_impl.h | 2 +
|
||||
9 files changed, 128 insertions(+), 1 deletion(-)
|
||||
9 files changed, 130 insertions(+), 1 deletion(-)
|
||||
|
||||
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
|
||||
@@ -4472,6 +4472,12 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
@@ -5053,6 +5053,12 @@ const FeatureEntry kFeatureEntries[] = {
|
||||
{"enable-tls13-early-data", flag_descriptions::kEnableTLS13EarlyDataName,
|
||||
flag_descriptions::kEnableTLS13EarlyDataDescription, kOsAll,
|
||||
FEATURE_VALUE_TYPE(net::features::kEnableTLS13EarlyData)},
|
||||
@@ -52,7 +55,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
|
||||
@@ -922,6 +922,14 @@ const char kEnableTLS13EarlyDataDescription[] =
|
||||
@@ -994,6 +994,14 @@ const char kEnableTLS13EarlyDataDescription[] =
|
||||
"during the handshake when resuming a connection to a compatible TLS 1.3 "
|
||||
"server.";
|
||||
|
||||
@@ -70,7 +73,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
|
||||
@@ -532,6 +532,12 @@ extern const char kEnablePreinstalledWebAppDuplicationFixerDescription[];
|
||||
@@ -577,6 +577,12 @@ extern const char kEnablePreinstalledWebAppDuplicationFixerDescription[];
|
||||
extern const char kEnableTLS13EarlyDataName[];
|
||||
extern const char kEnableTLS13EarlyDataDescription[];
|
||||
|
||||
@@ -86,39 +89,41 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
|
||||
diff --git a/net/base/features.cc b/net/base/features.cc
|
||||
--- a/net/base/features.cc
|
||||
+++ b/net/base/features.cc
|
||||
@@ -112,6 +112,12 @@ const base::FeatureParam<int> kUseDnsHttpsSvcbExtraTimePercent{
|
||||
const base::Feature kEnableTLS13EarlyData{"EnableTLS13EarlyData",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
@@ -61,6 +61,14 @@ const base::FeatureParam<base::TimeDelta> kUseDnsHttpsSvcbSecureExtraTimeMin{
|
||||
&kUseDnsHttpsSvcb, "UseDnsHttpsSvcbSecureExtraTimeMin",
|
||||
base::Milliseconds(5)};
|
||||
|
||||
+const base::Feature kDisableTLSResumption{"DisableTLSResumption",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kDisableTLSResumption,
|
||||
+ "DisableTLSResumption",
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+
|
||||
+const base::Feature kLogTLSResumption{"LogTLSResumption",
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+BASE_FEATURE(kLogTLSResumption,
|
||||
+ "LogTLSResumption",
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+
|
||||
const base::Feature kEncryptedClientHello{"EncryptedClientHello",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
|
||||
BASE_FEATURE(kUseDnsHttpsSvcbAlpn,
|
||||
"UseDnsHttpsSvcbAlpn",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
diff --git a/net/base/features.h b/net/base/features.h
|
||||
--- a/net/base/features.h
|
||||
+++ b/net/base/features.h
|
||||
@@ -175,6 +175,12 @@ NET_EXPORT extern const base::FeatureParam<int>
|
||||
@@ -91,6 +91,12 @@ NET_EXPORT BASE_DECLARE_FEATURE(kUseDnsHttpsSvcbAlpn);
|
||||
// Enables TLS 1.3 early data.
|
||||
NET_EXPORT extern const base::Feature kEnableTLS13EarlyData;
|
||||
NET_EXPORT BASE_DECLARE_FEATURE(kEnableTLS13EarlyData);
|
||||
|
||||
+// Disables TLS resumption.
|
||||
+NET_EXPORT extern const base::Feature kDisableTLSResumption;
|
||||
+NET_EXPORT BASE_DECLARE_FEATURE(kDisableTLSResumption);
|
||||
+
|
||||
+// Log TLS resumption.
|
||||
+NET_EXPORT extern const base::Feature kLogTLSResumption;
|
||||
+NET_EXPORT BASE_DECLARE_FEATURE(kLogTLSResumption);
|
||||
+
|
||||
// Enables the TLS Encrypted ClientHello feature.
|
||||
// https://datatracker.ietf.org/doc/html/draft-ietf-tls-esni-13
|
||||
NET_EXPORT extern const base::Feature kEncryptedClientHello;
|
||||
NET_EXPORT BASE_DECLARE_FEATURE(kEncryptedClientHello);
|
||||
diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc
|
||||
--- a/net/http/http_network_session.cc
|
||||
+++ b/net/http/http_network_session.cc
|
||||
@@ -232,6 +232,7 @@ HttpNetworkSession::HttpNetworkSession(const HttpNetworkSessionParams& params,
|
||||
@@ -211,6 +211,7 @@ HttpNetworkSession::HttpNetworkSession(const HttpNetworkSessionParams& params,
|
||||
|
||||
next_protos_.push_back(kProtoHTTP11);
|
||||
|
||||
@@ -129,7 +134,7 @@ diff --git a/net/http/http_network_session.cc b/net/http/http_network_session.cc
|
||||
diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc
|
||||
--- a/net/quic/quic_stream_factory.cc
|
||||
+++ b/net/quic/quic_stream_factory.cc
|
||||
@@ -73,6 +73,7 @@
|
||||
@@ -72,6 +72,7 @@
|
||||
#include "net/third_party/quiche/src/quiche/quic/core/quic_utils.h"
|
||||
#include "net/third_party/quiche/src/quiche/quic/platform/api/quic_flags.h"
|
||||
#include "third_party/boringssl/src/include/openssl/aead.h"
|
||||
@@ -137,7 +142,7 @@ diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc
|
||||
#include "url/gurl.h"
|
||||
#include "url/scheme_host_port.h"
|
||||
#include "url/url_constants.h"
|
||||
@@ -229,6 +230,38 @@ std::set<std::string> HostsFromOrigins(std::set<HostPortPair> origins) {
|
||||
@@ -245,6 +246,38 @@ quic::ParsedQuicVersion SelectQuicVersion(
|
||||
|
||||
} // namespace
|
||||
|
||||
@@ -176,10 +181,10 @@ diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc
|
||||
// Refcounted class that owns quic::QuicCryptoClientConfig and tracks how many
|
||||
// consumers are using it currently. When the last reference is freed, the
|
||||
// QuicCryptoClientConfigHandle informs the owning QuicStreamFactory, moves it
|
||||
@@ -2209,7 +2242,7 @@ QuicStreamFactory::CreateCryptoConfigHandle(
|
||||
@@ -2249,7 +2282,7 @@ QuicStreamFactory::CreateCryptoConfigHandle(
|
||||
sct_auditing_delegate_,
|
||||
HostsFromOrigins(params_.origins_to_force_quic_on),
|
||||
actual_network_isolation_key),
|
||||
actual_network_anonymization_key),
|
||||
- std::make_unique<quic::QuicClientSessionCache>(), this);
|
||||
+ std::make_unique<BromiteSessionCache>(), this);
|
||||
|
||||
@@ -188,7 +193,7 @@ diff --git a/net/quic/quic_stream_factory.cc b/net/quic/quic_stream_factory.cc
|
||||
diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket_impl.cc
|
||||
--- a/net/socket/ssl_client_socket_impl.cc
|
||||
+++ b/net/socket/ssl_client_socket_impl.cc
|
||||
@@ -404,7 +404,33 @@ SSLClientSocketImpl::SSLClientSocketImpl(
|
||||
@@ -392,7 +392,33 @@ SSLClientSocketImpl::SSLClientSocketImpl(
|
||||
CHECK(context_);
|
||||
}
|
||||
|
||||
@@ -197,7 +202,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
|
||||
+ LOG(INFO) << "SSL Log: "
|
||||
+ << tag
|
||||
+ << " host: " << host_and_port_.ToString()
|
||||
+ << " NIK: " << ssl_config_.network_isolation_key.ToDebugString();
|
||||
+ << " NIK: " << ssl_config_.network_anonymization_key.ToDebugString();
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
@@ -211,7 +216,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
|
||||
+ LOG(INFO) << "SSL Log: "
|
||||
+ << tag
|
||||
+ << " host: " << host_and_port_.ToString()
|
||||
+ << " NIK: " << ssl_config_.network_isolation_key.ToDebugString()
|
||||
+ << " NIK: " << ssl_config_.network_anonymization_key.ToDebugString()
|
||||
+ << " sessionid: " << base::HexEncode(session_id, len)
|
||||
+ << (ticklen > 0 ? " ticket:" + base::HexEncode(ticket, ticklen) : "");
|
||||
+}
|
||||
@@ -222,7 +227,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
|
||||
Disconnect();
|
||||
}
|
||||
|
||||
@@ -803,6 +829,8 @@ int SSLClientSocketImpl::Init() {
|
||||
@@ -786,6 +812,8 @@ int SSLClientSocketImpl::Init() {
|
||||
}
|
||||
if (session)
|
||||
SSL_set_session(ssl_.get(), session.get());
|
||||
@@ -231,7 +236,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
|
||||
}
|
||||
|
||||
transport_adapter_ = std::make_unique<SocketBIOAdapter>(
|
||||
@@ -1091,6 +1119,35 @@ int SSLClientSocketImpl::DoHandshakeComplete(int result) {
|
||||
@@ -1077,6 +1105,35 @@ int SSLClientSocketImpl::DoHandshakeComplete(int result) {
|
||||
: SSLHandshakeDetails::kTLS13Full;
|
||||
}
|
||||
}
|
||||
@@ -267,7 +272,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
|
||||
UMA_HISTOGRAM_ENUMERATION("Net.SSLHandshakeDetails", details);
|
||||
|
||||
// Measure TLS connections that implement the renegotiation_info extension.
|
||||
@@ -1764,6 +1821,8 @@ bool SSLClientSocketImpl::IsRenegotiationAllowed() const {
|
||||
@@ -1760,6 +1817,8 @@ bool SSLClientSocketImpl::IsRenegotiationAllowed() const {
|
||||
}
|
||||
|
||||
bool SSLClientSocketImpl::IsCachingEnabled() const {
|
||||
@@ -279,7 +284,7 @@ diff --git a/net/socket/ssl_client_socket_impl.cc b/net/socket/ssl_client_socket
|
||||
diff --git a/net/socket/ssl_client_socket_impl.h b/net/socket/ssl_client_socket_impl.h
|
||||
--- a/net/socket/ssl_client_socket_impl.h
|
||||
+++ b/net/socket/ssl_client_socket_impl.h
|
||||
@@ -130,6 +130,8 @@ class SSLClientSocketImpl : public SSLClientSocket,
|
||||
@@ -127,6 +127,8 @@ class SSLClientSocketImpl : public SSLClientSocket,
|
||||
friend class SSLClientSocket;
|
||||
friend class SSLContext;
|
||||
|
||||
|
||||
@@ -3,6 +3,9 @@ Date: Wed, 16 Feb 2022 14:28:58 +0000
|
||||
Subject: Disable UA full version
|
||||
|
||||
getHighEntropyValues will return only the major version
|
||||
|
||||
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
|
||||
---
|
||||
.../renderer/core/frame/navigator_ua_data.cc | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
@@ -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
|
||||
@@ -2,25 +2,26 @@ From: uazo <uazo@users.noreply.github.com>
|
||||
Date: Tue, 25 Jan 2022 12:22:52 +0000
|
||||
Subject: Disable all predictors code
|
||||
|
||||
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_hints_manager.cc | 1 +
|
||||
.../optimization_guide_keyed_service.cc | 1 -
|
||||
chrome/common/chrome_features.cc | 4 ++--
|
||||
chrome/common/chrome_features.cc | 8 ++--
|
||||
.../optimization_guide/core/hints_fetcher.cc | 1 +
|
||||
.../optimization_guide/core/hints_manager.cc | 3 +++
|
||||
.../core/optimization_guide_features.cc | 20 +++++++++----------
|
||||
.../core/prediction_model_download_manager.cc | 4 +++-
|
||||
.../optimization_guide/core/hints_manager.cc | 5 +++
|
||||
.../core/optimization_guide_features.cc | 38 +++++++++----------
|
||||
.../core/prediction_model_download_manager.cc | 6 ++-
|
||||
.../core/prediction_model_fetcher_impl.cc | 1 +
|
||||
components/optimization_guide/features.gni | 4 +---
|
||||
components/permissions/features.cc | 2 +-
|
||||
.../segmentation_platform/public/features.cc | 2 +-
|
||||
third_party/blink/common/features.cc | 2 +-
|
||||
12 files changed, 25 insertions(+), 20 deletions(-)
|
||||
components/optimization_guide/features.gni | 4 +-
|
||||
components/permissions/features.cc | 8 ++--
|
||||
third_party/blink/common/features.cc | 8 +---
|
||||
11 files changed, 40 insertions(+), 41 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/optimization_guide/chrome_hints_manager.cc b/chrome/browser/optimization_guide/chrome_hints_manager.cc
|
||||
--- a/chrome/browser/optimization_guide/chrome_hints_manager.cc
|
||||
+++ b/chrome/browser/optimization_guide/chrome_hints_manager.cc
|
||||
@@ -29,6 +29,7 @@ bool IsAllowedToFetchForNavigationPrediction(
|
||||
@@ -26,6 +26,7 @@ bool IsAllowedToFetchForNavigationPrediction(
|
||||
const absl::optional<NavigationPredictorKeyedService::Prediction>
|
||||
prediction) {
|
||||
DCHECK(prediction);
|
||||
@@ -31,7 +32,7 @@ diff --git a/chrome/browser/optimization_guide/chrome_hints_manager.cc b/chrome/
|
||||
diff --git a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
|
||||
--- a/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
|
||||
+++ b/chrome/browser/optimization_guide/optimization_guide_keyed_service.cc
|
||||
@@ -362,7 +362,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel(
|
||||
@@ -318,7 +318,6 @@ void OptimizationGuideKeyedService::RemoveObserverForOptimizationTargetModel(
|
||||
void OptimizationGuideKeyedService::RegisterOptimizationTypes(
|
||||
const std::vector<optimization_guide::proto::OptimizationType>&
|
||||
optimization_types) {
|
||||
@@ -42,28 +43,32 @@ diff --git a/chrome/browser/optimization_guide/optimization_guide_keyed_service.
|
||||
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
|
||||
@@ -788,7 +788,7 @@ const base::Feature kPermissionAuditing{"PermissionAuditing",
|
||||
@@ -889,8 +889,8 @@ BASE_FEATURE(kPermissionAuditing,
|
||||
// Enables using the prediction service for permission prompts. We will keep
|
||||
// this feature in order to allow us to update the holdback chance via finch.
|
||||
const base::Feature kPermissionPredictions{"PermissionPredictions",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kPermissionPredictions,
|
||||
- "PermissionPredictions",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "PermissionPredictions", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// The holdback chance is 30% but it can also be configured/updated
|
||||
// through finch if needed.
|
||||
@@ -799,7 +799,7 @@ const base::FeatureParam<double> kPermissionPredictionsHoldbackChance(
|
||||
@@ -901,8 +901,8 @@ const base::FeatureParam<double> kPermissionPredictionsHoldbackChance(
|
||||
|
||||
// Enables using the prediction service for geolocation permission prompts.
|
||||
const base::Feature kPermissionGeolocationPredictions{
|
||||
- "PermissionGeolocationPredictions", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+ "PermissionGeolocationPredictions", base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
|
||||
BASE_FEATURE(kPermissionGeolocationPredictions,
|
||||
- "PermissionGeolocationPredictions",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "PermissionGeolocationPredictions", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
const base::FeatureParam<double>
|
||||
kPermissionGeolocationPredictionsHoldbackChance(
|
||||
diff --git a/components/optimization_guide/core/hints_fetcher.cc b/components/optimization_guide/core/hints_fetcher.cc
|
||||
--- a/components/optimization_guide/core/hints_fetcher.cc
|
||||
+++ b/components/optimization_guide/core/hints_fetcher.cc
|
||||
@@ -175,6 +175,7 @@ bool HintsFetcher::FetchOptimizationGuideServiceHints(
|
||||
@@ -174,6 +174,7 @@ bool HintsFetcher::FetchOptimizationGuideServiceHints(
|
||||
optimization_guide::proto::RequestContext request_context,
|
||||
const std::string& locale,
|
||||
HintsFetchedCallback hints_fetched_callback) {
|
||||
@@ -74,7 +79,23 @@ diff --git a/components/optimization_guide/core/hints_fetcher.cc b/components/op
|
||||
diff --git a/components/optimization_guide/core/hints_manager.cc b/components/optimization_guide/core/hints_manager.cc
|
||||
--- a/components/optimization_guide/core/hints_manager.cc
|
||||
+++ b/components/optimization_guide/core/hints_manager.cc
|
||||
@@ -1211,6 +1211,9 @@ OptimizationTypeDecision HintsManager::CanApplyOptimization(
|
||||
@@ -352,6 +352,7 @@ void HintsManager::Shutdown() {
|
||||
OptimizationGuideDecision
|
||||
HintsManager::GetOptimizationGuideDecisionFromOptimizationTypeDecision(
|
||||
OptimizationTypeDecision optimization_type_decision) {
|
||||
+ if ((true)) return OptimizationGuideDecision::kFalse;
|
||||
switch (optimization_type_decision) {
|
||||
case OptimizationTypeDecision::kAllowedByOptimizationFilter:
|
||||
case OptimizationTypeDecision::kAllowedByHint:
|
||||
@@ -1056,6 +1057,7 @@ void HintsManager::CanApplyOptimizationOnDemand(
|
||||
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
|
||||
|
||||
// TODO(crbug/1275612): Check whether we have consent to fetch.
|
||||
+ if ((true)) return; // no consent on bromite
|
||||
|
||||
// This set contains URLs that require some information to be fetched, whether
|
||||
// that be a URL-keyed hint or a host-keyed hint.
|
||||
@@ -1263,6 +1265,9 @@ OptimizationTypeDecision HintsManager::CanApplyOptimization(
|
||||
proto::OptimizationType optimization_type,
|
||||
OptimizationMetadata* optimization_metadata) {
|
||||
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
|
||||
@@ -87,74 +108,84 @@ diff --git a/components/optimization_guide/core/hints_manager.cc b/components/op
|
||||
diff --git a/components/optimization_guide/core/optimization_guide_features.cc b/components/optimization_guide/core/optimization_guide_features.cc
|
||||
--- a/components/optimization_guide/core/optimization_guide_features.cc
|
||||
+++ b/components/optimization_guide/core/optimization_guide_features.cc
|
||||
@@ -79,7 +79,7 @@ bool IsSupportedLocaleForFeature(const std::string locale,
|
||||
@@ -78,17 +78,17 @@ bool IsSupportedLocaleForFeature(const std::string locale,
|
||||
// Enables the syncing of the Optimization Hints component, which provides
|
||||
// hints for what optimizations can be applied on a page load.
|
||||
const base::Feature kOptimizationHints{"OptimizationHints",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
|
||||
// Feature flag that contains a feature param that specifies the field trials
|
||||
// that are allowed to be sent up to the Optimization Guide Server.
|
||||
@@ -88,12 +88,12 @@ const base::Feature kOptimizationHintsFieldTrials{
|
||||
BASE_FEATURE(kOptimizationHints,
|
||||
- "OptimizationHints",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "OptimizationHints", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Enables fetching from a remote Optimization Guide Service.
|
||||
const base::Feature kRemoteOptimizationGuideFetching{
|
||||
- "OptimizationHintsFetching", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ "OptimizationHintsFetching", base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
|
||||
BASE_FEATURE(kRemoteOptimizationGuideFetching,
|
||||
- "OptimizationHintsFetching",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "OptimizationHintsFetching", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
const base::Feature kRemoteOptimizationGuideFetchingAnonymousDataConsent {
|
||||
"OptimizationHintsFetchingAnonymousDataConsent",
|
||||
#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT
|
||||
#else // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_IOS)
|
||||
base::FEATURE_DISABLED_BY_DEFAULT
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
@@ -107,15 +107,15 @@ const base::Feature kContextMenuPerformanceInfoAndRemoteHintFetching{
|
||||
BASE_FEATURE(kRemoteOptimizationGuideFetchingAnonymousDataConsent,
|
||||
- "OptimizationHintsFetchingAnonymousDataConsent",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "OptimizationHintsFetchingAnonymousDataConsent", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Enables performance info in the context menu and fetching from a remote
|
||||
// Optimization Guide Service.
|
||||
@@ -98,17 +98,13 @@ BASE_FEATURE(kContextMenuPerformanceInfoAndRemoteHintFetching,
|
||||
|
||||
// Enables the prediction of optimization targets.
|
||||
const base::Feature kOptimizationTargetPrediction{
|
||||
- "OptimizationTargetPrediction", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ "OptimizationTargetPrediction", base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
|
||||
BASE_FEATURE(kOptimizationTargetPrediction,
|
||||
- "OptimizationTargetPrediction",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "OptimizationTargetPrediction", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Enables the downloading of models.
|
||||
const base::Feature kOptimizationGuideModelDownloading {
|
||||
"OptimizationGuideModelDownloading",
|
||||
#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
BASE_FEATURE(kOptimizationGuideModelDownloading,
|
||||
- "OptimizationGuideModelDownloading",
|
||||
-#if BUILDFLAG(BUILD_WITH_TFLITE_LIB)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
-#else // BUILD_WITH_TFLITE_LIB
|
||||
base::FEATURE_DISABLED_BY_DEFAULT
|
||||
+#else // BUILD_WITH_TFLITE_LIB
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT // guard this
|
||||
#endif // !BUILD_WITH_TFLITE_LIB
|
||||
};
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT
|
||||
-#endif // !BUILD_WITH_TFLITE_LIB
|
||||
+ "OptimizationGuideModelDownloading", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT // in Bromite
|
||||
);
|
||||
|
||||
@@ -141,7 +141,7 @@ const base::Feature kPageEntitiesModelResetOnShutdown{
|
||||
// Enables page content to be annotated.
|
||||
@@ -143,8 +139,8 @@ BASE_FEATURE(kPageEntitiesModelResetOnShutdown,
|
||||
|
||||
// Enables push notification of hints.
|
||||
const base::Feature kPushNotifications{"OptimizationGuidePushNotifications",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
|
||||
BASE_FEATURE(kPushNotifications,
|
||||
- "OptimizationGuidePushNotifications",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "OptimizationGuidePushNotifications", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// This feature flag does not turn off any behavior, it is only used for
|
||||
// experiment parameters.
|
||||
@@ -153,12 +153,12 @@ const base::Feature kOptimizationGuideMetadataValidation{
|
||||
"OptimizationGuideMetadataValidation", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
@@ -158,15 +154,15 @@ BASE_FEATURE(kOptimizationGuideMetadataValidation,
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
|
||||
const base::Feature kPageTopicsBatchAnnotations{
|
||||
- "PageTopicsBatchAnnotations", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ "PageTopicsBatchAnnotations", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
const base::Feature kPageVisibilityBatchAnnotations{
|
||||
"PageVisibilityBatchAnnotations", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kPageTopicsBatchAnnotations,
|
||||
- "PageTopicsBatchAnnotations",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "PageTopicsBatchAnnotations", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
BASE_FEATURE(kPageVisibilityBatchAnnotations,
|
||||
"PageVisibilityBatchAnnotations",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
|
||||
const base::Feature kUseLocalPageEntitiesMetadataProvider{
|
||||
- "UseLocalPageEntitiesMetadataProvider", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+ "UseLocalPageEntitiesMetadataProvider", base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
|
||||
BASE_FEATURE(kUseLocalPageEntitiesMetadataProvider,
|
||||
- "UseLocalPageEntitiesMetadataProvider",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "UseLocalPageEntitiesMetadataProvider", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
const base::Feature kBatchAnnotationsValidation{
|
||||
"BatchAnnotationsValidation", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
@@ -389,7 +389,7 @@ size_t MaxURLKeyedHintCacheSize() {
|
||||
BASE_FEATURE(kPageContentAnnotationsValidation,
|
||||
"PageContentAnnotationsValidation",
|
||||
@@ -414,7 +410,7 @@ size_t MaxURLKeyedHintCacheSize() {
|
||||
|
||||
bool ShouldPersistHintsToDisk() {
|
||||
return GetFieldTrialParamByFeatureAsBool(kOptimizationHints,
|
||||
@@ -166,7 +197,7 @@ diff --git a/components/optimization_guide/core/optimization_guide_features.cc b
|
||||
diff --git a/components/optimization_guide/core/prediction_model_download_manager.cc b/components/optimization_guide/core/prediction_model_download_manager.cc
|
||||
--- a/components/optimization_guide/core/prediction_model_download_manager.cc
|
||||
+++ b/components/optimization_guide/core/prediction_model_download_manager.cc
|
||||
@@ -46,7 +46,7 @@ constexpr char kGoogApiKey[] = "X-Goog-Api-Key";
|
||||
@@ -45,7 +45,7 @@ constexpr char kGoogApiKey[] = "X-Goog-Api-Key";
|
||||
// we require models to come from.
|
||||
constexpr uint8_t kPublisherKeyHash[] = {
|
||||
0x66, 0xa1, 0xd9, 0x3e, 0x4e, 0x5a, 0x66, 0x8a, 0x0f, 0xd3, 0xfa,
|
||||
@@ -175,7 +206,16 @@ diff --git a/components/optimization_guide/core/prediction_model_download_manage
|
||||
0x5c, 0x7f, 0xd0, 0x0c, 0xa1, 0x6e, 0xef, 0xdd, 0x63, 0x7a};
|
||||
const net::NetworkTrafficAnnotationTag
|
||||
kOptimizationGuidePredictionModelsTrafficAnnotation =
|
||||
@@ -106,6 +106,7 @@ PredictionModelDownloadManager::~PredictionModelDownloadManager() = default;
|
||||
@@ -93,7 +93,7 @@ PredictionModelDownloadManager::PredictionModelDownloadManager(
|
||||
const base::FilePath& models_dir_path,
|
||||
scoped_refptr<base::SequencedTaskRunner> background_task_runner)
|
||||
: download_service_(download_service),
|
||||
- is_available_for_downloads_(true),
|
||||
+ is_available_for_downloads_(false),
|
||||
api_key_(features::GetOptimizationGuideServiceAPIKey()),
|
||||
models_dir_path_(models_dir_path),
|
||||
background_task_runner_(background_task_runner) {}
|
||||
@@ -103,6 +103,7 @@ PredictionModelDownloadManager::~PredictionModelDownloadManager() = default;
|
||||
void PredictionModelDownloadManager::StartDownload(
|
||||
const GURL& download_url,
|
||||
proto::OptimizationTarget optimization_target) {
|
||||
@@ -183,18 +223,18 @@ diff --git a/components/optimization_guide/core/prediction_model_download_manage
|
||||
download::DownloadParams download_params;
|
||||
download_params.client =
|
||||
download::DownloadClient::OPTIMIZATION_GUIDE_PREDICTION_MODELS;
|
||||
@@ -240,6 +241,7 @@ void PredictionModelDownloadManager::OnDownloadFailed(
|
||||
@@ -239,6 +240,7 @@ void PredictionModelDownloadManager::OnDownloadFailed(
|
||||
absl::optional<std::pair<base::FilePath, base::FilePath>>
|
||||
PredictionModelDownloadManager::ProcessDownload(
|
||||
const base::FilePath& file_path) {
|
||||
PredictionModelDownloadManager::VerifyDownload(const base::FilePath& file_path,
|
||||
bool delete_file_on_error) {
|
||||
+ if ((true)) return absl::nullopt;
|
||||
DCHECK(background_task_runner_->RunsTasksInCurrentSequence());
|
||||
|
||||
if (!switches::ShouldSkipModelDownloadVerificationForTesting()) {
|
||||
// Verify that the |file_path| contains a valid CRX file.
|
||||
std::string public_key;
|
||||
diff --git a/components/optimization_guide/core/prediction_model_fetcher_impl.cc b/components/optimization_guide/core/prediction_model_fetcher_impl.cc
|
||||
--- a/components/optimization_guide/core/prediction_model_fetcher_impl.cc
|
||||
+++ b/components/optimization_guide/core/prediction_model_fetcher_impl.cc
|
||||
@@ -51,6 +51,7 @@ bool PredictionModelFetcherImpl::FetchOptimizationGuideServiceModels(
|
||||
@@ -50,6 +50,7 @@ bool PredictionModelFetcherImpl::FetchOptimizationGuideServiceModels(
|
||||
proto::RequestContext request_context,
|
||||
const std::string& locale,
|
||||
ModelsFetchedCallback models_fetched_callback) {
|
||||
@@ -219,38 +259,40 @@ diff --git a/components/optimization_guide/features.gni b/components/optimizatio
|
||||
diff --git a/components/permissions/features.cc b/components/permissions/features.cc
|
||||
--- a/components/permissions/features.cc
|
||||
+++ b/components/permissions/features.cc
|
||||
@@ -69,7 +69,7 @@ const base::Feature kPermissionPredictionServiceUseUrlOverride{
|
||||
@@ -85,12 +85,12 @@ BASE_FEATURE(kPermissionChipRequestTypeSensitive,
|
||||
// When enabled, use the value of the `service_url` FeatureParam as the url
|
||||
// for the Web Permission Predictions Service.
|
||||
BASE_FEATURE(kPermissionPredictionServiceUseUrlOverride,
|
||||
- "kPermissionPredictionServiceUseUrlOverride",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "kPermissionPredictionServiceUseUrlOverride", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
const base::Feature kPermissionOnDeviceNotificationPredictions{
|
||||
"PermissionOnDeviceNotificationPredictions",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
|
||||
BASE_FEATURE(kPermissionOnDeviceNotificationPredictions,
|
||||
- "PermissionOnDeviceNotificationPredictions",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "PermissionOnDeviceNotificationPredictions", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
|
||||
diff --git a/components/segmentation_platform/public/features.cc b/components/segmentation_platform/public/features.cc
|
||||
--- a/components/segmentation_platform/public/features.cc
|
||||
+++ b/components/segmentation_platform/public/features.cc
|
||||
@@ -12,7 +12,7 @@ namespace features {
|
||||
const base::Feature kSegmentationPlatformFeature {
|
||||
"SegmentationPlatform",
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT
|
||||
#else
|
||||
base::FEATURE_DISABLED_BY_DEFAULT
|
||||
#endif
|
||||
BASE_FEATURE(kPermissionOnDeviceGeolocationPredictions,
|
||||
"PermissionOnDeviceGeolocationPredictions",
|
||||
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
|
||||
@@ -180,7 +180,7 @@ const base::Feature kViewportHeightClientHintHeader{
|
||||
const base::Feature kNavigationPredictor {
|
||||
"NavigationPredictor",
|
||||
#if BUILDFLAG(IS_ANDROID)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT
|
||||
#else
|
||||
base::FEATURE_DISABLED_BY_DEFAULT
|
||||
#endif
|
||||
@@ -230,12 +230,8 @@ BASE_FEATURE(kMixedContentAutoupgrade,
|
||||
// predictor may preconnect/prefetch to resources/origins to make the
|
||||
// future navigations faster.
|
||||
BASE_FEATURE(kNavigationPredictor,
|
||||
- "NavigationPredictor",
|
||||
-#if BUILDFLAG(IS_ANDROID)
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT
|
||||
-#else
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT
|
||||
-#endif
|
||||
+ "NavigationPredictor", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT // in Bromite
|
||||
);
|
||||
|
||||
// Anchor Element Interaction
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,6 +2,7 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Tue, 12 Jun 2018 15:09:26 +0200
|
||||
Subject: Disable all promo dialogs
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../chrome/browser/tabbed_mode/TabbedRootUiCoordinator.java | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
@@ -9,7 +10,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
|
||||
@@ -863,7 +863,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
|
||||
@@ -856,7 +856,7 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
|
||||
* displayed.
|
||||
*/
|
||||
private boolean triggerPromo(boolean intentWithEffect) {
|
||||
@@ -18,7 +19,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;
|
||||
}
|
||||
@@ -898,8 +898,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
|
||||
@@ -891,8 +891,8 @@ public class TabbedRootUiCoordinator extends RootUiCoordinator {
|
||||
preferenceManager.writeBoolean(
|
||||
ChromePreferenceKeys.PROMOS_SKIPPED_ON_FIRST_START, true);
|
||||
}
|
||||
@@ -28,6 +29,6 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabbed_mode/Tab
|
||||
+ return false;
|
||||
}
|
||||
|
||||
private boolean maybeShowPromo() {
|
||||
@VisibleForTesting
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -7,44 +7,54 @@ support for the AttributionReporting provider. it also removes
|
||||
the handling of attributions via intents between apps.
|
||||
This patch enforces the deactivation by preventing the report from
|
||||
being sent and being saved to disk, although it is currently in uncalled code.
|
||||
|
||||
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
|
||||
---
|
||||
.../flags/android/chrome_feature_list.cc | 2 +-
|
||||
.../embedder_support/origin_trials/features.cc | 3 ++-
|
||||
.../render_view_context_menu_base.cc | 3 ---
|
||||
.../aggregatable_report_sender.cc | 17 ++++++++---------
|
||||
.../attribution_reporting/attribution_host.cc | 1 +
|
||||
.../attribution_report_network_sender.cc | 15 ++++++++-------
|
||||
.../attribution_storage_sql.cc | 2 +-
|
||||
content/browser/storage_partition_impl.cc | 7 +------
|
||||
content/public/browser/navigation_controller.cc | 1 -
|
||||
third_party/blink/common/features.cc | 2 +-
|
||||
.../platform/runtime_enabled_features.json5 | 9 ++++++++-
|
||||
11 files changed, 31 insertions(+), 31 deletions(-)
|
||||
.../browser/flags/android/chrome_feature_list.cc | 4 ++--
|
||||
.../embedder_support/origin_trials/features.cc | 8 ++++----
|
||||
.../render_view_context_menu_base.cc | 3 ---
|
||||
.../aggregatable_report_sender.cc | 15 +++++++--------
|
||||
.../attribution_reporting/attribution_host.cc | 1 +
|
||||
.../attribution_report_network_sender.cc | 11 ++++++++---
|
||||
.../attribution_storage_sql.cc | 8 +++++---
|
||||
content/browser/storage_partition_impl.cc | 7 +------
|
||||
content/public/browser/navigation_controller.cc | 1 -
|
||||
third_party/blink/common/features.cc | 4 ++--
|
||||
.../platform/runtime_enabled_features.json5 | 7 +++++++
|
||||
11 files changed, 37 insertions(+), 32 deletions(-)
|
||||
|
||||
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
|
||||
@@ -442,7 +442,7 @@ const base::Feature kAppMenuMobileSiteOption{"AppMenuMobileSiteOption",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
@@ -522,8 +522,8 @@ BASE_FEATURE(kAppMenuMobileSiteOption,
|
||||
base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
|
||||
const base::Feature kAppToWebAttribution{"AppToWebAttribution",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT}; // guard this
|
||||
BASE_FEATURE(kAppToWebAttribution,
|
||||
- "AppToWebAttribution",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "AppToWebAttribution", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
const base::Feature kBackgroundThreadPool{"BackgroundThreadPool",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kBackgroundThreadPool,
|
||||
"BackgroundThreadPool",
|
||||
diff --git a/components/embedder_support/origin_trials/features.cc b/components/embedder_support/origin_trials/features.cc
|
||||
--- a/components/embedder_support/origin_trials/features.cc
|
||||
+++ b/components/embedder_support/origin_trials/features.cc
|
||||
@@ -17,8 +17,9 @@ const base::Feature kOriginTrialsSampleAPIThirdPartyAlternativeUsage{
|
||||
"OriginTrialsSampleAPIThirdPartyAlternativeUsage",
|
||||
base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
@@ -14,11 +14,11 @@ namespace embedder_support {
|
||||
// Users from control group will have the feature disabled, excluding them
|
||||
// from the origin trial.
|
||||
BASE_FEATURE(kOriginTrialsSampleAPIThirdPartyAlternativeUsage,
|
||||
- "OriginTrialsSampleAPIThirdPartyAlternativeUsage",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "OriginTrialsSampleAPIThirdPartyAlternativeUsage", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
+// When disabled, the API cannot be enabled by tokens.
|
||||
const base::Feature kConversionMeasurementAPIAlternativeUsage{
|
||||
"ConversionMeasurementAPIAlternativeUsage",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kConversionMeasurementAPIAlternativeUsage,
|
||||
- "ConversionMeasurementAPIAlternativeUsage",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "ConversionMeasurementAPIAlternativeUsage", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
} // namespace embedder_support
|
||||
diff --git a/components/renderer_context_menu/render_view_context_menu_base.cc b/components/renderer_context_menu/render_view_context_menu_base.cc
|
||||
@@ -63,7 +73,7 @@ diff --git a/components/renderer_context_menu/render_view_context_menu_base.cc b
|
||||
diff --git a/content/browser/aggregation_service/aggregatable_report_sender.cc b/content/browser/aggregation_service/aggregatable_report_sender.cc
|
||||
--- a/content/browser/aggregation_service/aggregatable_report_sender.cc
|
||||
+++ b/content/browser/aggregation_service/aggregatable_report_sender.cc
|
||||
@@ -137,19 +137,18 @@ void AggregatableReportSender::SendReport(const GURL& url,
|
||||
@@ -136,19 +136,18 @@ void AggregatableReportSender::SendReport(const GURL& url,
|
||||
// Allow bodies of non-2xx responses to be returned.
|
||||
simple_url_loader_ptr->SetAllowHttpErrorResults(true);
|
||||
|
||||
@@ -90,46 +100,35 @@ diff --git a/content/browser/aggregation_service/aggregatable_report_sender.cc b
|
||||
RequestStatus status;
|
||||
|
||||
absl::optional<int> http_response_code;
|
||||
@@ -189,4 +188,4 @@ void AggregatableReportSender::OnReportSent(
|
||||
std::move(callback).Run(status);
|
||||
}
|
||||
|
||||
-} // namespace content
|
||||
\ No newline at end of file
|
||||
+} // namespace content
|
||||
diff --git a/content/browser/attribution_reporting/attribution_host.cc b/content/browser/attribution_reporting/attribution_host.cc
|
||||
--- a/content/browser/attribution_reporting/attribution_host.cc
|
||||
+++ b/content/browser/attribution_reporting/attribution_host.cc
|
||||
@@ -141,6 +141,7 @@ void AttributionHost::DidFinishNavigation(NavigationHandle* navigation_handle) {
|
||||
@@ -126,6 +126,7 @@ void AttributionHost::DidRedirectNavigation(
|
||||
return;
|
||||
}
|
||||
|
||||
+ if ((true)) return;
|
||||
AttributionManager* attribution_manager =
|
||||
attribution_manager_provider_->GetManager(web_contents());
|
||||
if (!attribution_manager) {
|
||||
AttributionManager::FromWebContents(web_contents());
|
||||
if (!attribution_manager)
|
||||
diff --git a/content/browser/attribution_reporting/attribution_report_network_sender.cc b/content/browser/attribution_reporting/attribution_report_network_sender.cc
|
||||
--- a/content/browser/attribution_reporting/attribution_report_network_sender.cc
|
||||
+++ b/content/browser/attribution_reporting/attribution_report_network_sender.cc
|
||||
@@ -118,13 +118,8 @@ void AttributionReportNetworkSender::SendReport(
|
||||
@@ -132,9 +132,8 @@ void AttributionReportNetworkSender::SendReport(GURL url,
|
||||
network::SimpleURLLoader::RETRY_ON_NAME_NOT_RESOLVED;
|
||||
simple_url_loader_ptr->SetRetryOptions(/*max_retries=*/1, retry_mode);
|
||||
|
||||
- // Unretained is safe because the URLLoader is owned by |this| and will be
|
||||
- // deleted before |this|.
|
||||
- simple_url_loader_ptr->DownloadHeadersOnly(
|
||||
- url_loader_factory_.get(),
|
||||
- base::BindOnce(&AttributionReportNetworkSender::OnReportSent,
|
||||
- base::Unretained(this), std::move(it), std::move(report),
|
||||
- is_debug_report, std::move(sent_callback)));
|
||||
- base::BindOnce(std::move(callback), std::move(it)));
|
||||
+ // this is never called on Bromite but nothing would be sent if it were
|
||||
+ OnReportSent(std::move(it), report, is_debug_report, std::move(sent_callback), nullptr);
|
||||
}
|
||||
|
||||
void AttributionReportNetworkSender::SetURLLoaderFactoryForTesting(
|
||||
@@ -138,6 +133,12 @@ void AttributionReportNetworkSender::OnReportSent(
|
||||
bool is_debug_report,
|
||||
void AttributionReportNetworkSender::OnReportSent(
|
||||
@@ -143,6 +142,12 @@ void AttributionReportNetworkSender::OnReportSent(
|
||||
ReportSentCallback sent_callback,
|
||||
UrlLoaderList::iterator it,
|
||||
scoped_refptr<net::HttpResponseHeaders> headers) {
|
||||
+ if ((true)) {
|
||||
+ std::move(sent_callback)
|
||||
@@ -143,21 +142,34 @@ diff --git a/content/browser/attribution_reporting/attribution_report_network_se
|
||||
diff --git a/content/browser/attribution_reporting/attribution_storage_sql.cc b/content/browser/attribution_reporting/attribution_storage_sql.cc
|
||||
--- a/content/browser/attribution_reporting/attribution_storage_sql.cc
|
||||
+++ b/content/browser/attribution_reporting/attribution_storage_sql.cc
|
||||
@@ -358,7 +358,7 @@ void AttributionStorageSql::RunInMemoryForTesting() {
|
||||
@@ -514,6 +514,8 @@ DestinationLimitResult GetDestinationLimitResult(
|
||||
}
|
||||
}
|
||||
|
||||
// static
|
||||
-bool AttributionStorageSql::g_run_in_memory_ = false;
|
||||
+bool AttributionStorageSql::g_run_in_memory_ = true;
|
||||
+bool g_run_in_memory = true;
|
||||
+
|
||||
} // namespace
|
||||
|
||||
// static
|
||||
@@ -525,9 +527,9 @@ bool AttributionStorageSql::DeleteStorageForTesting(
|
||||
AttributionStorageSql::AttributionStorageSql(
|
||||
const base::FilePath& path_to_database,
|
||||
const base::FilePath& user_data_directory,
|
||||
std::unique_ptr<AttributionStorageDelegate> delegate)
|
||||
- : path_to_database_(user_data_directory.empty()
|
||||
- ? base::FilePath()
|
||||
- : DatabasePath(user_data_directory)),
|
||||
+ : path_to_database_(user_data_directory.empty() || g_run_in_memory
|
||||
+ ? base::FilePath()
|
||||
+ : DatabasePath(user_data_directory)),
|
||||
delegate_(std::move(delegate)),
|
||||
rate_limit_table_(delegate_.get()) {
|
||||
DCHECK(delegate_);
|
||||
diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage_partition_impl.cc
|
||||
--- a/content/browser/storage_partition_impl.cc
|
||||
+++ b/content/browser/storage_partition_impl.cc
|
||||
@@ -1304,12 +1304,7 @@ void StoragePartitionImpl::Initialize(
|
||||
@@ -1358,12 +1358,7 @@ void StoragePartitionImpl::Initialize(
|
||||
|
||||
bucket_manager_ = std::make_unique<BucketManager>(quota_manager_proxy);
|
||||
bucket_manager_ = std::make_unique<BucketManager>(this);
|
||||
|
||||
- // The Conversion Measurement API is not available in Incognito mode.
|
||||
- if (!is_in_memory() &&
|
||||
@@ -168,11 +180,11 @@ diff --git a/content/browser/storage_partition_impl.cc b/content/browser/storage
|
||||
+ // The Conversion Measurement API is not available in Bromite.
|
||||
|
||||
if (base::FeatureList::IsEnabled(blink::features::kInterestGroupStorage)) {
|
||||
interest_group_manager_ = std::make_unique<InterestGroupManagerImpl>(
|
||||
// Auction worklets on non-Android use dedicated processes; on Android due
|
||||
diff --git a/content/public/browser/navigation_controller.cc b/content/public/browser/navigation_controller.cc
|
||||
--- a/content/public/browser/navigation_controller.cc
|
||||
+++ b/content/public/browser/navigation_controller.cc
|
||||
@@ -36,7 +36,6 @@ NavigationController::LoadURLParams::LoadURLParams(const OpenURLParams& input)
|
||||
@@ -39,7 +39,6 @@ NavigationController::LoadURLParams::LoadURLParams(const OpenURLParams& input)
|
||||
blob_url_loader_factory(input.blob_url_loader_factory),
|
||||
href_translate(input.href_translate),
|
||||
reload_type(input.reload_type),
|
||||
@@ -183,19 +195,21 @@ diff --git a/content/public/browser/navigation_controller.cc b/content/public/br
|
||||
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
|
||||
@@ -49,7 +49,7 @@ const base::Feature kCSSContainerQueries{"CSSContainerQueries",
|
||||
@@ -121,8 +121,8 @@ BASE_FEATURE(kBlockingDownloadsInAdFrameWithoutUserActivation,
|
||||
|
||||
// Controls whether the Conversion Measurement API infrastructure is enabled.
|
||||
const base::Feature kConversionMeasurement{"ConversionMeasurement",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kConversionMeasurement,
|
||||
- "ConversionMeasurement",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "ConversionMeasurement", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Controls whether LCP calculations should exclude low-entropy images. If
|
||||
// enabled, then the associated parameter sets the cutoff, expressed as the
|
||||
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
|
||||
@@ -106,6 +106,13 @@
|
||||
@@ -201,6 +201,13 @@
|
||||
},
|
||||
|
||||
data: [
|
||||
@@ -209,14 +223,5 @@ diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5
|
||||
{
|
||||
name: "AbortSignalThrowIfAborted",
|
||||
status: "stable",
|
||||
@@ -482,7 +489,7 @@
|
||||
},
|
||||
{
|
||||
name: "ConversionMeasurement",
|
||||
- status: "test",
|
||||
+ depends_on: ["DisabledForBromite"],
|
||||
},
|
||||
{
|
||||
name: "CooperativeScheduling"
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,6 +2,7 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sat, 9 Apr 2022 21:43:35 +0200
|
||||
Subject: Disable crash reporting
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
content/public/common/content_features.cc | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
@@ -9,14 +10,14 @@ Subject: Disable crash reporting
|
||||
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
|
||||
@@ -234,8 +234,8 @@ const base::Feature kCooperativeScheduling{"CooperativeScheduling",
|
||||
|
||||
@@ -251,8 +251,8 @@ BASE_FEATURE(kCooperativeScheduling,
|
||||
// Enables crash reporting via Reporting API.
|
||||
// https://www.w3.org/TR/reporting/#crash-report
|
||||
-const base::Feature kCrashReporting{"CrashReporting",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+const base::Feature kCrashReporting{"CrashReporting", // disabled by default on Bromite
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT}; // ^
|
||||
BASE_FEATURE(kCrashReporting,
|
||||
- "CrashReporting",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "CrashReporting", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Enables support for the `Critical-CH` response header.
|
||||
// https://github.com/WICG/client-hints-infrastructure/blob/master/reliability.md#critical-ch
|
||||
|
||||
@@ -2,16 +2,16 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Thu, 19 Dec 2019 22:52:53 +0100
|
||||
Subject: Disable feeds support by default
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../org/chromium/chrome/browser/feed/FeedFeatures.java | 8 +-------
|
||||
.../chromium/chrome/browser/flags/CachedFeatureFlags.java | 2 +-
|
||||
components/feed/feed_feature_list.cc | 4 ++--
|
||||
3 files changed, 4 insertions(+), 10 deletions(-)
|
||||
components/feed/feed_feature_list.cc | 8 ++++----
|
||||
2 files changed, 5 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/feed/FeedFeatures.java b/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/feed/FeedFeatures.java
|
||||
--- a/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/feed/FeedFeatures.java
|
||||
+++ b/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/feed/FeedFeatures.java
|
||||
@@ -43,13 +43,7 @@ public final class FeedFeatures {
|
||||
@@ -48,13 +48,7 @@ public final class FeedFeatures {
|
||||
* the user is signed in and confirms it's not a child profile.
|
||||
*/
|
||||
public static boolean isWebFeedUIEnabled() {
|
||||
@@ -25,36 +25,28 @@ diff --git a/chrome/browser/feed/android/java/src/org/chromium/chrome/browser/fe
|
||||
+ return false;
|
||||
}
|
||||
|
||||
/**
|
||||
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
|
||||
@@ -82,7 +82,7 @@ public class CachedFeatureFlags {
|
||||
.put(ChromeFeatureList.TAB_TO_GTS_ANIMATION, true)
|
||||
.put(ChromeFeatureList.TEST_DEFAULT_DISABLED, false)
|
||||
.put(ChromeFeatureList.TEST_DEFAULT_ENABLED, true)
|
||||
- .put(ChromeFeatureList.INTEREST_FEED_V2, true)
|
||||
+ .put(ChromeFeatureList.INTEREST_FEED_V2, false)
|
||||
.put(ChromeFeatureList.THEME_REFACTOR_ANDROID, true)
|
||||
.put(ChromeFeatureList.USE_CHIME_ANDROID_SDK, false)
|
||||
.put(ChromeFeatureList.CCT_INCOGNITO_AVAILABLE_TO_THIRD_PARTY, false)
|
||||
public static boolean shouldUseWebFeedAwarenessIPH() {
|
||||
diff --git a/components/feed/feed_feature_list.cc b/components/feed/feed_feature_list.cc
|
||||
--- a/components/feed/feed_feature_list.cc
|
||||
+++ b/components/feed/feed_feature_list.cc
|
||||
@@ -12,12 +12,12 @@
|
||||
@@ -17,14 +17,14 @@
|
||||
namespace feed {
|
||||
|
||||
const base::Feature kInterestFeedContentSuggestions{
|
||||
- "InterestFeedContentSuggestions", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ "InterestFeedContentSuggestions", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kInterestFeedContentSuggestions,
|
||||
- "InterestFeedContentSuggestions",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "InterestFeedContentSuggestions", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // by default in Bromite
|
||||
// InterestFeedV2 takes precedence over InterestFeedContentSuggestions.
|
||||
// InterestFeedV2 is cached in ChromeCachedFlags. If the default value here is
|
||||
// changed, please update the cached one's default value in CachedFeatureFlags.
|
||||
const base::Feature kInterestFeedV2{"InterestFeedV2",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kInterestFeedV2,
|
||||
- "InterestFeedV2",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "InterestFeedV2", // must be disabled
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // by default in Bromite
|
||||
|
||||
const base::Feature kInterestFeedV2Autoplay{"InterestFeedV2Autoplay",
|
||||
base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kInterestFeedV2Autoplay,
|
||||
"InterestFeedV2Autoplay",
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,24 +2,28 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sun, 8 Jul 2018 18:16:34 +0200
|
||||
Subject: Disable fetching of all field trials
|
||||
|
||||
Disable seed-based field trials
|
||||
Disable seed-based field trials.
|
||||
Disable reporting of Omnibox suggestions header.
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
android_webview/nonembedded/BUILD.gn | 2 --
|
||||
.../services/VariationsSeedServer.java | 2 --
|
||||
.../chrome_metrics_services_manager_client.cc | 2 ++
|
||||
components/ukm/ukm_recorder_impl.cc | 3 ++
|
||||
.../metrics/chrome_browser_sampling_trials.cc | 4 +++
|
||||
components/ukm/ukm_recorder_impl.cc | 3 +++
|
||||
.../firstrun/VariationsSeedBridge.java | 2 +-
|
||||
.../firstrun/VariationsSeedFetcher.java | 28 ++++---------------
|
||||
.../variations/net/omnibox_http_headers.cc | 2 +-
|
||||
.../variations/net/variations_http_headers.cc | 3 ++
|
||||
.../service/variations_field_trial_creator.cc | 3 +-
|
||||
.../variations/service/variations_service.cc | 15 ++--------
|
||||
10 files changed, 21 insertions(+), 41 deletions(-)
|
||||
.../firstrun/VariationsSeedFetcher.java | 26 ++++---------------
|
||||
.../variations/net/omnibox_http_headers.cc | 4 +--
|
||||
.../variations/net/variations_http_headers.cc | 3 +++
|
||||
.../service/variations_field_trial_creator.cc | 3 ++-
|
||||
.../variations/service/variations_service.cc | 15 +++--------
|
||||
.../renderer/core/loader/document_loader.cc | 7 -----
|
||||
11 files changed, 23 insertions(+), 48 deletions(-)
|
||||
|
||||
diff --git a/android_webview/nonembedded/BUILD.gn b/android_webview/nonembedded/BUILD.gn
|
||||
--- a/android_webview/nonembedded/BUILD.gn
|
||||
+++ b/android_webview/nonembedded/BUILD.gn
|
||||
@@ -101,7 +101,6 @@ android_library("services_java") {
|
||||
@@ -107,7 +107,6 @@ android_library("services_java") {
|
||||
sources = [
|
||||
"java/src/org/chromium/android_webview/services/AwMinidumpUploadJobService.java",
|
||||
"java/src/org/chromium/android_webview/services/AwMinidumpUploaderDelegate.java",
|
||||
@@ -27,10 +31,10 @@ diff --git a/android_webview/nonembedded/BUILD.gn b/android_webview/nonembedded/
|
||||
"java/src/org/chromium/android_webview/services/ComponentUpdaterSafeModeUtils.java",
|
||||
"java/src/org/chromium/android_webview/services/ComponentsProviderPathUtil.java",
|
||||
"java/src/org/chromium/android_webview/services/ComponentsProviderService.java",
|
||||
@@ -112,7 +111,6 @@ android_library("services_java") {
|
||||
"java/src/org/chromium/android_webview/services/MetricsUploadService.java",
|
||||
"java/src/org/chromium/android_webview/services/SafeModeContentProvider.java",
|
||||
@@ -120,7 +119,6 @@ android_library("services_java") {
|
||||
"java/src/org/chromium/android_webview/services/SafeModeService.java",
|
||||
"java/src/org/chromium/android_webview/services/ServicesStatsHelper.java",
|
||||
"java/src/org/chromium/android_webview/services/StartupFeatureMetadataHolder.java",
|
||||
- "java/src/org/chromium/android_webview/services/VariationsSeedHolder.java",
|
||||
"java/src/org/chromium/android_webview/services/VariationsSeedServer.java",
|
||||
]
|
||||
@@ -38,7 +42,7 @@ diff --git a/android_webview/nonembedded/BUILD.gn b/android_webview/nonembedded/
|
||||
diff --git a/android_webview/nonembedded/java/src/org/chromium/android_webview/services/VariationsSeedServer.java b/android_webview/nonembedded/java/src/org/chromium/android_webview/services/VariationsSeedServer.java
|
||||
--- a/android_webview/nonembedded/java/src/org/chromium/android_webview/services/VariationsSeedServer.java
|
||||
+++ b/android_webview/nonembedded/java/src/org/chromium/android_webview/services/VariationsSeedServer.java
|
||||
@@ -30,8 +30,6 @@ public class VariationsSeedServer extends Service {
|
||||
@@ -31,8 +31,6 @@ public class VariationsSeedServer extends Service {
|
||||
@Override
|
||||
public void getSeed(ParcelFileDescriptor newSeedFile, long oldSeedDate,
|
||||
IVariationsSeedServerCallback callback) {
|
||||
@@ -47,31 +51,40 @@ diff --git a/android_webview/nonembedded/java/src/org/chromium/android_webview/s
|
||||
}
|
||||
};
|
||||
|
||||
diff --git a/chrome/browser/metrics/chrome_metrics_services_manager_client.cc b/chrome/browser/metrics/chrome_metrics_services_manager_client.cc
|
||||
--- a/chrome/browser/metrics/chrome_metrics_services_manager_client.cc
|
||||
+++ b/chrome/browser/metrics/chrome_metrics_services_manager_client.cc
|
||||
@@ -189,6 +189,8 @@ ChromeMetricsServicesManagerClient::GetMetricsStateManagerForTesting() {
|
||||
void ChromeMetricsServicesManagerClient::CreateFallbackSamplingTrial(
|
||||
version_info::Channel channel,
|
||||
diff --git a/chrome/browser/metrics/chrome_browser_sampling_trials.cc b/chrome/browser/metrics/chrome_browser_sampling_trials.cc
|
||||
--- a/chrome/browser/metrics/chrome_browser_sampling_trials.cc
|
||||
+++ b/chrome/browser/metrics/chrome_browser_sampling_trials.cc
|
||||
@@ -54,6 +54,8 @@ void CreateFallbackSamplingTrial(
|
||||
const std::string& feature_name,
|
||||
const int sampled_in_rate_per_mille,
|
||||
base::FeatureList* feature_list) {
|
||||
+ if ((true))
|
||||
+ return;
|
||||
// The trial name must be kept in sync with the server config controlling
|
||||
// sampling. If they don't match, then clients will be shuffled into different
|
||||
// groups when the server config takes over from the fallback trial.
|
||||
diff --git a/components/ukm/ukm_recorder_impl.cc b/components/ukm/ukm_recorder_impl.cc
|
||||
--- a/components/ukm/ukm_recorder_impl.cc
|
||||
+++ b/components/ukm/ukm_recorder_impl.cc
|
||||
@@ -192,6 +192,9 @@ UkmRecorderImpl::~UkmRecorderImpl() = default;
|
||||
void UkmRecorderImpl::CreateFallbackSamplingTrial(
|
||||
scoped_refptr<base::FieldTrial> trial(
|
||||
base::FieldTrialList::FactoryGetFieldTrial(
|
||||
trial_name, /*total_probability=*/1000, "Default", entropy_provider));
|
||||
@@ -93,6 +95,8 @@ void CreateFallbackUkmSamplingTrial(
|
||||
const base::FieldTrial::EntropyProvider& entropy_provider,
|
||||
bool is_stable_channel,
|
||||
base::FeatureList* feature_list) {
|
||||
+ if ((true))
|
||||
+ return;
|
||||
+
|
||||
static const char kSampledGroup_Stable[] = "Sampled_NoSeed_Stable";
|
||||
static const char kSampledGroup_Other[] = "Sampled_NoSeed_Other";
|
||||
const char* sampled_group = kSampledGroup_Other;
|
||||
diff --git a/components/ukm/ukm_recorder_impl.cc b/components/ukm/ukm_recorder_impl.cc
|
||||
--- a/components/ukm/ukm_recorder_impl.cc
|
||||
+++ b/components/ukm/ukm_recorder_impl.cc
|
||||
@@ -206,6 +206,9 @@ bool HasUnknownMetrics(const builders::DecodeMap& decode_map,
|
||||
|
||||
UkmRecorderImpl::UkmRecorderImpl()
|
||||
: sampling_seed_(static_cast<uint32_t>(base::RandUint64())) {
|
||||
+ if ((true))
|
||||
+ return;
|
||||
+
|
||||
max_kept_sources_ =
|
||||
static_cast<size_t>(base::GetFieldTrialParamByFeatureAsInt(
|
||||
kUkmFeature, "MaxKeptSources", max_kept_sources_));
|
||||
diff --git a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedBridge.java b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedBridge.java
|
||||
--- a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedBridge.java
|
||||
+++ b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedBridge.java
|
||||
@@ -87,16 +100,7 @@ diff --git a/components/variations/android/java/src/org/chromium/components/vari
|
||||
diff --git a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
|
||||
--- a/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
|
||||
+++ b/components/variations/android/java/src/org/chromium/components/variations/firstrun/VariationsSeedFetcher.java
|
||||
@@ -80,7 +80,7 @@ public class VariationsSeedFetcher {
|
||||
}
|
||||
|
||||
private static final String VARIATIONS_SERVER_URL =
|
||||
- "https://clientservices.googleapis.com/chrome-variations/seed?osname=";
|
||||
+ "https://clientservices.9oo91apis.qjz9zk/chrome-variations/seed?osname=";
|
||||
|
||||
private static final int READ_TIMEOUT = 3000; // time in ms
|
||||
private static final int REQUEST_TIMEOUT = 1000; // time in ms
|
||||
@@ -337,29 +337,13 @@ public class VariationsSeedFetcher {
|
||||
@@ -340,29 +340,13 @@ public class VariationsSeedFetcher {
|
||||
*/
|
||||
public void fetchSeed(String restrictMode, String milestone, String channel) {
|
||||
assert !ThreadUtils.runningOnUiThread();
|
||||
@@ -130,7 +134,7 @@ diff --git a/components/variations/android/java/src/org/chromium/components/vari
|
||||
}
|
||||
|
||||
private void recordFetchResultOrCode(int resultOrCode) {
|
||||
@@ -402,7 +386,7 @@ public class VariationsSeedFetcher {
|
||||
@@ -405,7 +389,7 @@ public class VariationsSeedFetcher {
|
||||
* @param curSeedInfo optional currently saved seed info to set the `If-None-Match` header.
|
||||
* @return the object holds the request result and seed data with its related header fields.
|
||||
*/
|
||||
@@ -142,12 +146,14 @@ diff --git a/components/variations/android/java/src/org/chromium/components/vari
|
||||
diff --git a/components/variations/net/omnibox_http_headers.cc b/components/variations/net/omnibox_http_headers.cc
|
||||
--- a/components/variations/net/omnibox_http_headers.cc
|
||||
+++ b/components/variations/net/omnibox_http_headers.cc
|
||||
@@ -21,7 +21,7 @@ const char kOmniboxOnDeviceSuggestionsHeader[] =
|
||||
@@ -21,8 +21,8 @@ const char kOmniboxOnDeviceSuggestionsHeader[] =
|
||||
// Whether to enable reporting the header. Included as a quick escape hatch in
|
||||
// case of crashes.
|
||||
const base::Feature kReportOmniboxOnDeviceSuggestionsHeader{
|
||||
- "ReportOmniboxOnDeviceSuggestionsHeader", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ "ReportOmniboxOnDeviceSuggestionsHeader", base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
BASE_FEATURE(kReportOmniboxOnDeviceSuggestionsHeader,
|
||||
- "ReportOmniboxOnDeviceSuggestionsHeader",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+ "ReportOmniboxOnDeviceSuggestionsHeader", // disabled by default
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
std::string GetHeaderValue() {
|
||||
const std::string group =
|
||||
@@ -167,7 +173,7 @@ diff --git a/components/variations/net/variations_http_headers.cc b/components/v
|
||||
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
|
||||
@@ -159,7 +159,8 @@ Study::CpuArchitecture GetCurrentCpuArchitecture() {
|
||||
@@ -158,7 +158,8 @@ Study::CpuArchitecture GetCurrentCpuArchitecture() {
|
||||
// "--variations-server-url" switches are passed. It is however possible to
|
||||
// apply the testing config as well as specify additional field trials (using
|
||||
// "--force-fieldtrials") by using the "--enable-field-trial-config" switch.
|
||||
@@ -180,7 +186,7 @@ diff --git a/components/variations/service/variations_field_trial_creator.cc b/c
|
||||
diff --git a/components/variations/service/variations_service.cc b/components/variations/service/variations_service.cc
|
||||
--- a/components/variations/service/variations_service.cc
|
||||
+++ b/components/variations/service/variations_service.cc
|
||||
@@ -235,17 +235,8 @@ bool GetInstanceManipulations(const net::HttpResponseHeaders* headers,
|
||||
@@ -220,17 +220,8 @@ bool GetInstanceManipulations(const net::HttpResponseHeaders* headers,
|
||||
// Variations seed fetching is only enabled in official Chrome builds, if a URL
|
||||
// is specified on the command line, and for testing.
|
||||
bool IsFetchingEnabled() {
|
||||
@@ -199,8 +205,8 @@ diff --git a/components/variations/service/variations_service.cc b/components/va
|
||||
+ return false;
|
||||
}
|
||||
|
||||
std::unique_ptr<SeedResponse> MaybeImportFirstRunSeed(
|
||||
@@ -603,7 +594,7 @@ bool VariationsService::DoFetchFromURL(const GURL& url, bool is_http_retry) {
|
||||
// Returns the already downloaded first run seed, and clear the seed from the
|
||||
@@ -589,7 +580,7 @@ bool VariationsService::DoFetchFromURL(const GURL& url, bool is_http_retry) {
|
||||
// debugger or if the machine was suspended) and OnURLFetchComplete() hasn't
|
||||
// had a chance to run yet from the previous request. In this case, don't
|
||||
// start a new request and just let the previous one finish.
|
||||
@@ -209,5 +215,22 @@ diff --git a/components/variations/service/variations_service.cc b/components/va
|
||||
return false;
|
||||
|
||||
last_request_was_http_retry_ = is_http_retry;
|
||||
diff --git a/third_party/blink/renderer/core/loader/document_loader.cc b/third_party/blink/renderer/core/loader/document_loader.cc
|
||||
--- a/third_party/blink/renderer/core/loader/document_loader.cc
|
||||
+++ b/third_party/blink/renderer/core/loader/document_loader.cc
|
||||
@@ -174,13 +174,6 @@ Vector<OriginTrialFeature> CopyInitiatorOriginTrials(
|
||||
WebVector<int> CopyInitiatorOriginTrials(
|
||||
const Vector<OriginTrialFeature>& initiator_origin_trial_features) {
|
||||
WebVector<int> result;
|
||||
- for (auto feature : initiator_origin_trial_features) {
|
||||
- // Convert from OriginTrialFeature to int. These values are passed between
|
||||
- // blink navigations. OriginTrialFeature isn't visible outside of blink (and
|
||||
- // doesn't need to be) so the values are transferred outside of blink as
|
||||
- // ints and casted to OriginTrialFeature once being processed in blink.
|
||||
- result.emplace_back(static_cast<int>(feature));
|
||||
- }
|
||||
return result;
|
||||
}
|
||||
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,6 +2,7 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sat, 19 Feb 2022 12:01:33 +0100
|
||||
Subject: Disable idle detection
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
content/public/common/content_features.cc | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
@@ -9,14 +10,14 @@ Subject: Disable idle detection
|
||||
diff --git a/content/public/common/content_features.cc b/content/public/common/content_features.cc
|
||||
--- a/content/public/common/content_features.cc
|
||||
+++ b/content/public/common/content_features.cc
|
||||
@@ -426,7 +426,7 @@ const base::Feature kGreaseUACH{"GreaseUACH", base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
@@ -501,7 +501,7 @@ BASE_FEATURE(kGreaseUACH, "GreaseUACH", base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
// This is intended as a kill switch for the Idle Detection feature. To enable
|
||||
// this feature, the experimental web platform features flag should be set,
|
||||
// or the site should obtain an Origin Trial token.
|
||||
const base::Feature kIdleDetection{"IdleDetection",
|
||||
- base::FEATURE_ENABLED_BY_DEFAULT};
|
||||
+ base::FEATURE_DISABLED_BY_DEFAULT};
|
||||
-BASE_FEATURE(kIdleDetection, "IdleDetection", base::FEATURE_ENABLED_BY_DEFAULT);
|
||||
+BASE_FEATURE(kIdleDetection, "IdleDetection", base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
|
||||
// Historically most navigations required IPC from browser to renderer and
|
||||
// from renderer back to browser. This was done to check for before-unload
|
||||
// A feature flag for the memory-backed code cache.
|
||||
BASE_FEATURE(kInMemoryCodeCache,
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,19 +2,24 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Fri, 8 Oct 2021 00:30:26 +0200
|
||||
Subject: Disable lock icon in address bar by default
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
components/omnibox/common/omnibox_features.cc | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc b/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc
|
||||
--- a/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc
|
||||
+++ b/chrome/browser/ui/toolbar/chrome_location_bar_model_delegate.cc
|
||||
@@ -313,5 +313,5 @@ TemplateURLService* ChromeLocationBarModelDelegate::GetTemplateURLService() {
|
||||
void ChromeLocationBarModelDelegate::RegisterProfilePrefs(
|
||||
user_prefs::PrefRegistrySyncable* registry) {
|
||||
registry->RegisterBooleanPref(omnibox::kPreventUrlElisionsInOmnibox, true);
|
||||
- registry->RegisterBooleanPref(omnibox::kLockIconInAddressBarEnabled, false);
|
||||
+ registry->RegisterBooleanPref(omnibox::kLockIconInAddressBarEnabled, true);
|
||||
}
|
||||
diff --git a/components/omnibox/common/omnibox_features.cc b/components/omnibox/common/omnibox_features.cc
|
||||
--- a/components/omnibox/common/omnibox_features.cc
|
||||
+++ b/components/omnibox/common/omnibox_features.cc
|
||||
@@ -459,8 +459,8 @@ BASE_FEATURE(kSiteSearchStarterPack,
|
||||
|
||||
// Experiment to introduce new security indicators for HTTPS.
|
||||
BASE_FEATURE(kUpdatedConnectionSecurityIndicators,
|
||||
- "OmniboxUpdatedConnectionSecurityIndicators",
|
||||
- base::FEATURE_DISABLED_BY_DEFAULT);
|
||||
+ "OmniboxUpdatedConnectionSecurityIndicators", // enabled by default
|
||||
+ base::FEATURE_ENABLED_BY_DEFAULT); // in Bromite
|
||||
|
||||
// Feature used to default typed navigations to use HTTPS instead of HTTP.
|
||||
// This only applies to navigations that don't have a scheme such as
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -2,6 +2,8 @@ From: Daniel Micay <danielmicay@gmail.com>
|
||||
Date: Thu, 4 Jul 2019 19:08:52 -0400
|
||||
Subject: Disable media router and remoting by default
|
||||
|
||||
Original License: MIT - https://spdx.org/licenses/MIT.html
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
.../media/router/media_router_feature.cc | 27 ++++++-------------
|
||||
chrome/browser/profiles/profile_impl.cc | 2 +-
|
||||
@@ -10,9 +12,9 @@ Subject: Disable media router and remoting by default
|
||||
diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browser/media/router/media_router_feature.cc
|
||||
--- a/chrome/browser/media/router/media_router_feature.cc
|
||||
+++ b/chrome/browser/media/router/media_router_feature.cc
|
||||
@@ -50,26 +50,15 @@ const base::Feature kGlobalMediaControlsCastStartStop{
|
||||
@@ -60,26 +60,15 @@ BASE_FEATURE(kGlobalMediaControlsCastStartStop,
|
||||
|
||||
#endif // !BUILDFLAG(IS_ANDROID)
|
||||
#endif // BUILDFLAG(IS_ANDROID)
|
||||
|
||||
-namespace {
|
||||
-const PrefService::Preference* GetMediaRouterPref(
|
||||
@@ -43,7 +45,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
if (!base::FeatureList::IsEnabled(kMediaRouter))
|
||||
return false;
|
||||
@@ -93,7 +82,7 @@ bool MediaRouterEnabled(content::BrowserContext* context) {
|
||||
@@ -107,7 +96,7 @@ bool MediaRouterEnabled(content::BrowserContext* context) {
|
||||
return allowed;
|
||||
}
|
||||
return true;
|
||||
@@ -52,7 +54,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse
|
||||
|
||||
#if !BUILDFLAG(IS_ANDROID)
|
||||
void RegisterLocalStatePrefs(PrefRegistrySimple* registry) {
|
||||
@@ -106,7 +95,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
@@ -120,7 +109,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
|
||||
PrefRegistry::PUBLIC);
|
||||
|
||||
registry->RegisterBooleanPref(
|
||||
@@ -64,7 +66,7 @@ diff --git a/chrome/browser/media/router/media_router_feature.cc b/chrome/browse
|
||||
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
|
||||
@@ -417,7 +417,7 @@ void ProfileImpl::RegisterProfilePrefs(
|
||||
@@ -413,7 +413,7 @@ void ProfileImpl::RegisterProfilePrefs(
|
||||
#endif
|
||||
|
||||
registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false);
|
||||
|
||||
@@ -2,27 +2,28 @@ From: csagan5 <32685696+csagan5@users.noreply.github.com>
|
||||
Date: Sun, 27 Feb 2022 23:58:22 +0100
|
||||
Subject: Disable minidump upload scheduling
|
||||
|
||||
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
|
||||
---
|
||||
chrome/browser/endpoint_fetcher/endpoint_fetcher.cc | 2 +-
|
||||
components/endpoint_fetcher/endpoint_fetcher.cc | 2 +-
|
||||
.../minidump_uploader/MinidumpUploadJobService.java | 5 ++++-
|
||||
2 files changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc b/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc
|
||||
--- a/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc
|
||||
+++ b/chrome/browser/endpoint_fetcher/endpoint_fetcher.cc
|
||||
@@ -337,7 +337,7 @@ void EndpointFetcher::OnResponseFetched(
|
||||
auto response = std::make_unique<EndpointResponse>();
|
||||
// TODO(crbug.com/993393) Add more detailed error messaging
|
||||
std::string net_error = net::ErrorToString(simple_url_loader_->NetError());
|
||||
diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoint_fetcher/endpoint_fetcher.cc
|
||||
--- a/components/endpoint_fetcher/endpoint_fetcher.cc
|
||||
+++ b/components/endpoint_fetcher/endpoint_fetcher.cc
|
||||
@@ -340,7 +340,7 @@ void EndpointFetcher::OnResponseFetched(
|
||||
}
|
||||
} else {
|
||||
std::string net_error = net::ErrorToString(net_error_code);
|
||||
- VLOG(1) << __func__ << " with response error: " << net_error;
|
||||
+ LOG(ERROR) << __func__ << " with response error: " << net_error;
|
||||
response->response = "There was a response error";
|
||||
simple_url_loader_.reset();
|
||||
std::move(endpoint_fetcher_callback).Run(std::move(response));
|
||||
}
|
||||
diff --git a/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java b/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java
|
||||
--- a/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java
|
||||
+++ b/components/minidump_uploader/android/java/src/org/chromium/components/minidump_uploader/MinidumpUploadJobService.java
|
||||
@@ -44,7 +44,10 @@ public abstract class MinidumpUploadJobService extends JobService {
|
||||
@@ -45,7 +45,10 @@ public abstract class MinidumpUploadJobService extends JobService {
|
||||
* to build an upload job for scheduling.
|
||||
*/
|
||||
public static void scheduleUpload(JobInfo.Builder jobInfoBuilder) {
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user