Release 78.0.3904.63

This commit is contained in:
csagan5 2019-10-18 00:55:10 +02:00
parent 158d782db4
commit 6a9e562dde
No known key found for this signature in database
GPG key ID: 64190A51D85DC0C5
99 changed files with 3020 additions and 2436 deletions

View file

@ -1,3 +1,10 @@
# 78.0.3904.63
* replace Beta DoH service URL for Google (https://developers.google.com/speed/public-dns/docs/doh/migration)
* disable AImageReaderMediaPlayer until upstream bug is fixed (https://bugs.chromium.org/p/chromium/issues/detail?id=977583)
* disabled face detection provider
* removed non-working SystemWebView adblock patch (not working since v77)
* bring back some privacy options which upstream moved to Sync settings (fixes https://github.com/bromite/bromite/issues/383)
# 77.0.3865.104
* revert upstream commit for search privacy options and related translations removal (fixes https://github.com/bromite/bromite/issues/375)
* remove unused patch for enabling subresource filter on all sites

File diff suppressed because one or more lines are too long

View file

@ -69,7 +69,7 @@ diff --git a/third_party/libaom/BUILD.gn b/third_party/libaom/BUILD.gn
+ sources += aom_ports_arm_sources
}
if (is_android) {
deps += [ "//third_party/android_sdk:cpu_features" ]
deps += [ "//third_party/android_ndk:cpu_features" ]
diff --git a/third_party/libaom/libaom_srcs.gni b/third_party/libaom/libaom_srcs.gni
--- a/third_party/libaom/libaom_srcs.gni
+++ b/third_party/libaom/libaom_srcs.gni

View file

@ -11,7 +11,7 @@ Subject: Add DuckDuckGo Lite search engine
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
@@ -95,6 +95,16 @@
@@ -91,6 +91,16 @@
"id": 68
},

View file

@ -13,7 +13,7 @@ disable from all its searches RLZ and field experiments querystring parameters.
diff --git a/components/search_engines/prepopulated_engines.json b/components/search_engines/prepopulated_engines.json
--- a/components/search_engines/prepopulated_engines.json
+++ b/components/search_engines/prepopulated_engines.json
@@ -126,6 +126,27 @@
@@ -122,6 +122,27 @@
"id": 1
},

View file

@ -12,7 +12,7 @@ Make search engine selectable in default list
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
@@ -187,6 +187,7 @@
@@ -183,6 +183,7 @@
"favicon_url": "https://www.qwant.com/favicon.ico",
"search_url": "https://www.qwant.com/?q={searchTerms}&client=opensearch",
"suggest_url": "https://api.qwant.com/api/suggest/?q={searchTerms}&client=opensearch",

View file

@ -11,7 +11,7 @@ Subject: Add StartPage search engine
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
@@ -197,6 +197,16 @@
@@ -193,6 +193,16 @@
"id": 56
},

View file

@ -10,28 +10,26 @@ Do not fallback to UDP when using DoH
See also: https://tools.ietf.org/id/draft-ietf-doh-dns-over-https-14.txt
---
chrome/browser/about_flags.cc | 11 +++++++++++
chrome/browser/flag_descriptions.cc | 3 +++
chrome/browser/flag_descriptions.h | 3 +++
chrome/browser/net/system_network_context_manager.cc | 17 ++++++++---------
.../common/network_features.cc | 7 +++++--
.../common/network_features.h | 5 ++++-
.../common/network_switch_list.h | 4 ++++
net/base/load_flags_list.h | 6 ++++++
net/dns/dns_transaction.cc | 3 ++-
net/url_request/url_request_http_job.cc | 16 +++++++++++-----
10 files changed, 57 insertions(+), 18 deletions(-)
chrome/browser/about_flags.cc | 11 +++++++++++
chrome/browser/net/system_network_context_manager.cc | 18 +++++++++++-------
.../common/network_features.cc | 6 ++++++
.../common/network_features.h | 6 ++++++
.../common/network_switch_list.h | 4 ++++
net/base/load_flags_list.h | 6 ++++++
net/dns/dns_transaction.cc | 4 ++--
net/url_request/url_request_http_job.cc | 16 +++++++++++-----
8 files changed, 57 insertions(+), 14 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
@@ -403,6 +403,14 @@ const FeatureEntry::FeatureVariation kCCTModuleCacheVariations[] = {
@@ -417,6 +417,14 @@ const FeatureEntry::FeatureVariation kCCTModuleCacheVariations[] = {
base::size(kCCTModuleCache_ThirtyMinutes), nullptr},
};
+const FeatureEntry::Choice kDnsOverHttpsChoices[] = {
+ {features::kDnsOverHttpsChoiceDefault, "", ""},
+ {features::kDnsOverHttpsChoiceGoogle, switches::kDnsOverHttpsServer, "https://dns.google.com/experimental"},
+ {features::kDnsOverHttpsChoiceGoogle, switches::kDnsOverHttpsServer, "https://dns.google/dns-query"},
+ {features::kDnsOverHttpsChoiceCloudflare, switches::kDnsOverHttpsServer, "https://1.1.1.1/dns-query"},
+ {features::kDnsOverHttpsChoiceQuad9, switches::kDnsOverHttpsServer, "https://9.9.9.9/dns-query"},
+ {features::kDnsOverHttpsChoiceAdGuard, switches::kDnsOverHttpsServer, "https://dns.adguard.com/dns-query"}
@ -39,8 +37,8 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
+
#endif // OS_ANDROID
const FeatureEntry::Choice kEnableGpuRasterizationChoices[] = {
@@ -3438,6 +3446,9 @@ const FeatureEntry kFeatureEntries[] = {
const FeatureEntry::FeatureParam kForceDark_SimpleHsl[] = {
@@ -3578,6 +3586,9 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kEnableSyncUSSBookmarksName,
flag_descriptions::kEnableSyncUSSBookmarksDescription, kOsAll,
FEATURE_VALUE_TYPE(switches::kSyncUSSBookmarks)},
@ -50,106 +48,79 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
{"enable-lookalike-url-navigation-suggestions",
flag_descriptions::kLookalikeUrlNavigationSuggestionsName,
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
@@ -2182,6 +2182,9 @@ const char kAutoFetchOnNetErrorPageDescription[] =
"When enabled, and navigation fails with an offline error, schedule a "
"fetch of the page when online again.";
+const char kDnsOverHttpsName[] = "DNS over HTTPS";
+const char kDnsOverHttpsDescription[] = "Enables DNS-over-HTTPS (experimental).";
+
const char kAutofillAccessoryViewName[] =
"Autofill suggestions as keyboard accessory view";
const char kAutofillAccessoryViewDescription[] =
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
@@ -1294,6 +1294,9 @@ extern const char kAsyncDnsDescription[];
extern const char kAutoFetchOnNetErrorPageName[];
extern const char kAutoFetchOnNetErrorPageDescription[];
+extern const char kDnsOverHttpsName[];
+extern const char kDnsOverHttpsDescription[];
+
extern const char kAutofillAccessoryViewName[];
extern const char kAutofillAccessoryViewDescription[];
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
@@ -23,6 +23,7 @@
@@ -25,6 +25,7 @@
#include "chrome/browser/chrome_content_browser_client.h"
#include "chrome/browser/component_updater/crl_set_component_installer.h"
#include "chrome/browser/net/chrome_mojo_proxy_resolver_factory.h"
+#include "components/network_session_configurator/common/network_switches.h"
#include "chrome/browser/net/dns_util.h"
#include "chrome/browser/safe_browsing/safe_browsing_service.h"
#include "chrome/browser/ssl/ssl_config_service_manager.h"
#include "chrome/common/channel_info.h"
@@ -111,6 +112,7 @@ void GetStubResolverConfig(
if (!net::dns_util::IsValidDoHTemplate(
doh_server_list[i].GetString(),
doh_server_method_list[i].GetString())) {
+ LOG(ERROR) << "Invalid DoH template: " << doh_server_list[i].GetString() << " with method " << doh_server_method_list[i].GetString();
@@ -142,6 +143,7 @@ void GetStubResolverConfig(
base::SPLIT_WANT_NONEMPTY)) {
if (!chrome_browser_net::IsValidDohTemplate(server_template,
&server_method)) {
+ LOG(ERROR) << "Invalid DoH template: " << server_template << " with method " << server_method;
continue;
}
@@ -378,15 +380,12 @@ SystemNetworkContextManager::SystemNetworkContextManager(
@@ -406,14 +408,16 @@ SystemNetworkContextManager::SystemNetworkContextManager(
base::Value(ShouldEnableAsyncDns()));
base::ListValue default_doh_servers;
base::ListValue default_doh_server_methods;
std::string default_doh_mode = chrome_browser_net::kDnsOverHttpsModeOff;
std::string default_doh_templates = "";
- if (base::FeatureList::IsEnabled(features::kDnsOverHttps)) {
- std::string server(variations::GetVariationParamValueByFeature(
- features::kDnsOverHttps, "server"));
- std::string method(variations::GetVariationParamValueByFeature(
- features::kDnsOverHttps, "method"));
- if (!server.empty()) {
- default_doh_servers.AppendString(server);
- default_doh_server_methods.AppendString(method);
- if (features::kDnsOverHttpsFallbackParam.Get()) {
- default_doh_mode = chrome_browser_net::kDnsOverHttpsModeAutomatic;
- } else {
- default_doh_mode = chrome_browser_net::kDnsOverHttpsModeSecure;
- }
- default_doh_templates = features::kDnsOverHttpsTemplatesParam.Get();
+
+ std::string server =
+ base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII(
+ switches::kDnsOverHttpsServer);
+ if (!server.empty()) {
+ default_doh_servers.AppendString(server);
+ default_doh_server_methods.AppendString("POST");
+ default_doh_mode = chrome_browser_net::kDnsOverHttpsModeSecure;
+ // will use POST when URLs do not contain a 'dns' query parameter
+ default_doh_templates = server;
}
local_state_->SetDefaultPrefValue(prefs::kDnsOverHttpsServers,
std::move(default_doh_servers));
+
local_state_->SetDefaultPrefValue(prefs::kDnsOverHttpsMode,
base::Value(default_doh_mode));
local_state_->SetDefaultPrefValue(prefs::kDnsOverHttpsTemplates,
diff --git a/components/network_session_configurator/common/network_features.cc b/components/network_session_configurator/common/network_features.cc
--- a/components/network_session_configurator/common/network_features.cc
+++ b/components/network_session_configurator/common/network_features.cc
@@ -8,7 +8,10 @@
@@ -8,4 +8,10 @@
namespace features {
-const base::Feature kDnsOverHttps{"dns-over-https",
- base::FEATURE_DISABLED_BY_DEFAULT};
+const char kDnsOverHttpsChoiceDefault[] = "Disabled",
+ kDnsOverHttpsChoiceGoogle[] = "Google",
+ kDnsOverHttpsChoiceCloudflare[] = "Cloudflare",
+ kDnsOverHttpsChoiceQuad9[] = "Quad9",
+ kDnsOverHttpsChoiceAdGuard[] = "AdGuard";
+
} // namespace features
diff --git a/components/network_session_configurator/common/network_features.h b/components/network_session_configurator/common/network_features.h
--- a/components/network_session_configurator/common/network_features.h
+++ b/components/network_session_configurator/common/network_features.h
@@ -10,9 +10,12 @@
@@ -10,6 +10,12 @@
namespace features {
-// Enabled DNS over HTTPS
+// DNS over HTTPS server endpoint choices
// (https://tools.ietf.org/id/draft-ietf-doh-dns-over-https-12.txt).
NETWORK_SESSION_CONFIGURATOR_EXPORT extern const base::Feature kDnsOverHttps;
+ // (https://tools.ietf.org/id/draft-ietf-doh-dns-over-https-12.txt).
+NETWORK_SESSION_CONFIGURATOR_EXPORT extern const char kDnsOverHttpsChoiceDefault[],
+ kDnsOverHttpsChoiceGoogle[], kDnsOverHttpsChoiceCloudflare[], kDnsOverHttpsChoiceQuad9[],
+ kDnsOverHttpsChoiceAdGuard[];
+
} // namespace features
#endif // COMPONENTS_NETWORK_SESSION_CONFIGURATOR_COMMON_NETWORK_FEATURES_H_
diff --git a/components/network_session_configurator/common/network_switch_list.h b/components/network_session_configurator/common/network_switch_list.h
--- a/components/network_session_configurator/common/network_switch_list.h
+++ b/components/network_session_configurator/common/network_switch_list.h
@ -167,29 +138,30 @@ diff --git a/components/network_session_configurator/common/network_switch_list.
diff --git a/net/base/load_flags_list.h b/net/base/load_flags_list.h
--- a/net/base/load_flags_list.h
+++ b/net/base/load_flags_list.h
@@ -105,3 +105,9 @@ LOAD_FLAG(SKIP_VARY_CHECK, 1 << 16)
// does not complete in 60 seconds, the cache treat the stale resource as
// invalid, as it did not specify stale-while-revalidate.
LOAD_FLAG(SUPPORT_ASYNC_REVALIDATION, 1 << 17)
@@ -117,3 +117,9 @@ LOAD_FLAG(RESTRICTED_PREFETCH, 1 << 18)
// is considered privileged, and therefore this flag must only be set from a
// trusted process.
LOAD_FLAG(CAN_USE_RESTRICTED_PREFETCH, 1 << 19)
+
+// This load will not send Accept-Language or User-Agent headers, and not
+// advertise brotli encoding.
+// Used to comply with IETF (draft) DNS-over-HTTPS:
+// "Implementors SHOULD NOT set non-essential HTTP headers in DoH client requests."
+LOAD_FLAG(MINIMAL_HEADERS, 1 << 18)
+LOAD_FLAG(MINIMAL_HEADERS, 1 << 20)
diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc
--- a/net/dns/dns_transaction.cc
+++ b/net/dns/dns_transaction.cc
@@ -392,6 +392,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate {
request_->SetExtraRequestHeaders(extra_request_headers);
@@ -403,7 +403,7 @@ class DnsHTTPAttempt : public DnsAttempt, public URLRequest::Delegate {
// perspective to prevent the client from sending AIA requests).
request_->SetLoadFlags(request_->load_flags() | LOAD_DISABLE_CACHE |
+ LOAD_IGNORE_LIMITS | LOAD_MINIMAL_HEADERS |
LOAD_BYPASS_PROXY);
LOAD_BYPASS_PROXY |
- LOAD_DISABLE_CERT_NETWORK_FETCHES);
+ LOAD_DISABLE_CERT_NETWORK_FETCHES | LOAD_MINIMAL_HEADERS);
request_->set_allow_credentials(false);
}
@@ -806,7 +807,7 @@ class DnsTransactionImpl : public DnsTransaction,
doh_attempt_(false),
@@ -997,7 +997,7 @@ class DnsTransactionImpl : public DnsTransaction,
had_tcp_attempt_(false),
first_server_index_(0),
url_request_context_(url_request_context),
- request_priority_(DEFAULT_PRIORITY) {
@ -200,7 +172,7 @@ diff --git a/net/dns/dns_transaction.cc b/net/dns/dns_transaction.cc
diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_request_http_job.cc
--- a/net/url_request/url_request_http_job.cc
+++ b/net/url_request/url_request_http_job.cc
@@ -340,6 +340,7 @@ void URLRequestHttpJob::Start() {
@@ -339,6 +339,7 @@ void URLRequestHttpJob::Start() {
// plugin could set a referrer although sending the referrer is inhibited.
request_info_.extra_headers.RemoveHeader(HttpRequestHeaders::kReferer);
@ -208,7 +180,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
// Our consumer should have made sure that this is a safe referrer. See for
// instance WebCore::FrameLoader::HideReferrer.
if (referrer.is_valid()) {
@@ -355,11 +356,14 @@ void URLRequestHttpJob::Start() {
@@ -354,11 +355,14 @@ void URLRequestHttpJob::Start() {
request_info_.extra_headers.SetHeader(HttpRequestHeaders::kReferer,
referer_value);
}

View file

@ -10,7 +10,7 @@ Offer auto-complete for the proxy page URL.
chrome/android/java/res/values/values.xml | 3 +
.../android/java/res/xml/privacy_preferences.xml | 4 +
.../chrome_autocomplete_provider_client.cc | 2 +
chrome/browser/browser_resources.grd | 2 +
chrome/browser/browser_resources.grd | 6 +
.../prefs/chrome_command_line_pref_store.cc | 2 +-
chrome/browser/resources/proxy_config.css | 61 ++++
chrome/browser/resources/proxy_config.html | 78 ++++
@ -26,7 +26,7 @@ Offer auto-complete for the proxy page URL.
components/proxy_config/proxy_config_dictionary.h | 6 +-
net/proxy_resolution/proxy_config.cc | 45 +++
net/proxy_resolution/proxy_config.h | 3 +
19 files changed, 911 insertions(+), 12 deletions(-)
19 files changed, 915 insertions(+), 12 deletions(-)
create mode 100644 chrome/browser/resources/proxy_config.css
create mode 100644 chrome/browser/resources/proxy_config.html
create mode 100644 chrome/browser/resources/proxy_config.js
@ -36,7 +36,7 @@ Offer auto-complete for the proxy page URL.
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
@@ -80,6 +80,9 @@
@@ -76,6 +76,9 @@
<integer name="list_item_level_selected">1</integer>
<integer name="list_item_level_incognito">2</integer>
@ -50,14 +50,14 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -6,6 +6,10 @@
<android.support.v7.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
+ <org.chromium.chrome.browser.preferences.HyperlinkPreference
+ android:key="proxy"
+ android:title="@string/proxy_title"
+ app:url="@string/proxy_url" />
<org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
<org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
android:key="search_suggestions"
android:title="@string/search_suggestions_title"
diff --git a/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc b/chrome/browser/autocomplete/chrome_autocomplete_provider_client.cc
@ -75,15 +75,19 @@ 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
@@ -211,6 +211,8 @@
<include name="IDR_SNIPPETS_INTERNALS_MOJOM_LITE_JS" file="${root_gen_dir}\chrome\browser\ui\webui\snippets_internals\snippets_internals.mojom-lite.js" use_base_dir="false" type="BINDATA" compress="gzip" />
@@ -202,6 +202,12 @@
<include name="IDR_HANGOUT_SERVICES_MANIFEST" file="resources\hangout_services\manifest.json" type="BINDATA" />
</if>
<include name="IDR_SUPERVISED_USER_INTERNALS_HTML" file="resources\supervised_user_internals\supervised_user_internals.html" allowexternalscript="true" compress="gzip" type="BINDATA" />
+ <!-- Bromite Proxy Configuration UI. -->
+ <if expr="is_android">
+ <include name="IDR_PROXY_CONFIG_HTML" file="resources\proxy_config.html" flattenhtml="true" type="BINDATA" compress="gzip" />
+ <include name="IDR_PROXY_CONFIG_JS" file="resources\proxy_config.js" type="BINDATA" compress="gzip" />
<include name="IDR_SUPERVISED_USER_INTERNALS_CSS" file="resources\supervised_user_internals\supervised_user_internals.css" compress="gzip" type="BINDATA" />
<include name="IDR_SUPERVISED_USER_INTERNALS_JS" file="resources\supervised_user_internals\supervised_user_internals.js" compress="gzip" type="BINDATA" />
<if expr="enable_hangout_services_extension">
+ </if>
+
<!-- App Management. -->
<if expr="not is_android">
<include name="IDR_APP_MANAGEMENT_BITMAP_MOJO_LITE_JS" file="${root_gen_dir}\skia\public\mojom\bitmap.mojom-lite.js" use_base_dir="false" type="BINDATA" />
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
@ -505,7 +509,7 @@ new file mode 100644
diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn
--- a/chrome/browser/ui/BUILD.gn
+++ b/chrome/browser/ui/BUILD.gn
@@ -271,6 +271,8 @@ jumbo_split_static_library("ui") {
@@ -275,6 +275,8 @@ jumbo_split_static_library("ui") {
"webui/metrics_handler.h",
"webui/net_export_ui.cc",
"webui/net_export_ui.h",
@ -517,15 +521,15 @@ 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
@@ -54,6 +54,7 @@
#include "chrome/browser/ui/webui/password_manager_internals/password_manager_internals_ui.h"
@@ -55,6 +55,7 @@
#include "chrome/browser/ui/webui/omnibox/omnibox_ui.h"
#include "chrome/browser/ui/webui/policy_ui.h"
#include "chrome/browser/ui/webui/predictors/predictors_ui.h"
+#include "chrome/browser/ui/webui/proxy_config_ui.h"
#include "chrome/browser/ui/webui/quota_internals/quota_internals_ui.h"
#include "chrome/browser/ui/webui/settings/settings_ui.h"
#include "chrome/browser/ui/webui/settings_utils.h"
@@ -386,6 +387,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
@@ -413,6 +414,8 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui,
return &NewWebUI<MemoryInternalsUI>;
if (url.host_piece() == chrome::kChromeUINetExportHost)
return &NewWebUI<NetExportUI>;
@ -602,7 +606,7 @@ new file mode 100644
+ content::WebUIDataSource* source =
+ content::WebUIDataSource::Create(chrome::kChromeUIProxyConfigHost);
+
+ source->SetJsonPath("strings.js");
+ source->UseStringsJs();
+ source->AddResourcePath("proxy_config.js", IDR_PROXY_CONFIG_JS);
+ source->SetDefaultResource(IDR_PROXY_CONFIG_HTML);
+ return source;
@ -977,7 +981,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
@@ -185,6 +185,8 @@ const char kChromeUINativePhysicalWebDiagnosticsURL[] =
@@ -189,6 +189,8 @@ const char kChromeUINativePhysicalWebDiagnosticsURL[] =
const char kChromeUINativeScheme[] = "chrome-native";
const char kChromeUIOfflineInternalsHost[] = "offline-internals";
const char kChromeUIPhysicalWebDiagnosticsHost[] = "physical-web-diagnostics";
@ -986,15 +990,15 @@ diff --git a/chrome/common/webui_url_constants.cc b/chrome/common/webui_url_cons
const char kChromeUISnippetsInternalsHost[] = "snippets-internals";
const char kChromeUIWebApksHost[] = "webapks";
#endif
@@ -444,6 +446,7 @@ bool IsOSSettingsSubPage(const std::string& sub_page) {
@@ -456,6 +458,7 @@ bool IsOSSettingsSubPage(const std::string& sub_page) {
kResetSubPage,
kSmartLockSettingsSubPage,
kSmbSharesSubPage,
+ kChromeUIProxyConfigHost,
kStorageSubPage,
kStylusSubPage,
// sync is both an OS and browser sub page, but prefer the OS version
@@ -543,6 +546,7 @@ const char* const kChromeHostURLs[] = {
kSwitchAccessSubPage,
@@ -556,6 +559,7 @@ const char* const kChromeHostURLs[] = {
#if !defined(OS_ANDROID)
#if !defined(OS_CHROMEOS)
kChromeUIAppLauncherPageHost,
@ -1005,7 +1009,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
@@ -108,6 +108,8 @@ extern const char kChromeUIMemoryInternalsHost[];
@@ -110,6 +110,8 @@ extern const char kChromeUIMemoryInternalsHost[];
extern const char kChromeUINTPTilesInternalsHost[];
extern const char kChromeUINaClHost[];
extern const char kChromeUINetExportHost[];

View file

@ -30,16 +30,18 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/android/java/res/xml/privacy_preferences.xml
--- a/chrome/android/java/res/xml/privacy_preferences.xml
+++ b/chrome/android/java/res/xml/privacy_preferences.xml
@@ -28,4 +28,9 @@
android:title="@string/clear_browsing_data_title"
android:summary="@string/clear_browsing_data_summary"
android:fragment="org.chromium.chrome.browser.preferences.privacy.ClearBrowsingDataTabsFragment" />
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
@@ -21,6 +21,11 @@
android:title="@string/can_make_payment_title"
android:summary="@string/settings_can_make_payment_toggle_label" />
<org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
+ android:key="always_incognito"
+ android:title="@string/always_incognito_title"
+ android:summary="@string/always_incognito_summary"
+ android:defaultValue="false" />
</android.support.v7.preference.PreferenceScreen>
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
android:key="preload_pages"
android:title="@string/preload_pages_title"
android:summary="@string/preload_pages_summary"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java b/chrome/android/java/src/org/chromium/chrome/browser/AlwaysIncognitoLinkInterceptor.java
new file mode 100644
--- /dev/null
@ -130,7 +132,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
/**
* Timeout in ms for reading PartnerBrowserCustomizations provider.
*/
@@ -1659,6 +1661,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -1650,6 +1652,9 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
throw new IllegalStateException(
"Attempting to access TabCreator before initialization");
}
@ -151,16 +153,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenu
import org.chromium.base.ObservableSupplier;
import org.chromium.base.VisibleForTesting;
import org.chromium.base.metrics.RecordUserAction;
@@ -56,6 +57,8 @@ class AppMenuHandlerImpl implements AppMenuHandler, StartStopWithNativeObserver,
private @Nullable Callback<OverviewModeBehavior> mOverviewModeSupplierCallback;
@@ -57,6 +58,8 @@ class AppMenuHandlerImpl
private @Nullable OverviewModeBehavior mOverviewModeBehavior;
private OverviewModeBehavior.OverviewModeObserver mOverviewModeObserver;
+ private static final String PREF_ALWAYS_INCOGNITO = "always_incognito";
+
/**
* The resource id of the menu item to highlight when the menu next opens. A value of
* {@code null} means no item will be highlighted. This value will be cleared after the menu is
@@ -237,6 +240,14 @@ class AppMenuHandlerImpl implements AppMenuHandler, StartStopWithNativeObserver,
@@ -267,6 +270,14 @@ class AppMenuHandlerImpl
if (mDelegate.shouldShowHeader(appRect.height())) {
headerResourceId = mDelegate.getHeaderResourceId();
}
@ -184,9 +186,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
import org.chromium.base.metrics.RecordHistogram;
+import org.chromium.base.ContextUtils;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeFeatureList;
import org.chromium.chrome.browser.compositor.bottombar.ephemeraltab.EphemeralTabPanel;
import org.chromium.chrome.browser.contextmenu.ChromeContextMenuItem.Item;
@@ -44,6 +45,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -46,6 +47,7 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
private static final String TAG = "CCMenuPopulator";
private final ContextMenuItemDelegate mDelegate;
private final @ContextMenuMode int mMode;
@ -194,7 +196,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
/**
* Defines the Groups of each Context Menu Item
@@ -270,7 +272,12 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
@@ -298,7 +300,12 @@ public class ChromeContextMenuPopulator implements ContextMenuPopulator {
if (FirstRunStatus.getFirstRunFlowComplete() && mMode == ContextMenuMode.NORMAL
&& !isEmptyUrl(params.getUrl())
&& UrlUtilities.isAcceptedScheme(params.getUrl())) {
@ -211,8 +213,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/contextmenu/Chr
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
@@ -7,8 +7,10 @@ package org.chromium.chrome.browser.tabmodel;
import android.content.Intent;
@@ -8,8 +8,10 @@ import android.content.Intent;
import android.support.annotation.Nullable;
import android.text.TextUtils;
+import org.chromium.base.ContextUtils;
@ -222,7 +224,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.ServiceTabLauncher;
@@ -16,6 +18,7 @@ import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings;
@@ -17,6 +19,7 @@ import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabAssociatedApp;
import org.chromium.chrome.browser.tab.TabBuilder;
@ -230,7 +232,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
import org.chromium.chrome.browser.tab.TabDelegateFactory;
import org.chromium.chrome.browser.tab.TabParentIntent;
import org.chromium.chrome.browser.tab.TabRedirectHandler;
@@ -36,6 +39,7 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -37,6 +40,7 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
private final ChromeActivity mActivity;
private final boolean mIncognito;
@ -238,7 +240,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
private WindowAndroid mNativeWindow;
private TabModel mTabModel;
@@ -46,6 +50,11 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -47,6 +51,11 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
mActivity = activity;
mNativeWindow = nativeWindow;
mIncognito = incognito;
@ -250,7 +252,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
}
@Override
@@ -170,6 +179,10 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -171,6 +180,10 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
tab.getWebContents());
}
@ -261,7 +263,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
mTabModel.addTab(tab, position, type);
return tab;
} finally {
@@ -198,6 +211,11 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -199,6 +212,11 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
.setWindow(mNativeWindow)
.setLaunchType(type)
.build();
@ -273,7 +275,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
tab.initialize(webContents, delegateFactory, !openInForeground, null, false);
mTabModel.addTab(tab, position, type);
return true;
@@ -241,7 +259,6 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -242,7 +260,6 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
*/
public Tab launchUrlFromExternalApp(String url, String referer, String headers,
String appId, boolean forceNewTab, Intent intent, long intentTimestamp) {
@ -281,7 +283,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
boolean isLaunchedFromChrome = TextUtils.equals(appId, mActivity.getPackageName());
// If an external app sends an intent for a Weblite URL and the Data Reduction Proxy is
@@ -306,6 +323,11 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
@@ -307,6 +324,11 @@ public class ChromeTabCreator extends TabCreatorManager.TabCreator {
state.isIncognito());
tab.initialize(null, createDefaultTabDelegateFactory(), !selectTab, state, false);
assert state.isIncognito() == mIncognito;
@ -296,7 +298,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -674,6 +674,14 @@ CHAR-LIMIT guidelines:
@@ -689,6 +689,14 @@ CHAR-LIMIT guidelines:
Search and site suggestions disabled
</message>

View file

@ -16,7 +16,7 @@ Completely remove contacts picker permission from the file dialog
.../chrome/browser/bookmarks/BookmarkPage.java | 1 +
.../java/strings/android_chrome_strings.grd | 6 +
chrome/browser/BUILD.gn | 8 +-
.../browser/android/bookmarks/bookmark_bridge.cc | 216 +++++++++++++++++++++
.../browser/android/bookmarks/bookmark_bridge.cc | 215 +++++++++++++++++++++
chrome/browser/android/bookmarks/bookmark_bridge.h | 20 +-
chrome/browser/importer/profile_writer.cc | 12 ++
chrome/browser/importer/profile_writer.h | 6 +
@ -28,7 +28,7 @@ Completely remove contacts picker permission from the file dialog
ui/shell_dialogs/select_file_dialog.h | 2 +
ui/shell_dialogs/select_file_dialog_android.cc | 6 +
ui/shell_dialogs/select_file_dialog_android.h | 2 +
22 files changed, 447 insertions(+), 14 deletions(-)
22 files changed, 446 insertions(+), 14 deletions(-)
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
@ -68,7 +68,7 @@ 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
@@ -86,6 +86,12 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
@@ -90,6 +90,12 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
} else if (menuItem.getItemId() == R.id.search_menu_id) {
mDelegate.openSearchUI();
return true;
@ -81,7 +81,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
}
SelectionDelegate<BookmarkId> selectionDelegate = mDelegate.getSelectionDelegate();
@@ -129,6 +135,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
@@ -141,6 +147,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
void showLoadingUi() {
setTitle(null);
setNavigationButton(NAVIGATION_BUTTON_NONE);
@ -90,7 +90,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
getMenu().findItem(R.id.search_menu_id).setVisible(false);
getMenu().findItem(R.id.edit_menu_id).setVisible(false);
}
@@ -138,6 +146,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
@@ -150,6 +158,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
super.showNormalView();
if (mDelegate == null) {
@ -99,7 +99,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
getMenu().findItem(R.id.search_menu_id).setVisible(false);
getMenu().findItem(R.id.edit_menu_id).setVisible(false);
}
@@ -170,6 +180,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
@@ -182,6 +192,8 @@ public class BookmarkActionBar extends SelectableListToolbar<BookmarkId>
public void onFolderStateSet(BookmarkId folder) {
mCurrentFolder = mDelegate.getModel().getBookmarkById(folder);
@ -169,9 +169,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import android.text.TextUtils;
import android.util.Pair;
@@ -13,11 +17,15 @@ import org.chromium.base.ObserverList;
import org.chromium.base.VisibleForTesting;
@@ -14,11 +18,15 @@ import org.chromium.base.VisibleForTesting;
import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.NativeMethods;
import org.chromium.base.metrics.RecordHistogram;
+import org.chromium.chrome.browser.document.ChromeLauncherActivity;
+import org.chromium.chrome.browser.IntentHandler;
@ -185,7 +185,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import java.util.ArrayList;
import java.util.List;
@@ -506,6 +514,24 @@ public class BookmarkBridge {
@@ -525,6 +533,24 @@ public class BookmarkBridge {
}
/**
@ -194,7 +194,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
+ */
+ public void importBookmarks(WindowAndroid window) {
+ assert mIsNativeBookmarkModelLoaded;
+ nativeImportBookmarks(mNativeBookmarkBridge, window);
+ BookmarkBridgeJni.get().importBookmarks(mNativeBookmarkBridge, BookmarkBridge.this, window);
+ }
+
+ /**
@ -203,14 +203,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
+ */
+ public void exportBookmarks() {
+ assert mIsNativeBookmarkModelLoaded;
+ nativeExportBookmarks(mNativeBookmarkBridge);
+ BookmarkBridgeJni.get().exportBookmarks(mNativeBookmarkBridge, BookmarkBridge.this);
+ }
+
+ /**
* Synchronously gets a list of bookmarks that match the specified search query.
* @param query Keyword used for searching bookmarks.
* @param maxNumberOfResult Maximum number of result to fetch.
@@ -848,6 +874,24 @@ public class BookmarkBridge {
@@ -877,6 +903,24 @@ public class BookmarkBridge {
depthList.add(depth);
}
@ -235,15 +235,15 @@ 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++) {
@@ -914,6 +958,8 @@ public class BookmarkBridge {
boolean getFolders, boolean getBookmarks, List<BookmarkId> bookmarksList);
private native BookmarkId nativeGetChildAt(long nativeBookmarkBridge, long id, int type,
int index);
+ private native void nativeImportBookmarks(long nativeBookmarkBridge, WindowAndroid window);
+ private native void nativeExportBookmarks(long nativeBookmarkBridge);
private native int nativeGetTotalBookmarkCount(long nativeBookmarkBridge, long id, int type);
private native void nativeSetBookmarkTitle(long nativeBookmarkBridge, long id, int type,
String title);
@@ -943,6 +987,8 @@ public class BookmarkBridge {
int getChildCount(long nativeBookmarkBridge, BookmarkBridge caller, long id, int type);
void getChildIDs(long nativeBookmarkBridge, BookmarkBridge caller, long id, int type,
boolean getFolders, boolean getBookmarks, List<BookmarkId> bookmarksList);
+ void importBookmarks(long nativeBookmarkBridge, BookmarkBridge caller, WindowAndroid window);
+ void exportBookmarks(long nativeBookmarkBridge, BookmarkBridge caller);
BookmarkId getChildAt(
long nativeBookmarkBridge, BookmarkBridge caller, long id, int type, int index);
int getTotalBookmarkCount(
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
@ -291,7 +291,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;
@@ -358,6 +361,13 @@ public class BookmarkManager
@@ -362,6 +365,13 @@ public class BookmarkManager
}
/**
@ -336,7 +336,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -233,6 +233,12 @@ CHAR-LIMIT guidelines:
@@ -236,6 +236,12 @@ CHAR-LIMIT guidelines:
<message name="IDS_SEARCH" desc="The label for a search button.">
Search
</message>
@ -352,7 +352,7 @@ diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/and
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -170,6 +170,10 @@ jumbo_split_static_library("browser") {
@@ -174,6 +174,10 @@ jumbo_split_static_library("browser") {
"bitmap_fetcher/bitmap_fetcher_service.h",
"bitmap_fetcher/bitmap_fetcher_service_factory.cc",
"bitmap_fetcher/bitmap_fetcher_service_factory.h",
@ -363,7 +363,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"bookmarks/bookmark_model_factory.cc",
"bookmarks/bookmark_model_factory.h",
"bookmarks/chrome_bookmark_client.cc",
@@ -2921,8 +2925,6 @@ jumbo_split_static_library("browser") {
@@ -3006,8 +3010,6 @@ jumbo_split_static_library("browser") {
"badging/badge_manager_factory.h",
"banners/app_banner_manager_desktop.cc",
"banners/app_banner_manager_desktop.h",
@ -372,7 +372,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
"certificate_viewer.h",
"chrome_browser_field_trials_desktop.cc",
"chrome_browser_field_trials_desktop.h",
@@ -3034,8 +3036,6 @@ jumbo_split_static_library("browser") {
@@ -3114,8 +3116,6 @@ jumbo_split_static_library("browser") {
"importer/importer_uma.h",
"importer/in_process_importer_bridge.cc",
"importer/in_process_importer_bridge.h",
@ -384,7 +384,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
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
@@ -38,6 +38,21 @@
@@ -41,6 +41,21 @@
#include "components/undo/undo_manager.h"
#include "content/public/browser/browser_thread.h"
@ -406,7 +406,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
using base::android::AttachCurrentThread;
using base::android::ConvertUTF8ToJavaString;
using base::android::ConvertUTF16ToJavaString;
@@ -55,6 +70,57 @@ using bookmarks::BookmarkPermanentNode;
@@ -58,6 +73,56 @@ using bookmarks::BookmarkPermanentNode;
using bookmarks::BookmarkType;
using content::BrowserThread;
@ -434,8 +434,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
+ // that we support.
+ if (url.SchemeIs(content::kChromeUIScheme) ||
+ url.SchemeIs(url::kAboutScheme)) {
+ if (url.host_piece() == chrome::kChromeUIUberHost ||
+ url.host_piece() == chrome::kChromeUIAboutHost)
+ if (url.host_piece() == chrome::kChromeUIAboutHost)
+ return true;
+
+ GURL fixed_url(url_formatter::FixupURL(url.spec(), std::string()));
@ -464,7 +463,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
namespace {
class BookmarkTitleComparer {
@@ -131,6 +197,10 @@ BookmarkBridge::~BookmarkBridge() {
@@ -134,6 +199,10 @@ BookmarkBridge::~BookmarkBridge() {
bookmark_model_->RemoveObserver(this);
if (partner_bookmarks_shim_)
partner_bookmarks_shim_->RemoveObserver(this);
@ -475,7 +474,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
}
void BookmarkBridge::Destroy(JNIEnv*, const JavaParamRef<jobject>&) {
@@ -444,6 +514,152 @@ jint BookmarkBridge::GetTotalBookmarkCount(
@@ -475,6 +544,152 @@ jint BookmarkBridge::GetTotalBookmarkCount(
return count;
}
@ -631,7 +630,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.cc b/chrome/browse
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
@@ -13,6 +13,8 @@
@@ -16,6 +16,8 @@
#include "components/bookmarks/browser/base_bookmark_model_observer.h"
#include "components/bookmarks/common/android/bookmark_id.h"
#include "components/prefs/pref_change_registrar.h"
@ -640,7 +639,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
namespace bookmarks {
class BookmarkModel;
@@ -26,7 +28,8 @@ class Profile;
@@ -29,7 +31,8 @@ class Profile;
// bookmark page. This fetches the bookmarks, title, urls, folder
// hierarchy.
class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
@ -650,7 +649,7 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
public:
BookmarkBridge(JNIEnv* env,
const base::android::JavaRef<jobject>& obj,
@@ -36,6 +39,12 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
@@ -39,6 +42,12 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
bool IsDoingExtensiveChanges(JNIEnv* env,
const base::android::JavaParamRef<jobject>& obj);
@ -660,10 +659,10 @@ diff --git a/chrome/browser/android/bookmarks/bookmark_bridge.h b/chrome/browser
+ void* params) override;
+ void FileSelectionCanceled(void* params) override;
+
jboolean IsEditBookmarksEnabled(
JNIEnv* env,
const base::android::JavaParamRef<jobject>& obj);
@@ -122,6 +131,13 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
jboolean IsEditBookmarksEnabled(JNIEnv* env);
void LoadEmptyPartnerBookmarkShimForTesting(
@@ -129,6 +138,13 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
jlong id,
jint type);
@ -677,7 +676,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,
@@ -267,12 +283,14 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
@@ -274,12 +290,14 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
void ShimBeingDeleted(PartnerBookmarksShim* shim) override;
Profile* profile_;
@ -753,7 +752,7 @@ diff --git a/chrome/browser/importer/profile_writer.h b/chrome/browser/importer/
diff --git a/chrome/common/BUILD.gn b/chrome/common/BUILD.gn
--- a/chrome/common/BUILD.gn
+++ b/chrome/common/BUILD.gn
@@ -445,6 +445,9 @@ static_library("common") {
@@ -440,6 +440,9 @@ static_library("common") {
sources += [
"media/chrome_media_drm_bridge_client.cc",
"media/chrome_media_drm_bridge_client.h",
@ -766,7 +765,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
@@ -64,8 +64,6 @@ static_library("utility") {
@@ -66,8 +66,6 @@ static_library("utility") {
if (!is_android) {
sources += [
@ -775,7 +774,7 @@ diff --git a/chrome/utility/BUILD.gn b/chrome/utility/BUILD.gn
"importer/bookmarks_file_importer.cc",
"importer/bookmarks_file_importer.h",
"importer/edge_database_reader_win.cc",
@@ -163,6 +161,11 @@ static_library("utility") {
@@ -160,6 +158,11 @@ static_library("utility") {
}
}
@ -896,7 +895,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
@@ -32,6 +32,7 @@ import org.chromium.base.task.PostTask;
@@ -33,6 +33,7 @@ import org.chromium.base.task.PostTask;
import org.chromium.base.task.TaskTraits;
import org.chromium.ui.PhotoPickerListener;
import org.chromium.ui.R;
@ -904,7 +903,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
import org.chromium.ui.UiUtils;
import java.io.File;
@@ -51,6 +52,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -52,6 +53,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
private static final String IMAGE_TYPE = "image/";
private static final String VIDEO_TYPE = "video/";
private static final String AUDIO_TYPE = "audio/";
@ -912,7 +911,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
private static final String ALL_IMAGE_TYPES = IMAGE_TYPE + "*";
private static final String ALL_VIDEO_TYPES = VIDEO_TYPE + "*";
private static final String ALL_AUDIO_TYPES = AUDIO_TYPE + "*";
@@ -129,6 +131,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -130,6 +132,11 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
mFileTypes = fileTypes;
}
@ -924,7 +923,7 @@ 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/*")
@@ -156,7 +163,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -157,7 +164,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
List<String> missingPermissions = new ArrayList<>();
String storagePermission = Manifest.permission.READ_EXTERNAL_STORAGE;
boolean shouldUsePhotoPicker = shouldUsePhotoPicker();
@ -933,7 +932,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
if (!window.hasPermission(storagePermission)) missingPermissions.add(storagePermission);
} else {
if (((mSupportsImageCapture && shouldShowImageTypes())
@@ -184,7 +191,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -185,7 +192,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
}
// TODO(finnur): Remove once we figure out the cause of crbug.com/950024.
@ -942,7 +941,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",
@@ -198,7 +205,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -199,7 +206,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
}
}
@ -951,7 +950,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
onFileNotSelected();
return;
}
@@ -347,6 +354,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -348,6 +355,7 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
}
if (!mimeTypes.contains(mimeType)) mimeTypes.add(mimeType);
}
@ -959,7 +958,7 @@ diff --git a/ui/android/java/src/org/chromium/ui/base/SelectFileDialog.java b/ui
return mimeTypes;
}
@@ -619,6 +627,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
@@ -625,6 +633,10 @@ public class SelectFileDialog implements WindowAndroid.IntentCallback, PhotoPick
return countAcceptTypesFor(specificType) > 0;
}

View file

@ -13,7 +13,7 @@ Subject: Add custom tab intents privacy option
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
@@ -18,6 +18,9 @@
@@ -14,6 +14,9 @@
<item name="top_controls_show_threshold" format="float" type="dimen">0.5</item>
<item name="top_controls_hide_threshold" format="float" type="dimen">0.5</item>
@ -26,22 +26,22 @@ 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
@@ -23,6 +23,11 @@
android:key="contextual_search"
android:title="@string/contextual_search_title"
android:fragment="org.chromium.chrome.browser.preferences.privacy.ContextualSearchPreferenceFragment" />
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
@@ -30,6 +30,11 @@
android:title="@string/preload_pages_title"
android:summary="@string/preload_pages_summary"
android:persistent="false" />
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
+ android:key="allow_custom_tab_intents"
+ android:title="@string/allow_custom_tab_intents_title"
+ android:summary="@string/allow_custom_tab_intents_summary"
+ android:defaultValue="false" />
<android.support.v7.preference.Preference
android:key="clear_browsing_data"
android:title="@string/clear_browsing_data_title"
<Preference
android:fragment="org.chromium.chrome.browser.preferences.privacy.DoNotTrackPreference"
android:key="do_not_track"
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
@@ -41,6 +41,7 @@ import org.chromium.chrome.browser.multiwindow.MultiWindowUtils;
@@ -43,6 +43,7 @@ import org.chromium.chrome.browser.multiwindow.MultiWindowUtils;
import org.chromium.chrome.browser.notifications.NotificationPlatformBridge;
import org.chromium.chrome.browser.partnercustomizations.PartnerBrowserCustomizations;
import org.chromium.chrome.browser.profiles.Profile;
@ -49,7 +49,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/LaunchIntentDis
import org.chromium.chrome.browser.searchwidget.SearchActivity;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.util.FeatureUtilities;
@@ -271,6 +272,7 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
@@ -273,6 +274,7 @@ public class LaunchIntentDispatcher implements IntentHandler.IntentHandlerDelega
*/
public static boolean isCustomTabIntent(Intent intent) {
if (intent == null) return false;
@ -62,14 +62,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/privacy/PrivacyPreferences.java
@@ -43,6 +43,8 @@ public class PrivacyPreferences
private ManagedPreferenceDelegateCompat mManagedPreferenceDelegate;
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
+ public static final String PREF_ALLOW_CUSTOM_TAB_INTENTS = "allow_custom_tab_intents";
+
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
PrivacyPreferencesManager privacyPrefManager = PrivacyPreferencesManager.getInstance();
@@ -84,6 +86,10 @@ public class PrivacyPreferences
@@ -99,6 +101,10 @@ public class PrivacyPreferences
String key = preference.getKey();
if (PREF_SEARCH_SUGGESTIONS.equals(key)) {
PrefServiceBridge.getInstance().setSearchSuggestEnabled((boolean) newValue);
@ -80,12 +80,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
}
return true;
@@ -119,6 +125,11 @@ public class PrivacyPreferences
@@ -134,6 +140,11 @@ public class PrivacyPreferences
prefServiceBridge.getBoolean(Pref.CAN_MAKE_PAYMENT_ENABLED));
}
+ ChromeBaseCheckBoxPreferenceCompat allowCustomTabIntentsPref =
+ (ChromeBaseCheckBoxPreferenceCompat) findPreference(PREF_ALLOW_CUSTOM_TAB_INTENTS);
+ ChromeBaseCheckBoxPreference allowCustomTabIntentsPref =
+ (ChromeBaseCheckBoxPreference) findPreference(PREF_ALLOW_CUSTOM_TAB_INTENTS);
+ allowCustomTabIntentsPref.setOnPreferenceChangeListener(this);
+ allowCustomTabIntentsPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
+
@ -95,7 +95,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -3944,6 +3944,13 @@ The site does NOT gain access to the camera. The camera images are only visible
@@ -4026,6 +4026,13 @@ The site does NOT gain access to the camera. The camera images are only visible
<message name="IDS_INCOGNITO_DISCLOSURE_CHECKBOX_TEXT" desc="Text for checkbox inviting to close incognito tabs in incognito disclosure dialog." translateable="false">
Close other incognito tabs
</message>

View file

@ -25,7 +25,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/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -2148,6 +2148,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2137,6 +2137,8 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
new AddToHomescreenManager(this, currentTab);
addToHomescreenManager.start();
RecordUserAction.record("MobileMenuAddToHomescreen");
@ -53,7 +53,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeLife
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -2938,6 +2938,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -2953,6 +2953,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_PREFERENCES" desc="Menu item for opening browser preferences. [CHAR-LIMIT=27]">
Settings
</message>

View file

@ -12,14 +12,14 @@ with limited CPU/memory resources and it is disabled by default.
.../common/network_features.cc | 3 +++
.../common/network_features.h | 4 ++++
.../common/network_switch_list.h | 4 ++++
components/url_formatter/top_domains/BUILD.gn | 1 +
.../url_formatter/spoof_checks/top_domains/BUILD.gn | 1 +
net/socket/client_socket_pool_manager.cc | 17 +++++++++++++++++
8 files changed, 44 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
@@ -593,6 +593,11 @@ const FeatureEntry::Choice kForceEffectiveConnectionTypeChoices[] = {
@@ -676,6 +676,11 @@ const FeatureEntry::Choice kForceEffectiveConnectionTypeChoices[] = {
net::kEffectiveConnectionType4G},
};
@ -31,7 +31,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
// Ensure that all effective connection types returned by Network Quality
// Estimator (NQE) are also exposed via flags.
static_assert(net::EFFECTIVE_CONNECTION_TYPE_LAST + 2 ==
@@ -2363,6 +2368,9 @@ const FeatureEntry kFeatureEntries[] = {
@@ -2533,6 +2538,9 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kPassiveDocumentEventListenersName,
flag_descriptions::kPassiveDocumentEventListenersDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kPassiveDocumentEventListeners)},
@ -44,7 +44,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -1219,6 +1219,10 @@ const char kLookalikeUrlNavigationSuggestionsDescription[] =
@@ -1240,6 +1240,10 @@ const char kLookalikeUrlNavigationSuggestionsDescription[] =
const char kMarkHttpAsName[] = "Mark non-secure origins as non-secure";
const char kMarkHttpAsDescription[] = "Change the UI treatment for HTTP pages";
@ -58,7 +58,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -742,6 +742,9 @@ extern const char kMarkHttpAsWarning[];
@@ -761,6 +761,9 @@ extern const char kMarkHttpAsWarning[];
extern const char kMarkHttpAsWarningAndDangerousOnFormEdits[];
extern const char kMarkHttpAsWarningAndDangerousOnPasswordsAndCreditCards[];
@ -93,8 +93,8 @@ diff --git a/components/network_session_configurator/common/network_features.h b
+ kMaxConnectionsPerHostChoice15[];
+
// DNS over HTTPS server endpoint choices
// (https://tools.ietf.org/id/draft-ietf-doh-dns-over-https-12.txt).
NETWORK_SESSION_CONFIGURATOR_EXPORT extern const base::Feature kDnsOverHttps;
// (https://tools.ietf.org/id/draft-ietf-doh-dns-over-https-12.txt).
NETWORK_SESSION_CONFIGURATOR_EXPORT extern const char kDnsOverHttpsChoiceDefault[],
diff --git a/components/network_session_configurator/common/network_switch_list.h b/components/network_session_configurator/common/network_switch_list.h
--- a/components/network_session_configurator/common/network_switch_list.h
+++ b/components/network_session_configurator/common/network_switch_list.h
@ -109,10 +109,10 @@ diff --git a/components/network_session_configurator/common/network_switch_list.
// Ignores certificate-related errors.
NETWORK_SWITCH(kIgnoreCertificateErrors, "ignore-certificate-errors")
diff --git a/components/url_formatter/top_domains/BUILD.gn b/components/url_formatter/top_domains/BUILD.gn
--- a/components/url_formatter/top_domains/BUILD.gn
+++ b/components/url_formatter/top_domains/BUILD.gn
@@ -76,6 +76,7 @@ executable("make_top_domain_list_for_edit_distance") {
diff --git a/components/url_formatter/spoof_checks/top_domains/BUILD.gn b/components/url_formatter/spoof_checks/top_domains/BUILD.gn
--- a/components/url_formatter/spoof_checks/top_domains/BUILD.gn
+++ b/components/url_formatter/spoof_checks/top_domains/BUILD.gn
@@ -78,6 +78,7 @@ executable("make_top_domain_list_for_edit_distance") {
"//base",
"//base:i18n",
"//third_party/icu",
@ -123,7 +123,7 @@ diff --git a/components/url_formatter/top_domains/BUILD.gn b/components/url_form
diff --git a/net/socket/client_socket_pool_manager.cc b/net/socket/client_socket_pool_manager.cc
--- a/net/socket/client_socket_pool_manager.cc
+++ b/net/socket/client_socket_pool_manager.cc
@@ -19,6 +19,10 @@
@@ -20,6 +20,10 @@
#include "net/socket/client_socket_pool.h"
#include "net/socket/connect_job.h"
#include "net/ssl/ssl_config.h"
@ -134,7 +134,7 @@ diff --git a/net/socket/client_socket_pool_manager.cc b/net/socket/client_socket
namespace net {
@@ -184,6 +188,19 @@ void ClientSocketPoolManager::set_max_sockets_per_pool(
@@ -185,6 +189,19 @@ void ClientSocketPoolManager::set_max_sockets_per_pool(
int ClientSocketPoolManager::max_sockets_per_group(
HttpNetworkSession::SocketPoolType pool_type) {
DCHECK_LT(pool_type, HttpNetworkSession::NUM_SOCKET_POOL_TYPES);

View file

@ -4,15 +4,41 @@ Subject: Add flag to control video playback resume feature
Disable it by default on Android as it is everywhere else
---
chrome/browser/about_flags.cc | 8 ++++----
chrome/browser/flag_descriptions.cc | 5 +++++
chrome/browser/flag_descriptions.h | 3 +++
media/base/media_switches.cc | 6 +-----
3 files changed, 9 insertions(+), 5 deletions(-)
4 files changed, 13 insertions(+), 9 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
@@ -1580,6 +1580,10 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-webassembly-threads", flag_descriptions::kEnableWasmThreadsName,
flag_descriptions::kEnableWasmThreadsDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kWebAssemblyThreads)},
+ {"resume-background-video",
+ flag_descriptions::kResumeBackgroundVideoName,
+ flag_descriptions::kResumeBackgroundVideoDescription, kOsAll,
+ FEATURE_VALUE_TYPE(media::kResumeBackgroundVideo)},
{"shared-array-buffer", flag_descriptions::kEnableSharedArrayBufferName,
flag_descriptions::kEnableSharedArrayBufferDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kSharedArrayBuffer)},
@@ -1603,10 +1607,6 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(features::kAppNotificationStatusMessaging)},
#endif // OS_ANDROID
{"enable-devtools-experiments", flag_descriptions::kDevtoolsExperimentsName,
- {"resume-background-video",
- flag_descriptions::kResumeBackgroundVideoName,
- flag_descriptions::kResumeBackgroundVideoDescription, kOsAll,
- FEATURE_VALUE_TYPE(media::kResumeBackgroundVideo)},
flag_descriptions::kDevtoolsExperimentsDescription, kOsDesktop,
SINGLE_VALUE_TYPE(switches::kEnableDevToolsExperiments)},
{"silent-debugger-extension-api",
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
@@ -848,6 +848,11 @@ const char kMemlogStackModeNative[] = "Native";
@@ -876,6 +876,11 @@ const char kMemlogStackModeNative[] = "Native";
const char kMemlogStackModeNativeWithThreadNames[] = "Native with thread names";
const char kMemlogStackModePseudo[] = "Trace events";
@ -27,7 +53,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
@@ -501,6 +501,9 @@ extern const char kEnablePortalsDescription[];
@@ -520,6 +520,9 @@ extern const char kEnablePortalsDescription[];
extern const char kEnablePictureInPictureName[];
extern const char kEnablePictureInPictureDescription[];

View file

@ -3,20 +3,20 @@ Date: Sun, 18 Nov 2018 13:06:49 +0100
Subject: Add flag to disable IPv6 probes
---
chrome/browser/about_flags.cc | 5 +++++
chrome/browser/flag_descriptions.cc | 4 ++++
chrome/browser/flag_descriptions.h | 3 +++
components/subresource_filter/tools/BUILD.gn | 6 ++++++
components/url_formatter/top_domains/BUILD.gn | 3 ++-
net/dns/host_resolver_manager.cc | 10 ++++++++--
services/network/public/cpp/features.cc | 4 ++++
services/network/public/cpp/features.h | 2 ++
chrome/browser/about_flags.cc | 5 +++++
chrome/browser/flag_descriptions.cc | 4 ++++
chrome/browser/flag_descriptions.h | 3 +++
components/subresource_filter/tools/BUILD.gn | 6 ++++++
components/url_formatter/spoof_checks/top_domains/BUILD.gn | 3 ++-
net/dns/host_resolver_manager.cc | 10 ++++++++--
services/network/public/cpp/features.cc | 4 ++++
services/network/public/cpp/features.h | 2 ++
8 files changed, 34 insertions(+), 3 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
@@ -3037,6 +3037,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -3193,6 +3193,11 @@ const FeatureEntry kFeatureEntries[] = {
kMarkHttpAsFeatureVariations,
"HTTPReallyBadFinal")},
@ -31,7 +31,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -2394,6 +2394,10 @@ const char kForegroundNotificationManagerDescription[] =
@@ -2512,6 +2512,10 @@ const char kForegroundNotificationManagerDescription[] =
const char kHomePageButtonName[] = "Force Enable Home Page Button";
const char kHomePageButtonDescription[] = "Displays a home button if enabled.";
@ -45,7 +45,7 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -504,6 +504,9 @@ extern const char kEnableNewDownloadBackendDescription[];
@@ -523,6 +523,9 @@ extern const char kEnableNewDownloadBackendDescription[];
extern const char kEnablePortalsName[];
extern const char kEnablePortalsDescription[];
@ -85,10 +85,10 @@ diff --git a/components/subresource_filter/tools/BUILD.gn b/components/subresour
]
}
diff --git a/components/url_formatter/top_domains/BUILD.gn b/components/url_formatter/top_domains/BUILD.gn
--- a/components/url_formatter/top_domains/BUILD.gn
+++ b/components/url_formatter/top_domains/BUILD.gn
@@ -76,7 +76,8 @@ executable("make_top_domain_list_for_edit_distance") {
diff --git a/components/url_formatter/spoof_checks/top_domains/BUILD.gn b/components/url_formatter/spoof_checks/top_domains/BUILD.gn
--- a/components/url_formatter/spoof_checks/top_domains/BUILD.gn
+++ b/components/url_formatter/spoof_checks/top_domains/BUILD.gn
@@ -78,7 +78,8 @@ executable("make_top_domain_list_for_edit_distance") {
"//base",
"//base:i18n",
"//third_party/icu",
@ -101,7 +101,7 @@ diff --git a/components/url_formatter/top_domains/BUILD.gn b/components/url_form
diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
--- a/net/dns/host_resolver_manager.cc
+++ b/net/dns/host_resolver_manager.cc
@@ -86,6 +86,7 @@
@@ -87,6 +87,7 @@
#include "net/socket/client_socket_factory.h"
#include "net/socket/datagram_client_socket.h"
#include "net/url_request/url_request_context.h"
@ -109,7 +109,7 @@ diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
#include "url/url_canon_ip.h"
#if BUILDFLAG(ENABLE_MDNS)
@@ -3178,8 +3179,13 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) {
@@ -3209,8 +3210,13 @@ bool HostResolverManager::IsIPv6Reachable(const NetLogWithSource& net_log) {
bool cached = true;
if ((tick_clock_->NowTicks() - last_ipv6_probe_time_).InMilliseconds() >
kIPv6ProbePeriodMs) {
@ -128,7 +128,7 @@ 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
@@ -50,6 +50,10 @@ const base::Feature kReporting{"Reporting", base::FEATURE_ENABLED_BY_DEFAULT};
@@ -46,6 +46,10 @@ const base::Feature kReporting{"Reporting", base::FEATURE_ENABLED_BY_DEFAULT};
const base::Feature kThrottleDelayable{"ThrottleDelayable",
base::FEATURE_ENABLED_BY_DEFAULT};
@ -142,7 +142,7 @@ diff --git a/services/network/public/cpp/features.cc b/services/network/public/c
diff --git a/services/network/public/cpp/features.h b/services/network/public/cpp/features.h
--- a/services/network/public/cpp/features.h
+++ b/services/network/public/cpp/features.h
@@ -18,6 +18,8 @@ extern const base::Feature kNetworkErrorLogging;
@@ -19,6 +19,8 @@ extern const base::Feature kNetworkErrorLogging;
COMPONENT_EXPORT(NETWORK_CPP)
extern const base::Feature kNetworkService;
COMPONENT_EXPORT(NETWORK_CPP)

View file

@ -20,25 +20,25 @@ legacy acceleration events.
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
@@ -2437,6 +2437,12 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-generic-sensor", flag_descriptions::kEnableGenericSensorName,
flag_descriptions::kEnableGenericSensorDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kGenericSensor)},
@@ -1593,6 +1593,12 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-gpu-rasterization", flag_descriptions::kGpuRasterizationName,
flag_descriptions::kGpuRasterizationDescription, kOsAll,
MULTI_VALUE_TYPE(kEnableGpuRasterizationChoices)},
+ {"enable-device-motion", flag_descriptions::kEnableDeviceMotionName,
+ flag_descriptions::kEnableDeviceMotionDescription, kOsAll,
+ FEATURE_VALUE_TYPE(features::kDeviceMotion)},
+ {"enable-device-orientation", flag_descriptions::kEnableDeviceOrientationName,
+ flag_descriptions::kEnableDeviceOrientationDescription, kOsAll,
+ FEATURE_VALUE_TYPE(features::kDeviceOrientation)},
{"enable-generic-sensor-extra-classes",
flag_descriptions::kEnableGenericSensorExtraClassesName,
flag_descriptions::kEnableGenericSensorExtraClassesDescription, kOsAll,
{"enable-oop-rasterization", flag_descriptions::kOopRasterizationName,
flag_descriptions::kOopRasterizationDescription, kOsAll,
MULTI_VALUE_TYPE(kEnableOopRasterizationChoices)},
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -620,6 +620,14 @@ const char kEnableGenericSensorDescription[] =
"Accelerometer, LinearAccelerationSensor, Gyroscope, "
"AbsoluteOrientationSensor and RelativeOrientationSensor interfaces.";
@@ -644,6 +644,14 @@ const char kWinrtSensorsImplementationDescription[] =
"Enables usage of the Windows.Devices.Sensors WinRT APIs on Windows for "
"sensors";
+const char kEnableDeviceMotionName[] = "Enable device motion";
+const char kEnableDeviceMotionDescription[] =
@ -54,9 +54,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
@@ -379,6 +379,12 @@ extern const char kWinrtSensorsImplementationDescription[];
extern const char kEnableGenericSensorName[];
extern const char kEnableGenericSensorDescription[];
@@ -398,6 +398,12 @@ extern const char kEnableTLS13EarlyDataDescription[];
extern const char kWinrtSensorsImplementationName[];
extern const char kWinrtSensorsImplementationDescription[];
+extern const char kEnableDeviceMotionName[];
+extern const char kEnableDeviceMotionDescription[];
@ -70,7 +70,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
@@ -85,6 +85,9 @@ void SetIndividualRuntimeFeatures(
@@ -84,6 +84,9 @@ void SetIndividualRuntimeFeatures(
base::FeatureList::IsEnabled(features::kSharedArrayBuffer) ||
base::FeatureList::IsEnabled(features::kWebAssemblyThreads));
@ -83,7 +83,7 @@ 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
@@ -667,6 +667,16 @@ const base::Feature kExperimentalProductivityFeatures{
@@ -685,6 +685,16 @@ const base::Feature kExperimentalProductivityFeatures{
// TODO(rouslan): Remove this.
const base::Feature kWebPayments{"WebPayments",
base::FEATURE_ENABLED_BY_DEFAULT};
@ -103,7 +103,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
diff --git a/content/public/common/content_features.h b/content/public/common/content_features.h
--- a/content/public/common/content_features.h
+++ b/content/public/common/content_features.h
@@ -156,6 +156,8 @@ CONTENT_EXPORT extern const base::Feature kScriptStreamingOnPreload;
@@ -157,6 +157,8 @@ CONTENT_EXPORT extern const base::Feature kScriptStreamingOnPreload;
CONTENT_EXPORT extern const base::Feature kTrustedDOMTypes;
CONTENT_EXPORT extern const base::Feature kBrowserUseDisplayThreadPriority;
@ -116,18 +116,18 @@ diff --git a/third_party/blink/public/platform/web_runtime_features.h b/third_pa
--- a/third_party/blink/public/platform/web_runtime_features.h
+++ b/third_party/blink/public/platform/web_runtime_features.h
@@ -91,6 +91,8 @@ class WebRuntimeFeatures {
BLINK_PLATFORM_EXPORT static void EnableCanvas2dImageChromium(bool);
BLINK_PLATFORM_EXPORT static void EnableCSSHexAlphaColor(bool);
BLINK_PLATFORM_EXPORT static void EnableSameSiteByDefaultCookies(bool);
BLINK_PLATFORM_EXPORT static void EnableScrollTopLeftInterop(bool);
+ BLINK_PLATFORM_EXPORT static void EnableDeviceMotion(bool);
+ BLINK_PLATFORM_EXPORT static void EnableDeviceOrientation(bool);
BLINK_PLATFORM_EXPORT static void EnableKeyboardFocusableScrollers(bool);
BLINK_PLATFORM_EXPORT static void EnableDatabase(bool);
BLINK_PLATFORM_EXPORT static void EnableDecodeLossyWebPImagesToYUV(bool);
BLINK_PLATFORM_EXPORT static void EnableDecodeJpeg420ImagesToYUV(bool);
diff --git a/third_party/blink/renderer/modules/modules_initializer.cc b/third_party/blink/renderer/modules/modules_initializer.cc
--- a/third_party/blink/renderer/modules/modules_initializer.cc
+++ b/third_party/blink/renderer/modules/modules_initializer.cc
@@ -252,9 +252,12 @@ void ModulesInitializer::InitInspectorAgentSession(
@@ -244,9 +244,12 @@ void ModulesInitializer::InitInspectorAgentSession(
void ModulesInitializer::OnClearWindowObjectInMainWorld(
Document& document,
const Settings& settings) const {
@ -146,7 +146,7 @@ diff --git a/third_party/blink/renderer/modules/modules_initializer.cc b/third_p
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
@@ -144,6 +144,14 @@ void WebRuntimeFeatures::EnableScrollTopLeftInterop(bool enable) {
@@ -160,6 +160,14 @@ void WebRuntimeFeatures::EnableScrollTopLeftInterop(bool enable) {
RuntimeEnabledFeatures::SetScrollTopLeftInteropEnabled(enable);
}
@ -164,7 +164,7 @@ diff --git a/third_party/blink/renderer/platform/exported/web_runtime_features.c
diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5
--- a/third_party/blink/renderer/platform/runtime_enabled_features.json5
+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5
@@ -1064,6 +1064,14 @@
@@ -1119,6 +1119,14 @@
status: "experimental",
},
{

View file

@ -58,7 +58,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/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -2170,6 +2170,14 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2159,6 +2159,14 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
RecordUserAction.record("MobileMenuRequestEnableJavascript");
} else if (id == R.id.reader_mode_prefs_id) {
DomDistillerUIUtils.openSettings(currentTab.getWebContents());
@ -76,7 +76,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
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
@@ -1709,6 +1709,14 @@ public class ChromeTabbedActivity
@@ -1757,6 +1757,14 @@ public class ChromeTabbedActivity extends ChromeActivity implements ScreenshotMo
reportNewTabShortcutUsed(true);
getTabCreator(true).launchNTP();
}
@ -94,15 +94,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuPropertiesDelegateImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuPropertiesDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuPropertiesDelegateImpl.java
@@ -27,6 +27,7 @@ import org.chromium.chrome.R;
@@ -26,6 +26,7 @@ import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityTabProvider;
import org.chromium.chrome.browser.ChromeFeatureList;
import org.chromium.chrome.browser.ChromeSwitches;
+import org.chromium.chrome.browser.ContentSettingsType;
import org.chromium.chrome.browser.ShortcutHelper;
import org.chromium.chrome.browser.banners.AppBannerManager;
import org.chromium.chrome.browser.bookmarks.BookmarkBridge;
@@ -225,6 +226,8 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -224,6 +225,8 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
// Prepare translate menu button.
prepareTranslateMenuItem(menu, currentTab);
@ -111,7 +111,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenu
// Hide 'Add to homescreen' for the following:
// * chrome:// pages - Android doesn't know how to direct those URLs.
// * incognito pages - To avoid problems where users create shortcuts in incognito
@@ -300,6 +303,43 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -299,6 +302,43 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
PrefServiceBridge.getInstance().isIncognitoModeManaged());
}
@ -170,7 +170,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -2943,6 +2943,17 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -2958,6 +2958,17 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_REQUEST_DESKTOP_SITE_OFF" desc="Accessibility description for when Request Desktop Site is disabled.">
Turn on Request desktop site
</message>

View file

@ -74,7 +74,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/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -2160,6 +2160,14 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2149,6 +2149,14 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
currentTab.getWebContents().getNavigationController().setUseDesktopUserAgent(
!usingDesktopUserAgent, reloadOnChange);
RecordUserAction.record("MobileMenuRequestDesktopSite");
@ -92,7 +92,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.
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
@@ -1751,6 +1751,14 @@ public class ChromeTabbedActivity
@@ -1802,6 +1802,14 @@ public class ChromeTabbedActivity extends ChromeActivity implements ScreenshotMo
NewTabPageUma.recordAction(NewTabPageUma.ACTION_OPENED_DOWNLOADS_MANAGER);
}
RecordUserAction.record("MobileMenuDownloadManager");
@ -110,7 +110,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuPropertiesDelegateImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuPropertiesDelegateImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuPropertiesDelegateImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenuPropertiesDelegateImpl.java
@@ -242,6 +242,8 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -241,6 +241,8 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
updateRequestDesktopSiteMenuItem(menu, currentTab, true /* can show */);
@ -119,7 +119,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/appmenu/AppMenu
// Only display reader mode settings menu option if the current page is in reader mode.
menu.findItem(R.id.reader_mode_prefs_id)
.setVisible(DomDistillerUrlUtils.isDistilledPage(currentTab.getUrl()));
@@ -437,6 +439,43 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
@@ -432,6 +434,43 @@ public class AppMenuPropertiesDelegateImpl implements AppMenuPropertiesDelegate
}
}
@ -177,7 +177,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -2923,6 +2923,17 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -2938,6 +2938,17 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_FIND_IN_PAGE" desc="Menu item allowing users to find text within the current page. [CHAR-LIMIT=27]">
Find in page
</message>

View file

@ -13,7 +13,7 @@ Subject: Add option to not persist tabs across sessions
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
@@ -66,6 +66,9 @@
@@ -62,6 +62,9 @@
<!-- TODO(peconn): Add help section. -->
<!-- <string name="help_context_suggestions">mobile_content_suggestions</string> -->
@ -26,11 +26,11 @@ 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
@@ -19,6 +19,11 @@
@@ -39,6 +39,11 @@
android:fragment="org.chromium.chrome.browser.preferences.privacy.DoNotTrackPreference"
android:key="do_not_track"
android:title="@string/do_not_track_title" />
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
+ android:key="close_tabs_on_exit"
+ android:title="@string/close_tabs_on_exit_title"
+ android:summary="@string/close_tabs_on_exit_summary"
@ -41,7 +41,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -1132,8 +1132,10 @@ public class ChromeTabbedActivity
@@ -1166,8 +1166,10 @@ public class ChromeTabbedActivity extends ChromeActivity implements ScreenshotMo
boolean hadCipherData =
CipherFactory.getInstance().restoreFromBundle(getSavedInstanceState());
@ -73,14 +73,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeFeatureList;
@@ -38,6 +40,7 @@ public class PrivacyPreferences
private static final String PREF_SEARCH_SUGGESTIONS = "search_suggestions";
private static final String PREF_CAN_MAKE_PAYMENT = "can_make_payment";
private static final String PREF_CONTEXTUAL_SEARCH = "contextual_search";
private static final String PREF_NETWORK_PREDICTIONS = "network_predictions";
+ private static final String PREF_CLOSE_TABS_ON_EXIT = "close_tabs_on_exit";
private static final String PREF_DO_NOT_TRACK = "do_not_track";
private static final String PREF_CLEAR_BROWSING_DATA = "clear_browsing_data";
@@ -90,6 +93,10 @@ public class PrivacyPreferences
@@ -105,6 +108,10 @@ public class PrivacyPreferences
SharedPreferences.Editor sharedPreferencesEditor = ContextUtils.getAppSharedPreferences().edit();
sharedPreferencesEditor.putBoolean(PREF_ALLOW_CUSTOM_TAB_INTENTS, (boolean)newValue);
sharedPreferencesEditor.apply();
@ -91,22 +91,22 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
}
return true;
@@ -140,6 +147,11 @@ public class PrivacyPreferences
@@ -155,6 +162,11 @@ public class PrivacyPreferences
boolean isContextualSearchEnabled = !prefServiceBridge.isContextualSearchDisabled();
contextualPref.setSummary(isContextualSearchEnabled ? textOn : textOff);
}
+
+ ChromeBaseCheckBoxPreferenceCompat closeTabsOnExitPref =
+ (ChromeBaseCheckBoxPreferenceCompat) findPreference(PREF_CLOSE_TABS_ON_EXIT);
+ ChromeBaseCheckBoxPreference closeTabsOnExitPref =
+ (ChromeBaseCheckBoxPreference) findPreference(PREF_CLOSE_TABS_ON_EXIT);
+ closeTabsOnExitPref.setOnPreferenceChangeListener(this);
+ closeTabsOnExitPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
}
private ManagedPreferenceDelegateCompat createManagedPreferenceDelegate() {
private ManagedPreferenceDelegate createManagedPreferenceDelegate() {
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -3747,6 +3747,12 @@ The site does NOT gain access to the camera. The camera images are only visible
@@ -3770,6 +3770,12 @@ The site does NOT gain access to the camera. The camera images are only visible
<message name="IDS_CONTEXTMENU_IMAGE_TITLE" desc="The title of a context menu tab when the item pressed contains more than one type. This indicates that all the actions are related to the image.">
IMAGE
</message>

View file

@ -20,7 +20,7 @@ diff --git a/chrome/android/java/res/xml/homepage_preferences.xml b/chrome/andro
@@ -7,6 +7,11 @@
xmlns:android="http://schemas.android.com/apk/res/android">
<org.chromium.chrome.browser.preferences.ChromeSwitchPreferenceCompat
<org.chromium.chrome.browser.preferences.ChromeSwitchPreference
+ android:key="ntp_is_homepage_switch"
+ android:summaryOn="@string/options_ntp_is_homepage_label"
+ android:summaryOff="@string/options_ntp_is_homepage_label" />
@ -106,8 +106,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Hom
return true;
});
+ ChromeSwitchPreferenceCompat mNTPIsHomepageSwitch =
+ (ChromeSwitchPreferenceCompat) findPreference(PREF_NTP_HOMEPAGE_SWITCH);
+ ChromeSwitchPreference mNTPIsHomepageSwitch =
+ (ChromeSwitchPreference) findPreference(PREF_NTP_HOMEPAGE_SWITCH);
+ boolean isHomepageNTPEnabled = mHomepageManager.getPrefNTPIsHomepageEnabled();
+ mNTPIsHomepageSwitch.setChecked(isHomepageNTPEnabled);
+ mNTPIsHomepageSwitch.setOnPreferenceChangeListener((preference, newValue) -> {
@ -153,7 +153,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabCre
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -648,6 +648,9 @@ CHAR-LIMIT guidelines:
@@ -663,6 +663,9 @@ CHAR-LIMIT guidelines:
<message name="IDS_OPTIONS_HOMEPAGE_EDIT_LABEL" desc="The label for the edit text field that allows the user to change the URL that is opened when they tap on the home page button in the omnibox.">
Open this page
</message>
@ -192,8 +192,8 @@ diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -314,6 +314,7 @@ extern const char kDeviceWebUsbAllowDevicesForUrls[];
extern const char kLoginExtensionApiDataForNextLoginAttempt[];
@@ -318,6 +318,7 @@ extern const char kSettingsShowBrowserBanner[];
extern const char kSettingsShowOSBanner[];
#endif // defined(OS_CHROMEOS)
extern const char kShowHomeButton[];
+extern const char kNewTabPageIsHomePage[];

View file

@ -14,7 +14,7 @@ Subject: Add site settings option for session-only cookies
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
@@ -36,6 +36,9 @@
@@ -32,6 +32,9 @@
<integer name="reload_button_level_reload">0</integer>
<integer name="reload_button_level_stop">1</integer>
@ -32,14 +32,14 @@ diff --git a/chrome/android/java/res/xml/website_preferences.xml b/chrome/androi
android:defaultValue="true"
android:persistent="false" />
+ <!-- A toggle for cookies to be saved only until session exit, only shown for the Cookies category. -->
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
+ android:key="cookies_session_only"
+ android:title="@string/allow_cookies_session_only_title"
+ android:summary="@string/allow_cookies_session_only_summary"
+ android:defaultValue="true"
+ android:persistent="false" />
<!-- A toggle for enabling vibration in notifications. -->
<org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
<org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
android:key="notifications_vibrate"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/PrefServiceBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/PrefServiceBridge.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/PrefServiceBridge.java
@ -55,7 +55,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Pre
/**
* @return Whether third-party cookie blocking is configured by policy
*/
@@ -620,6 +624,10 @@ public class PrefServiceBridge {
@@ -631,6 +635,10 @@ public class PrefServiceBridge {
nativeSetBlockThirdPartyCookiesEnabled(enabled);
}
@ -66,7 +66,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Pre
public void setDoNotTrackEnabled(boolean enabled) {
nativeSetDoNotTrackEnabled(enabled);
}
@@ -1070,6 +1078,7 @@ public class PrefServiceBridge {
@@ -1094,6 +1102,7 @@ public class PrefServiceBridge {
private native boolean nativeGetAutoplayEnabled();
private native boolean nativeGetBackgroundSyncEnabled();
private native boolean nativeGetBlockThirdPartyCookiesEnabled();
@ -74,7 +74,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Pre
private native boolean nativeGetBlockThirdPartyCookiesManaged();
private native boolean nativeGetRememberPasswordsEnabled();
private native boolean nativeGetPasswordManagerAutoSigninEnabled();
@@ -1115,6 +1124,7 @@ public class PrefServiceBridge {
@@ -1141,6 +1150,7 @@ public class PrefServiceBridge {
private native void nativeSetAutoplayEnabled(boolean enabled);
private native void nativeSetAllowCookiesEnabled(boolean enabled);
private native void nativeSetBackgroundSyncEnabled(boolean enabled);
@ -146,12 +146,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/web
}
// Configure/hide the notifications vibrate toggle, as needed.
@@ -1005,6 +1015,15 @@ public class SingleCategoryPreferences extends PreferenceFragmentCompat
@@ -1003,6 +1013,15 @@ public class SingleCategoryPreferences extends PreferenceFragmentCompat
preference -> PrefServiceBridge.getInstance().isBlockThirdPartyCookiesManaged());
}
+ private void updateCookiesSessionOnlyCheckBox() {
+ ChromeBaseCheckBoxPreferenceCompat cookiesSessionOnlyPref = (ChromeBaseCheckBoxPreferenceCompat)
+ ChromeBaseCheckBoxPreference cookiesSessionOnlyPref = (ChromeBaseCheckBoxPreference)
+ getPreferenceScreen().findPreference(COOKIES_SESSION_ONLY_TOGGLE_KEY);
+ cookiesSessionOnlyPref.setChecked(
+ PrefServiceBridge.getInstance().isCookiesSessionOnlyEnabled());
@ -160,12 +160,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/web
+ }
+
private void updateNotificationsVibrateCheckBox() {
ChromeBaseCheckBoxPreferenceCompat preference =
(ChromeBaseCheckBoxPreferenceCompat) getPreferenceScreen().findPreference(
ChromeBaseCheckBoxPreference preference =
(ChromeBaseCheckBoxPreference) getPreferenceScreen().findPreference(
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -880,6 +880,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -901,6 +901,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_BLOCK_THIRD_PARTY_COOKIES_SUMMARY" desc="Summary text for Block Third Party Cookies preference">
Prevent third-party websites from saving and reading cookie data
</message>
@ -199,7 +199,7 @@ diff --git a/chrome/browser/android/preferences/pref_service_bridge.cc b/chrome/
static jboolean JNI_PrefServiceBridge_GetBlockThirdPartyCookiesManaged(
JNIEnv* env,
const JavaParamRef<jobject>& obj) {
@@ -771,6 +782,20 @@ static void JNI_PrefServiceBridge_SetBlockThirdPartyCookiesEnabled(
@@ -785,6 +796,20 @@ static void JNI_PrefServiceBridge_SetBlockThirdPartyCookiesEnabled(
GetPrefService()->SetBoolean(prefs::kBlockThirdPartyCookies, enabled);
}

View file

@ -12,20 +12,20 @@ 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
@@ -1603,6 +1603,10 @@ const FeatureEntry kFeatureEntries[] = {
{"debug-packed-apps", flag_descriptions::kDebugPackedAppName,
flag_descriptions::kDebugPackedAppDescription, kOsDesktop,
SINGLE_VALUE_TYPE(switches::kDebugPackedApps)},
FEATURE_VALUE_TYPE(features::kAppNotificationStatusMessaging)},
#endif // OS_ANDROID
{"enable-devtools-experiments", flag_descriptions::kDevtoolsExperimentsName,
+ {"resume-background-video",
+ flag_descriptions::kResumeBackgroundVideoName,
+ flag_descriptions::kResumeBackgroundVideoDescription, kOsAll,
+ FEATURE_VALUE_TYPE(media::kResumeBackgroundVideo)},
{"automatic-password-generation",
flag_descriptions::kAutomaticPasswordGenerationName,
flag_descriptions::kAutomaticPasswordGenerationDescription, kOsAll,
flag_descriptions::kDevtoolsExperimentsDescription, kOsDesktop,
SINGLE_VALUE_TYPE(switches::kEnableDevToolsExperiments)},
{"silent-debugger-extension-api",
diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_impl.cc
--- a/media/blink/webmediaplayer_impl.cc
+++ b/media/blink/webmediaplayer_impl.cc
@@ -960,6 +960,12 @@ bool WebMediaPlayerImpl::HasAudio() const {
@@ -976,6 +976,12 @@ bool WebMediaPlayerImpl::HasAudio() const {
return pipeline_metadata_.has_audio;
}
@ -38,7 +38,7 @@ diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_imp
void WebMediaPlayerImpl::EnabledAudioTracksChanged(
const blink::WebVector<blink::WebMediaPlayer::TrackId>& enabledTrackIds) {
DCHECK(main_task_runner_->BelongsToCurrentThread());
@@ -3259,7 +3265,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
@@ -3278,7 +3284,11 @@ bool WebMediaPlayerImpl::ShouldPausePlaybackWhenHidden() const {
// Audio only stream is allowed to play when in background.
// TODO: We should check IsBackgroundOptimizationCandidate here. But we need
// to move the logic of checking video frames out of that function.
@ -54,7 +54,7 @@ diff --git a/media/blink/webmediaplayer_impl.cc b/media/blink/webmediaplayer_imp
diff --git a/media/blink/webmediaplayer_impl.h b/media/blink/webmediaplayer_impl.h
--- a/media/blink/webmediaplayer_impl.h
+++ b/media/blink/webmediaplayer_impl.h
@@ -141,6 +141,8 @@ class MEDIA_BLINK_EXPORT WebMediaPlayerImpl
@@ -142,6 +142,8 @@ class MEDIA_BLINK_EXPORT WebMediaPlayerImpl
// True if the loaded media has a playable video/audio track.
bool HasVideo() const override;
bool HasAudio() const override;

View file

@ -10,7 +10,7 @@ Disable prefs::kSigninAllowedOnNextStartup by default. The setting can be found
diff --git a/chrome/browser/signin/account_consistency_mode_manager.cc b/chrome/browser/signin/account_consistency_mode_manager.cc
--- a/chrome/browser/signin/account_consistency_mode_manager.cc
+++ b/chrome/browser/signin/account_consistency_mode_manager.cc
@@ -145,7 +145,7 @@ void AccountConsistencyModeManager::RegisterProfilePrefs(
@@ -152,7 +152,7 @@ void AccountConsistencyModeManager::RegisterProfilePrefs(
registry->RegisterBooleanPref(prefs::kAccountConsistencyMirrorRequired,
false);
#endif

View file

@ -11,7 +11,7 @@ Do not read experiment value for cronet async DNS configuration
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
@@ -216,7 +216,7 @@ void OnAuthPrefsChanged(PrefService* local_state,
@@ -244,7 +244,7 @@ void OnAuthPrefsChanged(PrefService* local_state,
// Android this includes checking the Android version in the field trial.
bool ShouldEnableAsyncDns() {
bool feature_can_be_enabled = true;

View file

@ -19,7 +19,7 @@ This allows removing the home page button and restoring it from settings.
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
@@ -347,18 +347,6 @@ public class ProcessInitializationHandler {
@@ -356,18 +356,6 @@ public class ProcessInitializationHandler {
deferredStartupHandler.addDeferredTask(new Runnable() {
@Override
public void run() {
@ -106,7 +106,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Chr
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
@@ -207,15 +207,11 @@ public class MainPreferences extends PreferenceFragmentCompat
@@ -206,15 +206,11 @@ public class MainPreferences extends PreferenceFragmentCompat
updateSyncAndServicesPreference();
updateSearchEnginePreference();
@ -137,7 +137,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/util/FeatureUti
private static Boolean sIsHomepageTileEnabled;
private static Boolean sIsNewTabPageButtonEnabled;
private static Boolean sIsBottomToolbarEnabled;
@@ -176,7 +175,6 @@ public class FeatureUtilities {
@@ -178,7 +177,6 @@ public class FeatureUtilities {
public static void cacheNativeFlags() {
cacheCommandLineOnNonRootedEnabled();
FirstRunUtils.cacheFirstRunPrefs();
@ -145,7 +145,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/util/FeatureUti
cacheHomepageTileEnabled();
cacheNewTabPageButtonEnabled();
cacheBottomToolbarEnabled();
@@ -224,38 +222,6 @@ public class FeatureUtilities {
@@ -228,38 +226,6 @@ public class FeatureUtilities {
return Build.VERSION.SDK_INT > Build.VERSION_CODES.M;
}
@ -181,13 +181,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/util/FeatureUti
- sIsHomePageButtonForceEnabled = null;
- }
-
private static void cacheNetworkService() {
boolean networkService = ChromeFeatureList.isEnabled(ChromeFeatureList.NETWORK_SERVICE);
private static void cacheServiceManagerForDownloadResumption() {
boolean resumptionDownloadInReducedMode =
ChromeFeatureList.isEnabled(ChromeFeatureList.SERVICE_MANAGER_FOR_DOWNLOAD);
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
@@ -1774,9 +1774,6 @@ const FeatureEntry kFeatureEntries[] = {
@@ -1932,9 +1932,6 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-chrome-duet-labels", flag_descriptions::kChromeDuetLabelsName,
flag_descriptions::kChromeDuetLabelsDescription, kOsAndroid,
FEATURE_VALUE_TYPE(chrome::android::kChromeDuetLabeled)},
@ -200,7 +200,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/android/chrome_feature_list.cc
--- a/chrome/browser/android/chrome_feature_list.cc
+++ b/chrome/browser/android/chrome_feature_list.cc
@@ -136,7 +136,6 @@ const base::Feature* kFeaturesExposedToJava[] = {
@@ -143,7 +143,6 @@ const base::Feature* kFeaturesExposedToJava[] = {
&kEphemeralTab,
&kExploreSites,
&kHandleMediaIntents,
@ -208,7 +208,7 @@ diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/andr
&kHomepageTile,
&kHorizontalTabSwitcherAndroid,
&kIdentityDisc,
@@ -413,9 +412,6 @@ const base::Feature kForegroundNotificationManager{
@@ -439,9 +438,6 @@ const base::Feature kForegroundNotificationManager{
const base::Feature kHandleMediaIntents{"HandleMediaIntents",
base::FEATURE_ENABLED_BY_DEFAULT};
@ -221,7 +221,7 @@ diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/andr
diff --git a/chrome/browser/android/chrome_feature_list.h b/chrome/browser/android/chrome_feature_list.h
--- a/chrome/browser/android/chrome_feature_list.h
+++ b/chrome/browser/android/chrome_feature_list.h
@@ -72,7 +72,6 @@ extern const base::Feature kEphemeralTab;
@@ -77,7 +77,6 @@ extern const base::Feature kEphemeralTab;
extern const base::Feature kExploreSites;
extern const base::Feature kForegroundNotificationManager;
extern const base::Feature kHandleMediaIntents;

View file

@ -35,15 +35,15 @@ diff --git a/third_party/blink/renderer/modules/webaudio/audio_buffer.idl b/thir
// Channel access
readonly attribute unsigned long numberOfChannels;
- [HighEntropy, Measure, RaisesException] Float32Array getChannelData(unsigned long channelIndex);
- [HighEntropy, Measure, RaisesException] void copyFromChannel(Float32Array destination, long channelNumber, optional unsigned long startInChannel = 0);
- [HighEntropy, Measure, RaisesException] void copyFromChannel(Float32Array destination, long channelNumber, optional unsigned long bufferOffset = 0);
+ //[HighEntropy, Measure, RaisesException] Float32Array getChannelData(unsigned long channelIndex);
+ //[HighEntropy, Measure, RaisesException] void copyFromChannel(Float32Array destination, long channelNumber, optional unsigned long startInChannel = 0);
[RaisesException] void copyToChannel(Float32Array source, long channelNumber, optional unsigned long startInChannel = 0);
+ //[HighEntropy, Measure, RaisesException] void copyFromChannel(Float32Array destination, long channelNumber, optional unsigned long bufferOffset = 0);
[RaisesException] void copyToChannel(Float32Array source, long channelNumber, optional unsigned long bufferOffset = 0);
};
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
@@ -336,6 +336,7 @@ void AudioContext::StopRendering() {
@@ -343,6 +343,7 @@ void AudioContext::StopRendering() {
double AudioContext::baseLatency() const {
DCHECK(IsMainThread());
DCHECK(destination());

View file

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

View file

@ -1,572 +0,0 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Sat, 14 Sep 2019 10:14:54 +0200
Subject: Bromite AdBlock engine for SystemWebView
---
android_webview/browser/net/aw_network_delegate.cc | 71 ++++
android_webview/browser/net/aw_network_delegate.h | 3 +
net/BUILD.gn | 7 +
net/url_request/adblock_intercept.cc | 389 +++++++++++++++++++++
net/url_request/adblock_intercept.h | 35 ++
5 files changed, 505 insertions(+)
create mode 100644 net/url_request/adblock_intercept.cc
create mode 100644 net/url_request/adblock_intercept.h
diff --git a/android_webview/browser/net/aw_network_delegate.cc b/android_webview/browser/net/aw_network_delegate.cc
--- a/android_webview/browser/net/aw_network_delegate.cc
+++ b/android_webview/browser/net/aw_network_delegate.cc
@@ -20,9 +20,11 @@
#include "net/base/proxy_server.h"
#include "net/http/http_response_headers.h"
#include "net/proxy_resolution/proxy_info.h"
+#include "net/url_request/adblock_intercept.h"
#include "net/url_request/url_request.h"
using content::BrowserThread;
+using content::ResourceRequestInfo;
namespace android_webview {
@@ -49,6 +51,75 @@ AwNetworkDelegate::AwNetworkDelegate() {}
AwNetworkDelegate::~AwNetworkDelegate() {
}
+#define TRANSPARENT1PXGIF "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
+#define EMPTYJS "data:text/javascript;base64,Cg=="
+#define EMPTYCSS "data:text/css;base64,Cg=="
+
+static bool requestIntercepted(net::URLRequest* request, GURL* new_url) {
+ bool block = false, isValidUrl;
+
+ // skip invalid URLs and browser-initiated requests (which have no initiator)
+ auto initiator = request->initiator();
+ isValidUrl = request->url().is_valid() && initiator.has_value();
+ std::string scheme = request->url().scheme();
+ if (isValidUrl && scheme.length()) {
+ std::transform(scheme.begin(), scheme.end(), scheme.begin(), ::tolower);
+ if ("http" != scheme && "https" != scheme) {
+ isValidUrl = false;
+ }
+ }
+ ResourceRequestInfo* info;
+ if (isValidUrl) {
+ info = ResourceRequestInfo::ForRequest(request);
+ }
+
+ // there are no per-site nor global ad/content settings when using the SystemWebView
+ bool adblock_enabled = true;
+ if (isValidUrl && info) {
+ auto resource_type = info->GetResourceType();
+
+ if (adblock_enabled
+ && content::ResourceType::kMainFrame != resource_type
+ && net::adblock_intercept(request->url(), initiator->host(), resource_type)) {
+ block = true;
+ }
+
+ if (block) {
+ switch (resource_type) {
+ case content::ResourceType::kImage:
+ case content::ResourceType::kFavicon:
+ *new_url = GURL(TRANSPARENT1PXGIF);
+ break;
+ case content::ResourceType::kScript:
+ *new_url = GURL(EMPTYJS);
+ break;
+ case content::ResourceType::kStylesheet:
+ *new_url = GURL(EMPTYCSS);
+ break;
+ default:
+ *new_url = GURL("");
+ return true;
+ }
+ }
+ } // valid URL and info
+ return false;
+}
+#undef TRANSPARENT1PXGIF
+#undef EMPTYJS
+#undef EMPTYCSS
+
+int AwNetworkDelegate::OnBeforeURLRequest(net::URLRequest* request,
+ net::CompletionOnceCallback callback,
+ GURL* new_url) {
+ if (request) {
+ // most requests will be modified rather than intercepted
+ if (requestIntercepted(request, new_url))
+ return net::ERR_BLOCKED_BY_ADMINISTRATOR;
+ } // request
+
+ return net::OK;
+}
+
int AwNetworkDelegate::OnBeforeStartTransaction(
net::URLRequest* request,
net::CompletionOnceCallback callback,
diff --git a/android_webview/browser/net/aw_network_delegate.h b/android_webview/browser/net/aw_network_delegate.h
--- a/android_webview/browser/net/aw_network_delegate.h
+++ b/android_webview/browser/net/aw_network_delegate.h
@@ -22,6 +22,9 @@ class AwNetworkDelegate : public net::NetworkDelegateImpl {
private:
// NetworkDelegate implementation.
+ int OnBeforeURLRequest(net::URLRequest* request,
+ net::CompletionOnceCallback callback,
+ GURL* new_url) override;
int OnBeforeStartTransaction(net::URLRequest* request,
net::CompletionOnceCallback callback,
net::HttpRequestHeaders* headers) override;
diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn
+++ b/net/BUILD.gn
@@ -1842,6 +1842,13 @@ component("net") {
"url_request/websocket_handshake_userdata_key.h",
]
+ if (is_android) {
+ sources += [
+ "url_request/adblock_intercept.cc",
+ "url_request/adblock_intercept.h"
+ ]
+ }
+
if (enable_reporting) {
sources += [
"network_error_logging/network_error_logging_service.cc",
diff --git a/net/url_request/adblock_intercept.cc b/net/url_request/adblock_intercept.cc
new file mode 100644
--- /dev/null
+++ b/net/url_request/adblock_intercept.cc
@@ -0,0 +1,389 @@
+/*
+ This file is part of Bromite.
+
+ Bromite is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Bromite is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Bromite. If not, see <https://www.gnu.org/licenses/>.
+*/
+#include "adblock_intercept.h"
+
+#ifdef ADB_TESTER
+#include <cstddef>
+#include <cstdlib>
+#include <string.h>
+
+#include "log.h"
+#include <tld.h>
+
+#else
+
+#include "net/base/registry_controlled_domains/registry_controlled_domain.h"
+#include <android/log.h>
+
+#endif
+
+#include "net/url_request/adblock_entries.h"
+
+namespace net {
+
+const char *LOG_TAG = "Bromite";
+
+#ifdef ADB_TESTER
+int adblock_rules_count() { return ADBLOCK_ENTRY_COUNT; }
+#endif
+
+// True if the given canonical |host| is "[www.]<domain_in_lower_case>.<TLD>"
+// with a valid TLD. If |subdomain_permission| is ALLOW_SUBDOMAIN, we check
+// against host "*.<domain_in_lower_case>.<TLD>" instead. Will return the TLD
+// string in |tld|, if specified and the |host| can be parsed.
+static bool is_first_party(const char *l_host, int len, const char *l_url_host,
+ int b_len) {
+ size_t tld_length;
+
+#ifdef ADB_TESTER
+ char *found_tld;
+
+ if (TLD_SUCCESS != tld_get_z(l_host, &found_tld))
+ return false;
+ tld_length = strlen(found_tld);
+ if (tld_length == 0)
+ return false;
+#else
+ tld_length = net::registry_controlled_domains::GetCanonicalHostRegistryLength(
+ l_host, net::registry_controlled_domains::EXCLUDE_UNKNOWN_REGISTRIES,
+ net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES);
+ if ((tld_length == 0) || (tld_length == std::string::npos))
+ return false;
+#endif
+
+ const char *tld = l_host + len - tld_length;
+
+ // Removes any subdomain from origin host.
+ int i = len - tld_length - 2, top_i = i;
+ if (i < 0) {
+ return false;
+ }
+ const char *domain = l_host;
+ for (; i >= 0; i--) {
+ if (l_host[i] == '.') {
+ int p_len = top_i - i;
+ // skip "co" in "co.uk", "org" in "org.uk"
+ if (p_len <= 3) {
+ tld -= p_len + 1;
+ continue;
+ }
+
+ // segment is long enough, accept it at as a domain
+ domain = l_host + i;
+ len -= i;
+ break;
+ }
+ }
+
+#ifdef ADBLOCK_LOG
+ __android_log_print(ANDROID_LOG_INFO, LOG_TAG,
+ "%s: extracted domain suffix: \"%s\" (TLD=\"%s\")",
+ l_host, domain, tld);
+#endif
+
+ // Check if supplied URL host matches, including the dot.
+ if (b_len < len) {
+ return false;
+ }
+ for (int i = 0; i < len; i++) {
+ if (l_url_host[b_len - 1 - i] != domain[len - 1 - i])
+ return false;
+ }
+
+ // pass with flying colors
+ return true;
+}
+
+static char *strtolower(const char *str, int len, bool &should_free) {
+ char *ret = NULL;
+ for (int i = 0; i < len; i++) {
+ if ((65 <= str[i]) && (str[i] <= 90)) {
+ // first time a difference is found, allocate buffer and copy previous
+ // characters (if any)
+ if (ret == NULL) {
+ ret = (char *)malloc(len + 1);
+ if (i != 0)
+ memcpy(ret, str, i);
+ }
+ // convert character to lower case
+ ret[i] = str[i] + 32;
+ } else {
+ if (ret != NULL)
+ ret[i] = str[i];
+ }
+ }
+
+ if (ret != NULL) {
+ ret[len] = '\0';
+ should_free = true;
+ return ret;
+ }
+
+ // return source, unchanged
+ return (char *)str;
+}
+
+static char *strtosep(const char *str, int len) {
+ char *ret = (char *)malloc(len + 3);
+ ret[0] = '^';
+ for (int i = 0; i < len; i++) {
+ if ((str[i] == ':') || (str[i] == '/') || (str[i] == '?') ||
+ (str[i] == '&') || (str[i] == '=')) {
+ ret[i + 1] = '^';
+ } else {
+ ret[i + 1] = str[i];
+ }
+ }
+ // the index 'len' character is set by the previous loop
+ ret[len + 1] = '^';
+ ret[len + 2] = '\0';
+ return ret;
+}
+
+static bool url_matches(const char *c_url, char *c_url_sep, char *c_url_lower,
+ char *c_url_lower_sep, adblock_entry *entry) {
+ bool match = false;
+ // select comparison string based on case and separator presence (separator
+ // takes some shortcuts)
+ bool match_case = ((entry->flags & ADBLOCK_FLAG_MATCH_CASE) != 0);
+ bool match_separator = ((entry->flags & ADBLOCK_FLAG_HAS_SEPARATOR) != 0);
+ const char *match_url =
+ match_case ? (match_separator ? c_url_sep : c_url)
+ : (match_separator ? c_url_lower_sep : c_url_lower);
+
+#ifdef ADBLOCK_LOG_MORE
+ __android_log_print(ANDROID_LOG_INFO, LOG_TAG, "[case:%d][sep:%d][%s]",
+ match_case, match_separator, match_url);
+#endif
+ // check for all match parts at >= position of last match
+ const char *last = match_url;
+ for (int m = 0; const char *url_match = entry->matches[m]; m++) {
+ bool is_last_match = entry->matches[m + 1] == NULL;
+ const char *pos = strstr(last, url_match);
+ match = (pos != NULL);
+
+#ifdef ADBLOCK_LOG_MORE
+ __android_log_print(ANDROID_LOG_INFO, LOG_TAG, "[%s][found:%d][match:%d]",
+ entry->matches[m], pos == NULL ? 0 : 1, match ? 1 : 0);
+#endif
+ // check if the url starts with the first match part
+ if (match && (m == 0) && ((entry->flags & ADBLOCK_FLAG_MATCH_BEGIN) != 0) &&
+ (pos != match_url))
+ match = false;
+
+ // check if the url ends with the last match part
+ if (match && is_last_match &&
+ ((entry->flags & ADBLOCK_FLAG_MATCH_END) != 0) &&
+ (pos != &match_url[strlen(match_url) - strlen(entry->matches[m])]))
+ match = false;
+
+ // check domain match
+ if (match && (m == 0) &&
+ ((entry->flags & ADBLOCK_FLAG_MATCH_DOMAIN) != 0) &&
+ (pos != match_url) && (pos[-1] != '^') && (pos[-1] != '.') &&
+ (pos[-1] != '/'))
+ match = false;
+
+ // short circuit
+ if (!match)
+ break;
+ }
+ return match;
+}
+
+bool url_match_domain(adblock_entry *entry, const std::string &origin_host) {
+ bool match_domain = true;
+ // check for a negative domain match
+ if (entry->domains_skip) {
+ if (origin_host.empty()) {
+ // skip this rule, cannot match on domain
+ return false;
+ }
+ for (int d = 0; const char *domain = entry->domains_skip[d]; d++) {
+ if (domain == origin_host) {
+ match_domain = false;
+ break;
+ }
+ }
+ }
+
+ // check for a required positive domain match
+ if (entry->domains) {
+ if (origin_host.empty()) {
+ // skip this rule, cannot match on domain
+ return false;
+ }
+ for (int d = 0; const char *domain = entry->domains[d]; d++) {
+ if (domain != origin_host) {
+ match_domain = false;
+ break;
+ }
+ }
+ }
+ return match_domain;
+}
+
+static bool url_match_party(adblock_entry *entry, const char *l_origin_host,
+ int origin_host_len, const char *l_url_host,
+ int url_host_len, bool &checked_fp, bool &fp) {
+ bool wanted_fp;
+ if ((entry->flags & ADBLOCK_FLAG_THIRD_PARTY) != 0) {
+ wanted_fp = false;
+ } else if ((entry->flags & ADBLOCK_FLAG_FIRST_PARTY) != 0) {
+ wanted_fp = true;
+ } else {
+ // no-op
+ return true;
+ }
+
+ if (origin_host_len == 0) {
+ // cannot match this rule, no origin host to determine first/third party
+ return false;
+ }
+
+ if (!checked_fp) {
+ // is the URL a first-party to the current page's host?
+ fp = is_first_party(l_origin_host, origin_host_len, l_url_host,
+ url_host_len);
+
+ checked_fp = true;
+#ifdef ADB_TESTER
+ __android_log_print(ANDROID_LOG_INFO, LOG_TAG,
+ "is_first_party(\"%s\", \"%s\") = %s", l_origin_host,
+ l_url_host, fp ? "true" : "false");
+#endif
+ }
+
+ return fp == wanted_fp;
+}
+
+static bool resource_type_match(adblock_entry *entry,
+ content::ResourceType resource_type) {
+ bool exclude;
+ if ((entry->flags & ADBLOCK_FLAG_RESOURCE_TYPE_IN) != 0) {
+ exclude = false;
+ } else if ((entry->flags & ADBLOCK_FLAG_RESOURCE_TYPE_NOT_IN) != 0) {
+ exclude = true;
+ } else {
+ // no resource type matching
+ return true;
+ }
+
+ // use a bitwise trick to test for the current resource type
+ bool found = (entry->flags & (int(resource_type) << 16));
+ if (!exclude)
+ return found;
+ return !found;
+}
+
+int adblock_intercept(const GURL &url, const std::string &origin_host,
+ content::ResourceType resource_type) {
+ // these are verified on caller when not testing
+#ifdef ADB_TESTER
+ if (!url.is_valid() || !url.SchemeIsHTTPOrHTTPS()) {
+ return 0;
+ }
+#endif
+
+ bool free1 = false, free2 = false, free3 = false, free4 = false;
+ int url_len = url.spec().size();
+ const char *c_url = url.spec().c_str();
+ char *c_url_lower = strtolower(c_url, url_len, free1);
+ char *c_url_sep = strtosep(c_url, url_len);
+ char *c_url_lower_sep = strtolower(c_url_sep, url_len + 2, free4);
+
+ // might be empty in case of no host
+ const char *origin_host_cstr = origin_host.c_str();
+ int origin_host_len = origin_host.size(), url_host_len = url.host().size();
+
+ // lower-case version of origin and url hosts
+ const char *c_origin_host_lower =
+ strtolower(origin_host_cstr, origin_host_len, free2),
+ *c_url_host_lower =
+ strtolower(url.host().c_str(), url_host_len, free3);
+
+#ifdef ADBLOCK_LOG
+ __android_log_print(ANDROID_LOG_INFO, LOG_TAG, "[%s with host '%s'] [%s]",
+ c_url, url.host().c_str(), origin_host_cstr);
+#endif
+
+ bool checked_fp = false, fp = false;
+
+ bool intercept = false;
+ for (int i = 0; i < ADBLOCK_ENTRY_COUNT; i++) {
+ adblock_entry *entry = &ADBLOCK_ENTRIES[i];
+
+ // no use checking rules when we're intercepting, or exceptions when not
+ bool check =
+ (!intercept && ((entry->flags & ADBLOCK_FLAG_EXCEPTION) == 0)) ||
+ (intercept && ((entry->flags & ADBLOCK_FLAG_EXCEPTION) != 0));
+ if (!check)
+ continue;
+
+ // check for resource type
+ if (!resource_type_match(entry, resource_type))
+ continue;
+
+ // check for domain matches, a quick branch out if not matching
+ if (!url_match_domain(entry, origin_host))
+ continue;
+
+ // check on the URL matcher
+ if (!url_matches(c_url, c_url_sep, c_url_lower, c_url_lower_sep, entry))
+ continue;
+
+ // finally check first/third-party
+ if (!url_match_party(entry, c_origin_host_lower, origin_host_len,
+ c_url_host_lower, url_host_len, checked_fp, fp))
+ continue;
+
+#ifdef ADBLOCK_LOG
+ if (!intercept) {
+ __android_log_print(ANDROID_LOG_INFO, LOG_TAG,
+ "--> intercept (#%d: \"%s\") (%x)", i,
+ entry->matches[0], entry->flags);
+ } else {
+ __android_log_print(ANDROID_LOG_INFO, LOG_TAG, "--> pass (%d) (#%d)", i,
+ entry->flags);
+ }
+#endif
+ intercept = !intercept;
+ } // for each entry
+
+ if (free3)
+ free((void *)c_url_host_lower);
+ if (free2)
+ free((void *)c_origin_host_lower);
+ free(c_url_sep);
+ if (free1)
+ free(c_url_lower);
+ if (free4)
+ free(c_url_lower_sep);
+
+ if (intercept) {
+#ifdef ADBLOCK_LOG
+ __android_log_print(ANDROID_LOG_INFO, LOG_TAG, "blocked");
+#endif
+ return 1;
+ }
+#ifdef ADBLOCK_LOG
+ __android_log_print(ANDROID_LOG_INFO, LOG_TAG, "pass");
+#endif
+ return 0;
+}
+
+} // namespace net
diff --git a/net/url_request/adblock_intercept.h b/net/url_request/adblock_intercept.h
new file mode 100644
--- /dev/null
+++ b/net/url_request/adblock_intercept.h
@@ -0,0 +1,35 @@
+/*
+ This file is part of Bromite.
+
+ Bromite is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Bromite is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Bromite. If not, see <https://www.gnu.org/licenses/>.
+*/
+
+#ifndef NET_URL_REQUEST_ADBLOCK_INTERCEPT_H_
+#define NET_URL_REQUEST_ADBLOCK_INTERCEPT_H_
+
+#include "content/public/common/resource_type.h"
+#include "url/gurl.h"
+
+namespace net {
+
+#ifdef ADB_TESTER
+int adblock_rules_count();
+#endif
+
+int adblock_intercept(const GURL &url, const std::string &origin_host,
+ content::ResourceType resource_type);
+
+} // namespace net
+
+#endif // NET_URL_REQUEST_ADBLOCK_INTERCEPT_H_
--
2.11.0

View file

@ -77,7 +77,7 @@ diff --git a/chrome/browser/browser_process.h b/chrome/browser/browser_process.h
namespace extensions {
class EventRouterForwarder;
}
@@ -233,6 +238,8 @@ class BrowserProcess {
@@ -229,6 +234,8 @@ class BrowserProcess {
virtual component_updater::ComponentUpdateService* component_updater() = 0;
@ -89,7 +89,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
@@ -1017,6 +1017,34 @@ BrowserProcessImpl::component_updater() {
@@ -1009,6 +1009,34 @@ BrowserProcessImpl::component_updater() {
return component_updater_.get();
}
@ -135,7 +135,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
component_updater::SupervisedUserWhitelistInstaller*
supervised_user_whitelist_installer() override;
@@ -362,6 +363,8 @@ class BrowserProcessImpl : public BrowserProcess,
@@ -361,6 +362,8 @@ class BrowserProcessImpl : public BrowserProcess,
// but some users of component updater only install per-user.
std::unique_ptr<component_updater::ComponentUpdateService> component_updater_;
@ -147,7 +147,7 @@ diff --git a/chrome/browser/browser_process_impl.h b/chrome/browser/browser_proc
diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_browser_main.cc
--- a/chrome/browser/chrome_browser_main.cc
+++ b/chrome/browser/chrome_browser_main.cc
@@ -1739,8 +1739,11 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1722,8 +1722,11 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
PreBrowserStart();
@ -163,7 +163,7 @@ diff --git a/chrome/browser/chrome_browser_main.cc b/chrome/browser/chrome_brows
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -64,7 +64,6 @@
@@ -65,7 +65,6 @@
#include "chrome/browser/hid/chrome_hid_delegate.h"
#include "chrome/browser/language/translate_frame_binder.h"
#include "chrome/browser/lifetime/browser_shutdown.h"
@ -171,7 +171,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#include "chrome/browser/media/router/media_router_feature.h"
#include "chrome/browser/media/router/presentation/presentation_service_delegate_impl.h"
#include "chrome/browser/media/router/presentation/receiver_presentation_service_delegate_impl.h"
@@ -80,7 +79,6 @@
@@ -81,7 +80,6 @@
#include "chrome/browser/net_benchmarking.h"
#include "chrome/browser/notifications/platform_notification_service_factory.h"
#include "chrome/browser/notifications/platform_notification_service_impl.h"
@ -179,7 +179,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#include "chrome/browser/page_load_metrics/metrics_web_contents_observer.h"
#include "chrome/browser/page_load_metrics/page_load_metrics_util.h"
#include "chrome/browser/password_manager/chrome_password_manager_client.h"
@@ -4083,16 +4081,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4043,16 +4041,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
content::NavigationHandle* handle) {
std::vector<std::unique_ptr<content::NavigationThrottle>> throttles;
@ -196,7 +196,7 @@ diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/ch
#if BUILDFLAG(ENABLE_PLUGINS)
std::unique_ptr<content::NavigationThrottle> flash_url_throttle =
FlashDownloadInterception::MaybeCreateThrottleFor(handle);
@@ -4202,12 +4190,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
@@ -4162,12 +4150,6 @@ ChromeContentBrowserClient::CreateThrottlesForNavigation(
}
#endif
@ -1327,7 +1327,7 @@ diff --git a/content/browser/frame_host/navigation_throttle_runner.cc b/content/
#include "content/browser/frame_host/mixed_content_navigation_throttle.h"
#include "content/browser/frame_host/navigation_handle_impl.h"
#include "content/browser/frame_host/navigator_delegate.h"
@@ -118,15 +117,6 @@ void NavigationThrottleRunner::RegisterNavigationThrottles() {
@@ -120,15 +119,6 @@ void NavigationThrottleRunner::RegisterNavigationThrottles() {
devtools_instrumentation::CreateNavigationThrottles(handle)) {
AddThrottle(std::move(throttle));
}

View file

@ -27,10 +27,10 @@ diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering
-#include "base/rand_util.h"
#include "base/metrics/histogram_functions.h"
#include "base/rand_util.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/platform/platform.h"
@@ -817,7 +816,7 @@ TextMetrics* CanvasRenderingContext2D::measureText(const String& text) {
"Canvas.TextMetrics.MeasureText", elapsed);
GetState().GetTextAlign(), text);
// scale text metrics by 3/1000000th
- auto shuffleFactor = 1 + (base::RandDouble() - 0.5) * 0.000003;
@ -58,7 +58,7 @@ diff --git a/third_party/blink/renderer/modules/webgl/webgl_debug_renderer_info.
diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn
--- a/third_party/blink/renderer/platform/BUILD.gn
+++ b/third_party/blink/renderer/platform/BUILD.gn
@@ -1394,7 +1394,9 @@ jumbo_component("platform") {
@@ -1417,7 +1417,9 @@ jumbo_component("platform") {
"//third_party/blink/renderer:non_test_config",
]

View file

@ -26,7 +26,7 @@ diff --git a/components/ntp_snippets/features.cc b/components/ntp_snippets/featu
+ "KeepPrefetchedContentSuggestions", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kOptionalImagesEnabledFeature{
"NTPRemoteSuggestionsOptionalImages", base::FEATURE_DISABLED_BY_DEFAULT};
"NTPRemoteSuggestionsOptionalImages", base::FEATURE_ENABLED_BY_DEFAULT};
--
2.11.0

View file

@ -36,7 +36,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omaha/VersionNu
diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/android/chrome_feature_list.cc
--- a/chrome/browser/android/chrome_feature_list.cc
+++ b/chrome/browser/android/chrome_feature_list.cc
@@ -439,7 +439,7 @@ const base::Feature kIntentBlockExternalFormRedirectsNoGesture{
@@ -465,7 +465,7 @@ const base::Feature kIntentBlockExternalFormRedirectsNoGesture{
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kJellyBeanSupported{"JellyBeanSupported",

View file

@ -44,7 +44,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/dat
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -1303,9 +1303,6 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1321,9 +1321,6 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_DATA_REDUCTION_DESCRIPTION_LITE_MODE" desc="Text describing how the Lite mode feature works. Seen only before the user has enabled the feature.">
When Lite mode is on, Chrome uses Google servers to make pages load faster. Lite mode rewrites very slow pages to load only essential content. Lite mode does not apply to Incognito tabs.
</message>

View file

@ -13,7 +13,7 @@ Subject: Disable dynamic module loading
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
@@ -410,19 +410,6 @@ chrome_java_sources = [
@@ -418,19 +418,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/customtabs/content/TabCreationMode.java",
"java/src/org/chromium/chrome/browser/customtabs/dependency_injection/CustomTabActivityComponent.java",
"java/src/org/chromium/chrome/browser/customtabs/dependency_injection/CustomTabActivityModule.java",
@ -36,7 +36,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java
@@ -62,7 +62,6 @@ import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvid
@@ -66,7 +66,6 @@ import org.chromium.chrome.browser.customtabs.content.CustomTabIntentHandler.Int
import org.chromium.chrome.browser.customtabs.content.TabCreationMode;
import org.chromium.chrome.browser.customtabs.dependency_injection.CustomTabActivityComponent;
import org.chromium.chrome.browser.customtabs.dependency_injection.CustomTabActivityModule;
@ -44,7 +44,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
import org.chromium.chrome.browser.customtabs.features.CustomTabNavigationBarController;
import org.chromium.chrome.browser.customtabs.features.toolbar.CustomTabToolbarCoordinator;
import org.chromium.chrome.browser.dependency_injection.ChromeActivityCommonsModule;
@@ -129,9 +128,6 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
@@ -136,9 +135,6 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
private final CustomTabsConnection mConnection = CustomTabsConnection.getInstance();
@ -54,7 +54,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
private ActivityTabTaskDescriptionHelper mTaskDescriptionHelper;
private CustomTabNightModeStateController mNightModeStateController;
@@ -298,12 +294,6 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
@@ -308,12 +304,6 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
public void finishNativeInitialization() {
if (!mIntentDataProvider.isInfoPage()) FirstRunSignInProcessor.start(this);
@ -67,7 +67,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
mSessionHandler = new SessionHandler() {
@Override
@@ -433,10 +423,6 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
@@ -432,10 +422,6 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
WebContents webContents = tab == null ? null : tab.getWebContents();
mConnection.resetPostMessageHandlerForSession(
mIntentDataProvider.getSession(), webContents);
@ -78,7 +78,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
}
@Override
@@ -791,10 +777,6 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
@@ -794,10 +780,6 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
if (mIntentDataProvider.isTrustedWebActivity()) {
component.resolveTrustedWebActivityCoordinator();
}
@ -92,15 +92,15 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabIntentDataProvider.java
@@ -42,7 +42,6 @@ import org.chromium.chrome.browser.ChromeSwitches;
@@ -46,7 +46,6 @@ import org.chromium.chrome.browser.ChromeSwitches;
import org.chromium.chrome.browser.ChromeVersionInfo;
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.browserservices.BrowserSessionDataProvider;
import org.chromium.chrome.browser.browserservices.BrowserServicesIntentDataProvider;
-import org.chromium.chrome.browser.customtabs.dynamicmodule.ModuleMetrics;
import org.chromium.chrome.browser.externalauth.ExternalAuthUtils;
import org.chromium.chrome.browser.net.spdyproxy.DataReductionProxySettings;
import org.chromium.chrome.browser.util.ColorUtils;
@@ -870,20 +869,8 @@ public class CustomTabIntentDataProvider extends BrowserSessionDataProvider {
@@ -460,20 +459,8 @@ public class CustomTabIntentDataProvider extends BrowserServicesIntentDataProvid
// even receive the extras for using the feature.
if (componentName == null) return false;
@ -122,20 +122,20 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
+ return false;
}
/**
@NonNull
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabsConnection.java
@@ -57,8 +57,6 @@ import org.chromium.chrome.browser.browserservices.SessionHandler;
import org.chromium.chrome.browser.browserservices.SessionDataHolder;
import org.chromium.chrome.browser.browserservices.Origin;
@@ -59,8 +59,6 @@ import org.chromium.chrome.browser.browserservices.Origin;
import org.chromium.chrome.browser.browserservices.PostMessageHandler;
import org.chromium.chrome.browser.browserservices.SessionDataHolder;
import org.chromium.chrome.browser.browserservices.SessionHandler;
-import org.chromium.chrome.browser.customtabs.dynamicmodule.ModuleLoader;
-import org.chromium.chrome.browser.customtabs.dynamicmodule.ModuleMetrics;
import org.chromium.chrome.browser.device.DeviceClassManager;
import org.chromium.chrome.browser.init.ChainedTasks;
import org.chromium.chrome.browser.init.ChromeBrowserInitializer;
@@ -217,7 +215,6 @@ public class CustomTabsConnection {
@@ -219,7 +217,6 @@ public class CustomTabsConnection {
private volatile ChainedTasks mWarmupTasks;
@ -143,7 +143,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
/**
* <strong>DO NOT CALL</strong>
* Public to be instanciable from {@link ChromeApplication}. This is however
@@ -1354,7 +1351,6 @@ public class CustomTabsConnection {
@@ -1373,7 +1370,6 @@ public class CustomTabsConnection {
if (ChromeApplication.isSevereMemorySignal(level)) {
getInstance().mClientManager.cleanupUnusedSessions();
}
@ -151,9 +151,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
}
@VisibleForTesting
@@ -1495,32 +1491,6 @@ public class CustomTabsConnection {
CustomTabsSessionToken session, String url, String origin, int referrerPolicy,
@DetachedResourceRequestMotivation int motivation);
@@ -1510,32 +1506,6 @@ public class CustomTabsConnection {
recordSpeculationStatusOnSwap(SPECULATION_STATUS_ON_SWAP_BACKGROUND_TAB_NOT_MATCHED);
}
- public ModuleLoader getModuleLoader(ComponentName componentName, @Nullable String assetName) {
- if (!ChromeFeatureList.isEnabled(ChromeFeatureList.CCT_MODULE_DEX_LOADING)) {
@ -187,7 +187,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/Cust
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/dependency_injection/CustomTabActivityComponent.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/dependency_injection/CustomTabActivityComponent.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/dependency_injection/CustomTabActivityComponent.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/dependency_injection/CustomTabActivityComponent.java
@@ -14,8 +14,6 @@ import org.chromium.chrome.browser.customtabs.content.CustomTabActivityNavigatio
@@ -15,8 +15,6 @@ import org.chromium.chrome.browser.customtabs.content.CustomTabActivityNavigatio
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabController;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabFactory;
import org.chromium.chrome.browser.customtabs.content.CustomTabActivityTabProvider;
@ -196,7 +196,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/depe
import org.chromium.chrome.browser.customtabs.features.toolbar.CustomTabToolbarCoordinator;
import org.chromium.chrome.browser.dependency_injection.ActivityScope;
import org.chromium.chrome.browser.dependency_injection.ChromeActivityCommonsModule;
@@ -31,8 +29,6 @@ import dagger.Subcomponent;
@@ -32,8 +30,6 @@ import dagger.Subcomponent;
@ActivityScope
public interface CustomTabActivityComponent extends ChromeActivityComponent {
TrustedWebActivityCoordinator resolveTrustedWebActivityCoordinator();

View file

@ -46,11 +46,11 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureLi
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
@@ -239,17 +239,7 @@ bool GetInstanceManipulations(const net::HttpResponseHeaders* headers,
@@ -240,17 +240,7 @@ 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() {
-#if !defined(GOOGLE_CHROME_BUILD)
-#if !BUILDFLAG(GOOGLE_CHROME_BRANDING)
- if (!base::CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kVariationsServerURL) &&
- !g_should_fetch_for_testing) {

View file

@ -52,7 +52,7 @@ diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profil
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc
--- a/chrome/browser/profiles/profile_impl.cc
+++ b/chrome/browser/profiles/profile_impl.cc
@@ -436,7 +436,7 @@ void ProfileImpl::RegisterProfilePrefs(
@@ -444,7 +444,7 @@ void ProfileImpl::RegisterProfilePrefs(
registry->RegisterStringPref(
prefs::kPrintPreviewDefaultDestinationSelectionRules, std::string());
registry->RegisterBooleanPref(prefs::kForceEphemeralProfiles, false);

View file

@ -78,7 +78,7 @@ diff --git a/components/ntp_tiles/BUILD.gn b/components/ntp_tiles/BUILD.gn
"most_visited_sites.cc",
"most_visited_sites.h",
"ntp_tile.cc",
@@ -77,7 +75,6 @@ source_set("unit_tests") {
@@ -78,7 +76,6 @@ source_set("unit_tests") {
"custom_links_manager_impl_unittest.cc",
"custom_links_store_unittest.cc",
"icon_cacher_impl_unittest.cc",

View file

@ -10,7 +10,7 @@ Subject: Disable metrics on all I/O threads
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc
--- a/chrome/browser/browser_process_impl.cc
+++ b/chrome/browser/browser_process_impl.cc
@@ -917,7 +917,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
@@ -909,7 +909,7 @@ void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) {
#endif // defined(OS_CHROMEOS)
registry->RegisterBooleanPref(metrics::prefs::kMetricsReportingEnabled,
@ -22,15 +22,15 @@ diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_pro
diff --git a/chrome/browser/profiles/profile_io_data.cc b/chrome/browser/profiles/profile_io_data.cc
--- a/chrome/browser/profiles/profile_io_data.cc
+++ b/chrome/browser/profiles/profile_io_data.cc
@@ -49,8 +49,6 @@
@@ -47,8 +47,6 @@
#include "components/content_settings/core/browser/host_content_settings_map.h"
#include "components/cookie_config/cookie_store_util.h"
#include "components/data_reduction_proxy/core/browser/data_reduction_proxy_io_data.h"
#include "components/dom_distiller/core/url_constants.h"
-#include "components/metrics/metrics_pref_names.h"
-#include "components/metrics/metrics_service.h"
#include "components/net_log/chrome_net_log.h"
#include "components/policy/core/common/cloud/user_cloud_policy_manager.h"
#include "components/prefs/pref_service.h"
#include "components/signin/public/base/signin_pref_names.h"
--
2.11.0

View file

@ -11,7 +11,7 @@ a corresponding user option to individually disable their usage.
diff --git a/components/url_formatter/url_formatter.cc b/components/url_formatter/url_formatter.cc
--- a/components/url_formatter/url_formatter.cc
+++ b/components/url_formatter/url_formatter.cc
@@ -434,13 +434,13 @@ bool IDNToUnicodeOneComponent(const base::char16* comp,
@@ -433,13 +433,13 @@ bool IDNToUnicodeOneComponent(const base::char16* comp,
} // namespace
const FormatUrlType kFormatUrlOmitNothing = 0;

View file

@ -9,7 +9,7 @@ Subject: Disable plugins enumeration
diff --git a/third_party/blink/renderer/core/frame/local_frame.cc b/third_party/blink/renderer/core/frame/local_frame.cc
--- a/third_party/blink/renderer/core/frame/local_frame.cc
+++ b/third_party/blink/renderer/core/frame/local_frame.cc
@@ -1186,10 +1186,8 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
@@ -1234,10 +1234,8 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
}
PluginData* LocalFrame::GetPluginData() const {

View file

@ -105,7 +105,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
}
@Override
@@ -397,19 +391,6 @@ class BookmarkItemsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>
@@ -387,19 +381,6 @@ class BookmarkItemsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>
if (currentUIState == BookmarkUIState.STATE_SEARCHING) return;
assert currentUIState == BookmarkUIState.STATE_FOLDER : "Unexpected UI state";
@ -220,7 +220,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/ReorderBookmarkItemsAdapter.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/ReorderBookmarkItemsAdapter.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/ReorderBookmarkItemsAdapter.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/ReorderBookmarkItemsAdapter.java
@@ -167,8 +167,6 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
@@ -186,8 +186,6 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
assert mDelegate != null;
switch (viewType) {
@ -229,7 +229,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Reord
case ViewType.SYNC_PROMO:
return mPromoHeaderManager.createSyncPromoHolder(parent);
case ViewType.FOLDER:
@@ -183,10 +181,7 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
@@ -202,10 +200,7 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
@ -239,9 +239,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Reord
- } else if (!(holder.getItemViewType() == ViewType.SYNC_PROMO)) {
+ if (!(holder.getItemViewType() == ViewType.SYNC_PROMO)) {
BookmarkRow row = ((BookmarkRow) holder.itemView);
row.setBookmarkId(getIdByPosition(position), getLocationFromPosition(position));
row.setDragHandleOnTouchListener((v, event) -> {
@@ -201,13 +196,6 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
BookmarkId id = getIdByPosition(position);
row.setBookmarkId(id, getLocationFromPosition(position));
@@ -229,13 +224,6 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
@Override
public void onViewRecycled(ViewHolder holder) {
@ -255,7 +255,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Reord
}
/**
@@ -352,9 +340,6 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
@@ -404,9 +392,6 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
case BookmarkPromoHeader.PromoState.PROMO_NONE:
mPromoHeaderType = ViewType.INVALID_PROMO;
break;
@ -265,9 +265,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Reord
case BookmarkPromoHeader.PromoState.PROMO_SYNC:
mPromoHeaderType = ViewType.SYNC_PROMO;
break;
@@ -475,4 +460,4 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
return Location.MIDDLE;
}
@@ -571,4 +556,4 @@ class ReorderBookmarkItemsAdapter extends DragReorderableListAdapter<BookmarkIte
private void clearHighlight() {
mHighlightedBookmark = null;
}
-}
\ No newline at end of file

File diff suppressed because it is too large Load diff

View file

@ -9,7 +9,7 @@ Subject: Disable search-ready omnibox by default
diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/android/chrome_feature_list.cc
--- a/chrome/browser/android/chrome_feature_list.cc
+++ b/chrome/browser/android/chrome_feature_list.cc
@@ -494,7 +494,7 @@ const base::Feature kRevampedContextMenu{"RevampedContextMenu",
@@ -518,7 +518,7 @@ const base::Feature kRevampedContextMenu{"RevampedContextMenu",
base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kSearchReadyOmniboxFeature{

View file

@ -9,7 +9,7 @@ Subject: Disable seed-based field trials
diff --git a/components/variations/service/variations_field_trial_creator.cc b/components/variations/service/variations_field_trial_creator.cc
--- a/components/variations/service/variations_field_trial_creator.cc
+++ b/components/variations/service/variations_field_trial_creator.cc
@@ -526,8 +526,10 @@ bool VariationsFieldTrialCreator::SetupFieldTrials(
@@ -535,8 +535,10 @@ bool VariationsFieldTrialCreator::SetupFieldTrials(
#endif // BUILDFLAG(FIELDTRIAL_TESTING_ENABLED)
bool used_seed = false;
if (!used_testing_config) {

View file

@ -5,11 +5,11 @@ Subject: Disable signin and data saver preferences
Never show the data saver promo snackbar
---
chrome/android/java/res/xml/main_preferences.xml | 20 -----
.../android/java/res/xml/privacy_preferences.xml | 8 --
.../android/java/res/xml/privacy_preferences.xml | 7 --
.../browser/preferences/MainPreferences.java | 86 +---------------------
.../preferences/privacy/PrivacyPreferences.java | 17 -----
.../preferences/privacy/PrivacyPreferences.java | 15 ----
.../java/strings/android_chrome_strings.grd | 6 --
5 files changed, 1 insertion(+), 136 deletions(-)
5 files changed, 1 insertion(+), 133 deletions(-)
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
@ -17,7 +17,7 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j
@@ -7,21 +7,6 @@
android:orderingFromXml="false">
<android.support.v7.preference.PreferenceCategory
<PreferenceCategory
- android:key="account_section"
- android:order="0"
- android:title="@string/prefs_section_account"/>
@ -25,33 +25,33 @@ diff --git a/chrome/android/java/res/xml/main_preferences.xml b/chrome/android/j
- android:key="sign_in"
- android:order="1"
- android:title="@string/sign_in_to_chrome"/>
- <org.chromium.chrome.browser.preferences.ChromeBasePreferenceCompat
- <org.chromium.chrome.browser.preferences.ChromeBasePreference
- android:key="sync_and_services"
- android:order="2"
- android:layout="@layout/account_management_account_row"
- android:title="@string/prefs_sync_and_services"
- android:fragment="org.chromium.chrome.browser.preferences.sync.SyncAndServicesPreferences"/>
-
- <android.support.v7.preference.PreferenceCategory
- <PreferenceCategory
android:key="basics_section"
android:order="3"
android:title="@string/prefs_section_basics"/>
@@ -91,11 +76,6 @@
android:order="16"
android:title="@string/prefs_languages"/>
<org.chromium.chrome.browser.preferences.ChromeBasePreferenceCompat
<org.chromium.chrome.browser.preferences.ChromeBasePreference
- android:fragment="org.chromium.chrome.browser.preferences.datareduction.DataReductionPreferenceFragment"
- android:key="data_reduction"
- android:order="17"
- android:title="@string/data_reduction_title_lite_mode"/>
- <org.chromium.chrome.browser.preferences.ChromeBasePreferenceCompat
- <org.chromium.chrome.browser.preferences.ChromeBasePreference
android:fragment="org.chromium.chrome.browser.preferences.download.DownloadPreferences"
android:key="downloads"
android:order="18"
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
@@ -54,12 +54,4 @@
@@ -59,12 +59,5 @@
android:title="@string/clear_browsing_data_title"
android:summary="@string/clear_browsing_data_summary"
android:fragment="org.chromium.chrome.browser.preferences.privacy.ClearBrowsingDataTabsFragment" />
@ -59,11 +59,11 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
- android:key="sync_and_services_link_divider"
- android:layout="@layout/divider_preference"
- android:selectable="false"/>
- <org.chromium.chrome.browser.preferences.TextMessagePreferenceCompat
- <org.chromium.chrome.browser.preferences.TextMessagePreference
- android:key="sync_and_services_link"
- android:summary="@string/privacy_sync_and_services_link"
- app:allowDividerBelow="false" />
</android.support.v7.preference.PreferenceScreen>
app:allowDividerBelow="false" />
</PreferenceScreen>
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
@ -101,7 +101,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Mai
public static final String PREF_DOWNLOADS = "downloads";
@@ -65,7 +58,6 @@ public class MainPreferences extends PreferenceFragmentCompat
private final ManagedPreferenceDelegateCompat mManagedPreferenceDelegate;
private final ManagedPreferenceDelegate mManagedPreferenceDelegate;
private final Map<String, Preference> mAllPreferences = new HashMap<>();
- private SignInPreference mSignInPreference;
@ -164,7 +164,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Mai
}
private void setManagedPreferenceDelegateForPreference(String key) {
@@ -198,13 +167,6 @@ public class MainPreferences extends PreferenceFragmentCompat
@@ -197,13 +166,6 @@ public class MainPreferences extends PreferenceFragmentCompat
}
private void updatePreferences() {
@ -178,32 +178,32 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Mai
updateSearchEnginePreference();
Preference homepagePref = addPreferenceIfAbsent(PREF_HOMEPAGE);
@@ -224,10 +186,6 @@ public class MainPreferences extends PreferenceFragmentCompat
@@ -223,10 +185,6 @@ public class MainPreferences extends PreferenceFragmentCompat
} else {
removePreferenceIfPresent(PREF_DEVELOPER);
}
-
- ChromeBasePreferenceCompat dataReduction =
- (ChromeBasePreferenceCompat) findPreference(PREF_DATA_REDUCTION);
- ChromeBasePreference dataReduction =
- (ChromeBasePreference) findPreference(PREF_DATA_REDUCTION);
- dataReduction.setSummary(DataReductionPreferenceFragment.generateSummary(getResources()));
}
private Preference addPreferenceIfAbsent(String key) {
@@ -241,13 +199,6 @@ public class MainPreferences extends PreferenceFragmentCompat
@@ -240,13 +198,6 @@ public class MainPreferences extends PreferenceFragmentCompat
if (preference != null) getPreferenceScreen().removePreference(preference);
}
- private void updateSyncAndServicesPreference() {
- ChromeBasePreferenceCompat syncAndServices =
- (ChromeBasePreferenceCompat) findPreference(PREF_SYNC_AND_SERVICES);
- ChromeBasePreference syncAndServices =
- (ChromeBasePreference) findPreference(PREF_SYNC_AND_SERVICES);
- syncAndServices.setIcon(SyncPreferenceUtils.getSyncStatusIcon(getActivity()));
- syncAndServices.setSummary(SyncPreferenceUtils.getSyncStatusSummary(getActivity()));
- }
-
private void updateSearchEnginePreference() {
if (!TemplateUrlServiceFactory.get().isLoaded()) {
ChromeBasePreferenceCompat searchEnginePref =
@@ -279,28 +230,6 @@ public class MainPreferences extends PreferenceFragmentCompat
ChromeBasePreference searchEnginePref =
@@ -278,28 +229,6 @@ public class MainPreferences extends PreferenceFragmentCompat
pref.setSummary(getResources().getString(isOn ? R.string.text_on : R.string.text_off));
}
@ -232,7 +232,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Mai
// TemplateUrlService.LoadListener implementation.
@Override
public void onTemplateUrlServiceLoaded() {
@@ -308,11 +237,6 @@ public class MainPreferences extends PreferenceFragmentCompat
@@ -307,11 +236,6 @@ public class MainPreferences extends PreferenceFragmentCompat
updateSearchEnginePreference();
}
@ -242,10 +242,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Mai
- }
-
@VisibleForTesting
ManagedPreferenceDelegateCompat getManagedPreferenceDelegateForTest() {
ManagedPreferenceDelegate getManagedPreferenceDelegateForTest() {
return mManagedPreferenceDelegate;
@@ -322,9 +246,6 @@ public class MainPreferences extends PreferenceFragmentCompat
return new ManagedPreferenceDelegateCompat() {
@@ -321,9 +245,6 @@ public class MainPreferences extends PreferenceFragmentCompat
return new ManagedPreferenceDelegate() {
@Override
public boolean isPreferenceControlledByPolicy(Preference preference) {
- if (PREF_DATA_REDUCTION.equals(preference.getKey())) {
@ -254,7 +254,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/Mai
if (PREF_SEARCH_ENGINE.equals(preference.getKey())) {
return TemplateUrlServiceFactory.get().isDefaultSearchManaged();
}
@@ -333,11 +254,6 @@ public class MainPreferences extends PreferenceFragmentCompat
@@ -332,11 +253,6 @@ public class MainPreferences extends PreferenceFragmentCompat
@Override
public boolean isPreferenceClickDisabledByPolicy(Preference preference) {
@ -286,18 +286,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
- private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link";
private static final String PREF_USAGE_STATS = "usage_stats_reporting";
private ManagedPreferenceDelegateCompat mManagedPreferenceDelegate;
@@ -97,22 +93,9 @@ public class PrivacyPreferences
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
@@ -97,20 +93,9 @@ public class PrivacyPreferences
networkPredictionPref.setOrder(canMakePaymentPref.getOrder());
preferenceScreen.addPreference(networkPredictionPref);
- Preference syncAndServicesLink = findPreference(PREF_SYNC_AND_SERVICES_LINK);
- NoUnderlineClickableSpan linkSpan =
- new NoUnderlineClickableSpan(getResources(), view -> {
- PreferencesLauncher.launchSettingsPage(getActivity(),
- SyncAndServicesPreferences.class,
- SyncAndServicesPreferences.createArguments(false));
- });
- NoUnderlineClickableSpan linkSpan = new NoUnderlineClickableSpan(getResources(), view -> {
- PreferencesLauncher.launchSettingsPage(getActivity(), SyncAndServicesPreferences.class,
- SyncAndServicesPreferences.createArguments(false));
- });
- syncAndServicesLink.setSummary(
- SpanApplier.applySpans(getString(R.string.privacy_sync_and_services_link),
- new SpanApplier.SpanInfo("<link>", "</link>", linkSpan)));
@ -308,12 +306,12 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
- preferenceScreen.removePreference(findPreference(PREF_SYNC_AND_SERVICES_LINK_DIVIDER));
- preferenceScreen.removePreference(findPreference(PREF_SYNC_AND_SERVICES_LINK));
ChromeBaseCheckBoxPreferenceCompat navigationErrorPref =
(ChromeBaseCheckBoxPreferenceCompat) findPreference(PREF_NAVIGATION_ERROR);
ChromeBaseCheckBoxPreference navigationErrorPref =
(ChromeBaseCheckBoxPreference) findPreference(PREF_NAVIGATION_ERROR);
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -339,9 +339,6 @@ CHAR-LIMIT guidelines:
@@ -345,9 +345,6 @@ CHAR-LIMIT guidelines:
</message>
<!-- Sign-in, sync and personalization preferences -->
@ -323,7 +321,7 @@ diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/and
<message name="IDS_SIGN_IN_TO_CHROME" desc="Title for the button to sign in to Chrome using one's Google account. [CHAR-LIMIT=27]">
Sign in to Chrome
</message>
@@ -412,9 +409,6 @@ CHAR-LIMIT guidelines:
@@ -418,9 +415,6 @@ CHAR-LIMIT guidelines:
<message name="IDS_URL_KEYED_ANONYMIZED_DATA_SUMMARY" desc="Summary for a checkbox in Settings that controls non-personalized URL collection and informs the user about the data shared by this feature.">
Sends URLs of pages you visit to Google
</message>

View file

@ -9,7 +9,7 @@ Subject: Disable signin/data reduction promos
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
@@ -785,35 +785,7 @@ public class ChromeTabbedActivity
@@ -799,35 +799,7 @@ public class ChromeTabbedActivity extends ChromeActivity implements ScreenshotMo
try (TraceEvent e = TraceEvent.scoped(
"ChromeTabbedActivity.createToolbarButtonInProductHelpController")) {
ChromePreferenceManager preferenceManager = ChromePreferenceManager.getInstance();

View file

@ -17,8 +17,8 @@ diff --git a/components/content_settings/core/browser/cookie_settings.cc b/compo
- prefs::kBlockThirdPartyCookies, false,
+ prefs::kBlockThirdPartyCookies, true,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(
prefs::kCookieControlsEnabled, false,
registry->RegisterIntegerPref(
prefs::kCookieControlsMode,
--
2.11.0

View file

@ -28,7 +28,7 @@ Fixup more permission removal
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -1131,8 +1131,7 @@ jinja_template_resources("chrome_public_apk_template_resources") {
@@ -1158,8 +1158,7 @@ jinja_template_resources("chrome_public_apk_template_resources") {
resources = [
"java/res_template/xml/file_paths.xml",
"java/res_template/xml/launchershortcuts.xml",
@ -38,7 +38,7 @@ diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
]
res_dir = "java/res_template"
variables = [ "manifest_package=$chrome_public_manifest_package" ]
@@ -1143,7 +1142,6 @@ jinja_template_resources("chrome_test_apk_template_resources") {
@@ -1170,7 +1169,6 @@ jinja_template_resources("chrome_test_apk_template_resources") {
"java/res_template/xml/file_paths.xml",
"java/res_template/xml/launchershortcuts.xml",
"java/res_template/xml/searchable.xml",
@ -81,7 +81,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
{% block extra_uses_permissions %}
{% endblock %}
@@ -981,16 +973,6 @@ by a child template that "extends" this file.
@@ -1009,16 +1001,6 @@ by a child template that "extends" this file.
android:resource="@xml/file_paths" />
</provider>
@ -98,7 +98,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<!-- Broadcast receiver that will be notified of account changes -->
<receiver android:name="org.chromium.chrome.browser.services.AccountsChangedReceiver">
<intent-filter>
@@ -1098,15 +1080,6 @@ by a child template that "extends" this file.
@@ -1126,15 +1108,6 @@ by a child template that "extends" this file.
<service android:name="org.chromium.chrome.browser.services.gcm.InvalidationGcmUpstreamSender"
android:exported="false"/>

View file

@ -9,7 +9,7 @@ Subject: Disable update scheduler
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/component_updater/UpdateScheduler.java b/chrome/android/java/src/org/chromium/chrome/browser/component_updater/UpdateScheduler.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/component_updater/UpdateScheduler.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/component_updater/UpdateScheduler.java
@@ -35,10 +35,7 @@ public class UpdateScheduler {
@@ -36,10 +36,7 @@ public class UpdateScheduler {
@CalledByNative
/* package */ static boolean isAvailable() {
@ -21,10 +21,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/component_updat
}
/* package */ void onStartTaskBeforeNativeLoaded(TaskFinishedCallback callback) {
@@ -108,4 +105,4 @@ public class UpdateScheduler {
private native void nativeOnStartTask(long nativeBackgroundTaskUpdateScheduler);
private native void nativeOnStopTask(long nativeBackgroundTaskUpdateScheduler);
@@ -112,4 +109,4 @@ public class UpdateScheduler {
void onStartTask(long nativeBackgroundTaskUpdateScheduler, UpdateScheduler caller);
void onStopTask(long nativeBackgroundTaskUpdateScheduler, UpdateScheduler caller);
}
-}
\ No newline at end of file
+}

View file

@ -63,7 +63,7 @@ diff --git a/chrome/browser/android/search_permissions/search_permissions_servic
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
@@ -270,7 +270,7 @@ const char kDisallowUnsafeHttpDownloadsParamName[] = "MimeTypeList";
@@ -288,7 +288,7 @@ const base::FeatureParam<std::string> kDnsOverHttpsTemplatesParam{
#if defined(OS_ANDROID)
// Enable changing default downloads storage location on Android.
const base::Feature kDownloadsLocationChange{"DownloadsLocationChange",

View file

@ -6,13 +6,13 @@ Upstream has decided that it works as intended (https://bugs.chromium.org/p/chro
but users would like to decide where to save a file even when there is no SD card available;
do not skip the prompt in such cases.
---
.../download/DownloadLocationDialogBridge.java | 71 +++++++---------------
1 file changed, 21 insertions(+), 50 deletions(-)
.../download/DownloadLocationDialogBridge.java | 73 +++++++---------------
1 file changed, 21 insertions(+), 52 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadLocationDialogBridge.java
@@ -31,9 +31,6 @@ public class DownloadLocationDialogBridge implements ModalDialogProperties.Contr
@@ -32,9 +32,6 @@ public class DownloadLocationDialogBridge implements ModalDialogProperties.Contr
private PropertyModel mDialogModel;
private DownloadLocationCustomView mCustomView;
private ModalDialogManager mModalDialogManager;
@ -22,7 +22,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
private Context mContext;
private DownloadLocationDialogBridge(long nativeDownloadLocationDialogBridge) {
@@ -66,12 +63,28 @@ public class DownloadLocationDialogBridge implements ModalDialogProperties.Contr
@@ -67,12 +64,28 @@ public class DownloadLocationDialogBridge implements ModalDialogProperties.Contr
mModalDialogManager = activity.getModalDialogManager();
mContext = activity;
@ -56,7 +56,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
}
@Override
@@ -104,48 +117,6 @@ public class DownloadLocationDialogBridge implements ModalDialogProperties.Contr
@@ -105,50 +118,6 @@ public class DownloadLocationDialogBridge implements ModalDialogProperties.Contr
mCustomView = null;
}
@ -74,7 +74,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/Downlo
- assert(!TextUtils.isEmpty(dir.location));
- PrefServiceBridge.getInstance().setDownloadAndSaveFileDefaultDirectory(
- dir.location);
- nativeOnComplete(mNativeDownloadLocationDialogBridge, mSuggestedPath);
- DownloadLocationDialogBridgeJni.get().onComplete(
- mNativeDownloadLocationDialogBridge, DownloadLocationDialogBridge.this,
- mSuggestedPath);
- }
- return;
- }

View file

@ -9,7 +9,7 @@ Subject: Do not store passwords by default
diff --git a/components/password_manager/core/browser/password_manager.cc b/components/password_manager/core/browser/password_manager.cc
--- a/components/password_manager/core/browser/password_manager.cc
+++ b/components/password_manager/core/browser/password_manager.cc
@@ -359,10 +359,10 @@ void PasswordManager::RegisterProfilePrefs(
@@ -202,10 +202,10 @@ void PasswordManager::RegisterProfilePrefs(
registry->RegisterBooleanPref(prefs::kBlacklistedCredentialsNormalized,
false);
registry->RegisterBooleanPref(

View file

@ -9,7 +9,7 @@ Subject: Enable changing default downloads storage location by default
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
@@ -270,7 +270,7 @@ const char kDisallowUnsafeHttpDownloadsParamName[] = "MimeTypeList";
@@ -288,7 +288,7 @@ const base::FeatureParam<std::string> kDnsOverHttpsTemplatesParam{
#if defined(OS_ANDROID)
// Enable changing default downloads storage location on Android.
const base::Feature kDownloadsLocationChange{"DownloadsLocationChange",

View file

@ -9,8 +9,8 @@ Subject: Enable download rename option by default
diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/android/chrome_feature_list.cc
--- a/chrome/browser/android/chrome_feature_list.cc
+++ b/chrome/browser/android/chrome_feature_list.cc
@@ -395,7 +395,7 @@ const base::Feature kDownloadHomeShowStorageInfo{
"DownloadHomeShowStorageInfo", base::FEATURE_DISABLED_BY_DEFAULT};
@@ -421,7 +421,7 @@ const base::Feature kDownloadNotificationBadge{
"DownloadNotificationBadge", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kDownloadRename{"DownloadRename",
- base::FEATURE_DISABLED_BY_DEFAULT};

View file

@ -42,7 +42,7 @@ Excerpt from https://github.com/bromite/bromite/issues/226
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -288,6 +288,10 @@ config("compiler") {
@@ -282,6 +282,10 @@ config("compiler") {
}
}
@ -52,7 +52,7 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
+
# Linker warnings.
if (fatal_linker_warnings && !(is_chromeos && current_cpu == "arm") &&
!(is_android && use_order_profiling) && !is_mac && !is_ios &&
!is_mac && !is_ios && current_os != "aix") {
--
2.11.0

View file

@ -9,7 +9,7 @@ Subject: Enable night mode menu entry by default
diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/android/chrome_feature_list.cc
--- a/chrome/browser/android/chrome_feature_list.cc
+++ b/chrome/browser/android/chrome_feature_list.cc
@@ -235,7 +235,7 @@ const base::Feature kAdjustWebApkInstallationSpace = {
@@ -246,7 +246,7 @@ const base::Feature kAdjustWebApkInstallationSpace = {
"AdjustWebApkInstallationSpace", base::FEATURE_DISABLED_BY_DEFAULT};
const base::Feature kAndroidNightMode{"AndroidNightMode",

View file

@ -9,7 +9,7 @@ Subject: Enable site per process isolation for devices with enough memory
diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
--- a/chrome/common/chrome_features.cc
+++ b/chrome/common/chrome_features.cc
@@ -609,11 +609,7 @@ const base::Feature kShowTrustedPublisherURL{"ShowTrustedPublisherURL",
@@ -617,11 +617,7 @@ const base::Feature kShowTrustedPublisherURL{"ShowTrustedPublisherURL",
// browser_features, as they are only used on the browser side.
const base::Feature kSitePerProcess {
"site-per-process",
@ -21,7 +21,7 @@ diff --git a/chrome/common/chrome_features.cc b/chrome/common/chrome_features.cc
};
// Controls a mode for dynamically process-isolating sites where the user has
@@ -635,7 +631,7 @@ const base::Feature kSiteIsolationForPasswordSites{
@@ -643,7 +639,7 @@ const base::Feature kSiteIsolationForPasswordSites{
// base::SysInfo::AmountOfPhysicalMemoryMB().
const base::Feature kSitePerProcessOnlyForHighMemoryClients{
"site-per-process-only-for-high-memory-clients",

View file

@ -9,7 +9,7 @@ Subject: Fix crash when accessing page info / site settings
diff --git a/chrome/browser/permissions/permission_manager.cc b/chrome/browser/permissions/permission_manager.cc
--- a/chrome/browser/permissions/permission_manager.cc
+++ b/chrome/browser/permissions/permission_manager.cc
@@ -713,6 +713,9 @@ PermissionResult PermissionManager::GetPermissionStatusHelper(
@@ -761,6 +761,9 @@ PermissionResult PermissionManager::GetPermissionStatusHelper(
if (status != CONTENT_SETTING_DEFAULT)
return PermissionResult(status, PermissionStatusSource::UNSPECIFIED);
PermissionContextBase* context = GetPermissionContext(permission);

View file

@ -9,7 +9,7 @@ Subject: Hide passwords manager link
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/SavePasswordsPreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/SavePasswordsPreferences.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/SavePasswordsPreferences.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/SavePasswordsPreferences.java
@@ -242,7 +242,7 @@ public class SavePasswordsPreferences
@@ -251,7 +251,7 @@ public class SavePasswordsPreferences
return;
}
@ -18,7 +18,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pas
PreferenceGroup passwordParent;
if (mSearchQuery == null) {
@@ -317,7 +317,7 @@ public class SavePasswordsPreferences
@@ -326,7 +326,7 @@ public class SavePasswordsPreferences
return;
}

View file

@ -32,24 +32,24 @@ diff --git a/third_party/blink/renderer/core/dom/BUILD.gn b/third_party/blink/re
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
--- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc
@@ -248,6 +248,7 @@
@@ -254,6 +254,7 @@
#include "third_party/blink/renderer/core/page/scrolling/root_scroller_controller.h"
#include "third_party/blink/renderer/core/page/scrolling/scroll_state_callback.h"
#include "third_party/blink/renderer/core/page/scrolling/scrolling_coordinator.h"
+#include "extensions/video_bg_play.h"
#include "third_party/blink/renderer/core/page/scrolling/snap_coordinator.h"
#include "third_party/blink/renderer/core/page/scrolling/text_fragment_anchor.h"
#include "third_party/blink/renderer/core/page/scrolling/top_document_root_scroller_controller.h"
#include "third_party/blink/renderer/core/page/spatial_navigation_controller.h"
@@ -314,6 +315,8 @@
@@ -319,6 +320,8 @@
#include "third_party/blink/renderer/platform/wtf/text/string_buffer.h"
#include "third_party/blink/renderer/platform/wtf/text/text_encoding_registry.h"
#include "third_party/blink/renderer/platform/wtf/time.h"
+#include "extensions/anti_amp_cure.h"
+
#ifndef NDEBUG
using WeakDocumentSet = blink::HeapHashSet<blink::WeakMember<blink::Document>>;
static WeakDocumentSet& liveDocumentSet();
@@ -6540,8 +6543,34 @@ void Document::FinishedParsing() {
@@ -6688,8 +6691,34 @@ void Document::FinishedParsing() {
// Parser should have picked up all preloads by now
fetcher_->ClearPreloads(ResourceFetcher::kClearSpeculativeMarkupPreloads);

View file

@ -36,7 +36,7 @@ diff --git a/chrome/browser/background/background_mode_manager.cc b/chrome/brows
diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
--- a/chrome/browser/chrome_content_browser_client.cc
+++ b/chrome/browser/chrome_content_browser_client.cc
@@ -1177,7 +1177,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
@@ -1149,7 +1149,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePrefs(
void ChromeContentBrowserClient::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(prefs::kDisable3DAPIs, false);
@ -113,7 +113,7 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u
diff --git a/chrome/browser/ui/navigation_correction_tab_observer.cc b/chrome/browser/ui/navigation_correction_tab_observer.cc
--- a/chrome/browser/ui/navigation_correction_tab_observer.cc
+++ b/chrome/browser/ui/navigation_correction_tab_observer.cc
@@ -55,7 +55,7 @@ NavigationCorrectionTabObserver::~NavigationCorrectionTabObserver() {}
@@ -42,7 +42,7 @@ NavigationCorrectionTabObserver::~NavigationCorrectionTabObserver() {}
// static
void NavigationCorrectionTabObserver::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* prefs) {
@ -151,7 +151,7 @@ diff --git a/chrome/service/cloud_print/connector_settings.cc b/chrome/service/c
diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/autofill/core/browser/autofill_manager.cc
--- a/components/autofill/core/browser/autofill_manager.cc
+++ b/components/autofill/core/browser/autofill_manager.cc
@@ -425,10 +425,7 @@ bool AutofillManager::ShouldParseForms(const std::vector<FormData>& forms,
@@ -516,10 +516,7 @@ bool AutofillManager::ShouldParseForms(const std::vector<FormData>& forms,
bool enabled = IsAutofillEnabled();
sync_state_ = personal_data_ ? personal_data_->GetSyncSigninState()
: AutofillSyncSigninState::kNumSyncStates;
@ -163,7 +163,7 @@ diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/a
return enabled;
}
@@ -704,10 +701,7 @@ void AutofillManager::OnQueryFormFieldAutofillImpl(
@@ -803,10 +800,7 @@ void AutofillManager::OnQueryFormFieldAutofillImpl(
// suggestions available.
// TODO(mathp): Differentiate between number of suggestions available
// (current metric) and number shown to the user.
@ -175,7 +175,7 @@ diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/a
}
}
@@ -1311,8 +1305,8 @@ void AutofillManager::Reset() {
@@ -1427,8 +1421,8 @@ void AutofillManager::Reset() {
#if defined(OS_ANDROID) || defined(OS_IOS)
autofill_assistant_.Reset();
#endif
@ -189,7 +189,7 @@ diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/a
diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/autofill/core/common/autofill_prefs.cc
--- a/components/autofill/core/common/autofill_prefs.cc
+++ b/components/autofill/core/common/autofill_prefs.cc
@@ -146,7 +146,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
@@ -150,7 +150,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
prefs::kAutofillLastVersionDisusedAddressesDeleted, 0,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(
@ -201,7 +201,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto
diff --git a/components/bookmarks/browser/bookmark_utils.cc b/components/bookmarks/browser/bookmark_utils.cc
--- a/components/bookmarks/browser/bookmark_utils.cc
+++ b/components/bookmarks/browser/bookmark_utils.cc
@@ -433,12 +433,12 @@ void GetBookmarksMatchingProperties(BookmarkModel* model,
@@ -443,12 +443,12 @@ bool DoesBookmarkContainWords(const base::string16& title,
void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(
prefs::kShowBookmarkBar,
@ -219,7 +219,7 @@ diff --git a/components/bookmarks/browser/bookmark_utils.cc b/components/bookmar
diff --git a/components/safe_browsing/common/safe_browsing_prefs.cc b/components/safe_browsing/common/safe_browsing_prefs.cc
--- a/components/safe_browsing/common/safe_browsing_prefs.cc
+++ b/components/safe_browsing/common/safe_browsing_prefs.cc
@@ -153,9 +153,9 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
@@ -167,9 +167,9 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry) {
registry->RegisterBooleanPref(
prefs::kSafeBrowsingSawInterstitialScoutReporting, false);
registry->RegisterBooleanPref(

View file

@ -9,7 +9,7 @@ Subject: Never fetch popular sites
diff --git a/components/ntp_tiles/popular_sites_impl.cc b/components/ntp_tiles/popular_sites_impl.cc
--- a/components/ntp_tiles/popular_sites_impl.cc
+++ b/components/ntp_tiles/popular_sites_impl.cc
@@ -280,6 +280,12 @@ bool PopularSitesImpl::MaybeStartFetch(bool force_download,
@@ -283,6 +283,12 @@ bool PopularSitesImpl::MaybeStartFetch(bool force_download,
DCHECK(!callback_);
callback_ = callback;

View file

@ -9,7 +9,7 @@ Subject: Never send any crash upload data
diff --git a/chrome/browser/tracing/crash_service_uploader.cc b/chrome/browser/tracing/crash_service_uploader.cc
--- a/chrome/browser/tracing/crash_service_uploader.cc
+++ b/chrome/browser/tracing/crash_service_uploader.cc
@@ -126,6 +126,9 @@ void TraceCrashServiceUploader::DoUpload(
@@ -125,6 +125,9 @@ void TraceCrashServiceUploader::DoUpload(
std::unique_ptr<const base::DictionaryValue> metadata,
const UploadProgressCallback& progress_callback,
UploadDoneCallback done_callback) {

View file

@ -24,7 +24,7 @@ diff --git a/chrome/android/java/res/xml/site_settings_preferences.xml b/chrome/
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferences.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferences.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/website/SiteSettingsPreferences.java
@@ -74,7 +74,7 @@ public class SiteSettingsPreferences
@@ -73,7 +73,7 @@ public class SiteSettingsPreferences
// The Media sub-menu only contains Protected Content and Autoplay, so remove all other
// menus.
for (@Type int i = 0; i < Type.NUM_ENTRIES; i++) {
@ -33,7 +33,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/web
getPreferenceScreen().removePreference(findPreference(i));
}
getPreferenceScreen().removePreference(findPreference(MEDIA_KEY));
@@ -115,7 +115,6 @@ public class SiteSettingsPreferences
@@ -111,7 +111,6 @@ public class SiteSettingsPreferences
websitePrefs.add(Type.ADS);
}
websitePrefs.add(Type.AUTOMATIC_DOWNLOADS);

View file

@ -25,7 +25,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/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeActivity.java
@@ -2087,15 +2087,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2076,15 +2076,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
final Tab currentTab = getActivityTab();
@ -57,7 +57,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcu
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java
@@ -626,7 +626,7 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
@@ -624,7 +624,7 @@ public class CustomTabActivity extends ChromeActivity<CustomTabActivityComponent
public boolean onMenuOrKeyboardAction(int id, boolean fromMenu) {
// Disable creating new tabs, bookmark, history, print, help, focus_url, etc.
if (id == R.id.focus_url_bar || id == R.id.all_bookmarks_menu_id

View file

@ -3,25 +3,25 @@ Date: Wed, 15 May 2019 17:08:35 +0200
Subject: Remove recent tabs signin
---
.../chrome/browser/signin/SigninManager.java | 63 +++-------------------
.../chrome/browser/signin/SigninManager.java | 73 ++--------------------
.../android/signin/signin_manager_android.cc | 3 +-
2 files changed, 7 insertions(+), 59 deletions(-)
2 files changed, 7 insertions(+), 69 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninManager.java
@@ -27,10 +27,7 @@ import org.chromium.base.annotations.NativeMethods;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.metrics.RecordUserAction;
@@ -27,10 +27,7 @@ import org.chromium.base.metrics.RecordUserAction;
import org.chromium.base.task.PostTask;
import org.chromium.chrome.browser.externalauth.ExternalAuthUtils;
import org.chromium.chrome.browser.externalauth.UserRecoverableErrorHandler;
-import org.chromium.components.signin.AccountIdProvider;
import org.chromium.components.signin.AccountManagerFacade;
-import org.chromium.components.signin.AccountTrackerService;
-import org.chromium.components.signin.ChromeSigninController;
import org.chromium.components.sync.AndroidSyncSettings;
import org.chromium.content_public.browser.UiThreadTaskTraits;
import java.util.ArrayList;
@@ -46,7 +43,7 @@ import java.util.List;
@@ -47,7 +44,7 @@ import java.util.List;
* <p/>
* See chrome/browser/signin/signin_manager_android.h for more details.
*/
@ -30,47 +30,47 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
private static final String TAG = "SigninManager";
/**
@@ -187,7 +184,6 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
@@ -183,7 +180,6 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
*/
private long mNativeSigninManagerAndroid;
private final Context mContext;
private final SigninManagerDelegate mDelegate;
- private final AccountTrackerService mAccountTrackerService;
private final AndroidSyncSettings mAndroidSyncSettings;
private final ObserverList<SignInStateObserver> mSignInStateObservers = new ObserverList<>();
private final ObserverList<SignInAllowedObserver> mSignInAllowedObservers =
new ObserverList<>();
@@ -222,28 +218,23 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
@@ -219,28 +215,24 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
*/
@CalledByNative
private static SigninManager create(long nativeSigninManagerAndroid,
- SigninManagerDelegate delegate, AccountTrackerService accountTrackerService) {
+ SigninManagerDelegate delegate) {
private static SigninManager create(
- long nativeSigninManagerAndroid, AccountTrackerService accountTrackerService) {
+ long nativeSigninManagerAndroid) {
assert nativeSigninManagerAndroid != 0;
assert delegate != null;
- assert accountTrackerService != null;
return new SigninManager(ContextUtils.getApplicationContext(), nativeSigninManagerAndroid,
- delegate, accountTrackerService);
+ delegate);
- accountTrackerService, AndroidSyncSettings.get());
+ AndroidSyncSettings.get());
}
@VisibleForTesting
- SigninManager(Context context, long nativeSigninManagerAndroid, SigninManagerDelegate delegate,
- AccountTrackerService accountTrackerService) {
+ SigninManager(Context context, long nativeSigninManagerAndroid, SigninManagerDelegate delegate) {
SigninManager(Context context, long nativeSigninManagerAndroid,
- AccountTrackerService accountTrackerService, AndroidSyncSettings androidSyncSettings) {
+ AndroidSyncSettings androidSyncSettings) {
ThreadUtils.assertOnUiThread();
assert context != null;
assert androidSyncSettings != null;
mContext = context;
mNativeSigninManagerAndroid = nativeSigninManagerAndroid;
mDelegate = delegate;
- mAccountTrackerService = accountTrackerService;
mAndroidSyncSettings = androidSyncSettings;
mSigninAllowedByPolicy =
SigninManagerJni.get().isSigninAllowedByPolicy(this, mNativeSigninManagerAndroid);
SigninManagerJni.get().isSigninAllowedByPolicy(mNativeSigninManagerAndroid);
-
- mAccountTrackerService.addSystemAccountsSeededListener(this);
}
/**
@@ -252,7 +243,6 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
@@ -249,7 +241,6 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
*/
@CalledByNative
public void destroy() {
@ -78,7 +78,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
mNativeSigninManagerAndroid = 0;
}
@@ -289,8 +279,7 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
@@ -286,8 +277,7 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
* Returns true if signin can be started now.
*/
public boolean isSignInAllowed() {
@ -88,7 +88,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
}
/**
@@ -348,27 +337,6 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
@@ -344,27 +334,6 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
}
/**
@ -116,7 +116,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
* Starts the sign-in flow, and executes the callback when finished.
*
* If an activity is provided, it is considered an "interactive" sign-in and the user can be
@@ -423,16 +391,7 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
@@ -419,16 +388,7 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
}
private void progressSignInFlowSeedSystemAccounts() {
@ -126,7 +126,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
- mSignInState.mBlockedOnAccountSeeding = true;
- } else {
- Activity activity = mSignInState.mActivity;
- mDelegate.handleGooglePlayServicesUnavailability(activity, !isForceSigninEnabled());
- handleGooglePlayServicesUnavailability(activity, !isForceSigninEnabled());
- Log.w(TAG, "Cancelling the sign-in process as Google Play services is unavailable");
- abortSignIn();
- }
@ -134,44 +134,60 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/signin/SigninMa
}
/**
@@ -467,14 +426,6 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
@@ -462,18 +422,6 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
// This method should be called at most once per sign-in flow.
assert mSignInState != null;
- SigninManagerJni.get().onSignInCompleted(
- this, mNativeSigninManagerAndroid, mSignInState.mAccount.name);
- if (!SigninManagerJni.get().setPrimaryAccount(
- mNativeSigninManagerAndroid, mSignInState.mAccount.name)) {
- Log.w(TAG, "Failed to set the PrimaryAccount in IdentityManager, aborting signin");
- abortSignIn();
- return;
- }
-
- // Cache the signed-in account name. This must be done after the native call, otherwise
- // sync tries to start without being signed in natively and crashes.
- ChromeSigninController.get().setSignedInAccountName(mSignInState.mAccount.name);
- mDelegate.enableSync(mSignInState.mAccount);
- enableSync(mSignInState.mAccount);
-
if (mSignInState.mCallback != null) {
mSignInState.mCallback.onSignInComplete();
}
@@ -642,12 +593,10 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
@@ -640,10 +588,8 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
// Native sign-out must happen before resetting the account so data is deleted correctly.
// http://crbug.com/589028
- ChromeSigninController.get().setSignedInAccountName(null);
if (mSignOutState.mWipeDataHooks != null) mSignOutState.mWipeDataHooks.preWipeData();
mDelegate.disableSyncAndWipeData(
mSignOutState.mManagementDomain != null || mSignOutState.mForceWipeUserData,
this::onProfileDataWiped);
disableSyncAndWipeData(mSignOutState.mShouldWipeUserData, this::onProfileDataWiped);
- mAccountTrackerService.invalidateAccountSeedStatus(true);
}
@VisibleForTesting
@@ -719,13 +665,6 @@ public class SigninManager implements AccountTrackerService.OnSystemAccountsSeed
SigninManagerJni.get().stopApplyingCloudPolicy(mNativeSigninManagerAndroid);
}
- private void enableSync(Account account) {
- // Cache the signed-in account name. This must be done after the native call, otherwise
- // sync tries to start without being signed in the native code and crashes.
- mAndroidSyncSettings.updateAccount(account);
- mAndroidSyncSettings.enableChromeSync();
- }
-
private void disableSyncAndWipeData(
boolean shouldWipeUserData, final Runnable wipeDataCallback) {
mAndroidSyncSettings.updateAccount(null);
diff --git a/chrome/browser/android/signin/signin_manager_android.cc b/chrome/browser/android/signin/signin_manager_android.cc
--- a/chrome/browser/android/signin/signin_manager_android.cc
+++ b/chrome/browser/android/signin/signin_manager_android.cc
@@ -53,8 +53,7 @@ SigninManagerAndroid::SigninManagerAndroid(
@@ -145,8 +145,7 @@ SigninManagerAndroid::SigninManagerAndroid(
g_browser_process->local_state());
java_signin_manager_ = Java_SigninManager_create(
base::android::AttachCurrentThread(), reinterpret_cast<intptr_t>(this),
- signin_manager_delegate_->GetJavaObject(),
- base::android::AttachCurrentThread(), reinterpret_cast<intptr_t>(this),
- identity_manager_->LegacyGetAccountTrackerServiceJavaObject());
+ signin_manager_delegate_->GetJavaObject());
+ base::android::AttachCurrentThread(), reinterpret_cast<intptr_t>(this));
}
base::android::ScopedJavaLocalRef<jobject>

View file

@ -0,0 +1,135 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Thu, 10 Oct 2019 23:30:16 +0200
Subject: Revert "Cleanup Search Ready Omnibox flag since it has launched"
This reverts commit ae458edcc8422d0815d0e82261e71fe10d7d6fc2.
---
.../java/src/org/chromium/chrome/browser/ChromeFeatureList.java | 1 +
.../chrome/browser/omnibox/suggestions/AutocompleteMediator.java | 7 +++++++
chrome/browser/about_flags.cc | 3 +++
chrome/browser/android/chrome_feature_list.cc | 4 ++++
chrome/browser/android/chrome_feature_list.h | 1 +
chrome/browser/flag-metadata.json | 5 +++++
chrome/browser/flag_descriptions.cc | 5 +++++
chrome/browser/flag_descriptions.h | 3 +++
8 files changed, 29 insertions(+)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
@@ -303,6 +303,7 @@ public abstract class ChromeFeatureList {
public static final String REMOVE_NAVIGATION_HISTORY = "RemoveNavigationHistory";
public static final String REORDER_BOOKMARKS = "ReorderBookmarks";
public static final String REVAMPED_CONTEXT_MENU = "RevampedContextMenu";
+ public static final String SEARCH_READY_OMNIBOX = "SearchReadyOmnibox";
public static final String SEND_TAB_TO_SELF = "SyncSendTabToSelf";
public static final String SERVICE_MANAGER_FOR_DOWNLOAD = "ServiceManagerForDownload";
public static final String SERVICE_WORKER_PAYMENT_APPS = "ServiceWorkerPaymentApps";
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java b/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/omnibox/suggestions/AutocompleteMediator.java
@@ -321,6 +321,13 @@ class AutocompleteMediator
void onNativeInitialized() {
mNativeInitialized = true;
+ // The feature is instantiated in the constructor to simplify plumbing. If the feature is
+ // actually disabled, null out the coordinator.
+ if (!ChromeFeatureList.isEnabled(ChromeFeatureList.SEARCH_READY_OMNIBOX)) {
+ mEditUrlProcessor.destroy();
+ mEditUrlProcessor = null;
+ }
+
mShowSuggestionFavicons =
ChromeFeatureList.isEnabled(ChromeFeatureList.OMNIBOX_SHOW_SUGGESTION_FAVICONS);
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
@@ -1961,6 +1961,9 @@ const FeatureEntry kFeatureEntries[] = {
{"enable-homepage-tile", flag_descriptions::kHomepageTileName,
flag_descriptions::kHomepageTileDescription, kOsAndroid,
FEATURE_VALUE_TYPE(chrome::android::kHomepageTile)},
+ {"enable-search-ready-omnibox", flag_descriptions::kSearchReadyOmniboxName,
+ flag_descriptions::kSearchReadyOmniboxDescription, kOsAndroid,
+ FEATURE_VALUE_TYPE(chrome::android::kSearchReadyOmniboxFeature)},
{"enable-bookmark-reorder", flag_descriptions::kReorderBookmarksName,
flag_descriptions::kReorderBookmarksDescription, kOsAndroid,
FEATURE_VALUE_TYPE(chrome::android::kReorderBookmarks)},
diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/android/chrome_feature_list.cc
--- a/chrome/browser/android/chrome_feature_list.cc
+++ b/chrome/browser/android/chrome_feature_list.cc
@@ -164,6 +164,7 @@ const base::Feature* kFeaturesExposedToJava[] = {
&kReaderModeInCCT,
&kReorderBookmarks,
&kRevampedContextMenu,
+ &kSearchReadyOmniboxFeature,
&kSearchEnginePromoExistingDevice,
&kSearchEnginePromoNewDevice,
&kServiceManagerForBackgroundPrefetch,
@@ -516,6 +517,9 @@ const base::Feature kReorderBookmarks{"ReorderBookmarks",
const base::Feature kRevampedContextMenu{"RevampedContextMenu",
base::FEATURE_DISABLED_BY_DEFAULT};
+const base::Feature kSearchReadyOmniboxFeature{
+ "SearchReadyOmnibox", base::FEATURE_ENABLED_BY_DEFAULT};
+
const base::Feature kServiceManagerForBackgroundPrefetch{
"ServiceManagerForBackgroundPrefetch", base::FEATURE_DISABLED_BY_DEFAULT};
diff --git a/chrome/browser/android/chrome_feature_list.h b/chrome/browser/android/chrome_feature_list.h
--- a/chrome/browser/android/chrome_feature_list.h
+++ b/chrome/browser/android/chrome_feature_list.h
@@ -101,6 +101,7 @@ extern const base::Feature kReaderModeInCCT;
extern const base::Feature kRevampedContextMenu;
extern const base::Feature kSearchEnginePromoExistingDevice;
extern const base::Feature kSearchEnginePromoNewDevice;
+extern const base::Feature kSearchReadyOmniboxFeature;
extern const base::Feature kServiceManagerForBackgroundPrefetch;
extern const base::Feature kServiceManagerForDownload;
extern const base::Feature kSettingsModernStatusBar;
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
@@ -1626,6 +1626,11 @@
"expiry_milestone": 78
},
{
+ "name": "enable-search-ready-omnibox",
+ "owners": [ "mdjones" ],
+ "expiry_milestone": 75
+ },
+ {
"name": "enable-send-tab-to-self",
"owners": [ "//components/send_tab_to_self/OWNERS" ],
"expiry_milestone": 77
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
@@ -2695,6 +2695,11 @@ const char kSafeBrowsingUseLocalBlacklistsV2Description[] =
"process to check the Safe Browsing reputation of URLs without calling "
"into GmsCore for every URL.";
+const char kSearchReadyOmniboxName[] = "Search Ready Omnibox";
+const char kSearchReadyOmniboxDescription[] =
+ "Clears the omnibox and adds a suggestion item to share, copy, or edit the "
+ "URL.";
+
const char kSetMarketUrlForTestingName[] = "Set market URL for testing";
const char kSetMarketUrlForTestingDescription[] =
"When enabled, sets the market URL for use in testing the update menu "
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
@@ -1594,6 +1594,9 @@ extern const char kReaderModeInCCTDescription[];
extern const char kSafeBrowsingUseLocalBlacklistsV2Name[];
extern const char kSafeBrowsingUseLocalBlacklistsV2Description[];
+extern const char kSearchReadyOmniboxName[];
+extern const char kSearchReadyOmniboxDescription[];
+
extern const char kSetMarketUrlForTestingName[];
extern const char kSetMarketUrlForTestingDescription[];
--
2.11.0

View file

@ -0,0 +1,37 @@
From: csagan5 <32685696+csagan5@users.noreply.github.com>
Date: Mon, 14 Oct 2019 20:27:33 +0200
Subject: Revert "[Merge to M78] Enable AImageReader by default."
This reverts commit 60c3d4531b180b911767fb3ea7c3553d7f408c25.
---
gpu/config/gpu_finch_features.cc | 2 +-
media/base/media_switches.cc | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
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
@@ -31,7 +31,7 @@ bool FieldIsInBlacklist(const char* current_value, std::string blacklist_str) {
#if defined(OS_ANDROID)
// Use android AImageReader when playing videos with MediaPlayer.
const base::Feature kAImageReaderMediaPlayer{"AImageReaderMediaPlayer",
- base::FEATURE_ENABLED_BY_DEFAULT};
+ base::FEATURE_DISABLED_BY_DEFAULT};
// Use android SurfaceControl API for managing display compositor's buffer queue
// and using overlays on Android.
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
@@ -417,7 +417,7 @@ const base::Feature kMediaDrmPreprovisioningAtStartup{
// 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_DISABLED_BY_DEFAULT};
// Prevents using SurfaceLayer for videos. This is meant to be used by embedders
// that cannot support SurfaceLayer at the moment.
--
2.11.0

View file

@ -10,9 +10,9 @@ This reverts commit c513d4c926a42ba6cc5eccfd5e85ba64c38bf0c1.
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeFeatureList.java
@@ -327,6 +327,7 @@ public abstract class ChromeFeatureList {
@@ -339,6 +339,7 @@ public abstract class ChromeFeatureList {
public static final String TRUSTED_WEB_ACTIVITY_NOTIFICATION_DELEGATION_ENROLMENT =
"TrustedWebActivityNotificationDelegationAutoEnrolment";
public static final String TWO_PANES_START_SURFACE_ANDROID = "TwoPanesStartSurfaceAndroid";
public static final String VIDEO_PERSISTENCE = "VideoPersistence";
+ public static final String UNIFIED_CONSENT = "UnifiedConsent";
public static final String USAGE_STATS = "UsageStats";

View file

@ -7,9 +7,9 @@ This reverts commit c672a0683e89eba3554e2562156b3c8532136f21.
Restore translations
---
.../android/java/res/xml/privacy_preferences.xml | 40 +++++-
.../preferences/privacy/PrivacyPreferences.java | 158 +++++++++++++++++++--
.../preferences/sync/SyncPreferenceUtils.java | 6 +-
.../android/java/res/xml/privacy_preferences.xml | 35 +++++
.../preferences/privacy/PrivacyPreferences.java | 157 +++++++++++++++++++--
.../preferences/sync/SyncPreferenceUtils.java | 5 +-
.../browser/sync/SyncNotificationController.java | 17 ++-
.../java/strings/android_chrome_strings.grd | 21 +++
.../translations/android_chrome_strings_am.xtb | 19 ++-
@ -66,63 +66,58 @@ Restore translations
.../translations/android_chrome_strings_zh-TW.xtb | 19 ++-
.../chromium/chrome/browser/sync/SyncTestRule.java | 9 +-
.../org/chromium/chrome/browser/sync/UkmTest.java | 50 ++++++-
59 files changed, 1210 insertions(+), 79 deletions(-)
59 files changed, 1208 insertions(+), 74 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
@@ -7,27 +7,57 @@
@@ -7,6 +7,29 @@
xmlns:app="http://schemas.android.com/apk/res-auto">
<org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
<org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
+ android:key="navigation_error"
+ android:title="@string/navigation_error_title"
+ android:summary="@string/navigation_error_summary"
+ android:defaultValue="true" />
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
+ android:key="search_suggestions"
+ android:title="@string/search_suggestions_title"
+ android:summary="@string/search_suggestions_summary"
+ android:defaultValue="true" />
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
+ android:key="safe_browsing_scout_reporting"
+ android:title="@string/safe_browsing_scout_reporting_title"
+ android:summary="@string/safe_browsing_scout_reporting_summary" />
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
+ android:key="safe_browsing"
+ android:title="@string/safe_browsing_title"
+ android:summary="@string/safe_browsing_summary" />
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
+ android:key="network_predictions"
+ android:title="@string/network_predictions_title"
+ android:summary="@string/network_predictions_summary"
+ android:persistent="false" />
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
+ <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference
android:key="can_make_payment"
android:title="@string/can_make_payment_title"
android:summary="@string/settings_can_make_payment_toggle_label" />
- <org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat
- android:key="preload_pages"
- android:title="@string/preload_pages_title"
- android:summary="@string/preload_pages_summary"
- android:persistent="false" />
<org.chromium.chrome.browser.preferences.ChromeBasePreferenceCompat
@@ -19,15 +42,27 @@
android:key="usage_stats_reporting"
android:title="@string/usage_stats_setting_title"
android:persistent="false" />
<android.support.v7.preference.Preference
+ <android.support.v7.preference.Preference
+ android:key="usage_and_crash_reports"
+ android:title="@string/usage_and_crash_reports_title_legacy"
+ android:fragment="org.chromium.chrome.browser.preferences.privacy.UsageAndCrashReportsPreferenceFragment" />
+ <android.support.v7.preference.Preference
<Preference
android:fragment="org.chromium.chrome.browser.preferences.privacy.DoNotTrackPreference"
android:key="do_not_track"
android:title="@string/do_not_track_title" />
<android.support.v7.preference.Preference
+ <android.support.v7.preference.Preference
+ android:key="contextual_search"
+ android:title="@string/contextual_search_title"
+ android:fragment="org.chromium.chrome.browser.preferences.privacy.ContextualSearchPreferenceFragment" />
+ <android.support.v7.preference.Preference
<Preference
android:key="clear_browsing_data"
android:title="@string/clear_browsing_data_title"
android:summary="@string/clear_browsing_data_summary"
@ -131,7 +126,7 @@ diff --git a/chrome/android/java/res/xml/privacy_preferences.xml b/chrome/androi
+ android:key="sync_and_services_link_divider"
+ android:layout="@layout/divider_preference"
+ android:selectable="false"/>
<org.chromium.chrome.browser.preferences.TextMessagePreferenceCompat
<org.chromium.chrome.browser.preferences.TextMessagePreference
android:key="sync_and_services_link"
android:summary="@string/privacy_sync_and_services_link"
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/privacy/PrivacyPreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/privacy/PrivacyPreferences.java
@ -151,8 +146,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
+import org.chromium.chrome.browser.ChromeFeatureList;
+import org.chromium.chrome.browser.contextualsearch.ContextualSearchFieldTrial;
import org.chromium.chrome.browser.help.HelpAndFeedback;
import org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreferenceCompat;
import org.chromium.chrome.browser.preferences.ManagedPreferenceDelegateCompat;
import org.chromium.chrome.browser.preferences.ChromeBaseCheckBoxPreference;
import org.chromium.chrome.browser.preferences.ManagedPreferenceDelegate;
@@ -33,11 +36,21 @@ import org.chromium.ui.text.SpanApplier;
*/
public class PrivacyPreferences
@ -175,7 +170,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
private static final String PREF_SYNC_AND_SERVICES_LINK = "sync_and_services_link";
+ private static final String PREF_USAGE_STATS = "usage_stats_reporting";
private ManagedPreferenceDelegateCompat mManagedPreferenceDelegate;
private ManagedPreferenceDelegate mManagedPreferenceDelegate;
@@ -49,6 +62,7 @@ public class PrivacyPreferences
getActivity().setTitle(R.string.prefs_privacy);
@ -185,14 +180,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
mManagedPreferenceDelegate = createManagedPreferenceDelegate();
@@ -62,15 +76,69 @@ public class PrivacyPreferences
@@ -62,26 +76,88 @@ public class PrivacyPreferences
networkPredictionPref.setOnPreferenceChangeListener(this);
networkPredictionPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
- Preference syncAndServicesLink = findPreference(PREF_SYNC_AND_SERVICES_LINK);
- NoUnderlineClickableSpan linkSpan = new NoUnderlineClickableSpan(getResources(), view -> {
- PreferencesLauncher.launchSettingsPageCompat(getActivity(),
- SyncAndServicesPreferences.class,
- PreferencesLauncher.launchSettingsPage(getActivity(), SyncAndServicesPreferences.class,
- SyncAndServicesPreferences.createArguments(false));
- });
- syncAndServicesLink.setSummary(
@ -220,12 +214,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
+ preferenceScreen.addPreference(networkPredictionPref);
+
+ Preference syncAndServicesLink = findPreference(PREF_SYNC_AND_SERVICES_LINK);
+ NoUnderlineClickableSpan linkSpan =
+ new NoUnderlineClickableSpan(getResources(), view -> {
+ PreferencesLauncher.launchSettingsPage(getActivity(),
+ SyncAndServicesPreferences.class,
+ SyncAndServicesPreferences.createArguments(false));
+ });
+ NoUnderlineClickableSpan linkSpan = new NoUnderlineClickableSpan(getResources(), view -> {
+ PreferencesLauncher.launchSettingsPage(getActivity(), SyncAndServicesPreferences.class,
+ SyncAndServicesPreferences.createArguments(false));
+ });
+ syncAndServicesLink.setSummary(
+ SpanApplier.applySpans(getString(R.string.privacy_sync_and_services_link),
+ new SpanApplier.SpanInfo("<link>", "</link>", linkSpan)));
@ -236,13 +228,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
+ preferenceScreen.removePreference(findPreference(PREF_SYNC_AND_SERVICES_LINK_DIVIDER));
+ preferenceScreen.removePreference(findPreference(PREF_SYNC_AND_SERVICES_LINK));
+
+ ChromeBaseCheckBoxPreferenceCompat navigationErrorPref =
+ (ChromeBaseCheckBoxPreferenceCompat) findPreference(PREF_NAVIGATION_ERROR);
+ ChromeBaseCheckBoxPreference navigationErrorPref =
+ (ChromeBaseCheckBoxPreference) findPreference(PREF_NAVIGATION_ERROR);
+ navigationErrorPref.setOnPreferenceChangeListener(this);
+ navigationErrorPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
+
+ ChromeBaseCheckBoxPreferenceCompat searchSuggestionsPref =
+ (ChromeBaseCheckBoxPreferenceCompat) findPreference(PREF_SEARCH_SUGGESTIONS);
+ ChromeBaseCheckBoxPreference searchSuggestionsPref =
+ (ChromeBaseCheckBoxPreference) findPreference(PREF_SEARCH_SUGGESTIONS);
+ searchSuggestionsPref.setOnPreferenceChangeListener(this);
+ searchSuggestionsPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
+
@ -251,20 +243,21 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
+ }
+
+ // Listen to changes to the Extended Reporting pref.
+ ChromeBaseCheckBoxPreferenceCompat scoutReportingPref =
+ (ChromeBaseCheckBoxPreferenceCompat) findPreference(
+ ChromeBaseCheckBoxPreference scoutReportingPref =
+ (ChromeBaseCheckBoxPreference) findPreference(
+ PREF_SAFE_BROWSING_SCOUT_REPORTING);
+ scoutReportingPref.setOnPreferenceChangeListener(this);
+ scoutReportingPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
+
+ ChromeBaseCheckBoxPreferenceCompat safeBrowsingPref =
+ (ChromeBaseCheckBoxPreferenceCompat) findPreference(PREF_SAFE_BROWSING);
+ ChromeBaseCheckBoxPreference safeBrowsingPref =
+ (ChromeBaseCheckBoxPreference) findPreference(PREF_SAFE_BROWSING);
+ safeBrowsingPref.setOnPreferenceChangeListener(this);
+ safeBrowsingPref.setManagedPreferenceDelegate(mManagedPreferenceDelegate);
updateSummaries();
}
@@ -78,11 +146,20 @@ public class PrivacyPreferences
- }
+ }
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
String key = preference.getKey();
@ -288,7 +281,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
}
return true;
@@ -100,9 +177,37 @@ public class PrivacyPreferences
@@ -99,9 +175,37 @@ public class PrivacyPreferences
public void updateSummaries() {
PrefServiceBridge prefServiceBridge = PrefServiceBridge.getInstance();
@ -326,7 +319,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
CheckBoxPreference canMakePaymentPref =
(CheckBoxPreference) findPreference(PREF_CAN_MAKE_PAYMENT);
if (canMakePaymentPref != null) {
@@ -115,6 +220,19 @@ public class PrivacyPreferences
@@ -114,6 +218,19 @@ public class PrivacyPreferences
doNotTrackPref.setSummary(prefServiceBridge.isDoNotTrackEnabled() ? textOn : textOff);
}
@ -346,7 +339,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
Preference usageStatsPref = findPreference(PREF_USAGE_STATS);
if (usageStatsPref != null) {
if (BuildInfo.isAtLeastQ() && prefServiceBridge.getBoolean(Pref.USAGE_STATS_ENABLED)) {
@@ -139,6 +257,18 @@ public class PrivacyPreferences
@@ -138,6 +255,18 @@ public class PrivacyPreferences
return preference -> {
String key = preference.getKey();
PrefServiceBridge prefs = PrefServiceBridge.getInstance();
@ -368,15 +361,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/pri
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/sync/SyncPreferenceUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/sync/SyncPreferenceUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/sync/SyncPreferenceUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/sync/SyncPreferenceUtils.java
@@ -19,6 +19,7 @@ import org.chromium.base.BuildInfo;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.metrics.RecordUserAction;
import org.chromium.chrome.R;
+import org.chromium.chrome.browser.ChromeFeatureList;
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.LaunchIntentDispatcher;
import org.chromium.chrome.browser.customtabs.CustomTabIntentDataProvider;
@@ -111,7 +112,10 @@ public class SyncPreferenceUtils {
@@ -119,7 +119,10 @@ public class SyncPreferenceUtils {
if (profileSyncService.isPassphraseRequiredForDecryption()) {
return res.getString(R.string.sync_need_passphrase);
}
@ -391,8 +376,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/syn
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/SyncNotificationController.java b/chrome/android/java/src/org/chromium/chrome/browser/sync/SyncNotificationController.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/sync/SyncNotificationController.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/sync/SyncNotificationController.java
@@ -7,11 +7,13 @@ package org.chromium.chrome.browser.sync;
import android.content.ComponentName;
@@ -6,11 +6,13 @@ package org.chromium.chrome.browser.sync;
import android.content.Context;
import android.content.Intent;
+import android.os.Bundle;
@ -405,7 +390,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/SyncNotifi
import org.chromium.chrome.browser.notifications.ChromeNotification;
import org.chromium.chrome.browser.notifications.ChromeNotificationBuilder;
import org.chromium.chrome.browser.notifications.NotificationBuilderFactory;
@@ -24,6 +26,7 @@ import org.chromium.chrome.browser.notifications.PendingIntentProvider;
@@ -23,6 +25,7 @@ import org.chromium.chrome.browser.notifications.PendingIntentProvider;
import org.chromium.chrome.browser.notifications.channels.ChannelDefinitions;
import org.chromium.chrome.browser.preferences.PreferencesLauncher;
import org.chromium.chrome.browser.preferences.sync.SyncAndServicesPreferences;
@ -413,7 +398,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/SyncNotifi
import org.chromium.chrome.browser.sync.GoogleServiceAuthError.State;
import org.chromium.chrome.browser.sync.ui.PassphraseActivity;
import org.chromium.components.sync.AndroidSyncSettings;
@@ -146,9 +149,17 @@ public class SyncNotificationController implements ProfileSyncService.SyncStateC
@@ -145,9 +148,17 @@ public class SyncNotificationController implements ProfileSyncService.SyncStateC
* @return the intent for opening the settings
*/
private Intent createSettingsIntent() {
@ -437,7 +422,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/sync/SyncNotifi
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -710,6 +710,18 @@ CHAR-LIMIT guidelines:
@@ -728,6 +728,18 @@ CHAR-LIMIT guidelines:
<message name="IDS_PREFS_PRIVACY" desc="Title for the Privacy preferences. [CHAR-LIMIT=32]">
Privacy
</message>
@ -456,7 +441,7 @@ diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/and
<message name="IDS_SAFE_BROWSING_SCOUT_REPORTING_TITLE" desc="Title for checkbox that controls reporting data to detect bad apps/sites. Please ensure Safe Browsing in this message matches the Safe Browsing settings title.">
Help improve Chrome security
</message>
@@ -722,6 +734,12 @@ CHAR-LIMIT guidelines:
@@ -740,6 +752,12 @@ CHAR-LIMIT guidelines:
<message name="IDS_SAFE_BROWSING_SUMMARY" desc="Summary for safe browsing.">
Sends URLs of some pages you visit to Google, when your security is at risk
</message>
@ -469,7 +454,7 @@ diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/and
<message name="IDS_CONTEXTUAL_SEARCH_TITLE" desc="Name for the Contextual Search feature, which allows users to search for a term in a web page by tapping on it.">
Tap to Search
</message>
@@ -1488,6 +1506,9 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1506,6 +1524,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_ACCOUNT_MANAGEMENT_TITLE" desc="Header title for the account management screen. [CHAR-LIMIT=32]">
Signed in to Google as
</message>
@ -482,7 +467,7 @@ diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/and
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_am.xtb b/chrome/android/java/strings/translations/android_chrome_strings_am.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_am.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_am.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">ይህ ለሁሉም ጣቢያዎች ውሂብን ያጸዳል፣ የሚከተሉትን ጨምሮ፦</translation>
<translation id="983192555821071799">ሁሉንም ትሮች ይዝጉ</translation>
<translation id="987264212798334818">አጠቃላይ</translation>
@ -509,7 +494,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_am.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ar.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ar.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_ar.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ar.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">سيؤدي هذا إلى محو بيانات جميع المواقع، بما في ذلك:</translation>
<translation id="983192555821071799">إغلاق جميع علامات التبويب</translation>
<translation id="987264212798334818">عام</translation>
@ -536,7 +521,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ar.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_bg.xtb b/chrome/android/java/strings/translations/android_chrome_strings_bg.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_bg.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_bg.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">Това действие ще изчисти данните за всички сайтове, включително:</translation>
<translation id="983192555821071799">Затваряне на всички раздели</translation>
<translation id="987264212798334818">Общи</translation>
@ -563,7 +548,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_bg.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_bn.xtb b/chrome/android/java/strings/translations/android_chrome_strings_bn.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_bn.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_bn.xtb
@@ -1137,4 +1137,21 @@
@@ -1143,4 +1143,21 @@
<translation id="982182592107339124">এটা সব সাইটের জন্য ডেটা সাফ করবে, এতে অন্তর্ভুক্ত আছে:</translation>
<translation id="983192555821071799">সমস্ত ট্যাবগুলি বন্ধ করুন</translation>
<translation id="987264212798334818">সাধারণ</translation>
@ -590,7 +575,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_bn.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ca.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ca.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_ca.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ca.xtb
@@ -1135,4 +1135,21 @@ El lloc web NO obté accés a la càmera. Només tu pots veure les imatges de la
@@ -1141,4 +1141,21 @@ El lloc web NO obté accés a la càmera. Només tu pots veure les imatges de la
<translation id="982182592107339124">S'esborraran les dades de tots els llocs web, com ara:</translation>
<translation id="983192555821071799">Tanca totes les pestanyes</translation>
<translation id="987264212798334818">General</translation>
@ -617,7 +602,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ca.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_cs.xtb b/chrome/android/java/strings/translations/android_chrome_strings_cs.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_cs.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_cs.xtb
@@ -1135,4 +1135,21 @@ Web NEZÍSKÁ přístup k fotoaparátu. Fotky z fotoaparátu uvidíte pouze vy
@@ -1141,4 +1141,21 @@ Web NEZÍSKÁ přístup k fotoaparátu. Fotky z fotoaparátu uvidíte pouze vy
<translation id="982182592107339124">Tímto vymažete data všech webů včetně těchto:</translation>
<translation id="983192555821071799">Zavřít všechny karty</translation>
<translation id="987264212798334818">Všeobecné</translation>
@ -644,7 +629,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_cs.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_da.xtb b/chrome/android/java/strings/translations/android_chrome_strings_da.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_da.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_da.xtb
@@ -1135,4 +1135,21 @@ Websitet får IKKE adgang til kameraet. Kameraets billeder kan kun ses af dig.</
@@ -1141,4 +1141,21 @@ Websitet får IKKE adgang til kameraet. Kameraets billeder kan kun ses af dig.</
<translation id="982182592107339124">Denne handling rydder dataene for alle websites, herunder:</translation>
<translation id="983192555821071799">Luk alle faner</translation>
<translation id="987264212798334818">Generelt</translation>
@ -671,7 +656,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_da.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_de.xtb b/chrome/android/java/strings/translations/android_chrome_strings_de.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_de.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_de.xtb
@@ -1135,4 +1135,21 @@ Die Website erhält KEINEN Zugriff auf die Kamera. Die Kamerabilder sind nur fü
@@ -1141,4 +1141,21 @@ Die Website erhält KEINEN Zugriff auf die Kamera. Die Kamerabilder sind nur fü
<translation id="982182592107339124">Alle Daten für alle Websites werden gelöscht, darunter:</translation>
<translation id="983192555821071799">Alle Tabs schließen</translation>
<translation id="987264212798334818">Allgemein</translation>
@ -698,7 +683,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_de.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_el.xtb b/chrome/android/java/strings/translations/android_chrome_strings_el.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_el.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_el.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">Αυτή η ενέργεια θα εκκαθαρίσει τα δεδομένα για όλους τους ιστότοπους, όπως:</translation>
<translation id="983192555821071799">Κλείσιμο όλων των καρτελών</translation>
<translation id="987264212798334818">Γενικά</translation>
@ -725,7 +710,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_el.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_en-GB.xtb b/chrome/android/java/strings/translations/android_chrome_strings_en-GB.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_en-GB.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_en-GB.xtb
@@ -1135,4 +1135,21 @@ The site does NOT gain access to the camera. The camera images are only visible
@@ -1141,4 +1141,21 @@ The site does NOT gain access to the camera. The camera images are only visible
<translation id="982182592107339124">This will clear data for all sites, including:</translation>
<translation id="983192555821071799">Close all tabs</translation>
<translation id="987264212798334818">General</translation>
@ -752,7 +737,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_en-
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_es-419.xtb b/chrome/android/java/strings/translations/android_chrome_strings_es-419.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_es-419.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_es-419.xtb
@@ -1135,4 +1135,21 @@ El sitio NO podrá acceder a la cámara. Solo tú podrás ver las imágenes de l
@@ -1141,4 +1141,21 @@ El sitio NO podrá acceder a la cámara. Solo tú podrás ver las imágenes de l
<translation id="982182592107339124">Esta acción borrará los datos de todos los sitios, entre los que se incluyen:</translation>
<translation id="983192555821071799">Cerrar todas las pestañas</translation>
<translation id="987264212798334818">General</translation>
@ -779,7 +764,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_es-
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_es.xtb b/chrome/android/java/strings/translations/android_chrome_strings_es.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_es.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_es.xtb
@@ -1135,4 +1135,21 @@ El sitio web no obtendrá acceso a la cámara. Solo tú puedes ver las imágenes
@@ -1141,4 +1141,21 @@ El sitio web no obtendrá acceso a la cámara. Solo tú puedes ver las imágenes
<translation id="982182592107339124">Se borrarán los datos de todos los sitios web, incluidos:</translation>
<translation id="983192555821071799">Cerrar todas las pestañas</translation>
<translation id="987264212798334818">General</translation>
@ -806,7 +791,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_es.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_et.xtb b/chrome/android/java/strings/translations/android_chrome_strings_et.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_et.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_et.xtb
@@ -1135,4 +1135,21 @@ Sait EI saa juurdepääsu kaamerale. Kaamera jäädvustatud pildid on nähtavad
@@ -1141,4 +1141,21 @@ Sait EI saa juurdepääsu kaamerale. Kaamera jäädvustatud pildid on nähtavad
<translation id="982182592107339124">See kustutab kõikide saitide andmed, sealhulgas:</translation>
<translation id="983192555821071799">Sule kõik vahelehed</translation>
<translation id="987264212798334818">Üldine</translation>
@ -833,7 +818,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_et.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fa.xtb b/chrome/android/java/strings/translations/android_chrome_strings_fa.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_fa.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_fa.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">با این کار داده‌های همه سایت‌ها پاک می‌شود، از جمله:</translation>
<translation id="983192555821071799">بستن همه برگه‌ها</translation>
<translation id="987264212798334818">موارد کلی</translation>
@ -860,7 +845,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fa.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fi.xtb b/chrome/android/java/strings/translations/android_chrome_strings_fi.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_fi.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_fi.xtb
@@ -1135,4 +1135,21 @@ Sivusto EI saa kameran käyttöoikeutta. Kamerakuvat näkyvät vain sinulle.</tr
@@ -1141,4 +1141,21 @@ Sivusto EI saa kameran käyttöoikeutta. Kamerakuvat näkyvät vain sinulle.</tr
<translation id="982182592107339124">Kaikkien sivustojen tiedot poistetaan, esimerkiksi:</translation>
<translation id="983192555821071799">Sulje kaikki välilehdet</translation>
<translation id="987264212798334818">Yleistä</translation>
@ -887,7 +872,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fi.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fil.xtb b/chrome/android/java/strings/translations/android_chrome_strings_fil.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_fil.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_fil.xtb
@@ -1135,4 +1135,21 @@ HINDI magkakaroon ng access sa camera ang site. Ikaw lang ang makakakita ng mga
@@ -1141,4 +1141,21 @@ HINDI magkakaroon ng access sa camera ang site. Ikaw lang ang makakakita ng mga
<translation id="982182592107339124">Iki-clear nito ang data para sa lahat ng site, kabilang ang:</translation>
<translation id="983192555821071799">Isara ang lahat ng tab</translation>
<translation id="987264212798334818">Pangkalahatan</translation>
@ -914,7 +899,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fil
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_fr.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_fr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_fr.xtb
@@ -1135,4 +1135,21 @@ En revanche, le site n'a PAS accès à la caméra. Vous seul pouvez voir les ima
@@ -1141,4 +1141,21 @@ En revanche, le site n'a PAS accès à la caméra. Vous seul pouvez voir les ima
<translation id="982182592107339124">Cette action entraînera la suppression des données pour tous les sites, y compris :</translation>
<translation id="983192555821071799">Fermer tous les onglets</translation>
<translation id="987264212798334818">Général</translation>
@ -941,7 +926,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_fr.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_gu.xtb b/chrome/android/java/strings/translations/android_chrome_strings_gu.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_gu.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_gu.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@ VR મોડમાં દાખલ થતા પહેલા ખાતરી ક
<translation id="982182592107339124">આ બધી સાઇટ્સ પરથી ડેટા સાફ કરશે, આ સહિત:</translation>
<translation id="983192555821071799">બધા ટેબ્સ બંધ કરો</translation>
<translation id="987264212798334818">સામાન્ય</translation>
@ -968,7 +953,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_gu.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_hi.xtb b/chrome/android/java/strings/translations/android_chrome_strings_hi.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_hi.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_hi.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">इससे इन सभी साइटों का डेटा साफ़ हो जाएगा:</translation>
<translation id="983192555821071799">सभी टैब बंद करें</translation>
<translation id="987264212798334818">सामान्य</translation>
@ -995,7 +980,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_hi.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_hr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_hr.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_hr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_hr.xtb
@@ -1135,4 +1135,21 @@ Web-lokacija NE dobiva pristup fotoaparatu. Slike fotoaparata možete vidjeti sa
@@ -1141,4 +1141,21 @@ Web-lokacija NE dobiva pristup fotoaparatu. Slike fotoaparata možete vidjeti sa
<translation id="982182592107339124">Izbrisat će se podaci za sve web-lokacije, uključujući:</translation>
<translation id="983192555821071799">Zatvori sve kartice</translation>
<translation id="987264212798334818">Općenito</translation>
@ -1022,7 +1007,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_hr.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_hu.xtb b/chrome/android/java/strings/translations/android_chrome_strings_hu.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_hu.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_hu.xtb
@@ -1135,4 +1135,21 @@ A webhely NEM kap hozzáférést a kamerához. A kamera képét csak Ön láthat
@@ -1141,4 +1141,21 @@ A webhely NEM kap hozzáférést a kamerához. A kamera képét csak Ön láthat
<translation id="982182592107339124">Ezzel törli az összes webhely adatait, beleértve a következőket:</translation>
<translation id="983192555821071799">Az összes lap bezárása</translation>
<translation id="987264212798334818">Általános</translation>
@ -1049,7 +1034,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_hu.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_id.xtb b/chrome/android/java/strings/translations/android_chrome_strings_id.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_id.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_id.xtb
@@ -1135,4 +1135,21 @@ Situs TIDAK mendapatkan akses ke kamera. Gambar kamera hanya dapat dilihat oleh
@@ -1141,4 +1141,21 @@ Situs TIDAK mendapatkan akses ke kamera. Gambar kamera hanya dapat dilihat oleh
<translation id="982182592107339124">Tindakan ini akan menghapus data untuk semua situs, termasuk:</translation>
<translation id="983192555821071799">Tutup semua tab</translation>
<translation id="987264212798334818">Umum</translation>
@ -1076,7 +1061,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_id.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_it.xtb b/chrome/android/java/strings/translations/android_chrome_strings_it.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_it.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_it.xtb
@@ -1135,4 +1135,21 @@ Il sito NON ottiene l'accesso alla videocamera. Le immagini della videocamera so
@@ -1141,4 +1141,21 @@ Il sito NON ottiene l'accesso alla videocamera. Le immagini della videocamera so
<translation id="982182592107339124">Questa operazione cancellerà i dati di tutti i siti, inclusi:</translation>
<translation id="983192555821071799">Chiudi tutte le schede</translation>
<translation id="987264212798334818">Generali</translation>
@ -1103,7 +1088,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_it.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_iw.xtb b/chrome/android/java/strings/translations/android_chrome_strings_iw.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_iw.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_iw.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">פעולה זו תמחק נתונים של כל האתרים, כולל:</translation>
<translation id="983192555821071799">סגור את כל הכרטיסיות</translation>
<translation id="987264212798334818">כללי</translation>
@ -1130,7 +1115,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_iw.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ja.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ja.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_ja.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ja.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@ VR を開始する前に、信頼できるサイトかどうかを確認して
<translation id="982182592107339124">この操作を行うと、次を含むすべてのサイトのデータが削除されます。</translation>
<translation id="983192555821071799">すべてのタブを閉じる</translation>
<translation id="987264212798334818">全般</translation>
@ -1157,7 +1142,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ja.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_kn.xtb b/chrome/android/java/strings/translations/android_chrome_strings_kn.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_kn.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_kn.xtb
@@ -1136,4 +1136,21 @@
@@ -1142,4 +1142,21 @@ VR ಗೆ ಪ್ರವೇಶಿಸುವ ಮೊದಲು ನೀವು ಈ ವೆ
<translation id="982182592107339124">ಇದು ಎಲ್ಲಾ ಸೈಟ್‌ಗಳಿಗೆ ಡೇಟಾ ತೆರವುಗೊಳಿಸುತ್ತದೆ, ಇವುಗಳನ್ನೂ ಒಳಗೊಂಡು:</translation>
<translation id="983192555821071799">ಎಲ್ಲ ಟ್ಯಾಬ್‌ಗಳನ್ನು ಮುಚ್ಚಿ</translation>
<translation id="987264212798334818">ಸಾಮಾನ್ಯ</translation>
@ -1184,7 +1169,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_kn.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ko.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ko.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_ko.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ko.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@ VR로 들어가기 전에 이 사이트를 신뢰할 수 있는지 확인하세
<translation id="982182592107339124">다음을 포함한 모든 사이트의 데이터가 삭제됩니다.</translation>
<translation id="983192555821071799">탭 모두 닫기</translation>
<translation id="987264212798334818">일반</translation>
@ -1211,7 +1196,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ko.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_lt.xtb b/chrome/android/java/strings/translations/android_chrome_strings_lt.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_lt.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_lt.xtb
@@ -1135,4 +1135,21 @@ Svetainė NETURI prieigos prie fotoaparato. Fotoaparato vaizdai matomi tik jums.
@@ -1141,4 +1141,21 @@ Svetainė NETURI prieigos prie fotoaparato. Fotoaparato vaizdai matomi tik jums.
<translation id="982182592107339124">Bus išvalyti visų svetainių duomenys, įskaitant:</translation>
<translation id="983192555821071799">Uždar. visų skirtukų lapus</translation>
<translation id="987264212798334818">Bendra</translation>
@ -1238,7 +1223,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_lt.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_lv.xtb b/chrome/android/java/strings/translations/android_chrome_strings_lv.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_lv.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_lv.xtb
@@ -1135,4 +1135,21 @@ Vietnei NAV piekļuves kamerai. Kameras attēli ir redzami tikai jums.</translat
@@ -1141,4 +1141,21 @@ Vietnei NAV piekļuves kamerai. Kameras attēli ir redzami tikai jums.</translat
<translation id="982182592107339124">Tādējādi tiks dzēsti dati no visām vietnēm, tostarp:</translation>
<translation id="983192555821071799">Aizvērt visas cilnes</translation>
<translation id="987264212798334818">Vispārīgi</translation>
@ -1265,7 +1250,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_lv.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ml.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ml.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_ml.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ml.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@ VR-ൽ പ്രവേശിക്കുന്നതിന് മുമ്പ്
<translation id="982182592107339124">ഇത് ഇനിപ്പറയുന്നവ ഉൾപ്പെടെയുള്ള എല്ലാ സൈറ്റുകളുടെയും വിവരങ്ങൾ മായ്‌ക്കുന്നതിനിടയാക്കും:</translation>
<translation id="983192555821071799">എല്ലാ ടാബുകളും അടയ്‌ക്കുക</translation>
<translation id="987264212798334818">പൊതുവായ</translation>
@ -1292,7 +1277,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ml.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_mr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_mr.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_mr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_mr.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@ VR मध्ये एंटर करण्यापूर्वी तुम
<translation id="982182592107339124">हे यासह सर्व साइटसाठी डेटा साफ करेल:</translation>
<translation id="983192555821071799">सर्व टॅब बंद करा</translation>
<translation id="987264212798334818">सामान्य</translation>
@ -1319,7 +1304,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_mr.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ms.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ms.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_ms.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ms.xtb
@@ -1135,4 +1135,21 @@ Tapak TIDAK memperoleh akses kepada kamera. Hanya anda dapat melihat imej kamera
@@ -1141,4 +1141,21 @@ Tapak TIDAK memperoleh akses kepada kamera. Hanya anda dapat melihat imej kamera
<translation id="982182592107339124">Ini akan memadamkan data untuk semua tapak web, termasuk:</translation>
<translation id="983192555821071799">Tutup semua tab</translation>
<translation id="987264212798334818">Umum</translation>
@ -1346,7 +1331,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ms.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_nl.xtb b/chrome/android/java/strings/translations/android_chrome_strings_nl.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_nl.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_nl.xtb
@@ -1135,4 +1135,21 @@ De site krijgt GEEN toegang tot de camera. De camerabeelden zijn alleen zichtbaa
@@ -1141,4 +1141,21 @@ De site krijgt GEEN toegang tot de camera. De camerabeelden zijn alleen zichtbaa
<translation id="982182592107339124">Hiermee worden de gegevens voor alle sites gewist, inclusief:</translation>
<translation id="983192555821071799">Alle tabbladen sluiten</translation>
<translation id="987264212798334818">Algemeen</translation>
@ -1373,7 +1358,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_nl.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_no.xtb b/chrome/android/java/strings/translations/android_chrome_strings_no.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_no.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_no.xtb
@@ -1135,4 +1135,21 @@ Nettstedet får IKKE tilgang til kameraet. Kamerabildene er kun synlige for deg.
@@ -1141,4 +1141,21 @@ Nettstedet får IKKE tilgang til kameraet. Kamerabildene er kun synlige for deg.
<translation id="982182592107339124">Dette fører til at dataene for alle nettsteder slettes, deriblant disse:</translation>
<translation id="983192555821071799">Lukk alle faner</translation>
<translation id="987264212798334818">Generelt</translation>
@ -1400,7 +1385,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_no.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_pl.xtb b/chrome/android/java/strings/translations/android_chrome_strings_pl.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_pl.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_pl.xtb
@@ -1135,4 +1135,21 @@ Witryna NIE uzyskuje dostępu do kamery. Tylko Ty widzisz rejestrowany obraz.</t
@@ -1141,4 +1141,21 @@ Witryna NIE uzyskuje dostępu do kamery. Tylko Ty widzisz rejestrowany obraz.</t
<translation id="982182592107339124">Spowoduje to usunięcie danych wszystkich witryn, w tym:</translation>
<translation id="983192555821071799">Zamknij wszystkie karty</translation>
<translation id="987264212798334818">Ogólne</translation>
@ -1427,7 +1412,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_pl.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_pt-BR.xtb b/chrome/android/java/strings/translations/android_chrome_strings_pt-BR.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_pt-BR.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_pt-BR.xtb
@@ -1136,4 +1136,21 @@ O site NÃO terá acesso à câmera. As imagens da câmera são visíveis apenas
@@ -1142,4 +1142,21 @@ O site NÃO terá acesso à câmera. As imagens da câmera são visíveis apenas
<translation id="982182592107339124">Essa ação limpará os dados de todos os sites, incluindo:</translation>
<translation id="983192555821071799">Fechar todas as guias</translation>
<translation id="987264212798334818">Geral</translation>
@ -1454,7 +1439,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_pt-
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_pt-PT.xtb b/chrome/android/java/strings/translations/android_chrome_strings_pt-PT.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_pt-PT.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_pt-PT.xtb
@@ -1135,4 +1135,21 @@ O site NÃO fica com acesso à câmara. As imagens da câmara estão visíveis a
@@ -1141,4 +1141,21 @@ O site NÃO fica com acesso à câmara. As imagens da câmara estão visíveis a
<translation id="982182592107339124">Esta ação limpa os dados de todos os sites, incluindo:</translation>
<translation id="983192555821071799">Fechar todos os separadores</translation>
<translation id="987264212798334818">Geral</translation>
@ -1481,7 +1466,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_pt-
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ro.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ro.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_ro.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ro.xtb
@@ -1135,4 +1135,21 @@ Acest site NU primește acces la cameră. Imaginile camerei sunt vizibile doar p
@@ -1141,4 +1141,21 @@ Acest site NU primește acces la cameră. Imaginile camerei sunt vizibile doar p
<translation id="982182592107339124">Astfel, se vor șterge datele pentru toate site-urile, inclusiv:</translation>
<translation id="983192555821071799">Închide toate filele</translation>
<translation id="987264212798334818">General</translation>
@ -1508,7 +1493,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ro.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ru.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ru.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_ru.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ru.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">Будут удалены данные всех сайтов, в том числе:</translation>
<translation id="983192555821071799">Закрыть все вкладки</translation>
<translation id="987264212798334818">Общие</translation>
@ -1535,7 +1520,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ru.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sk.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sk.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_sk.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sk.xtb
@@ -1135,4 +1135,21 @@ Web NEZÍSKA prístup k fotoaparátu. Obrázky fotoaparátu sú viditeľné iba
@@ -1141,4 +1141,21 @@ Web NEZÍSKA prístup k fotoaparátu. Obrázky fotoaparátu sú viditeľné iba
<translation id="982182592107339124">Vymažete dáta všetkých webov vrátane týchto:</translation>
<translation id="983192555821071799">Zavrieť všetky karty</translation>
<translation id="987264212798334818">Všeobecné</translation>
@ -1562,7 +1547,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sk.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sl.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sl.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_sl.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sl.xtb
@@ -1135,4 +1135,21 @@ Spletno mesto NIMA dostopa do kamere. Posnetki kamere so vidni samo vam.</transl
@@ -1141,4 +1141,21 @@ Spletno mesto NIMA dostopa do kamere. Posnetki kamere so vidni samo vam.</transl
<translation id="982182592107339124">S tem bodo izbrisani podatki za vsa spletna mesta, vključno s temi:</translation>
<translation id="983192555821071799">Zapri vse zavihke</translation>
<translation id="987264212798334818">Splošno</translation>
@ -1589,7 +1574,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sl.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sr.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_sr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sr.xtb
@@ -1135,4 +1135,21 @@ Google налог можда има друге облике историје п
@@ -1141,4 +1141,21 @@ Google налог можда има друге облике историје п
<translation id="982182592107339124">Овим бришете податке за све сајтове, укључујући:</translation>
<translation id="983192555821071799">Затвори све картице</translation>
<translation id="987264212798334818">Опште</translation>
@ -1616,7 +1601,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sr.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sv.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sv.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_sv.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sv.xtb
@@ -1135,4 +1135,21 @@ Webbplatsen får INTE tillgång till kameran. Bara du kan se kamerabilderna.</tr
@@ -1141,4 +1141,21 @@ Webbplatsen får INTE tillgång till kameran. Bara du kan se kamerabilderna.</tr
<translation id="982182592107339124">Åtgärden raderar data för alla webbplatser, inklusive:</translation>
<translation id="983192555821071799">Stäng alla flikar</translation>
<translation id="987264212798334818">Allmänt</translation>
@ -1643,7 +1628,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sv.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sw.xtb b/chrome/android/java/strings/translations/android_chrome_strings_sw.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_sw.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_sw.xtb
@@ -1134,4 +1134,21 @@ Tovuti hii HAIPATI idhini ya kufikia kamera. Ni wewe pekee utaona picha hizi za
@@ -1139,4 +1139,21 @@ Tovuti hii HAIPATI idhini ya kufikia kamera. Ni wewe pekee utaona picha hizi za
<translation id="982182592107339124">Hatua hii itafuta data ya tovuti zote, ikiwa ni pamoja na:</translation>
<translation id="983192555821071799">Funga vichupo vyote</translation>
<translation id="987264212798334818">Jumla</translation>
@ -1670,7 +1655,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_sw.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ta.xtb b/chrome/android/java/strings/translations/android_chrome_strings_ta.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_ta.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_ta.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@ VRரைத் தொடங்குவதற்கு முன் இது
<translation id="982182592107339124">இதனால் எல்லா தளங்களுக்கான தரவும் அழிக்கப்படும், இதில் அடங்குபவை:</translation>
<translation id="983192555821071799">எல்லா தாவல்களையும் மூடு</translation>
<translation id="987264212798334818">பொது</translation>
@ -1697,7 +1682,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_ta.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_te.xtb b/chrome/android/java/strings/translations/android_chrome_strings_te.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_te.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_te.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@ VRలోకి ప్రవేశించడానికి ముందు,
<translation id="982182592107339124">ఇది వీటితో సహా అన్ని సైట్‌ల డేటాను తీసివేస్తుంది:</translation>
<translation id="983192555821071799">అన్ని ట్యాబ్‌లను మూసివేయి</translation>
<translation id="987264212798334818">సాధారణం</translation>
@ -1724,7 +1709,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_te.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_th.xtb b/chrome/android/java/strings/translations/android_chrome_strings_th.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_th.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_th.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">การดำเนินการนี้จะล้างข้อมูลสำหรับทุกเว็บไซต์ รวมถึง</translation>
<translation id="983192555821071799">ปิดแท็บทั้งหมด</translation>
<translation id="987264212798334818">ทั่วไป</translation>
@ -1751,7 +1736,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_th.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_tr.xtb b/chrome/android/java/strings/translations/android_chrome_strings_tr.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_tr.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_tr.xtb
@@ -1135,4 +1135,21 @@ Site kameraya ERİŞMEZ. Kamera görüntülerini yalnızca siz görebilirsiniz.<
@@ -1141,4 +1141,21 @@ Site kameraya ERİŞMEZ. Kamera görüntülerini yalnızca siz görebilirsiniz.<
<translation id="982182592107339124">Bu işlem, aşağıdakiler de dahil olmak üzere tüm sitelere ilişkin verileri temizleyecek:</translation>
<translation id="983192555821071799">Tüm sekmeleri kapat</translation>
<translation id="987264212798334818">Genel</translation>
@ -1778,7 +1763,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_tr.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_uk.xtb b/chrome/android/java/strings/translations/android_chrome_strings_uk.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_uk.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_uk.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">Буде видалено дані всіх сайтів, зокрема:</translation>
<translation id="983192555821071799">Закрити всі вкладки</translation>
<translation id="987264212798334818">Загальне</translation>
@ -1805,7 +1790,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_uk.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_vi.xtb b/chrome/android/java/strings/translations/android_chrome_strings_vi.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_vi.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_vi.xtb
@@ -1135,4 +1135,21 @@ Trang web này KHÔNG có quyền truy cập vào máy ảnh. Chỉ bạn mới
@@ -1141,4 +1141,21 @@ Trang web này KHÔNG có quyền truy cập vào máy ảnh. Chỉ bạn mới
<translation id="982182592107339124">Thao tác này sẽ xóa dữ liệu của tất cả các trang web, bao gồm:</translation>
<translation id="983192555821071799">Đóng tất cả các tab</translation>
<translation id="987264212798334818">Chung</translation>
@ -1832,7 +1817,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_vi.
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_zh-CN.xtb b/chrome/android/java/strings/translations/android_chrome_strings_zh-CN.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_zh-CN.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_zh-CN.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">这会清除所有网站的数据,包括:</translation>
<translation id="983192555821071799">关闭所有标签页</translation>
<translation id="987264212798334818">常规</translation>
@ -1859,7 +1844,7 @@ diff --git a/chrome/android/java/strings/translations/android_chrome_strings_zh-
diff --git a/chrome/android/java/strings/translations/android_chrome_strings_zh-TW.xtb b/chrome/android/java/strings/translations/android_chrome_strings_zh-TW.xtb
--- a/chrome/android/java/strings/translations/android_chrome_strings_zh-TW.xtb
+++ b/chrome/android/java/strings/translations/android_chrome_strings_zh-TW.xtb
@@ -1135,4 +1135,21 @@
@@ -1141,4 +1141,21 @@
<translation id="982182592107339124">這會清除所有網站的資料,包括:</translation>
<translation id="983192555821071799">關閉所有分頁</translation>
<translation id="987264212798334818">一般</translation>

View file

@ -30,7 +30,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstR
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/firstrun/FirstRunUtils.java
@@ -30,16 +30,12 @@ public class FirstRunUtils {
@@ -28,16 +28,12 @@ public class FirstRunUtils {
// - checkAnyUserHasSeenToS() may be true which needs to sync its state to the prefs.
boolean javaPrefValue = javaPrefs.getBoolean(CACHED_TOS_ACCEPTED_PREF, false);
boolean nativePrefValue = prefsBridge.isFirstRunEulaAccepted();

View file

@ -16,7 +16,7 @@ higher memory/cache usage but not by the full 2-3%.
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
--- a/build/config/compiler/BUILD.gn
+++ b/build/config/compiler/BUILD.gn
@@ -279,16 +279,12 @@ config("compiler") {
@@ -273,16 +273,12 @@ config("compiler") {
cflags += [ "-fstack-protector" ]
}
} else if ((is_posix && !is_chromeos && !is_nacl) || is_fuchsia) {

View file

@ -13,7 +13,7 @@ Subject: Use 4 tile rows, never show logo
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageLayout.java
@@ -117,7 +117,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer
@@ -110,7 +110,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer
/** Observer for overview mode. */
private EmptyOverviewModeObserver mOverviewObserver;
@ -22,7 +22,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL
private boolean mSearchProviderIsGoogle;
private boolean mInitialized;
@@ -546,7 +546,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer
@@ -538,7 +538,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer
&& mInitialized) {
return;
}
@ -31,7 +31,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPageL
mSearchProviderIsGoogle = isGoogle;
updateTileGridPadding();
@@ -838,7 +838,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer
@@ -822,7 +822,7 @@ public class NewTabPageLayout extends LinearLayout implements TileGroup.Observer
}
private static int getMaxTileRows() {
@ -79,7 +79,7 @@ diff --git a/chrome/browser/engagement/important_sites_util.cc b/chrome/browser/
diff --git a/components/history/core/browser/top_sites_impl.h b/components/history/core/browser/top_sites_impl.h
--- a/components/history/core/browser/top_sites_impl.h
+++ b/components/history/core/browser/top_sites_impl.h
@@ -54,7 +54,7 @@ class TopSitesImpl : public TopSites, public HistoryServiceObserver {
@@ -48,7 +48,7 @@ class TopSitesImpl : public TopSites, public HistoryServiceObserver {
using CanAddURLToHistoryFn = base::Callback<bool(const GURL&)>;
// How many top sites to store in the cache.

View file

@ -12,7 +12,7 @@ disclosing the specific build of Bromite.
diff --git a/components/version_info/version_info.cc b/components/version_info/version_info.cc
--- a/components/version_info/version_info.cc
+++ b/components/version_info/version_info.cc
@@ -15,7 +15,8 @@
@@ -16,7 +16,8 @@
namespace version_info {
std::string GetProductNameAndVersionForUserAgent() {

View file

@ -11,7 +11,7 @@ Disables the autofill download manager (trk:158).
diff --git a/components/autofill/core/browser/autofill_download_manager.cc b/components/autofill/core/browser/autofill_download_manager.cc
--- a/components/autofill/core/browser/autofill_download_manager.cc
+++ b/components/autofill/core/browser/autofill_download_manager.cc
@@ -58,7 +58,6 @@ constexpr std::pair<int, int> kAutofillExperimentRanges[] = {
@@ -63,7 +63,6 @@ constexpr std::pair<int, int> kAutofillExperimentRanges[] = {
{3314445, 3314448}, {3314854, 3314883},
};
@ -19,7 +19,7 @@ diff --git a/components/autofill/core/browser/autofill_download_manager.cc b/com
const size_t kAutofillDownloadManagerMaxFormCacheSize = 16;
const size_t kMaxFieldsPerQueryRequest = 100;
@@ -446,35 +445,6 @@ bool GetUploadPayloadForApi(const AutofillUploadContents& upload,
@@ -519,35 +518,6 @@ bool GetUploadPayloadForApi(const AutofillUploadContents& upload,
return upload_request.SerializeToString(payload);
}
@ -55,7 +55,7 @@ diff --git a/components/autofill/core/browser/autofill_download_manager.cc b/com
// Gets HTTP body payload for API POST request.
bool GetAPIBodyPayload(const std::string& payload,
AutofillDownloadManager::RequestType type,
@@ -680,6 +650,7 @@ size_t AutofillDownloadManager::GetPayloadLength(
@@ -771,6 +741,7 @@ size_t AutofillDownloadManager::GetPayloadLength(
std::tuple<GURL, std::string> AutofillDownloadManager::GetRequestURLAndMethod(
const FormRequestData& request_data) const {
@ -63,7 +63,7 @@ diff --git a/components/autofill/core/browser/autofill_download_manager.cc b/com
std::string method("POST");
std::string query_str;
@@ -702,35 +673,18 @@ std::tuple<GURL, std::string> AutofillDownloadManager::GetRequestURLAndMethod(
@@ -793,35 +764,18 @@ std::tuple<GURL, std::string> AutofillDownloadManager::GetRequestURLAndMethod(
GURL url = autofill_server_url_
.Resolve(RequestTypeToString(request_data.request_type))
.ReplaceComponents(replacements);
@ -108,7 +108,7 @@ diff --git a/components/autofill/core/browser/autofill_download_manager.cc b/com
diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/autofill/core/browser/autofill_manager.cc
--- a/components/autofill/core/browser/autofill_manager.cc
+++ b/components/autofill/core/browser/autofill_manager.cc
@@ -181,19 +181,6 @@ void LogDeveloperEngagementUkm(ukm::UkmRecorder* ukm_recorder,
@@ -180,19 +180,6 @@ void LogDeveloperEngagementUkm(ukm::UkmRecorder* ukm_recorder,
}
}
@ -128,14 +128,14 @@ diff --git a/components/autofill/core/browser/autofill_manager.cc b/components/a
ValuePatternsMetric GetValuePattern(const base::string16& value) {
if (IsUPIVirtualPaymentAddress(value))
return ValuePatternsMetric::kUpiVpa;
@@ -1360,11 +1347,6 @@ AutofillManager::AutofillManager(
is_rich_query_enabled_(IsRichQueryEnabled(client->GetChannel())) {
DCHECK(driver);
DCHECK(client_);
@@ -1478,11 +1465,6 @@ AutofillManager::AutofillManager(
: std::make_unique<CreditCardAccessManager>(
driver, client_, personal_data_,
credit_card_form_event_logger_.get());
- if (enable_download_manager == ENABLE_AUTOFILL_DOWNLOAD_MANAGER) {
- version_info::Channel channel = client_->GetChannel();
- download_manager_.reset(
- new AutofillDownloadManager(driver, this, GetAPIKeyForUrl(channel)));
- download_manager_.reset(new AutofillDownloadManager(
- driver, this, GetAPIKeyForUrl(channel), client_->GetLogManager()));
- }
CountryNames::SetLocaleString(app_locale_);
}

View file

@ -20,9 +20,9 @@ diff --git a/DEPS b/DEPS
# By default, do not check out src-internal. This can be overridden e.g. with
# custom_vars.
@@ -97,8 +97,8 @@ vars = {
# By default do not checkout the OpenXR loader library.
'checkout_openxr' : False,
@@ -99,8 +99,8 @@ vars = {
# support for other platforms may be added in the future.
'checkout_openxr' : 'checkout_win',
- 'checkout_traffic_annotation_tools': 'checkout_configuration != "small"',
- 'checkout_instrumented_libraries': 'checkout_linux and checkout_configuration != "small"',
@ -31,7 +31,7 @@ diff --git a/DEPS b/DEPS
# By default, do not check out WebKit for iOS, as it is not needed unless
# running against ToT WebKit rather than system WebKit. This can be overridden
@@ -2323,49 +2323,6 @@ hooks = [
@@ -3055,49 +3055,6 @@ hooks = [
],
},
{
@ -81,8 +81,8 @@ diff --git a/DEPS b/DEPS
# Case-insensitivity for the Win SDK. Must run before win_toolchain below.
'name': 'ciopfs_linux',
'pattern': '.',
@@ -2392,43 +2349,6 @@ hooks = [
'condition': 'checkout_ios or checkout_mac',
@@ -3124,43 +3081,6 @@ hooks = [
'condition': 'checkout_mac',
'action': ['python', 'src/build/mac_toolchain.py'],
},
- # Pull binutils for linux, enabled debug fission for faster linking /
@ -125,7 +125,7 @@ diff --git a/DEPS b/DEPS
{
# Mac doesn't use lld so it's not included in the default clang bundle
# there. lld is however needed in win and Fuchsia cross builds, so
@@ -2488,18 +2408,6 @@ hooks = [
@@ -3220,18 +3140,6 @@ hooks = [
'-s', 'src/buildtools/mac/clang-format.sha1',
],
},
@ -144,7 +144,7 @@ diff --git a/DEPS b/DEPS
# Pull rc binaries using checked-in hashes.
{
'name': 'rc_win',
@@ -2525,29 +2433,6 @@ hooks = [
@@ -3257,29 +3165,6 @@ hooks = [
'-s', 'src/build/toolchain/win/rc/mac/rc.sha1',
],
},

View file

@ -9,7 +9,7 @@ Subject: disable AdsBlockedInfoBar
diff --git a/chrome/browser/subresource_filter/chrome_subresource_filter_client.cc b/chrome/browser/subresource_filter/chrome_subresource_filter_client.cc
--- a/chrome/browser/subresource_filter/chrome_subresource_filter_client.cc
+++ b/chrome/browser/subresource_filter/chrome_subresource_filter_client.cc
@@ -147,11 +147,6 @@ void ChromeSubresourceFilterClient::LogAction(SubresourceFilterAction action) {
@@ -148,11 +148,6 @@ void ChromeSubresourceFilterClient::LogAction(SubresourceFilterAction action) {
}
void ChromeSubresourceFilterClient::ShowUI(const GURL& url) {

View file

@ -9,7 +9,7 @@ Subject: disable background sync by default
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
--- a/components/content_settings/core/browser/content_settings_registry.cc
+++ b/components/content_settings/core/browser/content_settings_registry.cc
@@ -308,7 +308,7 @@ void ContentSettingsRegistry::Init() {
@@ -309,7 +309,7 @@ void ContentSettingsRegistry::Init() {
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY);
Register(CONTENT_SETTINGS_TYPE_BACKGROUND_SYNC, "background-sync",

View file

@ -9,7 +9,7 @@ Subject: disable sensors access site setting by default
diff --git a/components/content_settings/core/browser/content_settings_registry.cc b/components/content_settings/core/browser/content_settings_registry.cc
--- a/components/content_settings/core/browser/content_settings_registry.cc
+++ b/components/content_settings/core/browser/content_settings_registry.cc
@@ -408,7 +408,7 @@ void ContentSettingsRegistry::Init() {
@@ -412,7 +412,7 @@ void ContentSettingsRegistry::Init() {
// TODO(crbug.com/904439): Update this to "SECURE_ONLY" once
// DeviceOrientationEvents and DeviceMotionEvents are only fired in secure
// contexts.

View file

@ -13,7 +13,7 @@ Increase probe period from 1s to 15s
diff --git a/net/dns/host_resolver_manager.cc b/net/dns/host_resolver_manager.cc
--- a/net/dns/host_resolver_manager.cc
+++ b/net/dns/host_resolver_manager.cc
@@ -120,12 +120,12 @@ const unsigned kMinimumTTLSeconds = kCacheEntryTTLSeconds;
@@ -121,12 +121,12 @@ const unsigned kMinimumTTLSeconds = kCacheEntryTTLSeconds;
// Time between IPv6 probes, i.e. for how long results of each IPv6 probe are
// cached.

View file

@ -15,7 +15,7 @@ turn it back on.
diff --git a/chrome/browser/extensions/extension_system_impl.cc b/chrome/browser/extensions/extension_system_impl.cc
--- a/chrome/browser/extensions/extension_system_impl.cc
+++ b/chrome/browser/extensions/extension_system_impl.cc
@@ -203,8 +203,7 @@ void ExtensionSystemImpl::Shared::Init(bool extensions_enabled) {
@@ -204,8 +204,7 @@ void ExtensionSystemImpl::Shared::Init(bool extensions_enabled) {
// ExtensionService depends on RuntimeData.
runtime_data_.reset(new RuntimeData(ExtensionRegistry::Get(profile_)));

View file

@ -19,13 +19,13 @@ See also: http://www.gsd.inesc-id.pt/~mpc/pubs/fingerprinting-trustcom2016.pdf
third_party/blink/renderer/core/dom/range.cc | 18 +++++++++++++++++-
.../blink/renderer/core/html/canvas/text_metrics.cc | 18 ++++++++++++++++++
.../blink/renderer/core/html/canvas/text_metrics.h | 2 ++
.../canvas/canvas2d/canvas_rendering_context_2d.cc | 6 ++++++
7 files changed, 76 insertions(+), 1 deletion(-)
.../canvas/canvas2d/canvas_rendering_context_2d.cc | 9 ++++++++-
7 files changed, 78 insertions(+), 2 deletions(-)
diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink/renderer/core/dom/document.cc
--- a/third_party/blink/renderer/core/dom/document.cc
+++ b/third_party/blink/renderer/core/dom/document.cc
@@ -1102,6 +1102,10 @@ Document::Document(const DocumentInit& initializer,
@@ -1167,6 +1167,10 @@ Document::Document(const DocumentInit& initializer,
// also depend on the url NOT getting immediately set in opened windows.
// See fast/dom/early-frame-url.html
// and fast/dom/location-new-window-no-crash.html, respectively.
@ -36,7 +36,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
// FIXME: Can/should we unify this behavior?
if (initializer.ShouldSetURL()) {
SetURL(initializer.Url());
@@ -1162,6 +1166,14 @@ Range* Document::CreateRangeAdjustedToTreeScope(const TreeScope& tree_scope,
@@ -1227,6 +1231,14 @@ Range* Document::CreateRangeAdjustedToTreeScope(const TreeScope& tree_scope,
Position::BeforeNode(*shadow_host));
}
@ -54,7 +54,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.cc b/third_party/blink
diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/renderer/core/dom/document.h
--- a/third_party/blink/renderer/core/dom/document.h
+++ b/third_party/blink/renderer/core/dom/document.h
@@ -398,6 +398,9 @@ class CORE_EXPORT Document : public ContainerNode,
@@ -408,6 +408,9 @@ class CORE_EXPORT Document : public ContainerNode,
has_xml_declaration_ = has_xml_declaration ? 1 : 0;
}
@ -64,7 +64,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/
String visibilityState() const;
bool IsPageVisible() const;
bool hidden() const;
@@ -1871,6 +1874,8 @@ class CORE_EXPORT Document : public ContainerNode,
@@ -1890,6 +1893,8 @@ class CORE_EXPORT Document : public ContainerNode,
Vector<AXContext*> ax_contexts_;
Member<AXObjectCache> ax_object_cache_;
Member<DocumentMarkerController> markers_;
@ -76,7 +76,7 @@ diff --git a/third_party/blink/renderer/core/dom/document.h b/third_party/blink/
diff --git a/third_party/blink/renderer/core/dom/element.cc b/third_party/blink/renderer/core/dom/element.cc
--- a/third_party/blink/renderer/core/dom/element.cc
+++ b/third_party/blink/renderer/core/dom/element.cc
@@ -1370,6 +1370,15 @@ DOMRectList* Element::getClientRects() {
@@ -1630,6 +1630,15 @@ DOMRectList* Element::getClientRects() {
DCHECK(element_layout_object);
GetDocument().AdjustFloatQuadsForScrollAndAbsoluteZoom(
quads, *element_layout_object);
@ -92,7 +92,7 @@ diff --git a/third_party/blink/renderer/core/dom/element.cc b/third_party/blink/
return DOMRectList::Create(quads);
}
@@ -1387,6 +1396,13 @@ DOMRect* Element::getBoundingClientRect() {
@@ -1647,6 +1656,13 @@ DOMRect* Element::getBoundingClientRect() {
DCHECK(element_layout_object);
GetDocument().AdjustFloatRectForScrollAndAbsoluteZoom(result,
*element_layout_object);
@ -187,20 +187,25 @@ diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/canvas_rendering
+#include "base/rand_util.h"
#include "base/metrics/histogram_functions.h"
#include "base/rand_util.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/platform/platform.h"
@@ -814,6 +815,11 @@ TextMetrics* CanvasRenderingContext2D::measureText(const String& text) {
base::TimeDelta elapsed = base::TimeTicks::Now() - start_time;
base::UmaHistogramMicrosecondsTimesUnderTenMilliseconds(
"Canvas.TextMetrics.MeasureText", elapsed);
@@ -811,9 +812,15 @@ TextMetrics* CanvasRenderingContext2D::measureText(const String& text) {
else
direction = ToTextDirection(GetState().GetDirection(), canvas());
- return MakeGarbageCollected<TextMetrics>(font, direction,
+ auto *text_metrics = MakeGarbageCollected<TextMetrics>(font, direction,
GetState().GetTextBaseline(),
GetState().GetTextAlign(), text);
+
+ // scale text metrics by 3/1000000th
+ auto shuffleFactor = 1 + (base::RandDouble() - 0.5) * 0.000003;
+ text_metrics->Shuffle(shuffleFactor);
+
return text_metrics;
+ return text_metrics;
}
void CanvasRenderingContext2D::DrawTextInternal(
--
2.11.0

View file

@ -30,7 +30,7 @@ diff --git a/components/gcm_driver/gcm_channel_status_request.cc b/components/gc
return;
@@ -110,6 +113,9 @@ void GCMChannelStatusRequest::Start() {
resource_request->allow_credentials = false;
resource_request->credentials_mode = network::mojom::CredentialsMode::kOmit;
resource_request->method = "POST";
resource_request->headers.SetHeader(net::HttpRequestHeaders::kUserAgent,
+#endif

View file

@ -5,35 +5,36 @@ Subject: kill GCM
---
chrome/android/BUILD.gn | 1 -
chrome/android/chrome_java_sources.gni | 6 -
chrome/android/java/AndroidManifest.xml | 64 --------
.../chrome/browser/BackgroundSyncLauncher.java | 97 ------------
chrome/android/java/AndroidManifest.xml | 64 -------
.../chrome/browser/BackgroundSyncLauncher.java | 97 ----------
.../chrome/browser/ChromeBackgroundService.java | 1 -
.../ChromeBackgroundTaskFactory.java | 3 -
.../invalidation/InvalidationController.java | 8 -
.../browser/ntp/snippets/SnippetsLauncher.java | 44 ------
.../browser/ntp/snippets/SnippetsLauncher.java | 44 -----
.../browser/services/gcm/GCMBackgroundTask.java | 2 +-
.../gcm/InvalidationGcmUpstreamSender.java | 15 --
components/background_task_scheduler/BUILD.gn | 1 -
.../BackgroundTaskSchedulerGcmNetworkManager.java | 166 +--------------------
.../BackgroundTaskSchedulerGcmNetworkManager.java | 206 +--------------------
components/gcm_driver/android/BUILD.gn | 1 -
components/gcm_driver/instance_id/android/BUILD.gn | 1 -
.../gcm_driver/instance_id/InstanceIDBridge.java | 40 +----
.../gcm_driver/instance_id/InstanceIDBridge.java | 49 +----
components/sync/android/BUILD.gn | 1 -
third_party/cacheinvalidation/BUILD.gn | 6 -
.../client/contrib/MultiplexingGcmListener.java | 91 +----------
.../client/contrib/MultiplexingGcmListener.java | 91 +--------
.../android2/channel/AndroidNetworkChannel.java | 6 +-
18 files changed, 9 insertions(+), 542 deletions(-)
19 files changed, 9 insertions(+), 594 deletions(-)
diff --git a/chrome/android/BUILD.gn b/chrome/android/BUILD.gn
--- a/chrome/android/BUILD.gn
+++ b/chrome/android/BUILD.gn
@@ -368,7 +368,6 @@ android_library("chrome_java") {
@@ -379,7 +379,6 @@ android_library("chrome_java") {
"//third_party/android_deps:com_google_protobuf_protobuf_lite_java",
"//third_party/android_deps:javax_inject_javax_inject_java",
"//third_party/android_media:android_media_java",
- "//third_party/android_sdk:android_gcm_java",
"//third_party/android_sdk/androidx_browser:androidx_browser_java",
"//third_party/android_swipe_refresh:android_swipe_refresh_java",
"//third_party/blink/public:blink_headers_java",
"//third_party/blink/public/mojom:android_mojo_bindings_java",
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@ -45,7 +46,7 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
"java/src/org/chromium/chrome/browser/ChromeBackupAgent.java",
"java/src/org/chromium/chrome/browser/ChromeBackupWatcher.java",
"java/src/org/chromium/chrome/browser/ChromeBaseAppCompatActivity.java",
@@ -1395,11 +1394,6 @@ chrome_java_sources = [
@@ -1424,11 +1423,6 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/services/AndroidEduAndChildAccountHelper.java",
"java/src/org/chromium/chrome/browser/services/AndroidEduOwnerCheckCallback.java",
"java/src/org/chromium/chrome/browser/services/GoogleServicesManager.java",
@ -55,8 +56,8 @@ diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java
- "java/src/org/chromium/chrome/browser/services/gcm/GcmUma.java",
- "java/src/org/chromium/chrome/browser/services/gcm/InvalidationGcmUpstreamSender.java",
"java/src/org/chromium/chrome/browser/sessions/SessionTabHelper.java",
"java/src/org/chromium/chrome/browser/share/LensUtils.java",
"java/src/org/chromium/chrome/browser/share/OptionalShareTargetsManager.java",
"java/src/org/chromium/chrome/browser/share/ShareActivity.java",
diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/AndroidManifest.xml
--- a/chrome/android/java/AndroidManifest.xml
+++ b/chrome/android/java/AndroidManifest.xml
@ -83,7 +84,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
{% block extra_uses_permissions %}
@@ -1040,49 +1035,8 @@ by a child template that "extends" this file.
@@ -1068,49 +1063,8 @@ by a child template that "extends" this file.
android:configChanges="orientation|keyboardHidden|keyboard|screenSize|mcc|mnc|screenLayout|smallestScreenSize"
android:hardwareAccelerated="false" />
@ -133,7 +134,7 @@ diff --git a/chrome/android/java/AndroidManifest.xml b/chrome/android/java/Andro
<receiver android:name="com.google.ipc.invalidation.ticl.android2.AndroidInternalScheduler$AlarmReceiver"
android:exported="false"/>
<receiver android:name="com.google.ipc.invalidation.external.client.contrib.AndroidListener$AlarmReceiver"
@@ -1109,24 +1063,6 @@ by a child template that "extends" this file.
@@ -1137,24 +1091,6 @@ by a child template that "extends" this file.
android:exported="false"
android:permission="android.permission.BIND_JOB_SERVICE"/>
@ -304,6 +305,26 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeBackgroun
}
private void handleSnippetsOnBrowserUpgraded() {
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java b/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/background_task_scheduler/ChromeBackgroundTaskFactory.java
@@ -19,7 +19,6 @@ import org.chromium.chrome.browser.offlinepages.OfflineBackgroundTask;
import org.chromium.chrome.browser.offlinepages.prefetch.OfflineNotificationBackgroundTask;
import org.chromium.chrome.browser.offlinepages.prefetch.PrefetchBackgroundTask;
import org.chromium.chrome.browser.omaha.OmahaService;
-import org.chromium.chrome.browser.services.gcm.GCMBackgroundTask;
import org.chromium.chrome.browser.webapps.WebApkUpdateTask;
import org.chromium.components.background_task_scheduler.BackgroundTask;
import org.chromium.components.background_task_scheduler.BackgroundTaskFactory;
@@ -48,8 +47,6 @@ public class ChromeBackgroundTaskFactory implements BackgroundTaskFactory {
switch (taskId) {
case TaskIds.OMAHA_JOB_ID:
return new OmahaService();
- case TaskIds.GCM_BACKGROUND_TASK_JOB_ID:
- return new GCMBackgroundTask();
case TaskIds.OFFLINE_PAGES_BACKGROUND_JOB_ID:
return new OfflineBackgroundTask();
case TaskIds.OFFLINE_PAGES_PREFETCH_JOB_ID:
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/invalidation/InvalidationController.java b/chrome/android/java/src/org/chromium/chrome/browser/invalidation/InvalidationController.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/invalidation/InvalidationController.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/invalidation/InvalidationController.java
@ -470,14 +491,14 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/services/gcm/In
diff --git a/components/background_task_scheduler/BUILD.gn b/components/background_task_scheduler/BUILD.gn
--- a/components/background_task_scheduler/BUILD.gn
+++ b/components/background_task_scheduler/BUILD.gn
@@ -30,7 +30,6 @@ if (is_android) {
android_library("background_task_scheduler_java") {
java_files = [
@@ -32,7 +32,6 @@ if (is_android) {
"android/java/src/org/chromium/components/background_task_scheduler/BackgroundTask.java",
"android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskBroadcastReceiver.java",
"android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskFactory.java",
- "android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskGcmTaskService.java",
"android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskJobService.java",
"android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskReflection.java",
"android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskScheduler.java",
"android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerAlarmManager.java",
diff --git a/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java b/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java
--- a/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java
+++ b/components/background_task_scheduler/android/java/src/org/chromium/components/background_task_scheduler/BackgroundTaskSchedulerGcmNetworkManager.java
@ -496,32 +517,44 @@ diff --git a/components/background_task_scheduler/android/java/src/org/chromium/
import org.chromium.base.Log;
import org.chromium.base.ThreadUtils;
import org.chromium.base.VisibleForTesting;
@@ -42,124 +34,6 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule
@@ -42,212 +34,16 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule
sClock = clock;
}
- static BackgroundTask getBackgroundTaskFromTaskParams(@NonNull TaskParams taskParams) {
- String backgroundTaskClassName = getBackgroundTaskClassFromTaskParams(taskParams);
- return BackgroundTaskReflection.getBackgroundTaskFromClassName(backgroundTaskClassName);
- }
-
- private static String getBackgroundTaskClassFromTaskParams(@NonNull TaskParams taskParams) {
- /**
- * Checks if a task expired, based on the current time of the service.
- *
- * @param taskParams parameters sent to the service, which contain the scheduling information
- * regarding expiration.
- * @param currentTimeMs the current time of the service.
- * @return true if the task expired and false otherwise.
- */
- static boolean didTaskExpire(TaskParams taskParams, long currentTimeMs) {
- Bundle extras = taskParams.getExtras();
- if (extras == null) return null;
- return extras.getString(BACKGROUND_TASK_CLASS_KEY);
- }
-
- static Long getDeadlineTimeFromTaskParams(@NonNull TaskParams taskParams) {
- Bundle extras = taskParams.getExtras();
- if (extras == null || !extras.containsKey(BACKGROUND_TASK_DEADLINE_KEY)) {
- return null;
- if (extras == null || !extras.containsKey(BACKGROUND_TASK_SCHEDULE_TIME_KEY)) {
- return false;
- }
- return extras.getLong(BACKGROUND_TASK_DEADLINE_KEY);
- }
-
- private static long getDeadlineTime(TaskInfo taskInfo) {
- long windowEndTimeMs = taskInfo.getOneOffInfo().getWindowEndTimeMs();
- return sClock.currentTimeMillis() + windowEndTimeMs;
- long scheduleTimeMs = extras.getLong(BACKGROUND_TASK_SCHEDULE_TIME_KEY);
- if (extras.containsKey(BACKGROUND_TASK_END_TIME_KEY)) {
- long endTimeMs =
- extras.getLong(BackgroundTaskSchedulerDelegate.BACKGROUND_TASK_END_TIME_KEY);
- return TaskInfo.OneOffInfo.getExpirationStatus(
- scheduleTimeMs, endTimeMs, currentTimeMs);
- } else {
- long intervalTimeMs = extras.getLong(BACKGROUND_TASK_INTERVAL_TIME_KEY);
-
- // If flex is never set, it is given a default value of 10% of the period time, as
- // per the GcmNetworkManager behaviour. This default value is set in
- // https://developers.google.com/android/reference/com/google/android/gms/gcm/PeriodicTask.
- double defaultFlexAsFractionOfInterval = 0.1f;
-
- long flexTimeMs = extras.getLong(BACKGROUND_TASK_FLEX_TIME_KEY,
- /*defaultValue=*/(long) (defaultFlexAsFractionOfInterval * intervalTimeMs));
-
- return TaskInfo.PeriodicInfo.getExpirationStatus(
- scheduleTimeMs, intervalTimeMs, flexTimeMs, currentTimeMs);
- }
- }
-
- /**
@ -553,22 +586,13 @@ diff --git a/components/background_task_scheduler/android/java/src/org/chromium/
- @VisibleForTesting
- static Task createTaskFromTaskInfo(@NonNull TaskInfo taskInfo) {
- Bundle taskExtras = new Bundle();
- taskExtras.putString(
- BACKGROUND_TASK_CLASS_KEY, taskInfo.getBackgroundTaskClass().getName());
- if (!taskInfo.isPeriodic() && taskInfo.getOneOffInfo().expiresAfterWindowEndTime()) {
- taskExtras.putLong(BACKGROUND_TASK_DEADLINE_KEY, getDeadlineTime(taskInfo));
- }
- taskExtras.putBundle(BACKGROUND_TASK_EXTRAS_KEY, taskInfo.getExtras());
-
- Task.Builder builder;
- if (taskInfo.isPeriodic()) {
- builder = getPeriodicTaskBuilder(taskInfo.getPeriodicInfo());
- } else {
- builder = getOneOffTaskBuilder(taskInfo.getOneOffInfo());
- }
- TaskBuilderVisitor taskBuilderVisitor = new TaskBuilderVisitor(taskExtras);
- taskInfo.getTimingInfo().accept(taskBuilderVisitor);
- Task.Builder builder = taskBuilderVisitor.getBuilder();
-
- builder.setExtras(taskExtras)
- .setPersisted(taskInfo.isPersisted())
- builder.setPersisted(taskInfo.isPersisted())
- .setRequiredNetwork(getGcmNetworkManagerNetworkTypeFromTypeFromTaskNetworkType(
- taskInfo.getRequiredNetworkType()))
- .setRequiresCharging(taskInfo.requiresCharging())
@ -579,27 +603,65 @@ diff --git a/components/background_task_scheduler/android/java/src/org/chromium/
- return builder.build();
- }
-
- private static Task.Builder getPeriodicTaskBuilder(TaskInfo.PeriodicInfo periodicInfo) {
- PeriodicTask.Builder builder = new PeriodicTask.Builder();
- builder.setPeriod(TimeUnit.MILLISECONDS.toSeconds(periodicInfo.getIntervalMs()));
- if (periodicInfo.hasFlex()) {
- builder.setFlex(TimeUnit.MILLISECONDS.toSeconds(periodicInfo.getFlexMs()));
- }
- return builder;
- }
- private static class TaskBuilderVisitor implements TaskInfo.TimingInfoVisitor {
- private Task.Builder mBuilder;
- private final Bundle mTaskExtras;
-
- private static Task.Builder getOneOffTaskBuilder(TaskInfo.OneOffInfo oneOffInfo) {
- OneoffTask.Builder builder = new OneoffTask.Builder();
- long windowStartSeconds = oneOffInfo.hasWindowStartTimeConstraint()
- ? TimeUnit.MILLISECONDS.toSeconds(oneOffInfo.getWindowStartTimeMs())
- : 0;
- long windowEndTimeMs = oneOffInfo.getWindowEndTimeMs();
- if (oneOffInfo.expiresAfterWindowEndTime()) {
- windowEndTimeMs += DEADLINE_DELTA_MS;
- TaskBuilderVisitor(Bundle taskExtras) {
- mTaskExtras = taskExtras;
- }
-
- // Only valid after a TimingInfo object was visited.
- Task.Builder getBuilder() {
- return mBuilder;
- }
-
- @Override
- public void visit(TaskInfo.OneOffInfo oneOffInfo) {
- if (oneOffInfo.expiresAfterWindowEndTime()) {
- mTaskExtras.putLong(BACKGROUND_TASK_SCHEDULE_TIME_KEY, sClock.currentTimeMillis());
- mTaskExtras.putLong(BACKGROUND_TASK_END_TIME_KEY, oneOffInfo.getWindowEndTimeMs());
- }
-
- OneoffTask.Builder builder = new OneoffTask.Builder();
- long windowStartSeconds = oneOffInfo.hasWindowStartTimeConstraint()
- ? TimeUnit.MILLISECONDS.toSeconds(oneOffInfo.getWindowStartTimeMs())
- : 0;
- long windowEndTimeMs = oneOffInfo.getWindowEndTimeMs();
- if (oneOffInfo.expiresAfterWindowEndTime()) {
- windowEndTimeMs += DEADLINE_DELTA_MS;
- }
- builder.setExecutionWindow(
- windowStartSeconds, TimeUnit.MILLISECONDS.toSeconds(windowEndTimeMs));
- builder.setExtras(mTaskExtras);
- mBuilder = builder;
- }
-
- @Override
- public void visit(TaskInfo.PeriodicInfo periodicInfo) {
- if (periodicInfo.expiresAfterWindowEndTime()) {
- mTaskExtras.putLong(BACKGROUND_TASK_SCHEDULE_TIME_KEY, sClock.currentTimeMillis());
- mTaskExtras.putLong(
- BACKGROUND_TASK_INTERVAL_TIME_KEY, periodicInfo.getIntervalMs());
- if (periodicInfo.hasFlex()) {
- mTaskExtras.putLong(BACKGROUND_TASK_FLEX_TIME_KEY, periodicInfo.getFlexMs());
- }
- }
-
- PeriodicTask.Builder builder = new PeriodicTask.Builder();
- builder.setPeriod(TimeUnit.MILLISECONDS.toSeconds(periodicInfo.getIntervalMs()));
- if (periodicInfo.hasFlex()) {
- builder.setFlex(TimeUnit.MILLISECONDS.toSeconds(periodicInfo.getFlexMs()));
- }
- builder.setExtras(mTaskExtras);
- mBuilder = builder;
- }
-
- @Override
- public void visit(TaskInfo.ExactInfo exactInfo) {
- throw new RuntimeException("Exact tasks should not be scheduled with "
- + "GcmNetworkManager.");
- }
- builder.setExecutionWindow(
- windowStartSeconds, TimeUnit.MILLISECONDS.toSeconds(windowEndTimeMs));
- return builder;
- }
-
- private static int getGcmNetworkManagerNetworkTypeFromTypeFromTaskNetworkType(
@ -621,11 +683,7 @@ diff --git a/components/background_task_scheduler/android/java/src/org/chromium/
@Override
public boolean schedule(Context context, @NonNull TaskInfo taskInfo) {
ThreadUtils.assertOnUiThread();
@@ -170,50 +44,12 @@ class BackgroundTaskSchedulerGcmNetworkManager implements BackgroundTaskSchedule
+ " has no parameterless public constructor.");
return false;
}
-
- GcmNetworkManager gcmNetworkManager = getGcmNetworkManager(context);
- if (gcmNetworkManager == null) {
- Log.e(TAG, "GcmNetworkManager is not available.");
@ -687,7 +745,7 @@ diff --git a/components/gcm_driver/android/BUILD.gn b/components/gcm_driver/andr
diff --git a/components/gcm_driver/instance_id/android/BUILD.gn b/components/gcm_driver/instance_id/android/BUILD.gn
--- a/components/gcm_driver/instance_id/android/BUILD.gn
+++ b/components/gcm_driver/instance_id/android/BUILD.gn
@@ -25,7 +25,6 @@ android_library("instance_id_driver_java") {
@@ -28,7 +28,6 @@ android_library("instance_id_driver_java") {
java_files = [
"java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java",
@ -698,7 +756,7 @@ diff --git a/components/gcm_driver/instance_id/android/BUILD.gn b/components/gcm
diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java b/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java
--- a/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java
+++ b/components/gcm_driver/instance_id/android/java/src/org/chromium/components/gcm_driver/instance_id/InstanceIDBridge.java
@@ -26,7 +26,6 @@ public class InstanceIDBridge {
@@ -28,7 +28,6 @@ public class InstanceIDBridge {
* Underlying InstanceIDWithSubtype. May be shared by multiple InstanceIDBridges. Must be
* initialized on a background thread.
*/
@ -706,7 +764,7 @@ diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/com
private static boolean sBlockOnAsyncTasksForTesting;
@@ -71,7 +70,7 @@ public class InstanceIDBridge {
@@ -73,7 +72,7 @@ public class InstanceIDBridge {
new BridgeAsyncTask<String>() {
@Override
protected String doBackgroundWork() {
@ -715,7 +773,7 @@ diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/com
}
@Override
protected void sendResultToNative(String id) {
@@ -86,7 +85,7 @@ public class InstanceIDBridge {
@@ -88,7 +87,7 @@ public class InstanceIDBridge {
new BridgeAsyncTask<Long>() {
@Override
protected Long doBackgroundWork() {
@ -724,15 +782,21 @@ diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/com
}
@Override
protected void sendResultToNative(Long creationTime) {
@@ -111,15 +110,7 @@ public class InstanceIDBridge {
@@ -113,21 +112,7 @@ public class InstanceIDBridge {
new BridgeAsyncTask<String>() {
@Override
protected String doBackgroundWork() {
- try {
- // TODO(knollr): Migrate stored LazySubscriptionsManager data to
- // SubscriptionFlagManager.
- LazySubscriptionsManager.storeLazinessInformation(
- LazySubscriptionsManager.buildSubscriptionUniqueId(
- mSubtype, authorizedEntity),
- isLazy);
- (flags & InstanceIDFlags.IS_LAZY) == InstanceIDFlags.IS_LAZY);
- SubscriptionFlagManager.setFlags(
- SubscriptionFlagManager.buildSubscriptionUniqueId(
- mSubtype, authorizedEntity),
- flags);
- return mInstanceID.getToken(authorizedEntity, scope, extras);
- } catch (IOException ex) {
- return "";
@ -741,7 +805,7 @@ diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/com
}
@Override
protected void sendResultToNative(String token) {
@@ -135,18 +126,7 @@ public class InstanceIDBridge {
@@ -143,21 +128,7 @@ public class InstanceIDBridge {
new BridgeAsyncTask<Boolean>() {
@Override
protected Boolean doBackgroundWork() {
@ -753,6 +817,9 @@ diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/com
- LazySubscriptionsManager.deletePersistedMessagesForSubscriptionId(
- subscriptionId);
- }
- SubscriptionFlagManager.clearFlags(
- SubscriptionFlagManager.buildSubscriptionUniqueId(
- mSubtype, authorizedEntity));
- return true;
- } catch (IOException ex) {
- return false;
@ -761,7 +828,7 @@ diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/com
}
@Override
protected void sendResultToNative(Boolean success) {
@@ -161,12 +141,7 @@ public class InstanceIDBridge {
@@ -172,12 +143,7 @@ public class InstanceIDBridge {
new BridgeAsyncTask<Boolean>() {
@Override
protected Boolean doBackgroundWork() {
@ -775,7 +842,7 @@ diff --git a/components/gcm_driver/instance_id/android/java/src/org/chromium/com
}
@Override
protected void sendResultToNative(Boolean success) {
@@ -205,11 +180,6 @@ public class InstanceIDBridge {
@@ -216,11 +182,6 @@ public class InstanceIDBridge {
@Override
@SuppressWarnings("NoSynchronizedThisCheck") // Only used/accessible by native.
protected Result doInBackground() {

View file

@ -23,7 +23,7 @@ diff --git a/chrome/android/java/res/layout/fre_tosanduma.xml b/chrome/android/j
diff --git a/chrome/android/java/res/values/dimens.xml b/chrome/android/java/res/values/dimens.xml
--- a/chrome/android/java/res/values/dimens.xml
+++ b/chrome/android/java/res/values/dimens.xml
@@ -179,7 +179,6 @@
@@ -197,7 +197,6 @@
<dimen name="fre_button_padding">12dp</dimen>
<dimen name="fre_margin">24dp</dimen>
<dimen name="fre_image_height">120dp</dimen>

View file

@ -4,24 +4,24 @@ Subject: kill Vision
Barcode, face and text detection APIs
---
services/shape_detection/BUILD.gn | 4 ----
.../src/org/chromium/shape_detection/BitmapUtils.java | 12 ------------
.../shape_detection/FaceDetectionProviderImpl.java | 15 ++-------------
.../org/chromium/shape_detection/InterfaceRegistrar.java | 5 -----
4 files changed, 2 insertions(+), 34 deletions(-)
services/shape_detection/BUILD.gn | 6 ------
.../java/src/org/chromium/shape_detection/BitmapUtils.java | 12 ------------
.../chromium/shape_detection/FaceDetectionProviderImpl.java | 13 +------------
.../org/chromium/shape_detection/InterfaceRegistrar.java | 13 -------------
4 files changed, 1 insertion(+), 43 deletions(-)
diff --git a/services/shape_detection/BUILD.gn b/services/shape_detection/BUILD.gn
--- a/services/shape_detection/BUILD.gn
+++ b/services/shape_detection/BUILD.gn
@@ -85,14 +85,10 @@ if (is_android) {
@@ -84,14 +84,8 @@ if (is_android) {
android_library("shape_detection_java") {
java_files = [
- "android/java/src/org/chromium/shape_detection/BarcodeDetectionImpl.java",
- "android/java/src/org/chromium/shape_detection/BarcodeDetectionProviderImpl.java",
"android/java/src/org/chromium/shape_detection/FaceDetectionImpl.java",
- "android/java/src/org/chromium/shape_detection/FaceDetectionImpl.java",
- "android/java/src/org/chromium/shape_detection/FaceDetectionImplGmsCore.java",
"android/java/src/org/chromium/shape_detection/FaceDetectionProviderImpl.java",
- "android/java/src/org/chromium/shape_detection/FaceDetectionProviderImpl.java",
"android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java",
"android/java/src/org/chromium/shape_detection/BitmapUtils.java",
- "android/java/src/org/chromium/shape_detection/TextDetectionImpl.java",
@ -68,7 +68,7 @@ diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detect
import org.chromium.base.ContextUtils;
import org.chromium.mojo.bindings.InterfaceRequest;
import org.chromium.mojo.system.MojoException;
@@ -24,16 +21,8 @@ public class FaceDetectionProviderImpl implements FaceDetectionProvider {
@@ -23,16 +20,8 @@ public class FaceDetectionProviderImpl implements FaceDetectionProvider {
@Override
public void createFaceDetection(
InterfaceRequest<FaceDetection> request, FaceDetectorOptions options) {
@ -76,13 +76,12 @@ diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detect
- GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(
- ContextUtils.getApplicationContext())
- == ConnectionResult.SUCCESS;
-
- if (isGmsCoreSupported) {
- FaceDetection.MANAGER.bind(new FaceDetectionImplGmsCore(options), request);
- } else {
- FaceDetection.MANAGER.bind(new FaceDetectionImpl(options), request);
- }
+
+ FaceDetection.MANAGER.bind(new FaceDetectionImpl(options), request);
}
@ -90,24 +89,38 @@ diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detect
diff --git a/services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java b/services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java
--- a/services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java
+++ b/services/shape_detection/android/java/src/org/chromium/shape_detection/InterfaceRegistrar.java
@@ -8,9 +8,7 @@ import org.chromium.base.annotations.CalledByNative;
@@ -8,9 +8,6 @@ import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.JNINamespace;
import org.chromium.mojo.system.MessagePipeHandle;
import org.chromium.mojo.system.impl.CoreImpl;
import org.chromium.services.service_manager.InterfaceRegistry;
-import org.chromium.shape_detection.mojom.BarcodeDetectionProvider;
import org.chromium.shape_detection.mojom.FaceDetectionProvider;
-import org.chromium.shape_detection.mojom.FaceDetectionProvider;
-import org.chromium.shape_detection.mojom.TextDetection;
@JNINamespace("shape_detection")
class InterfaceRegistrar {
@@ -21,9 +19,6 @@ class InterfaceRegistrar {
InterfaceRegistry registry = InterfaceRegistry.create(
CoreImpl.getInstance().acquireNativeHandle(nativeHandle).toMessagePipeHandle());
registry.addInterface(
- BarcodeDetectionProvider.MANAGER, new BarcodeDetectionProviderImpl.Factory());
- registry.addInterface(
FaceDetectionProvider.MANAGER, new FaceDetectionProviderImpl.Factory());
- registry.addInterface(TextDetection.MANAGER, new TextDetectionImpl.Factory());
@@ -20,23 +17,13 @@ class InterfaceRegistrar {
@CalledByNative
static void bindBarcodeDetectionProvider(int nativeHandle) {
- BarcodeDetectionProvider impl = BarcodeDetectionProviderImpl.create();
- if (impl != null) {
- BarcodeDetectionProvider.MANAGER.bind(impl, messagePipeHandleFromNative(nativeHandle));
- }
}
@CalledByNative
static void bindFaceDetectionProvider(int nativeHandle) {
- FaceDetectionProvider.MANAGER.bind(
- new FaceDetectionProviderImpl(), messagePipeHandleFromNative(nativeHandle));
}
@CalledByNative
static void bindTextDetection(int nativeHandle) {
- TextDetection impl = TextDetectionImpl.create();
- if (impl != null) {
- TextDetection.MANAGER.bind(impl, messagePipeHandleFromNative(nativeHandle));
- }
}
}
--

View file

@ -10,7 +10,7 @@ Out with all those tracking cookies!
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
@@ -134,7 +134,7 @@ void ContentSettingsRegistry::Init() {
@@ -135,7 +135,7 @@ void ContentSettingsRegistry::Init() {
// WARNING: The string names of the permissions passed in below are used to
// generate preference names and should never be changed!

View file

@ -8,7 +8,7 @@ prevents the long-living tracking cookie from being set.
References: https://github.com/iridium-browser/iridium-browser/issues/37
---
chrome/browser/safe_browsing/client_side_detection_service.cc | 4 ++--
.../download_protection/check_client_download_request.cc | 2 +-
.../download_protection/check_client_download_request_base.cc | 2 +-
.../safe_browsing/download_protection/ppapi_download_request.cc | 2 +-
components/safe_browsing/browser/threat_details_cache.cc | 1 +
components/safe_browsing/db/v4_update_protocol_manager.cc | 4 ++--
@ -17,7 +17,7 @@ References: https://github.com/iridium-browser/iridium-browser/issues/37
diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chrome/browser/safe_browsing/client_side_detection_service.cc
--- a/chrome/browser/safe_browsing/client_side_detection_service.cc
+++ b/chrome/browser/safe_browsing/client_side_detection_service.cc
@@ -356,7 +356,7 @@ void ClientSideDetectionService::StartClientReportPhishingRequest(
@@ -346,7 +346,7 @@ void ClientSideDetectionService::StartClientReportPhishingRequest(
auto resource_request = std::make_unique<network::ResourceRequest>();
resource_request->url = GetClientReportUrl(kClientReportPhishingUrl);
resource_request->method = "POST";
@ -26,7 +26,7 @@ diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chr
auto loader = network::SimpleURLLoader::Create(std::move(resource_request),
traffic_annotation);
loader->AttachStringForUpload(request_data, "application/octet-stream");
@@ -438,7 +438,7 @@ void ClientSideDetectionService::StartClientReportMalwareRequest(
@@ -428,7 +428,7 @@ void ClientSideDetectionService::StartClientReportMalwareRequest(
auto resource_request = std::make_unique<network::ResourceRequest>();
resource_request->url = GetClientReportUrl(kClientReportMalwareUrl);
resource_request->method = "POST";
@ -35,10 +35,10 @@ diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chr
auto loader = network::SimpleURLLoader::Create(std::move(resource_request),
traffic_annotation);
loader->AttachStringForUpload(request_data, "application/octet-stream");
diff --git a/chrome/browser/safe_browsing/download_protection/check_client_download_request.cc b/chrome/browser/safe_browsing/download_protection/check_client_download_request.cc
--- a/chrome/browser/safe_browsing/download_protection/check_client_download_request.cc
+++ b/chrome/browser/safe_browsing/download_protection/check_client_download_request.cc
@@ -773,7 +773,7 @@ void CheckClientDownloadRequest::SendRequest() {
diff --git a/chrome/browser/safe_browsing/download_protection/check_client_download_request_base.cc b/chrome/browser/safe_browsing/download_protection/check_client_download_request_base.cc
--- a/chrome/browser/safe_browsing/download_protection/check_client_download_request_base.cc
+++ b/chrome/browser/safe_browsing/download_protection/check_client_download_request_base.cc
@@ -596,7 +596,7 @@ void CheckClientDownloadRequestBase::SendRequest() {
auto resource_request = std::make_unique<network::ResourceRequest>();
resource_request->url = PPAPIDownloadRequest::GetDownloadRequestUrl();
resource_request->method = "POST";
@ -50,7 +50,7 @@ diff --git a/chrome/browser/safe_browsing/download_protection/check_client_downl
diff --git a/chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc b/chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc
--- a/chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc
+++ b/chrome/browser/safe_browsing/download_protection/ppapi_download_request.cc
@@ -251,7 +251,7 @@ void PPAPIDownloadRequest::SendRequest() {
@@ -249,7 +249,7 @@ void PPAPIDownloadRequest::SendRequest() {
auto resource_request = std::make_unique<network::ResourceRequest>();
resource_request->url = GetDownloadRequestUrl();
resource_request->method = "POST";
@ -62,7 +62,7 @@ diff --git a/chrome/browser/safe_browsing/download_protection/ppapi_download_req
diff --git a/components/safe_browsing/browser/threat_details_cache.cc b/components/safe_browsing/browser/threat_details_cache.cc
--- a/components/safe_browsing/browser/threat_details_cache.cc
+++ b/components/safe_browsing/browser/threat_details_cache.cc
@@ -114,6 +114,7 @@ void ThreatDetailsCacheCollector::OpenEntry() {
@@ -113,6 +113,7 @@ void ThreatDetailsCacheCollector::OpenEntry() {
// Only from cache, and don't save cookies.
resource_request->load_flags = net::LOAD_ONLY_FROM_CACHE |
net::LOAD_SKIP_CACHE_VALIDATION |
@ -73,7 +73,7 @@ diff --git a/components/safe_browsing/browser/threat_details_cache.cc b/componen
diff --git a/components/safe_browsing/db/v4_update_protocol_manager.cc b/components/safe_browsing/db/v4_update_protocol_manager.cc
--- a/components/safe_browsing/db/v4_update_protocol_manager.cc
+++ b/components/safe_browsing/db/v4_update_protocol_manager.cc
@@ -372,8 +372,8 @@ void V4UpdateProtocolManager::IssueUpdateRequest() {
@@ -369,8 +369,8 @@ void V4UpdateProtocolManager::IssueUpdateRequest() {
std::string req_base64 = GetBase64SerializedUpdateRequestProto();
GetUpdateUrlAndHeaders(req_base64, &resource_request->url,
&resource_request->headers);

View file

@ -28,7 +28,7 @@ diff --git a/chrome/browser/safe_browsing/incident_reporting/incident_report_upl
diff --git a/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.cc b/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.cc
--- a/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.cc
+++ b/chrome/browser/safe_browsing/incident_reporting/incident_reporting_service.cc
@@ -311,11 +311,14 @@ IncidentReportingService::UploadContext::~UploadContext() {
@@ -312,11 +312,14 @@ IncidentReportingService::UploadContext::~UploadContext() {
// static
bool IncidentReportingService::IsEnabledForProfile(Profile* profile) {
@ -59,10 +59,10 @@ diff --git a/chrome/browser/safe_browsing/safe_browsing_blocking_page.cc b/chrom
diff --git a/chrome/browser/safe_browsing/safe_browsing_service.cc b/chrome/browser/safe_browsing/safe_browsing_service.cc
--- a/chrome/browser/safe_browsing/safe_browsing_service.cc
+++ b/chrome/browser/safe_browsing/safe_browsing_service.cc
@@ -257,8 +257,10 @@ SafeBrowsingUIManager* SafeBrowsingService::CreateUIManager() {
@@ -229,8 +229,10 @@ SafeBrowsingUIManager* SafeBrowsingService::CreateUIManager() {
void SafeBrowsingService::RegisterAllDelayedAnalysis() {
#if defined(FULL_SAFE_BROWSING)
#if BUILDFLAG(FULL_SAFE_BROWSING)
+#if 0
RegisterBinaryIntegrityAnalysis();
#endif

View file

@ -12,7 +12,7 @@ This prevents trk:148 (phishing) and trk:149 (malware).
diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chrome/browser/safe_browsing/client_side_detection_service.cc
--- a/chrome/browser/safe_browsing/client_side_detection_service.cc
+++ b/chrome/browser/safe_browsing/client_side_detection_service.cc
@@ -63,11 +63,13 @@ enum MalwareReportTypes {
@@ -61,11 +61,13 @@ enum MalwareReportTypes {
REPORT_RESULT_MAX
};
@ -26,7 +26,7 @@ diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chr
} // namespace
@@ -287,6 +289,10 @@ void ClientSideDetectionService::StartClientReportPhishingRequest(
@@ -277,6 +279,10 @@ void ClientSideDetectionService::StartClientReportPhishingRequest(
return;
}
@ -37,7 +37,7 @@ diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chr
// Fill in metadata about which model we used.
if (is_extended_reporting) {
request->set_model_filename(model_loader_extended_->name());
@@ -369,6 +375,7 @@ void ClientSideDetectionService::StartClientReportPhishingRequest(
@@ -359,6 +365,7 @@ void ClientSideDetectionService::StartClientReportPhishingRequest(
// Record that we made a request
phishing_report_times_.push(base::Time::Now());
@ -45,7 +45,7 @@ diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chr
}
void ClientSideDetectionService::StartClientReportMalwareRequest(
@@ -383,6 +390,10 @@ void ClientSideDetectionService::StartClientReportMalwareRequest(
@@ -373,6 +380,10 @@ void ClientSideDetectionService::StartClientReportMalwareRequest(
return;
}
@ -56,7 +56,7 @@ diff --git a/chrome/browser/safe_browsing/client_side_detection_service.cc b/chr
std::string request_data;
if (!request->SerializeToString(&request_data)) {
UpdateEnumUMAHistogram(REPORT_FAILED_SERIALIZATION);
@@ -452,6 +463,7 @@ void ClientSideDetectionService::StartClientReportMalwareRequest(
@@ -442,6 +453,7 @@ void ClientSideDetectionService::StartClientReportMalwareRequest(
// Record that we made a malware request
malware_report_times_.push(base::Time::Now());

View file

@ -17,7 +17,7 @@ Related comment: https://bugs.chromium.org/p/chromium/issues/detail?id=710701#c1
diff --git a/third_party/blink/renderer/devtools/BUILD.gn b/third_party/blink/renderer/devtools/BUILD.gn
--- a/third_party/blink/renderer/devtools/BUILD.gn
+++ b/third_party/blink/renderer/devtools/BUILD.gn
@@ -1281,10 +1281,8 @@ action("generate_devtools_grd") {
@@ -1290,10 +1290,8 @@ action("generate_devtools_grd") {
devtools_embedder_scripts +
[ "$resources_out_dir/devtools_extension_api.js" ]

View file

@ -15,9 +15,9 @@ See also: https://github.com/Eloston/ungoogled-chromium/issues/104
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
@@ -337,7 +337,6 @@
<include name="IDR_INLINE_LOGIN_HTML" file="resources\inline_login\inline_login.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" />
<include name="IDR_INLINE_LOGIN_CSS" file="resources\inline_login\inline_login.css" flattenhtml="true" type="BINDATA" />
@@ -270,7 +270,6 @@
<include name="IDR_INLINE_LOGIN_HTML" file="resources\inline_login\inline_login.html" flattenhtml="true" allowexternalscript="true" type="BINDATA" preprocess="true" />
<include name="IDR_INLINE_LOGIN_CSS" file="resources\inline_login\inline_login.css" flattenhtml="true" type="BINDATA" preprocess="true" />
<include name="IDR_INLINE_LOGIN_JS" file="resources\inline_login\inline_login.js" flattenhtml="true" type="BINDATA" />
- <include name="IDR_GAIA_AUTH_AUTHENTICATOR_JS" file="resources\gaia_auth_host\authenticator.js" flattenhtml="true" type="BINDATA" />
<include name="IDR_INSPECT_CSS" file="resources\inspect\inspect.css" flattenhtml="true" type="BINDATA" />
@ -37,7 +37,7 @@ diff --git a/chrome/browser/ui/webui/signin/inline_login_ui.cc b/chrome/browser/
diff --git a/google_apis/gaia/gaia_auth_fetcher.cc b/google_apis/gaia/gaia_auth_fetcher.cc
--- a/google_apis/gaia/gaia_auth_fetcher.cc
+++ b/google_apis/gaia/gaia_auth_fetcher.cc
@@ -45,7 +45,7 @@ namespace {
@@ -44,7 +44,7 @@ namespace {
const int kLoadFlagsIgnoreCookies = net::LOAD_DO_NOT_SEND_COOKIES |
net::LOAD_DO_NOT_SAVE_COOKIES;
@ -46,7 +46,7 @@ diff --git a/google_apis/gaia/gaia_auth_fetcher.cc b/google_apis/gaia/gaia_auth_
constexpr char kBadAuthenticationError[] = "BadAuthentication";
constexpr char kBadAuthenticationShortError[] = "badauth";
@@ -261,6 +261,7 @@ void GaiaAuthFetcher::CreateAndStartGaiaFetcher(
@@ -260,6 +260,7 @@ void GaiaAuthFetcher::CreateAndStartGaiaFetcher(
const net::NetworkTrafficAnnotationTag& traffic_annotation) {
DCHECK(!fetch_pending_) << "Tried to fetch two things at once!";
@ -54,7 +54,7 @@ diff --git a/google_apis/gaia/gaia_auth_fetcher.cc b/google_apis/gaia/gaia_auth_
auto resource_request = std::make_unique<network::ResourceRequest>();
resource_request->url = gaia_gurl;
original_url_ = gaia_gurl;
@@ -311,6 +312,7 @@ void GaiaAuthFetcher::CreateAndStartGaiaFetcher(
@@ -316,6 +317,7 @@ void GaiaAuthFetcher::CreateAndStartGaiaFetcher(
base::BindOnce(&GaiaAuthFetcher::OnURLLoadComplete,
base::Unretained(this)),
kMaxMessageSize);

View file

@ -5,8 +5,8 @@ Subject: ungoogled-chromium: Disable Google host detection
Disables various detections of Google hosts and functionality specific to them
---
.../page_load_metrics/page_load_metrics_util.cc | 4 +-
.../page_load_metrics/page_load_metrics_util.cc | 33 +---
components/google/core/common/google_util.cc | 196 ++-------------------
.../common/page_load_metrics_util.cc | 33 +---
components/search_engines/template_url.cc | 6 +-
net/base/url_util.cc | 21 ---
5 files changed, 14 insertions(+), 246 deletions(-)
@ -14,7 +14,7 @@ Disables various detections of Google hosts and functionality specific to them
diff --git a/chrome/browser/page_load_metrics/page_load_metrics_util.cc b/chrome/browser/page_load_metrics/page_load_metrics_util.cc
--- a/chrome/browser/page_load_metrics/page_load_metrics_util.cc
+++ b/chrome/browser/page_load_metrics/page_load_metrics_util.cc
@@ -169,9 +169,7 @@ bool DidObserveLoadingBehaviorInAnyFrame(
@@ -171,9 +171,7 @@ bool DidObserveLoadingBehaviorInAnyFrame(
}
bool IsGoogleSearchHostname(const GURL& url) {
@ -25,53 +25,10 @@ diff --git a/chrome/browser/page_load_metrics/page_load_metrics_util.cc b/chrome
}
bool IsGoogleSearchResultUrl(const GURL& url) {
diff --git a/chrome/common/page_load_metrics/page_load_metrics_util.cc b/chrome/common/page_load_metrics/page_load_metrics_util.cc
--- a/chrome/common/page_load_metrics/page_load_metrics_util.cc
+++ b/chrome/common/page_load_metrics/page_load_metrics_util.cc
@@ -12,38 +12,7 @@
namespace page_load_metrics {
base::Optional<std::string> GetGoogleHostnamePrefix(const GURL& url) {
- const size_t registry_length =
- net::registry_controlled_domains::GetRegistryLength(
- url,
-
- // Do not include unknown registries (registries that don't have any
- // matches in effective TLD names).
- net::registry_controlled_domains::EXCLUDE_UNKNOWN_REGISTRIES,
-
- // Do not include private registries, such as appspot.com. We don't
- // want to match URLs like www.google.appspot.com.
- net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES);
-
- const base::StringPiece hostname = url.host_piece();
- if (registry_length == 0 || registry_length == std::string::npos ||
- registry_length >= hostname.length()) {
- return base::Optional<std::string>();
- }
-
- // Removes the tld and the preceding dot.
- const base::StringPiece hostname_minus_registry =
- hostname.substr(0, hostname.length() - (registry_length + 1));
-
- if (hostname_minus_registry == "google")
- return std::string("");
-
- if (!base::EndsWith(hostname_minus_registry, ".google",
- base::CompareCase::INSENSITIVE_ASCII)) {
- return base::Optional<std::string>();
- }
-
- return std::string(hostname_minus_registry.substr(
- 0, hostname_minus_registry.length() - strlen(".google")));
+ return base::Optional<std::string>();
}
bool IsGoogleHostname(const GURL& url) {
diff --git a/components/google/core/common/google_util.cc b/components/google/core/common/google_util.cc
--- a/components/google/core/common/google_util.cc
+++ b/components/google/core/common/google_util.cc
@@ -45,120 +45,16 @@ bool gUseMockLinkDoctorBaseURLForTesting = false;
@@ -46,102 +46,6 @@ bool gUseMockLinkDoctorBaseURLForTesting = false;
bool g_ignore_port_numbers = false;
@ -174,6 +131,8 @@ diff --git a/components/google/core/common/google_util.cc b/components/google/co
} // namespace
// Global functions -----------------------------------------------------------
@@ -149,19 +53,11 @@ bool IsGoogleSearchSubdomainUrl(const GURL& url) {
const char kGoogleHomepageURL[] = "https://www.google.com/";
bool HasGoogleSearchQueryParam(base::StringPiece str) {
- url::Component query(0, static_cast<int>(str.length())), key, value;
@ -193,7 +152,7 @@ diff --git a/components/google/core/common/google_util.cc b/components/google/co
}
void SetMockLinkDoctorBaseURLForTesting() {
@@ -172,120 +68,50 @@ std::string GetGoogleLocale(const std::string& application_locale) {
@@ -175,120 +71,50 @@ std::string GetGoogleLocale(const std::string& application_locale) {
GURL AppendGoogleLocaleParam(const GURL& url,
const std::string& application_locale) {
@ -324,10 +283,53 @@ diff --git a/components/google/core/common/google_util.cc b/components/google/co
}
bool IsGoogleAssociatedDomainUrl(const GURL& url) {
diff --git a/components/page_load_metrics/common/page_load_metrics_util.cc b/components/page_load_metrics/common/page_load_metrics_util.cc
--- a/components/page_load_metrics/common/page_load_metrics_util.cc
+++ b/components/page_load_metrics/common/page_load_metrics_util.cc
@@ -12,38 +12,7 @@
namespace page_load_metrics {
base::Optional<std::string> GetGoogleHostnamePrefix(const GURL& url) {
- const size_t registry_length =
- net::registry_controlled_domains::GetRegistryLength(
- url,
-
- // Do not include unknown registries (registries that don't have any
- // matches in effective TLD names).
- net::registry_controlled_domains::EXCLUDE_UNKNOWN_REGISTRIES,
-
- // Do not include private registries, such as appspot.com. We don't
- // want to match URLs like www.google.appspot.com.
- net::registry_controlled_domains::EXCLUDE_PRIVATE_REGISTRIES);
-
- const base::StringPiece hostname = url.host_piece();
- if (registry_length == 0 || registry_length == std::string::npos ||
- registry_length >= hostname.length()) {
- return base::Optional<std::string>();
- }
-
- // Removes the tld and the preceding dot.
- const base::StringPiece hostname_minus_registry =
- hostname.substr(0, hostname.length() - (registry_length + 1));
-
- if (hostname_minus_registry == "google")
- return std::string("");
-
- if (!base::EndsWith(hostname_minus_registry, ".google",
- base::CompareCase::INSENSITIVE_ASCII)) {
- return base::Optional<std::string>();
- }
-
- return std::string(hostname_minus_registry.substr(
- 0, hostname_minus_registry.length() - strlen(".google")));
+ return base::Optional<std::string>();
}
bool IsGoogleHostname(const GURL& url) {
diff --git a/components/search_engines/template_url.cc b/components/search_engines/template_url.cc
--- a/components/search_engines/template_url.cc
+++ b/components/search_engines/template_url.cc
@@ -500,11 +500,7 @@ base::string16 TemplateURLRef::SearchTermToString16(
@@ -505,11 +505,7 @@ base::string16 TemplateURLRef::SearchTermToString16(
bool TemplateURLRef::HasGoogleBaseURLs(
const SearchTermsData& search_terms_data) const {
ParseIfNecessary(search_terms_data);
@ -343,7 +345,7 @@ diff --git a/components/search_engines/template_url.cc b/components/search_engin
diff --git a/net/base/url_util.cc b/net/base/url_util.cc
--- a/net/base/url_util.cc
+++ b/net/base/url_util.cc
@@ -411,27 +411,6 @@ bool HasGoogleHost(const GURL& url) {
@@ -394,27 +394,6 @@ bool HasGoogleHost(const GURL& url) {
}
bool IsGoogleHost(base::StringPiece host) {

View file

@ -12,7 +12,7 @@ See this page for more information: https://mikewest.org/2012/02/chrome-connects
diff --git a/chrome/browser/intranet_redirect_detector.cc b/chrome/browser/intranet_redirect_detector.cc
--- a/chrome/browser/intranet_redirect_detector.cc
+++ b/chrome/browser/intranet_redirect_detector.cc
@@ -75,9 +75,7 @@ void IntranetRedirectDetector::FinishSleep() {
@@ -96,9 +96,7 @@ void IntranetRedirectDetector::FinishSleep() {
simple_loaders_.clear();
resulting_origins_.clear();

View file

@ -12,7 +12,7 @@ Added some Bromite-specific further improvements
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -1392,8 +1392,6 @@ jumbo_split_static_library("browser") {
@@ -1449,8 +1449,6 @@ jumbo_split_static_library("browser") {
"profiles/profile_attributes_entry.h",
"profiles/profile_attributes_storage.cc",
"profiles/profile_attributes_storage.h",

View file

@ -5,11 +5,11 @@ Subject: ungoogled-chromium: Disable translate integration
Remove translate offer
---
.../android/java/res/xml/languages_preferences.xml | 5 -----
.../languages/LanguagesPreferences.java | 23 ----------------------
.../languages/LanguagesPreferences.java | 22 ----------------------
.../java/strings/android_chrome_strings.grd | 3 ---
.../translate/core/browser/translate_manager.cc | 5 +++--
.../translate/core/browser/translate_script.cc | 3 +--
5 files changed, 4 insertions(+), 35 deletions(-)
5 files changed, 4 insertions(+), 34 deletions(-)
diff --git a/chrome/android/java/res/xml/languages_preferences.xml b/chrome/android/java/res/xml/languages_preferences.xml
--- a/chrome/android/java/res/xml/languages_preferences.xml
@ -18,24 +18,16 @@ diff --git a/chrome/android/java/res/xml/languages_preferences.xml b/chrome/andr
android:layout="@layout/languages_preference"
android:widgetLayout="@layout/accept_languages_list" />
- <org.chromium.chrome.browser.preferences.ChromeSwitchPreferenceCompat
- <org.chromium.chrome.browser.preferences.ChromeSwitchPreference
- android:key="translate_switch"
- android:summaryOn="@string/languages_offer_translate_switch"
- android:summaryOff="@string/languages_offer_translate_switch" />
-
</android.support.v7.preference.PreferenceScreen>
</PreferenceScreen>
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/languages/LanguagesPreferences.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/languages/LanguagesPreferences.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/languages/LanguagesPreferences.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/languages/LanguagesPreferences.java
@@ -10,7 +10,6 @@ import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceFragmentCompat;
import org.chromium.chrome.R;
-import org.chromium.chrome.browser.preferences.ChromeSwitchPreferenceCompat;
import org.chromium.chrome.browser.preferences.PrefServiceBridge;
import org.chromium.chrome.browser.preferences.PreferenceUtils;
import org.chromium.chrome.browser.preferences.PreferencesLauncher;
@@ -25,7 +24,6 @@ public class LanguagesPreferences
@@ -25,7 +25,6 @@ public class LanguagesPreferences
// The keys for each preference shown on the languages page.
static final String PREFERRED_LANGUAGES_KEY = "preferred_languages";
@ -43,13 +35,13 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/lan
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
@@ -35,27 +33,6 @@ public class LanguagesPreferences
@@ -35,27 +34,6 @@ public class LanguagesPreferences
LanguageListPreference mLanguageListPref =
(LanguageListPreference) findPreference(PREFERRED_LANGUAGES_KEY);
mLanguageListPref.registerActivityLauncher(this);
-
- ChromeSwitchPreferenceCompat translateSwitch =
- (ChromeSwitchPreferenceCompat) findPreference(TRANSLATE_SWITCH_KEY);
- ChromeSwitchPreference translateSwitch =
- (ChromeSwitchPreference) findPreference(TRANSLATE_SWITCH_KEY);
- boolean isTranslateEnabled = PrefServiceBridge.getInstance().isTranslateEnabled();
- translateSwitch.setChecked(isTranslateEnabled);
-
@ -74,7 +66,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/lan
diff --git a/chrome/android/java/strings/android_chrome_strings.grd b/chrome/android/java/strings/android_chrome_strings.grd
--- a/chrome/android/java/strings/android_chrome_strings.grd
+++ b/chrome/android/java/strings/android_chrome_strings.grd
@@ -1193,9 +1193,6 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1211,9 +1211,6 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_LANGUAGES_LIST_PREFS_DESCRIPTION" desc="Description on the Languages settings screen. Appears above a list of one or more languages that the user selects, to tell Chrome which languages they prefer to use to read website content.">
Websites will show text in your preferred language, when possible.
</message>

View file

@ -9,30 +9,30 @@ Subject: ungoogled-chromium: Disable webRTC log uploader
diff --git a/chrome/browser/media/webrtc/webrtc_log_uploader.cc b/chrome/browser/media/webrtc/webrtc_log_uploader.cc
--- a/chrome/browser/media/webrtc/webrtc_log_uploader.cc
+++ b/chrome/browser/media/webrtc/webrtc_log_uploader.cc
@@ -127,29 +127,7 @@ void WebRtcLogUploader::LoggingStoppedDoUpload(
@@ -125,29 +125,7 @@ void WebRtcLogUploader::LoggingStoppedDoUpload(
DCHECK(meta_data.get());
DCHECK(!upload_done_data.log_path.empty());
DCHECK(!upload_done_data.paths.directory.empty());
- std::string compressed_log = CompressLog(log_buffer.get());
-
- std::string local_log_id;
-
- if (base::PathExists(upload_done_data.log_path)) {
- webrtc_logging::DeleteOldWebRtcLogFiles(upload_done_data.log_path);
- if (base::PathExists(upload_done_data.paths.directory)) {
- webrtc_logging::DeleteOldWebRtcLogFiles(upload_done_data.paths.directory);
-
- local_log_id = base::NumberToString(base::Time::Now().ToDoubleT());
- base::FilePath log_file_path =
- upload_done_data.log_path.AppendASCII(local_log_id)
- upload_done_data.paths.directory.AppendASCII(local_log_id)
- .AddExtension(FILE_PATH_LITERAL(".gz"));
- WriteCompressedLogToFile(compressed_log, log_file_path);
-
- base::FilePath log_list_path =
- webrtc_logging::TextLogList::GetWebRtcLogListFileForDirectory(
- upload_done_data.log_path);
- upload_done_data.paths.directory);
- AddLocallyStoredLogInfoToUploadListFile(log_list_path, local_log_id);
- }
-
- WebRtcLogUploadDoneData upload_done_data_with_log_id = upload_done_data;
- UploadDoneData upload_done_data_with_log_id = upload_done_data;
- upload_done_data_with_log_id.local_log_id = local_log_id;
- PrepareMultipartPostData(compressed_log, std::move(meta_data),
- upload_done_data_with_log_id);
@ -40,7 +40,7 @@ diff --git a/chrome/browser/media/webrtc/webrtc_log_uploader.cc b/chrome/browser
}
void WebRtcLogUploader::PrepareMultipartPostData(
@@ -160,6 +138,9 @@ void WebRtcLogUploader::PrepareMultipartPostData(
@@ -158,6 +136,9 @@ void WebRtcLogUploader::PrepareMultipartPostData(
DCHECK(!compressed_log.empty());
DCHECK(meta_data.get());
@ -49,7 +49,7 @@ diff --git a/chrome/browser/media/webrtc/webrtc_log_uploader.cc b/chrome/browser
+
std::unique_ptr<std::string> post_data(new std::string());
SetupMultipart(post_data.get(), compressed_log,
upload_done_data.incoming_rtp_dump,
upload_done_data.paths.incoming_rtp_dump,
--
2.11.0

View file

@ -65,7 +65,6 @@ Add-exit-menu-item.patch
Remove-help-menu-item.patch
Add-menu-option-to-toggle-global-Javascript-preference.patch
Add-global-menu-entry-to-toggle-AdBlocker.patch
Bromite-AdBlock-engine-for-SystemWebView.patch
User-Agent-anonymize.patch
AudioBuffer-AnalyserNode-fingerprinting-mitigations-via-IDL.patch
getClientRects-getBoundingClientRect-measureText-add-fingerprinting-mitigation.patch
@ -123,6 +122,8 @@ disable-sensors-access-site-setting-by-default.patch
Disable-media-router-and-remoting-by-default.patch
Do-not-record-UMA-for-network-errors.patch
Disable-unified-consent-on-Android.patch
Revert-Cleanup-Search-Ready-Omnibox-flag-since-it-has-launched.patch
Disable-search-ready-omnibox-by-default.patch
disable-AdsBlockedInfoBar.patch
Bromite-AdBlockUpdaterService.patch
Revert-Merge-to-M78-Enable-AImageReader-by-default.patch