v119 need some work

This commit is contained in:
Carmelo Messina
2023-10-27 16:15:28 +02:00
parent b90df7de3d
commit d6aff9d77d
25 changed files with 1578 additions and 2348 deletions
+6 -14
View File
@@ -4,14 +4,14 @@ Subject: Disable FedCm
License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
---
content/public/common/content_features.cc | 10 +++++-----
.../renderer/platform/runtime_enabled_features.json5 | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)
content/public/common/content_features.cc | 6 +++---
.../blink/renderer/platform/runtime_enabled_features.json5 | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
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
@@ -418,7 +418,7 @@ BASE_FEATURE(kExperimentalContentSecurityPolicyFeatures,
@@ -337,7 +337,7 @@ BASE_FEATURE(kEnableServiceWorkersForChromeScheme,
// by the flag in RuntimeEnabledFeatures on the blink side. See also
// the use of kSetOnlyIfOverridden in content/child/runtime_features.cc.
// We enable it here by default to support use in origin trials.
@@ -20,15 +20,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/c
// Field trial boolean parameter which indicates whether FedCM IDP sign-out
// is enabled.
@@ -467,15 +467,15 @@ BASE_FEATURE(kFedCmSelectiveDisclosure,
// Enables metrics collection for signin status mismatches. Also enables
// parsing the signin status HTTP headers.
// kFedCmIdpSigninStatusEnabled takes precedence over this feature flag.
-BASE_FEATURE(kFedCmIdpSigninStatusMetrics, // disabled
+BASE_FEATURE(kFedCmIdpSigninStatusMetrics, // enabled
"FedCmIdpSigninStatusMetrics", // by default
- base::FEATURE_DISABLED_BY_DEFAULT); // on bromite
+ base::FEATURE_ENABLED_BY_DEFAULT); // on bromite
@@ -385,9 +385,9 @@ BASE_FEATURE(kFedCmSelectiveDisclosure,
// Enables the IDP signin status API for use with FedCM, including avoiding
// network requests when not signed in and mismatch handling.
@@ -43,7 +35,7 @@ diff --git a/content/public/common/content_features.cc b/content/public/common/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
@@ -1596,7 +1596,7 @@
@@ -1603,7 +1603,7 @@
{
name: "FedCm",
public: true,
File diff suppressed because it is too large Load Diff
+18 -61
View File
@@ -7,7 +7,6 @@ Subject: Fix chromium build bugs
.../AutofillSaveCardBottomSheetBridge.java | 2 +-
.../org/chromium/chrome/browser/tab/TabImpl.java | 2 +-
...me_browser_main_extra_parts_nacl_deprecation.cc | 2 ++
chrome/browser/download/download_ui_model.cc | 2 ++
.../api/autofill_private/autofill_util.cc | 2 ++
.../api/reading_list/reading_list_event_router.h | 2 +-
.../navigation_predictor_metrics_document_data.h | 2 ++
@@ -20,7 +19,6 @@ Subject: Fix chromium build bugs
chrome/browser/usb/chrome_usb_delegate.cc | 2 ++
.../autofill/core/browser/data_model/address.cc | 4 ++--
components/autofill/core/browser/form_structure.cc | 2 ++
.../core/browser/ui/suggestion_selection.cc | 12 +-----------
.../core/browser/webdata/autofill_table.cc | 12 ++++++------
components/omnibox/browser/omnibox_field_trial.cc | 4 ++--
.../phishing_classifier/phishing_image_embedder.cc | 14 +++-----------
@@ -28,7 +26,7 @@ Subject: Fix chromium build bugs
crypto/BUILD.gn | 3 +++
net/BUILD.gn | 1 +
third_party/libevent/BUILD.gn | 2 ++
25 files changed, 48 insertions(+), 45 deletions(-)
23 files changed, 45 insertions(+), 34 deletions(-)
diff --git a/BUILD.gn b/BUILD.gn
--- a/BUILD.gn
@@ -56,7 +54,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/autofill/Autofi
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
@@ -385,7 +385,7 @@ public class TabImpl implements Tab {
@@ -401,7 +401,7 @@ public class TabImpl implements Tab {
}
@Override
@@ -84,29 +82,10 @@ diff --git a/chrome/browser/chrome_browser_main_extra_parts_nacl_deprecation.cc
} // namespace
diff --git a/chrome/browser/download/download_ui_model.cc b/chrome/browser/download/download_ui_model.cc
--- a/chrome/browser/download/download_ui_model.cc
+++ b/chrome/browser/download/download_ui_model.cc
@@ -177,6 +177,7 @@ bool ShouldShowWarningForNoSafeBrowsing(Profile* profile) {
#endif
}
+#if !BUILDFLAG(IS_ANDROID)
bool CanUserTurnOnSafeBrowsing(Profile* profile) {
#if BUILDFLAG(FULL_SAFE_BROWSING)
return !safe_browsing::IsSafeBrowsingPolicyManaged(*profile->GetPrefs());
@@ -184,6 +185,7 @@ bool CanUserTurnOnSafeBrowsing(Profile* profile) {
return false;
#endif
}
+#endif
} // namespace
diff --git a/chrome/browser/extensions/api/autofill_private/autofill_util.cc b/chrome/browser/extensions/api/autofill_private/autofill_util.cc
--- a/chrome/browser/extensions/api/autofill_private/autofill_util.cc
+++ b/chrome/browser/extensions/api/autofill_private/autofill_util.cc
@@ -42,6 +42,7 @@ namespace {
@@ -43,6 +43,7 @@ namespace {
// Get the multi-valued element for |type| and return it as a |vector|.
// TODO(khorimoto): remove this function since multi-valued types are
// deprecated.
@@ -114,7 +93,7 @@ diff --git a/chrome/browser/extensions/api/autofill_private/autofill_util.cc b/c
std::vector<std::string> GetList(const autofill::AutofillProfile& profile,
autofill::ServerFieldType type) {
std::vector<std::string> list;
@@ -65,6 +66,7 @@ std::vector<std::string> GetList(const autofill::AutofillProfile& profile,
@@ -66,6 +67,7 @@ std::vector<std::string> GetList(const autofill::AutofillProfile& profile,
return list;
}
@@ -149,7 +128,7 @@ diff --git a/chrome/browser/navigation_predictor/navigation_predictor_metrics_do
diff --git a/chrome/browser/safe_browsing/BUILD.gn b/chrome/browser/safe_browsing/BUILD.gn
--- a/chrome/browser/safe_browsing/BUILD.gn
+++ b/chrome/browser/safe_browsing/BUILD.gn
@@ -210,6 +210,7 @@ static_library("safe_browsing") {
@@ -182,6 +182,7 @@ static_library("safe_browsing") {
"//components/version_info",
"//content/public/browser",
"//services/preferences/public/mojom:mojom",
@@ -194,7 +173,7 @@ diff --git a/chrome/browser/ui/views/side_panel/read_anything/read_anything_cont
diff --git a/chrome/browser/ui/views/tabs/tab.cc b/chrome/browser/ui/views/tabs/tab.cc
--- a/chrome/browser/ui/views/tabs/tab.cc
+++ b/chrome/browser/ui/views/tabs/tab.cc
@@ -536,7 +536,7 @@ bool Tab::OnMousePressed(const ui::MouseEvent& event) {
@@ -540,7 +540,7 @@ bool Tab::OnMousePressed(const ui::MouseEvent& event) {
}
bool Tab::OnMouseDragged(const ui::MouseEvent& event) {
@@ -256,17 +235,17 @@ diff --git a/chrome/browser/usb/chrome_usb_delegate.cc b/chrome/browser/usb/chro
diff --git a/components/autofill/core/browser/data_model/address.cc b/components/autofill/core/browser/data_model/address.cc
--- a/components/autofill/core/browser/data_model/address.cc
+++ b/components/autofill/core/browser/data_model/address.cc
@@ -30,7 +30,7 @@
@@ -40,7 +40,7 @@ Address::Address(AddressCountryCode country_code)
!i18n_model_definition::IsCustomHierarchyAvailableForCountry(
country_code)) {}
namespace autofill {
-Address::~Address() = default;
+Address::~Address() = default
-Address::Address() : structured_address_(std::make_unique<AddressNode>()){};
+Address::Address() : structured_address_(std::make_unique<AddressNode>()){}
Address& Address::operator=(const Address& address) {
if (this == &address) {
@@ -59,7 +59,7 @@ Address& Address::operator=(const Address& address) {
Address::Address(const Address& address) {
*this = address;
@@ -44,7 +44,7 @@ Address& Address::operator=(const Address& address) {
}
structured_address_->CopyFrom(address.GetStructuredAddress());
return *this;
-};
@@ -293,32 +272,10 @@ diff --git a/components/autofill/core/browser/form_structure.cc b/components/aut
void PopulateRandomizedFormMetadata(const RandomizedEncoder& encoder,
const FormStructure& form,
diff --git a/components/autofill/core/browser/ui/suggestion_selection.cc b/components/autofill/core/browser/ui/suggestion_selection.cc
--- a/components/autofill/core/browser/ui/suggestion_selection.cc
+++ b/components/autofill/core/browser/ui/suggestion_selection.cc
@@ -152,17 +152,7 @@ Suggestion GetFillFullNameSuggestion(Suggestion::BackendId backend_id) {
// whole form.
// TODO(crbug.com/1459990): Use this once the new popup with submenus
// implementation is complete.
-Suggestion GetFillEverythingFromAddressProfileSuggestion(
- Suggestion::BackendId backend_id) {
- Suggestion suggestion(l10n_util::GetStringUTF16(
- IDS_AUTOFILL_FILL_EVERYTHING_FROM_ADDRESS_PROFILE_POPUP_OPTION_SELECTED));
- suggestion.popup_item_id = PopupItemId::kFillEverythingFromAddressProfile;
- suggestion.icon = "magicIcon";
- suggestion.payload = backend_id;
- suggestion.acceptance_a11y_announcement = l10n_util::GetStringUTF16(
- IDS_AUTOFILL_A11Y_ANNOUNCE_FILL_EVERYTHING_FROM_ADDRESS_PROFILE_POPUP_OPTION_SELECTED);
- return suggestion;
-}
+// (UAZO) removed due error: unused function
// Append new suggestions to `suggestions` based on the `ServerFieldType` list
// provided. Suggestions are not added if their info is not found in the
diff --git a/components/autofill/core/browser/webdata/autofill_table.cc b/components/autofill/core/browser/webdata/autofill_table.cc
--- a/components/autofill/core/browser/webdata/autofill_table.cc
+++ b/components/autofill/core/browser/webdata/autofill_table.cc
@@ -412,12 +412,12 @@ void InsertBuilder(sql::Database* db,
@@ -426,12 +426,12 @@ void InsertBuilder(sql::Database* db,
}
// Renames the table `from` into `to` and returns true if successful.
@@ -340,7 +297,7 @@ diff --git a/components/autofill/core/browser/webdata/autofill_table.cc b/compon
diff --git a/components/omnibox/browser/omnibox_field_trial.cc b/components/omnibox/browser/omnibox_field_trial.cc
--- a/components/omnibox/browser/omnibox_field_trial.cc
+++ b/components/omnibox/browser/omnibox_field_trial.cc
@@ -1091,11 +1091,11 @@ MLConfig::MLConfig(const MLConfig&) = default;
@@ -1090,11 +1090,11 @@ MLConfig::MLConfig(const MLConfig&) = default;
ScopedMLConfigForTesting::ScopedMLConfigForTesting()
: original_config_(std::make_unique<MLConfig>(GetMLConfig())) {
@@ -381,7 +338,7 @@ diff --git a/components/safe_browsing/content/renderer/phishing_classifier/phish
diff --git a/content/browser/browser_interface_binders.cc b/content/browser/browser_interface_binders.cc
--- a/content/browser/browser_interface_binders.cc
+++ b/content/browser/browser_interface_binders.cc
@@ -353,6 +353,7 @@ void BindDateTimeChooserForFrame(
@@ -346,6 +346,7 @@ void BindDateTimeChooserForFrame(
void BindTextSuggestionHostForFrame(
RenderFrameHost* host,
mojo::PendingReceiver<blink::mojom::TextSuggestionHost> receiver) {
@@ -405,7 +362,7 @@ diff --git a/crypto/BUILD.gn b/crypto/BUILD.gn
diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn
+++ b/net/BUILD.gn
@@ -1659,6 +1659,7 @@ component("net") {
@@ -1651,6 +1651,7 @@ component("net") {
configs -= [ "//build/config/compiler:default_optimization" ]
configs += [ "//build/config/compiler:optimize_max" ]
}
+101 -40
View File
@@ -34,10 +34,11 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
services/network/network_context.cc | 73 +++
.../network/public/cpp/simple_url_loader.cc | 18 +
.../network/public/cpp/simple_url_loader.h | 3 +
.../loader/fetch/url_loader/url_loader.cc | 145 +++++-
.../platform/loader/fetch/fetch_utils.cc | 171 ++++++-
.../loader/fetch/url_loader/url_loader.cc | 4 +-
.../scripts/auditor/auditor.py | 1 +
.../scripts/auditor/util.py | 1 +
28 files changed, 1502 insertions(+), 16 deletions(-)
29 files changed, 1527 insertions(+), 21 deletions(-)
create mode 100644 services/firewall/public/BUILD.gn
create mode 100644 services/firewall/public/firewall_features.cc
create mode 100644 services/firewall/public/firewall_features.h
@@ -55,7 +56,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
--- a/chrome/browser/BUILD.gn
+++ b/chrome/browser/BUILD.gn
@@ -2495,6 +2495,7 @@ static_library("browser") {
@@ -2552,6 +2552,7 @@ static_library("browser") {
"//third_party/ungoogled:switches",
"//services/device/public/mojom",
"//services/device/public/mojom:usb",
@@ -66,7 +67,7 @@ diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -202,6 +202,7 @@
@@ -203,6 +203,7 @@
#include "sandbox/policy/features.h"
#include "sandbox/policy/switches.h"
#include "services/device/public/cpp/device_features.h"
@@ -74,7 +75,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
#include "services/media_session/public/cpp/features.h"
#include "services/network/public/cpp/features.h"
#include "services/network/public/cpp/network_switches.h"
@@ -8329,6 +8330,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -8592,6 +8593,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(page_info::kPageInfoHideSiteSettings)},
#endif // !BUILDFLAG(IS_ANDROID)
@@ -235,7 +236,7 @@ diff --git a/components/webapps/browser/android/webapk/webapk_icon_hasher.cc b/c
diff --git a/net/BUILD.gn b/net/BUILD.gn
--- a/net/BUILD.gn
+++ b/net/BUILD.gn
@@ -1098,6 +1098,7 @@ component("net") {
@@ -1096,6 +1096,7 @@ component("net") {
"//build:chromeos_buildflags",
"//net/data/ssl/chrome_root_store:gen_root_store_inc",
"//net/http:transport_security_state_generated_files",
@@ -270,7 +271,7 @@ diff --git a/net/url_request/url_request_http_job.cc b/net/url_request/url_reque
}
URLRequestHttpJob::~URLRequestHttpJob() {
@@ -574,6 +577,18 @@ void URLRequestHttpJob::MaybeStartTransactionInternal(int result) {
@@ -555,6 +558,18 @@ void URLRequestHttpJob::MaybeStartTransactionInternal(int result) {
void URLRequestHttpJob::StartTransactionInternal() {
DCHECK(!override_response_headers_);
@@ -1528,7 +1529,7 @@ new file mode 100644
diff --git a/services/network/network_context.cc b/services/network/network_context.cc
--- a/services/network/network_context.cc
+++ b/services/network/network_context.cc
@@ -87,6 +87,7 @@
@@ -88,6 +88,7 @@
#include "net/url_request/url_request.h"
#include "net/url_request/url_request_context.h"
#include "net/url_request/url_request_context_builder.h"
@@ -1536,7 +1537,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
#include "services/network/brokered_client_socket_factory.h"
#include "services/network/cookie_manager.h"
#include "services/network/cors/cors_url_loader_factory.h"
@@ -1625,6 +1626,9 @@ void NetworkContext::OnNewSCTAuditingReportSent() {
@@ -1622,6 +1623,9 @@ void NetworkContext::OnNewSCTAuditingReportSent() {
void NetworkContext::CreateUDPSocket(
mojo::PendingReceiver<mojom::UDPSocket> receiver,
mojo::PendingRemote<mojom::UDPSocketListener> listener) {
@@ -1546,7 +1547,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateUDPSocket(std::move(receiver), std::move(listener));
}
@@ -1637,6 +1641,17 @@ void NetworkContext::CreateRestrictedUDPSocket(
@@ -1634,6 +1638,17 @@ void NetworkContext::CreateRestrictedUDPSocket(
mojo::PendingRemote<mojom::UDPSocketListener> listener,
CreateRestrictedUDPSocketCallback callback) {
// SimpleHostResolver is transitively owned by |this|.
@@ -1564,7 +1565,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateRestrictedUDPSocket(
addr, mode, traffic_annotation, std::move(params), std::move(receiver),
std::move(listener), SimpleHostResolver::Create(this),
@@ -1649,6 +1664,17 @@ void NetworkContext::CreateTCPServerSocket(
@@ -1646,6 +1661,17 @@ void NetworkContext::CreateTCPServerSocket(
const net::MutableNetworkTrafficAnnotationTag& traffic_annotation,
mojo::PendingReceiver<mojom::TCPServerSocket> receiver,
CreateTCPServerSocketCallback callback) {
@@ -1582,7 +1583,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateTCPServerSocket(
local_addr, std::move(options),
static_cast<net::NetworkTrafficAnnotationTag>(traffic_annotation),
@@ -1663,6 +1689,21 @@ void NetworkContext::CreateTCPConnectedSocket(
@@ -1660,6 +1686,21 @@ void NetworkContext::CreateTCPConnectedSocket(
mojo::PendingReceiver<mojom::TCPConnectedSocket> receiver,
mojo::PendingRemote<mojom::SocketObserver> observer,
CreateTCPConnectedSocketCallback callback) {
@@ -1604,7 +1605,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateTCPConnectedSocket(
local_addr, remote_addr_list, std::move(tcp_connected_socket_options),
static_cast<net::NetworkTrafficAnnotationTag>(traffic_annotation),
@@ -1674,6 +1715,20 @@ void NetworkContext::CreateTCPBoundSocket(
@@ -1671,6 +1712,20 @@ void NetworkContext::CreateTCPBoundSocket(
const net::MutableNetworkTrafficAnnotationTag& traffic_annotation,
mojo::PendingReceiver<mojom::TCPBoundSocket> receiver,
CreateTCPBoundSocketCallback callback) {
@@ -1625,7 +1626,7 @@ diff --git a/services/network/network_context.cc b/services/network/network_cont
socket_factory_->CreateTCPBoundSocket(
local_addr,
static_cast<net::NetworkTrafficAnnotationTag>(traffic_annotation),
@@ -1739,6 +1794,24 @@ void NetworkContext::CreateWebSocket(
@@ -1736,6 +1791,24 @@ void NetworkContext::CreateWebSocket(
mojo::PendingRemote<mojom::WebSocketAuthenticationHandler> auth_handler,
mojo::PendingRemote<mojom::TrustedHeaderClient> header_client,
const absl::optional<base::UnguessableToken>& throttling_profile_id) {
@@ -1705,14 +1706,40 @@ diff --git a/services/network/public/cpp/simple_url_loader.h b/services/network/
};
} // namespace network
diff --git a/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc b/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc
--- a/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc
+++ b/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc
@@ -648,23 +648,150 @@ net::NetworkTrafficAnnotationTag URLLoader::Context::GetTrafficAnnotationTag(
diff --git a/third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc b/third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc
--- a/third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc
+++ b/third_party/blink/renderer/platform/loader/fetch/fetch_utils.cc
@@ -97,28 +97,153 @@ net::NetworkTrafficAnnotationTag FetchUtils::GetTrafficAnnotationTag(
case network::mojom::RequestDestination::kIframe:
case network::mojom::RequestDestination::kFrame:
case network::mojom::RequestDestination::kFencedframe:
- case network::mojom::RequestDestination::kWebIdentity:
NOTREACHED();
[[fallthrough]];
+ // Split destination with new annotations
+ case network::mojom::RequestDestination::kWebIdentity:
+ return net::DefineNetworkTrafficAnnotation("blink_resource_loader_webidentity", R"(
+ semantics {
+ sender: "Blink Resource Loader"
+ description:
+ "Blink-initiated request, which includes all resources for "
+ "normal page loads, chrome URLs, and downloads."
+ trigger:
+ "The user navigates to a URL or downloads a file. Also when a "
+ "webpage, ServiceWorker, or chrome:// uses any network communication."
+ data: "Anything the initiator wants to send."
+ destination: OTHER
+ }
+ policy {
+ cookies_allowed: YES
+ cookies_store: "user"
+ setting: "These requests cannot be disabled in settings."
+ policy_exception_justification:
+ "Not implemented. Without these requests, Chrome will be unable "
+ "to load any webpage."
+ })");
+
+ case network::mojom::RequestDestination::kServiceWorker:
+ case network::mojom::RequestDestination::kSharedWorker:
+ case network::mojom::RequestDestination::kWorker:
@@ -1826,8 +1853,33 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loa
+ "to load any webpage."
+ })");
+
+ case network::mojom::RequestDestination::kXslt:
+ return net::DefineNetworkTrafficAnnotation("blink_resource_loader_xslt", R"(
case network::mojom::RequestDestination::kEmpty:
case network::mojom::RequestDestination::kAudio:
- case network::mojom::RequestDestination::kAudioWorklet:
case network::mojom::RequestDestination::kFont:
case network::mojom::RequestDestination::kImage:
- case network::mojom::RequestDestination::kManifest:
- case network::mojom::RequestDestination::kPaintWorklet:
- case network::mojom::RequestDestination::kReport:
case network::mojom::RequestDestination::kScript:
- case network::mojom::RequestDestination::kServiceWorker:
- case network::mojom::RequestDestination::kSharedWorker:
case network::mojom::RequestDestination::kStyle:
case network::mojom::RequestDestination::kTrack:
case network::mojom::RequestDestination::kVideo:
- case network::mojom::RequestDestination::kWebBundle:
- case network::mojom::RequestDestination::kWorker:
- case network::mojom::RequestDestination::kXslt:
- case network::mojom::RequestDestination::kDictionary:
return net::DefineNetworkTrafficAnnotation("blink_resource_loader", R"(
semantics {
sender: "Blink Resource Loader"
@@ -140,10 +265,32 @@ net::NetworkTrafficAnnotationTag FetchUtils::GetTrafficAnnotationTag(
"to load any webpage."
})");
+ case network::mojom::RequestDestination::kDictionary:
+ return net::DefineNetworkTrafficAnnotation("blink_resource_loader_dictionary", R"(
+ semantics {
+ sender: "Blink Resource Loader"
+ description:
@@ -1848,26 +1900,35 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loa
+ "to load any webpage."
+ })");
+
case network::mojom::RequestDestination::kEmpty:
case network::mojom::RequestDestination::kAudio:
- case network::mojom::RequestDestination::kAudioWorklet:
case network::mojom::RequestDestination::kFont:
case network::mojom::RequestDestination::kImage:
- case network::mojom::RequestDestination::kManifest:
- case network::mojom::RequestDestination::kPaintWorklet:
- case network::mojom::RequestDestination::kReport:
case network::mojom::RequestDestination::kScript:
- case network::mojom::RequestDestination::kServiceWorker:
- case network::mojom::RequestDestination::kSharedWorker:
case network::mojom::RequestDestination::kStyle:
case network::mojom::RequestDestination::kTrack:
case network::mojom::RequestDestination::kVideo:
- case network::mojom::RequestDestination::kWebBundle:
- case network::mojom::RequestDestination::kWorker:
- case network::mojom::RequestDestination::kXslt:
case network::mojom::RequestDestination::kDictionary:
return net::DefineNetworkTrafficAnnotation("blink_resource_loader", R"(
semantics {
case network::mojom::RequestDestination::kEmbed:
case network::mojom::RequestDestination::kObject:
return net::DefineNetworkTrafficAnnotation(
- "blink_extension_resource_loader", R"(
+ "blink_extension_resource_loader_embed", R"(
semantics {
sender: "Blink Resource Loader"
description:
diff --git a/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc b/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc
--- a/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc
+++ b/third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.cc
@@ -287,7 +287,7 @@ void URLLoader::Context::Start(
download_to_blob_registry.InitWithNewPipeAndPassReceiver());
}
net::NetworkTrafficAnnotationTag tag =
- FetchUtils::GetTrafficAnnotationTag(*request);
+ FetchUtils::GetTrafficAnnotationTag(*request); // check for deprecation
resource_request_sender_->SendSync(
std::move(request), tag, loader_options, sync_load_response,
url_loader_factory_, std::move(throttles), timeout_interval,
@@ -300,7 +300,7 @@ void URLLoader::Context::Start(
TRACE_EVENT_WITH_FLOW0("loading", "URLLoader::Context::Start", this,
TRACE_EVENT_FLAG_FLOW_OUT);
net::NetworkTrafficAnnotationTag tag =
- FetchUtils::GetTrafficAnnotationTag(*request);
+ FetchUtils::GetTrafficAnnotationTag(*request); // check for deprecation
request_id_ = resource_request_sender_->SendAsync(
std::move(request), GetMaybeUnfreezableTaskRunner(), tag, loader_options,
cors_exempt_header_list_, base::WrapRefCounted(this), url_loader_factory_,
diff --git a/tools/traffic_annotation/scripts/auditor/auditor.py b/tools/traffic_annotation/scripts/auditor/auditor.py
--- a/tools/traffic_annotation/scripts/auditor/auditor.py
+++ b/tools/traffic_annotation/scripts/auditor/auditor.py
@@ -11,7 +11,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc b/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc
--- a/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc
+++ b/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc
@@ -826,6 +826,9 @@ bool ResourceLoader::WillFollowRedirect(
@@ -822,6 +822,9 @@ bool ResourceLoader::WillFollowRedirect(
new_url)) {
fetcher_->GetUseCounter().CountUse(
mojom::WebFeature::kAuthorizationCrossOrigin);
@@ -20,11 +20,11 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/resource_loader.cc
+ }
}
if (removed_headers) {
// TODO(https://crbug.com/471397, https://crbug.com/1406737): Reconsider
diff --git a/third_party/blink/renderer/platform/loader/fetch/url_loader/sync_load_context.cc b/third_party/blink/renderer/platform/loader/fetch/url_loader/sync_load_context.cc
--- a/third_party/blink/renderer/platform/loader/fetch/url_loader/sync_load_context.cc
+++ b/third_party/blink/renderer/platform/loader/fetch/url_loader/sync_load_context.cc
@@ -172,6 +172,9 @@ bool SyncLoadContext::OnReceivedRedirect(
@@ -179,6 +179,9 @@ void SyncLoadContext::OnReceivedRedirect(
if (has_authorization_header_ &&
!url::IsSameOriginWith(response_->url, redirect_info.new_url)) {
response_->has_authorization_header_between_cross_origin_redirect_ = true;
@@ -33,6 +33,6 @@ diff --git a/third_party/blink/renderer/platform/loader/fetch/url_loader/sync_lo
+ }
}
if (removed_headers) {
response_->url = redirect_info.new_url;
--
2.25.1
@@ -10,7 +10,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
diff --git a/third_party/blink/common/features.cc b/third_party/blink/common/features.cc
--- a/third_party/blink/common/features.cc
+++ b/third_party/blink/common/features.cc
@@ -174,7 +174,7 @@ const base::FeatureParam<int> kSkipFrameCountForLazyAds(
@@ -180,7 +180,7 @@ const base::FeatureParam<int> kSkipFrameCountForLazyAds(
// Vitals.
BASE_FEATURE(kAutomaticLazyFrameLoadingToEmbeds,
"AutomaticLazyFrameLoadingToEmbeds", // must be enabled
@@ -10,7 +10,7 @@ License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
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
@@ -187,7 +187,7 @@ by a child template that "extends" this file.
@@ -188,7 +188,7 @@ by a child template that "extends" this file.
android:networkSecurityConfig="@xml/network_security_config"
android:allowAudioPlaybackCapture="false"
android:appComponentFactory="org.chromium.chrome.browser.base.SplitCompatAppComponentFactory"
@@ -17,7 +17,7 @@ Test with https://worker-playground.glitch.me/
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
@@ -3150,6 +3150,7 @@ bool ChromeContentBrowserClient::AllowSharedWorker(
@@ -3164,6 +3164,7 @@ bool ChromeContentBrowserClient::AllowSharedWorker(
content::BrowserContext* context,
int render_process_id,
int render_frame_id) {
@@ -4,15 +4,15 @@ Subject: Add DuckDuckGo Lite search engine
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../search_engines/prepopulated_engines.json | 10 +
.../search_engines/search_engine_type.h | 1 +
.../template_url_prepopulate_data.cc | 184 +++++++++---------
3 files changed, 103 insertions(+), 92 deletions(-)
components/search_engines/prepopulated_engines.json | 10 ++++++++++
components/search_engines/search_engine_type.h | 1 +
.../search_engines/template_url_prepopulate_data.cc | 1 +
3 files changed, 12 insertions(+)
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
@@ -102,6 +102,16 @@
@@ -113,6 +113,16 @@
"id": 92
},
@@ -32,828 +32,22 @@ diff --git a/components/search_engines/prepopulated_engines.json b/components/se
diff --git a/components/search_engines/search_engine_type.h b/components/search_engines/search_engine_type.h
--- a/components/search_engines/search_engine_type.h
+++ b/components/search_engines/search_engine_type.h
@@ -79,6 +79,7 @@ enum SearchEngineType {
SEARCH_ENGINE_STARTER_PACK_HISTORY = 62,
SEARCH_ENGINE_STARTER_PACK_TABS = 63,
SEARCH_ENGINE_GOOGLE_EN = 64,
+ SEARCH_ENGINE_DUCKDUCKGOLIGHT = 65,
@@ -89,6 +89,7 @@ enum SearchEngineType {
SEARCH_ENGINE_BRAVE = 70,
SEARCH_ENGINE_KARMA = 71,
SEARCH_ENGINE_GOOGLE_EN = 72,
+ SEARCH_ENGINE_DUCKDUCKGOLIGHT = 73,
SEARCH_ENGINE_MAX // Bounding value needed for UMA histogram macro.
};
diff --git a/components/search_engines/template_url_prepopulate_data.cc b/components/search_engines/template_url_prepopulate_data.cc
--- a/components/search_engines/template_url_prepopulate_data.cc
+++ b/components/search_engines/template_url_prepopulate_data.cc
@@ -43,7 +43,7 @@ const PrepopulatedEngine* const engines_AE[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_ru,
};
@@ -61,7 +61,7 @@ const PrepopulatedEngine* const engines_AR[] = {
&googleen, &google,
&bing,
&yahoo_ar,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -69,7 +69,7 @@ const PrepopulatedEngine* const engines_AR[] = {
const PrepopulatedEngine* const engines_AT[] = {
&googleen, &google,
&bing,
- &yahoo_at,
+ &yahoo_at, &duckduckgo_light,
&duckduckgo,
&ecosia,
};
@@ -79,7 +79,7 @@ const PrepopulatedEngine* const engines_AU[] = {
&googleen, &google,
&bing,
&yahoo_au,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -88,7 +88,7 @@ const PrepopulatedEngine* const engines_BA[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_com,
};
@@ -98,7 +98,7 @@ const PrepopulatedEngine* const engines_BE[] = {
&bing,
&yahoo,
&ecosia,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Bulgaria
@@ -106,7 +106,7 @@ const PrepopulatedEngine* const engines_BG[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_ru,
};
@@ -115,7 +115,7 @@ const PrepopulatedEngine* const engines_BH[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -124,7 +124,7 @@ const PrepopulatedEngine* const engines_BI[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_ru,
};
@@ -133,7 +133,7 @@ const PrepopulatedEngine* const engines_BN[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -142,7 +142,7 @@ const PrepopulatedEngine* const engines_BO[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -151,7 +151,7 @@ const PrepopulatedEngine* const engines_BR[] = {
&googleen, &google,
&bing,
&yahoo_br,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_com,
};
@@ -161,7 +161,7 @@ const PrepopulatedEngine* const engines_BY[] = {
&yandex_by,
&mail_ru,
&bing,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Belize
@@ -178,7 +178,7 @@ const PrepopulatedEngine* const engines_CA[] = {
&googleen, &google,
&bing,
&yahoo_ca,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -186,7 +186,7 @@ const PrepopulatedEngine* const engines_CA[] = {
const PrepopulatedEngine* const engines_CH[] = {
&googleen, &google,
&bing,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yahoo_ch,
&ecosia,
};
@@ -196,7 +196,7 @@ const PrepopulatedEngine* const engines_CL[] = {
&googleen, &google,
&bing,
&yahoo_cl,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -215,7 +215,7 @@ const PrepopulatedEngine* const engines_CO[] = {
&bing,
&yahoo_co,
&duckduckgo,
- &ecosia,
+ &ecosia, &duckduckgo_light,
};
// Costa Rica
@@ -223,7 +223,7 @@ const PrepopulatedEngine* const engines_CR[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -233,7 +233,7 @@ const PrepopulatedEngine* const engines_CZ[] = {
&seznam_cz,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Germany
@@ -241,7 +241,7 @@ const PrepopulatedEngine* const engines_DE[] = {
&googleen, &google,
&bing,
&yahoo_de,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -250,7 +250,7 @@ const PrepopulatedEngine* const engines_DK[] = {
&googleen, &google,
&bing,
&yahoo_dk,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -259,7 +259,7 @@ const PrepopulatedEngine* const engines_DO[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -269,7 +269,7 @@ const PrepopulatedEngine* const engines_DZ[] = {
&bing,
&yahoo_fr,
&yandex_com,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Ecuador
@@ -296,7 +296,7 @@ const PrepopulatedEngine* const engines_EG[] = {
&bing,
&yahoo,
&yandex_com,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Spain
@@ -304,7 +304,7 @@ const PrepopulatedEngine* const engines_ES[] = {
&googleen, &google,
&bing,
&yahoo_es,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -313,7 +313,7 @@ const PrepopulatedEngine* const engines_FI[] = {
&googleen, &google,
&bing,
&yahoo_fi,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_ru,
};
@@ -340,7 +340,7 @@ const PrepopulatedEngine* const engines_GB[] = {
&googleen, &google,
&bing,
&yahoo_uk,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -349,7 +349,7 @@ const PrepopulatedEngine* const engines_GR[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_ru,
};
@@ -358,7 +358,7 @@ const PrepopulatedEngine* const engines_GT[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -368,7 +368,7 @@ const PrepopulatedEngine* const engines_HK[] = {
&bing,
&yahoo_hk,
&baidu,
- &so_360,
+ &so_360, &duckduckgo_light,
};
// Honduras
@@ -376,7 +376,7 @@ const PrepopulatedEngine* const engines_HN[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -394,7 +394,7 @@ const PrepopulatedEngine* const engines_HU[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_com,
};
@@ -403,7 +403,7 @@ const PrepopulatedEngine* const engines_ID[] = {
&googleen, &google,
&bing,
&yahoo_id,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_com,
};
@@ -412,7 +412,7 @@ const PrepopulatedEngine* const engines_IE[] = {
&googleen, &google,
&bing,
&yahoo_uk,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -422,7 +422,7 @@ const PrepopulatedEngine* const engines_IL[] = {
&bing,
&yandex_ru,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// India
@@ -430,7 +430,7 @@ const PrepopulatedEngine* const engines_IN[] = {
&googleen, &google,
&bing,
&yahoo_in,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&info_com,
};
@@ -440,7 +440,7 @@ const PrepopulatedEngine* const engines_IQ[] = {
&bing,
&yahoo,
&yandex_tr,
- &petal_search,
+ &petal_search, &duckduckgo_light,
};
// Iran
@@ -449,14 +449,14 @@ const PrepopulatedEngine* const engines_IR[] = {
&bing,
&yahoo,
&duckduckgo,
- &ask,
+ &ask, &duckduckgo_light,
};
// Iceland
const PrepopulatedEngine* const engines_IS[] = {
&googleen, &google,
&bing,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yahoo,
&ecosia,
};
@@ -466,7 +466,7 @@ const PrepopulatedEngine* const engines_IT[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -475,7 +475,7 @@ const PrepopulatedEngine* const engines_JM[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -493,7 +493,7 @@ const PrepopulatedEngine* const engines_JP[] = {
&googleen, &google,
&bing,
&yahoo_jp,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&baidu,
};
@@ -502,7 +502,7 @@ const PrepopulatedEngine* const engines_KE[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_com,
};
@@ -530,7 +530,7 @@ const PrepopulatedEngine* const engines_KZ[] = {
&yandex_kz,
&mail_ru,
&bing,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Lebanon
@@ -538,7 +538,7 @@ const PrepopulatedEngine* const engines_LB[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -546,7 +546,7 @@ const PrepopulatedEngine* const engines_LB[] = {
const PrepopulatedEngine* const engines_LI[] = {
&googleen, &google,
&bing,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yahoo,
&ecosia,
};
@@ -556,7 +556,7 @@ const PrepopulatedEngine* const engines_LT[] = {
&googleen, &google,
&bing,
&yandex_ru,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yahoo,
};
@@ -564,7 +564,7 @@ const PrepopulatedEngine* const engines_LT[] = {
const PrepopulatedEngine* const engines_LU[] = {
&googleen, &google,
&bing,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yahoo,
&ecosia,
};
@@ -575,7 +575,7 @@ const PrepopulatedEngine* const engines_LV[] = {
&bing,
&yandex_ru,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Libya
@@ -584,7 +584,7 @@ const PrepopulatedEngine* const engines_LY[] = {
&bing,
&yahoo,
&yandex_tr,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Morocco
@@ -593,14 +593,14 @@ const PrepopulatedEngine* const engines_MA[] = {
&bing,
&yahoo_fr,
&yandex_com,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Monaco
const PrepopulatedEngine* const engines_MC[] = {
&googleen, &google,
&bing,
- &yahoo_fr,
+ &yahoo_fr, &duckduckgo_light,
&duckduckgo,
&qwant,
};
@@ -620,7 +620,7 @@ const PrepopulatedEngine* const engines_ME[] = {
&bing,
&yandex_ru,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Macedonia
@@ -628,7 +628,7 @@ const PrepopulatedEngine* const engines_MK[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_com,
};
@@ -637,7 +637,7 @@ const PrepopulatedEngine* const engines_MX[] = {
&googleen, &google,
&bing,
&yahoo_mx,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -646,7 +646,7 @@ const PrepopulatedEngine* const engines_MY[] = {
&googleen, &google,
&bing,
&yahoo_my,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -655,7 +655,7 @@ const PrepopulatedEngine* const engines_NI[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -664,7 +664,7 @@ const PrepopulatedEngine* const engines_NL[] = {
&googleen, &google,
&bing,
&yahoo_nl,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_ru,
};
@@ -673,7 +673,7 @@ const PrepopulatedEngine* const engines_NO[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -682,7 +682,7 @@ const PrepopulatedEngine* const engines_NZ[] = {
&googleen, &google,
&bing,
&yahoo_nz,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -700,7 +700,7 @@ const PrepopulatedEngine* const engines_PA[] = {
&googleen, &google,
&bing,
&yahoo_es,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -710,7 +710,7 @@ const PrepopulatedEngine* const engines_PE[] = {
&bing,
&yahoo_pe,
&ecosia,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Philippines
@@ -719,7 +719,7 @@ const PrepopulatedEngine* const engines_PH[] = {
&bing,
&yahoo_ph,
&ecosia,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Pakistan
@@ -727,7 +727,7 @@ const PrepopulatedEngine* const engines_PK[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_com,
};
@@ -736,7 +736,7 @@ const PrepopulatedEngine* const engines_PL[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_ru,
};
@@ -745,7 +745,7 @@ const PrepopulatedEngine* const engines_PR[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -754,7 +754,7 @@ const PrepopulatedEngine* const engines_PT[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -763,7 +763,7 @@ const PrepopulatedEngine* const engines_PY[] = {
&googleen, &google,
&bing,
&yahoo_es,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -772,7 +772,7 @@ const PrepopulatedEngine* const engines_QA[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_tr,
};
@@ -781,7 +781,7 @@ const PrepopulatedEngine* const engines_RO[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_tr,
};
@@ -790,7 +790,7 @@ const PrepopulatedEngine* const engines_RS[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_ru,
};
@@ -800,7 +800,7 @@ const PrepopulatedEngine* const engines_RU[] = {
&google,
&duckduckgo,
&bing,
- &mail_ru,
+ &mail_ru, &duckduckgo_light,
};
// Rwanda
@@ -808,7 +808,7 @@ const PrepopulatedEngine* const engines_RW[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -818,7 +818,7 @@ const PrepopulatedEngine* const engines_SA[] = {
&bing,
&yahoo,
&yandex_com,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Sweden
@@ -826,7 +826,7 @@ const PrepopulatedEngine* const engines_SE[] = {
&googleen, &google,
&bing,
&yahoo_se,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_ru,
};
@@ -835,7 +835,7 @@ const PrepopulatedEngine* const engines_SG[] = {
&googleen, &google,
&bing,
&yahoo_sg,
- &baidu,
+ &baidu, &duckduckgo_light,
&duckduckgo,
};
@@ -843,7 +843,7 @@ const PrepopulatedEngine* const engines_SG[] = {
const PrepopulatedEngine* const engines_SI[] = {
&googleen, &google,
&bing,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yahoo,
&yandex_com,
};
@@ -852,7 +852,7 @@ const PrepopulatedEngine* const engines_SI[] = {
const PrepopulatedEngine* const engines_SK[] = {
&googleen, &google,
&bing,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yahoo,
&yandex_ru,
};
@@ -862,7 +862,7 @@ const PrepopulatedEngine* const engines_SV[] = {
&googleen, &google,
&bing,
&yahoo_es,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -872,7 +872,7 @@ const PrepopulatedEngine* const engines_SY[] = {
&bing,
&yandex_ru,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Thailand
@@ -889,7 +889,7 @@ const PrepopulatedEngine* const engines_TN[] = {
&googleen, &google,
&bing,
&yahoo_fr,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_com,
};
@@ -899,7 +899,7 @@ const PrepopulatedEngine* const engines_TR[] = {
&yandex_tr,
&yahoo_tr,
&bing,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
};
// Trinidad and Tobago
@@ -907,7 +907,7 @@ const PrepopulatedEngine* const engines_TT[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&yandex_com,
};
@@ -916,8 +916,8 @@ const PrepopulatedEngine* const engines_TW[] = {
&googleen, &google,
&yahoo_tw,
&bing,
- &baidu,
- &duckduckgo,
+ &baidu, &duckduckgo_light,
+ &duckduckgo, &duckduckgo_light,
};
// Tanzania
@@ -925,7 +925,7 @@ const PrepopulatedEngine* const engines_TZ[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -943,7 +943,7 @@ const PrepopulatedEngine* const engines_US[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -952,7 +952,7 @@ const PrepopulatedEngine* const engines_UY[] = {
&googleen, &google,
&bing,
&yahoo_es,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -979,8 +979,8 @@ const PrepopulatedEngine* const engines_YE[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
- &yandex_com,
+ &duckduckgo, &duckduckgo_light,
+ &yandex_com, &duckduckgo_light,
};
// South Africa
@@ -988,7 +988,7 @@ const PrepopulatedEngine* const engines_ZA[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -997,7 +997,7 @@ const PrepopulatedEngine* const engines_ZW[] = {
&googleen, &google,
&bing,
&yahoo,
- &duckduckgo,
+ &duckduckgo, &duckduckgo_light,
&ecosia,
};
@@ -1837,4 +1837,5 @@ std::unique_ptr<TemplateURLData> GetPrepopulatedDefaultSearch(
: nullptr;
}
+readd duckduckgo_light
} // namespace TemplateURLPrepopulateData
--
2.25.1
File diff suppressed because it is too large Load Diff
@@ -8,7 +8,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../chrome/browser/ChromeTabbedActivity.java | 24 ++++++++
.../browser/bookmarks/BookmarkBridge.java | 61 +++++++++++++++++++
.../browser/bookmarks/BookmarkUtils.java | 4 ++
.../bookmarks/android/bookmark_bridge.cc | 19 +++++-
.../bookmarks/android/bookmark_bridge.cc | 16 +++++
.../bookmarks/android/bookmark_bridge.h | 4 ++
.../browser/bookmarks/bookmark_html_writer.cc | 8 ++-
.../bookmarks/chrome_bookmark_client.cc | 2 +
@@ -27,7 +27,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
components/bookmarks/browser/bookmark_uuids.h | 1 +
components/bookmarks/browser/model_loader.cc | 3 +-
.../bookmark_specifics_conversions.cc | 1 +
23 files changed, 200 insertions(+), 11 deletions(-)
23 files changed, 198 insertions(+), 10 deletions(-)
diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/res/menu/main_menu.xml
--- a/chrome/android/java/res/menu/main_menu.xml
@@ -56,7 +56,7 @@ diff --git a/chrome/android/java/res/menu/main_menu.xml b/chrome/android/java/re
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -81,6 +81,7 @@ import org.chromium.chrome.browser.back_press.MinimizeAppAndCloseTabBackPressHan
@@ -84,6 +84,7 @@ import org.chromium.chrome.browser.back_press.MinimizeAppAndCloseTabBackPressHan
import org.chromium.chrome.browser.bookmarks.BookmarkUtils;
import org.chromium.chrome.browser.browserservices.intents.WebappConstants;
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
@@ -64,7 +64,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
import org.chromium.chrome.browser.compositor.layouts.Layout;
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome;
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone;
@@ -2226,6 +2227,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2294,6 +2295,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
getTabModelSelectorSupplier().get(),
() -> getTabModelSelector().closeAllTabs());
RecordUserAction.record("MobileMenuCloseAllTabs");
@@ -73,7 +73,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct
} else if (id == R.id.close_all_incognito_tabs_menu_id) {
// Close only incognito tabs
CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(),
@@ -2291,6 +2294,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
@@ -2359,6 +2362,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
mTabModalHandler.onOmniboxFocusChanged(hasFocus);
}
@@ -123,17 +123,17 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
import org.chromium.components.bookmarks.BookmarkId;
import org.chromium.components.bookmarks.BookmarkItem;
import org.chromium.components.bookmarks.BookmarkType;
@@ -82,6 +87,8 @@ import java.io.File;
* bookmark model stored in native.
*/
@@ -83,6 +88,8 @@ import java.io.File;
class BookmarkBridge {
private final ObserverList<BookmarkModelObserver> mObservers = new ObserverList<>();
+ private static final String TAG = "BookmarkBridge";
+
private long mNativeBookmarkBridge;
private boolean mIsDestroyed;
private boolean mIsDoingExtensiveChanges;
@@ -377,6 +384,16 @@ class BookmarkBridge {
mNativeBookmarkBridge, BookmarkBridge.this);
@@ -375,6 +382,16 @@ class BookmarkBridge {
return mMobileFolderId;
}
+ /**
@@ -149,8 +149,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @return Id representing the special "other" folder from bookmark model.
*/
@@ -1012,6 +1029,49 @@ class BookmarkBridge {
mNativeBookmarkBridge, BookmarkBridge.this, title, url);
@@ -1008,6 +1025,49 @@ class BookmarkBridge {
return BookmarkBridgeJni.get().addToReadingList(mNativeBookmarkBridge, title, url);
}
+ // Used to bookmark all tabs in a specific folder, created if not existing
@@ -199,58 +199,50 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm
/**
* @param url The URL of the reading list item.
* @return The reading list item with the URL, or null if no such reading list item.
@@ -1232,6 +1292,7 @@ class BookmarkBridge {
void getAllFoldersWithDepths(long nativeBookmarkBridge, BookmarkBridge caller,
List<BookmarkId> folderList, List<Integer> depthList);
BookmarkId getRootFolderId(long nativeBookmarkBridge, BookmarkBridge caller);
@@ -1227,6 +1287,7 @@ class BookmarkBridge {
void getAllFoldersWithDepths(
long nativeBookmarkBridge, List<BookmarkId> folderList, List<Integer> depthList);
BookmarkId getRootFolderId(long nativeBookmarkBridge);
+ BookmarkId getTabsCollectionFolderId(long nativeBookmarkBridge, BookmarkBridge caller);
BookmarkId getMobileFolderId(long nativeBookmarkBridge, BookmarkBridge caller);
BookmarkId getOtherFolderId(long nativeBookmarkBridge, BookmarkBridge caller);
BookmarkId getDesktopFolderId(long nativeBookmarkBridge, BookmarkBridge caller);
BookmarkId getMobileFolderId(long nativeBookmarkBridge);
BookmarkId getOtherFolderId(long nativeBookmarkBridge);
BookmarkId getDesktopFolderId(long nativeBookmarkBridge);
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkUtils.java
@@ -615,6 +615,7 @@ public class BookmarkUtils {
List<BookmarkId> topLevelFolders = new ArrayList<>();
@@ -782,6 +782,7 @@ public class BookmarkUtils {
BookmarkId rootNodeId = bookmarkModel.getRootFolderId();
BookmarkId desktopNodeId = bookmarkModel.getDesktopFolderId();
BookmarkId mobileNodeId = bookmarkModel.getMobileFolderId();
+ BookmarkId tabsCollectionNodeId = bookmarkModel.getTabsCollectionFolderId();
BookmarkId othersNodeId = bookmarkModel.getOtherFolderId();
List<BookmarkId> specialFoldersIds =
@@ -640,6 +641,9 @@ public class BookmarkUtils {
if (bookmarkModel.isFolderVisible(mobileNodeId)) {
topLevelFolders.add(mobileNodeId);
}
List<BookmarkId> specialFoldersIds = bookmarkModel.getTopLevelFolderIds();
@@ -798,6 +799,9 @@ public class BookmarkUtils {
/** Return the background color for the given {@link BookmarkType}. */
public static @ColorInt int getIconBackground(
Context context, BookmarkModel bookmarkModel, BookmarkItem item) {
+ if (bookmarkModel.isFolderVisible(tabsCollectionNodeId)) {
+ topLevelFolders.add(tabsCollectionNodeId);
+ }
if (bookmarkModel.isFolderVisible(desktopNodeId)) {
topLevelFolders.add(desktopNodeId);
}
if (isSpecialFolder(bookmarkModel, item)) {
return SemanticColorUtils.getColorPrimaryContainer(context);
} else {
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc
--- a/chrome/browser/bookmarks/android/bookmark_bridge.cc
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc
@@ -470,12 +470,17 @@ void BookmarkBridge::GetTopLevelFolderIds(
std::size_t special_count = top_level_folders.size();
if (get_normal) {
- DCHECK_EQ(4u, bookmark_model_->root_node()->children().size());
+ DCHECK_EQ(5u, bookmark_model_->root_node()->children().size());
for (const auto& node : bookmark_model_->mobile_node()->children()) {
if (node->is_folder())
top_level_folders.push_back(node.get());
@@ -436,6 +436,10 @@ void BookmarkBridge::GetTopLevelFolderIds(
}
top_level_folders.push_back(root_child.get());
}
+ for (const auto& node : bookmark_model_->tabs_collection_node()->children()) {
+ if (node->is_folder())
+ top_level_folders.push_back(node.get());
+ }
+ for (const auto& node : bookmark_model_->tabs_collection_node()->children()) {
+ if (node->is_folder())
+ top_level_folders.push_back(node.get());
+ }
+
for (const auto& node : bookmark_model_->bookmark_bar_node()->children()) {
if (node->is_folder())
top_level_folders.push_back(node.get());
@@ -523,6 +528,7 @@ void BookmarkBridge::GetAllFoldersWithDepths(
if (managed_bookmark_service_->managed_node() &&
!managed_bookmark_service_->managed_node()->children().empty()) {
@@ -479,6 +483,7 @@ void BookmarkBridge::GetAllFoldersWithDepths(
// Vector to temporarily contain all child bookmarks at same level for sorting
std::vector<const BookmarkNode*> bookmarks = {
bookmark_model_->mobile_node(),
@@ -258,8 +250,8 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
bookmark_model_->bookmark_bar_node(),
bookmark_model_->other_node(),
};
@@ -575,6 +581,17 @@ ScopedJavaLocalRef<jobject> BookmarkBridge::GetMobileFolderId(
return folder_id_obj;
@@ -1051,6 +1056,17 @@ void BookmarkBridge::GetBookmarksOfType(
}
}
+ScopedJavaLocalRef<jobject> BookmarkBridge::GetTabsCollectionFolderId(
@@ -273,23 +265,23 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse
+ return folder_id_obj;
+}
+
ScopedJavaLocalRef<jobject> BookmarkBridge::GetOtherFolderId(
ScopedJavaLocalRef<jobject> BookmarkBridge::AddFolder(
JNIEnv* env,
const JavaParamRef<jobject>& obj) {
const JavaParamRef<jobject>& j_parent_id_obj,
diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser/bookmarks/android/bookmark_bridge.h
--- a/chrome/browser/bookmarks/android/bookmark_bridge.h
+++ b/chrome/browser/bookmarks/android/bookmark_bridge.h
@@ -133,6 +133,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
JNIEnv* env,
const base::android::JavaParamRef<jobject>& obj);
@@ -205,6 +205,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver,
const base::android::JavaParamRef<jobject>& j_list,
jint type);
+ base::android::ScopedJavaLocalRef<jobject> GetTabsCollectionFolderId(
+ JNIEnv* env,
+ const base::android::JavaParamRef<jobject>& obj);
+
base::android::ScopedJavaLocalRef<jobject> GetOtherFolderId(
base::android::ScopedJavaLocalRef<jobject> AddFolder(
JNIEnv* env,
const base::android::JavaParamRef<jobject>& obj);
const base::android::JavaParamRef<jobject>& j_parent_id_obj,
diff --git a/chrome/browser/bookmarks/bookmark_html_writer.cc b/chrome/browser/bookmarks/bookmark_html_writer.cc
--- a/chrome/browser/bookmarks/bookmark_html_writer.cc
+++ b/chrome/browser/bookmarks/bookmark_html_writer.cc
@@ -359,7 +351,7 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -3948,6 +3948,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3989,6 +3989,9 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_SELECT_TABS" desc="Menu item for bulk editing tabs. [CHAR_LIMIT=27]">
Select tabs
</message>
@@ -571,30 +563,30 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.h b/components/b
BookmarkPermanentNode* other_folder_node() { return other_folder_node_; }
+ BookmarkPermanentNode* tabs_collection_folder_node() { return tabs_collection_folder_node_; }
TitledUrlIndex* index() { return index_.get(); }
std::unique_ptr<TitledUrlIndex> owned_index() { return std::move(index_); }
@@ -112,6 +113,8 @@ class BookmarkLoadDetails {
std::unique_ptr<TitledUrlIndex> owned_titled_url_index() {
return std::move(titled_url_index_);
@@ -119,6 +120,8 @@ class BookmarkLoadDetails {
nullptr;
raw_ptr<BookmarkPermanentNode, DanglingUntriaged> mobile_folder_node_ =
nullptr;
+ raw_ptr<BookmarkPermanentNode, DanglingUntriaged> tabs_collection_folder_node_ =
+ nullptr;
LoadManagedNodeCallback load_managed_node_callback_;
std::unique_ptr<TitledUrlIndex> index_;
BookmarkNode::MetaInfoMap model_meta_info_map_;
std::unique_ptr<TitledUrlIndex> titled_url_index_;
UuidIndex uuid_index_;
diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmarks/browser/bookmark_model.cc
--- a/components/bookmarks/browser/bookmark_model.cc
+++ b/components/bookmarks/browser/bookmark_model.cc
@@ -826,7 +826,7 @@ bool BookmarkModel::HasBookmarks() {
bool BookmarkModel::HasNoUserCreatedBookmarksOrFolders() {
@@ -845,7 +845,7 @@ bool BookmarkModel::HasBookmarks() const {
bool BookmarkModel::HasNoUserCreatedBookmarksOrFolders() const {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
return bookmark_bar_node_->children().empty() &&
- other_node_->children().empty() && mobile_node_->children().empty();
+ other_node_->children().empty() && mobile_node_->children().empty() && tabs_collection_node_->children().empty();
}
bool BookmarkModel::IsBookmarked(const GURL& url) {
@@ -1132,6 +1132,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr<BookmarkLoadDetails> details) {
bool BookmarkModel::IsBookmarked(const GURL& url) const {
@@ -1155,6 +1155,7 @@ void BookmarkModel::DoneLoading(std::unique_ptr<BookmarkLoadDetails> details) {
bookmark_bar_node_ = details->bb_node();
other_node_ = details->other_folder_node();
mobile_node_ = details->mobile_folder_node();
@@ -605,7 +597,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.cc b/components/bookmar
diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmarks/browser/bookmark_model.h
--- a/components/bookmarks/browser/bookmark_model.h
+++ b/components/bookmarks/browser/bookmark_model.h
@@ -131,6 +131,12 @@ class BookmarkModel final : public BookmarkUndoProvider,
@@ -132,6 +132,12 @@ class BookmarkModel final : public BookmarkUndoProvider,
return mobile_node_;
}
@@ -618,7 +610,7 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark
bool is_root_node(const BookmarkNode* node) const {
DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
return node == root_;
@@ -489,6 +495,7 @@ class BookmarkModel final : public BookmarkUndoProvider,
@@ -495,6 +501,7 @@ class BookmarkModel final : public BookmarkUndoProvider,
nullptr;
raw_ptr<BookmarkPermanentNode, AcrossTasksDanglingUntriaged> mobile_node_ =
nullptr;
@@ -695,7 +687,7 @@ diff --git a/components/bookmarks/browser/bookmark_uuids.h b/components/bookmark
diff --git a/components/bookmarks/browser/model_loader.cc b/components/bookmarks/browser/model_loader.cc
--- a/components/bookmarks/browser/model_loader.cc
+++ b/components/bookmarks/browser/model_loader.cc
@@ -60,7 +60,8 @@ void LoadBookmarks(const base::FilePath& path,
@@ -45,7 +45,8 @@ void LoadBookmarks(const base::FilePath& path,
std::string sync_metadata_str;
BookmarkCodec codec;
codec.Decode(*root_dict, details->bb_node(), details->other_folder_node(),
@@ -31,7 +31,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.tab.TabCreationState;
import org.chromium.chrome.browser.tab.TabLaunchType;
@@ -565,9 +566,13 @@ public class TabGridDialogMediator
@@ -564,9 +565,13 @@ public class TabGridDialogMediator
assert relatedTabs.size() > 0;
@@ -89,7 +89,7 @@ diff --git a/chrome/android/java/res/xml/homepage_preferences.xml b/chrome/andro
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
@@ -228,6 +228,22 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
@@ -238,6 +238,22 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
notifyHomepageUpdated();
}
@@ -110,29 +110,29 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/Homepa
+ }
+
/**
* @return User specified homepage custom URI string.
* @return User specified homepage custom GURL.
*/
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/settings/HomepageSettings.java
@@ -22,6 +22,7 @@ import org.chromium.components.browser_ui.settings.ChromeSwitchPreference;
import org.chromium.components.browser_ui.settings.SettingsUtils;
@@ -22,6 +22,7 @@ import org.chromium.components.browser_ui.settings.SettingsUtils;
import org.chromium.components.embedder_support.util.UrlUtilities;
import org.chromium.components.url_formatter.UrlFormatter;
import org.chromium.url.GURL;
+import org.chromium.components.embedder_support.util.UrlConstants;
/**
* Fragment that allows the user to configure homepage related preferences.
@@ -32,6 +33,8 @@ public class HomepageSettings extends PreferenceFragmentCompat {
@@ -32,6 +33,8 @@ public class HomepageSettings extends ChromeBaseSettingsFragment {
@VisibleForTesting
public static final String PREF_HOMEPAGE_RADIO_GROUP = "homepage_radio_group";
+ private static final String PREF_NTP_HOMEPAGE_SWITCH = "ntp_is_homepage_switch";
+
/**
* Delegate used to mark that the homepage is being managed.
* Created for {@link org.chromium.chrome.browser.settings.HomepagePreferences}
@@ -72,6 +75,15 @@ public class HomepageSettings extends PreferenceFragmentCompat {
private HomepageManager mHomepageManager;
private RadioButtonGroupHomepagePreference mRadioButtons;
@@ -65,6 +68,15 @@ public class HomepageSettings extends ChromeBaseSettingsFragment {
});
mRadioButtons.setupPreferenceValues(createPreferenceValuesForRadioGroup());
@@ -152,25 +152,25 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchM
--- a/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchMetrics.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/metrics/LaunchMetrics.java
@@ -103,7 +103,6 @@ public class LaunchMetrics {
boolean showHomeButton, boolean homepageIsNtp, String homepageUrl) {
if (homepageUrl == null) {
homepageUrl = "";
- assert !showHomeButton : "Homepage should be disabled for a null URL";
public static void recordHomePageLaunchMetrics(
boolean showHomeButton, boolean homepageIsNtp, GURL homepageGurl) {
if (homepageGurl.isEmpty()) {
- assert !showHomeButton : "Homepage should be disabled for an empty GURL";
}
LaunchMetricsJni.get().recordHomePageLaunchMetrics(
showHomeButton, homepageIsNtp, homepageUrl);
showHomeButton, homepageIsNtp, homepageGurl);
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
@@ -26,6 +26,7 @@ import org.chromium.chrome.browser.app.tab_activity_glue.ReparentingTask;
import org.chromium.chrome.browser.compositor.CompositorViewHolder;
@@ -27,6 +27,7 @@ import org.chromium.chrome.browser.compositor.CompositorViewHolder;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.incognito.IncognitoUtils;
import org.chromium.chrome.browser.new_tab_url.DseNewTabUrlManager;
+import org.chromium.chrome.browser.homepage.HomepageManager;
import org.chromium.chrome.browser.ntp.NewTabPageLaunchOrigin;
import org.chromium.chrome.browser.ntp.NewTabPageUtils;
import org.chromium.chrome.browser.prefetch.settings.PreloadPagesSettingsBridge;
@@ -495,6 +496,12 @@ public class ChromeTabCreator extends TabCreator {
@@ -502,6 +503,12 @@ public class ChromeTabCreator extends TabCreator {
* @return the created tab.
*/
public Tab launchUrl(String url, @TabLaunchType int type, Intent intent, long intentTimestamp) {
@@ -186,9 +186,9 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/Chrome
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
@@ -366,6 +366,7 @@ public final class ChromePreferenceKeys {
public static final String HOMEPAGE_PARTNER_CUSTOMIZED_DEFAULT_GURL =
"Chrome.Homepage.PartnerCustomizedDefaultGurl";
@@ -367,6 +367,7 @@ public final class ChromePreferenceKeys {
public static final String HOMEPAGE_USE_CHROME_NTP = "Chrome.Homepage.UseNTP";
public static final String HOMEPAGE_USE_DEFAULT_URI = "homepage_partner_enabled";
+ public static final String HOMEPAGE_NTP_IS_HOMEPAGE = "newtabpage_is_homepage";
/**
@@ -197,8 +197,8 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/LegacyChromePreferenceKeys.java
@@ -67,6 +67,7 @@ public class LegacyChromePreferenceKeys {
ChromePreferenceKeys.HOMEPAGE_CUSTOM_URI,
@@ -68,6 +68,7 @@ public class LegacyChromePreferenceKeys {
ChromePreferenceKeys.HISTORY_SHOW_HISTORY_INFO,
ChromePreferenceKeys.HOMEPAGE_ENABLED,
ChromePreferenceKeys.HOMEPAGE_USE_DEFAULT_URI,
+ ChromePreferenceKeys.HOMEPAGE_NTP_IS_HOMEPAGE,
@@ -208,7 +208,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1514,6 +1514,9 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1540,6 +1540,9 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_CLEAR_BROWSING_DATA_TAB_PERIOD_HOUR" desc="The option to delete browsing data from the last hour.">
Last hour
</message>
@@ -233,7 +233,7 @@ diff --git a/chrome/browser/ui/browser_ui_prefs.cc b/chrome/browser/ui/browser_u
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
@@ -1297,6 +1297,10 @@ inline constexpr char kUsedPolicyCertificates[] =
@@ -1283,6 +1283,10 @@ inline constexpr char kUsedPolicyCertificates[] =
// visible on the toolbar.
inline constexpr char kShowHomeButton[] = "browser.show_home_button";
+5 -5
View File
@@ -21,7 +21,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
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
@@ -147,6 +147,7 @@
@@ -148,6 +148,7 @@
#include "components/segmentation_platform/public/features.h"
#include "components/send_tab_to_self/features.h"
#include "components/services/heap_profiling/public/cpp/switches.h"
@@ -29,7 +29,7 @@ diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
#include "components/shared_highlighting/core/common/shared_highlighting_features.h"
#include "components/signin/core/browser/dice_account_reconcilor_delegate.h"
#include "components/signin/public/base/signin_buildflags.h"
@@ -9619,6 +9620,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -9910,6 +9911,11 @@ const FeatureEntry kFeatureEntries[] = {
kLargeFaviconFromGoogleVariations,
"LargeFaviconFromGoogle")},
@@ -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
@@ -3774,6 +3774,11 @@ const char kSkipServiceWorkerFetchHandlerDescription[] =
@@ -3815,6 +3815,11 @@ const char kSkipServiceWorkerFetchHandlerDescription[] =
"Skips starting the service worker and run the fetch handler if the fetch "
"handler is recognized as skippable.";
@@ -55,11 +55,11 @@ diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descripti
+
const char kWebSQLAccessName[] = "Allows access to WebSQL APIs";
const char kWebSQLAccessDescription[] =
"The WebSQL API is enabled by default, but can be disabled here.";
"The WebSQL API is disabled by default, but can be enabled here.";
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
@@ -2206,6 +2206,9 @@ extern const char kReduceAcceptLanguageDescription[];
@@ -2231,6 +2231,9 @@ extern const char kReduceAcceptLanguageDescription[];
extern const char kSkipServiceWorkerFetchHandlerName[];
extern const char kSkipServiceWorkerFetchHandlerDescription[];
@@ -12,16 +12,16 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/homepage/HomepageManager.java
@@ -152,10 +152,6 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
* if the homepage button is force enabled via flag.
@@ -168,10 +168,6 @@ public class HomepageManager implements HomepagePolicyManager.HomepagePolicyStat
* tab page if the homepage button is force enabled via flag.
*/
public static String getDefaultHomepageUri() {
public static GURL getDefaultHomepageGurl() {
- if (PartnerBrowserCustomizations.getInstance().isHomepageProviderAvailableAndEnabled()) {
- return PartnerBrowserCustomizations.getInstance().getHomePageUrl().getSpec();
- return PartnerBrowserCustomizations.getInstance().getHomePageUrl();
- }
-
String homepagePartnerDefaultUri;
String homepagePartnerDefaultGurlSerialized =
SharedPreferencesManager.getInstance().readString(
ChromePreferenceKeys.HOMEPAGE_PARTNER_CUSTOMIZED_DEFAULT_GURL, "");
--
2.25.1
+14 -14
View File
@@ -40,7 +40,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/build/android/java/templates/BuildConfig.template b/build/android/java/templates/BuildConfig.template
--- a/build/android/java/templates/BuildConfig.template
+++ b/build/android/java/templates/BuildConfig.template
@@ -93,6 +93,8 @@ public class BuildConfig {
@@ -87,6 +87,8 @@ public class BuildConfig {
public static MAYBE_FINAL boolean IS_FOR_TEST MAYBE_FALSE;
#endif
@@ -52,7 +52,7 @@ diff --git a/build/android/java/templates/BuildConfig.template b/build/android/j
diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
--- a/build/config/android/rules.gni
+++ b/build/config/android/rules.gni
@@ -1966,6 +1966,9 @@ if (enable_java_templates && is_android) {
@@ -1894,6 +1894,9 @@ if (enable_java_templates && is_android) {
sources = [ "//build/android/java/templates/BuildConfig.template" ]
defines = []
@@ -65,7 +65,7 @@ diff --git a/build/config/android/rules.gni b/build/config/android/rules.gni
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -860,6 +860,9 @@ chrome_java_sources = [
@@ -872,6 +872,9 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/omaha/UpdateConfigs.java",
"java/src/org/chromium/chrome/browser/omaha/UpdateMenuItemHelper.java",
"java/src/org/chromium/chrome/browser/omaha/UpdateStatusProvider.java",
@@ -1101,7 +1101,7 @@ new file mode 100644
diff --git a/chrome/browser/endpoint_fetcher/BUILD.gn b/chrome/browser/endpoint_fetcher/BUILD.gn
--- a/chrome/browser/endpoint_fetcher/BUILD.gn
+++ b/chrome/browser/endpoint_fetcher/BUILD.gn
@@ -18,6 +18,7 @@ android_library("java") {
@@ -19,6 +19,7 @@ android_library("java") {
sources = [
"java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java",
"java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointResponse.java",
@@ -1109,7 +1109,7 @@ diff --git a/chrome/browser/endpoint_fetcher/BUILD.gn b/chrome/browser/endpoint_
]
}
@@ -25,5 +26,6 @@ generate_jni("jni_headers") {
@@ -26,5 +27,6 @@ generate_jni("jni_headers") {
sources = [
"java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointFetcher.java",
"java/src/org/chromium/chrome/browser/endpoint_fetcher/EndpointResponse.java",
@@ -1283,7 +1283,7 @@ new file mode 100644
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -262,6 +262,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
@@ -271,6 +271,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kNotificationPermissionBottomSheet,
&kPageAnnotationsService,
&kPreconnectOnTabCreation,
@@ -1291,7 +1291,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
&kBookmarksImprovedSaveFlow,
&kBookmarksRefresh,
&kOmahaMinSdkVersionAndroid,
@@ -710,6 +711,10 @@ BASE_FEATURE(kContextMenuTranslateWithGoogleLens,
@@ -722,6 +723,10 @@ BASE_FEATURE(kContextMenuTranslateWithGoogleLens,
"ContextMenuTranslateWithGoogleLens",
base::FEATURE_DISABLED_BY_DEFAULT);
@@ -1305,8 +1305,8 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser/flags/android/chrome_feature_list.h
--- a/chrome/browser/flags/android/chrome_feature_list.h
+++ b/chrome/browser/flags/android/chrome_feature_list.h
@@ -110,6 +110,7 @@ BASE_DECLARE_FEATURE(kFoldableJankFix);
BASE_DECLARE_FEATURE(kGridTabSwitcherLandscapeAspectRatioPhones);
@@ -118,6 +118,7 @@ BASE_DECLARE_FEATURE(kGridTabSwitcherLandscapeAspectRatioPhones);
BASE_DECLARE_FEATURE(kHideTabOnTabSwitcher);
BASE_DECLARE_FEATURE(kImprovedIncognitoScreenshot);
BASE_DECLARE_FEATURE(kIncognitoReauthenticationForAndroid);
+BASE_DECLARE_FEATURE(kInlineUpdateFlow);
@@ -1316,7 +1316,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.h b/chrome/browser
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -302,6 +302,7 @@ public abstract class ChromeFeatureList {
@@ -305,6 +305,7 @@ public abstract class ChromeFeatureList {
"IncognitoReauthenticationForAndroid";
public static final String INCOGNITO_SCREENSHOT = "IncognitoScreenshot";
public static final String INFOBAR_SCROLL_OPTIMIZATION = "InfobarScrollOptimization";
@@ -1327,7 +1327,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -2175,6 +2175,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -2216,6 +2216,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_DEPRECATION_WARNING" desc="Warning about Chrome updates no longer being supported">
Chrome updates are no longer supported for this version of Android
</message>
@@ -1340,7 +1340,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
<!-- Account management UI strings. -->
<message name="IDS_ACCOUNT_MANAGEMENT_TITLE" desc="Header title for the account management screen. [CHAR_LIMIT=32]">
@@ -3799,7 +3805,10 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3840,7 +3846,10 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<!-- Main menu items -->
<message name="IDS_MENU_UPDATE" desc="Menu item for updating chrome. [CHAR_LIMIT=24]">
@@ -1352,7 +1352,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
</message>
<message name="IDS_MENU_UPDATE_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that a newer version of Chrome is available. [CHAR_LIMIT=30]">
Newer version is available
@@ -3810,6 +3819,18 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3851,6 +3860,18 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<message name="IDS_MENU_UPDATE_UNSUPPORTED_SUMMARY_DEFAULT" desc="Summary string for update menu item explaining that the Android version on the device is unsupported. [CHAR_LIMIT=30]">
Android version is unsupported
</message>
@@ -1516,7 +1516,7 @@ diff --git a/components/endpoint_fetcher/endpoint_fetcher.cc b/components/endpoi
}
void EndpointFetcher::OnResponseFetched(
@@ -336,3 +392,38 @@ void EndpointFetcher::OnSanitizationResult(
@@ -338,3 +394,38 @@ void EndpointFetcher::OnSanitizationResult(
std::string EndpointFetcher::GetUrlForTesting() {
return url_.spec();
}
+1 -1
View File
@@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/chrome_public_apk_tmpl.gni b/chrome/android/chrome_public_apk_tmpl.gni
--- a/chrome/android/chrome_public_apk_tmpl.gni
+++ b/chrome/android/chrome_public_apk_tmpl.gni
@@ -27,7 +27,7 @@ declare_args() {
@@ -26,7 +26,7 @@ declare_args() {
# WebView providers which declare one of a handful of package names. See
# https://chromium.googlesource.com/chromium/src/+/HEAD/android_webview/docs/build-instructions.md#Changing-package-name
# for details.
+10 -10
View File
@@ -10,7 +10,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
components/embedder_support/user_agent_utils.cc | 4 +---
content/browser/client_hints/client_hints.cc | 3 ++-
content/browser/loader/navigation_url_loader_impl.cc | 5 +++++
content/public/common/content_features.cc | 4 ++--
content/common/features.cc | 4 ++--
net/http/http_network_transaction.cc | 1 +
services/network/public/cpp/client_hints.cc | 1 +
services/network/public/cpp/features.cc | 2 +-
@@ -49,7 +49,7 @@ diff --git a/content/browser/client_hints/client_hints.cc b/content/browser/clie
diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/browser/loader/navigation_url_loader_impl.cc
--- a/content/browser/loader/navigation_url_loader_impl.cc
+++ b/content/browser/loader/navigation_url_loader_impl.cc
@@ -1088,6 +1088,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived(
@@ -1067,6 +1067,11 @@ void NavigationURLLoaderImpl::OnAcceptCHFrameReceived(
return;
}
@@ -61,17 +61,17 @@ diff --git a/content/browser/loader/navigation_url_loader_impl.cc b/content/brow
LogAcceptCHFrameStatus(AcceptCHFrameRestart::kFramePresent);
// Given that this is happening in the middle of navigation, there should
diff --git a/content/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
@@ -273,8 +273,8 @@ BASE_FEATURE(kCrashReporting,
diff --git a/content/common/features.cc b/content/common/features.cc
--- a/content/common/features.cc
+++ b/content/common/features.cc
@@ -114,8 +114,8 @@ BASE_FEATURE(kConsolidatedMovementXY,
// Enables support for the `Critical-CH` response header.
// https://github.com/WICG/client-hints-infrastructure/blob/master/reliability.md#critical-ch
BASE_FEATURE(kCriticalClientHint,
- "CriticalClientHint",
- base::FEATURE_ENABLED_BY_DEFAULT);
+ "CriticalClientHint", // disabled by default
+ base::FEATURE_DISABLED_BY_DEFAULT); // in Bromite
+ "CriticalClientHint", // disabled
+ base::FEATURE_DISABLED_BY_DEFAULT); // by default
// Enable changing source dynamically for desktop capture.
BASE_FEATURE(kDesktopCaptureChangeSource,
@@ -100,7 +100,7 @@ diff --git a/services/network/public/cpp/client_hints.cc b/services/network/publ
diff --git a/services/network/public/cpp/features.cc b/services/network/public/cpp/features.cc
--- a/services/network/public/cpp/features.cc
+++ b/services/network/public/cpp/features.cc
@@ -214,7 +214,7 @@ BASE_FEATURE(kWebSocketReassembleShortMessages,
@@ -207,7 +207,7 @@ BASE_FEATURE(kWebSocketReassembleShortMessages,
// Enable support for ACCEPT_CH H2/3 frame as part of Client Hint Reliability.
// See:
// https://tools.ietf.org/html/draft-davidben-http-client-hint-reliability-02#section-4.3
@@ -151,7 +151,7 @@ diff --git a/third_party/blink/common/client_hints/enabled_client_hints.cc b/thi
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
@@ -3844,8 +3844,8 @@
@@ -3906,8 +3906,8 @@
public: true,
},
{
@@ -59,7 +59,7 @@ Require: bromite-build-utils.patch
.../common/content_settings_mojom_traits.cc | 12 +-
.../common/content_settings_mojom_traits.h | 24 ++
.../common/content_settings_param_traits.h | 2 +-
.../core/common/content_settings_types.h | 4 +-
.../core/common/content_settings_types.h | 8 +
.../renderer/content_settings_agent_impl.cc | 33 ++
.../renderer/content_settings_agent_impl.h | 5 +
.../PageInfoPermissionsController.java | 9 +
@@ -71,8 +71,7 @@ Require: bromite-build-utils.patch
.../platform/web_content_settings_client.h | 5 +
.../execution_context/execution_context.cc | 16 +
.../execution_context/execution_context.h | 5 +
.../WebLayerSiteSettingsDelegate.java | 3 +
61 files changed, 1188 insertions(+), 42 deletions(-)
60 files changed, 1190 insertions(+), 41 deletions(-)
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSetting.java
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomContentSettingImpl.java
create mode 100644 components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/BromiteCustomTriStateSiteSettingsPreferenceImpl.java
@@ -129,7 +128,7 @@ diff --git a/chrome/browser/installable/installed_webapp_bridge.cc b/chrome/brow
diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/chrome/browser/resources/settings/privacy_page/privacy_page.html
--- a/chrome/browser/resources/settings/privacy_page/privacy_page.html
+++ b/chrome/browser/resources/settings/privacy_page/privacy_page.html
@@ -1177,4 +1177,5 @@
@@ -1358,4 +1358,5 @@
</settings-subpage>
</template>
</template>
@@ -138,7 +137,7 @@ diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.html b/
diff --git a/chrome/browser/resources/settings/privacy_page/privacy_page.ts b/chrome/browser/resources/settings/privacy_page/privacy_page.ts
--- a/chrome/browser/resources/settings/privacy_page/privacy_page.ts
+++ b/chrome/browser/resources/settings/privacy_page/privacy_page.ts
@@ -68,7 +68,49 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase {
@@ -71,7 +71,49 @@ export class SettingsPrivacyPageElement extends SettingsPrivacyPageElementBase {
}
static get template() {
@@ -200,7 +199,7 @@ diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resourc
/**
* Add all of the child routes that originate from the privacy route,
@@ -136,6 +137,7 @@ function addPrivacyChildRoutes(r: Partial<SettingsRoutes>) {
@@ -137,6 +138,7 @@ function addPrivacyChildRoutes(r: Partial<SettingsRoutes>) {
r.SITE_SETTINGS_STORAGE_ACCESS =
r.SITE_SETTINGS.createChild('storageAccess');
}
@@ -211,7 +210,7 @@ diff --git a/chrome/browser/resources/settings/route.ts b/chrome/browser/resourc
diff --git a/chrome/browser/resources/settings/site_settings/settings_category_default_radio_group.ts b/chrome/browser/resources/settings/site_settings/settings_category_default_radio_group.ts
--- a/chrome/browser/resources/settings/site_settings/settings_category_default_radio_group.ts
+++ b/chrome/browser/resources/settings/site_settings/settings_category_default_radio_group.ts
@@ -160,6 +160,13 @@ export class SettingsCategoryDefaultRadioGroupElement extends
@@ -161,6 +161,13 @@ export class SettingsCategoryDefaultRadioGroupElement extends
// "Ask" vs "Blocked".
return ContentSetting.ASK;
default:
@@ -263,19 +262,19 @@ diff --git a/chrome/browser/resources/settings/site_settings/site_details.ts b/c
diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts b/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts
--- a/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts
+++ b/chrome/browser/resources/settings/site_settings_page/site_settings_page.ts
@@ -42,7 +42,7 @@ function getCategoryItemMap(): Map<ContentSettingsTypes, CategoryListItem> {
@@ -43,7 +43,7 @@ function getCategoryItemMap(): Map<ContentSettingsTypes, CategoryListItem> {
}
// The following list is ordered alphabetically by |id|. The order in which
// these appear in the UI is determined elsewhere in this file.
- const categoryList = [
+ let categoryList = [
- const categoryList: CategoryListItem[] = [
+ let categoryList: CategoryListItem[] = [
{
route: routes.SITE_SETTINGS_ADS,
id: Id.ADS,
@@ -357,10 +357,34 @@ function getCategoryItemMap(): Map<ContentSettingsTypes, CategoryListItem> {
},
];
@@ -367,10 +367,34 @@ function getCategoryItemMap(): Map<ContentSettingsTypes, CategoryListItem> {
disabledLabel: 'trackingProtectionLinkRowSubLabel',
});
}
+ for (let index=0; index < loadTimeData.getInteger("br_cs_count"); index++) {
+ let obj = JSON.parse(loadTimeData.getString("br_cs_" + index));
+ let name = obj["name"];
@@ -307,7 +306,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_
function buildItemListFromIds(orderedIdList: ContentSettingsTypes[]):
CategoryListItem[] {
const map = getCategoryItemMap();
@@ -450,7 +474,7 @@ export class SettingsSiteSettingsPageElement extends
@@ -460,7 +484,7 @@ export class SettingsSiteSettingsPageElement extends
Id.IMAGES,
Id.POPUPS,
]),
@@ -374,7 +373,7 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_
/**
* Determine localization string for i18n for a given content settings type.
* Sorted alphabetically by |ContentSettingsType|.
@@ -88,6 +136,13 @@ export function getLocalizationStringForContentType(
@@ -89,6 +137,13 @@ export function getLocalizationStringForContentType(
case ContentSettingsTypes.SITE_DATA:
return null;
default:
@@ -391,9 +390,9 @@ diff --git a/chrome/browser/resources/settings/site_settings_page/site_settings_
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
@@ -1930,6 +1930,7 @@ static_library("ui") {
"//components/commerce/core/mojom:mojo_bindings",
@@ -1975,6 +1975,7 @@ static_library("ui") {
"//components/commerce/core/webui",
"//components/compose/core/browser:features",
"//components/endpoint_fetcher:endpoint_fetcher",
+ "//components/content_settings/core/browser:browser",
"//components/enterprise/common:files_scan_data",
@@ -411,7 +410,7 @@ diff --git a/chrome/browser/ui/views/page_info/page_info_view_factory.cc b/chrom
#include "components/page_info/core/features.h"
#include "components/page_info/core/proto/about_this_site_metadata.pb.h"
#include "components/page_info/page_info.h"
@@ -502,6 +504,17 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon(
@@ -508,6 +510,17 @@ const ui::ImageModel PageInfoViewFactory::GetPermissionIcon(
icon = &vector_icons::kSelectWindowIcon;
break;
default:
@@ -449,7 +448,7 @@ diff --git a/chrome/browser/ui/webui/settings/settings_localized_strings_provide
#include "components/password_manager/core/browser/leak_detection_dialog_utils.h"
#include "components/password_manager/core/browser/manage_passwords_referrer.h"
#include "components/password_manager/core/common/password_manager_features.h"
@@ -3534,6 +3537,42 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source,
@@ -3631,6 +3634,42 @@ void AddLocalizedStrings(content::WebUIDataSource* html_source,
policy_indicator::AddLocalizedStrings(html_source);
AddSecurityKeysStrings(html_source);
@@ -504,7 +503,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
#include "components/content_settings/core/common/content_settings.h"
#include "components/content_settings/core/common/content_settings_pattern.h"
#include "components/content_settings/core/common/content_settings_utils.h"
@@ -202,7 +204,7 @@ const ContentSettingsTypeNameEntry kContentSettingsTypeGroupNames[] = {
@@ -206,7 +208,7 @@ const ContentSettingsTypeNameEntry kContentSettingsTypeGroupNames[] = {
static_assert(std::size(kContentSettingsTypeGroupNames) ==
// ContentSettingsType starts at -1, so add 1 here.
@@ -513,7 +512,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
"kContentSettingsTypeGroupNames should have "
"CONTENT_SETTINGS_NUM_TYPES elements");
@@ -457,6 +459,13 @@ bool HasRegisteredGroupName(ContentSettingsType type) {
@@ -461,6 +463,13 @@ bool HasRegisteredGroupName(ContentSettingsType type) {
return true;
}
}
@@ -527,7 +526,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
return false;
}
@@ -470,11 +479,24 @@ ContentSettingsType ContentSettingsTypeFromGroupName(base::StringPiece name) {
@@ -474,11 +483,24 @@ ContentSettingsType ContentSettingsTypeFromGroupName(base::StringPiece name) {
return entry.type;
}
}
@@ -553,7 +552,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
for (const auto& entry : kContentSettingsTypeGroupNames) {
if (type == entry.type) {
// Content setting types that aren't represented in the settings UI
@@ -489,7 +511,6 @@ base::StringPiece ContentSettingsTypeToGroupName(ContentSettingsType type) {
@@ -493,7 +515,6 @@ base::StringPiece ContentSettingsTypeToGroupName(ContentSettingsType type) {
return entry.name ? entry.name : base::StringPiece();
}
}
@@ -561,8 +560,8 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
NOTREACHED() << static_cast<int32_t>(type)
<< " is not a recognized content settings type.";
return base::StringPiece();
@@ -563,6 +584,13 @@ const std::vector<ContentSettingsType>& GetVisiblePermissionCategories() {
base_types->push_back(ContentSettingsType::AUTO_PICTURE_IN_PICTURE);
@@ -573,6 +594,13 @@ const std::vector<ContentSettingsType>& GetVisiblePermissionCategories() {
base_types->push_back(ContentSettingsType::MIDI_SYSEX);
}
+ content_settings::WebsiteSettingsRegistry* website_settings =
@@ -578,7 +577,7 @@ diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/b
diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/browser_ui/site_settings/android/BUILD.gn
--- a/components/browser_ui/site_settings/android/BUILD.gn
+++ b/components/browser_ui/site_settings/android/BUILD.gn
@@ -147,6 +147,21 @@ android_library("java") {
@@ -149,6 +149,21 @@ android_library("java") {
":site_settings_jni_headers",
"//components/content_settings/android:java_pref_names_srcjar",
]
@@ -600,7 +599,7 @@ diff --git a/components/browser_ui/site_settings/android/BUILD.gn b/components/b
}
android_library("javatests") {
@@ -192,6 +207,7 @@ robolectric_library("junit") {
@@ -194,6 +209,7 @@ robolectric_library("junit") {
}
android_resources("java_resources") {
@@ -1114,7 +1113,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
@ContentSettingValues @Nullable Integer defaultEnabledValue,
@ContentSettingValues @Nullable Integer defaultDisabledValue, int enabledSummary,
int disabledSummary) {
@@ -304,6 +304,8 @@ public class ContentSettingsResources {
@@ -309,6 +309,8 @@ public class ContentSettingsResources {
ContentSettingValues.BLOCK, R.string.website_settings_category_vr_ask,
R.string.website_settings_category_vr_blocked);
}
@@ -1123,7 +1122,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
assert false; // NOTREACHED
return null;
}
@@ -469,6 +471,12 @@ public class ContentSettingsResources {
@@ -474,6 +476,12 @@ public class ContentSettingsResources {
}
}
@@ -1136,7 +1135,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
/**
* Returns the string resource id for a content type to show with a permission category.
* @param enabled Whether the content type is enabled.
@@ -604,6 +612,8 @@ public class ContentSettingsResources {
@@ -609,6 +617,8 @@ public class ContentSettingsResources {
* Blocked states, in that order.
*/
public static int[] getTriStateSettingDescriptionIDs(int contentType) {
@@ -1148,7 +1147,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleCategorySettings.java
@@ -310,6 +310,10 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -310,6 +310,10 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@ContentSettingValues
Integer contentSetting = website.site().getContentSetting(
browserContextHandle, mCategory.getContentSettingsType());
@@ -1159,7 +1158,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (contentSetting != null) {
return ContentSettingValues.BLOCK == contentSetting;
}
@@ -469,6 +473,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -469,6 +473,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
? new HashSet<>(getArguments().getStringArrayList(EXTRA_SELECTED_DOMAINS))
: null;
@@ -1167,7 +1166,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
configureGlobalToggles();
if (mCategory.getType() == SiteSettingsCategory.Type.REQUEST_DESKTOP_SITE) {
RecordUserAction.record("DesktopSiteContentSetting.SettingsPage.Entered");
@@ -493,7 +498,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -493,7 +498,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
if (queryHasChanged) getInfoForOrigins();
});
@@ -1176,7 +1175,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
MenuItem help = menu.add(
Menu.NONE, R.id.menu_id_site_settings_help, Menu.NONE, R.string.menu_help);
help.setIcon(TraceEventVectorDrawableCompat.create(
@@ -504,6 +509,12 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -504,6 +509,12 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == R.id.menu_id_site_settings_help) {
@@ -1189,7 +1188,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (mCategory.getType() == SiteSettingsCategory.Type.PROTECTED_MEDIA) {
getSiteSettingsDelegate().launchProtectedContentHelpAndFeedbackActivity(
getActivity());
@@ -577,6 +588,11 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -577,6 +588,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
BrowserContextHandle browserContextHandle =
getSiteSettingsDelegate().getBrowserContextHandle();
PrefService prefService = UserPrefs.get(browserContextHandle);
@@ -1201,7 +1200,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (BINARY_TOGGLE_KEY.equals(preference.getKey())) {
assert !mCategory.isManaged();
boolean toggleValue = (boolean) newValue;
@@ -796,6 +812,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -796,6 +812,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
: R.string.website_settings_allowed_group_heading_request_desktop_site;
break;
}
@@ -1210,7 +1209,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
assert resource > 0;
return getString(resource);
}
@@ -914,6 +932,8 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -914,6 +932,8 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
default:
break;
}
@@ -1219,7 +1218,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (allowSpecifyingExceptions) {
getPreferenceScreen().addPreference(new AddExceptionPreference(getStyledContext(),
ADD_EXCEPTION_KEY, getAddExceptionDialogMessage(), mCategory, this));
@@ -1085,8 +1105,16 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -1085,8 +1105,16 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
private boolean isBlocked() {
switch (mGlobalToggleLayout) {
case GlobalToggleLayout.TRI_STATE_TOGGLE:
@@ -1236,7 +1235,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
return (triStateToggle.getCheckedSetting() == ContentSettingValues.BLOCK);
case GlobalToggleLayout.FOUR_STATE_COOKIE_TOGGLE:
FourStateCookieSettingsPreference fourStateCookieToggle =
@@ -1165,7 +1193,11 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -1165,7 +1193,11 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
} else if (mCategory.getType() == SiteSettingsCategory.Type.THIRD_PARTY_COOKIES) {
infoText.setSummary(R.string.website_settings_third_party_cookies_page_description);
} else {
@@ -1249,7 +1248,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
// Hide the anti-abuse text preferences, as needed.
@@ -1189,6 +1221,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -1189,6 +1221,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
screen.removePreference(antiAbuseThingsToConsiderHeader);
screen.removePreference(antiAbuseThingsToConsiderSectionOne);
}
@@ -1257,7 +1256,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
if (permissionBlockedByOs) {
maybeShowOsWarning(screen);
@@ -1352,7 +1385,7 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -1352,7 +1385,7 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
getSiteSettingsDelegate().getBrowserContextHandle(), contentType);
int[] descriptionIds =
ContentSettingsResources.getTriStateSettingDescriptionIDs(contentType);
@@ -1266,7 +1265,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
private void configureBinaryToggle(ChromeSwitchPreference binaryToggle, int contentType) {
@@ -1478,6 +1511,14 @@ public class SingleCategorySettings extends SiteSettingsPreferenceFragment
@@ -1478,6 +1511,14 @@ public class SingleCategorySettings extends BaseSiteSettingsFragment
@ContentSettingValues
Integer value = site.getContentSetting(browserContextHandle, contentSettingsType);
@@ -1284,15 +1283,15 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SingleWebsiteSettings.java
@@ -45,6 +45,7 @@ import org.chromium.content_public.browser.BrowserContextHandle;
import java.util.Collection;
@@ -46,6 +46,7 @@ import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.List;
/**
* Shows the permissions and other settings for a particular website.
@@ -170,7 +171,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -171,7 +172,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
case ContentSettingsType.CLIPBOARD_READ_WRITE:
return "clipboard_permission_list";
default:
@@ -1301,7 +1300,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
}
@@ -520,7 +521,8 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -536,7 +537,8 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
private void setupContentSettingsPreferences() {
mMaxPermissionOrder = findPreference(PREF_PERMISSIONS_HEADER).getOrder();
@@ -1311,7 +1310,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
Preference preference = new ChromeSwitchPreference(getStyledContext());
preference.setKey(getPreferenceKey(type));
@@ -963,14 +965,22 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -1016,14 +1018,22 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
private void setupContentSettingsPreference(Preference preference,
@ContentSettingValues @Nullable Integer value, boolean isEmbargoed) {
@@ -1337,7 +1336,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
switchPreference.setOnPreferenceChangeListener(this);
@ContentSettingsType
int contentType = getContentSettingsTypeFromPreferenceKey(preference.getKey());
@@ -1123,7 +1133,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -1176,7 +1186,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
public @ContentSettingsType int getContentSettingsTypeFromPreferenceKey(String preferenceKey) {
if (mPreferenceMap == null) {
mPreferenceMap = new HashMap<>();
@@ -1346,7 +1345,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
String key = getPreferenceKey(type);
if (key != null) {
mPreferenceMap.put(key, type);
@@ -1165,7 +1175,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -1218,7 +1228,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
}
mSite.setContentSetting(browserContextHandle, type, permission);
@@ -1355,7 +1354,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
preference.setIcon(getContentSettingsIcon(type, permission));
if (mWebsiteSettingsObserver != null) {
@@ -1195,7 +1205,7 @@ public class SingleWebsiteSettings extends SiteSettingsPreferenceFragment
@@ -1248,7 +1258,7 @@ public class SingleWebsiteSettings extends BaseSiteSettingsFragment
// TODO(mvanouwerkerk): Refactor this class so that it does not depend on the screen state
// for its logic. This class should maintain its own data model, and only update the screen
// after a change is made.
@@ -1367,7 +1366,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/SiteSettings.java
@@ -37,6 +37,7 @@ public class SiteSettings extends SiteSettingsPreferenceFragment
@@ -37,6 +37,7 @@ public class SiteSettings extends BaseSiteSettingsFragment
: R.xml.site_settings_preferences);
getActivity().setTitle(getContext().getString(R.string.prefs_site_settings));
@@ -1375,7 +1374,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
configurePreferences();
updatePreferenceStates();
}
@@ -52,7 +53,7 @@ public class SiteSettings extends SiteSettingsPreferenceFragment
@@ -52,7 +53,7 @@ public class SiteSettings extends BaseSiteSettingsFragment
private void configurePreferences() {
// Remove unsupported settings categories.
@@ -1384,7 +1383,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
type++) {
if (!getSiteSettingsDelegate().isCategoryVisible(type)) {
getPreferenceScreen().removePreference(findPreference(type));
@@ -68,7 +69,7 @@ public class SiteSettings extends SiteSettingsPreferenceFragment
@@ -68,7 +69,7 @@ public class SiteSettings extends BaseSiteSettingsFragment
@CookieControlsMode
int cookieControlsMode =
UserPrefs.get(browserContextHandle).getInteger(COOKIE_CONTROLS_MODE);
@@ -1393,7 +1392,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
Preference p = findPreference(prefCategory);
int contentType = SiteSettingsCategory.contentSettingsType(prefCategory);
// p can be null if the Preference was removed in configurePreferences.
@@ -133,10 +134,13 @@ public class SiteSettings extends SiteSettingsPreferenceFragment
@@ -133,10 +134,13 @@ public class SiteSettings extends BaseSiteSettingsFragment
} else if (Type.ZOOM == prefCategory) {
// Don't want to set a summary for Zoom because we don't want any message to display
// under the Zoom row on site settings.
@@ -1541,7 +1540,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/Website.java
@@ -246,6 +246,12 @@ public final class Website implements WebsiteEntry {
@@ -263,6 +263,12 @@ public final class Website implements WebsiteEntry {
RecordUserAction.record("SoundContentSetting.UnmuteBy.SiteSettings");
}
}
@@ -1557,7 +1556,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java
--- a/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java
+++ b/components/browser_ui/site_settings/android/java/src/org/chromium/components/browser_ui/site_settings/WebsitePermissionsFetcher.java
@@ -98,7 +98,7 @@ public class WebsitePermissionsFetcher {
@@ -106,7 +106,7 @@ public class WebsitePermissionsFetcher {
case ContentSettingsType.USB_GUARD:
return WebsitePermissionsType.CHOSEN_OBJECT_INFO;
default:
@@ -1566,7 +1565,7 @@ diff --git a/components/browser_ui/site_settings/android/java/src/org/chromium/c
}
}
@@ -214,7 +214,7 @@ public class WebsitePermissionsFetcher {
@@ -220,7 +220,7 @@ public class WebsitePermissionsFetcher {
if (SiteSettingsFeatureMap.isEnabled(SiteSettingsFeatureList.SITE_DATA_IMPROVEMENTS)) {
queue.add(new CookiesInfoFetcher());
}
@@ -1663,7 +1662,7 @@ new file mode 100644
diff --git a/components/content_settings/android/BUILD.gn b/components/content_settings/android/BUILD.gn
--- a/components/content_settings/android/BUILD.gn
+++ b/components/content_settings/android/BUILD.gn
@@ -52,6 +52,7 @@ android_library("content_settings_enums_java") {
@@ -53,6 +53,7 @@ android_library("content_settings_enums_java") {
}
java_cpp_enum("content_settings_enums_javagen") {
@@ -1674,7 +1673,7 @@ diff --git a/components/content_settings/android/BUILD.gn b/components/content_s
diff --git a/components/content_settings/core/browser/BUILD.gn b/components/content_settings/core/browser/BUILD.gn
--- a/components/content_settings/core/browser/BUILD.gn
+++ b/components/content_settings/core/browser/BUILD.gn
@@ -85,6 +85,13 @@ static_library("browser") {
@@ -87,6 +87,13 @@ static_library("browser") {
}
configs += [ "//build/config/compiler:wexit_time_destructors" ]
@@ -1705,7 +1704,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
namespace content_settings {
@@ -629,6 +630,7 @@ void ContentSettingsRegistry::Init() {
@@ -630,6 +631,7 @@ void ContentSettingsRegistry::Init() {
WebsiteSettingsRegistry::DESKTOP,
ContentSettingsInfo::INHERIT_IF_LESS_PERMISSIVE,
ContentSettingsInfo::EXCEPTIONS_ON_SECURE_ORIGINS_ONLY);
@@ -1716,7 +1715,7 @@ diff --git a/components/content_settings/core/browser/content_settings_registry.
diff --git a/components/content_settings/core/browser/content_settings_uma_util.cc b/components/content_settings/core/browser/content_settings_uma_util.cc
--- a/components/content_settings/core/browser/content_settings_uma_util.cc
+++ b/components/content_settings/core/browser/content_settings_uma_util.cc
@@ -175,8 +175,9 @@ void RecordContentSettingsHistogram(const std::string& name,
@@ -176,8 +176,9 @@ void RecordContentSettingsHistogram(const std::string& name,
}
int ContentSettingTypeToHistogramValue(ContentSettingsType content_setting) {
@@ -1838,10 +1837,10 @@ diff --git a/components/content_settings/core/browser/website_settings_registry.
diff --git a/components/content_settings/core/common/BUILD.gn b/components/content_settings/core/common/BUILD.gn
--- a/components/content_settings/core/common/BUILD.gn
+++ b/components/content_settings/core/common/BUILD.gn
@@ -52,6 +52,13 @@ static_library("common") {
if (use_blink) {
deps += [ "//components/privacy_sandbox:features" ]
}
@@ -49,6 +49,13 @@ static_library("common") {
"//net",
"//url",
]
+ deps += [ ":bromite_content_settings" ]
+}
+
@@ -2031,17 +2030,21 @@ diff --git a/components/content_settings/core/common/content_settings_param_trai
diff --git a/components/content_settings/core/common/content_settings_types.h b/components/content_settings/core/common/content_settings_types.h
--- a/components/content_settings/core/common/content_settings_types.h
+++ b/components/content_settings/core/common/content_settings_types.h
@@ -356,7 +356,9 @@ enum class ContentSettingsType : int32_t {
// `net::features::kTpcdMetadataGrants` is enabled.
TPCD_METADATA_GRANTS,
@@ -365,6 +365,14 @@ enum class ContentSettingsType : int32_t {
// request.
FILE_SYSTEM_ACCESS_EXTENDED_PERMISSION,
- NUM_TYPES,
+ NUM_TYPES_CHROMIUM,
+#include "components/content_settings/core/common/bromite_content_settings.inc"
+ NUM_TYPES_BROMITE,
+};
+
+struct ContentSettingsTypeHash {
+ FILE_SYSTEM_ACCESS_EXTENDED_PERMISSION,
+
NUM_TYPES,
};
struct ContentSettingsTypeHash {
diff --git a/components/content_settings/renderer/content_settings_agent_impl.cc b/components/content_settings/renderer/content_settings_agent_impl.cc
--- a/components/content_settings/renderer/content_settings_agent_impl.cc
+++ b/components/content_settings/renderer/content_settings_agent_impl.cc
@@ -2133,16 +2136,16 @@ diff --git a/components/page_info/android/java/src/org/chromium/components/page_
diff --git a/components/page_info/android/page_info_controller_android.cc b/components/page_info/android/page_info_controller_android.cc
--- a/components/page_info/android/page_info_controller_android.cc
+++ b/components/page_info/android/page_info_controller_android.cc
@@ -11,6 +11,7 @@
#include "base/command_line.h"
@@ -12,6 +12,7 @@
#include "base/containers/contains.h"
#include "base/feature_list.h"
#include "components/content_settings/core/browser/host_content_settings_map.h"
+#include "components/content_settings/core/browser/website_settings_registry.h"
#include "components/content_settings/core/common/content_settings.h"
#include "components/content_settings/core/common/content_settings_types.h"
#include "components/page_info/android/jni_headers/PageInfoController_jni.h"
@@ -146,6 +147,15 @@ void PageInfoControllerAndroid::SetPermissionInfo(
ContentSettingsType::FEDERATED_IDENTITY_API);
@@ -152,6 +153,15 @@ void PageInfoControllerAndroid::SetPermissionInfo(
permissions_to_display.push_back(ContentSettingsType::STORAGE_ACCESS);
}
+ content_settings::WebsiteSettingsRegistry* website_settings =
@@ -2157,7 +2160,7 @@ diff --git a/components/page_info/android/page_info_controller_android.cc b/comp
std::map<ContentSettingsType, ContentSetting>
user_specified_settings_to_display;
std::map<ContentSettingsType, bool>
@@ -205,6 +215,14 @@ absl::optional<ContentSetting> PageInfoControllerAndroid::GetSettingToDisplay(
@@ -211,6 +221,14 @@ absl::optional<ContentSetting> PageInfoControllerAndroid::GetSettingToDisplay(
return permission.setting;
}
@@ -2183,7 +2186,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
#include "components/content_settings/browser/ui/cookie_controls_controller.h"
#include "components/content_settings/core/browser/content_settings_registry.h"
#include "components/content_settings/core/browser/content_settings_uma_util.h"
@@ -1239,6 +1240,14 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
@@ -1246,6 +1247,14 @@ void PageInfo::PopulatePermissionInfo(PermissionInfo& permission_info,
// applies to permissions listed in |kPermissionType|.
bool PageInfo::ShouldShowPermission(
const PageInfo::PermissionInfo& info) const {
@@ -2198,7 +2201,7 @@ diff --git a/components/page_info/page_info.cc b/components/page_info/page_info.
// Note |ContentSettingsType::ADS| will show up regardless of its default
// value when it has been activated on the current origin.
if (info.type == ContentSettingsType::ADS) {
@@ -1339,7 +1348,19 @@ void PageInfo::PresentSitePermissions() {
@@ -1346,7 +1355,19 @@ void PageInfo::PresentSitePermissions() {
HostContentSettingsMap* content_settings = GetContentSettings();
DCHECK(web_contents_);
@@ -2230,7 +2233,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in
#include "components/page_info/core/features.h"
#include "components/page_info/page_info.h"
#include "components/page_info/page_info_ui_delegate.h"
@@ -597,6 +598,12 @@ PageInfoUI::~PageInfoUI() = default;
@@ -607,6 +608,12 @@ PageInfoUI::~PageInfoUI() = default;
// static
std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) {
@@ -2243,7 +2246,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in
for (const PermissionUIInfo& info : GetContentSettingsUIInfo()) {
if (info.type == type)
return l10n_util::GetStringUTF16(info.string_id);
@@ -608,6 +615,12 @@ std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) {
@@ -618,6 +625,12 @@ std::u16string PageInfoUI::PermissionTypeToUIString(ContentSettingsType type) {
// static
std::u16string PageInfoUI::PermissionTypeToUIStringMidSentence(
ContentSettingsType type) {
@@ -2256,7 +2259,7 @@ diff --git a/components/page_info/page_info_ui.cc b/components/page_info/page_in
for (const PermissionUIInfo& info : GetContentSettingsUIInfo()) {
if (info.type == type)
return l10n_util::GetStringUTF16(info.string_id_mid_sentence);
@@ -1034,6 +1047,11 @@ bool PageInfoUI::ContentSettingsTypeInPageInfo(ContentSettingsType type) {
@@ -1052,6 +1065,11 @@ bool PageInfoUI::ContentSettingsTypeInPageInfo(ContentSettingsType type) {
if (info.type == type)
return true;
}
@@ -2348,18 +2351,5 @@ diff --git a/third_party/blink/renderer/core/execution_context/execution_context
enum ReasonForCallingCanExecuteScripts {
kAboutToExecuteScript,
diff --git a/weblayer/browser/java/org/chromium/weblayer_private/settings/WebLayerSiteSettingsDelegate.java b/weblayer/browser/java/org/chromium/weblayer_private/settings/WebLayerSiteSettingsDelegate.java
--- a/weblayer/browser/java/org/chromium/weblayer_private/settings/WebLayerSiteSettingsDelegate.java
+++ b/weblayer/browser/java/org/chromium/weblayer_private/settings/WebLayerSiteSettingsDelegate.java
@@ -160,6 +160,9 @@ public class WebLayerSiteSettingsDelegate
@Override
public void dismissPrivacySandboxSnackbar() {}
+ @Override
+ public void launchHelpAndFeedbackActivity(Activity currentActivity, String url) {}
+
@Override
public boolean isFirstPartySetsDataAccessEnabled() {
return false;
--
2.25.1
@@ -5,16 +5,27 @@ Subject: Keep empty tabs between sessions
Original License: GPL-2.0-or-later - https://spdx.org/licenses/GPL-2.0-or-later.html
License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
---
.../org/chromium/chrome/browser/ChromeTabbedActivity.java | 1 +
.../chrome/browser/tabmodel/TabPersistentStore.java | 8 --------
.../browser/tab/state/CriticalPersistedTabData.java | 3 ---
2 files changed, 11 deletions(-)
2 files changed, 1 insertion(+), 8 deletions(-)
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java
@@ -3255,6 +3255,7 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent
* Tab, it won't be skipped.
*/
private boolean skipSavingNonActiveNtps() {
+ (UAZO) Check this
return StartSurfaceConfiguration.isNtpAsHomeSurfaceEnabled(isTablet());
}
}
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java
@@ -697,14 +697,6 @@ public class TabPersistentStore {
.createFrozenTab(
tabState, null, tabToRestore.id, isIncognito, restoredIndex);
mTabCreatorManager.getTabCreator(isIncognito)
.createFrozenTab(tabState, tabToRestore.id, isIncognito, restoredIndex);
} else {
- if (!mSkipSavingNonActiveNtps && UrlUtilities.isNTPUrl(tabToRestore.url) && !setAsActive
- && !tabToRestore.fromMerge) {
@@ -27,18 +38,5 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPer
Log.w(TAG, "Failed to restore TabState; creating Tab with last known URL.");
Tab fallbackTab = mTabCreatorManager.getTabCreator(isIncognito)
.createNewTab(new LoadUrlParams(tabToRestore.url),
diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/state/CriticalPersistedTabData.java b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/state/CriticalPersistedTabData.java
--- a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/state/CriticalPersistedTabData.java
+++ b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/state/CriticalPersistedTabData.java
@@ -625,9 +625,6 @@ public class CriticalPersistedTabData extends PersistedTabData {
if (getUrl() == null || getUrl().isEmpty()) {
return false;
}
- if (UrlUtilities.isNTPUrl(getUrl()) && !mTab.canGoBack() && !mTab.canGoForward()) {
- return false;
- }
if (isTabUrlContentScheme(getUrl())) {
return false;
}
--
2.25.1
+102 -101
View File
@@ -24,7 +24,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../tab_management/TabGroupUiToolbarView.java | 18 +++++
.../tab_management/TabGroupUiViewBinder.java | 3 +
.../tab_management/TabListCoordinator.java | 81 +++++++++++++++++++
.../tab_management/TabListRecyclerView.java | 19 ++++-
.../tab_management/TabListRecyclerView.java | 20 ++++-
.../tab_management/TabSwitcherMediator.java | 16 ++++
.../ChromeAccessibilitySettingsDelegate.java | 50 ++++++++++++
.../chrome/browser/app/ChromeActivity.java | 13 +++
@@ -87,7 +87,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../accessibility/AccessibilitySettings.java | 16 ++++
.../AccessibilitySettingsDelegate.java | 6 ++
.../render_widget_host_view_android.cc | 3 +
74 files changed, 871 insertions(+), 63 deletions(-)
74 files changed, 872 insertions(+), 63 deletions(-)
diff --git a/cc/base/features.cc b/cc/base/features.cc
--- a/cc/base/features.cc
@@ -140,7 +140,7 @@ diff --git a/cc/input/browser_controls_offset_manager.cc b/cc/input/browser_cont
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
--- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc
@@ -4246,6 +4246,9 @@ bool LayerTreeHostImpl::AnimateBrowserControls(base::TimeTicks time) {
@@ -4257,6 +4257,9 @@ bool LayerTreeHostImpl::AnimateBrowserControls(base::TimeTicks time) {
if (scroll_delta.IsZero())
return false;
@@ -193,7 +193,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
try (TraceEvent e = TraceEvent.scoped("TabGroupUiCoordinator.initializeWithNative")) {
mTabStripCoordinator = new TabListCoordinator(TabListCoordinator.TabListMode.STRIP,
mContext, mBrowserControlsStateProvider, mTabModelSelector, null, null, false,
@@ -175,7 +177,8 @@ public class TabGroupUiCoordinator implements TabGroupUiMediator.ResetHandler, T
@@ -168,7 +170,8 @@ public class TabGroupUiCoordinator implements TabGroupUiMediator.ResetHandler, T
mMediator = new TabGroupUiMediator(mActivity, visibilityController, this, mModel,
mTabModelSelector, mTabCreatorManager, mLayoutStateProviderSupplier,
mIncognitoStateProvider, mTabGridDialogControllerSupplier,
@@ -491,7 +491,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
/**
* Construct a coordinator for UI that shows a list of tabs.
* @param mode Modes of showing the list of tabs. Can be used in GRID or STRIP.
@@ -283,6 +355,12 @@ public class TabListCoordinator
@@ -284,6 +356,12 @@ public class TabListCoordinator
if (mMode == TabListMode.GRID) {
GridLayoutManager gridLayoutManager =
new GridLayoutManager(context, GRID_LAYOUT_SPAN_COUNT_COMPACT);
@@ -504,7 +504,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
mRecyclerView.setLayoutManager(gridLayoutManager);
mMediator.registerOrientationListener(gridLayoutManager);
mMediator.updateSpanCount(
@@ -571,6 +649,9 @@ public class TabListCoordinator
@@ -578,6 +656,9 @@ public class TabListCoordinator
void prepareTabSwitcherView() {
registerLayoutChangeListener();
mRecyclerView.prepareTabSwitcherView();
@@ -517,24 +517,25 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListRecyclerView.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListRecyclerView.java
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListRecyclerView.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabListRecyclerView.java
@@ -39,6 +39,7 @@ import androidx.recyclerview.widget.LinearLayoutManager;
@@ -40,6 +40,8 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import org.chromium.base.Log;
+import org.chromium.chrome.browser.flags.CachedFeatureFlags;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
+import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.tabmodel.TabModel;
import org.chromium.chrome.tab_ui.R;
@@ -68,6 +69,8 @@ class TabListRecyclerView
import org.chromium.ui.base.ViewUtils;
@@ -69,6 +71,8 @@ class TabListRecyclerView
public static final long BASE_ANIMATION_DURATION_MS = 218;
public static final long FINAL_FADE_IN_DURATION_MS = 50;
+ private boolean mIsVisible = false;
+
/**
* Field trial parameter for downsampling scaling factor.
* An interface to listen to visibility related changes on this {@link RecyclerView}.
*/
@@ -265,6 +268,7 @@ class TabListRecyclerView
@@ -276,6 +280,7 @@ class TabListRecyclerView
? FINAL_FADE_IN_DURATION_MS
: BASE_ANIMATION_DURATION_MS;
@@ -542,7 +543,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
setAlpha(0);
setVisibility(View.VISIBLE);
mFadeInAnimator = ObjectAnimator.ofFloat(this, View.ALPHA, 1);
@@ -314,6 +318,11 @@ class TabListRecyclerView
@@ -325,6 +330,11 @@ class TabListRecyclerView
}
void setShadowVisibility(boolean shouldShowShadow) {
@@ -554,7 +555,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
if (mShadowImageView == null) {
Context context = getContext();
mShadowImageView = new ImageView(context);
@@ -326,7 +335,10 @@ class TabListRecyclerView
@@ -337,7 +347,10 @@ class TabListRecyclerView
if (getParent() instanceof FrameLayout) {
// Add shadow for grid tab switcher.
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(
@@ -566,7 +567,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
mShadowImageView.setLayoutParams(params);
mShadowImageView.setTranslationY(mShadowTopOffset);
FrameLayout parent = (FrameLayout) getParent();
@@ -354,6 +366,10 @@ class TabListRecyclerView
@@ -365,6 +378,10 @@ class TabListRecyclerView
void setShadowTopOffset(int shadowTopOffset) {
mShadowTopOffset = shadowTopOffset;
@@ -577,7 +578,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
if (mShadowImageView != null && getParent() instanceof FrameLayout) {
// Since the shadow has no functionality, other than just existing visually, we can use
@@ -544,6 +560,7 @@ class TabListRecyclerView
@@ -545,6 +562,7 @@ class TabListRecyclerView
mListener.finishedHiding();
}
});
@@ -588,7 +589,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMediator.java b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMediator.java
--- a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMediator.java
+++ b/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser/tasks/tab_management/TabSwitcherMediator.java
@@ -42,6 +42,7 @@ import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider
@@ -43,6 +43,7 @@ import org.chromium.chrome.browser.browser_controls.BrowserControlsStateProvider
import org.chromium.chrome.browser.compositor.layouts.LayoutManagerImpl;
import org.chromium.chrome.browser.compositor.layouts.content.TabContentManager;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
@@ -596,7 +597,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
import org.chromium.chrome.browser.incognito.reauth.IncognitoReauthController;
import org.chromium.chrome.browser.incognito.reauth.IncognitoReauthManager;
import org.chromium.chrome.browser.layouts.LayoutStateProvider;
@@ -512,11 +513,22 @@ class TabSwitcherMediator implements TabSwitcher.Controller, TabListRecyclerView
@@ -519,11 +520,22 @@ class TabSwitcherMediator implements TabSwitcher.Controller, TabListRecyclerView
updateTopControlsProperties();
mContainerViewModel.set(
BOTTOM_CONTROLS_HEIGHT, browserControlsStateProvider.getBottomControlsHeight());
@@ -619,7 +620,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
if (backPressManager != null && BackPressManager.isEnabled()) {
assert !mIsStartSurfaceEnabled || mIsStartSurfaceRefactorEnabled;
backPressManager.addHandler(this, BackPressHandler.Type.TAB_SWITCHER);
@@ -627,6 +639,10 @@ class TabSwitcherMediator implements TabSwitcher.Controller, TabListRecyclerView
@@ -638,6 +650,10 @@ class TabSwitcherMediator implements TabSwitcher.Controller, TabListRecyclerView
final int contentOffset = mBrowserControlsStateProvider.getContentOffset();
mContainerViewModel.set(TOP_MARGIN, contentOffset);
@@ -633,7 +634,7 @@ diff --git a/chrome/android/features/tab_ui/java/src/org/chromium/chrome/browser
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/accessibility/settings/ChromeAccessibilitySettingsDelegate.java
@@ -21,6 +21,12 @@ import org.chromium.chrome.browser.flags.CromiteNativeUtils;
@@ -29,6 +29,12 @@ import org.chromium.chrome.browser.flags.CromiteNativeUtils;
import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
@@ -646,7 +647,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
/** The Chrome implementation of AccessibilitySettingsDelegate. */
public class ChromeAccessibilitySettingsDelegate implements AccessibilitySettingsDelegate {
private static class ReaderForAccessibilityDelegate implements BooleanPreferenceDelegate {
@@ -41,6 +47,12 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting
@@ -70,6 +76,12 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting
}
}
@@ -659,7 +660,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
private final Profile mProfile;
/**
@@ -80,6 +92,44 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting
@@ -114,6 +126,44 @@ public class ChromeAccessibilitySettingsDelegate implements AccessibilitySetting
return new ForceTabletUIDelegate();
}
@@ -707,7 +708,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/accessibility/s
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -254,6 +254,9 @@ import java.util.ArrayList;
@@ -250,6 +250,9 @@ import java.util.ArrayList;
import java.util.List;
import java.util.function.Consumer;
@@ -717,7 +718,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
/**
* A {@link AsyncInitializationActivity} that builds and manages a {@link CompositorViewHolder}
* and associated classes.
@@ -785,6 +788,16 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -788,6 +791,16 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
int toolbarLayoutId = getToolbarLayoutId();
if (toolbarLayoutId != ActivityUtils.NO_RESOURCE_ID && controlContainer != null) {
controlContainer.initWithToolbar(toolbarLayoutId);
@@ -770,7 +771,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/Comp
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChrome.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChrome.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChrome.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChrome.java
@@ -41,6 +41,8 @@ import org.chromium.components.browser_ui.widget.gesture.SwipeGestureListener.Sw
@@ -45,6 +45,8 @@ import org.chromium.components.browser_ui.widget.gesture.SwipeGestureListener.Sw
import org.chromium.components.browser_ui.widget.scrim.ScrimCoordinator;
import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.resources.dynamics.DynamicResourceLoader;
@@ -778,8 +779,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
+import org.chromium.chrome.browser.flags.CachedFeatureFlags;
import java.util.List;
@@ -256,7 +258,10 @@ public class LayoutManagerChrome
import java.util.concurrent.Callable;
@@ -347,7 +349,10 @@ public class LayoutManagerChrome
@Override
public SwipeHandler createToolbarSwipeHandler(boolean supportSwipeDown) {
@@ -791,7 +792,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
}
@Override
@@ -459,9 +464,11 @@ public class LayoutManagerChrome
@@ -614,9 +619,11 @@ public class LayoutManagerChrome
private static final float SWIPE_RANGE_DEG = 25;
private final boolean mSupportSwipeDown;
@@ -804,7 +805,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
}
@Override
@@ -493,6 +500,9 @@ public class LayoutManagerChrome
@@ -648,6 +655,9 @@ public class LayoutManagerChrome
&& mScrollDirection == ScrollDirection.DOWN) {
RecordUserAction.record("MobileToolbarSwipeOpenStackView");
showLayout(LayoutType.TAB_SWITCHER, true);
@@ -814,7 +815,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
} else if (mScrollDirection == ScrollDirection.LEFT
|| mScrollDirection == ScrollDirection.RIGHT) {
startShowing(mToolbarSwipeLayout, true);
@@ -539,6 +549,8 @@ public class LayoutManagerChrome
@@ -694,6 +704,8 @@ public class LayoutManagerChrome
direction = ScrollDirection.RIGHT;
} else if (swipeAngle < 270 + SWIPE_RANGE_DEG && swipeAngle > 270 - SWIPE_RANGE_DEG) {
direction = ScrollDirection.DOWN;
@@ -823,7 +824,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
}
return direction;
@@ -552,7 +564,7 @@ public class LayoutManagerChrome
@@ -707,7 +719,7 @@ public class LayoutManagerChrome
return false;
}
@@ -835,7 +836,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChromeTablet.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChromeTablet.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChromeTablet.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/LayoutManagerChromeTablet.java
@@ -29,6 +29,7 @@ import org.chromium.chrome.browser.toolbar.ControlContainer;
@@ -30,6 +30,7 @@ import org.chromium.chrome.browser.toolbar.ControlContainer;
import org.chromium.chrome.features.start_surface.StartSurface;
import org.chromium.components.browser_ui.widget.scrim.ScrimCoordinator;
import org.chromium.ui.resources.dynamics.DynamicResourceLoader;
@@ -843,16 +844,16 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
import java.util.concurrent.Callable;
@@ -100,7 +101,8 @@ public class LayoutManagerChromeTablet extends LayoutManagerChrome {
@@ -91,7 +92,8 @@ public class LayoutManagerChromeTablet extends LayoutManagerChrome {
()
-> mLayerTitleCache,
tabModelStartupInfoSupplier, lifecycleDispatcher, multiInstanceManager,
- toolbarContainerView);
+ toolbarContainerView,
- toolbarContainerView, tabHoverCardViewStub, tabContentManagerSupplier);
+ toolbarContainerView, tabHoverCardViewStub, tabContentManagerSupplier,
+ /*browserControlsManagerSupplier*/ () -> getBrowserControlsManager());
mScrimCoordinator = scrimCoordinator;
mCreateStartSurfaceCallable = delayedStartSurfaceCallable;
addSceneOverlay(mTabStripLayoutHelperManager);
addObserver(mTabStripLayoutHelperManager.getTabSwitcherObserver());
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/ToolbarSwipeLayout.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/ToolbarSwipeLayout.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/ToolbarSwipeLayout.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/layouts/ToolbarSwipeLayout.java
@@ -895,7 +896,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/layo
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java
@@ -520,7 +520,7 @@ public class StripLayoutHelper implements StripLayoutTab.StripLayoutTabDelegate
@@ -531,7 +531,7 @@ public class StripLayoutHelper implements StripLayoutTab.StripLayoutTabDelegate
// position 0 is on the left. Account for that in the offset calculation.
boolean isRtl = LocalizationUtils.isLayoutRtl();
boolean useUnadjustedScrollOffset = isRtl != isLeft;
@@ -907,7 +908,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelperManager.java
@@ -62,6 +62,9 @@ import org.chromium.ui.base.LocalizationUtils;
@@ -67,6 +67,9 @@ import org.chromium.ui.base.LocalizationUtils;
import org.chromium.ui.base.PageTransition;
import org.chromium.ui.resources.ResourceManager;
import org.chromium.url.GURL;
@@ -917,7 +918,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
import java.util.List;
@@ -166,9 +169,13 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
@@ -175,9 +178,13 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
private final String mDefaultTitle;
private final Supplier<LayerTitleCache> mLayerTitleCacheSupplier;
@@ -928,10 +929,10 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
@Override
public void onDown(float x, float y, boolean fromMouse, int buttons) {
+ y -= mStripFilterArea.top;
if (mModelSelectorButton.onDown(x, y)) return;
getActiveStripLayoutHelper().onDown(time(), x, y, fromMouse, buttons);
}
@@ -186,12 +193,14 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
// Clear any persisting tab strip hover state on a down event on the strip. Clearance is
// posted at a delay, as a best effort for the clearance to take effect after any
// animations triggered by the down event have ended.
@@ -201,12 +208,14 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
@Override
public void drag(float x, float y, float dx, float dy, float tx, float ty) {
@@ -946,7 +947,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
long time = time();
if (mModelSelectorButton.click(x, y)) {
mModelSelectorButton.handleClick(time);
@@ -202,11 +211,13 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
@@ -217,11 +226,13 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
@Override
public void fling(float x, float y, float velocityX, float velocityY) {
@@ -960,26 +961,26 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
getActiveStripLayoutHelper().onLongPress(time(), x, y);
}
@@ -283,7 +294,8 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
Supplier<LayerTitleCache> layerTitleCacheSupplier,
ObservableSupplier<TabModelStartupInfo> tabModelStartupInfoSupplier,
@@ -309,7 +320,8 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
ActivityLifecycleDispatcher lifecycleDispatcher,
- MultiInstanceManager multiInstanceManager, View toolbarContainerView) {
+ MultiInstanceManager multiInstanceManager, View toolbarContainerView,
MultiInstanceManager multiInstanceManager, View toolbarContainerView,
@NonNull ViewStub tabHoverCardViewStub,
- ObservableSupplier<TabContentManager> tabContentManagerSupplier) {
+ ObservableSupplier<TabContentManager> tabContentManagerSupplier,
+ Supplier<BrowserControlsManager> browserControlsManagerSupplier) {
mUpdateHost = updateHost;
mLayerTitleCacheSupplier = layerTitleCacheSupplier;
mTabStripTreeProvider = new TabStripSceneLayer(context);
@@ -382,6 +394,8 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
@@ -409,6 +421,8 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
mModelSelectorButton, multiInstanceManager, toolbarContainerView);
mIncognitoHelper = new StripLayoutHelper(context, managerHost, updateHost, renderHost, true,
mModelSelectorButton, multiInstanceManager, toolbarContainerView);
+ mBrowserControlsManagerSupplier = browserControlsManagerSupplier;
+ mDpToPx = context.getResources().getDisplayMetrics().density;
if (tabModelStartupInfoSupplier != null) {
if (tabModelStartupInfoSupplier.hasValue()) {
@@ -475,9 +489,13 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
tabHoverCardViewStub.setOnInflateListener((viewStub, view) -> {
var hoverCardView = (StripTabHoverCardView) view;
@@ -512,9 +526,13 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
int hoveredTabId = getActiveStripLayoutHelper().getLastHoveredTab() == null
? TabModel.INVALID_TAB_INDEX
: getActiveStripLayoutHelper().getLastHoveredTab().getId();
@@ -994,7 +995,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/compositor/over
return mTabStripTreeProvider;
}
@@ -522,7 +540,17 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
@@ -559,7 +577,17 @@ public class StripLayoutHelperManager implements SceneOverlay, PauseResumeWithNa
mIncognitoHelper.onSizeChanged(
mWidth, mHeight, orientationChanged, LayoutManagerImpl.time());
@@ -1237,7 +1238,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/modaldialog/Chr
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.java
@@ -108,6 +108,8 @@ import org.chromium.content_public.browser.NavigationController;
@@ -110,6 +110,8 @@ import org.chromium.content_public.browser.NavigationController;
import org.chromium.content_public.browser.NavigationEntry;
import org.chromium.ui.base.DeviceFormFactor;
import org.chromium.ui.base.WindowAndroid;
@@ -1246,7 +1247,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.
import java.util.List;
@@ -587,10 +589,15 @@ public class NewTabPage implements NativePage, InvalidationAwareThumbnailProvide
@@ -605,10 +607,15 @@ public class NewTabPage implements NativePage, InvalidationAwareThumbnailProvide
// + topControlsDistanceToRest| will give the margin for the current animation frame.
final int topControlsDistanceToRest = mBrowserControlsStateProvider.getContentOffset()
- mBrowserControlsStateProvider.getTopControlsHeight();
@@ -1264,7 +1265,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ntp/NewTabPage.
if (topMargin != layoutParams.topMargin || bottomMargin != layoutParams.bottomMargin) {
layoutParams.topMargin = topMargin;
@@ -610,7 +617,7 @@ public class NewTabPage implements NativePage, InvalidationAwareThumbnailProvide
@@ -628,7 +635,7 @@ public class NewTabPage implements NativePage, InvalidationAwareThumbnailProvide
* strip.
*/
private int getToolbarExtraYOffset() {
@@ -1369,7 +1370,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/Se
updateAnchorViewLayout();
// Create status bar color controller and assign to search activity.
@@ -237,7 +248,7 @@ public class SearchActivity extends AsyncInitializationActivity
@@ -238,7 +249,7 @@ public class SearchActivity extends AsyncInitializationActivity
getOnBackPressedDispatcher().addCallback(this, backPressManager.getCallback());
}
// clang-format off
@@ -1381,7 +1382,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/searchwidget/Se
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/settings/SettingsActivity.java
@@ -324,6 +324,11 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
@@ -330,6 +330,11 @@ public class SettingsActivity extends ChromeBaseAppCompatActivity
if (fragment instanceof INeedSnackbarManager) {
((INeedSnackbarManager)fragment).setSnackbarManager(mSnackbarManager);
}
@@ -1457,8 +1458,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
/**
* Contains logic for managing the toolbar visual component. This class manages the interactions
* with the rest of the application to ensure the toolbar is always visually up to date.
@@ -702,7 +705,7 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
mIncognitoStateProvider.isIncognitoSelected()));
@@ -708,7 +711,7 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
: null;
// clang-format off
LocationBarCoordinator locationBarCoordinator = new LocationBarCoordinator(
- mActivity.findViewById(R.id.location_bar), toolbarLayout, profileSupplier,
@@ -1466,7 +1467,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
PrivacyPreferencesManagerImpl.getInstance(), mLocationBarModel,
mActionModeController.getActionModeCallback(),
new WindowDelegate(mActivity.getWindow()), windowAndroid, mActivityTabProvider,
@@ -970,11 +973,13 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -976,11 +979,13 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
// the height won't be measured by the background image.
if (mControlContainer.getBackground() == null) {
setControlContainerTopMargin(getToolbarExtraYOffset());
@@ -1480,7 +1481,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
mControlContainer.removeOnLayoutChangeListener(mLayoutChangeListener);
mLayoutChangeListener = null;
}
@@ -1397,13 +1402,25 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -1403,13 +1408,25 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
return ((LocationBarCoordinator) mLocationBar).getUrlBarTextWithoutAutocomplete();
}
@@ -1508,7 +1509,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
mIncognitoStateProvider, mScrimCoordinator, mOmniboxFocusStateSupplier,
mBottomSheetController, mActivityLifecycleDispatcher, mIsWarmOnResumeSupplier,
mTabModelSelector, mTabContentManager, mCompositorViewHolder,
@@ -1411,8 +1428,9 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -1417,8 +1434,9 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
mLayoutStateProviderSupplier, mSnackbarManager);
var bottomControlsCoordinator = new BottomControlsCoordinator(mActivity, mWindowAndroid,
mLayoutManager, mCompositorViewHolder.getResourceManager(), mBrowserControlsSizer,
@@ -1520,7 +1521,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/Toolbar
mBottomControlsCoordinatorSupplier.set(bottomControlsCoordinator);
bottomControlsCoordinator.getHandleBackPressChangedSupplier().addObserver(
(x) -> { onBackPressStateChanged(); });
@@ -2252,6 +2270,15 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
@@ -2261,6 +2279,15 @@ public class ToolbarManager implements UrlFocusChangeListener, ThemeColorObserve
private void setControlContainerTopMargin(int margin) {
final ViewGroup.MarginLayoutParams layoutParams =
((ViewGroup.MarginLayoutParams) mControlContainer.getLayoutParams());
@@ -1594,7 +1595,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/system/Statu
import org.chromium.base.CallbackController;
import org.chromium.base.supplier.ObservableSupplier;
import org.chromium.base.supplier.OneshotSupplier;
@@ -497,6 +501,12 @@ public class StatusBarColorController
@@ -500,6 +504,12 @@ public class StatusBarColorController
boolean needsDarkStatusBarIcons = !ColorUtils.shouldUseLightForegroundOnBackground(color);
UiUtils.setStatusBarIconColor(root, needsDarkStatusBarIcons);
UiUtils.setStatusBarColor(window, color);
@@ -1610,7 +1611,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ui/system/Statu
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
@@ -8131,6 +8131,11 @@ const FeatureEntry kFeatureEntries[] = {
@@ -8391,6 +8391,11 @@ const FeatureEntry kFeatureEntries[] = {
flag_descriptions::kWindowsScrollingPersonalityDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kWindowsScrollingPersonality)},
@@ -1709,7 +1710,7 @@ diff --git a/chrome/browser/browser_controls/android/java/src/org/chromium/chrom
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
@@ -2006,6 +2006,10 @@ const char kImprovedKeyboardShortcutsDescription[] =
@@ -2038,6 +2038,10 @@ const char kImprovedKeyboardShortcutsDescription[] =
"Ensure keyboard shortcuts work consistently with international keyboard "
"layouts and deprecate legacy shortcuts.";
@@ -1723,7 +1724,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
@@ -1134,6 +1134,9 @@ extern const char kImprovedIncognitoScreenshotDescription[];
@@ -1153,6 +1153,9 @@ extern const char kImprovedIncognitoScreenshotDescription[];
extern const char kImprovedKeyboardShortcutsName[];
extern const char kImprovedKeyboardShortcutsDescription[];
@@ -1736,15 +1737,15 @@ diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptio
diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browser/flags/android/chrome_feature_list.cc
--- a/chrome/browser/flags/android/chrome_feature_list.cc
+++ b/chrome/browser/flags/android/chrome_feature_list.cc
@@ -10,6 +10,7 @@
#include "base/android/feature_map.h"
@@ -12,6 +12,7 @@
#include "base/feature_list.h"
+#include "cc/base/features.h"
#include "base/features.h"
#include "base/no_destructor.h"
+#include "cc/base/features.h"
#include "chrome/browser/browser_features.h"
#include "chrome/browser/feature_guide/notifications/feature_notification_guide_service.h"
@@ -262,6 +263,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
#include "chrome/browser/flags/android/chrome_session_state.h"
@@ -271,6 +272,7 @@ const base::Feature* const kFeaturesExposedToJava[] = {
&kLensCameraAssistedSearch,
&kLensOnQuickActionSearchWidget,
&kNewTabSearchEngineUrlAndroid,
@@ -1755,7 +1756,7 @@ diff --git a/chrome/browser/flags/android/chrome_feature_list.cc b/chrome/browse
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFlag.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFlag.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFlag.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/CachedFlag.java
@@ -117,6 +117,12 @@ public class CachedFlag extends Flag {
@@ -131,6 +131,12 @@ public class CachedFlag extends Flag {
}
}
@@ -1771,7 +1772,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
--- a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
+++ b/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/flags/ChromeFeatureList.java
@@ -327,6 +327,8 @@ public abstract class ChromeFeatureList {
@@ -328,6 +328,8 @@ public abstract class ChromeFeatureList {
public static final String SEARCH_READY_OMNIBOX = "SearchReadyOmnibox";
public static final String METRICS_SETTINGS_ANDROID = "MetricsSettingsAndroid";
public static final String NEW_TAB_SEARCH_ENGINE_URL_ANDROID = "NewTabSearchEngineUrlAndroid";
@@ -1780,16 +1781,16 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
public static final String NOTIFICATION_PERMISSION_VARIANT = "NotificationPermissionVariant";
public static final String NOTIFICATION_PERMISSION_BOTTOM_SHEET =
"NotificationPermissionBottomSheet";
@@ -590,6 +592,8 @@ public abstract class ChromeFeatureList {
@@ -596,6 +598,8 @@ public abstract class ChromeFeatureList {
new CachedFlag(PRIVACY_GUIDE_POST_MVP, false);
public static final CachedFlag sOmniboxMatchToolbarAndStatusBarColor =
new CachedFlag(OMNIBOX_MATCH_TOOLBAR_AND_STATUS_BAR_COLOR, false);
+ public static final CachedFlag sMoveTopToolbarToBottom =
+ new CachedFlag(MOVE_TOP_TOOLBAR_TO_BOTTOM, false);
public static final CachedFlag sOmniboxModernizeVisualUpdate =
new CachedFlag(OMNIBOX_MODERNIZE_VISUAL_UPDATE, false);
new CachedFlag(OMNIBOX_MODERNIZE_VISUAL_UPDATE, true);
public static final CachedFlag sOptimizationGuidePushNotifications =
@@ -678,6 +682,7 @@ public abstract class ChromeFeatureList {
@@ -695,6 +699,7 @@ public abstract class ChromeFeatureList {
sPrivacyGuideAndroid3,
sPrivacyGuidePreloadAndroid,
sPrivacyGuidePostMVP,
@@ -1800,7 +1801,7 @@ diff --git a/chrome/browser/flags/android/java/src/org/chromium/chrome/browser/f
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -1936,7 +1936,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -2024,7 +2024,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
#if BUILDFLAG(IS_ANDROID)
registry->RegisterBooleanPref(prefs::kVirtualKeyboardResizesLayoutByDefault,
@@ -1915,7 +1916,7 @@ diff --git a/chrome/browser/ui/android/appmenu/internal/java/src/org/chromium/ch
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/LocationBarCoordinator.java
@@ -91,6 +91,7 @@ public class LocationBarCoordinator
@@ -92,6 +92,7 @@ public class LocationBarCoordinator
private WindowDelegate mWindowDelegate;
private WindowAndroid mWindowAndroid;
private View mAutocompleteAnchorView;
@@ -1923,7 +1924,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
private LocationBarMediator mLocationBarMediator;
private View mUrlBar;
private View mDeleteButton;
@@ -146,7 +147,7 @@ public class LocationBarCoordinator
@@ -147,7 +148,7 @@ public class LocationBarCoordinator
* @param backPressManager The {@link BackPressManager} for intercepting back press.
* @param tabModelSelectorSupplier Supplier of the {@link TabModelSelector}.
*/
@@ -1932,7 +1933,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
ObservableSupplier<Profile> profileObservableSupplier,
PrivacyPreferencesManager privacyPreferencesManager,
LocationBarDataProvider locationBarDataProvider, ActionMode.Callback actionModeCallback,
@@ -179,11 +180,12 @@ public class LocationBarCoordinator
@@ -180,11 +181,12 @@ public class LocationBarCoordinator
mActivityLifecycleDispatcher = activityLifecycleDispatcher;
mActivityLifecycleDispatcher.register(this);
mAutocompleteAnchorView = autocompleteAnchorView;
@@ -1990,7 +1991,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java
--- a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java
+++ b/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/browser/omnibox/UrlBarCoordinator.java
@@ -25,6 +25,10 @@ import org.chromium.ui.modelutil.PropertyModelChangeProcessor;
@@ -26,6 +26,10 @@ import org.chromium.ui.modelutil.PropertyModelChangeProcessor;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -2001,7 +2002,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
/**
* Coordinates the interactions with the UrlBar text component.
*/
@@ -234,6 +238,11 @@ public class UrlBarCoordinator implements UrlBarEditingTextStateProvider, UrlFoc
@@ -239,6 +243,11 @@ public class UrlBarCoordinator implements UrlBarEditingTextStateProvider, UrlFoc
// to show or hide keyboard anyway. This may happen when we schedule keyboard hide, and
// receive a second request to hide the keyboard instantly.
if (showKeyboard) {
@@ -2152,7 +2153,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
/** A widget for showing a list of omnibox suggestions. */
public class OmniboxSuggestionsDropdown extends RecyclerView {
/**
@@ -188,7 +192,8 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
@@ -205,7 +209,8 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
* Constructs a new list designed for containing omnibox suggestions.
* @param context Context used for contained views.
*/
@@ -2162,7 +2163,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
super(context, null, android.R.attr.dropDownListViewStyle);
setFocusable(true);
setFocusableInTouchMode(true);
@@ -199,13 +204,25 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
@@ -216,13 +221,25 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
setItemAnimator(null);
mLayoutScrollListener = new SuggestionLayoutScrollListener(context);
@@ -2189,9 +2190,9 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
ViewCompat.setPaddingRelative(this, 0, 0, 0, paddingBottom);
mStandardBgColor = shouldShowModernizeVisualUpdate
@@ -340,8 +357,16 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
try (TraceEvent tracing = TraceEvent.scoped("OmniboxSuggestionsList.Measure");
TimingMetric metric = OmniboxMetrics.recordSuggestionListMeasureTime()) {
@@ -358,8 +375,16 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
TimingMetric metric = OmniboxMetrics.recordSuggestionListMeasureTime();
TimingMetric metric2 = OmniboxMetrics.recordSuggestionListMeasureWallTime()) {
OmniboxAlignment omniboxAlignment = mEmbedder.getCurrentAlignment();
- maybeUpdateLayoutParams(omniboxAlignment.top);
- int availableViewportHeight = omniboxAlignment.height;
@@ -2208,7 +2209,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
int desiredWidth = omniboxAlignment.width;
adjustHorizontalPosition();
notifyObserversIfViewportHeightChanged(availableViewportHeight);
@@ -353,6 +378,12 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
@@ -371,6 +396,12 @@ public class OmniboxSuggestionsDropdown extends RecyclerView {
}
}
@@ -2250,7 +2251,7 @@ diff --git a/chrome/browser/ui/android/omnibox/java/src/org/chromium/chrome/brow
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -1771,6 +1771,12 @@ Your Google account may have other forms of browsing history like searches and a
@@ -1806,6 +1806,12 @@ Your Google account may have other forms of browsing history like searches and a
<message name="IDS_FORCE_TABLET_UI_TITLE" desc="Title of the preference that allows the user to update force tablet UI settings.">
Force Tablet Mode
</message>
@@ -2266,7 +2267,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
diff --git a/chrome/browser/ui/android/toolbar/BUILD.gn b/chrome/browser/ui/android/toolbar/BUILD.gn
--- a/chrome/browser/ui/android/toolbar/BUILD.gn
+++ b/chrome/browser/ui/android/toolbar/BUILD.gn
@@ -174,6 +174,7 @@ android_library("java") {
@@ -175,6 +175,7 @@ android_library("java") {
"//components/user_prefs/android:java",
"//content/public/android:content_java",
"//third_party/android_deps:material_design_java",
@@ -2602,7 +2603,7 @@ diff --git a/chrome/browser/ui/android/toolbar/java/src/org/chromium/chrome/brow
diff --git a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
--- a/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
+++ b/components/browser_ui/accessibility/android/java/res/xml/accessibility_preferences.xml
@@ -45,4 +45,8 @@ found in the LICENSE file.
@@ -49,4 +49,8 @@ found in the LICENSE file.
android:key="captions"
android:title="@string/accessibility_captions_title"/>
@@ -2641,7 +2642,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
@@ -132,6 +138,12 @@ public class AccessibilitySettings extends PreferenceFragmentCompat
@@ -128,6 +134,12 @@ public class AccessibilitySettings extends PreferenceFragmentCompat
forceTabletUiPref.setChecked(mForceTabletUIDelegate.isEnabled());
forceTabletUiPref.setOnPreferenceChangeListener(this);
@@ -2654,7 +2655,7 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c
Preference captions = findPreference(PREF_CAPTIONS);
captions.setOnPreferenceClickListener(preference -> {
Intent intent = new Intent(Settings.ACTION_CAPTIONING_SETTINGS);
@@ -191,7 +203,11 @@ public class AccessibilitySettings extends PreferenceFragmentCompat
@@ -198,7 +210,11 @@ public class AccessibilitySettings extends PreferenceFragmentCompat
mDelegate.getBrowserContextHandle(), (Integer) newValue);
} else if (PREF_PAGE_ZOOM_ALWAYS_SHOW.equals(preference.getKey())) {
PageZoomUtils.setShouldAlwaysShowZoomMenuItem((Boolean) newValue);
@@ -2669,17 +2670,17 @@ diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/c
diff --git a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java
--- a/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java
+++ b/components/browser_ui/accessibility/android/java/src/org/chromium/components/browser_ui/accessibility/AccessibilitySettingsDelegate.java
@@ -4,6 +4,8 @@
@@ -6,6 +6,8 @@ package org.chromium.components.browser_ui.accessibility;
package org.chromium.components.browser_ui.accessibility;
import android.content.Context;
+import android.app.Activity;
+
import androidx.annotation.NonNull;
import androidx.preference.PreferenceFragmentCompat;
@@ -27,6 +29,10 @@ public interface AccessibilitySettingsDelegate {
void setEnabled(boolean value);
@@ -43,6 +45,10 @@ public interface AccessibilitySettingsDelegate {
void setValue(int value);
}
+ void requestRestart(Activity activity);
@@ -2700,7 +2701,7 @@ diff --git a/content/browser/renderer_host/render_widget_host_view_android.cc b/
#include "cc/base/math_util.h"
#include "cc/slim/layer.h"
#include "components/viz/common/features.h"
@@ -852,6 +853,8 @@ void RenderWidgetHostViewAndroid::OnRenderFrameMetadataChangedBeforeActivation(
@@ -857,6 +858,8 @@ void RenderWidgetHostViewAndroid::OnRenderFrameMetadataChangedBeforeActivation(
// factor. Thus, |top_content_offset| in CSS pixels is also in DIPs.
float top_content_offset =
metadata.top_controls_height * metadata.top_controls_shown_ratio;
@@ -60,7 +60,7 @@ diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content
#include "components/metrics/single_sample_metrics.h"
#include "components/services/storage/privileged/mojom/indexed_db_control.mojom.h"
#include "components/services/storage/public/cpp/buckets/bucket_id.h"
@@ -3220,8 +3221,11 @@ void RenderProcessHostImpl::AppendRendererCommandLine(
@@ -3217,8 +3218,11 @@ void RenderProcessHostImpl::AppendRendererCommandLine(
PropagateBrowserCommandLineToRenderer(browser_command_line, command_line);
// Pass on the browser locale.
+2 -2
View File
@@ -40,7 +40,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/KeyboardShortcu
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java
@@ -2416,16 +2416,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
@@ -2398,16 +2398,6 @@ public abstract class ChromeActivity<C extends ChromeActivityComponent>
final Tab currentTab = getActivityTab();
@@ -60,7 +60,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActiv
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/customtabs/BaseCustomTabActivity.java
@@ -569,7 +569,7 @@ public abstract class BaseCustomTabActivity extends ChromeActivity<BaseCustomTab
@@ -580,7 +580,7 @@ public abstract class BaseCustomTabActivity extends ChromeActivity<BaseCustomTab
@Override
public boolean onMenuOrKeyboardAction(int id, boolean fromMenu) {
// Disable creating new tabs, bookmark, history, print, help, focus_url, etc.
+35 -34
View File
@@ -20,8 +20,8 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../init/ChromeBrowserInitializer.java | 3 +
.../PrivacyPreferencesManagerImpl.java | 42 ++++
.../settings/UserAgentPreferences.java | 188 ++++++++++++++++++
.../chromium/chrome/browser/tab/TabImpl.java | 89 ++++++++-
.../chromium/chrome/browser/tab/TabUtils.java | 24 ++-
.../chromium/chrome/browser/tab/TabImpl.java | 90 ++++++++-
.../chromium/chrome/browser/tab/TabUtils.java | 25 ++-
.../browser/android/content/content_utils.cc | 28 +++
.../preferences/browser_prefs_android.cc | 7 +
.../privacy_preferences_manager_impl.cc | 124 ++++++++++++
@@ -40,7 +40,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../browser/web_contents/web_contents_impl.cc | 4 +
.../framehost/NavigationControllerImpl.java | 3 +-
content/renderer/render_thread_impl.cc | 1 -
30 files changed, 748 insertions(+), 18 deletions(-)
30 files changed, 750 insertions(+), 18 deletions(-)
create mode 100644 chrome/android/java/res/layout/custom_useragent_preferences.xml
create mode 100644 chrome/android/java/res/xml/useragent_preferences.xml
create mode 100644 chrome/android/java/src/org/chromium/chrome/browser/settings/UserAgentPreferences.java
@@ -72,7 +72,7 @@ diff --git a/base/base_switches.h b/base/base_switches.h
diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
--- a/chrome/android/chrome_java_resources.gni
+++ b/chrome/android/chrome_java_resources.gni
@@ -658,4 +658,6 @@ chrome_java_resources = [
@@ -667,4 +667,6 @@ chrome_java_resources = [
"java/res/xml/privacy_preferences_v2.xml",
"java/res/xml/search_widget_info.xml",
"java/res/xml/tracing_preferences.xml",
@@ -82,7 +82,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -939,6 +939,7 @@ chrome_java_sources = [
@@ -951,6 +951,7 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/payments/ui/DimmingDialog.java",
"java/src/org/chromium/chrome/browser/payments/ui/LineItem.java",
"java/src/org/chromium/chrome/browser/payments/ui/PaymentAppComparator.java",
@@ -255,7 +255,7 @@ new file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrowserInitializer.java
@@ -48,6 +48,7 @@ import org.chromium.content_public.browser.BrowserStartupController;
@@ -50,6 +50,7 @@ import org.chromium.content_public.browser.BrowserStartupController;
import org.chromium.content_public.browser.DeviceUtils;
import org.chromium.content_public.browser.SpeechRecognition;
import org.chromium.net.NetworkChangeNotifier;
@@ -263,7 +263,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/init/ChromeBrow
import java.io.File;
import java.util.ArrayList;
@@ -307,11 +308,13 @@ public class ChromeBrowserInitializer {
@@ -304,11 +305,13 @@ public class ChromeBrowserInitializer {
@Override
public void onSuccess() {
@@ -281,7 +281,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/privacy/setting
--- a/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManagerImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManagerImpl.java
@@ -220,10 +220,52 @@ public class PrivacyPreferencesManagerImpl implements PrivacyPreferencesManager
PrivacyPreferencesManagerImplJni.get().setMetricsReportingEnabled(enabled);
return mCrashUploadPermittedSupplier;
}
+ @Override
@@ -529,19 +529,19 @@ new file mode 100644
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.java
@@ -29,7 +29,11 @@ import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.NativeMethods;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.base.metrics.RecordUserAction;
@@ -86,6 +86,11 @@ import org.chromium.content_public.browser.SelectionPopupController;
import org.chromium.chrome.browser.preferences.Pref;
import org.chromium.components.user_prefs.UserPrefs;
+import org.chromium.content_public.browser.NavigationController;
import org.chromium.base.supplier.ObservableSupplierImpl;
+import org.chromium.chrome.browser.preferences.ChromePreferenceKeys;
+import org.chromium.chrome.browser.preferences.SharedPreferencesManager;
+import org.chromium.components.embedder_support.util.UrlUtilities;
import org.chromium.base.supplier.Supplier;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ActivityUtils;
@@ -561,6 +565,32 @@ public class TabImpl implements Tab {
+
/**
* Implementation of the interface {@link Tab}. Contains and manages a {@link ContentView}.
* This class is not intended to be extended.
@@ -572,6 +577,32 @@ public class TabImpl implements Tab {
params.setOverrideUserAgent(calculateUserAgentOverrideOption(null));
}
@@ -574,7 +574,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
@TabLoadStatus
int result = loadUrlInternal(params, fixedUrl);
@@ -1483,8 +1513,15 @@ public class TabImpl implements Tab {
@@ -1457,8 +1488,15 @@ public class TabImpl implements Tab {
mWebContents.setImportance(mImportance);
@@ -592,7 +592,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
mContentView.addOnAttachStateChangeListener(mAttachStateChangeListener);
updateInteractableState();
@@ -1656,6 +1693,10 @@ public class TabImpl implements Tab {
@@ -1627,6 +1665,10 @@ public class TabImpl implements Tab {
}
mIsBeingRestored = true;
for (TabObserver observer : mObservers) observer.onRestoreStarted(this);
@@ -603,7 +603,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
} finally {
TraceEvent.end("Tab.restoreIfNeeded");
}
@@ -1792,6 +1833,13 @@ public class TabImpl implements Tab {
@@ -1838,6 +1880,13 @@ public class TabImpl implements Tab {
}
private @UserAgentOverrideOption int calculateUserAgentOverrideOption(@Nullable GURL url) {
@@ -617,7 +617,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
WebContents webContents = getWebContents();
boolean currentRequestDesktopSite = TabUtils.isUsingDesktopUserAgent(webContents);
@TabUserAgent
@@ -1859,6 +1907,43 @@ public class TabImpl implements Tab {
@@ -1905,6 +1954,43 @@ public class TabImpl implements Tab {
/* forcedByUser */ false, caller);
}
@@ -664,8 +664,8 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabImpl.jav
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabUtils.java
--- a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/tab/TabUtils.java
@@ -36,6 +36,10 @@ import org.chromium.ui.base.WindowAndroid;
import org.chromium.ui.display.DisplayAndroidManager;
@@ -40,6 +40,10 @@ import org.chromium.ui.display.DisplayAndroidManager;
import org.chromium.ui.display.DisplayUtil;
import org.chromium.url.GURL;
+import org.chromium.chrome.browser.app.tabmodel.TabWindowManagerSingleton;
@@ -675,7 +675,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabUtils.ja
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -156,17 +160,15 @@ public class TabUtils {
@@ -160,17 +164,16 @@ public class TabUtils {
// TODO(crbug.com/1413060): Remove param forcedByUser from TabUtils#switchUserAgent.
public static void switchUserAgent(
Tab tab, boolean switchToDesktop, boolean forcedByUser, int caller) {
@@ -689,7 +689,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabUtils.ja
- == switchToDesktop) {
- tabUserAgent = TabUserAgent.DEFAULT;
- }
- CriticalPersistedTabData.from(tab).setUserAgent(tabUserAgent);
- tab.setUserAgent(tabUserAgent);
+ SharedPreferencesManager.getInstance().writeBoolean(
+ ChromePreferenceKeys.USERAGENT_ALWAYS_DESKTOP_MODE, switchToDesktop);
+
@@ -699,6 +699,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/tab/TabUtils.ja
+ TabWindowManagerSingleton.getInstance().SetOverrideUserAgentForAllTabs(switchToDesktop);
+ } else {
+ tab.SetOverrideUserAgent(switchToDesktop, forcedByUser);
+ (UAZO) check this
}
}
@@ -911,7 +912,7 @@ diff --git a/chrome/browser/android/preferences/privacy_preferences_manager_impl
diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
--- a/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
+++ b/chrome/browser/preferences/android/java/src/org/chromium/chrome/browser/preferences/ChromePreferenceKeys.java
@@ -951,6 +951,9 @@ public final class ChromePreferenceKeys {
@@ -979,6 +979,9 @@ public final class ChromePreferenceKeys {
public static final String BLUETOOTH_NOTIFICATION_IDS = "Chrome.Bluetooth.NotificationIds";
public static final String USB_NOTIFICATION_IDS = "Chrome.USB.NotificationIds";
@@ -921,7 +922,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
/**
* These values are currently used as SharedPreferences keys, along with the keys in
* {@link LegacyChromePreferenceKeys#getKeysInUse()}. Add new SharedPreferences keys
@@ -1086,8 +1089,8 @@ public final class ChromePreferenceKeys {
@@ -1119,8 +1122,8 @@ public final class ChromePreferenceKeys {
SIGNIN_PROMO_NTP_LAST_SHOWN_TIME,
SYNC_PROMO_TOTAL_SHOW_COUNT,
SEARCH_RESUMPTION_MODULE_COLLAPSE_ON_NTP,
@@ -935,7 +936,7 @@ diff --git a/chrome/browser/preferences/android/java/src/org/chromium/chrome/bro
diff --git a/chrome/browser/privacy/settings/java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManager.java b/chrome/browser/privacy/settings/java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManager.java
--- a/chrome/browser/privacy/settings/java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManager.java
+++ b/chrome/browser/privacy/settings/java/src/org/chromium/chrome/browser/privacy/settings/PrivacyPreferencesManager.java
@@ -98,6 +98,14 @@ public interface PrivacyPreferencesManager extends CrashReportingPermissionManag
@@ -104,6 +104,14 @@ public interface PrivacyPreferencesManager extends CrashReportingPermissionManag
*/
boolean isMetricsReportingEnabled();
@@ -953,9 +954,9 @@ diff --git a/chrome/browser/privacy/settings/java/src/org/chromium/chrome/browse
diff --git a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/Tab.java b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/Tab.java
--- a/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/Tab.java
+++ b/chrome/browser/tab/java/src/org/chromium/chrome/browser/tab/Tab.java
@@ -286,6 +286,8 @@ public interface Tab extends TabLifecycle {
@@ -279,6 +279,8 @@ public interface Tab extends TabLifecycle {
*/
void setIsTabSaveEnabled(boolean isSaveEnabled);
void goForward();
+ void SetOverrideUserAgent(boolean usingDesktopUserAgent, boolean forcedByUser);
+
@@ -1050,7 +1051,7 @@ diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chro
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
@@ -1824,6 +1824,14 @@ inline constexpr char kNaviOnboardGroup[] = "browser.navi_onboard_group";
@@ -1807,6 +1807,14 @@ inline constexpr char kNaviOnboardGroup[] = "browser.navi_onboard_group";
inline constexpr char kHadThreeConsecutiveNotificationPermissionDenies[] =
"profile.content_settings.had_three_consecutive_denies.notifications";
@@ -1145,7 +1146,7 @@ diff --git a/content/browser/renderer_host/navigation_controller_android.h b/con
diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc
--- a/content/browser/renderer_host/render_process_host_impl.cc
+++ b/content/browser/renderer_host/render_process_host_impl.cc
@@ -3488,6 +3488,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
@@ -3484,6 +3484,7 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
switches::kLacrosUseChromeosProtectedMedia,
switches::kLacrosUseChromeosProtectedAv1,
#endif
@@ -1164,7 +1165,7 @@ diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser
#include "base/check_op.h"
#include "base/command_line.h"
#include "base/containers/contains.h"
@@ -2972,6 +2973,9 @@ const blink::web_pref::WebPreferences WebContentsImpl::ComputeWebPreferences() {
@@ -2996,6 +2997,9 @@ const blink::web_pref::WebPreferences WebContentsImpl::ComputeWebPreferences() {
#else
prefs.viewport_meta_enabled = false;
#endif
@@ -1197,7 +1198,7 @@ diff --git a/content/public/android/java/src/org/chromium/content/browser/frameh
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc
--- a/content/renderer/render_thread_impl.cc
+++ b/content/renderer/render_thread_impl.cc
@@ -918,7 +918,6 @@ void RenderThreadImpl::InitializeRenderer(
@@ -880,7 +880,6 @@ void RenderThreadImpl::InitializeRenderer(
const std::vector<std::string>& cors_exempt_header_list,
network::mojom::AttributionSupport attribution_support,
blink::mojom::OriginTrialsSettingsPtr origin_trials_settings) {
+3 -3
View File
@@ -27,7 +27,7 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_java_resources.gni
--- a/chrome/android/chrome_java_resources.gni
+++ b/chrome/android/chrome_java_resources.gni
@@ -515,6 +515,7 @@ chrome_java_resources = [
@@ -523,6 +523,7 @@ chrome_java_resources = [
"java/res/layout/find_in_page.xml",
"java/res/layout/find_toolbar.xml",
"java/res/layout/fre_tos_privacy_disclaimer.xml",
@@ -38,7 +38,7 @@ diff --git a/chrome/android/chrome_java_resources.gni b/chrome/android/chrome_ja
diff --git a/chrome/android/chrome_java_sources.gni b/chrome/android/chrome_java_sources.gni
--- a/chrome/android/chrome_java_sources.gni
+++ b/chrome/android/chrome_java_sources.gni
@@ -639,6 +639,8 @@ chrome_java_sources = [
@@ -650,6 +650,8 @@ chrome_java_sources = [
"java/src/org/chromium/chrome/browser/firstrun/SyncConsentFirstRunFragment.java",
"java/src/org/chromium/chrome/browser/firstrun/TabbedModeFirstRunActivity.java",
"java/src/org/chromium/chrome/browser/firstrun/TosDialogBehaviorSharedPrefInvalidator.java",
@@ -1234,7 +1234,7 @@ new file mode 100644
diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd
--- a/chrome/browser/ui/android/strings/android_chrome_strings.grd
+++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd
@@ -3263,7 +3263,29 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
@@ -3301,7 +3301,29 @@ To change this setting, <ph name="BEGIN_LINK">&lt;resetlink&gt;</ph>reset sync<p
<ph name="APP_NAME">%1$s<ex>Google Maps</ex></ph> will open in Chrome. By continuing, you agree to the <ph name="BEGIN_LINK1">&lt;LINK1&gt;</ph>Google Terms of Service<ph name="END_LINK1">&lt;/LINK1&gt;</ph>, and the <ph name="BEGIN_LINK2">&lt;LINK2&gt;</ph>Google Chrome and ChromeOS Additional Terms of Service<ph name="END_LINK2">&lt;/LINK2&gt;</ph>. The <ph name="BEGIN_LINK3">&lt;LINK3&gt;</ph>Privacy Policy<ph name="END_LINK3">&lt;/LINK3&gt;</ph> also applies.
</message>
<message name="IDS_FRE_ACCEPT_CONTINUE" desc="Text for first page accept and continue button [CHAR_LIMIT=20]">
+22 -19
View File
@@ -16,14 +16,14 @@ License: GPL-3.0-only - https://spdx.org/licenses/GPL-3.0-only.html
.../core/browser/autofill_download_manager.h | 2 -
.../core/browser/browser_autofill_manager.h | 4 +-
.../autofill/core/common/autofill_features.cc | 4 +-
.../autofill/core/common/autofill_prefs.cc | 8 ++--
.../autofill/core/common/autofill_prefs.cc | 10 ++---
.../password_generation_frame_helper.cc | 4 --
8 files changed, 19 insertions(+), 59 deletions(-)
8 files changed, 20 insertions(+), 60 deletions(-)
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -1078,11 +1078,11 @@ void RegisterProfilePrefsForMigration(
@@ -1133,11 +1133,11 @@ void RegisterProfilePrefsForMigration(
PrefRegistry::LOSSY_PREF);
// Deprecated 11/2022.
@@ -41,7 +41,7 @@ diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browse
diff --git a/chrome/browser/ui/autofill/chrome_autofill_client.cc b/chrome/browser/ui/autofill/chrome_autofill_client.cc
--- a/chrome/browser/ui/autofill/chrome_autofill_client.cc
+++ b/chrome/browser/ui/autofill/chrome_autofill_client.cc
@@ -200,12 +200,7 @@ ChromeAutofillClient::GetURLLoaderFactory() {
@@ -215,12 +215,7 @@ ChromeAutofillClient::GetURLLoaderFactory() {
}
AutofillDownloadManager* ChromeAutofillClient::GetDownloadManager() {
@@ -148,7 +148,7 @@ diff --git a/components/autofill/core/browser/autofill_download_manager.h b/comp
diff --git a/components/autofill/core/browser/browser_autofill_manager.h b/components/autofill/core/browser/browser_autofill_manager.h
--- a/components/autofill/core/browser/browser_autofill_manager.h
+++ b/components/autofill/core/browser/browser_autofill_manager.h
@@ -740,9 +740,9 @@ class BrowserAutofillManager : public AutofillManager,
@@ -766,9 +766,9 @@ class BrowserAutofillManager : public AutofillManager,
autocomplete_unrecognized_fallback_logger_;
// Have we logged whether Autofill is enabled for this page load?
@@ -163,7 +163,7 @@ diff --git a/components/autofill/core/browser/browser_autofill_manager.h b/compo
diff --git a/components/autofill/core/common/autofill_features.cc b/components/autofill/core/common/autofill_features.cc
--- a/components/autofill/core/common/autofill_features.cc
+++ b/components/autofill/core/common/autofill_features.cc
@@ -837,8 +837,8 @@ BASE_FEATURE(kAutofillLogToTerminal,
@@ -797,8 +797,8 @@ BASE_FEATURE(kAutofillLogToTerminal,
// "upload" resources.
// i.e., https://other.autofill.server:port/tbproxy/af/
BASE_FEATURE(kAutofillServerCommunication,
@@ -177,7 +177,7 @@ diff --git a/components/autofill/core/common/autofill_features.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
@@ -140,7 +140,7 @@ const char kAutofillUsingVirtualViewStructure[] =
@@ -144,7 +144,7 @@ const char kAutofillUsingVirtualViewStructure[] =
void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
// Synced prefs. Used for cross-device choices, e.g., credit card Autofill.
registry->RegisterBooleanPref(
@@ -186,7 +186,7 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterIntegerPref(
prefs::kAutofillLastVersionDeduped, 0,
@@ -152,10 +152,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
@@ -156,10 +156,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
prefs::kAutofillLastVersionDisusedAddressesDeleted, 0,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(
@@ -194,24 +194,27 @@ diff --git a/components/autofill/core/common/autofill_prefs.cc b/components/auto
+ prefs::kAutofillCreditCardEnabled, false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(
- prefs::kAutofillIbanEnabled, true,
+ prefs::kAutofillIbanEnabled, false,
- prefs::kAutofillPaymentCvcStorage, true,
+ prefs::kAutofillPaymentCvcStorage, false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
registry->RegisterBooleanPref(
prefs::kAutofillPaymentCvcStorage, true,
@@ -189,7 +189,7 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
// Non-synced prefs. Used for per-device choices, e.g., signin promo.
@@ -201,9 +201,9 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) {
#endif
// Deprecated prefs registered for migration.
registry->RegisterBooleanPref(
- prefs::kAutofillEnabledDeprecated, true,
+ prefs::kAutofillEnabledDeprecated, false,
user_prefs::PrefRegistrySyncable::SYNCABLE_PREF);
- registry->RegisterBooleanPref(prefs::kAutofillEnabledDeprecated, true);
+ registry->RegisterBooleanPref(prefs::kAutofillEnabledDeprecated, false);
registry->RegisterBooleanPref(prefs::kAutofillOrphanRowsRemoved, false);
- registry->RegisterBooleanPref(prefs::kAutofillIbanEnabled, true);
+ registry->RegisterBooleanPref(prefs::kAutofillIbanEnabled, false);
#if BUILDFLAG(IS_ANDROID)
registry->RegisterBooleanPref(prefs::kAutofillUsingVirtualViewStructure,
diff --git a/components/password_manager/core/browser/password_generation_frame_helper.cc b/components/password_manager/core/browser/password_generation_frame_helper.cc
--- a/components/password_manager/core/browser/password_generation_frame_helper.cc
+++ b/components/password_manager/core/browser/password_generation_frame_helper.cc
@@ -101,7 +101,6 @@ void PasswordGenerationFrameHelper::ProcessPasswordRequirements(
@@ -95,7 +95,6 @@ void PasswordGenerationFrameHelper::ProcessPasswordRequirements(
// In order for password generation to be enabled, we need to make sure:
// (1) Password sync is enabled, and
// (2) Password saving is enabled
@@ -219,7 +222,7 @@ diff --git a/components/password_manager/core/browser/password_generation_frame_
bool PasswordGenerationFrameHelper::IsGenerationEnabled(
bool log_debug_data) const {
std::unique_ptr<Logger> logger;
@@ -111,9 +110,6 @@ bool PasswordGenerationFrameHelper::IsGenerationEnabled(
@@ -105,9 +104,6 @@ bool PasswordGenerationFrameHelper::IsGenerationEnabled(
}
GURL url = driver_->GetLastCommittedURL();