Update to Chromium version 133.0.6886.0 (#1393452)

This commit is contained in:
Marshall Greenblatt
2024-12-09 12:58:46 -05:00
parent 5fcb2d36e5
commit 7dd2398be2
81 changed files with 634 additions and 722 deletions

View File

@ -891,7 +891,6 @@ source_set("libcef_static") {
"//chrome:strings",
"//chrome/common:buildflags",
"//chrome/services/printing:lib",
"//components/cdm/renderer",
"//components/certificate_transparency",
"//components/component_updater",
"//components/content_settings/core/browser",
@ -1344,6 +1343,7 @@ make_pack_header("strings") {
"$root_gen_dir/extensions/strings/grit/extensions_strings.h",
"$root_gen_dir/services/strings/grit/services_strings.h",
"$root_gen_dir/third_party/blink/public/strings/grit/blink_strings.h",
"$root_gen_dir/third_party/blink/public/strings/grit/permission_element_generated_strings.h",
"$root_gen_dir/third_party/blink/public/strings/grit/permission_element_strings.h",
"$root_gen_dir/ui/strings/grit/app_locale_settings.h",
"$root_gen_dir/ui/strings/grit/auto_image_annotation_strings.h",
@ -1363,6 +1363,7 @@ make_pack_header("strings") {
"//extensions/strings",
"//services/strings",
"//third_party/blink/public/strings",
"//third_party/blink/public/strings:permission_element_generated_strings",
"//third_party/blink/public/strings:permission_element_strings",
"//ui/strings:app_locale_settings",
"//ui/strings:auto_image_annotation_strings",

View File

@ -7,5 +7,5 @@
# https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding
{
'chromium_checkout': 'refs/tags/132.0.6834.0'
'chromium_checkout': 'refs/tags/133.0.6886.0'
}

View File

@ -42,13 +42,13 @@
// way that may cause binary incompatibility with other builds. The universal
// hash value will change if any platform is affected whereas the platform hash
// values will change only if that particular platform is affected.
#define CEF_API_HASH_UNIVERSAL "fc1554b64e963371717ccf0a2a5e686ef06dca88"
#define CEF_API_HASH_UNIVERSAL "e52a54bfb4cfc13366fe52766756180fc7d3d1b2"
#if defined(OS_WIN)
#define CEF_API_HASH_PLATFORM "3df9884666f0de7427ab99cb64c85b0e303d071e"
#define CEF_API_HASH_PLATFORM "ce7bfedc905e90407eb975eebf2f419a347b27cd"
#elif defined(OS_MAC)
#define CEF_API_HASH_PLATFORM "031cd25d4dfccd19e70133c4ed0efb6b7441b503"
#define CEF_API_HASH_PLATFORM "8bb21c09270905fe64b8c31f744e0cbf7bc39ff5"
#elif defined(OS_LINUX)
#define CEF_API_HASH_PLATFORM "9c32d35cea06c04ed0cff861ff873fea08bf5295"
#define CEF_API_HASH_PLATFORM "a8198f66f731c8ac91bba1e45847807bffca7b01"
#endif
#ifdef __cplusplus

View File

@ -3478,20 +3478,21 @@ typedef enum {
CEF_CPAIT_SAVE_CARD,
CEF_CPAIT_SEND_TAB_TO_SELF_DEPRECATED,
CEF_CPAIT_SHARING_HUB,
CEF_CPAIT_SIDE_SEARCH,
CEF_CPAIT_SIDE_SEARCH_DEPRECATED,
CEF_CPAIT_SMS_REMOTE_FETCHER,
CEF_CPAIT_TRANSLATE,
CEF_CPAIT_VIRTUAL_CARD_ENROLL,
CEF_CPAIT_VIRTUAL_CARD_MANUAL_FALLBACK,
CEF_CPAIT_VIRTUAL_CARD_INFORMATION,
CEF_CPAIT_ZOOM,
CEF_CPAIT_SAVE_IBAN,
CEF_CPAIT_MANDATORY_REAUTH,
CEF_CPAIT_PRICE_INSIGHTS,
CEF_CPAIT_PRICE_READ_ANYTHING,
CEF_CPAIT_READ_ANYTHING_DEPRECATED,
CEF_CPAIT_PRODUCT_SPECIFICATIONS,
CEF_CPAIT_LENS_OVERLAY,
CEF_CPAIT_DISCOUNTS,
CEF_CPAIT_MAX_VALUE = CEF_CPAIT_DISCOUNTS,
CEF_CPAIT_OPTIMIZATION_GUIDE,
CEF_CPAIT_MAX_VALUE = CEF_CPAIT_OPTIMIZATION_GUIDE,
} cef_chrome_page_action_icon_type_t;
///

View File

@ -478,6 +478,11 @@ typedef enum {
/// Content settings for private network access in the context of the
/// Direct Sockets API.
CEF_CONTENT_SETTING_TYPE_DIRECT_SOCKETS_PRIVATE_NETWORK_ACCESS,
/// Content settings for legacy cookie scope.
/// Checks whether cookies scope is handled according to origin-bound cookies
/// or legacy behavior.
CEF_CONTENT_SETTING_TYPE_LEGACY_COOKIE_SCOPE,
} cef_content_setting_types_t;
///

View File

@ -40,7 +40,7 @@ void StreamCreatorHelper(
mojo::PendingRemote<media::mojom::AudioInputStream> stream,
mojo::PendingReceiver<media::mojom::AudioInputStreamClient>
client_receiver,
media::mojom::ReadOnlyAudioDataPipePtr data_pipe) {
media::mojom::ReadWriteAudioDataPipePtr data_pipe) {
mojo::Remote<mirroring::mojom::AudioStreamCreatorClient>
audio_client(std::move(client));
audio_client->StreamCreated(std::move(stream),
@ -100,8 +100,7 @@ void CefAudioCapturer::OnCaptureStarted() {
void CefAudioCapturer::Capture(const media::AudioBus* source,
base::TimeTicks audio_capture_time,
const media::AudioGlitchInfo& /*glitch_info*/,
double /*volume*/,
bool /*key_pressed*/) {
double /*volume*/) {
const int channels = source->channels();
std::array<const float*, media::CHANNELS_MAX> data;
DCHECK(channels == channels_);

View File

@ -33,8 +33,7 @@ class CefAudioCapturer : public media::AudioCapturerSource::CaptureCallback {
void Capture(const media::AudioBus* audio_source,
base::TimeTicks audio_capture_time,
const media::AudioGlitchInfo& glitch_info,
double volume,
bool key_pressed) override;
double volume) override;
void OnCaptureError(media::AudioCapturerSource::ErrorCode code,
const std::string& message) override;
void OnCaptureMuted(bool is_muted) override {}

View File

@ -16,7 +16,6 @@
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/render_frame_host.h"
#include "media/audio/audio_device_description.h"
#include "media/base/user_input_monitor.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/self_owned_receiver.h"
#include "third_party/blink/public/mojom/media/renderer_audio_input_stream_factory.mojom.h"
@ -46,7 +45,7 @@ class StreamCreatedCallbackAdapter final
mojo::PendingRemote<media::mojom::AudioInputStream> stream,
mojo::PendingReceiver<media::mojom::AudioInputStreamClient>
client_receiver,
media::mojom::ReadOnlyAudioDataPipePtr data_pipe,
media::mojom::ReadWriteAudioDataPipePtr data_pipe,
bool initially_muted,
const std::optional<base::UnguessableToken>& stream_id) override {
DCHECK(!initially_muted); // Loopback streams shouldn't be started muted.
@ -90,13 +89,7 @@ void CreateSystemWideLoopbackStreamHelper(
} // namespace
CefAudioLoopbackStreamCreator::CefAudioLoopbackStreamCreator()
: factory_(nullptr,
content::BrowserMainLoop::GetInstance()
? static_cast<media::UserInputMonitorBase*>(
content::BrowserMainLoop::GetInstance()
->user_input_monitor())
: nullptr,
content::AudioStreamBrokerFactory::CreateImpl()) {
: factory_(nullptr, content::AudioStreamBrokerFactory::CreateImpl()) {
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
}

View File

@ -36,7 +36,7 @@ class CefAudioLoopbackStreamCreator final {
mojo::PendingRemote<media::mojom::AudioInputStream> stream,
mojo::PendingReceiver<media::mojom::AudioInputStreamClient>
client_receiver,
media::mojom::ReadOnlyAudioDataPipePtr data_pipe)>;
media::mojom::ReadWriteAudioDataPipePtr data_pipe)>;
// Creates a loopback stream that captures the audio from |loopback_source|,
// or the default system playback if |loopback_source| is null. Local output

View File

@ -599,6 +599,7 @@ ChromeContentBrowserClientCef::CreateLoginDelegate(
const GURL& url,
scoped_refptr<net::HttpResponseHeaders> response_headers,
bool first_auth_attempt,
content::GuestPageHolder* guest,
LoginAuthRequiredCallback auth_required_callback) {
// |web_contents| is nullptr for CefURLRequests without an associated frame.
if (!web_contents || base::CommandLine::ForCurrentProcess()->HasSwitch(
@ -612,7 +613,7 @@ ChromeContentBrowserClientCef::CreateLoginDelegate(
return ChromeContentBrowserClient::CreateLoginDelegate(
auth_info, web_contents, browser_context, request_id,
is_request_for_primary_main_frame_navigation, is_request_for_navigation,
url, response_headers, first_auth_attempt,
url, response_headers, first_auth_attempt, guest,
std::move(auth_required_callback));
}

View File

@ -132,6 +132,7 @@ class ChromeContentBrowserClientCef : public ChromeContentBrowserClient {
const GURL& url,
scoped_refptr<net::HttpResponseHeaders> response_headers,
bool first_auth_attempt,
content::GuestPageHolder* guest,
LoginAuthRequiredCallback auth_required_callback) override;
void ExposeInterfacesToRenderer(
service_manager::BinderRegistry* registry,

View File

@ -187,6 +187,13 @@ void ChromeBrowserFrame::Activate() {
}
void ChromeBrowserFrame::OnNativeWidgetDestroyed() {
// Remove the listener registration added in BrowserView::InitBrowser().
if (browser_view()) {
if (auto focus_manager = browser_view()->GetFocusManager()) {
focus_manager->RemoveFocusChangeListener(browser_view());
}
}
window_view_ = nullptr;
SetBrowserView(nullptr);
BrowserFrame::OnNativeWidgetDestroyed();

View File

@ -34,8 +34,8 @@ bool CefDevToolsController::SendDevToolsMessage(
return false;
}
agent_host_->DispatchProtocolMessage(
this, base::as_bytes(base::make_span(message)));
agent_host_->DispatchProtocolMessage(this,
base::as_bytes(base::span(message)));
return true;
}
@ -69,7 +69,7 @@ int CefDevToolsController::ExecuteDevToolsMethod(
}
agent_host_->DispatchProtocolMessage(
this, base::as_bytes(base::make_span(protocol_message)));
this, base::as_bytes(base::span(protocol_message)));
return message_id;
}

View File

@ -284,7 +284,7 @@ void CefMenuManager::MenuClosed(CefRefPtr<CefMenuModelImpl> source) {
// Notify the host after closing the context menu.
web_contents()->SetShowingContextMenu(false);
web_contents()->NotifyContextMenuClosed(params_.link_followed);
web_contents()->NotifyContextMenuClosed(params_.link_followed, std::nullopt);
}
bool CefMenuManager::FormatLabel(CefRefPtr<CefMenuModelImpl> source,

View File

@ -15,7 +15,7 @@ namespace {
void UpdateCRLSet(const std::string& crl_set_bytes) {
CEF_REQUIRE_UIT();
content::GetCertVerifierServiceFactory()->UpdateCRLSet(
base::as_bytes(base::make_span(crl_set_bytes)), base::DoNothing());
base::as_bytes(base::span(crl_set_bytes)), base::DoNothing());
}
void LoadFromDisk(const base::FilePath& path) {

View File

@ -201,10 +201,10 @@ void SaveCookiesOnUIThread(
cookie));
}
SetCanonicalCookieCallback(
progress, net::CanonicalCookie(),
net::CookieAccessResult(net::CookieInclusionStatus(
net::CookieInclusionStatus::EXCLUDE_UNKNOWN_ERROR)));
net::CookieInclusionStatus status;
status.AddExclusionReason(net::CookieInclusionStatus::EXCLUDE_UNKNOWN_ERROR);
SetCanonicalCookieCallback(progress, net::CanonicalCookie(),
net::CookieAccessResult(std::move(status)));
}
} // namespace

View File

@ -305,9 +305,10 @@ bool CefCookieManagerImpl::SetCookieInternal(
/*partition_key=*/std::nullopt, /*status=*/nullptr);
if (!canonical_cookie) {
SetCookieCallbackImpl(
callback, net::CookieAccessResult(net::CookieInclusionStatus(
net::CookieInclusionStatus::EXCLUDE_UNKNOWN_ERROR)));
net::CookieInclusionStatus status;
status.AddExclusionReason(
net::CookieInclusionStatus::EXCLUDE_UNKNOWN_ERROR);
SetCookieCallbackImpl(callback, net::CookieAccessResult(std::move(status)));
return true;
}

View File

@ -633,17 +633,9 @@ bool CefCrashReporterClient::GetCrashDumpLocation(std::wstring* crash_dir) {
#elif BUILDFLAG(IS_POSIX)
void CefCrashReporterClient::GetProductNameAndVersion(const char** product_name,
const char** version) {
*product_name = product_name_.c_str();
*version = product_version_.c_str();
}
void CefCrashReporterClient::GetProductNameAndVersion(std::string* product_name,
std::string* version,
std::string* channel) {
*product_name = product_name_;
*version = product_version_;
void CefCrashReporterClient::GetProductInfo(ProductInfo* product_info) {
product_info->product_name = product_name_;
product_info->version = product_version_;
}
bool CefCrashReporterClient::GetCrashDumpLocation(base::FilePath* crash_dir) {

View File

@ -50,11 +50,7 @@ class CefCrashReporterClient : public crash_reporter::CrashReporterClient {
std::wstring* channel_name) override;
bool GetCrashDumpLocation(std::wstring* crash_dir) override;
#elif BUILDFLAG(IS_POSIX)
void GetProductNameAndVersion(const char** product_name,
const char** version) override;
void GetProductNameAndVersion(std::string* product_name,
std::string* version,
std::string* channel) override;
void GetProductInfo(ProductInfo* product_info) override;
bool GetCrashDumpLocation(base::FilePath* crash_dir) override;
#endif // BUILDFLAG(IS_POSIX)

View File

@ -1165,7 +1165,8 @@ void CefPostDataElementImpl::Get(network::ResourceRequestBody& body) const {
base::AutoLock lock_scope(lock_);
if (type_ == PDE_TYPE_BYTES) {
body.AppendBytes(static_cast<char*>(data_.bytes.bytes), data_.bytes.size);
body.AppendCopyOfBytes(
base::span(static_cast<uint8_t*>(data_.bytes.bytes), data_.bytes.size));
} else if (type_ == PDE_TYPE_FILE) {
base::FilePath path = base::FilePath(CefString(&data_.filename));
body.AppendFileRange(path, 0, std::numeric_limits<uint64_t>::max(),

View File

@ -494,7 +494,7 @@ CefRefPtr<CefBinaryValue> CefBinaryValue::Create(const void* data,
}
const auto ptr = static_cast<const uint8_t*>(data);
return new CefBinaryValueImpl(base::make_span(ptr, data_size));
return new CefBinaryValueImpl(base::span(ptr, data_size));
}
// static

View File

@ -1,5 +1,5 @@
diff --git base/command_line.cc base/command_line.cc
index fd6792a0599e2..4cf7bb3ceb226 100644
index 3631cee09fa31..475a144c1bb5b 100644
--- base/command_line.cc
+++ base/command_line.cc
@@ -389,11 +389,10 @@ void CommandLine::AppendSwitchNative(std::string_view switch_string,

View File

@ -1,8 +1,8 @@
diff --git base/BUILD.gn base/BUILD.gn
index 5dee8a9226d24..a8215969e3494 100644
index 64189952b8b44..ef392991ed526 100644
--- base/BUILD.gn
+++ base/BUILD.gn
@@ -43,6 +43,7 @@ import("//build/rust/rust_static_library.gni")
@@ -42,6 +42,7 @@ import("//build/rust/rust_static_library.gni")
import("//build/timestamp.gni")
import("//build/util/process_version.gni")
import("//build_overrides/build.gni")
@ -10,7 +10,7 @@ index 5dee8a9226d24..a8215969e3494 100644
import("//testing/libfuzzer/fuzzer_test.gni")
import("//testing/test.gni")
@@ -1483,7 +1484,11 @@ component("base") {
@@ -1493,7 +1494,11 @@ component("base") {
"hash/md5_constexpr_internal.h",
"hash/sha1.h",
]
@ -23,7 +23,7 @@ index 5dee8a9226d24..a8215969e3494 100644
sources += [
"hash/md5_nacl.cc",
"hash/md5_nacl.h",
@@ -1916,6 +1921,12 @@ component("base") {
@@ -1935,6 +1940,12 @@ component("base") {
defines += [ "COM_INIT_CHECK_HOOK_DISABLED" ]
}
@ -88,7 +88,7 @@ index 2158b648ca58a..8a8cb13b2fd74 100644
#else
#include "base/hash/sha1_boringssl.h"
diff --git base/json/json_reader.cc base/json/json_reader.cc
index b3db0dea0fff6..e53ff0049559a 100644
index af1d4f46d02c9..953585804c177 100644
--- base/json/json_reader.cc
+++ base/json/json_reader.cc
@@ -12,8 +12,9 @@
@ -111,7 +111,7 @@ index b3db0dea0fff6..e53ff0049559a 100644
namespace {
using serde_json_lenient::ContextPointer;
@@ -134,16 +135,16 @@ JSONReader::Result DecodeJSONInRust(std::string_view json,
@@ -129,16 +130,16 @@ JSONReader::Result DecodeJSONInRust(std::string_view json,
} // anonymous namespace
@ -131,7 +131,7 @@ index b3db0dea0fff6..e53ff0049559a 100644
SCOPED_UMA_HISTOGRAM_TIMER_MICROS(kSecurityJsonParsingTime);
if (UsingRust()) {
JSONReader::Result result = DecodeJSONInRust(json, options, max_depth);
@@ -155,7 +156,7 @@ std::optional<Value> JSONReader::Read(std::string_view json,
@@ -150,7 +151,7 @@ std::optional<Value> JSONReader::Read(std::string_view json,
internal::JSONParser parser(options, max_depth);
return parser.Parse(json);
}
@ -140,7 +140,7 @@ index b3db0dea0fff6..e53ff0049559a 100644
}
// static
@@ -173,7 +174,7 @@ std::optional<Value::Dict> JSONReader::ReadDict(std::string_view json,
@@ -168,7 +169,7 @@ std::optional<Value::Dict> JSONReader::ReadDict(std::string_view json,
JSONReader::Result JSONReader::ReadAndReturnValueWithError(
std::string_view json,
int options) {
@ -149,7 +149,7 @@ index b3db0dea0fff6..e53ff0049559a 100644
internal::JSONParser parser(options);
auto value = parser.Parse(json);
if (!value) {
@@ -185,7 +186,7 @@ JSONReader::Result JSONReader::ReadAndReturnValueWithError(
@@ -180,7 +181,7 @@ JSONReader::Result JSONReader::ReadAndReturnValueWithError(
}
return std::move(*value);
@ -158,7 +158,7 @@ index b3db0dea0fff6..e53ff0049559a 100644
SCOPED_UMA_HISTOGRAM_TIMER_MICROS(kSecurityJsonParsingTime);
if (UsingRust()) {
return DecodeJSONInRust(json, options, internal::kAbsoluteMaxDepth);
@@ -202,7 +203,7 @@ JSONReader::Result JSONReader::ReadAndReturnValueWithError(
@@ -197,7 +198,7 @@ JSONReader::Result JSONReader::ReadAndReturnValueWithError(
return std::move(*value);
}
@ -167,7 +167,7 @@ index b3db0dea0fff6..e53ff0049559a 100644
}
// static
@@ -213,7 +214,7 @@ bool JSONReader::UsingRust() {
@@ -208,7 +209,7 @@ bool JSONReader::UsingRust() {
if (!base::FeatureList::GetInstance()) {
return false;
}
@ -177,7 +177,7 @@ index b3db0dea0fff6..e53ff0049559a 100644
#else
return base::FeatureList::IsEnabled(base::features::kUseRustJsonParser);
diff --git base/logging.cc base/logging.cc
index 508ce135131aa..4158b7d5273b0 100644
index 59826a95b518e..d6728112294fd 100644
--- base/logging.cc
+++ base/logging.cc
@@ -60,6 +60,7 @@

View File

@ -88,10 +88,10 @@ index f5191b804bc07..aadb7d66ba4c3 100644
+
#endif // BASE_TEST_TEST_TRACE_PROCESSOR_EXPORT_H_
diff --git content/shell/BUILD.gn content/shell/BUILD.gn
index 14192d15579a2..d6affd97970d5 100644
index 16f1d673591f4..4d485a4f6fd24 100644
--- content/shell/BUILD.gn
+++ content/shell/BUILD.gn
@@ -914,7 +914,6 @@ if (is_mac) {
@@ -916,7 +916,6 @@ if (is_mac) {
# Specify a sensible install_name for static builds. The library is
# dlopen()ed so this is not used to resolve the module.
ldflags = [ "-Wl,-install_name,@executable_path/../Frameworks/$output_name.framework/$output_name" ]

View File

@ -20,10 +20,10 @@ index d4d1572304587..35fa3abc12213 100644
// Make an exception to allow most visited tiles to commit in third-party
diff --git content/browser/renderer_host/navigation_request.cc content/browser/renderer_host/navigation_request.cc
index f8e18b15a1951..68c9991a962f7 100644
index e919dcd7acf87..93fc464c57ca5 100644
--- content/browser/renderer_host/navigation_request.cc
+++ content/browser/renderer_host/navigation_request.cc
@@ -8255,10 +8255,22 @@ NavigationRequest::GetOriginForURLLoaderFactoryBeforeResponseWithDebugInfo(
@@ -8278,10 +8278,22 @@ NavigationRequest::GetOriginForURLLoaderFactoryBeforeResponseWithDebugInfo(
bool use_opaque_origin =
(sandbox_flags & network::mojom::WebSandboxFlags::kOrigin) ==
network::mojom::WebSandboxFlags::kOrigin;
@ -47,7 +47,7 @@ index f8e18b15a1951..68c9991a962f7 100644
}
return origin_and_debug_info;
@@ -8366,11 +8378,20 @@ NavigationRequest::GetOriginForURLLoaderFactoryAfterResponseWithDebugInfo() {
@@ -8389,11 +8401,20 @@ NavigationRequest::GetOriginForURLLoaderFactoryAfterResponseWithDebugInfo() {
DetermineInitiatorRelationship(initiator_rfh,
frame_tree_node_->current_frame_host()));

View File

@ -1,8 +1,8 @@
diff --git build/config/compiler/BUILD.gn build/config/compiler/BUILD.gn
index f58320b88f207..261181781fc72 100644
index 9c9f616b2a4e1..448cc18a076ac 100644
--- build/config/compiler/BUILD.gn
+++ build/config/compiler/BUILD.gn
@@ -133,6 +133,9 @@ declare_args() {
@@ -132,6 +132,9 @@ declare_args() {
# The cache can lead to non-determinism: https://crbug.com/1486045
thin_lto_enable_cache = true
@ -12,7 +12,7 @@ index f58320b88f207..261181781fc72 100644
# Initialize all local variables with a pattern. This flag will fill
# uninitialized floating-point types (and 32-bit pointers) with 0xFF and the
# rest with 0xAA. This makes behavior of uninitialized memory bugs consistent,
@@ -2306,6 +2309,7 @@ config("export_dynamic") {
@@ -2303,6 +2306,7 @@ config("export_dynamic") {
# 2. Remove the thin_archive config, so that the .a file actually contains all
# .o files, instead of just references to .o files in the build directoy
config("thin_archive") {
@ -20,7 +20,7 @@ index f58320b88f207..261181781fc72 100644
if ((is_apple && use_lld) || (is_linux && !is_clang)) {
# The macOS and iOS linker ld64.ldd doesn't support thin archive without
# symbol table, gcc on linux also throws the error `archive has no index`.
@@ -2323,6 +2327,7 @@ config("thin_archive") {
@@ -2320,6 +2324,7 @@ config("thin_archive") {
} else if (is_win && use_lld) {
arflags = [ "/llvmlibthin" ]
}

View File

@ -1,5 +1,5 @@
diff --git chrome/browser/BUILD.gn chrome/browser/BUILD.gn
index 1a136cdeb8aea..27238c9fccc56 100644
index 5d5e14b0d8053..1f8101d8269e9 100644
--- chrome/browser/BUILD.gn
+++ chrome/browser/BUILD.gn
@@ -12,6 +12,7 @@ import("//build/config/compiler/pgo/pgo.gni")
@ -10,15 +10,15 @@ index 1a136cdeb8aea..27238c9fccc56 100644
import("//chrome/browser/buildflags.gni")
import("//chrome/browser/downgrade/buildflags.gni")
import("//chrome/browser/request_header_integrity/buildflags.gni")
@@ -1835,6 +1836,7 @@ static_library("browser") {
"//build/config/chromebox_for_meetings:buildflags",
@@ -1841,6 +1842,7 @@ static_library("browser") {
"//build/config/compiler:compiler_buildflags",
"//build/config/linux/dbus:buildflags",
"//cc",
+ "//cef/libcef/features",
"//chrome:extra_resources",
"//chrome:resources",
"//chrome:strings",
@@ -2508,6 +2510,10 @@ static_library("browser") {
@@ -2520,6 +2522,10 @@ static_library("browser") {
sources += [ "net/net_error_diagnostics_dialog_stub.cc" ]
}

View File

@ -13,7 +13,7 @@ index 2480282a19d12..dbd1fbf8a15b5 100644
return false;
}
diff --git chrome/browser/devtools/devtools_window.cc chrome/browser/devtools/devtools_window.cc
index faead4388ac00..ce1cc050c94b0 100644
index 4aaba212926f4..e8aadb2c97fe9 100644
--- chrome/browser/devtools/devtools_window.cc
+++ chrome/browser/devtools/devtools_window.cc
@@ -38,6 +38,7 @@
@ -24,7 +24,7 @@ index faead4388ac00..ce1cc050c94b0 100644
#include "chrome/browser/ui/browser_list.h"
#include "chrome/browser/ui/browser_tabstrip.h"
#include "chrome/browser/ui/browser_window.h"
@@ -1230,6 +1231,13 @@ DevToolsWindow* DevToolsWindow::Create(
@@ -1221,6 +1222,13 @@ DevToolsWindow* DevToolsWindow::Create(
!browser->is_type_normal()) {
can_dock = false;
}
@ -38,7 +38,7 @@ index faead4388ac00..ce1cc050c94b0 100644
}
// Create WebContents with devtools.
@@ -1689,9 +1697,13 @@ void DevToolsWindow::OpenInNewTab(const GURL& url) {
@@ -1680,9 +1688,13 @@ void DevToolsWindow::OpenInNewTab(const GURL& url) {
if (!inspected_web_contents ||
!inspected_web_contents->OpenURL(params,
/*navigation_handle_callback=*/{})) {
@ -52,7 +52,7 @@ index faead4388ac00..ce1cc050c94b0 100644
}
}
@@ -1854,12 +1866,28 @@ void DevToolsWindow::CreateDevToolsBrowser() {
@@ -1845,12 +1857,28 @@ void DevToolsWindow::CreateDevToolsBrowser() {
Browser::CreationStatus::kOk) {
return;
}
@ -88,7 +88,7 @@ index faead4388ac00..ce1cc050c94b0 100644
}
diff --git chrome/browser/ui/BUILD.gn chrome/browser/ui/BUILD.gn
index df9b0eed07761..a984511be272a 100644
index 977b3222c8f7c..ee71bf3a1a463 100644
--- chrome/browser/ui/BUILD.gn
+++ chrome/browser/ui/BUILD.gn
@@ -8,6 +8,7 @@ import("//build/config/compiler/compiler.gni")
@ -99,7 +99,7 @@ index df9b0eed07761..a984511be272a 100644
import("//chrome/browser/buildflags.gni")
import("//chrome/common/features.gni")
import("//chromeos/ash/components/assistant/assistant.gni")
@@ -297,6 +298,10 @@ static_library("ui") {
@@ -303,6 +304,10 @@ static_library("ui") {
"//build/config/compiler:wexit_time_destructors",
]
@ -110,15 +110,15 @@ index df9b0eed07761..a984511be272a 100644
public_deps = [
# WARNING WARNING WARNING
# New dependencies outside of //chrome/browser should be added to
@@ -323,6 +328,7 @@ static_library("ui") {
"//build:chromeos_buildflags",
@@ -331,6 +336,7 @@ static_library("ui") {
"//build/config/chromebox_for_meetings:buildflags",
"//build/config/linux/dbus:buildflags",
"//cc/paint",
+ "//cef/libcef/features",
"//chrome:resources",
"//chrome:strings",
"//chrome/app:chrome_dll_resources",
@@ -688,6 +694,10 @@ static_library("ui") {
@@ -699,6 +705,10 @@ static_library("ui") {
deps += [ "//components/plus_addresses/resources:vector_icons" ]
}
@ -129,7 +129,7 @@ index df9b0eed07761..a984511be272a 100644
# TODO(crbug.com/41437292): Remove this circular dependency.
# Any circular includes must depend on the target "//chrome/browser:browser_public_dependencies".
# These are all-platform circular includes.
@@ -5479,6 +5489,7 @@ static_library("ui") {
@@ -5487,6 +5497,7 @@ static_library("ui") {
if (enable_printing) {
deps += [
"//components/printing/browser",
@ -138,10 +138,10 @@ index df9b0eed07761..a984511be272a 100644
]
}
diff --git chrome/browser/ui/browser.cc chrome/browser/ui/browser.cc
index f313979ca1b0a..c1f63c4a1cda5 100644
index a62c82aab7a35..cbd8c87aba959 100644
--- chrome/browser/ui/browser.cc
+++ chrome/browser/ui/browser.cc
@@ -270,6 +270,25 @@
@@ -269,6 +269,25 @@
#include "components/captive_portal/content/captive_portal_tab_helper.h"
#endif
@ -167,7 +167,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
#if BUILDFLAG(ENABLE_EXTENSIONS)
#include "chrome/browser/extensions/extension_browser_window_helper.h"
#endif
@@ -559,6 +578,10 @@ Browser::Browser(const CreateParams& params)
@@ -558,6 +577,10 @@ Browser::Browser(const CreateParams& params)
type_(params.type),
profile_(params.profile),
window_(nullptr),
@ -178,7 +178,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
tab_strip_model_delegate_(
std::make_unique<chrome::BrowserTabStripModelDelegate>(this)),
tab_strip_model_(std::make_unique<TabStripModel>(
@@ -789,6 +812,12 @@ Browser::~Browser() {
@@ -788,6 +811,12 @@ Browser::~Browser() {
// away so they don't try and call back to us.
if (select_file_dialog_.get())
select_file_dialog_->ListenerDestroyed();
@ -191,7 +191,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
}
///////////////////////////////////////////////////////////////////////////////
@@ -1375,6 +1404,8 @@ void Browser::WindowFullscreenStateChanged() {
@@ -1407,6 +1436,8 @@ void Browser::WindowFullscreenStateChanged() {
->WindowFullscreenStateChanged();
command_controller_->FullscreenStateChanged();
UpdateBookmarkBarState(BOOKMARK_BAR_STATE_CHANGE_TOGGLE_FULLSCREEN);
@ -200,7 +200,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
}
void Browser::FullscreenTopUIStateChanged() {
@@ -1694,6 +1725,14 @@ content::KeyboardEventProcessingResult Browser::PreHandleKeyboardEvent(
@@ -1726,6 +1757,14 @@ content::KeyboardEventProcessingResult Browser::PreHandleKeyboardEvent(
if (exclusive_access_manager_->HandleUserKeyEvent(event))
return content::KeyboardEventProcessingResult::HANDLED;
@ -215,7 +215,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
return window()->PreHandleKeyboardEvent(event);
}
@@ -1701,8 +1740,18 @@ bool Browser::HandleKeyboardEvent(content::WebContents* source,
@@ -1733,8 +1772,18 @@ bool Browser::HandleKeyboardEvent(content::WebContents* source,
const NativeWebKeyboardEvent& event) {
DevToolsWindow* devtools_window =
DevToolsWindow::GetInstanceForInspectedWebContents(source);
@ -236,7 +236,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
}
bool Browser::TabsNeedBeforeUnloadFired() const {
@@ -1795,9 +1844,14 @@ bool Browser::IsBackForwardCacheSupported(content::WebContents& web_contents) {
@@ -1826,9 +1875,14 @@ bool Browser::IsBackForwardCacheSupported(content::WebContents& web_contents) {
content::PreloadingEligibility Browser::IsPrerender2Supported(
content::WebContents& web_contents) {
@ -251,7 +251,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
}
bool Browser::ShouldShowStaleContentOnEviction(content::WebContents* source) {
@@ -1857,6 +1911,14 @@ WebContents* Browser::OpenURLFromTab(
@@ -1888,6 +1942,14 @@ WebContents* Browser::OpenURLFromTab(
std::move(navigation_handle_callback));
}
@ -266,7 +266,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
NavigateParams nav_params(this, params.url, params.transition);
nav_params.FillNavigateParamsFromOpenURLParams(params);
nav_params.source_contents = source;
@@ -2023,6 +2085,8 @@ void Browser::LoadingStateChanged(WebContents* source,
@@ -2054,6 +2116,8 @@ void Browser::LoadingStateChanged(WebContents* source,
bool should_show_loading_ui) {
ScheduleUIUpdate(source, content::INVALIDATE_TYPE_LOAD);
UpdateWindowForLoadingStateChanged(source, should_show_loading_ui);
@ -275,7 +275,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
}
void Browser::CloseContents(WebContents* source) {
@@ -2051,6 +2115,8 @@ void Browser::SetContentsBounds(WebContents* source, const gfx::Rect& bounds) {
@@ -2082,6 +2146,8 @@ void Browser::SetContentsBounds(WebContents* source, const gfx::Rect& bounds) {
}
void Browser::UpdateTargetURL(WebContents* source, const GURL& url) {
@ -284,7 +284,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
if (!GetStatusBubble())
return;
@@ -2058,6 +2124,17 @@ void Browser::UpdateTargetURL(WebContents* source, const GURL& url) {
@@ -2089,6 +2155,17 @@ void Browser::UpdateTargetURL(WebContents* source, const GURL& url) {
GetStatusBubble()->SetURL(url);
}
@ -302,7 +302,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
void Browser::ContentsMouseEvent(WebContents* source, const ui::Event& event) {
const ui::EventType type = event.type();
const bool exited = type == ui::EventType::kMouseExited;
@@ -2086,6 +2163,19 @@ bool Browser::TakeFocus(content::WebContents* source, bool reverse) {
@@ -2117,6 +2194,19 @@ bool Browser::TakeFocus(content::WebContents* source, bool reverse) {
return false;
}
@ -322,10 +322,10 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
void Browser::BeforeUnloadFired(WebContents* web_contents,
bool proceed,
bool* proceed_to_fire_unload) {
@@ -2185,12 +2275,24 @@ void Browser::WebContentsCreated(WebContents* source_contents,
// Make the tab show up in the task manager.
task_manager::WebContentsTags::CreateForTabContents(new_contents);
@@ -2213,12 +2303,24 @@ void Browser::WebContentsCreated(WebContents* source_contents,
// will later be inserted into this browser using Browser::Navigate via
// AddNewContents.
TabHelpers::AttachTabHelpers(new_contents);
+
+ CALL_CEF_DELEGATE(WebContentsCreated, source_contents,
+ opener_render_process_id, opener_render_frame_id,
@ -347,7 +347,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
// Don't show the page hung dialog when a HTML popup hangs because
// the dialog will take the focus and immediately close the popup.
RenderWidgetHostView* view = render_widget_host->GetView();
@@ -2203,6 +2305,13 @@ void Browser::RendererUnresponsive(
@@ -2231,6 +2333,13 @@ void Browser::RendererUnresponsive(
void Browser::RendererResponsive(
WebContents* source,
content::RenderWidgetHost* render_widget_host) {
@ -361,7 +361,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
RenderWidgetHostView* view = render_widget_host->GetView();
if (view && !render_widget_host->GetView()->IsHTMLFormPopup()) {
TabDialogs::FromWebContents(source)->HideHungRendererDialog(
@@ -2212,6 +2321,15 @@ void Browser::RendererResponsive(
@@ -2240,6 +2349,15 @@ void Browser::RendererResponsive(
content::JavaScriptDialogManager* Browser::GetJavaScriptDialogManager(
WebContents* source) {
@ -377,7 +377,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
return javascript_dialogs::TabModalDialogManager::FromWebContents(source);
}
@@ -2247,6 +2365,11 @@ void Browser::DraggableRegionsChanged(
@@ -2275,6 +2393,11 @@ void Browser::DraggableRegionsChanged(
if (app_controller_) {
app_controller_->DraggableRegionsChanged(regions, contents);
}
@ -389,7 +389,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
}
void Browser::DidFinishNavigation(
@@ -2327,11 +2450,15 @@ void Browser::EnterFullscreenModeForTab(
@@ -2355,11 +2478,15 @@ void Browser::EnterFullscreenModeForTab(
const blink::mojom::FullscreenOptions& options) {
exclusive_access_manager_->fullscreen_controller()->EnterFullscreenModeForTab(
requesting_frame, options.display_id);
@ -405,7 +405,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
}
bool Browser::IsFullscreenForTabOrPending(const WebContents* web_contents) {
@@ -2534,6 +2661,15 @@ void Browser::RequestMediaAccessPermission(
@@ -2562,6 +2689,15 @@ void Browser::RequestMediaAccessPermission(
content::WebContents* web_contents,
const content::MediaStreamRequest& request,
content::MediaResponseCallback callback) {
@ -421,7 +421,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
const extensions::Extension* extension =
GetExtensionForOrigin(profile_, request.security_origin);
MediaCaptureDevicesDispatcher::GetInstance()->ProcessMediaAccessRequest(
@@ -3086,9 +3222,10 @@ void Browser::RemoveScheduledUpdatesFor(WebContents* contents) {
@@ -3114,9 +3250,10 @@ void Browser::RemoveScheduledUpdatesFor(WebContents* contents) {
// Browser, Getters for UI (private):
StatusBubble* Browser::GetStatusBubble() {
@ -433,7 +433,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
}
// We hide the status bar for web apps windows as this matches native
@@ -3096,6 +3233,12 @@ StatusBubble* Browser::GetStatusBubble() {
@@ -3124,6 +3261,12 @@ StatusBubble* Browser::GetStatusBubble() {
// mode, as the minimal browser UI includes the status bar.
if (web_app::AppBrowserController::IsWebApp(this) &&
!app_controller()->HasMinimalUiButtons()) {
@ -446,7 +446,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
return nullptr;
}
@@ -3241,6 +3384,8 @@ void Browser::SetAsDelegate(WebContents* web_contents, bool set_delegate) {
@@ -3269,6 +3412,8 @@ void Browser::SetAsDelegate(WebContents* web_contents, bool set_delegate) {
BookmarkTabHelper::FromWebContents(web_contents)->RemoveObserver(this);
web_contents_collection_.StopObserving(web_contents);
}
@ -455,7 +455,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
}
void Browser::TabDetachedAtImpl(content::WebContents* contents,
@@ -3398,6 +3543,14 @@ bool Browser::PictureInPictureBrowserSupportsWindowFeature(
@@ -3426,6 +3571,14 @@ bool Browser::PictureInPictureBrowserSupportsWindowFeature(
bool Browser::SupportsWindowFeatureImpl(WindowFeature feature,
bool check_can_support) const {
@ -471,7 +471,7 @@ index f313979ca1b0a..c1f63c4a1cda5 100644
case TYPE_NORMAL:
return NormalBrowserSupportsWindowFeature(feature, check_can_support);
diff --git chrome/browser/ui/browser.h chrome/browser/ui/browser.h
index 8057f6fcc87c4..14bf2073b170b 100644
index 1455dcab97edb..eb86532470a75 100644
--- chrome/browser/ui/browser.h
+++ chrome/browser/ui/browser.h
@@ -25,6 +25,7 @@
@ -536,7 +536,7 @@ index 8057f6fcc87c4..14bf2073b170b 100644
// Get the FindBarController for this browser, creating it if it does not
// yet exist.
FindBarController* GetFindBarController();
@@ -961,10 +988,18 @@ class Browser : public TabStripModelObserver,
@@ -964,10 +991,18 @@ class Browser : public TabStripModelObserver,
void SetContentsBounds(content::WebContents* source,
const gfx::Rect& bounds) override;
void UpdateTargetURL(content::WebContents* source, const GURL& url) override;
@ -555,7 +555,7 @@ index 8057f6fcc87c4..14bf2073b170b 100644
void BeforeUnloadFired(content::WebContents* source,
bool proceed,
bool* proceed_to_fire_unload) override;
@@ -1303,6 +1338,10 @@ class Browser : public TabStripModelObserver,
@@ -1306,6 +1341,10 @@ class Browser : public TabStripModelObserver,
// This Browser's window.
raw_ptr<BrowserWindow, DanglingUntriaged> window_;
@ -566,7 +566,7 @@ index 8057f6fcc87c4..14bf2073b170b 100644
std::unique_ptr<TabStripModelDelegate> const tab_strip_model_delegate_;
std::unique_ptr<TabStripModel> const tab_strip_model_;
@@ -1369,6 +1408,8 @@ class Browser : public TabStripModelObserver,
@@ -1372,6 +1411,8 @@ class Browser : public TabStripModelObserver,
const std::string initial_workspace_;
bool initial_visible_on_all_workspaces_state_;
@ -576,10 +576,10 @@ index 8057f6fcc87c4..14bf2073b170b 100644
UnloadController unload_controller_;
diff --git chrome/browser/ui/browser_navigator.cc chrome/browser/ui/browser_navigator.cc
index 61a46e74464e0..d5978661b222e 100644
index d26f6e2bdefd8..6c37714cc328f 100644
--- chrome/browser/ui/browser_navigator.cc
+++ chrome/browser/ui/browser_navigator.cc
@@ -271,6 +271,10 @@ std::tuple<Browser*, int> GetBrowserAndTabForDisposition(
@@ -260,6 +260,10 @@ std::tuple<Browser*, int> GetBrowserAndTabForDisposition(
browser_params.pip_options = pip_options;
@ -590,10 +590,14 @@ index 61a46e74464e0..d5978661b222e 100644
const BrowserWindow* const browser_window = params.browser->window();
const gfx::NativeWindow native_window =
browser_window ? browser_window->GetNativeWindow()
@@ -561,6 +565,13 @@ std::unique_ptr<content::WebContents> CreateTargetContents(
std::unique_ptr<WebContents> target_contents =
WebContents::Create(create_params);
@@ -547,7 +551,17 @@ std::unique_ptr<content::WebContents> CreateTargetContents(
}
#endif
- return WebContents::Create(create_params);
+ std::unique_ptr<WebContents> target_contents =
+ WebContents::Create(create_params);
+
+#if BUILDFLAG(ENABLE_CEF)
+ auto cef_delegate = params.browser->cef_delegate();
+ if (cef_delegate) {
@ -601,9 +605,10 @@ index 61a46e74464e0..d5978661b222e 100644
+ }
+#endif
+
// New tabs can have WebUI URLs that will make calls back to arbitrary
// tab helpers, so the entire set of tab helpers needs to be set up
// immediately.
+ return target_contents;
}
bool IsHostAllowedInIncognito(const GURL& url) {
diff --git chrome/browser/ui/browser_tabstrip.cc chrome/browser/ui/browser_tabstrip.cc
index 1f84235515463..82942fb06b5f3 100644
--- chrome/browser/ui/browser_tabstrip.cc

View File

@ -1,13 +1,13 @@
diff --git components/content_settings/renderer/content_settings_agent_impl.cc components/content_settings/renderer/content_settings_agent_impl.cc
index ba73101c05be3..f30ed2f3e9ab1 100644
index 0897668803c2e..12cdbd7642ffd 100644
--- components/content_settings/renderer/content_settings_agent_impl.cc
+++ components/content_settings/renderer/content_settings_agent_impl.cc
@@ -146,7 +146,7 @@ ContentSetting GetContentSettingFromRules(
return rule.GetContentSetting();
}
}
- NOTREACHED_IN_MIGRATION();
+ // NOTREACHED_IN_MIGRATION();
return CONTENT_SETTING_DEFAULT;
- NOTREACHED();
+ return CONTENT_SETTING_DEFAULT;
}
} // namespace

View File

@ -1,5 +1,5 @@
diff --git chrome/browser/renderer_context_menu/render_view_context_menu.cc chrome/browser/renderer_context_menu/render_view_context_menu.cc
index a1564ffe50f30..bfafcad73a2a2 100644
index 419bf206081ba..d0b299714a5eb 100644
--- chrome/browser/renderer_context_menu/render_view_context_menu.cc
+++ chrome/browser/renderer_context_menu/render_view_context_menu.cc
@@ -359,6 +359,18 @@ base::OnceCallback<void(RenderViewContextMenu*)>* GetMenuShownCallback() {
@ -32,7 +32,7 @@ index a1564ffe50f30..bfafcad73a2a2 100644
id = CollapseCommandsForUMA(id);
const auto& map = GetIdcToUmaMap(type);
auto it = map.find(id);
@@ -908,6 +924,14 @@ RenderViewContextMenu::RenderViewContextMenu(
@@ -931,6 +947,14 @@ RenderViewContextMenu::RenderViewContextMenu(
: nullptr;
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
@ -47,7 +47,7 @@ index a1564ffe50f30..bfafcad73a2a2 100644
observers_.AddObserver(&autofill_context_menu_manager_);
}
@@ -1364,6 +1388,12 @@ void RenderViewContextMenu::InitMenu() {
@@ -1387,6 +1411,12 @@ void RenderViewContextMenu::InitMenu() {
autofill_client->HideAutofillSuggestions(
autofill::SuggestionHidingReason::kContextMenuOpened);
}
@ -60,7 +60,7 @@ index a1564ffe50f30..bfafcad73a2a2 100644
}
Profile* RenderViewContextMenu::GetProfile() const {
@@ -3630,6 +3660,26 @@ void RenderViewContextMenu::RegisterExecutePluginActionCallbackForTesting(
@@ -3656,6 +3686,26 @@ void RenderViewContextMenu::RegisterExecutePluginActionCallbackForTesting(
execute_plugin_action_callback_ = std::move(cb);
}
@ -88,10 +88,10 @@ index a1564ffe50f30..bfafcad73a2a2 100644
RenderViewContextMenu::GetHandlersForLinkUrl() {
custom_handlers::ProtocolHandlerRegistry::ProtocolHandlerList handlers =
diff --git chrome/browser/renderer_context_menu/render_view_context_menu.h chrome/browser/renderer_context_menu/render_view_context_menu.h
index b9ab5b1295599..7ad5bcb00ff8b 100644
index e31912f931c11..dac994a1958b1 100644
--- chrome/browser/renderer_context_menu/render_view_context_menu.h
+++ chrome/browser/renderer_context_menu/render_view_context_menu.h
@@ -153,7 +153,21 @@ class RenderViewContextMenu
@@ -155,7 +155,21 @@ class RenderViewContextMenu
}
#endif
@ -113,7 +113,7 @@ index b9ab5b1295599..7ad5bcb00ff8b 100644
Profile* GetProfile() const;
// This may return nullptr (e.g. for WebUI dialogs). Virtual to allow tests to
@@ -475,6 +489,9 @@ class RenderViewContextMenu
@@ -481,6 +495,9 @@ class RenderViewContextMenu
// built.
bool is_protocol_submenu_valid_ = false;
@ -189,10 +189,10 @@ index 9f6c5fd44f206..dc50bc909897f 100644
runner_->Cancel();
}
diff --git chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc
index a269d358300b8..bf31a3cecdee7 100644
index a0a564cbef528..f804cffc6944f 100644
--- chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc
+++ chrome/browser/ui/views/renderer_context_menu/render_view_context_menu_views.cc
@@ -150,6 +150,9 @@ void RenderViewContextMenuViews::RunMenuAt(views::Widget* parent,
@@ -149,6 +149,9 @@ void RenderViewContextMenuViews::RunMenuAt(views::Widget* parent,
bool RenderViewContextMenuViews::GetAcceleratorForCommandId(
int command_id,
ui::Accelerator* accel) const {
@ -202,7 +202,7 @@ index a269d358300b8..bf31a3cecdee7 100644
// There are no formally defined accelerators we can query so we assume
// that Ctrl+C, Ctrl+V, Ctrl+X, Ctrl-A, etc do what they normally do.
switch (command_id) {
@@ -386,6 +389,10 @@ void RenderViewContextMenuViews::AppendPlatformEditableItems() {
@@ -383,6 +386,10 @@ void RenderViewContextMenuViews::AppendPlatformEditableItems() {
}
void RenderViewContextMenuViews::Show() {
@ -213,7 +213,7 @@ index a269d358300b8..bf31a3cecdee7 100644
if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kKioskMode))
return;
@@ -428,6 +435,11 @@ void RenderViewContextMenuViews::Show() {
@@ -425,6 +432,11 @@ void RenderViewContextMenuViews::Show() {
}
}
@ -305,10 +305,10 @@ index 042428f77f4ad..e4efd98ca45d5 100644
raw_ptr<content::WebContents> web_contents_ = nullptr;
};
diff --git components/renderer_context_menu/render_view_context_menu_base.cc components/renderer_context_menu/render_view_context_menu_base.cc
index edf3c0f19409e..3a194411201fe 100644
index 2c4065b89fd0b..b978ebc839209 100644
--- components/renderer_context_menu/render_view_context_menu_base.cc
+++ components/renderer_context_menu/render_view_context_menu_base.cc
@@ -392,6 +392,17 @@ bool RenderViewContextMenuBase::IsCommandIdChecked(int id) const {
@@ -396,6 +396,17 @@ bool RenderViewContextMenuBase::IsCommandIdChecked(int id) const {
return false;
}

View File

@ -1,5 +1,5 @@
diff --git chrome/browser/devtools/chrome_devtools_manager_delegate.cc chrome/browser/devtools/chrome_devtools_manager_delegate.cc
index 8c8d53b351c2f..c1fa3cd901335 100644
index f49641db657c6..89419c039510e 100644
--- chrome/browser/devtools/chrome_devtools_manager_delegate.cc
+++ chrome/browser/devtools/chrome_devtools_manager_delegate.cc
@@ -15,6 +15,7 @@
@ -10,7 +10,7 @@ index 8c8d53b351c2f..c1fa3cd901335 100644
#include "chrome/browser/browser_features.h"
#include "chrome/browser/devtools/chrome_devtools_session.h"
#include "chrome/browser/devtools/device/android_device_manager.h"
@@ -69,6 +70,10 @@
@@ -70,6 +71,10 @@
#include "ash/constants/ash_switches.h"
#endif
@ -21,7 +21,7 @@ index 8c8d53b351c2f..c1fa3cd901335 100644
using content::DevToolsAgentHost;
const char ChromeDevToolsManagerDelegate::kTypeApp[] = "app";
@@ -283,6 +288,12 @@ std::string ChromeDevToolsManagerDelegate::GetTargetType(
@@ -284,6 +289,12 @@ std::string ChromeDevToolsManagerDelegate::GetTargetType(
return DevToolsAgentHost::kTypePage;
}

View File

@ -12,7 +12,7 @@ index b169371e4d42f..509e4bda85b47 100644
// on the screen, we can't actually attach to it.
parent_window = nullptr;
diff --git components/constrained_window/constrained_window_views.cc components/constrained_window/constrained_window_views.cc
index b82cb011d2359..e224eef611704 100644
index 34567d0940948..420d15acad367 100644
--- components/constrained_window/constrained_window_views.cc
+++ components/constrained_window/constrained_window_views.cc
@@ -102,10 +102,17 @@ class ModalDialogHostObserverViews : public ModalDialogHostObserver {
@ -279,10 +279,10 @@ index bc119f10f749e..d81c1ce4e786f 100644
// Web-modal (ui::mojom::ModalType::kChild) dialogs with parents are marked as
// child widgets to prevent top-level window behavior (independent movement,
diff --git ui/views/window/dialog_delegate.h ui/views/window/dialog_delegate.h
index 0777e2fe71f04..546994cad2b14 100644
index 4b0c8249f3d91..056a5a92074e3 100644
--- ui/views/window/dialog_delegate.h
+++ ui/views/window/dialog_delegate.h
@@ -106,13 +106,18 @@ class VIEWS_EXPORT DialogDelegate : public WidgetDelegate {
@@ -128,13 +128,18 @@ class VIEWS_EXPORT DialogDelegate : public WidgetDelegate {
// your use case.
static Widget* CreateDialogWidget(std::unique_ptr<WidgetDelegate> delegate,
gfx::NativeWindow context,
@ -304,7 +304,7 @@ index 0777e2fe71f04..546994cad2b14 100644
// Returns the dialog widget InitParams for a given |context| or |parent|.
// If |bounds| is not empty, used to initially place the dialog, otherwise
@@ -120,7 +125,9 @@ class VIEWS_EXPORT DialogDelegate : public WidgetDelegate {
@@ -142,7 +147,9 @@ class VIEWS_EXPORT DialogDelegate : public WidgetDelegate {
static Widget::InitParams GetDialogWidgetInitParams(WidgetDelegate* delegate,
gfx::NativeWindow context,
gfx::NativeView parent,

View File

@ -1,5 +1,5 @@
diff --git chrome/browser/download/chrome_download_manager_delegate.cc chrome/browser/download/chrome_download_manager_delegate.cc
index e07f9d6b5aabd..f57b5da7e9364 100644
index c95b5e23f09b0..62c331a47ad2e 100644
--- chrome/browser/download/chrome_download_manager_delegate.cc
+++ chrome/browser/download/chrome_download_manager_delegate.cc
@@ -31,6 +31,7 @@

View File

@ -1,5 +1,5 @@
diff --git chrome/browser/extensions/api/chrome_extensions_api_client.cc chrome/browser/extensions/api/chrome_extensions_api_client.cc
index da9c9d7c0f458..a97fc4e019775 100644
index f61ec524109fe..92ca490728855 100644
--- chrome/browser/extensions/api/chrome_extensions_api_client.cc
+++ chrome/browser/extensions/api/chrome_extensions_api_client.cc
@@ -15,6 +15,7 @@
@ -34,10 +34,10 @@ index da9c9d7c0f458..a97fc4e019775 100644
WebViewGuestDelegate* ChromeExtensionsAPIClient::CreateWebViewGuestDelegate(
diff --git chrome/browser/extensions/api/tabs/tabs_api.cc chrome/browser/extensions/api/tabs/tabs_api.cc
index f4fc8d090230a..0de22b5e1c0f1 100644
index 708748407e8b8..9e91dd2b2f285 100644
--- chrome/browser/extensions/api/tabs/tabs_api.cc
+++ chrome/browser/extensions/api/tabs/tabs_api.cc
@@ -1646,7 +1646,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
@@ -1643,7 +1643,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
return RespondNow(Error(ExtensionTabUtil::kTabStripNotEditableError));
}
@ -46,7 +46,7 @@ index f4fc8d090230a..0de22b5e1c0f1 100644
tab_strip->ActivateTabAt(tab_index);
DCHECK_EQ(contents, tab_strip->GetActiveWebContents());
}
@@ -1660,7 +1660,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
@@ -1657,7 +1657,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
}
bool highlighted = *params->update_properties.highlighted;
@ -55,7 +55,7 @@ index f4fc8d090230a..0de22b5e1c0f1 100644
tab_strip->ToggleSelectionAt(tab_index);
}
}
@@ -1672,7 +1672,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
@@ -1669,7 +1669,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
kCannotUpdateMuteCaptured, base::NumberToString(tab_id))));
}
@ -64,7 +64,7 @@ index f4fc8d090230a..0de22b5e1c0f1 100644
int opener_id = *params->update_properties.opener_tab_id;
WebContents* opener_contents = nullptr;
if (opener_id == tab_id) {
@@ -1707,7 +1707,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
@@ -1704,7 +1704,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
->SetAutoDiscardable(state);
}
@ -73,7 +73,7 @@ index f4fc8d090230a..0de22b5e1c0f1 100644
// Bug fix for crbug.com/1197888. Don't let the extension update the tab if
// the user is dragging tabs.
if (!ExtensionTabUtil::IsTabStripEditable()) {
@@ -1728,7 +1728,8 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
@@ -1725,7 +1725,8 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
// Navigate the tab to a new location if the url is different.
if (params->update_properties.url) {
std::string updated_url = *params->update_properties.url;
@ -83,7 +83,7 @@ index f4fc8d090230a..0de22b5e1c0f1 100644
!IsURLAllowedInIncognito(GURL(updated_url))) {
return RespondNow(Error(ErrorUtils::FormatErrorMessage(
tabs_constants::kURLsNotAllowedInIncognitoError, updated_url)));
@@ -1743,7 +1744,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
@@ -1740,7 +1741,7 @@ ExtensionFunction::ResponseAction TabsUpdateFunction::Run() {
return RespondNow(Error(std::move(error)));
}
@ -93,20 +93,20 @@ index f4fc8d090230a..0de22b5e1c0f1 100644
current_url, updated_url, js_callstack());
}
diff --git chrome/browser/extensions/extension_tab_util.cc chrome/browser/extensions/extension_tab_util.cc
index 4d2c067a06041..6943da2585d22 100644
index 621e65fdf7666..93ec54e632930 100644
--- chrome/browser/extensions/extension_tab_util.cc
+++ chrome/browser/extensions/extension_tab_util.cc
@@ -20,6 +20,7 @@
@@ -35,6 +35,7 @@
#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversions.h"
#include "base/types/expected_macros.h"
+#include "cef/libcef/features/features.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/browser_process.h" // nogncheck
#include "chrome/browser/extensions/browser_extension_window_controller.h"
#include "chrome/browser/extensions/chrome_extension_function_details.h"
@@ -74,6 +75,10 @@
#include "third_party/blink/public/common/features.h"
@@ -80,6 +81,10 @@
#include "url/gurl.h"
#endif
+#if BUILDFLAG(ENABLE_CEF)
+#include "cef/libcef/browser/chrome/extensions/chrome_extension_util.h"
@ -115,7 +115,7 @@ index 4d2c067a06041..6943da2585d22 100644
using content::NavigationEntry;
using content::WebContents;
using extensions::mojom::APIPermissionID;
@@ -714,6 +719,14 @@ bool ExtensionTabUtil::GetTabById(int tab_id,
@@ -731,6 +736,14 @@ bool ExtensionTabUtil::GetTabById(int tab_id,
}
}

View File

@ -33,7 +33,7 @@ index 2245c931fbe4f..761ea6b3a6afb 100644
~BrowserFrameMac() override;
diff --git chrome/browser/ui/views/frame/browser_frame_mac.mm chrome/browser/ui/views/frame/browser_frame_mac.mm
index 1e5c56c02cace..71e91ab4f3fb7 100644
index ad9fe12425ad6..fa5840643f3a4 100644
--- chrome/browser/ui/views/frame/browser_frame_mac.mm
+++ chrome/browser/ui/views/frame/browser_frame_mac.mm
@@ -184,7 +184,14 @@ void BrowserFrameMac::OnWindowFullscreenTransitionComplete() {
@ -70,7 +70,7 @@ index 1e5c56c02cace..71e91ab4f3fb7 100644
if (is_before_first_responder) {
// The specification for this private extensions API is incredibly vague.
// For now, we avoid triggering chrome commands prior to giving the
@@ -339,11 +354,20 @@ bool BrowserFrameMac::ExecuteCommand(
@@ -340,11 +355,20 @@ bool BrowserFrameMac::ExecuteCommand(
int32_t command,
WindowOpenDisposition window_open_disposition,
bool is_before_first_responder) {

View File

@ -17,7 +17,7 @@ index fbce13c16ad10..0512b2f09937e 100644
std::unique_ptr<permissions::PermissionPrompt> CreatePermissionPrompt(
content::WebContents* web_contents,
diff --git chrome/browser/ui/views/permissions/permission_prompt_factory.cc chrome/browser/ui/views/permissions/permission_prompt_factory.cc
index 7f976b5bc5c44..ee2faa5c297a7 100644
index d2328bfa93afa..c80206aecbcbf 100644
--- chrome/browser/ui/views/permissions/permission_prompt_factory.cc
+++ chrome/browser/ui/views/permissions/permission_prompt_factory.cc
@@ -222,11 +222,28 @@ std::unique_ptr<permissions::PermissionPrompt> CreateQuietPrompt(

View File

@ -1,5 +1,5 @@
diff --git chrome/browser/policy/browser_dm_token_storage_linux.cc chrome/browser/policy/browser_dm_token_storage_linux.cc
index cbad74b559c07..f3b4f6261d7c0 100644
index c609f9477c66c..19abd149b66dd 100644
--- chrome/browser/policy/browser_dm_token_storage_linux.cc
+++ chrome/browser/policy/browser_dm_token_storage_linux.cc
@@ -22,6 +22,7 @@
@ -357,10 +357,10 @@ index 8dbf958c189dd..6eaccc6688eca 100644
*dir = base::FilePath(policy::path_parser::ExpandPathVariables(value));
return true;
diff --git chrome/common/chrome_paths.cc chrome/common/chrome_paths.cc
index a467b25145684..8727050b93a35 100644
index afc13e1b56f78..f80c5ed14051d 100644
--- chrome/common/chrome_paths.cc
+++ chrome/common/chrome_paths.cc
@@ -525,7 +525,8 @@ bool PathProvider(int key, base::FilePath* result) {
@@ -527,7 +527,8 @@ bool PathProvider(int key, base::FilePath* result) {
break;
}
#endif
@ -371,7 +371,7 @@ index a467b25145684..8727050b93a35 100644
cur = base::FilePath(policy::kPolicyPath);
break;
diff --git chrome/common/chrome_paths.h chrome/common/chrome_paths.h
index fbfe597d09d9a..b8067f8d9ecd7 100644
index 21dfe21a78eb9..20d8ea2709b99 100644
--- chrome/common/chrome_paths.h
+++ chrome/common/chrome_paths.h
@@ -8,6 +8,7 @@

View File

@ -14,7 +14,7 @@ index cf4597e671afe..a9693c4e10d8e 100644
}
diff --git chrome/browser/profiles/profile.cc chrome/browser/profiles/profile.cc
index 4385d5d90f9c8..88aca5519660e 100644
index 0b37d2e8cc60f..0ed51eebe9f76 100644
--- chrome/browser/profiles/profile.cc
+++ chrome/browser/profiles/profile.cc
@@ -84,6 +84,7 @@ base::LazyInstance<std::set<content::BrowserContext*>>::Leaky
@ -28,13 +28,13 @@ index 4385d5d90f9c8..88aca5519660e 100644
@@ -104,6 +105,8 @@ bool Profile::OTRProfileID::AllowsBrowserWindows() const {
// DevTools::BrowserContext, MediaRouter::Presentation, and
// CaptivePortal::Signin are exceptions to this ban.
if (*this == PrimaryID() ||
if (*this == PrimaryID() || IsDevTools() ||
+ base::StartsWith(profile_id_, kCEFOTRProfileIDPrefix,
+ base::CompareCase::SENSITIVE) ||
base::StartsWith(profile_id_, kDevToolsOTRProfileIDPrefix,
base::CompareCase::SENSITIVE) ||
base::StartsWith(profile_id_, kMediaRouterOTRProfileIDPrefix,
@@ -141,6 +144,16 @@ Profile::OTRProfileID Profile::OTRProfileID::CreateUnique(
base::CompareCase::SENSITIVE)) {
return true;
@@ -144,6 +147,16 @@ Profile::OTRProfileID Profile::OTRProfileID::CreateUnique(
base::Uuid::GenerateRandomV4().AsLowercaseString().c_str()));
}
@ -52,7 +52,7 @@ index 4385d5d90f9c8..88aca5519660e 100644
Profile::OTRProfileID Profile::OTRProfileID::CreateUniqueForDevTools() {
return CreateUnique(kDevToolsOTRProfileIDPrefix);
diff --git chrome/browser/profiles/profile.h chrome/browser/profiles/profile.h
index 8e96e47754dc7..c65184775fba7 100644
index 2fe342e49d3c1..559b2a676dab5 100644
--- chrome/browser/profiles/profile.h
+++ chrome/browser/profiles/profile.h
@@ -94,6 +94,10 @@ class Profile : public content::BrowserContext {
@ -66,7 +66,7 @@ index 8e96e47754dc7..c65184775fba7 100644
// Creates a unique OTR profile id to be used for DevTools browser contexts.
static OTRProfileID CreateUniqueForDevTools();
@@ -506,6 +510,9 @@ class Profile : public content::BrowserContext {
@@ -511,6 +515,9 @@ class Profile : public content::BrowserContext {
static Profile* FromJavaObject(const jni_zero::JavaRef<jobject>& obj);
jni_zero::ScopedJavaLocalRef<jobject> GetJavaObject() const;
#endif // BUILDFLAG(IS_ANDROID)
@ -76,7 +76,7 @@ index 8e96e47754dc7..c65184775fba7 100644
protected:
// Creates an OffTheRecordProfile which points to this Profile.
static std::unique_ptr<Profile> CreateOffTheRecordProfile(
@@ -517,7 +524,6 @@ class Profile : public content::BrowserContext {
@@ -522,7 +529,6 @@ class Profile : public content::BrowserContext {
static PrefStore* CreateExtensionPrefStore(Profile*,
bool incognito_pref_store);
@ -85,10 +85,10 @@ index 8e96e47754dc7..c65184775fba7 100644
// Returns whether the user has signed in this profile to an account.
diff --git chrome/browser/profiles/profile_impl.cc chrome/browser/profiles/profile_impl.cc
index 3dd5f9818cfa0..7b3e3697f4ce3 100644
index 03ca7ab9c372a..524facb62c672 100644
--- chrome/browser/profiles/profile_impl.cc
+++ chrome/browser/profiles/profile_impl.cc
@@ -1038,7 +1038,9 @@ Profile* ProfileImpl::GetOffTheRecordProfile(const OTRProfileID& otr_profile_id,
@@ -1041,7 +1041,9 @@ Profile* ProfileImpl::GetOffTheRecordProfile(const OTRProfileID& otr_profile_id,
otr_profiles_[otr_profile_id] = std::move(otr_profile);

View File

@ -1,5 +1,5 @@
diff --git chrome/browser/safe_browsing/BUILD.gn chrome/browser/safe_browsing/BUILD.gn
index 949f93a7b032a..1c32ec4aa0b84 100644
index e75f7bc2c574f..9dc127066abd6 100644
--- chrome/browser/safe_browsing/BUILD.gn
+++ chrome/browser/safe_browsing/BUILD.gn
@@ -39,6 +39,7 @@ static_library("safe_browsing") {

View File

@ -1,10 +1,10 @@
diff --git chrome/browser/ui/startup/startup_browser_creator.cc chrome/browser/ui/startup/startup_browser_creator.cc
index ba443f5e8838d..a3f3c250f8006 100644
index 16f7438c6f112..c5568abce8917 100644
--- chrome/browser/ui/startup/startup_browser_creator.cc
+++ chrome/browser/ui/startup/startup_browser_creator.cc
@@ -616,6 +616,13 @@ std::optional<ash::KioskAppId> GetAppId(const base::CommandLine& command_line,
@@ -607,6 +607,13 @@ std::optional<ash::KioskAppId> GetAppId(const base::CommandLine& command_line,
}
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
#endif // BUILDFLAG(IS_CHROMEOS)
+StartupBrowserCreator::ProcessCommandLineCallback*
+GetProcessCommandLineCallback() {
@ -16,7 +16,7 @@ index ba443f5e8838d..a3f3c250f8006 100644
} // namespace
StartupProfileMode StartupProfileModeFromReason(
@@ -1479,6 +1486,12 @@ void StartupBrowserCreator::ProcessCommandLineWithProfile(
@@ -1467,6 +1474,12 @@ void StartupBrowserCreator::ProcessCommandLineWithProfile(
{profile, mode}, last_opened_profiles);
}
@ -29,7 +29,7 @@ index ba443f5e8838d..a3f3c250f8006 100644
// static
void StartupBrowserCreator::ProcessCommandLineAlreadyRunning(
const base::CommandLine& command_line,
@@ -1488,6 +1501,11 @@ void StartupBrowserCreator::ProcessCommandLineAlreadyRunning(
@@ -1476,6 +1489,11 @@ void StartupBrowserCreator::ProcessCommandLineAlreadyRunning(
return;
}
@ -42,7 +42,7 @@ index ba443f5e8838d..a3f3c250f8006 100644
StartupProfileMode mode =
StartupProfileModeFromReason(profile_path_info.reason);
diff --git chrome/browser/ui/startup/startup_browser_creator.h chrome/browser/ui/startup/startup_browser_creator.h
index 919bae5ccfeae..5c2dfbf955723 100644
index 37957dc632d0c..735819e9ceb10 100644
--- chrome/browser/ui/startup/startup_browser_creator.h
+++ chrome/browser/ui/startup/startup_browser_creator.h
@@ -9,6 +9,7 @@
@ -53,7 +53,7 @@ index 919bae5ccfeae..5c2dfbf955723 100644
#include "base/gtest_prod_util.h"
#include "base/memory/raw_ptr.h"
#include "build/build_config.h"
@@ -135,6 +136,13 @@ class StartupBrowserCreator {
@@ -134,6 +135,13 @@ class StartupBrowserCreator {
StartupProfileInfo profile_info,
const Profiles& last_opened_profiles);

View File

@ -1,8 +1,8 @@
diff --git chrome/browser/ui/webui/about/about_ui.cc chrome/browser/ui/webui/about/about_ui.cc
index e28af86de9298..fb182fa3f7c32 100644
index d8205f05e45fb..fd867040ec470 100644
--- chrome/browser/ui/webui/about/about_ui.cc
+++ chrome/browser/ui/webui/about/about_ui.cc
@@ -89,6 +89,10 @@
@@ -90,6 +90,10 @@
#include "chrome/common/webui_url_constants.h"
#endif // BUILDFLAG(IS_CHROMEOS)
@ -13,7 +13,7 @@ index e28af86de9298..fb182fa3f7c32 100644
using content::BrowserThread;
namespace {
@@ -620,6 +624,11 @@ ChromeURLsUIConfig::ChromeURLsUIConfig()
@@ -541,6 +545,11 @@ ChromeURLsUIConfig::CreateWebUIController(content::WebUI* web_ui,
CreditsUIConfig::CreditsUIConfig()
: AboutUIConfigBase(chrome::kChromeUICreditsHost) {}
@ -25,7 +25,7 @@ index e28af86de9298..fb182fa3f7c32 100644
#if !BUILDFLAG(IS_ANDROID)
TermsUIConfig::TermsUIConfig()
: AboutUIConfigBase(chrome::kChromeUITermsHost) {}
@@ -721,6 +730,16 @@ void AboutUIHTMLSource::StartDataRequest(
@@ -642,6 +651,16 @@ void AboutUIHTMLSource::StartDataRequest(
IDS_TERMS_HTML);
#endif
}
@ -43,7 +43,7 @@ index e28af86de9298..fb182fa3f7c32 100644
FinishDataRequest(response, std::move(callback));
}
diff --git chrome/browser/ui/webui/about/about_ui.h chrome/browser/ui/webui/about/about_ui.h
index 6548d519c3da9..645163f69f822 100644
index 1b8d354f098b8..e7ea1c3329918 100644
--- chrome/browser/ui/webui/about/about_ui.h
+++ chrome/browser/ui/webui/about/about_ui.h
@@ -11,6 +11,7 @@
@ -54,7 +54,7 @@ index 6548d519c3da9..645163f69f822 100644
#include "content/public/browser/url_data_source.h"
#include "content/public/browser/web_ui_controller.h"
#include "content/public/browser/webui_config.h"
@@ -42,6 +43,13 @@ class CreditsUIConfig : public AboutUIConfigBase {
@@ -47,6 +48,13 @@ class CreditsUIConfig : public AboutUIConfigBase {
CreditsUIConfig();
};
@ -69,7 +69,7 @@ index 6548d519c3da9..645163f69f822 100644
// chrome://terms
class TermsUIConfig : public AboutUIConfigBase {
diff --git chrome/browser/ui/webui/chrome_web_ui_configs.cc chrome/browser/ui/webui/chrome_web_ui_configs.cc
index 8b877339c4179..dcb347ef1878f 100644
index a2719d73bc701..3cc832d90e17a 100644
--- chrome/browser/ui/webui/chrome_web_ui_configs.cc
+++ chrome/browser/ui/webui/chrome_web_ui_configs.cc
@@ -6,6 +6,7 @@
@ -80,7 +80,7 @@ index 8b877339c4179..dcb347ef1878f 100644
#include "chrome/browser/optimization_guide/optimization_guide_internals_ui.h"
#include "chrome/browser/ui/webui/about/about_ui.h"
#include "chrome/browser/ui/webui/accessibility/accessibility_ui.h"
@@ -215,6 +216,9 @@ void RegisterChromeWebUIConfigs() {
@@ -210,6 +211,9 @@ void RegisterChromeWebUIConfigs() {
map.AddWebUIConfig(std::make_unique<BluetoothInternalsUIConfig>());
map.AddWebUIConfig(std::make_unique<BrowsingTopicsInternalsUIConfig>());
map.AddWebUIConfig(std::make_unique<chromeos::DeviceLogUIConfig>());
@ -90,33 +90,11 @@ index 8b877339c4179..dcb347ef1878f 100644
map.AddWebUIConfig(std::make_unique<ChromeURLsUIConfig>());
map.AddWebUIConfig(std::make_unique<CrashesUIConfig>());
map.AddWebUIConfig(std::make_unique<commerce::CommerceInternalsUIConfig>());
diff --git chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
index f9ca5f61c9c1f..a99993720a7ea 100644
--- chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
+++ chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc
@@ -18,6 +18,7 @@
#include "build/branding_buildflags.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
+#include "cef/libcef/features/features.h"
#include "chrome/browser/about_flags.h"
#include "chrome/browser/buildflags.h"
#include "chrome/browser/devtools/devtools_ui_bindings.h"
@@ -485,6 +486,9 @@ ChromeWebUIControllerFactory::GetListOfAcceptableURLs() {
GURL(chrome::kChromeUIGpuURL),
GURL(chrome::kChromeUIHistogramsURL),
GURL(chrome::kChromeUIInspectURL),
+#if BUILDFLAG(ENABLE_CEF)
+ GURL(chrome::kChromeUILicenseURL),
+#endif
GURL(chrome::kChromeUIManagementURL),
GURL(chrome::kChromeUINetExportURL),
GURL(chrome::kChromeUIPrefsInternalsURL),
diff --git chrome/common/webui_url_constants.cc chrome/common/webui_url_constants.cc
index 47932e80c59ea..805a9e8e3c3e6 100644
index b04b8dc5c8781..f002f6178775e 100644
--- chrome/common/webui_url_constants.cc
+++ chrome/common/webui_url_constants.cc
@@ -99,6 +99,9 @@ base::span<const base::cstring_view> ChromeURLHosts() {
@@ -96,6 +96,9 @@ base::span<const base::cstring_view> ChromeURLHosts() {
kChromeUIHistoryHost,
history_clusters_internals::kChromeUIHistoryClustersInternalsHost,
kChromeUIInterstitialHost,
@ -127,21 +105,21 @@ index 47932e80c59ea..805a9e8e3c3e6 100644
#if !BUILDFLAG(IS_ANDROID)
kChromeUIManagementHost,
diff --git chrome/common/webui_url_constants.h chrome/common/webui_url_constants.h
index 9fa26adc16d4f..32635f37b8846 100644
index 5b811889ae545..a118638e7e629 100644
--- chrome/common/webui_url_constants.h
+++ chrome/common/webui_url_constants.h
@@ -18,6 +18,7 @@
@@ -17,6 +17,7 @@
#include "base/strings/cstring_view.h"
#include "build/branding_buildflags.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
+#include "cef/libcef/features/features.h"
#include "chrome/common/buildflags.h"
#include "components/lens/buildflags.h"
#include "components/signin/public/base/signin_buildflags.h"
@@ -157,6 +158,10 @@ inline constexpr char kChromeUILauncherInternalsURL[] =
inline constexpr char kChromeUILensSearchBubbleHost[] = "lens-search-bubble";
inline constexpr char kChromeUILensSearchBubbleURL[] =
"chrome://lens-search-bubble/";
#include "content/public/common/url_constants.h"
@@ -145,6 +146,10 @@ inline constexpr char kChromeUIInterstitialHost[] = "interstitials";
inline constexpr char kChromeUIInterstitialURL[] = "chrome://interstitials/";
inline constexpr char kChromeUIKillHost[] = "kill";
inline constexpr char kChromeUILauncherInternalsHost[] = "launcher-internals";
+#if BUILDFLAG(ENABLE_CEF)
+inline constexpr char kChromeUILicenseHost[] = "license";
+inline constexpr char kChromeUILicenseURL[] = "chrome://license/";

View File

@ -1,8 +1,8 @@
diff --git chrome/browser/ui/webui/version/version_handler.cc chrome/browser/ui/webui/version/version_handler.cc
index 0ce1816cb372d..dfee4d62126b2 100644
index 3c684382f63ca..f560d3c181730 100644
--- chrome/browser/ui/webui/version/version_handler.cc
+++ chrome/browser/ui/webui/version/version_handler.cc
@@ -28,12 +28,23 @@
@@ -29,12 +29,23 @@
#include "ui/base/l10n/l10n_util.h"
#include "url/gurl.h"
@ -27,7 +27,7 @@ index 0ce1816cb372d..dfee4d62126b2 100644
base::ScopedBlockingCall scoped_blocking_call(FROM_HERE,
base::BlockingType::MAY_BLOCK);
@@ -49,6 +60,19 @@ void GetFilePaths(const base::FilePath& profile_path,
@@ -50,6 +61,19 @@ void GetFilePaths(const base::FilePath& profile_path,
*profile_path_out = profile_path.LossyDisplayName();
else
*profile_path_out = l10n_util::GetStringUTF16(IDS_VERSION_UI_PATH_NOTFOUND);
@ -47,7 +47,7 @@ index 0ce1816cb372d..dfee4d62126b2 100644
}
} // namespace
@@ -115,23 +139,46 @@ void VersionHandler::HandleRequestPathInfo(const base::Value::List& args) {
@@ -121,23 +145,46 @@ void VersionHandler::HandleRequestPathInfo(const base::Value::List& args) {
// OnGotFilePaths.
std::u16string* exec_path_buffer = new std::u16string;
std::u16string* profile_path_buffer = new std::u16string;
@ -124,10 +124,10 @@ index 2f8162d7491d1..b00f0d5bf26ae 100644
// Factory for the creating refs in callbacks.
base::WeakPtrFactory<VersionHandler> weak_ptr_factory_{this};
diff --git chrome/browser/ui/webui/version/version_ui.cc chrome/browser/ui/webui/version/version_ui.cc
index d046b78cb5825..096c0c806cf85 100644
index 6893542161a55..42238d843ce33 100644
--- chrome/browser/ui/webui/version/version_ui.cc
+++ chrome/browser/ui/webui/version/version_ui.cc
@@ -22,6 +22,7 @@
@@ -17,6 +17,7 @@
#include "base/time/time.h"
#include "build/build_config.h"
#include "build/chromeos_buildflags.h"
@ -135,7 +135,7 @@ index d046b78cb5825..096c0c806cf85 100644
#include "chrome/browser/browser_process_impl.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/webui/version/version_handler.h"
@@ -70,6 +71,10 @@
@@ -64,6 +65,10 @@
#include "chrome/browser/ui/webui/version/version_util_win.h"
#endif
@ -146,7 +146,7 @@ index d046b78cb5825..096c0c806cf85 100644
using content::WebUIDataSource;
namespace {
@@ -90,6 +95,10 @@ void CreateAndAddVersionUIDataSource(Profile* profile) {
@@ -84,6 +89,10 @@ void CreateAndAddVersionUIDataSource(Profile* profile) {
{version_ui::kCommandLineName, IDS_VERSION_UI_COMMAND_LINE},
{version_ui::kExecutablePathName, IDS_VERSION_UI_EXECUTABLE_PATH},
{version_ui::kProfilePathName, IDS_VERSION_UI_PROFILE_PATH},
@ -157,7 +157,7 @@ index d046b78cb5825..096c0c806cf85 100644
{version_ui::kVariationsName, IDS_VERSION_UI_VARIATIONS},
{version_ui::kVariationsCmdName, IDS_VERSION_UI_VARIATIONS_CMD},
{version_ui::kCopyVariationsLabel, IDS_VERSION_UI_COPY_VARIATIONS_LABEL},
@@ -130,6 +139,10 @@ void CreateAndAddVersionUIDataSource(Profile* profile) {
@@ -115,6 +124,10 @@ void CreateAndAddVersionUIDataSource(Profile* profile) {
IDR_PRODUCT_LOGO_WHITE);
#endif // BUILDFLAG(IS_ANDROID)
html_source->SetDefaultResource(IDR_VERSION_UI_ABOUT_VERSION_HTML);
@ -168,7 +168,7 @@ index d046b78cb5825..096c0c806cf85 100644
}
std::string GetProductModifier() {
@@ -247,6 +260,10 @@ void VersionUI::AddVersionDetailStrings(content::WebUIDataSource* html_source) {
@@ -232,6 +245,10 @@ void VersionUI::AddVersionDetailStrings(content::WebUIDataSource* html_source) {
// blank.
html_source->AddString(version_ui::kExecutablePath, std::string());
html_source->AddString(version_ui::kProfilePath, std::string());
@ -202,10 +202,10 @@ index 913cf913dca7a..d79c330989149 100644
+ }
}
diff --git components/version_ui/resources/about_version.css components/version_ui/resources/about_version.css
index 839526405ef3f..fb2d6f3a98c00 100644
index bd41fd2492e79..04378e39332e1 100644
--- components/version_ui/resources/about_version.css
+++ components/version_ui/resources/about_version.css
@@ -138,3 +138,7 @@ body {
@@ -135,3 +135,7 @@ body {
position: fixed;
width: 1px;
}
@ -214,10 +214,10 @@ index 839526405ef3f..fb2d6f3a98c00 100644
+ font-size: 0.8em;
+}
diff --git components/version_ui/resources/about_version.html components/version_ui/resources/about_version.html
index c04197bd7b397..7e461101115b1 100644
index 1243b0cb31f59..723f9eedd2885 100644
--- components/version_ui/resources/about_version.html
+++ components/version_ui/resources/about_version.html
@@ -62,9 +62,21 @@ about:version template page
@@ -48,9 +48,21 @@ about:version template page
</picture>
</if>
<div id="company">$i18n{company}</div>
@ -240,7 +240,7 @@ index c04197bd7b397..7e461101115b1 100644
<tr><td class="label">$i18n{application_label}</td>
<td class="version" id="version">
<span id="copy-content">
@@ -175,7 +187,15 @@ about:version template page
@@ -158,7 +170,15 @@ about:version template page
<tr><td class="label">$i18n{executable_path_name}</td>
<td class="version" id="executable_path">$i18n{executable_path}</td>
</tr>
@ -257,7 +257,7 @@ index c04197bd7b397..7e461101115b1 100644
<td class="version" id="profile_path">$i18n{profile_path}</td>
</tr>
</if>
@@ -208,6 +228,17 @@ about:version template page
@@ -191,6 +211,17 @@ about:version template page
<td class="version" id="sanitizer">$i18n{sanitizer}</td>
</tr>
</table>
@ -276,10 +276,10 @@ index c04197bd7b397..7e461101115b1 100644
<div id="messages" role="alert" aria-live="polite" aria-relevant="additions">
diff --git components/version_ui/resources/about_version.ts components/version_ui/resources/about_version.ts
index 687a4c066dbc4..1f782c120ba3a 100644
index ea5f11471acf2..f604065bbe8fe 100644
--- components/version_ui/resources/about_version.ts
+++ components/version_ui/resources/about_version.ts
@@ -75,9 +75,21 @@ function handleVariationInfo(
@@ -72,9 +72,21 @@ function handleVariationInfo(
* @param profilePath The profile path to display.
*/
function handlePathInfo(
@ -301,9 +301,9 @@ index 687a4c066dbc4..1f782c120ba3a 100644
+// </if>
}
// <if expr="chromeos_lacros or is_win">
// <if expr="is_win">
diff --git components/version_ui/version_ui_constants.cc components/version_ui/version_ui_constants.cc
index 0a28810b49c9c..dfc56e70232ff 100644
index 1054d152285f7..73bfbb8241a98 100644
--- components/version_ui/version_ui_constants.cc
+++ components/version_ui/version_ui_constants.cc
@@ -6,6 +6,7 @@
@ -314,7 +314,7 @@ index 0a28810b49c9c..dfc56e70232ff 100644
namespace version_ui {
@@ -93,4 +94,15 @@ const char kVersion[] = "version";
@@ -92,4 +93,15 @@ const char kVersion[] = "version";
const char kVersionModifier[] = "version_modifier";
const char kVersionProcessorVariation[] = "version_processor_variation";
@ -331,7 +331,7 @@ index 0a28810b49c9c..dfc56e70232ff 100644
+
} // namespace version_ui
diff --git components/version_ui/version_ui_constants.h components/version_ui/version_ui_constants.h
index 036b6427f56ae..2e68bc18be8c1 100644
index 0d35047553461..a75ade64c81ad 100644
--- components/version_ui/version_ui_constants.h
+++ components/version_ui/version_ui_constants.h
@@ -7,6 +7,7 @@
@ -342,7 +342,7 @@ index 036b6427f56ae..2e68bc18be8c1 100644
namespace version_ui {
@@ -95,6 +96,17 @@ extern const char kVersion[];
@@ -94,6 +95,17 @@ extern const char kVersion[];
extern const char kVersionModifier[];
extern const char kVersionProcessorVariation[];
@ -361,7 +361,7 @@ index 036b6427f56ae..2e68bc18be8c1 100644
#endif // COMPONENTS_VERSION_UI_VERSION_UI_CONSTANTS_H_
diff --git components/version_ui_strings.grdp components/version_ui_strings.grdp
index 738a21ef1e4ef..7d4775a8b7ae0 100644
index 7c3d198ccdb52..4a15d9d7f1e13 100644
--- components/version_ui_strings.grdp
+++ components/version_ui_strings.grdp
@@ -76,6 +76,14 @@

View File

@ -1,5 +1,5 @@
diff --git chrome/common/features.gni chrome/common/features.gni
index 418e78ecb356b..8fe49cf32a374 100644
index fe2885e150688..e14778db14bad 100644
--- chrome/common/features.gni
+++ chrome/common/features.gni
@@ -7,6 +7,7 @@ import("//build/config/chromeos/ui_mode.gni")
@ -19,7 +19,7 @@ index 418e78ecb356b..8fe49cf32a374 100644
# Platforms for which Chrome supports a certificate management UI that
# shows the Chrome Root Store. This is specific to the v2 UI that is
@@ -64,11 +65,13 @@ declare_args() {
@@ -67,11 +68,13 @@ declare_args() {
# optimize_webui was moved to ui/base/ui_features.gni
}

View File

@ -1,5 +1,5 @@
diff --git chrome/renderer/BUILD.gn chrome/renderer/BUILD.gn
index 2e4dc8c6f3e4a..f79b276435e6a 100644
index 05117bbe71fb1..9b41ae370c3c8 100644
--- chrome/renderer/BUILD.gn
+++ chrome/renderer/BUILD.gn
@@ -5,6 +5,7 @@

View File

@ -1,5 +1,5 @@
diff --git chrome/app/chrome_main_delegate.cc chrome/app/chrome_main_delegate.cc
index 4569ff21cd37e..33749b8187efa 100644
index 901809233186a..be847ede0827b 100644
--- chrome/app/chrome_main_delegate.cc
+++ chrome/app/chrome_main_delegate.cc
@@ -42,6 +42,7 @@
@ -10,7 +10,7 @@ index 4569ff21cd37e..33749b8187efa 100644
#include "chrome/browser/buildflags.h"
#include "chrome/browser/chrome_content_browser_client.h"
#include "chrome/browser/chrome_resource_bundle_helper.h"
@@ -572,6 +573,7 @@ struct MainFunction {
@@ -571,6 +572,7 @@ struct MainFunction {
int (*function)(content::MainFunctionParams);
};
@ -18,7 +18,7 @@ index 4569ff21cd37e..33749b8187efa 100644
// Initializes the user data dir. Must be called before InitializeLocalState().
void InitializeUserDataDir(base::CommandLine* command_line) {
#if BUILDFLAG(IS_CHROMEOS_LACROS)
@@ -655,6 +657,7 @@ void InitializeUserDataDir(base::CommandLine* command_line) {
@@ -654,6 +656,7 @@ void InitializeUserDataDir(base::CommandLine* command_line) {
command_line->AppendSwitchPath(switches::kUserDataDir, user_data_dir);
#endif // BUILDFLAG(IS_WIN)
}
@ -26,7 +26,7 @@ index 4569ff21cd37e..33749b8187efa 100644
#if !BUILDFLAG(IS_ANDROID)
void InitLogging(const std::string& process_type) {
@@ -790,6 +793,10 @@ ChromeMainDelegate::~ChromeMainDelegate() {
@@ -789,6 +792,10 @@ ChromeMainDelegate::~ChromeMainDelegate() {
ChromeMainDelegate::~ChromeMainDelegate() = default;
#endif // !BUILDFLAG(IS_ANDROID)
@ -37,7 +37,7 @@ index 4569ff21cd37e..33749b8187efa 100644
std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
InvokedIn invoked_in) {
DUMP_WILL_BE_CHECK(base::ThreadPoolInstance::Get());
@@ -815,7 +822,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
@@ -814,7 +821,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
// future session's metrics.
DeferBrowserMetrics(user_data_dir);
@ -46,7 +46,7 @@ index 4569ff21cd37e..33749b8187efa 100644
// In the case the process is not the singleton process, the uninstall tasks
// need to be executed here. A window will be displayed asking to close all
// running instances.
@@ -962,7 +969,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
@@ -966,7 +973,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
// Initializes the resource bundle and determines the locale.
std::string actual_locale = LoadLocalState(
@ -56,7 +56,7 @@ index 4569ff21cd37e..33749b8187efa 100644
chrome_feature_list_creator->SetApplicationLocale(actual_locale);
chrome_feature_list_creator->OverrideCachedUIStrings();
@@ -979,6 +987,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
@@ -983,6 +991,8 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
new net::NetworkChangeNotifierFactoryAndroid());
#endif
@ -65,7 +65,7 @@ index 4569ff21cd37e..33749b8187efa 100644
if (base::FeatureList::IsEnabled(
features::kWriteBasicSystemProfileToPersistentHistogramsFile)) {
bool record = true;
@@ -989,6 +999,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
@@ -993,6 +1003,7 @@ std::optional<int> ChromeMainDelegate::PostEarlyInitialization(
if (record)
chrome_content_browser_client_->startup_data()->RecordCoreSystemProfile();
}
@ -73,7 +73,7 @@ index 4569ff21cd37e..33749b8187efa 100644
#if BUILDFLAG(IS_ANDROID)
UmaSessionStats::OnStartup();
@@ -1032,8 +1043,8 @@ void ChromeMainDelegate::CreateThreadPool(std::string_view name) {
@@ -1036,8 +1047,8 @@ void ChromeMainDelegate::CreateThreadPool(std::string_view name) {
std::make_unique<ChromeThreadProfilerClient>());
// `ChromeMainDelegateAndroid::PreSandboxStartup` creates the profiler a little
@ -84,7 +84,7 @@ index 4569ff21cd37e..33749b8187efa 100644
// Start the sampling profiler as early as possible - namely, once the thread
// pool has been created.
sampling_profiler_ = std::make_unique<MainThreadStackSamplingProfiler>();
@@ -1431,6 +1442,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
@@ -1435,6 +1446,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
std::string process_type =
command_line.GetSwitchValueASCII(switches::kProcessType);
@ -92,7 +92,7 @@ index 4569ff21cd37e..33749b8187efa 100644
crash_reporter::InitializeCrashKeys();
#if BUILDFLAG(IS_POSIX)
@@ -1446,6 +1458,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
@@ -1450,6 +1462,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
if (chrome::ProcessNeedsProfileDir(process_type)) {
InitializeUserDataDir(base::CommandLine::ForCurrentProcess());
}
@ -100,7 +100,7 @@ index 4569ff21cd37e..33749b8187efa 100644
// Register component_updater PathProvider after DIR_USER_DATA overridden by
// command line flags. Maybe move the chrome PathProvider down here also?
@@ -1549,7 +1562,8 @@ void ChromeMainDelegate::PreSandboxStartup() {
@@ -1553,7 +1566,8 @@ void ChromeMainDelegate::PreSandboxStartup() {
#else
const std::string loaded_locale =
ui::ResourceBundle::InitSharedInstanceWithLocale(
@ -110,7 +110,7 @@ index 4569ff21cd37e..33749b8187efa 100644
base::FilePath resources_pack_path;
base::PathService::Get(chrome::FILE_RESOURCES_PACK, &resources_pack_path);
@@ -1559,6 +1573,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
@@ -1563,6 +1577,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
CHECK(!loaded_locale.empty()) << "Locale could not be found for " << locale;
}
@ -118,7 +118,7 @@ index 4569ff21cd37e..33749b8187efa 100644
#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC)
// Zygote needs to call InitCrashReporter() in RunZygote().
if (process_type != switches::kZygoteProcess &&
@@ -1595,6 +1610,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
@@ -1599,6 +1614,7 @@ void ChromeMainDelegate::PreSandboxStartup() {
// After all the platform Breakpads have been initialized, store the command
// line for crash reporting.
crash_keys::SetCrashKeysFromCommandLine(command_line);
@ -126,7 +126,7 @@ index 4569ff21cd37e..33749b8187efa 100644
#if BUILDFLAG(ENABLE_PDF)
MaybePatchGdiGetFontData();
@@ -1713,6 +1729,7 @@ void ChromeMainDelegate::ZygoteForked() {
@@ -1717,6 +1733,7 @@ void ChromeMainDelegate::ZygoteForked() {
SetUpProfilingShutdownHandler();
}
@ -134,7 +134,7 @@ index 4569ff21cd37e..33749b8187efa 100644
// Needs to be called after we have chrome::DIR_USER_DATA. BrowserMain sets
// this up for the browser process in a different manner.
const base::CommandLine* command_line =
@@ -1725,6 +1742,7 @@ void ChromeMainDelegate::ZygoteForked() {
@@ -1729,6 +1746,7 @@ void ChromeMainDelegate::ZygoteForked() {
// Reset the command line for the newly spawned process.
crash_keys::SetCrashKeysFromCommandLine(*command_line);
@ -142,7 +142,7 @@ index 4569ff21cd37e..33749b8187efa 100644
}
#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
@@ -1835,6 +1853,7 @@ void ChromeMainDelegate::InitializeMemorySystem() {
@@ -1839,6 +1857,7 @@ void ChromeMainDelegate::InitializeMemorySystem() {
: memory_system::DispatcherParameters::
AllocationTraceRecorderInclusion::kIgnore;
@ -150,7 +150,7 @@ index 4569ff21cd37e..33749b8187efa 100644
memory_system::Initializer()
.SetGwpAsanParameters(gwp_asan_boost_sampling, process_type)
.SetProfilingClientParameters(chrome::GetChannel(),
@@ -1842,5 +1861,5 @@ void ChromeMainDelegate::InitializeMemorySystem() {
@@ -1846,5 +1865,5 @@ void ChromeMainDelegate::InitializeMemorySystem() {
.SetDispatcherParameters(memory_system::DispatcherParameters::
PoissonAllocationSamplerInclusion::kEnforce,
allocation_recorder_inclusion, process_type)
@ -232,7 +232,7 @@ index 8f5c477acba39..ff2f90a8bf27b 100644
base::PathService::OverrideAndCreateIfNeeded(
diff --git chrome/browser/chrome_browser_main.cc chrome/browser/chrome_browser_main.cc
index d202767ab4f3f..41106d7b31e43 100644
index efdb429cbe04e..17e949d631200 100644
--- chrome/browser/chrome_browser_main.cc
+++ chrome/browser/chrome_browser_main.cc
@@ -52,6 +52,7 @@
@ -393,7 +393,7 @@ index d202767ab4f3f..41106d7b31e43 100644
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
// Execute first run specific code after the PrefService has been initialized
// and preferences have been registered since some of the import code depends
@@ -1721,6 +1734,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1715,6 +1728,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
*base::CommandLine::ForCurrentProcess());
}
#endif // BUILDFLAG(IS_WIN)
@ -401,7 +401,7 @@ index d202767ab4f3f..41106d7b31e43 100644
// Configure modules that need access to resources.
net::NetModule::SetResourceProvider(ChromeNetResourceProvider);
@@ -1812,6 +1826,11 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1806,6 +1820,11 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
g_browser_process->profile_manager()->GetLastOpenedProfiles();
}
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
@ -413,7 +413,7 @@ index d202767ab4f3f..41106d7b31e43 100644
// This step is costly.
if (browser_creator_->Start(*base::CommandLine::ForCurrentProcess(),
base::FilePath(), profile_info,
@@ -1844,11 +1863,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
@@ -1838,11 +1857,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() {
// Create the RunLoop for MainMessageLoopRun() to use and transfer
// ownership of the browser's lifetime to the BrowserProcess.
@ -465,7 +465,7 @@ index e26e3625c99c8..c0d4a95607e37 100644
+#endif
}
diff --git chrome/browser/chrome_content_browser_client.cc chrome/browser/chrome_content_browser_client.cc
index 25b5c325f612d..76fdebb99df6c 100644
index e87d1bce19d63..43596857c5b8c 100644
--- chrome/browser/chrome_content_browser_client.cc
+++ chrome/browser/chrome_content_browser_client.cc
@@ -48,6 +48,7 @@
@ -474,9 +474,9 @@ index 25b5c325f612d..76fdebb99df6c 100644
#include "build/config/chromebox_for_meetings/buildflags.h" // PLATFORM_CFM
+#include "cef/libcef/features/features.h"
#include "chrome/browser/after_startup_task_utils.h"
#include "chrome/browser/ai/ai_manager_keyed_service_factory.h"
#include "chrome/browser/ai/ai_manager.h"
#include "chrome/browser/app_mode/app_mode_utils.h"
@@ -1516,6 +1517,8 @@ ChromeContentBrowserClient::GetPopupNavigationDelegateFactoryForTesting() {
@@ -1533,6 +1534,8 @@ ChromeContentBrowserClient::GetPopupNavigationDelegateFactoryForTesting() {
}
ChromeContentBrowserClient::ChromeContentBrowserClient() {
@ -485,7 +485,7 @@ index 25b5c325f612d..76fdebb99df6c 100644
#if BUILDFLAG(ENABLE_PLUGINS)
extra_parts_.push_back(
std::make_unique<ChromeContentBrowserClientPluginsPart>());
@@ -1553,6 +1556,11 @@ ChromeContentBrowserClient::~ChromeContentBrowserClient() {
@@ -1570,6 +1573,11 @@ ChromeContentBrowserClient::~ChromeContentBrowserClient() {
}
}
@ -497,7 +497,7 @@ index 25b5c325f612d..76fdebb99df6c 100644
// static
void ChromeContentBrowserClient::RegisterLocalStatePrefs(
PrefRegistrySimple* registry) {
@@ -4017,28 +4025,25 @@ bool UpdatePreferredColorScheme(WebPreferences* web_prefs,
@@ -4041,30 +4049,25 @@ bool UpdatePreferredColorScheme(WebPreferences* web_prefs,
web_prefs->preferred_color_scheme;
}
#else
@ -510,8 +510,10 @@ index 25b5c325f612d..76fdebb99df6c 100644
- Profile::FromBrowserContext(web_contents->GetBrowserContext())) {
- if (ThemeService* theme_service =
- ThemeServiceFactory::GetForProfile(profile)) {
- using_different_colored_frame = !theme_service->UsingDefaultTheme() ||
- theme_service->GetUserColor().has_value();
- using_different_colored_frame =
- !theme_service->UsingDefaultTheme() ||
- theme_service->GetUserColor().has_value() ||
- theme_service->UsingDeviceTheme();
- }
+ auto preferred_color_scheme = native_theme->GetPreferredColorScheme();
+
@ -543,7 +545,7 @@ index 25b5c325f612d..76fdebb99df6c 100644
#endif // BUILDFLAG(IS_ANDROID)
// Reauth WebUI doesn't support dark mode yet because it shares the dialog
@@ -4794,9 +4799,11 @@ void ChromeContentBrowserClient::BrowserURLHandlerCreated(
@@ -4820,9 +4823,11 @@ void ChromeContentBrowserClient::BrowserURLHandlerCreated(
&search::HandleNewTabURLReverseRewrite);
#endif // BUILDFLAG(IS_ANDROID)
@ -555,7 +557,7 @@ index 25b5c325f612d..76fdebb99df6c 100644
}
base::FilePath ChromeContentBrowserClient::GetDefaultDownloadDirectory() {
@@ -6903,7 +6910,7 @@ void ChromeContentBrowserClient::OnNetworkServiceCreated(
@@ -6933,7 +6938,7 @@ void ChromeContentBrowserClient::OnNetworkServiceCreated(
#endif
}
@ -564,7 +566,7 @@ index 25b5c325f612d..76fdebb99df6c 100644
content::BrowserContext* context,
bool in_memory,
const base::FilePath& relative_partition_path,
@@ -6921,6 +6928,8 @@ void ChromeContentBrowserClient::ConfigureNetworkContextParams(
@@ -6951,6 +6956,8 @@ void ChromeContentBrowserClient::ConfigureNetworkContextParams(
network_context_params->user_agent = GetUserAgentBasedOnPolicy(context);
network_context_params->accept_language = GetApplicationLocale();
}
@ -573,7 +575,7 @@ index 25b5c325f612d..76fdebb99df6c 100644
}
std::vector<base::FilePath>
@@ -8087,11 +8096,11 @@ void ChromeContentBrowserClient::OnKeepaliveRequestStarted(
@@ -8078,11 +8085,11 @@ void ChromeContentBrowserClient::OnKeepaliveRequestStarted(
const auto now = base::TimeTicks::Now();
const auto timeout = GetKeepaliveTimerTimeout(context);
keepalive_deadline_ = std::max(keepalive_deadline_, now + timeout);
@ -587,7 +589,7 @@ index 25b5c325f612d..76fdebb99df6c 100644
FROM_HERE, keepalive_deadline_ - now,
base::BindOnce(
&ChromeContentBrowserClient::OnKeepaliveTimerFired,
@@ -8113,7 +8122,8 @@ void ChromeContentBrowserClient::OnKeepaliveRequestFinished() {
@@ -8104,7 +8111,8 @@ void ChromeContentBrowserClient::OnKeepaliveRequestFinished() {
--num_keepalive_requests_;
if (num_keepalive_requests_ == 0) {
DVLOG(1) << "Stopping the keepalive timer";
@ -597,7 +599,7 @@ index 25b5c325f612d..76fdebb99df6c 100644
// This deletes the keep alive handle attached to the timer function and
// unblock the shutdown sequence.
}
@@ -8288,7 +8298,7 @@ void ChromeContentBrowserClient::OnKeepaliveTimerFired(
@@ -8279,7 +8287,7 @@ void ChromeContentBrowserClient::OnKeepaliveTimerFired(
const auto now = base::TimeTicks::Now();
const auto then = keepalive_deadline_;
if (now < then) {
@ -607,10 +609,10 @@ index 25b5c325f612d..76fdebb99df6c 100644
base::BindOnce(&ChromeContentBrowserClient::OnKeepaliveTimerFired,
weak_factory_.GetWeakPtr(),
diff --git chrome/browser/chrome_content_browser_client.h chrome/browser/chrome_content_browser_client.h
index 5d587e8473cb2..5fd83e7515ba5 100644
index 7317a435cae03..ce4826d7a6276 100644
--- chrome/browser/chrome_content_browser_client.h
+++ chrome/browser/chrome_content_browser_client.h
@@ -148,6 +148,8 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
@@ -156,6 +156,8 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
~ChromeContentBrowserClient() override;
@ -619,7 +621,7 @@ index 5d587e8473cb2..5fd83e7515ba5 100644
// TODO(crbug.com/41356866): This file is about calls from content/ out
// to chrome/ to get values or notify about events, but both of these
// functions are from chrome/ to chrome/ and don't involve content/ at all.
@@ -716,7 +718,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
@@ -727,7 +729,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
override;
void OnNetworkServiceCreated(
network::mojom::NetworkService* network_service) override;
@ -628,7 +630,7 @@ index 5d587e8473cb2..5fd83e7515ba5 100644
content::BrowserContext* context,
bool in_memory,
const base::FilePath& relative_partition_path,
@@ -1274,7 +1276,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
@@ -1309,7 +1311,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
#if !BUILDFLAG(IS_ANDROID)
uint64_t num_keepalive_requests_ = 0;
@ -638,7 +640,7 @@ index 5d587e8473cb2..5fd83e7515ba5 100644
#endif
diff --git chrome/browser/prefs/browser_prefs.cc chrome/browser/prefs/browser_prefs.cc
index a6002045888c4..6b96b3891822f 100644
index 39ec9e16a28b1..4f4a0307f5a9f 100644
--- chrome/browser/prefs/browser_prefs.cc
+++ chrome/browser/prefs/browser_prefs.cc
@@ -16,6 +16,7 @@
@ -660,7 +662,7 @@ index a6002045888c4..6b96b3891822f 100644
#if BUILDFLAG(ENABLE_EXTENSIONS)
#include "chrome/browser/accessibility/animation_policy_prefs.h"
#include "chrome/browser/apps/platform_apps/shortcut_manager.h"
@@ -1843,7 +1848,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
@@ -1929,7 +1934,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
#endif // BUILDFLAG(GOOGLE_CHROME_BRANDING)
#endif // BUILDFLAG(IS_WIN)
@ -670,7 +672,7 @@ index a6002045888c4..6b96b3891822f 100644
downgrade::RegisterPrefs(registry);
#endif
@@ -1896,6 +1902,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
@@ -1988,6 +1994,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) {
// This is intentionally last.
RegisterLocalStatePrefsForMigration(registry);
@ -682,7 +684,7 @@ index a6002045888c4..6b96b3891822f 100644
}
// Register prefs applicable to all profiles.
@@ -2344,6 +2355,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
@@ -2434,6 +2445,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry,
const std::string& locale) {
RegisterProfilePrefs(registry, locale);

View File

@ -1,5 +1,5 @@
diff --git chrome/browser/ui/browser_command_controller.cc chrome/browser/ui/browser_command_controller.cc
index ec7c90dc23958..0fa7a7110cf43 100644
index 3c9892007176f..2b119304bbe61 100644
--- chrome/browser/ui/browser_command_controller.cc
+++ chrome/browser/ui/browser_command_controller.cc
@@ -414,6 +414,7 @@ bool BrowserCommandController::ExecuteCommandWithDisposition(
@ -24,7 +24,7 @@ index ec7c90dc23958..0fa7a7110cf43 100644
// The order of commands in this switch statement must match the function
// declaration order in browser.h!
switch (id) {
@@ -1203,11 +1211,13 @@ void BrowserCommandController::TabRestoreServiceLoaded(
@@ -1210,11 +1218,13 @@ void BrowserCommandController::TabRestoreServiceLoaded(
// BrowserCommandController, private:
bool BrowserCommandController::IsShowingMainUI() {
@ -41,10 +41,10 @@ index ec7c90dc23958..0fa7a7110cf43 100644
void BrowserCommandController::InitCommandState() {
diff --git chrome/browser/ui/toolbar/app_menu_model.cc chrome/browser/ui/toolbar/app_menu_model.cc
index 5d09d33c4a730..205a4fbb6abe3 100644
index 2e2efe7e3e36e..8e7ee756c164d 100644
--- chrome/browser/ui/toolbar/app_menu_model.cc
+++ chrome/browser/ui/toolbar/app_menu_model.cc
@@ -714,10 +714,12 @@ FindAndEditSubMenuModel::FindAndEditSubMenuModel(
@@ -734,10 +734,12 @@ FindAndEditSubMenuModel::FindAndEditSubMenuModel(
ui::SimpleMenuModel::Delegate* delegate)
: SimpleMenuModel(delegate) {
AddItemWithStringIdAndVectorIcon(this, IDC_FIND, IDS_FIND, kSearchMenuIcon);
@ -57,7 +57,7 @@ index 5d09d33c4a730..205a4fbb6abe3 100644
}
class SaveAndShareSubMenuModel : public ui::SimpleMenuModel {
@@ -782,6 +784,57 @@ SaveAndShareSubMenuModel::SaveAndShareSubMenuModel(
@@ -802,6 +804,57 @@ SaveAndShareSubMenuModel::SaveAndShareSubMenuModel(
}
}
@ -115,7 +115,7 @@ index 5d09d33c4a730..205a4fbb6abe3 100644
} // namespace
////////////////////////////////////////////////////////////////////////////////
@@ -1696,7 +1749,7 @@ bool AppMenuModel::IsCommandIdChecked(int command_id) const {
@@ -1719,7 +1772,7 @@ bool AppMenuModel::IsCommandIdChecked(int command_id) const {
return false;
}
@ -124,7 +124,7 @@ index 5d09d33c4a730..205a4fbb6abe3 100644
GlobalError* error =
GlobalErrorServiceFactory::GetForProfile(browser_->profile())
->GetGlobalErrorByMenuItemCommandID(command_id);
@@ -1712,6 +1765,30 @@ bool AppMenuModel::IsCommandIdEnabled(int command_id) const {
@@ -1735,6 +1788,30 @@ bool AppMenuModel::IsCommandIdEnabled(int command_id) const {
}
}
@ -155,7 +155,7 @@ index 5d09d33c4a730..205a4fbb6abe3 100644
bool AppMenuModel::IsCommandIdAlerted(int command_id) const {
if (command_id == IDC_VIEW_PASSWORDS ||
command_id == IDC_SHOW_PASSWORD_MANAGER) {
@@ -1868,8 +1945,10 @@ void AppMenuModel::Build() {
@@ -1891,8 +1968,10 @@ void AppMenuModel::Build() {
IDS_CLEAR_BROWSING_DATA,
kTrashCanRefreshIcon);
@ -166,7 +166,7 @@ index 5d09d33c4a730..205a4fbb6abe3 100644
AddSeparator(ui::NORMAL_SEPARATOR);
AddItemWithStringIdAndVectorIcon(this, IDC_PRINT, IDS_PRINT, kPrintMenuIcon);
@@ -1965,6 +2044,11 @@ void AppMenuModel::Build() {
@@ -1988,6 +2067,11 @@ void AppMenuModel::Build() {
}
#endif // !BUILDFLAG(IS_CHROMEOS_ASH)
@ -200,10 +200,10 @@ index 84787f30b7b01..df979d0f711a0 100644
// Adds actionable global error menu items to the menu.
// Examples: Extension permissions and sign in errors.
diff --git chrome/browser/ui/views/find_bar_host.cc chrome/browser/ui/views/find_bar_host.cc
index 81455e1765477..7357122b31b1d 100644
index 614be06c945a4..88c7567d9f55e 100644
--- chrome/browser/ui/views/find_bar_host.cc
+++ chrome/browser/ui/views/find_bar_host.cc
@@ -583,6 +583,14 @@ gfx::Rect FindBarHost::GetDialogPosition(gfx::Rect avoid_overlapping_rect) {
@@ -590,6 +590,14 @@ gfx::Rect FindBarHost::GetDialogPosition(gfx::Rect avoid_overlapping_rect) {
// The BrowserView does Layout for the components that we care about
// positioning relative to, so we ask it to tell us where we should go.
gfx::Rect find_bar_bounds = browser_view_->GetFindBarBoundingBox();
@ -219,7 +219,7 @@ index 81455e1765477..7357122b31b1d 100644
return gfx::Rect();
}
diff --git chrome/browser/ui/views/frame/browser_frame.cc chrome/browser/ui/views/frame/browser_frame.cc
index cc1dbe6666468..c41b6e9cc4803 100644
index e3aa84f1eb3f5..8ccf7604083fe 100644
--- chrome/browser/ui/views/frame/browser_frame.cc
+++ chrome/browser/ui/views/frame/browser_frame.cc
@@ -112,15 +112,25 @@ ui::ColorProviderKey::SchemeVariant GetSchemeVariant(
@ -249,7 +249,7 @@ index cc1dbe6666468..c41b6e9cc4803 100644
+ }
}
BrowserFrame::~BrowserFrame() {}
BrowserFrame::~BrowserFrame() = default;
@@ -226,10 +236,20 @@ void BrowserFrame::LayoutWebAppWindowTitle(
}
@ -397,10 +397,10 @@ index 3d8a15049d4d2..66c4789581fe1 100644
// regenerated.
bool RegenerateFrameOnThemeChange(BrowserThemeChangeType theme_change_type);
diff --git chrome/browser/ui/views/frame/browser_view.cc chrome/browser/ui/views/frame/browser_view.cc
index 3944e4463304d..9f09d246c0b6a 100644
index 74e8fac8aa98c..6113937f860c4 100644
--- chrome/browser/ui/views/frame/browser_view.cc
+++ chrome/browser/ui/views/frame/browser_view.cc
@@ -361,10 +361,6 @@ constexpr base::FeatureParam<base::TimeDelta> kLoadingTabAnimationFrameDelay = {
@@ -362,10 +362,6 @@ constexpr base::FeatureParam<base::TimeDelta> kLoadingTabAnimationFrameDelay = {
&kChangeFrameRateOfLoadingTabAnimation, "loading_tab_animation_frame_delay",
base::Milliseconds(30)};
@ -411,7 +411,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
#if BUILDFLAG(IS_CHROMEOS)
// UMA histograms that record animation smoothness for tab loading animation.
constexpr char kTabLoadingSmoothnessHistogramName[] =
@@ -764,6 +760,14 @@ class BrowserViewLayoutDelegateImpl : public BrowserViewLayoutDelegate {
@@ -765,6 +761,14 @@ class BrowserViewLayoutDelegateImpl : public BrowserViewLayoutDelegate {
return browser_view_->frame()->GetTopInset() - browser_view_->y();
}
@ -426,7 +426,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
bool IsToolbarVisible() const override {
return browser_view_->IsToolbarVisible();
}
@@ -915,11 +919,21 @@ class BrowserView::AccessibilityModeObserver : public ui::AXModeObserver {
@@ -916,11 +920,21 @@ class BrowserView::AccessibilityModeObserver : public ui::AXModeObserver {
///////////////////////////////////////////////////////////////////////////////
// BrowserView, public:
@ -449,7 +449,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
SetShowIcon(
::ShouldShowWindowIcon(browser_.get(), AppUsesWindowControlsOverlay()));
@@ -1009,8 +1023,15 @@ BrowserView::BrowserView(std::unique_ptr<Browser> browser)
@@ -1022,8 +1036,15 @@ BrowserView::BrowserView(std::unique_ptr<Browser> browser)
contents_container->SetLayoutManager(std::make_unique<ContentsLayoutManager>(
devtools_web_view_, contents_web_view_, watermark_view_));
@ -467,7 +467,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
contents_separator_ =
top_container_->AddChildView(std::make_unique<ContentsSeparator>());
@@ -1094,7 +1115,9 @@ void BrowserView::ToggleCompactModeUI() {
@@ -1113,7 +1134,9 @@ void BrowserView::ToggleCompactModeUI() {
}
BrowserView::~BrowserView() {
@ -477,7 +477,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
// Destroy the top controls slide controller first as it depends on the
// tabstrip model and the browser frame.
@@ -1102,7 +1125,9 @@ BrowserView::~BrowserView() {
@@ -1121,7 +1144,9 @@ BrowserView::~BrowserView() {
// All the tabs should have been destroyed already. If we were closed by the
// OS with some tabs than the NativeBrowserFrame should have destroyed them.
@ -487,7 +487,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
// Stop the animation timer explicitly here to avoid running it in a nested
// message loop, which may run by Browser destructor.
@@ -1111,17 +1136,18 @@ BrowserView::~BrowserView() {
@@ -1130,17 +1155,18 @@ BrowserView::~BrowserView() {
// Immersive mode may need to reparent views before they are removed/deleted.
immersive_mode_controller_.reset();
@ -510,7 +510,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
// These are raw pointers to child views, so they need to be set to null
// before `RemoveAllChildViews()` is called to avoid dangling.
@@ -1702,6 +1728,16 @@ gfx::Point BrowserView::GetThemeOffsetFromBrowserView() const {
@@ -1706,6 +1732,16 @@ gfx::Point BrowserView::GetThemeOffsetFromBrowserView() const {
ThemeProperties::kFrameHeightAboveTabs - browser_view_origin.y());
}
@ -527,7 +527,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
// static:
BrowserView::DevToolsDockedPlacement BrowserView::GetDevToolsDockedPlacement(
const gfx::Rect& contents_webview_bounds,
@@ -2113,9 +2149,14 @@ void BrowserView::OnExclusiveAccessUserInput() {
@@ -2095,9 +2131,14 @@ void BrowserView::OnExclusiveAccessUserInput() {
bool BrowserView::ShouldHideUIForFullscreen() const {
// Immersive mode needs UI for the slide-down top panel.
@ -543,7 +543,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
return frame_->GetFrameView()->ShouldHideTopUIForFullscreen();
}
@@ -3297,7 +3338,8 @@ views::View* BrowserView::GetTopContainer() {
@@ -3283,7 +3324,8 @@ views::View* BrowserView::GetTopContainer() {
}
DownloadBubbleUIController* BrowserView::GetDownloadBubbleUIController() {
@ -553,7 +553,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
if (auto* download_button = toolbar_button_provider_->GetDownloadButton())
return download_button->bubble_controller();
return nullptr;
@@ -3865,7 +3907,8 @@ void BrowserView::ReparentTopContainerForEndOfImmersive() {
@@ -3872,7 +3914,8 @@ void BrowserView::ReparentTopContainerForEndOfImmersive() {
if (top_container()->parent() == this)
return;
@ -563,7 +563,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
top_container()->DestroyLayer();
AddChildViewAt(top_container(), 0);
EnsureFocusOrder();
@@ -4356,11 +4399,38 @@ void BrowserView::GetAccessiblePanes(std::vector<views::View*>* panes) {
@@ -4363,11 +4406,38 @@ void BrowserView::GetAccessiblePanes(std::vector<views::View*>* panes) {
bool BrowserView::ShouldDescendIntoChildForEventHandling(
gfx::NativeView child,
const gfx::Point& location) {
@ -604,7 +604,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
// Draggable regions are defined relative to the web contents.
gfx::Point point_in_contents_web_view_coords(location);
views::View::ConvertPointToTarget(GetWidget()->GetRootView(),
@@ -4369,7 +4439,7 @@ bool BrowserView::ShouldDescendIntoChildForEventHandling(
@@ -4376,7 +4446,7 @@ bool BrowserView::ShouldDescendIntoChildForEventHandling(
// Draggable regions should be ignored for clicks into any browser view's
// owned widgets, for example alerts, permission prompts or find bar.
@ -613,7 +613,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
point_in_contents_web_view_coords.x(),
point_in_contents_web_view_coords.y()) ||
WidgetOwnedByAnchorContainsPoint(point_in_contents_web_view_coords);
@@ -4480,8 +4550,10 @@ void BrowserView::Layout(PassKey) {
@@ -4487,8 +4557,10 @@ void BrowserView::Layout(PassKey) {
// TODO(jamescook): Why was this in the middle of layout code?
toolbar_->location_bar()->omnibox_view()->SetFocusBehavior(
@ -626,7 +626,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
// Some of the situations when the BrowserView is laid out are:
// - Enter/exit immersive fullscreen mode.
@@ -4547,6 +4619,11 @@ void BrowserView::AddedToWidget() {
@@ -4554,6 +4626,11 @@ void BrowserView::AddedToWidget() {
SetThemeProfileForWindow(GetNativeWindow(), browser_->profile());
#endif
@ -638,7 +638,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
toolbar_->Init();
// TODO(pbos): Investigate whether the side panels should be creatable when
@@ -4589,13 +4666,9 @@ void BrowserView::AddedToWidget() {
@@ -4596,13 +4673,9 @@ void BrowserView::AddedToWidget() {
EnsureFocusOrder();
@ -654,7 +654,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
using_native_frame_ = frame_->ShouldUseNativeFrame();
MaybeInitializeWebUITabStrip();
@@ -4964,7 +5037,8 @@ void BrowserView::ProcessFullscreen(bool fullscreen, const int64_t display_id) {
@@ -4984,7 +5057,8 @@ void BrowserView::ProcessFullscreen(bool fullscreen, const int64_t display_id) {
// Undo our anti-jankiness hacks and force a re-layout.
in_process_fullscreen_ = false;
ToolbarSizeChanged(false);
@ -664,7 +664,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
}
void BrowserView::RequestFullscreen(bool fullscreen, int64_t display_id) {
@@ -5448,6 +5522,8 @@ Profile* BrowserView::GetProfile() {
@@ -5468,6 +5542,8 @@ Profile* BrowserView::GetProfile() {
}
void BrowserView::UpdateUIForTabFullscreen() {
@ -673,7 +673,7 @@ index 3944e4463304d..9f09d246c0b6a 100644
frame()->GetFrameView()->UpdateFullscreenTopUI();
}
@@ -5470,6 +5546,8 @@ void BrowserView::HideDownloadShelf() {
@@ -5494,6 +5570,8 @@ bool BrowserView::CanUserEnterFullscreen() const {
}
bool BrowserView::CanUserExitFullscreen() const {
@ -683,10 +683,10 @@ index 3944e4463304d..9f09d246c0b6a 100644
}
diff --git chrome/browser/ui/views/frame/browser_view.h chrome/browser/ui/views/frame/browser_view.h
index 8addda3741841..5be1d534b9bd8 100644
index 37ccc8d71c797..13bc19bc97264 100644
--- chrome/browser/ui/views/frame/browser_view.h
+++ chrome/browser/ui/views/frame/browser_view.h
@@ -137,11 +137,16 @@ class BrowserView : public BrowserWindow,
@@ -138,11 +138,16 @@ class BrowserView : public BrowserWindow,
METADATA_HEADER(BrowserView, views::ClientView)
public:
@ -703,7 +703,7 @@ index 8addda3741841..5be1d534b9bd8 100644
void set_frame(BrowserFrame* frame) {
frame_ = frame;
paint_as_active_subscription_ =
@@ -839,6 +844,10 @@ class BrowserView : public BrowserWindow,
@@ -858,6 +863,10 @@ class BrowserView : public BrowserWindow,
void Copy();
void Paste();
@ -714,7 +714,7 @@ index 8addda3741841..5be1d534b9bd8 100644
protected:
// Enumerates where the devtools are docked relative to the browser's main
// web contents.
@@ -862,6 +871,8 @@ class BrowserView : public BrowserWindow,
@@ -881,6 +890,8 @@ class BrowserView : public BrowserWindow,
const gfx::Rect& contents_webview_bounds,
const gfx::Rect& local_webview_container_bounds);
@ -813,7 +813,7 @@ index 38064da1c8818..98ecdff6ce089 100644
bool toolbar_visible = delegate_->IsToolbarVisible();
int height = toolbar_visible ? toolbar_->GetPreferredSize().height() : 0;
diff --git chrome/browser/ui/views/frame/browser_view_layout_delegate.h chrome/browser/ui/views/frame/browser_view_layout_delegate.h
index 06ff29d3f9b27..65301b6ecf076 100644
index 451c5ad63337b..66f946c95b9b4 100644
--- chrome/browser/ui/views/frame/browser_view_layout_delegate.h
+++ chrome/browser/ui/views/frame/browser_view_layout_delegate.h
@@ -28,6 +28,7 @@ class BrowserViewLayoutDelegate {
@ -825,13 +825,13 @@ index 06ff29d3f9b27..65301b6ecf076 100644
virtual bool IsBookmarkBarVisible() const = 0;
virtual bool IsContentsSeparatorEnabled() const = 0;
diff --git chrome/browser/ui/views/frame/contents_web_view.cc chrome/browser/ui/views/frame/contents_web_view.cc
index 71445bfab1824..c77750ea2a820 100644
index f4f145ae7cfae..14839f50ed2a6 100644
--- chrome/browser/ui/views/frame/contents_web_view.cc
+++ chrome/browser/ui/views/frame/contents_web_view.cc
@@ -28,6 +28,12 @@ ContentsWebView::ContentsWebView(content::BrowserContext* browser_context)
: views::WebView(browser_context),
status_bubble_(nullptr) {
SetProperty(views::kElementIdentifierKey, kContentsWebViewElementId);
@@ -40,6 +40,12 @@ ContentsWebView::ContentsWebView(content::BrowserContext* browser_context)
// `glic_border_` should never receive input events.
glic_border_->SetCanProcessEventsWithinSubtree(false);
#endif
+
+ // Mouse events on draggable regions will not be handled by the WebView.
+ // Avoid the resulting DCHECK in NativeViewHost::OnMousePressed by
@ -943,10 +943,10 @@ index 33c6444869375..d74818698d81a 100644
LocationBarView* location_bar_view = browser_view_->GetLocationBarView();
CHECK(location_bar_view);
diff --git chrome/browser/ui/views/page_action/page_action_icon_controller.cc chrome/browser/ui/views/page_action/page_action_icon_controller.cc
index ba726946aa3cd..e62fe9c21290a 100644
index 8654a377fbbd3..f996d5fa8caf3 100644
--- chrome/browser/ui/views/page_action/page_action_icon_controller.cc
+++ chrome/browser/ui/views/page_action/page_action_icon_controller.cc
@@ -97,6 +97,12 @@ void PageActionIconController::Init(const PageActionIconParams& params,
@@ -98,6 +98,12 @@ void PageActionIconController::Init(const PageActionIconParams& params,
};
for (PageActionIconType type : params.types_enabled) {
@ -960,10 +960,10 @@ index ba726946aa3cd..e62fe9c21290a 100644
case PageActionIconType::kPaymentsOfferNotification:
add_page_action_icon(
diff --git chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
index 3cfed2fdd5acf..720b418456292 100644
index c7ab9cfd1875b..426ece7031e0d 100644
--- chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
+++ chrome/browser/ui/views/tabs/browser_tab_strip_controller.cc
@@ -605,29 +605,41 @@ gfx::Range BrowserTabStripController::ListTabsInGroup(
@@ -621,29 +621,41 @@ gfx::Range BrowserTabStripController::ListTabsInGroup(
}
bool BrowserTabStripController::IsFrameCondensed() const {
@ -1006,7 +1006,7 @@ index 3cfed2fdd5acf..720b418456292 100644
}
diff --git chrome/browser/ui/views/toolbar/toolbar_view.cc chrome/browser/ui/views/toolbar/toolbar_view.cc
index b85883d5057b2..71835868d795b 100644
index f34f61e26192d..21183da4a4483 100644
--- chrome/browser/ui/views/toolbar/toolbar_view.cc
+++ chrome/browser/ui/views/toolbar/toolbar_view.cc
@@ -186,7 +186,7 @@ class TabstripLikeBackground : public views::Background {
@ -1084,7 +1084,7 @@ index b85883d5057b2..71835868d795b 100644
cast = media_router::CastToolbarButton::Create(browser_);
}
}
@@ -376,7 +393,8 @@ void ToolbarView::Init() {
@@ -377,7 +394,8 @@ void ToolbarView::Init() {
std::unique_ptr<send_tab_to_self::SendTabToSelfToolbarIconView>
send_tab_to_self_button;
@ -1094,7 +1094,7 @@ index b85883d5057b2..71835868d795b 100644
send_tab_to_self_button =
std::make_unique<send_tab_to_self::SendTabToSelfToolbarIconView>(
browser_view_);
@@ -836,7 +854,8 @@ void ToolbarView::Layout(PassKey) {
@@ -837,7 +855,8 @@ void ToolbarView::Layout(PassKey) {
if (display_mode_ == DisplayMode::NORMAL) {
LayoutCommon();
@ -1105,10 +1105,10 @@ index b85883d5057b2..71835868d795b 100644
if (toolbar_controller_) {
diff --git chrome/browser/ui/views/toolbar/toolbar_view.h chrome/browser/ui/views/toolbar/toolbar_view.h
index 01dfd343c678a..2cfa5dd830fba 100644
index 54a3847f9496c..fce14ce2d26cf 100644
--- chrome/browser/ui/views/toolbar/toolbar_view.h
+++ chrome/browser/ui/views/toolbar/toolbar_view.h
@@ -93,7 +93,8 @@ class ToolbarView : public views::AccessiblePaneView,
@@ -92,7 +92,8 @@ class ToolbarView : public views::AccessiblePaneView,
// needs to be displayed.
};

View File

@ -1,5 +1,5 @@
diff --git content/browser/devtools/devtools_instrumentation.h content/browser/devtools/devtools_instrumentation.h
index 6253416703b73..66a482b46795b 100644
index c67463381a180..96471c063b8bf 100644
--- content/browser/devtools/devtools_instrumentation.h
+++ content/browser/devtools/devtools_instrumentation.h
@@ -114,7 +114,7 @@ bool ApplyUserAgentMetadataOverrides(
@ -55,7 +55,7 @@ index 09d80f2ba678d..5dbff44c280a1 100644
explicit SyntheticGestureTargetBase(RenderWidgetHostImpl* host);
diff --git third_party/blink/renderer/controller/BUILD.gn third_party/blink/renderer/controller/BUILD.gn
index 624070f85e40b..2f0a5e6501f4d 100644
index 6ff75a6bb03e7..938113ef46a0d 100644
--- third_party/blink/renderer/controller/BUILD.gn
+++ third_party/blink/renderer/controller/BUILD.gn
@@ -38,6 +38,7 @@ component("controller") {

View File

@ -1,8 +1,8 @@
diff --git content/browser/devtools/devtools_http_handler.cc content/browser/devtools/devtools_http_handler.cc
index ab719bac2aa24..b2b3b240bcd6c 100644
index 8a8a0bdade6fe..59b9b4a7fe9da 100644
--- content/browser/devtools/devtools_http_handler.cc
+++ content/browser/devtools/devtools_http_handler.cc
@@ -598,7 +598,7 @@ void DevToolsHttpHandler::OnJsonRequest(
@@ -591,7 +591,7 @@ void DevToolsHttpHandler::OnJsonRequest(
base::Value::Dict version;
version.Set("Protocol-Version", DevToolsAgentHost::GetProtocolVersion());
version.Set("WebKit-Version", GetWebKitVersion());
@ -12,10 +12,10 @@ index ab719bac2aa24..b2b3b240bcd6c 100644
version.Set("V8-Version", V8_VERSION_STRING);
std::string host = info.GetHeaderValue("host");
diff --git content/browser/loader/navigation_url_loader_impl.cc content/browser/loader/navigation_url_loader_impl.cc
index f9fd6c73e21d5..1cf4e38bebde7 100644
index 4c616f376576a..a004e4df5d74e 100644
--- content/browser/loader/navigation_url_loader_impl.cc
+++ content/browser/loader/navigation_url_loader_impl.cc
@@ -862,7 +862,7 @@ NavigationURLLoaderImpl::CreateNonNetworkLoaderFactory(
@@ -863,7 +863,7 @@ NavigationURLLoaderImpl::CreateNonNetworkLoaderFactory(
mojo::PendingRemote<network::mojom::URLLoaderFactory>
terminal_external_protocol;
bool handled = GetContentClient()->browser()->HandleExternalProtocol(
@ -24,7 +24,7 @@ index f9fd6c73e21d5..1cf4e38bebde7 100644
frame_tree_node->frame_tree_node_id(), navigation_ui_data,
request_info.is_primary_main_frame,
frame_tree_node->IsInFencedFrameTree(), request_info.sandbox_flags,
@@ -874,6 +874,21 @@ NavigationURLLoaderImpl::CreateNonNetworkLoaderFactory(
@@ -875,6 +875,21 @@ NavigationURLLoaderImpl::CreateNonNetworkLoaderFactory(
*request_info.initiator_document_token)
: nullptr,
request_info.isolation_info, &terminal_external_protocol);
@ -47,10 +47,10 @@ index f9fd6c73e21d5..1cf4e38bebde7 100644
return std::make_pair(
/*is_cacheable=*/false,
diff --git content/public/browser/content_browser_client.cc content/public/browser/content_browser_client.cc
index a1b6aad3587e7..1ad9c4b2e50ad 100644
index 65b0ed931a305..0a4fe6a251468 100644
--- content/public/browser/content_browser_client.cc
+++ content/public/browser/content_browser_client.cc
@@ -1150,7 +1150,7 @@ ContentBrowserClient::CreateURLLoaderHandlerForServiceWorkerNavigationPreload(
@@ -1154,7 +1154,7 @@ ContentBrowserClient::CreateURLLoaderHandlerForServiceWorkerNavigationPreload(
void ContentBrowserClient::OnNetworkServiceCreated(
network::mojom::NetworkService* network_service) {}
@ -59,7 +59,7 @@ index a1b6aad3587e7..1ad9c4b2e50ad 100644
BrowserContext* context,
bool in_memory,
const base::FilePath& relative_partition_path,
@@ -1159,6 +1159,7 @@ void ContentBrowserClient::ConfigureNetworkContextParams(
@@ -1163,6 +1163,7 @@ void ContentBrowserClient::ConfigureNetworkContextParams(
cert_verifier_creation_params) {
network_context_params->user_agent = GetUserAgentBasedOnPolicy(context);
network_context_params->accept_language = "en-us,en";
@ -68,10 +68,10 @@ index a1b6aad3587e7..1ad9c4b2e50ad 100644
std::vector<base::FilePath>
diff --git content/public/browser/content_browser_client.h content/public/browser/content_browser_client.h
index 4d96255c40a8e..476bb6d52a68e 100644
index cb48835fab356..946495ef0db71 100644
--- content/public/browser/content_browser_client.h
+++ content/public/browser/content_browser_client.h
@@ -1352,6 +1352,12 @@ class CONTENT_EXPORT ContentBrowserClient {
@@ -1359,6 +1359,12 @@ class CONTENT_EXPORT ContentBrowserClient {
bool opener_suppressed,
bool* no_javascript_access);
@ -84,7 +84,7 @@ index 4d96255c40a8e..476bb6d52a68e 100644
// Allows the embedder to return a delegate for the SpeechRecognitionManager.
// The delegate will be owned by the manager. It's valid to return nullptr.
virtual SpeechRecognitionManagerDelegate*
@@ -2203,7 +2209,7 @@ class CONTENT_EXPORT ContentBrowserClient {
@@ -2217,7 +2223,7 @@ class CONTENT_EXPORT ContentBrowserClient {
//
// If |relative_partition_path| is the empty string, it means this needs to
// create the default NetworkContext for the BrowserContext.
@ -93,7 +93,7 @@ index 4d96255c40a8e..476bb6d52a68e 100644
BrowserContext* context,
bool in_memory,
const base::FilePath& relative_partition_path,
@@ -2427,6 +2433,22 @@ class CONTENT_EXPORT ContentBrowserClient {
@@ -2444,6 +2450,22 @@ class CONTENT_EXPORT ContentBrowserClient {
const net::IsolationInfo& isolation_info,
mojo::PendingRemote<network::mojom::URLLoaderFactory>* out_factory);
@ -116,7 +116,7 @@ index 4d96255c40a8e..476bb6d52a68e 100644
// Creates an OverlayWindow to be used for video or Picture-in-Picture.
// This window will house the content shown when in Picture-in-Picture mode.
// This will return a new OverlayWindow.
@@ -2487,6 +2509,10 @@ class CONTENT_EXPORT ContentBrowserClient {
@@ -2504,6 +2526,10 @@ class CONTENT_EXPORT ContentBrowserClient {
// Used as part of the user agent string.
virtual std::string GetProduct();
@ -153,7 +153,7 @@ index 42c94f71f09cf..853c508260f08 100644
// started.
virtual void SetRuntimeFeaturesDefaultsBeforeBlinkInitialization() {}
diff --git content/renderer/render_thread_impl.cc content/renderer/render_thread_impl.cc
index c848b7f8f7650..34fbb26f068e5 100644
index db991c27ab5d8..f8c1aeaf934c4 100644
--- content/renderer/render_thread_impl.cc
+++ content/renderer/render_thread_impl.cc
@@ -594,6 +594,8 @@ void RenderThreadImpl::Init() {
@ -166,7 +166,7 @@ index c848b7f8f7650..34fbb26f068e5 100644
base::BindRepeating(&RenderThreadImpl::OnRendererInterfaceReceiver,
base::Unretained(this)));
diff --git content/renderer/renderer_blink_platform_impl.cc content/renderer/renderer_blink_platform_impl.cc
index 4547a080e0675..78f4530d1406a 100644
index e4b0cdb22340c..013c176bd72c6 100644
--- content/renderer/renderer_blink_platform_impl.cc
+++ content/renderer/renderer_blink_platform_impl.cc
@@ -1031,6 +1031,15 @@ SkBitmap* RendererBlinkPlatformImpl::GetSadPageBitmap() {
@ -200,10 +200,10 @@ index 17c01a1f03ad4..33a484f412bba 100644
// plus eTLD+1, such as https://google.com), or to a more specific origin.
void SetIsLockedToSite();
diff --git content/shell/browser/shell_content_browser_client.cc content/shell/browser/shell_content_browser_client.cc
index 1390ea66ffe18..183a59f7566d7 100644
index bb9c07e92da20..37c0801f489f9 100644
--- content/shell/browser/shell_content_browser_client.cc
+++ content/shell/browser/shell_content_browser_client.cc
@@ -765,7 +765,7 @@ void ShellContentBrowserClient::OnNetworkServiceCreated(
@@ -773,7 +773,7 @@ void ShellContentBrowserClient::OnNetworkServiceCreated(
#endif
}
@ -212,7 +212,7 @@ index 1390ea66ffe18..183a59f7566d7 100644
BrowserContext* context,
bool in_memory,
const base::FilePath& relative_partition_path,
@@ -774,6 +774,7 @@ void ShellContentBrowserClient::ConfigureNetworkContextParams(
@@ -782,6 +782,7 @@ void ShellContentBrowserClient::ConfigureNetworkContextParams(
cert_verifier_creation_params) {
ConfigureNetworkContextParamsForShell(context, network_context_params,
cert_verifier_creation_params);
@ -221,10 +221,10 @@ index 1390ea66ffe18..183a59f7566d7 100644
std::vector<base::FilePath>
diff --git content/shell/browser/shell_content_browser_client.h content/shell/browser/shell_content_browser_client.h
index c6683ea8084fc..6c203dbb21777 100644
index 71dc7b791092b..8fb32c32f63f4 100644
--- content/shell/browser/shell_content_browser_client.h
+++ content/shell/browser/shell_content_browser_client.h
@@ -154,7 +154,7 @@ class ShellContentBrowserClient : public ContentBrowserClient {
@@ -158,7 +158,7 @@ class ShellContentBrowserClient : public ContentBrowserClient {
GetGeolocationSystemPermissionManager() override;
void OnNetworkServiceCreated(
network::mojom::NetworkService* network_service) override;
@ -234,10 +234,10 @@ index c6683ea8084fc..6c203dbb21777 100644
bool in_memory,
const base::FilePath& relative_partition_path,
diff --git headless/lib/browser/headless_content_browser_client.cc headless/lib/browser/headless_content_browser_client.cc
index 0473210d9c3e6..631300399a748 100644
index d52f189cebcf6..2392f71e5f343 100644
--- headless/lib/browser/headless_content_browser_client.cc
+++ headless/lib/browser/headless_content_browser_client.cc
@@ -390,7 +390,7 @@ bool HeadlessContentBrowserClient::IsCookieDeprecationLabelAllowedForContext(
@@ -391,7 +391,7 @@ bool HeadlessContentBrowserClient::IsCookieDeprecationLabelAllowedForContext(
return true;
}
@ -246,7 +246,7 @@ index 0473210d9c3e6..631300399a748 100644
content::BrowserContext* context,
bool in_memory,
const base::FilePath& relative_partition_path,
@@ -400,6 +400,7 @@ void HeadlessContentBrowserClient::ConfigureNetworkContextParams(
@@ -401,6 +401,7 @@ void HeadlessContentBrowserClient::ConfigureNetworkContextParams(
HeadlessBrowserContextImpl::From(context)->ConfigureNetworkContextParams(
in_memory, relative_partition_path, network_context_params,
cert_verifier_creation_params);

View File

@ -112,7 +112,7 @@ index c37f18d794ae2..fd360f7698bcf 100644
}
diff --git content/app/content_main_runner_impl.cc content/app/content_main_runner_impl.cc
index 93957c7a15594..8e3e18a9c8992 100644
index 74d648de9172e..25be08486a085 100644
--- content/app/content_main_runner_impl.cc
+++ content/app/content_main_runner_impl.cc
@@ -52,6 +52,7 @@
@ -123,7 +123,7 @@ index 93957c7a15594..8e3e18a9c8992 100644
#include "base/time/time.h"
#include "base/trace_event/trace_event.h"
#include "build/build_config.h"
@@ -1349,6 +1350,11 @@ void ContentMainRunnerImpl::Shutdown() {
@@ -1350,6 +1351,11 @@ void ContentMainRunnerImpl::Shutdown() {
is_shutdown_ = true;
}

View File

@ -147,43 +147,13 @@ index a274b3e364084..3d995cf643399 100644
// on the given `command_line`. For non-browser processes, allocates crash keys
// from the switch value set by AppendStringAnnotationsCommandLineSwitch().
diff --git components/crash/core/app/crash_reporter_client.cc components/crash/core/app/crash_reporter_client.cc
index c4535e6ad8dd8..119d5c159b894 100644
index b6a2910848c66..b58c359697cfe 100644
--- components/crash/core/app/crash_reporter_client.cc
+++ components/crash/core/app/crash_reporter_client.cc
@@ -70,7 +70,7 @@ bool CrashReporterClient::GetShouldDumpLargerDumps() {
}
#endif
-#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC)
+#if BUILDFLAG(IS_POSIX)
void CrashReporterClient::GetProductNameAndVersion(const char** product_name,
const char** version) {
}
@@ -79,6 +79,7 @@ void CrashReporterClient::GetProductNameAndVersion(std::string* product_name,
std::string* version,
std::string* channel) {}
+#if !BUILDFLAG(IS_MAC)
base::FilePath CrashReporterClient::GetReporterLogFilename() {
return base::FilePath();
}
@@ -88,6 +89,7 @@ bool CrashReporterClient::HandleCrashDump(const char* crashdump_filename,
return false;
}
#endif
+#endif
#if BUILDFLAG(IS_WIN)
bool CrashReporterClient::GetCrashDumpLocation(std::wstring* crash_dir) {
@@ -122,6 +124,28 @@ bool CrashReporterClient::ReportingIsEnforcedByPolicy(bool* breakpad_enabled) {
@@ -119,6 +119,23 @@ bool CrashReporterClient::ReportingIsEnforcedByPolicy(bool* breakpad_enabled) {
return false;
}
+bool CrashReporterClient::EnableBreakpadForProcess(
+ const std::string& process_type) {
+ return false;
+}
+
+void CrashReporterClient::GetCrashOptionalArguments(
+ std::vector<std::string>* arguments) {
+}
@ -204,18 +174,8 @@ index c4535e6ad8dd8..119d5c159b894 100644
#if BUILDFLAG(IS_ANDROID)
unsigned int CrashReporterClient::GetCrashDumpPercentage() {
return 100;
@@ -160,9 +184,4 @@ bool CrashReporterClient::ShouldMonitorCrashHandlerExpensively() {
return false;
}
-bool CrashReporterClient::EnableBreakpadForProcess(
- const std::string& process_type) {
- return false;
-}
-
} // namespace crash_reporter
diff --git components/crash/core/app/crash_reporter_client.h components/crash/core/app/crash_reporter_client.h
index 4029756b90d1a..711546896101b 100644
index 7c890b331be4a..75d22156605d3 100644
--- components/crash/core/app/crash_reporter_client.h
+++ components/crash/core/app/crash_reporter_client.h
@@ -7,7 +7,9 @@
@ -228,32 +188,7 @@ index 4029756b90d1a..711546896101b 100644
#include "build/build_config.h"
@@ -72,7 +74,7 @@ class CrashReporterClient {
virtual bool GetShouldDumpLargerDumps();
#endif
-#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC)
+#if BUILDFLAG(IS_POSIX)
// Returns a textual description of the product type and version to include
// in the crash report. Neither out parameter should be set to NULL.
// TODO(jperaza): Remove the 2-parameter overload of this method once all
@@ -83,6 +85,7 @@ class CrashReporterClient {
std::string* version,
std::string* channel);
+#if !BUILDFLAG(IS_MAC)
virtual base::FilePath GetReporterLogFilename();
// Custom crash minidump handler after the minidump is generated.
@@ -92,6 +95,7 @@ class CrashReporterClient {
// libc nor allocate memory normally.
virtual bool HandleCrashDump(const char* crashdump_filename,
uint64_t crash_pid);
+#endif
#endif
// The location where minidump files should be written. Returns true if
@@ -178,6 +182,20 @@ class CrashReporterClient {
@@ -190,6 +192,20 @@ class CrashReporterClient {
// Returns true if breakpad should run in the given process type.
virtual bool EnableBreakpadForProcess(const std::string& process_type);
@ -275,10 +210,10 @@ index 4029756b90d1a..711546896101b 100644
} // namespace crash_reporter
diff --git components/crash/core/app/crashpad.cc components/crash/core/app/crashpad.cc
index 641c9cdba5011..20a8b9983a476 100644
index 14563198df62b..63b2c14420927 100644
--- components/crash/core/app/crashpad.cc
+++ components/crash/core/app/crashpad.cc
@@ -128,7 +128,8 @@ bool InitializeCrashpadImpl(bool initial_client,
@@ -127,7 +127,8 @@ bool InitializeCrashpadImpl(bool initial_client,
// fallback. Forwarding is turned off for debug-mode builds even for the
// browser process, because the system's crash reporter can take a very long
// time to chew on symbols.
@ -289,7 +224,7 @@ index 641c9cdba5011..20a8b9983a476 100644
->set_system_crash_reporter_forwarding(crashpad::TriState::kDisabled);
}
diff --git components/crash/core/app/crashpad_linux.cc components/crash/core/app/crashpad_linux.cc
index 171095381e8ac..13407a7809844 100644
index aff834c0a9371..1eadd8bf1d421 100644
--- components/crash/core/app/crashpad_linux.cc
+++ components/crash/core/app/crashpad_linux.cc
@@ -23,6 +23,7 @@
@ -315,19 +250,19 @@ index 171095381e8ac..13407a7809844 100644
// When --use-cros-crash-reporter is set (below), the handler passes dumps
// to ChromeOS's /sbin/crash_reporter which in turn passes the dump to
@@ -189,8 +189,8 @@ bool PlatformCrashpadInitialization(
&product_version, &channel);
@@ -188,8 +188,8 @@ bool PlatformCrashpadInitialization(
crash_reporter_client->GetProductInfo(&product_info);
std::map<std::string, std::string> annotations;
- annotations["prod"] = product_name;
- annotations["ver"] = product_version;
+ annotations["product"] = product_name;
+ annotations["version"] = product_version;
- annotations["prod"] = product_info.product_name;
- annotations["ver"] = product_info.version;
+ annotations["product"] = product_info.product_name;
+ annotations["version"] = product_info.version;
#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
// Empty means stable.
@@ -207,7 +207,20 @@ bool PlatformCrashpadInitialization(
annotations["channel"] = channel;
@@ -206,7 +206,20 @@ bool PlatformCrashpadInitialization(
annotations["channel"] = product_info.channel;
}
- annotations["plat"] = std::string("Linux");
@ -348,7 +283,7 @@ index 171095381e8ac..13407a7809844 100644
#if BUILDFLAG(IS_CHROMEOS_LACROS)
// "build_time_millis" is used on LaCros chrome to determine when to stop
@@ -252,6 +265,12 @@ bool PlatformCrashpadInitialization(
@@ -251,6 +264,12 @@ bool PlatformCrashpadInitialization(
}
#endif
@ -362,7 +297,7 @@ index 171095381e8ac..13407a7809844 100644
annotations, arguments, false, false));
} else {
diff --git components/crash/core/app/crashpad_mac.mm components/crash/core/app/crashpad_mac.mm
index 42fe73aefe44f..575ce6732ae43 100644
index 42fe73aefe44f..9f150e30336ef 100644
--- components/crash/core/app/crashpad_mac.mm
+++ components/crash/core/app/crashpad_mac.mm
@@ -17,10 +17,13 @@
@ -379,17 +314,14 @@ index 42fe73aefe44f..575ce6732ae43 100644
#include "third_party/crashpad/crashpad/client/crash_report_database.h"
#include "third_party/crashpad/crashpad/client/crashpad_client.h"
#include "third_party/crashpad/crashpad/client/crashpad_info.h"
@@ -38,15 +41,25 @@ std::map<std::string, std::string> GetProcessSimpleAnnotations() {
@@ -38,15 +41,22 @@ std::map<std::string, std::string> GetProcessSimpleAnnotations() {
std::map<std::string, std::string> process_annotations;
@autoreleasepool {
NSBundle* outer_bundle = base::apple::OuterBundle();
+ CrashReporterClient* crash_reporter_client = GetCrashReporterClient();
+ const char* product_name = "";
+ const char* product_version = "";
+ crash_reporter_client->GetProductNameAndVersion(&product_name,
+ &product_version);
+ ProductInfo product_info;
+ GetCrashReporterClient()->GetProductInfo(&product_info);
+
+ if (strlen(product_name) == 0) {
+ if (product_info.product_name.empty()) {
#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
- process_annotations["prod"] = "Chrome_Mac";
+ process_annotations["product"] = "Chrome_Mac";
@ -406,12 +338,12 @@ index 42fe73aefe44f..575ce6732ae43 100644
+ base::SysNSStringToUTF8(product).append("_Mac");
#endif
+ } else {
+ process_annotations["product"] = product_name;
+ process_annotations["product"] = product_info.product_name;
+ }
#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
// Empty means stable.
@@ -77,12 +90,20 @@ std::map<std::string, std::string> GetProcessSimpleAnnotations() {
@@ -77,12 +87,20 @@ std::map<std::string, std::string> GetProcessSimpleAnnotations() {
}
}
@ -419,13 +351,13 @@ index 42fe73aefe44f..575ce6732ae43 100644
- base::apple::ObjCCast<NSString>([base::apple::FrameworkBundle()
- objectForInfoDictionaryKey:@"CFBundleShortVersionString"]);
- process_annotations["ver"] = base::SysNSStringToUTF8(version);
+ if (strlen(product_version) == 0) {
+ if (product_info.version.empty()) {
+ NSString* version =
+ base::apple::ObjCCast<NSString>([base::apple::FrameworkBundle()
+ objectForInfoDictionaryKey:@"CFBundleShortVersionString"]);
+ process_annotations["version"] = base::SysNSStringToUTF8(version);
+ } else {
+ process_annotations["version"] = product_version;
+ process_annotations["version"] = product_info.version;
+ }
- process_annotations["plat"] = std::string("OS X");
@ -437,7 +369,7 @@ index 42fe73aefe44f..575ce6732ae43 100644
} // @autoreleasepool
return process_annotations;
}();
@@ -142,10 +163,10 @@ bool PlatformCrashpadInitialization(
@@ -142,10 +160,10 @@ bool PlatformCrashpadInitialization(
if (initial_client) {
@autoreleasepool {
@ -452,7 +384,7 @@ index 42fe73aefe44f..575ce6732ae43 100644
// Is there a way to recover if this fails?
CrashReporterClient* crash_reporter_client = GetCrashReporterClient();
@@ -174,6 +195,12 @@ bool PlatformCrashpadInitialization(
@@ -174,6 +192,12 @@ bool PlatformCrashpadInitialization(
"--reset-own-crash-exception-port-to-system-default");
}

View File

@ -1,5 +1,5 @@
diff --git components/embedder_support/user_agent_utils.cc components/embedder_support/user_agent_utils.cc
index d46582b54b943..46331e763cf72 100644
index a8cb8f5dfff83..c8ed0a8d39a26 100644
--- components/embedder_support/user_agent_utils.cc
+++ components/embedder_support/user_agent_utils.cc
@@ -21,6 +21,7 @@
@ -21,7 +21,7 @@ index d46582b54b943..46331e763cf72 100644
namespace embedder_support {
namespace {
@@ -332,6 +337,14 @@ blink::UserAgentBrandList ShuffleBrandList(
@@ -331,6 +336,14 @@ blink::UserAgentBrandList ShuffleBrandList(
std::string GetProductAndVersion(
UserAgentReductionEnterprisePolicyState user_agent_reduction) {

View File

@ -12,10 +12,10 @@ index 44a11ec90ec9b..4c35b35a97f28 100644
# https://crbug.com/474506.
"//clank/java/BUILD.gn",
diff --git BUILD.gn BUILD.gn
index d91ef0419d702..f9b612ba8ac7a 100644
index ebd779ebd4223..e46c99c460149 100644
--- BUILD.gn
+++ BUILD.gn
@@ -20,6 +20,7 @@ import("//build/config/sanitizers/sanitizers.gni")
@@ -19,6 +19,7 @@ import("//build/config/sanitizers/sanitizers.gni")
import("//build/config/ui.gni")
import("//build/gn_logs.gni")
import("//build/util/generate_wrapper.gni")
@ -23,7 +23,7 @@ index d91ef0419d702..f9b612ba8ac7a 100644
import("//chrome/enterprise_companion/buildflags.gni")
import("//components/enterprise/buildflags/buildflags.gni")
import("//components/nacl/features.gni")
@@ -288,6 +289,10 @@ group("gn_all") {
@@ -291,6 +292,10 @@ group("gn_all") {
deps += root_extra_deps
@ -78,7 +78,7 @@ index bd41166938952..fba7843d79796 100644
visual_studio_version_logs = [ "windows_sdk_version=${windows_sdk_version}" ]
diff --git chrome/chrome_paks.gni chrome/chrome_paks.gni
index ca413e1286916..70379761ebd59 100644
index 53928b9d04267..74a16ee9466c8 100644
--- chrome/chrome_paks.gni
+++ chrome/chrome_paks.gni
@@ -6,6 +6,7 @@ import("//ash/ambient/resources/resources.gni")
@ -89,7 +89,7 @@ index ca413e1286916..70379761ebd59 100644
import("//chrome/browser/buildflags.gni")
import("//chrome/common/features.gni")
import("//components/compose/features.gni")
@@ -479,6 +480,10 @@ template("chrome_extra_paks") {
@@ -476,6 +477,10 @@ template("chrome_extra_paks") {
]
deps += [ "//extensions:extensions_resources" ]
}
@ -151,7 +151,7 @@ index c490d199bf51e..4c0de0d7a0822 100644
outputs = [
"$root_out_dir/chrome.7z",
diff --git tools/grit/grit_args.gni tools/grit/grit_args.gni
index 79d613489bac2..869b682d453ee 100644
index 5cf2768230fa5..f354073500d2c 100644
--- tools/grit/grit_args.gni
+++ tools/grit/grit_args.gni
@@ -5,7 +5,9 @@
@ -164,10 +164,10 @@ index 79d613489bac2..869b682d453ee 100644
shared_intermediate_dir = rebase_path(root_gen_dir, root_build_dir)
devtools_grd_path = "$shared_intermediate_dir/$devtools_grd_location"
@@ -36,6 +38,9 @@ _grit_defines = [
@@ -38,6 +40,9 @@ _grit_defines = [
"use_titlecase=${is_mac}",
# Mac and iOS want Title Case strings.
"use_titlecase=${is_apple}",
"is_desktop_android=${is_desktop_android}",
+
+ "enable_cef=${enable_cef}",
+ "enable_pseudolocales=${enable_pseudolocales}",

View File

@ -1,8 +1,8 @@
diff --git tools/gritsettings/resource_ids.spec tools/gritsettings/resource_ids.spec
index a5b89cfbae164..1c3532b2a8196 100644
index 8cc75da1353df..f8d45ba53bd95 100644
--- tools/gritsettings/resource_ids.spec
+++ tools/gritsettings/resource_ids.spec
@@ -1385,11 +1385,20 @@
@@ -1403,11 +1403,20 @@
"<(SHARED_INTERMEDIATE_DIR)/third_party/blink/public/strings/permission_element_generated_strings.grd": {
"META": {"sizes": {"messages": [2000],}},
"messages": [10080],

View File

@ -32,13 +32,13 @@ index 73d6ad5e9bb36..6c450e79c0f94 100644
return (dark_mode_support.allow_dark_mode_for_app ||
dark_mode_support.set_preferred_app_mode) &&
diff --git chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc
index a4fc1857349e4..65f620ac8e289 100644
index 963360a3247e1..18e6a1db9a73e 100644
--- chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc
+++ chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc
@@ -56,7 +56,10 @@ void ChromeBrowserMainExtraPartsViewsLinux::ToolkitInitialized() {
ui::CursorFactory::GetInstance()->ObserveThemeChanges();
}
#if defined(USE_DBUS)
#if BUILDFLAG(USE_DBUS)
- dark_mode_manager_ = std::make_unique<ui::DarkModeManagerLinux>();
+ if (!ui::NativeTheme::IsForcedDarkMode() &&
+ !ui::NativeTheme::IsForcedLightMode()) {

View File

@ -14,10 +14,10 @@ index 2f7f2a8f81ec0..6bea20e981df9 100644
}
}
diff --git ui/gtk/BUILD.gn ui/gtk/BUILD.gn
index 24f32893160ad..3315d46b4a910 100644
index 80e8ba9452862..77272e01247a8 100644
--- ui/gtk/BUILD.gn
+++ ui/gtk/BUILD.gn
@@ -175,4 +175,8 @@ component("gtk") {
@@ -174,4 +174,8 @@ component("gtk") {
# TODO: This should be removed.
deps += [ "//ui/ozone" ]

View File

@ -27,7 +27,7 @@ index 771c253082e2a..47a28fd56750e 100644
&GtkUi::OnCursorThemeNameChanged);
connect(settings, "notify::gtk-cursor-theme-size",
diff --git ui/ozone/platform/x11/ozone_platform_x11.cc ui/ozone/platform/x11/ozone_platform_x11.cc
index 50f3163e57544..db26d180ecb2a 100644
index ec79b3c8e3e43..64287c4354ad7 100644
--- ui/ozone/platform/x11/ozone_platform_x11.cc
+++ ui/ozone/platform/x11/ozone_platform_x11.cc
@@ -64,6 +64,8 @@ namespace ui {

View File

@ -1,8 +1,8 @@
diff --git chrome/browser/ui/views/profiles/profile_menu_view_base.cc chrome/browser/ui/views/profiles/profile_menu_view_base.cc
index 1f686ab2a03bd..c50f3ce1ed450 100644
index e588c950ab897..35e54c80d34eb 100644
--- chrome/browser/ui/views/profiles/profile_menu_view_base.cc
+++ chrome/browser/ui/views/profiles/profile_menu_view_base.cc
@@ -1254,8 +1254,8 @@ int ProfileMenuViewBase::GetMaxHeight() const {
@@ -1162,8 +1162,8 @@ int ProfileMenuViewBase::GetMaxHeight() const {
->GetDisplayNearestPoint(anchor_rect.CenterPoint())
.work_area();
int available_space = screen_space.bottom() - anchor_rect.bottom();

View File

@ -1,5 +1,5 @@
diff --git content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
index a8658f076970c..a5b96df9014e0 100644
index 767c532efd6cf..365bc048bdedc 100644
--- content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
+++ content/app_shim_remote_cocoa/render_widget_host_view_cocoa.mm
@@ -171,6 +171,13 @@ void ExtractUnderlines(NSAttributedString* string,
@ -16,7 +16,7 @@ index a8658f076970c..a5b96df9014e0 100644
// Private methods:
@interface RenderWidgetHostViewCocoa ()
@@ -767,6 +774,15 @@ void ExtractUnderlines(NSAttributedString* string,
@@ -786,6 +793,15 @@ void ExtractUnderlines(NSAttributedString* string,
}
- (BOOL)acceptsFirstMouse:(NSEvent*)theEvent {

View File

@ -30,7 +30,7 @@ index f28ebfee8218d..12f7539526c06 100644
}
if (has_msg)
diff --git base/task/current_thread.cc base/task/current_thread.cc
index 8506e9f5b1800..43c99a9c72798 100644
index 024422b65775b..773d856dff353 100644
--- base/task/current_thread.cc
+++ base/task/current_thread.cc
@@ -51,6 +51,8 @@ void CurrentThread::AddDestructionObserver(
@ -43,10 +43,10 @@ index 8506e9f5b1800..43c99a9c72798 100644
current_->RemoveDestructionObserver(destruction_observer);
}
diff --git base/task/current_thread.h base/task/current_thread.h
index 7a3e7ce2de408..2ebbd5bd8ef55 100644
index c44d2c1417f8d..6d4c218185c65 100644
--- base/task/current_thread.h
+++ base/task/current_thread.h
@@ -163,6 +163,12 @@ class BASE_EXPORT CurrentThread {
@@ -165,6 +165,12 @@ class BASE_EXPORT CurrentThread {
RegisterOnNextIdleCallbackPasskey,
OnceClosure on_next_idle_callback);
@ -59,7 +59,7 @@ index 7a3e7ce2de408..2ebbd5bd8ef55 100644
// Enables nested task processing in scope of an upcoming native message loop.
// Some unwanted message loops may occur when using common controls or printer
// functions. Hence, nested task processing is disabled by default to avoid
@@ -231,6 +237,13 @@ class BASE_EXPORT CurrentThread {
@@ -236,6 +242,13 @@ class BASE_EXPORT CurrentThread {
friend class web::WebTaskEnvironment;
raw_ptr<sequence_manager::internal::SequenceManagerImpl> current_;

View File

@ -12,10 +12,10 @@ index 37cb1dac49610..6e5989c73bf08 100644
virtual ~WebContentsView() = default;
diff --git extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
index bd3bb10e2d6b1..0559c97775444 100644
index ccaf9eee37f6f..cc78c1d432116 100644
--- extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
+++ extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
@@ -211,6 +211,8 @@ void MimeHandlerViewGuest::CreateInnerPage(
@@ -225,6 +225,8 @@ void MimeHandlerViewGuest::CreateInnerPage(
WebContents::CreateParams params(browser_context(),
guest_site_instance.get());
params.guest_delegate = this;

View File

@ -184,7 +184,7 @@ index 3de514b2696ba..ac057000ea20b 100644
MessagePipeHandle handle() const {
diff --git mojo/public/cpp/bindings/lib/connector.cc mojo/public/cpp/bindings/lib/connector.cc
index d9ec0189f1b9a..1d738ce04ff72 100644
index ffc753b121e53..f85b7e878588c 100644
--- mojo/public/cpp/bindings/lib/connector.cc
+++ mojo/public/cpp/bindings/lib/connector.cc
@@ -438,6 +438,8 @@ void Connector::OnSyncHandleWatcherHandleReady(const char* interface_name,

View File

@ -24,10 +24,10 @@ index 408edfb7578bb..c3e06bdbb4986 100644
bool URLRequestHttpJob::ShouldRecordPartitionedCookieUsage() const {
diff --git services/network/public/cpp/resource_request.cc services/network/public/cpp/resource_request.cc
index 57713d234ec93..dbf788d783740 100644
index 38882b4053305..87fbb1dc27246 100644
--- services/network/public/cpp/resource_request.cc
+++ services/network/public/cpp/resource_request.cc
@@ -326,7 +326,8 @@ bool ResourceRequest::EqualsForTesting(const ResourceRequest& request) const {
@@ -345,7 +345,8 @@ bool ResourceRequest::EqualsForTesting(const ResourceRequest& request) const {
}
bool ResourceRequest::SendsCookies() const {

View File

@ -1,8 +1,8 @@
diff --git net/test/embedded_test_server/embedded_test_server.cc net/test/embedded_test_server/embedded_test_server.cc
index d640d545e78c8..c70cf04088f2c 100644
index e9517e3a17aba..7df1fb0a65309 100644
--- net/test/embedded_test_server/embedded_test_server.cc
+++ net/test/embedded_test_server/embedded_test_server.cc
@@ -1091,7 +1091,7 @@ bool EmbeddedTestServer::PostTaskToIOThreadAndWait(base::OnceClosure closure) {
@@ -1115,7 +1115,7 @@ bool EmbeddedTestServer::PostTaskToIOThreadAndWait(base::OnceClosure closure) {
if (!base::CurrentThread::Get())
temporary_loop = std::make_unique<base::SingleThreadTaskExecutor>();
@ -11,7 +11,7 @@ index d640d545e78c8..c70cf04088f2c 100644
if (!io_thread_->task_runner()->PostTaskAndReply(
FROM_HERE, std::move(closure), run_loop.QuitClosure())) {
return false;
@@ -1118,7 +1118,7 @@ bool EmbeddedTestServer::PostTaskToIOThreadAndWaitWithResult(
@@ -1142,7 +1142,7 @@ bool EmbeddedTestServer::PostTaskToIOThreadAndWaitWithResult(
if (!base::CurrentThread::Get())
temporary_loop = std::make_unique<base::SingleThreadTaskExecutor>();

View File

@ -30,7 +30,7 @@ index 76057b3e50f78..d3b63a3b07805 100644
} // namespace input
diff --git components/input/render_input_router.h components/input/render_input_router.h
index d5c125e621004..cd1177744e1a8 100644
index 739d1f12ab1f5..e8abce61a7534 100644
--- components/input/render_input_router.h
+++ components/input/render_input_router.h
@@ -67,6 +67,7 @@ class COMPONENT_EXPORT(INPUT) RenderInputRouter
@ -56,10 +56,10 @@ index f1030a744809c..c222a209949e6 100644
return nullptr;
}
diff --git content/browser/renderer_host/render_widget_host_impl.cc content/browser/renderer_host/render_widget_host_impl.cc
index e8f68eca2104c..c579cff86fbbb 100644
index 74f2e51c7fa80..178d5bf538031 100644
--- content/browser/renderer_host/render_widget_host_impl.cc
+++ content/browser/renderer_host/render_widget_host_impl.cc
@@ -791,7 +791,7 @@ void RenderWidgetHostImpl::WasHidden() {
@@ -795,7 +795,7 @@ void RenderWidgetHostImpl::WasHidden() {
// Cancel pending pointer lock requests, unless there's an open user prompt.
// Prompts should remain open and functional across tab switches.
@ -68,7 +68,7 @@ index e8f68eca2104c..c579cff86fbbb 100644
RejectPointerLockOrUnlockIfNecessary(
blink::mojom::PointerLockResult::kWrongDocument);
}
@@ -3248,6 +3248,11 @@ void RenderWidgetHostImpl::DecrementInFlightEventCount(
@@ -3260,6 +3260,11 @@ void RenderWidgetHostImpl::DecrementInFlightEventCount(
}
}
@ -81,10 +81,10 @@ index e8f68eca2104c..c579cff86fbbb 100644
const WebInputEvent& event) {
if ((base::FeatureList::IsEnabled(
diff --git content/browser/renderer_host/render_widget_host_impl.h content/browser/renderer_host/render_widget_host_impl.h
index 01b87c84b32c0..e6061b75d201d 100644
index ddfae2b85cb88..87797bf82b401 100644
--- content/browser/renderer_host/render_widget_host_impl.h
+++ content/browser/renderer_host/render_widget_host_impl.h
@@ -841,6 +841,7 @@ class CONTENT_EXPORT RenderWidgetHostImpl
@@ -842,6 +842,7 @@ class CONTENT_EXPORT RenderWidgetHostImpl
void ProgressFlingIfNeeded(base::TimeTicks current_time);
void StopFling();

View File

@ -24,7 +24,7 @@ index a7742298af440..a7dab9f4f770b 100644
Microsoft::WRL::ComPtr<ID3D11Texture2D> d3d11_texture;
diff --git media/video/renderable_gpu_memory_buffer_video_frame_pool.cc media/video/renderable_gpu_memory_buffer_video_frame_pool.cc
index b27bcf13d3a5f..df1b2d697f7cc 100644
index 55756afa319d8..6291e6fad5dbc 100644
--- media/video/renderable_gpu_memory_buffer_video_frame_pool.cc
+++ media/video/renderable_gpu_memory_buffer_video_frame_pool.cc
@@ -193,7 +193,7 @@ gfx::Size GetBufferSizeInPixelsForVideoPixelFormat(
@ -63,9 +63,9 @@ index b27bcf13d3a5f..df1b2d697f7cc 100644
@@ -231,7 +248,7 @@ bool FrameResources::Initialize() {
viz::GetSharedImageFormat(buffer_format);
shared_image_ = context->CreateSharedImage(
- buffer_size_in_pixels, kBufferUsage, si_format, color_space_,
+ buffer_size_in_pixels, buffer_usage, si_format, color_space_,
kTopLeft_GrSurfaceOrigin, kPremul_SkAlphaType, kSharedImageUsage,
sync_token_);
shared_image_ =
- context->CreateSharedImage(buffer_size_in_pixels, kBufferUsage, si_format,
+ context->CreateSharedImage(buffer_size_in_pixels, buffer_usage, si_format,
color_space_, kSharedImageUsage, sync_token_);
if (!shared_image_) {
DLOG(ERROR) << "Failed to allocate shared image for frame: coded_size="

View File

@ -1,5 +1,5 @@
diff --git ui/base/resource/resource_bundle.cc ui/base/resource/resource_bundle.cc
index aae95534577aa..aad03d8ec994a 100644
index 0a5542436ac82..01c49f5e2733b 100644
--- ui/base/resource/resource_bundle.cc
+++ ui/base/resource/resource_bundle.cc
@@ -942,6 +942,12 @@ ResourceBundle::ResourceBundle(Delegate* delegate)
@ -28,7 +28,7 @@ index aae95534577aa..aad03d8ec994a 100644
void ResourceBundle::InitSharedInstance(Delegate* delegate) {
DCHECK(g_shared_instance_ == nullptr) << "ResourceBundle initialized twice";
diff --git ui/base/resource/resource_bundle.h ui/base/resource/resource_bundle.h
index 9323142348537..8a8ed019a0489 100644
index 5c91532db08be..97bb235e4cf81 100644
--- ui/base/resource/resource_bundle.h
+++ ui/base/resource/resource_bundle.h
@@ -224,6 +224,11 @@ class COMPONENT_EXPORT(UI_BASE) ResourceBundle {

View File

@ -1,8 +1,8 @@
diff --git content/browser/renderer_host/render_frame_host_impl.cc content/browser/renderer_host/render_frame_host_impl.cc
index d29dac8938055..c2bbba0d6c2ab 100644
index 62105d8104721..e23c3b9758397 100644
--- content/browser/renderer_host/render_frame_host_impl.cc
+++ content/browser/renderer_host/render_frame_host_impl.cc
@@ -9180,6 +9180,16 @@ void RenderFrameHostImpl::CreateNewWindow(
@@ -9147,6 +9147,16 @@ void RenderFrameHostImpl::CreateNewWindow(
return;
}
@ -19,7 +19,7 @@ index d29dac8938055..c2bbba0d6c2ab 100644
// Otherwise, consume user activation before we proceed. In particular, it is
// important to do this before we return from the |opener_suppressed| case
// below.
@@ -11558,6 +11568,7 @@ void RenderFrameHostImpl::CommitNavigation(
@@ -11505,6 +11515,7 @@ void RenderFrameHostImpl::CommitNavigation(
auto browser_calc_origin_to_commit =
navigation_request->GetOriginToCommitWithDebugInfo();
if (!process_lock.is_error_page() && !is_mhtml_subframe &&

View File

@ -1,5 +1,5 @@
diff --git content/browser/renderer_host/render_widget_host_view_aura.cc content/browser/renderer_host/render_widget_host_view_aura.cc
index 47b5f2b63ecf2..fa1a3be6d5e06 100644
index 9b258cb5dcbd0..7ebba152df594 100644
--- content/browser/renderer_host/render_widget_host_view_aura.cc
+++ content/browser/renderer_host/render_widget_host_view_aura.cc
@@ -6,6 +6,7 @@
@ -35,7 +35,7 @@ index 47b5f2b63ecf2..fa1a3be6d5e06 100644
}
#if BUILDFLAG(IS_WIN)
@@ -2542,6 +2546,16 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) {
@@ -2636,6 +2640,16 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) {
window_->layer()->SetColor(GetBackgroundColor() ? *GetBackgroundColor()
: SK_ColorWHITE);
UpdateFrameSinkIdRegistration();

View File

@ -1,8 +1,8 @@
diff --git net/cookies/cookie_monster.cc net/cookies/cookie_monster.cc
index 020b7141b4bf5..8879bae28f119 100644
index 91e4285ece39b..3396389f35360 100644
--- net/cookies/cookie_monster.cc
+++ net/cookies/cookie_monster.cc
@@ -635,6 +635,25 @@ void CookieMonster::SetCookieableSchemes(
@@ -631,6 +631,25 @@ void CookieMonster::SetCookieableSchemes(
MaybeRunCookieCallback(std::move(callback), true);
}
@ -29,7 +29,7 @@ index 020b7141b4bf5..8879bae28f119 100644
void CookieMonster::SetPersistSessionCookies(bool persist_session_cookies) {
DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
diff --git net/cookies/cookie_monster.h net/cookies/cookie_monster.h
index eaf790ed6050c..dfbe71c38204a 100644
index 36b4e9b449a61..f66faec1bc8e4 100644
--- net/cookies/cookie_monster.h
+++ net/cookies/cookie_monster.h
@@ -210,6 +210,8 @@ class NET_EXPORT CookieMonster : public CookieStore {
@ -58,10 +58,10 @@ index 3f0be99e0e145..0462ebbe9bedc 100644
// reset to null.
const CookieAccessDelegate* cookie_access_delegate() const {
diff --git services/network/cookie_manager.cc services/network/cookie_manager.cc
index 06a85c11e6604..c1d0bcfac60d4 100644
index 963ddd7d0fcce..81f37072b77fa 100644
--- services/network/cookie_manager.cc
+++ services/network/cookie_manager.cc
@@ -345,14 +345,9 @@ void CookieManager::AllowFileSchemeCookies(
@@ -347,14 +347,9 @@ void CookieManager::AllowFileSchemeCookies(
AllowFileSchemeCookiesCallback callback) {
OnSettingsWillChange();
@ -80,10 +80,10 @@ index 06a85c11e6604..c1d0bcfac60d4 100644
void CookieManager::SetForceKeepSessionState() {
diff --git services/network/network_context.cc services/network/network_context.cc
index cae84c27a26d6..ce496fd4f97ea 100644
index 285d36e3da419..320e2f4ed0a0d 100644
--- services/network/network_context.cc
+++ services/network/network_context.cc
@@ -2640,17 +2640,21 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
@@ -2637,17 +2637,21 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext(
network_service_->network_quality_estimator());
}
@ -114,10 +114,10 @@ index cae84c27a26d6..ce496fd4f97ea 100644
base::FeatureList::IsEnabled(features::kFledgePst)) {
trust_token_store_ = std::make_unique<PendingTrustTokenStore>();
diff --git services/network/public/mojom/network_context.mojom services/network/public/mojom/network_context.mojom
index f2c8a56442e0a..747948ea6d197 100644
index 32c82e61a37b4..be3f377f1f60e 100644
--- services/network/public/mojom/network_context.mojom
+++ services/network/public/mojom/network_context.mojom
@@ -366,6 +366,9 @@ struct NetworkContextParams {
@@ -367,6 +367,9 @@ struct NetworkContextParams {
// cookies. Otherwise it should be false.
bool persist_session_cookies = false;

View File

@ -1,8 +1,8 @@
diff --git content/browser/storage_partition_impl.cc content/browser/storage_partition_impl.cc
index c43bb22ce2326..f757f4aa5e822 100644
index 5a3104a5bf5b7..42a6428bbec20 100644
--- content/browser/storage_partition_impl.cc
+++ content/browser/storage_partition_impl.cc
@@ -3335,9 +3335,12 @@ void StoragePartitionImpl::InitNetworkContext() {
@@ -3388,9 +3388,12 @@ void StoragePartitionImpl::InitNetworkContext() {
cert_verifier::mojom::CertVerifierCreationParamsPtr
cert_verifier_creation_params =
cert_verifier::mojom::CertVerifierCreationParams::New();

View File

@ -1,5 +1,5 @@
diff --git base/trace_event/builtin_categories.h base/trace_event/builtin_categories.h
index ef993705e4a36..8d1d9a1be4603 100644
index 59e484bd1e2e3..b47169ff79364 100644
--- base/trace_event/builtin_categories.h
+++ base/trace_event/builtin_categories.h
@@ -71,6 +71,8 @@

View File

@ -1,5 +1,5 @@
diff --git BUILD.gn BUILD.gn
index 0c559713ea0..9b2f2daff7a 100644
index c5d180039d2..0068199adb1 100644
--- BUILD.gn
+++ BUILD.gn
@@ -11,6 +11,7 @@ import("//build/config/mips.gni")
@ -10,7 +10,7 @@ index 0c559713ea0..9b2f2daff7a 100644
import("//third_party/icu/config.gni")
import("gni/snapshot_toolchain.gni")
@@ -458,6 +459,9 @@ declare_args() {
@@ -454,6 +455,9 @@ declare_args() {
# Some fuzzers depend on fuzzing functionality linked into the v8 library.
# For binary size reasons this functionality is not always available.
v8_wasm_random_fuzzers = ""

View File

@ -1,8 +1,8 @@
diff --git chrome/browser/ui/views/toolbar/app_menu.cc chrome/browser/ui/views/toolbar/app_menu.cc
index e96fca7585c60..5cb08115ca9f8 100644
index b7dff19efeee6..2ff00fe179839 100644
--- chrome/browser/ui/views/toolbar/app_menu.cc
+++ chrome/browser/ui/views/toolbar/app_menu.cc
@@ -1014,7 +1014,9 @@ void AppMenu::RunMenu(views::MenuButtonController* host) {
@@ -1043,7 +1043,9 @@ void AppMenu::RunMenu(views::MenuButtonController* host) {
host->button()->GetWidget(), host,
host->button()->GetAnchorBoundsInScreen(),
views::MenuAnchorPosition::kTopRight, ui::mojom::MenuSourceType::kNone,
@ -133,10 +133,10 @@ index c579f65dce9f0..a04e0d1f66aaa 100644
friend class test::InkDropHostTestApi;
diff --git ui/views/controls/button/label_button.cc ui/views/controls/button/label_button.cc
index 5b675ae814e09..bcea717c1a23b 100644
index f0ba9bff47d86..06d5803a77c3f 100644
--- ui/views/controls/button/label_button.cc
+++ ui/views/controls/button/label_button.cc
@@ -585,6 +585,12 @@ void LabelButton::OnThemeChanged() {
@@ -611,6 +611,12 @@ void LabelButton::OnThemeChanged() {
SchedulePaint();
}
@ -150,10 +150,10 @@ index 5b675ae814e09..bcea717c1a23b 100644
Button::StateChanged(old_state);
ResetLabelEnabledColor();
diff --git ui/views/controls/button/label_button.h ui/views/controls/button/label_button.h
index 7586a6f089f62..4e3a40b33f535 100644
index 4a6ec6307fb8b..c01c1eb2f9853 100644
--- ui/views/controls/button/label_button.h
+++ ui/views/controls/button/label_button.h
@@ -186,6 +186,9 @@ class VIEWS_EXPORT LabelButton : public Button,
@@ -188,6 +188,9 @@ class VIEWS_EXPORT LabelButton : public Button,
// widget, and the parent of the containing widget.
ButtonState GetVisualState() const;
@ -164,7 +164,7 @@ index 7586a6f089f62..4e3a40b33f535 100644
LabelButtonImageContainer* image_container() {
return image_container_.get();
diff --git ui/views/controls/label.cc ui/views/controls/label.cc
index d3267b9532029..9fa167d45b039 100644
index f97a2d37d2ef5..6ef612c096dfb 100644
--- ui/views/controls/label.cc
+++ ui/views/controls/label.cc
@@ -52,12 +52,29 @@ enum LabelPropertyKey {
@ -197,8 +197,8 @@ index d3267b9532029..9fa167d45b039 100644
} // namespace
namespace views {
@@ -518,6 +535,15 @@ void Label::SetElideBehavior(gfx::ElideBehavior elide_behavior) {
#endif // BUILDFLAG(SUPPORTS_AX_TEXT_OFFSETS)
@@ -532,6 +549,15 @@ void Label::SetElideBehavior(gfx::ElideBehavior elide_behavior) {
OnDisplayTextTruncation();
}
+void Label::SetDrawStringsFlags(int flags) {
@ -211,9 +211,9 @@ index d3267b9532029..9fa167d45b039 100644
+}
+
std::u16string Label::GetTooltipText() const {
return tooltip_text_;
return GetCachedTooltipText();
}
@@ -837,6 +863,16 @@ std::unique_ptr<gfx::RenderText> Label::CreateRenderText() const {
@@ -863,6 +889,16 @@ std::unique_ptr<gfx::RenderText> Label::CreateRenderText() const {
render_text->SelectRange(stored_selection_range_);
}
@ -231,7 +231,7 @@ index d3267b9532029..9fa167d45b039 100644
}
diff --git ui/views/controls/label.h ui/views/controls/label.h
index 0bd787bbc8687..6745dcddc5829 100644
index 7457d09c12b8c..8f320e892a571 100644
--- ui/views/controls/label.h
+++ ui/views/controls/label.h
@@ -246,6 +246,10 @@ class VIEWS_EXPORT Label : public View,
@ -242,10 +242,10 @@ index 0bd787bbc8687..6745dcddc5829 100644
+ void SetDrawStringsFlags(int flags);
+ int GetDrawStringsFlags() const { return draw_strings_flags_; }
+
// Gets/Sets the tooltip text. Default behavior for a label (single-line) is
// to show the full text if it is wider than its bounds. Calling this
// overrides the default behavior and lets you set a custom tooltip. To
@@ -540,6 +544,7 @@ class VIEWS_EXPORT Label : public View,
// Gets/Sets the custom local tooltip text. Default behavior for a label
// (single-line) is to show the full text if it is wider than its bounds.
// Calling this overrides the default behavior and lets you set a custom
@@ -548,6 +552,7 @@ class VIEWS_EXPORT Label : public View,
int max_width_ = 0;
// This is used in single-line mode.
int max_width_single_line_ = 0;
@ -254,11 +254,11 @@ index 0bd787bbc8687..6745dcddc5829 100644
std::unique_ptr<SelectionController> selection_controller_;
diff --git ui/views/controls/menu/menu_controller.cc ui/views/controls/menu/menu_controller.cc
index eea71e213db16..5e915151d5fa4 100644
index 3a406a6489f42..e937ca0d2890e 100644
--- ui/views/controls/menu/menu_controller.cc
+++ ui/views/controls/menu/menu_controller.cc
@@ -578,7 +578,8 @@ void MenuController::Run(Widget* parent,
MenuAnchorPosition position,
@@ -579,7 +579,8 @@ void MenuController::Run(Widget* parent,
ui::mojom::MenuSourceType source_type,
bool context_menu,
bool is_nested_drag,
- gfx::NativeView native_view_for_gestures) {
@ -267,7 +267,7 @@ index eea71e213db16..5e915151d5fa4 100644
exit_type_ = ExitType::kNone;
possible_drag_ = false;
drag_in_progress_ = false;
@@ -622,6 +623,7 @@ void MenuController::Run(Widget* parent,
@@ -629,6 +630,7 @@ void MenuController::Run(Widget* parent,
owner_->AddObserver(this);
native_view_for_gestures_ = native_view_for_gestures;
@ -275,7 +275,7 @@ index eea71e213db16..5e915151d5fa4 100644
// Only create a MenuPreTargetHandler for non-nested menus. Nested menus
// will use the existing one.
@@ -2272,6 +2274,7 @@ void MenuController::OpenMenuImpl(MenuItemView* item, bool show) {
@@ -2279,6 +2281,7 @@ void MenuController::OpenMenuImpl(MenuItemView* item, bool show) {
params.do_capture = do_capture;
params.native_view_for_gestures = native_view_for_gestures_;
params.owned_window_anchor = anchor;
@ -283,7 +283,7 @@ index eea71e213db16..5e915151d5fa4 100644
if (item->GetParentMenuItem()) {
params.context = item->GetWidget();
// (crbug.com/1414232) The item to be open is a submenu. Make sure
@@ -2965,8 +2968,13 @@ MenuItemView* MenuController::FindInitialSelectableMenuItem(
@@ -2972,8 +2975,13 @@ MenuItemView* MenuController::FindInitialSelectableMenuItem(
void MenuController::OpenSubmenuChangeSelectionIfCan() {
MenuItemView* item = pending_state_.item;
@ -298,7 +298,7 @@ index eea71e213db16..5e915151d5fa4 100644
// Show the sub-menu.
SetSelection(item, SELECTION_OPEN_SUBMENU | SELECTION_UPDATE_IMMEDIATELY);
@@ -2986,8 +2994,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() {
@@ -2993,8 +3001,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() {
void MenuController::CloseSubmenu() {
MenuItemView* item = state_.item;
DCHECK(item);
@ -311,21 +311,20 @@ index eea71e213db16..5e915151d5fa4 100644
SetSelection(item, SELECTION_UPDATE_IMMEDIATELY);
else if (item->GetParentMenuItem()->GetParentMenuItem())
diff --git ui/views/controls/menu/menu_controller.h ui/views/controls/menu/menu_controller.h
index 24daa0f4c9d5d..fd7b977b597e7 100644
index 737b5dd9a243e..44b088afd01c8 100644
--- ui/views/controls/menu/menu_controller.h
+++ ui/views/controls/menu/menu_controller.h
@@ -138,7 +138,9 @@ class VIEWS_EXPORT MenuController final : public gfx::AnimationDelegate,
MenuAnchorPosition position,
bool context_menu,
bool is_nested_drag,
@@ -140,7 +140,8 @@ class VIEWS_EXPORT MenuController final : public gfx::AnimationDelegate,
ui::mojom::MenuSourceType source_type = ui::mojom::MenuSourceType::kNone,
bool context_menu = false,
bool is_nested_drag = false,
- gfx::NativeView native_view_for_gestures = gfx::NativeView());
+ gfx::NativeView native_view_for_gestures = gfx::NativeView(),
+ gfx::AcceleratedWidget parent_widget =
+ gfx::kNullAcceleratedWidget);
+ gfx::AcceleratedWidget parent_widget = gfx::kNullAcceleratedWidget);
bool for_drop() const { return for_drop_; }
@@ -738,6 +740,8 @@ class VIEWS_EXPORT MenuController final : public gfx::AnimationDelegate,
@@ -740,6 +741,8 @@ class VIEWS_EXPORT MenuController final : public gfx::AnimationDelegate,
// RunType::SEND_GESTURE_EVENTS_TO_OWNER is set.
gfx::NativeView native_view_for_gestures_ = gfx::NativeView();
@ -410,10 +409,10 @@ index fc1d5fccc3845..c065cafcd537c 100644
explicit MenuHost(SubmenuView* submenu);
diff --git ui/views/controls/menu/menu_item_view.cc ui/views/controls/menu/menu_item_view.cc
index 212a38af0598d..0fb02b639aefd 100644
index b4cd3e5a49763..992314f502a0f 100644
--- ui/views/controls/menu/menu_item_view.cc
+++ ui/views/controls/menu/menu_item_view.cc
@@ -1107,6 +1107,15 @@ void MenuItemView::PaintBackground(gfx::Canvas* canvas,
@@ -1113,6 +1113,15 @@ void MenuItemView::PaintBackground(gfx::Canvas* canvas,
spilling_rect.set_y(spilling_rect.y() - corner_radius_);
spilling_rect.set_height(spilling_rect.height() + corner_radius_);
canvas->DrawRoundRect(spilling_rect, corner_radius_, flags);
@ -429,7 +428,7 @@ index 212a38af0598d..0fb02b639aefd 100644
} else if (paint_as_selected) {
gfx::Rect item_bounds = GetLocalBounds();
if (type_ == Type::kActionableSubMenu) {
@@ -1177,6 +1186,13 @@ void MenuItemView::PaintMinorIconAndText(gfx::Canvas* canvas, SkColor color) {
@@ -1183,6 +1192,13 @@ void MenuItemView::PaintMinorIconAndText(gfx::Canvas* canvas, SkColor color) {
}
SkColor MenuItemView::GetTextColor(bool minor, bool paint_as_selected) const {
@ -444,7 +443,7 @@ index 212a38af0598d..0fb02b639aefd 100644
// use the default color.
if (!paint_as_selected && foreground_color_id_.has_value()) {
diff --git ui/views/controls/menu/menu_model_adapter.cc ui/views/controls/menu/menu_model_adapter.cc
index b6836ecbbeb13..56a7c14fb1f8c 100644
index 1041002b24a7b..0216af1096281 100644
--- ui/views/controls/menu/menu_model_adapter.cc
+++ ui/views/controls/menu/menu_model_adapter.cc
@@ -4,6 +4,7 @@
@ -455,7 +454,7 @@ index b6836ecbbeb13..56a7c14fb1f8c 100644
#include <list>
#include <memory>
#include <utility>
@@ -241,6 +242,71 @@ bool MenuModelAdapter::IsItemChecked(int id) const {
@@ -245,6 +246,71 @@ bool MenuModelAdapter::IsItemChecked(int id) const {
return model->IsItemCheckedAt(index);
}
@ -553,7 +552,7 @@ index d2e0377559862..de2b0e2d2fa28 100644
void WillHideMenu(MenuItemView* menu) override;
void OnMenuClosed(MenuItemView* menu) override;
diff --git ui/views/controls/menu/menu_runner.cc ui/views/controls/menu/menu_runner.cc
index 720cd4aed05c1..2cb6f982ae8d6 100644
index 87739aa15210f..e785faf160c2e 100644
--- ui/views/controls/menu/menu_runner.cc
+++ ui/views/controls/menu/menu_runner.cc
@@ -43,6 +43,7 @@ void MenuRunner::RunMenuAt(
@ -567,9 +566,9 @@ index 720cd4aed05c1..2cb6f982ae8d6 100644
@@ -90,7 +91,7 @@ void MenuRunner::RunMenuAt(
}
impl_->RunMenuAt(parent, button_controller, bounds, anchor, run_types_,
- native_view_for_gestures, corners,
+ native_view_for_gestures, parent_widget, corners,
impl_->RunMenuAt(parent, button_controller, bounds, anchor, source_type,
- run_types_, native_view_for_gestures, corners,
+ run_types_, native_view_for_gestures, parent_widget, corners,
std::move(show_menu_host_duration_histogram));
}
@ -587,20 +586,20 @@ index 493fda82af500..38d3344d97074 100644
std::optional<std::string> show_menu_host_duration_histogram =
std::nullopt);
diff --git ui/views/controls/menu/menu_runner_impl.cc ui/views/controls/menu/menu_runner_impl.cc
index 0ef0f5ed80dcd..2c2fefdc1b4d2 100644
index 13fd4d8b5b536..256b4af43b3ec 100644
--- ui/views/controls/menu/menu_runner_impl.cc
+++ ui/views/controls/menu/menu_runner_impl.cc
@@ -116,6 +116,7 @@ void MenuRunnerImpl::RunMenuAt(
MenuAnchorPosition anchor,
@@ -117,6 +117,7 @@ void MenuRunnerImpl::RunMenuAt(
ui::mojom::MenuSourceType source_type,
int32_t run_types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget,
std::optional<gfx::RoundedCornersF> corners,
std::optional<std::string> show_menu_host_duration_histogram) {
closing_event_time_ = base::TimeTicks();
@@ -189,7 +190,7 @@ void MenuRunnerImpl::RunMenuAt(
@@ -190,7 +191,7 @@ void MenuRunnerImpl::RunMenuAt(
controller->Run(parent, button_controller, menu_.get(), bounds, anchor,
(run_types & MenuRunner::CONTEXT_MENU) != 0,
source_type, (run_types & MenuRunner::CONTEXT_MENU) != 0,
(run_types & MenuRunner::NESTED_DRAG) != 0,
- native_view_for_gestures);
+ native_view_for_gestures, parent_widget);
@ -608,52 +607,52 @@ index 0ef0f5ed80dcd..2c2fefdc1b4d2 100644
void MenuRunnerImpl::Cancel() {
diff --git ui/views/controls/menu/menu_runner_impl.h ui/views/controls/menu/menu_runner_impl.h
index c36540ede44a1..6e60ee28bad17 100644
index 5dbd93d7ed343..b82c2beeef701 100644
--- ui/views/controls/menu/menu_runner_impl.h
+++ ui/views/controls/menu/menu_runner_impl.h
@@ -53,6 +53,7 @@ class VIEWS_EXPORT MenuRunnerImpl : public MenuRunnerImplInterface,
MenuAnchorPosition anchor,
int32_t run_types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget,
@@ -56,6 +56,7 @@ class VIEWS_EXPORT MenuRunnerImpl : public MenuRunnerImplInterface,
ui::mojom::MenuSourceType source_type = ui::mojom::MenuSourceType::kNone,
int32_t run_types = MenuRunner::NO_FLAGS,
gfx::NativeView native_view_for_gestures = {},
+ gfx::AcceleratedWidget parent_widget = gfx::kNullAcceleratedWidget,
std::optional<gfx::RoundedCornersF> corners = std::nullopt,
std::optional<std::string> show_menu_host_duration_histogram =
std::nullopt) override;
diff --git ui/views/controls/menu/menu_runner_impl_adapter.cc ui/views/controls/menu/menu_runner_impl_adapter.cc
index 35f1542e2162d..702ede49238af 100644
index d23190775a306..8a1467a1f828f 100644
--- ui/views/controls/menu/menu_runner_impl_adapter.cc
+++ ui/views/controls/menu/menu_runner_impl_adapter.cc
@@ -36,10 +36,11 @@ void MenuRunnerImplAdapter::RunMenuAt(
MenuAnchorPosition anchor,
@@ -37,10 +37,11 @@ void MenuRunnerImplAdapter::RunMenuAt(
ui::mojom::MenuSourceType source_type,
int32_t types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget,
std::optional<gfx::RoundedCornersF> corners,
std::optional<std::string> show_menu_host_duration_histogram) {
impl_->RunMenuAt(parent, button_controller, bounds, anchor, types,
- native_view_for_gestures);
+ native_view_for_gestures, parent_widget);
impl_->RunMenuAt(parent, button_controller, bounds, anchor, source_type,
- types, native_view_for_gestures);
+ types, native_view_for_gestures, parent_widget);
}
void MenuRunnerImplAdapter::Cancel() {
diff --git ui/views/controls/menu/menu_runner_impl_adapter.h ui/views/controls/menu/menu_runner_impl_adapter.h
index 546818cef0120..8d2bccf62588e 100644
index 16c697fcceeff..c20377c8eb10b 100644
--- ui/views/controls/menu/menu_runner_impl_adapter.h
+++ ui/views/controls/menu/menu_runner_impl_adapter.h
@@ -44,6 +44,7 @@ class VIEWS_EXPORT MenuRunnerImplAdapter : public MenuRunnerImplInterface {
MenuAnchorPosition anchor,
int32_t types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget,
@@ -47,6 +47,7 @@ class VIEWS_EXPORT MenuRunnerImplAdapter : public MenuRunnerImplInterface {
ui::mojom::MenuSourceType source_type = ui::mojom::MenuSourceType::kNone,
int32_t run_types = MenuRunner::NO_FLAGS,
gfx::NativeView native_view_for_gestures = {},
+ gfx::AcceleratedWidget parent_widget = gfx::kNullAcceleratedWidget,
std::optional<gfx::RoundedCornersF> corners = std::nullopt,
std::optional<std::string> show_menu_host_duration_histogram =
std::nullopt) override;
diff --git ui/views/controls/menu/menu_runner_impl_cocoa.h ui/views/controls/menu/menu_runner_impl_cocoa.h
index b0d0334939730..18a5a159ccaf4 100644
index e315ccc4cda65..8222030bd21f9 100644
--- ui/views/controls/menu/menu_runner_impl_cocoa.h
+++ ui/views/controls/menu/menu_runner_impl_cocoa.h
@@ -43,6 +43,7 @@ class VIEWS_EXPORT MenuRunnerImplCocoa : public MenuRunnerImplInterface {
MenuAnchorPosition anchor,
@@ -44,6 +44,7 @@ class VIEWS_EXPORT MenuRunnerImplCocoa : public MenuRunnerImplInterface {
ui::mojom::MenuSourceType source_type,
int32_t run_types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget,
@ -661,11 +660,11 @@ index b0d0334939730..18a5a159ccaf4 100644
std::optional<std::string> show_menu_host_duration_histogram) override;
void Cancel() override;
diff --git ui/views/controls/menu/menu_runner_impl_cocoa.mm ui/views/controls/menu/menu_runner_impl_cocoa.mm
index d9ee2469c6f5e..13bcee3f329ba 100644
index 52f3f0bc7e703..cf0eec570bd1e 100644
--- ui/views/controls/menu/menu_runner_impl_cocoa.mm
+++ ui/views/controls/menu/menu_runner_impl_cocoa.mm
@@ -70,6 +70,7 @@ void MenuRunnerImplCocoa::RunMenuAt(
MenuAnchorPosition anchor,
@@ -71,6 +71,7 @@ void MenuRunnerImplCocoa::RunMenuAt(
ui::mojom::MenuSourceType source_type,
int32_t run_types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget /*parent_widget*/,
@ -673,11 +672,11 @@ index d9ee2469c6f5e..13bcee3f329ba 100644
std::optional<std::string> show_menu_host_duration_histogram) {
DCHECK(!IsRunning());
diff --git ui/views/controls/menu/menu_runner_impl_interface.h ui/views/controls/menu/menu_runner_impl_interface.h
index 972abab3bf46f..ce6b32b1524e8 100644
index 465f774e1ec90..c99b51b9f0eba 100644
--- ui/views/controls/menu/menu_runner_impl_interface.h
+++ ui/views/controls/menu/menu_runner_impl_interface.h
@@ -47,6 +47,8 @@ class MenuRunnerImplInterface {
MenuAnchorPosition anchor,
@@ -50,6 +50,8 @@ class MenuRunnerImplInterface {
ui::mojom::MenuSourceType source_type,
int32_t run_types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget =
@ -686,11 +685,11 @@ index 972abab3bf46f..ce6b32b1524e8 100644
std::optional<std::string> show_menu_host_duration_histogram =
std::nullopt) = 0;
diff --git ui/views/controls/menu/menu_runner_impl_mac.h ui/views/controls/menu/menu_runner_impl_mac.h
index db81eab045142..ca439366e66ef 100644
index 6b71a13002d27..da0d2bf4dc774 100644
--- ui/views/controls/menu/menu_runner_impl_mac.h
+++ ui/views/controls/menu/menu_runner_impl_mac.h
@@ -40,6 +40,7 @@ class VIEWS_EXPORT MenuRunnerImplMac : public MenuRunnerImplInterface {
MenuAnchorPosition anchor,
@@ -41,6 +41,7 @@ class VIEWS_EXPORT MenuRunnerImplMac : public MenuRunnerImplInterface {
ui::mojom::MenuSourceType source_type,
int32_t run_types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget,
@ -698,34 +697,33 @@ index db81eab045142..ca439366e66ef 100644
std::optional<std::string> show_menu_host_duration_histogram) override;
void Cancel() override;
diff --git ui/views/controls/menu/menu_runner_impl_mac.mm ui/views/controls/menu/menu_runner_impl_mac.mm
index 27f83d5eece36..27d07d70c912e 100644
index 1b5d97c3f6b49..3da7b69d6f7d0 100644
--- ui/views/controls/menu/menu_runner_impl_mac.mm
+++ ui/views/controls/menu/menu_runner_impl_mac.mm
@@ -47,6 +47,7 @@ void MenuRunnerImplMac::RunMenuAt(
MenuAnchorPosition anchor,
@@ -48,6 +48,7 @@ void MenuRunnerImplMac::RunMenuAt(
ui::mojom::MenuSourceType source_type,
int32_t run_types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget,
std::optional<gfx::RoundedCornersF> corners,
std::optional<std::string> show_menu_host_duration_histogram) {
if (!implementation_) {
@@ -59,8 +60,8 @@ void MenuRunnerImplMac::RunMenuAt(
}
@@ -61,7 +62,8 @@ void MenuRunnerImplMac::RunMenuAt(
}
implementation_->RunMenuAt(parent, button_controller, bounds, anchor,
- run_types, native_view_for_gestures, corners,
- show_menu_host_duration_histogram);
+ run_types, native_view_for_gestures, parent_widget,
+ corners, show_menu_host_duration_histogram);
source_type, run_types, native_view_for_gestures,
- corners, show_menu_host_duration_histogram);
+ parent_widget, corners,
+ show_menu_host_duration_histogram);
}
void MenuRunnerImplMac::Cancel() {
diff --git ui/views/controls/menu/menu_runner_impl_remote_cocoa.h ui/views/controls/menu/menu_runner_impl_remote_cocoa.h
index 7aaf6d82e09d4..c3af2bdf748fb 100644
index 9c4a933af7836..cacf9aa1ae144 100644
--- ui/views/controls/menu/menu_runner_impl_remote_cocoa.h
+++ ui/views/controls/menu/menu_runner_impl_remote_cocoa.h
@@ -58,6 +58,7 @@ class VIEWS_EXPORT MenuRunnerImplRemoteCocoa
MenuAnchorPosition anchor,
@@ -59,6 +59,7 @@ class VIEWS_EXPORT MenuRunnerImplRemoteCocoa
ui::mojom::MenuSourceType source_type,
int32_t run_types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget,
@ -733,11 +731,11 @@ index 7aaf6d82e09d4..c3af2bdf748fb 100644
std::optional<std::string> show_menu_host_duration_histogram) override;
void Cancel() override;
diff --git ui/views/controls/menu/menu_runner_impl_remote_cocoa.mm ui/views/controls/menu/menu_runner_impl_remote_cocoa.mm
index e171461e28836..e137275a22a12 100644
index da772edd48c00..43c930e932287 100644
--- ui/views/controls/menu/menu_runner_impl_remote_cocoa.mm
+++ ui/views/controls/menu/menu_runner_impl_remote_cocoa.mm
@@ -70,6 +70,7 @@ void MenuRunnerImplRemoteCocoa::RunMenuAt(
MenuAnchorPosition anchor,
@@ -71,6 +71,7 @@ void MenuRunnerImplRemoteCocoa::RunMenuAt(
ui::mojom::MenuSourceType source_type,
int32_t run_types,
gfx::NativeView native_view_for_gestures,
+ gfx::AcceleratedWidget parent_widget,
@ -745,7 +743,7 @@ index e171461e28836..e137275a22a12 100644
std::optional<std::string> show_menu_host_duration_histogram) {
RunMenu(parent, bounds.CenterPoint());
diff --git ui/views/controls/menu/menu_scroll_view_container.cc ui/views/controls/menu/menu_scroll_view_container.cc
index a1476c32d31c5..2c988a5bb3d4f 100644
index 3dc4156dd046c..020f016ffc261 100644
--- ui/views/controls/menu/menu_scroll_view_container.cc
+++ ui/views/controls/menu/menu_scroll_view_container.cc
@@ -266,6 +266,11 @@ MenuScrollViewContainer::MenuScrollViewContainer(SubmenuView* content_view)
@ -785,7 +783,7 @@ index 92b86fccb3a30..964351594f1e4 100644
if (root_location != root_current_location &&
!g_ozone_ui_controls_test_helper->MustUseUiControlsForMoveCursorTo() &&
diff --git ui/views/view.h ui/views/view.h
index d3f42b37d06fa..fbf1b94c7e07a 100644
index 61f50d010646c..8bf476f6f85df 100644
--- ui/views/view.h
+++ ui/views/view.h
@@ -25,6 +25,7 @@

View File

@ -1,8 +1,8 @@
diff --git ui/views/controls/textfield/textfield.cc ui/views/controls/textfield/textfield.cc
index 85bb58edd7041..36d9bf3ae5263 100644
index 1991c859c67da..b955ffd4b6fd3 100644
--- ui/views/controls/textfield/textfield.cc
+++ ui/views/controls/textfield/textfield.cc
@@ -3028,6 +3028,10 @@ void Textfield::OnCursorBlinkTimerFired() {
@@ -3033,6 +3033,10 @@ void Textfield::OnCursorBlinkTimerFired() {
void Textfield::OnEnabledChanged() {
if (GetInputMethod())
GetInputMethod()->OnTextInputTypeChanged(this);

View File

@ -23,7 +23,7 @@ index 60c1a8d04fdb6..728a44ee45ab7 100644
case ui::mojom::WindowShowState::kEnd:
return ui::mojom::WindowShowState::kNormal;
diff --git components/sessions/core/session_service_commands.cc components/sessions/core/session_service_commands.cc
index 6b72cf19cf723..48f7f6f2c1f75 100644
index 2ef4f942b572c..144ae7facf733 100644
--- components/sessions/core/session_service_commands.cc
+++ components/sessions/core/session_service_commands.cc
@@ -166,9 +166,10 @@ enum PersistedWindowShowState {
@ -49,7 +49,7 @@ index 6b72cf19cf723..48f7f6f2c1f75 100644
case ui::mojom::WindowShowState::kMaximized:
return PERSISTED_SHOW_STATE_MAXIMIZED;
diff --git components/sessions/core/tab_restore_service_impl.cc components/sessions/core/tab_restore_service_impl.cc
index 514f81ee655f5..ba5ab6729b359 100644
index 2da47939180ec..672c0cd69dbe2 100644
--- components/sessions/core/tab_restore_service_impl.cc
+++ components/sessions/core/tab_restore_service_impl.cc
@@ -198,6 +198,7 @@ int SerializeWindowShowState(ui::mojom::WindowShowState show_state) {
@ -61,7 +61,7 @@ index 514f81ee655f5..ba5ab6729b359 100644
case ui::mojom::WindowShowState::kMaximized:
return kSerializedShowStateMaximized;
diff --git content/browser/renderer_host/render_widget_host_view_base.cc content/browser/renderer_host/render_widget_host_view_base.cc
index 7684afb6afe8e..fe3195fdbc37b 100644
index 2fb637bba3e00..32fccf5ad2bf3 100644
--- content/browser/renderer_host/render_widget_host_view_base.cc
+++ content/browser/renderer_host/render_widget_host_view_base.cc
@@ -586,6 +586,14 @@ float RenderWidgetHostViewBase::GetScaleOverrideForCapture() const {
@ -80,7 +80,7 @@ index 7684afb6afe8e..fe3195fdbc37b 100644
if (!GetMouseWheelPhaseHandler())
return;
diff --git content/browser/renderer_host/render_widget_host_view_base.h content/browser/renderer_host/render_widget_host_view_base.h
index bdd8712db25a5..ae8a13e7f4c49 100644
index 8377a897ff00c..8a6569878be07 100644
--- content/browser/renderer_host/render_widget_host_view_base.h
+++ content/browser/renderer_host/render_widget_host_view_base.h
@@ -70,6 +70,7 @@ namespace content {
@ -91,7 +91,7 @@ index bdd8712db25a5..ae8a13e7f4c49 100644
class ScopedViewTransitionResources;
class TextInputManager;
class TouchSelectionControllerClientManager;
@@ -150,6 +151,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
@@ -151,6 +152,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
float GetDeviceScaleFactor() const final;
bool IsPointerLocked() override;
@ -101,7 +101,7 @@ index bdd8712db25a5..ae8a13e7f4c49 100644
// Identical to `CopyFromSurface()`, except that this method issues the
// `viz::CopyOutputRequest` against the exact `viz::Surface` currently
// embedded by this View, while `CopyFromSurface()` may return a copy of any
@@ -211,6 +215,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
@@ -212,6 +216,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
// Called when screen information or native widget bounds change.
virtual void UpdateScreenInfo();
@ -112,7 +112,7 @@ index bdd8712db25a5..ae8a13e7f4c49 100644
// Called by the TextInputManager to notify the view about being removed from
// the list of registered views, i.e., TextInputManager is no longer tracking
// TextInputState from this view. The RWHV should reset |text_input_manager_|
@@ -337,6 +345,12 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
@@ -338,6 +346,12 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
const gfx::Rect& bounds,
const gfx::Rect& anchor_rect) = 0;
@ -125,7 +125,7 @@ index bdd8712db25a5..ae8a13e7f4c49 100644
// Indicates whether the page has finished loading.
virtual void SetIsLoading(bool is_loading) = 0;
@@ -587,6 +601,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
@@ -594,6 +608,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
// to all displays.
gfx::Size system_cursor_size_;
@ -136,7 +136,7 @@ index bdd8712db25a5..ae8a13e7f4c49 100644
private:
FRIEND_TEST_ALL_PREFIXES(
BrowserSideFlingBrowserTest,
@@ -608,10 +626,6 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
@@ -615,10 +633,6 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
void SynchronizeVisualProperties();
@ -196,7 +196,7 @@ index 41b34a27176a3..bdf5f9d4bb61e 100644
if (host_ && set_focus_on_mouse_down_or_key_event_) {
set_focus_on_mouse_down_or_key_event_ = false;
diff --git content/public/browser/render_widget_host_view.h content/public/browser/render_widget_host_view.h
index b4ff7c11d8e3c..b21417f89e6e1 100644
index 7cd4d56bb2ac2..19034a43949b1 100644
--- content/public/browser/render_widget_host_view.h
+++ content/public/browser/render_widget_host_view.h
@@ -254,6 +254,14 @@ class CONTENT_EXPORT RenderWidgetHostView {
@ -215,10 +215,10 @@ index b4ff7c11d8e3c..b21417f89e6e1 100644
// Set the view's active state (i.e., tint state of controls).
virtual void SetActive(bool active) = 0;
diff --git ui/aura/native_window_occlusion_tracker_win.cc ui/aura/native_window_occlusion_tracker_win.cc
index 2c79ae48b7069..81cd4a84b0a6c 100644
index 8e5a41d4cffbf..8cce7323e1a6b 100644
--- ui/aura/native_window_occlusion_tracker_win.cc
+++ ui/aura/native_window_occlusion_tracker_win.cc
@@ -100,6 +100,13 @@ void NativeWindowOcclusionTrackerWin::Enable(Window* window) {
@@ -103,6 +103,13 @@ void NativeWindowOcclusionTrackerWin::Enable(Window* window) {
// when it's no longer true that all windows are minimized, and when the
// window is destroyed.
HWND root_window_hwnd = window->GetHost()->GetAcceleratedWidget();
@ -246,10 +246,10 @@ index aeaf8e35f7eda..4b7cc3f03d3cf 100644
+ [MinVersion=1] kEnd = 7,
};
diff --git ui/ozone/platform/x11/x11_window.cc ui/ozone/platform/x11/x11_window.cc
index 9dc4c165beecb..26a1c56f2c9d7 100644
index 8704240b0562e..01d34736d3ad9 100644
--- ui/ozone/platform/x11/x11_window.cc
+++ ui/ozone/platform/x11/x11_window.cc
@@ -1861,7 +1861,8 @@ void X11Window::CreateXWindow(const PlatformWindowInitProperties& properties) {
@@ -1876,7 +1876,8 @@ void X11Window::CreateXWindow(const PlatformWindowInitProperties& properties) {
req.border_pixel = 0;
bounds_in_pixels_ = SanitizeBounds(bounds);
@ -273,10 +273,10 @@ index e31c5b4cb6726..1b724948c2868 100644
return host ? host->GetAcceleratedWidget() : nullptr;
}
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc
index feffe48a5695d..69a544dba8fb1 100644
index 102fcca7507a4..ebc688c1744e2 100644
--- ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc
@@ -193,6 +193,18 @@ Widget::MoveLoopResult DesktopWindowTreeHostLinux::RunMoveLoop(
@@ -191,6 +191,18 @@ Widget::MoveLoopResult DesktopWindowTreeHostLinux::RunMoveLoop(
return result;
}
@ -295,7 +295,7 @@ index feffe48a5695d..69a544dba8fb1 100644
void DesktopWindowTreeHostLinux::DispatchEvent(ui::Event* event) {
// In Windows, the native events sent to chrome are separated into client
// and non-client versions of events, which we record on our LocatedEvent
@@ -328,6 +340,8 @@ void DesktopWindowTreeHostLinux::AddAdditionalInitProperties(
@@ -326,6 +338,8 @@ void DesktopWindowTreeHostLinux::AddAdditionalInitProperties(
properties->wayland_app_id = params.wayland_app_id;
@ -337,7 +337,7 @@ index 590f97eee1fda..3980e814e80b9 100644
base::WeakPtrFactory<DesktopWindowTreeHostLinux> weak_factory_{this};
};
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
index 9690d769e804f..4e2f015d1a142 100644
index 156cbebe16934..0ea0af09b36bd 100644
--- ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc
@@ -269,8 +269,8 @@ void DesktopWindowTreeHostPlatform::Init(const Widget::InitParams& params) {
@ -352,7 +352,7 @@ index 9690d769e804f..4e2f015d1a142 100644
// Calculate initial bounds.
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
index 6cd2eace306cb..a6246e6cb6f3f 100644
index 8a37f2e19d2c8..a0ec5975f1ecc 100644
--- ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
@@ -20,6 +20,7 @@
@ -410,9 +410,9 @@ index 6cd2eace306cb..a6246e6cb6f3f 100644
// Stack immediately above its parent so that it does not cover other
// root-level windows, with the exception of menus, to allow them to be
// displayed on top of other windows.
@@ -1078,10 +1099,23 @@ void DesktopWindowTreeHostWin::HandleWindowMinimizedOrRestored(bool restored) {
if (!native_widget_delegate_->IsNativeWidgetInitialized())
@@ -1087,10 +1108,23 @@ void DesktopWindowTreeHostWin::HandleWindowMinimizedOrRestored(bool restored) {
return;
}
- if (restored)
+ if (restored) {
@ -436,7 +436,7 @@ index 6cd2eace306cb..a6246e6cb6f3f 100644
}
void DesktopWindowTreeHostWin::HandleClientSizeChanged(
@@ -1099,11 +1133,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
@@ -1108,11 +1142,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
}
void DesktopWindowTreeHostWin::HandleNativeFocus(HWND last_focused_window) {
@ -454,7 +454,7 @@ index 6cd2eace306cb..a6246e6cb6f3f 100644
}
bool DesktopWindowTreeHostWin::HandleMouseEvent(ui::MouseEvent* event) {
@@ -1111,6 +1149,12 @@ bool DesktopWindowTreeHostWin::HandleMouseEvent(ui::MouseEvent* event) {
@@ -1120,6 +1158,12 @@ bool DesktopWindowTreeHostWin::HandleMouseEvent(ui::MouseEvent* event) {
if (ui::PlatformEventSource::ShouldIgnoreNativePlatformEvents())
return true;
@ -467,7 +467,7 @@ index 6cd2eace306cb..a6246e6cb6f3f 100644
SendEventToSink(event);
return event->handled();
}
@@ -1293,9 +1337,17 @@ void DesktopWindowTreeHostWin::SetBoundsInDIP(const gfx::Rect& bounds) {
@@ -1302,9 +1346,17 @@ void DesktopWindowTreeHostWin::SetBoundsInDIP(const gfx::Rect& bounds) {
// positions in variable-DPI situations. See https://crbug.com/1224715 for
// details.
aura::Window* root = nullptr;
@ -518,7 +518,7 @@ index 928f50fe35775..423ebc5a0f025 100644
break;
case ui::mojom::WindowShowState::kEnd:
diff --git ui/views/widget/widget.cc ui/views/widget/widget.cc
index 75e3107153ea0..07b0037be4ecf 100644
index 7c511bbd90683..a136232b55187 100644
--- ui/views/widget/widget.cc
+++ ui/views/widget/widget.cc
@@ -425,7 +425,8 @@ void Widget::Init(InitParams params) {
@ -560,7 +560,7 @@ index 75e3107153ea0..07b0037be4ecf 100644
}
}
@@ -1729,10 +1740,16 @@ void Widget::OnNativeWidgetParentChanged(gfx::NativeView parent) {
@@ -1749,10 +1760,16 @@ void Widget::OnNativeWidgetParentChanged(gfx::NativeView parent) {
}
gfx::Size Widget::GetMinimumSize() const {
@ -577,7 +577,7 @@ index 75e3107153ea0..07b0037be4ecf 100644
return non_client_view_ ? non_client_view_->GetMaximumSize() : gfx::Size();
}
@@ -1984,7 +2001,8 @@ bool Widget::SetInitialFocus(ui::mojom::WindowShowState show_state) {
@@ -2004,7 +2021,8 @@ bool Widget::SetInitialFocus(ui::mojom::WindowShowState show_state) {
View* v = widget_delegate_->GetInitiallyFocusedView();
if (!focus_on_creation_ ||
show_state == ui::mojom::WindowShowState::kInactive ||
@ -588,10 +588,10 @@ index 75e3107153ea0..07b0037be4ecf 100644
// focus when the window is restored.
if (v)
diff --git ui/views/widget/widget.h ui/views/widget/widget.h
index 0510a8c1383bb..aa6ca922ce596 100644
index 37358f90484ac..6bfc0e341a5ce 100644
--- ui/views/widget/widget.h
+++ ui/views/widget/widget.h
@@ -368,6 +368,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
@@ -396,6 +396,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
// the concept with bubble anchoring a la BubbleDialogDelegateView.
gfx::NativeView parent = gfx::NativeView();
@ -600,8 +600,8 @@ index 0510a8c1383bb..aa6ca922ce596 100644
// Specifies the initial bounds of the Widget. Default is empty, which means
// the NativeWidget may specify a default size. If the parent is specified,
// |bounds| is in the parent's coordinate system. If the parent is not
@@ -768,7 +770,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
void ShowInactive();
@@ -830,7 +832,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
void SetVisible(bool visible);
// Activates the widget, assuming it already exists and is visible.
- void Activate();
@ -610,10 +610,10 @@ index 0510a8c1383bb..aa6ca922ce596 100644
// Deactivates the widget, making the next window in the Z order the active
// window.
diff --git ui/views/widget/widget_delegate.h ui/views/widget/widget_delegate.h
index 336b820e995f1..d08c1e7e7cd6e 100644
index 1c57bce35bcb7..4bb7c6f603062 100644
--- ui/views/widget/widget_delegate.h
+++ ui/views/widget/widget_delegate.h
@@ -396,6 +396,10 @@ class VIEWS_EXPORT WidgetDelegate {
@@ -404,6 +404,10 @@ class VIEWS_EXPORT WidgetDelegate {
// Returns true if the title text should be centered.
bool ShouldCenterWindowTitleText() const;

View File

@ -1,5 +1,5 @@
diff --git components/viz/host/host_display_client.cc components/viz/host/host_display_client.cc
index d20063ec5ccbe..1c3d4a64f5ab6 100644
index b84296cc7e3bb..919dab95a6acd 100644
--- components/viz/host/host_display_client.cc
+++ components/viz/host/host_display_client.cc
@@ -48,9 +48,14 @@ void HostDisplayClient::OnDisplayReceivedCALayerParams(
@ -28,9 +28,9 @@ index d20063ec5ccbe..1c3d4a64f5ab6 100644
+#if BUILDFLAG(IS_WIN)
void HostDisplayClient::AddChildWindowToBrowser(
gpu::SurfaceHandle child_window) {
NOTREACHED_IN_MIGRATION();
NOTREACHED();
diff --git components/viz/host/host_display_client.h components/viz/host/host_display_client.h
index 294f99f234006..9d52ca5e7b0b4 100644
index 9e94f648060e9..a20bc1f7c0b1e 100644
--- components/viz/host/host_display_client.h
+++ components/viz/host/host_display_client.h
@@ -39,16 +39,17 @@ class VIZ_HOST_EXPORT HostDisplayClient : public mojom::DisplayClient {
@ -80,10 +80,10 @@ index 8af69cac78b74..9f74e511c263d 100644
private:
const HWND hwnd_;
diff --git components/viz/service/BUILD.gn components/viz/service/BUILD.gn
index 1db2476ae1c2a..89fe45d2ec8f3 100644
index 2fa9063bb7c2f..9a276ac5a1aca 100644
--- components/viz/service/BUILD.gn
+++ components/viz/service/BUILD.gn
@@ -268,6 +268,8 @@ viz_component("service") {
@@ -269,6 +269,8 @@ viz_component("service") {
"transitions/surface_animation_manager.h",
"transitions/transferable_resource_tracker.cc",
"transitions/transferable_resource_tracker.h",
@ -93,18 +93,18 @@ index 1db2476ae1c2a..89fe45d2ec8f3 100644
defines = [ "VIZ_SERVICE_IMPLEMENTATION" ]
diff --git components/viz/service/display_embedder/output_surface_provider_impl.cc components/viz/service/display_embedder/output_surface_provider_impl.cc
index 4be4660c007ee..a689ba262bb81 100644
index 98e50a61cb7d9..c7fc84e1f4864 100644
--- components/viz/service/display_embedder/output_surface_provider_impl.cc
+++ components/viz/service/display_embedder/output_surface_provider_impl.cc
@@ -18,6 +18,7 @@
@@ -17,6 +17,7 @@
#include "build/build_config.h"
#include "build/chromecast_buildflags.h"
#include "build/chromeos_buildflags.h"
#include "cc/base/switches.h"
+#include "cef/libcef/browser/osr/software_output_device_proxy.h"
#include "components/viz/common/display/renderer_settings.h"
#include "components/viz/common/features.h"
#include "components/viz/common/frame_sinks/begin_frame_source.h"
@@ -32,6 +33,7 @@
@@ -31,6 +32,7 @@
#include "gpu/command_buffer/service/scheduler_sequence.h"
#include "gpu/config/gpu_finch_features.h"
#include "gpu/ipc/common/surface_handle.h"
@ -112,7 +112,7 @@ index 4be4660c007ee..a689ba262bb81 100644
#include "ui/base/ui_base_switches.h"
#if BUILDFLAG(IS_WIN)
@@ -146,6 +148,20 @@ OutputSurfaceProviderImpl::CreateSoftwareOutputDeviceForPlatform(
@@ -145,6 +147,20 @@ OutputSurfaceProviderImpl::CreateSoftwareOutputDeviceForPlatform(
if (headless_)
return std::make_unique<SoftwareOutputDevice>();
@ -223,7 +223,7 @@ index 2f462f0deb5fc..695869b83cefa 100644
+ Draw(gfx.mojom.Rect damage_rect) => ();
};
diff --git ui/compositor/compositor.h ui/compositor/compositor.h
index c0809410472cc..8d2f98b2ab577 100644
index ad696fdb49e00..52e5649b20847 100644
--- ui/compositor/compositor.h
+++ ui/compositor/compositor.h
@@ -32,7 +32,9 @@

View File

@ -1,8 +1,8 @@
diff --git content/browser/web_contents/web_contents_impl.cc content/browser/web_contents/web_contents_impl.cc
index c93722f2fc534..aa48180f8e470 100644
index c87953ecbdbc1..de575fec3e4c5 100644
--- content/browser/web_contents/web_contents_impl.cc
+++ content/browser/web_contents/web_contents_impl.cc
@@ -3754,6 +3754,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
@@ -3789,6 +3789,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
params.main_frame_name, GetOpener(), primary_main_frame_policy,
base::UnguessableToken::Create());
@ -15,7 +15,7 @@ index c93722f2fc534..aa48180f8e470 100644
std::unique_ptr<WebContentsViewDelegate> delegate =
GetContentClient()->browser()->GetWebContentsViewDelegate(this);
@@ -3764,6 +3770,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
@@ -3799,6 +3805,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params,
view_ = CreateWebContentsView(this, std::move(delegate),
&render_view_host_delegate_view_);
}
@ -23,7 +23,7 @@ index c93722f2fc534..aa48180f8e470 100644
CHECK(render_view_host_delegate_view_);
CHECK(view_.get());
@@ -3962,6 +3969,9 @@ void WebContentsImpl::RenderWidgetCreated(
@@ -3998,6 +4005,9 @@ void WebContentsImpl::RenderWidgetCreated(
"render_widget_host", render_widget_host);
CHECK(!created_widgets_.contains(render_widget_host->GetFrameSinkId()));
created_widgets_[render_widget_host->GetFrameSinkId()] = render_widget_host;
@ -33,7 +33,7 @@ index c93722f2fc534..aa48180f8e470 100644
}
void WebContentsImpl::RenderWidgetDeleted(
@@ -4847,6 +4857,15 @@ FrameTree* WebContentsImpl::CreateNewWindow(
@@ -4883,6 +4893,15 @@ FrameTree* WebContentsImpl::CreateNewWindow(
create_params.picture_in_picture_options = *(params.pip_options);
}
@ -49,7 +49,7 @@ index c93722f2fc534..aa48180f8e470 100644
// Check whether there is an available prerendered page for this navigation if
// this is not for guest. If it exists, take WebContents pre-created for
// hosting the prerendered page instead of creating new WebContents.
@@ -9305,6 +9324,9 @@ void WebContentsImpl::SetFocusedFrame(FrameTreeNode* node,
@@ -9422,6 +9441,9 @@ void WebContentsImpl::SetFocusedFrame(FrameTreeNode* node,
}
CloseListenerManager::DidChangeFocusedFrame(this);
@ -60,10 +60,10 @@ index c93722f2fc534..aa48180f8e470 100644
FrameTree* WebContentsImpl::GetOwnedPictureInPictureFrameTree() {
diff --git content/public/browser/web_contents.h content/public/browser/web_contents.h
index 825e0d9d641bf..13954b3f5b45c 100644
index c601698c6032d..6f9ff4e57f592 100644
--- content/public/browser/web_contents.h
+++ content/public/browser/web_contents.h
@@ -111,10 +111,12 @@ class BrowserPluginGuestDelegate;
@@ -113,10 +113,12 @@ class BrowserPluginGuestDelegate;
class GuestPageHolder;
class RenderFrameHost;
class RenderViewHost;
@ -76,7 +76,7 @@ index 825e0d9d641bf..13954b3f5b45c 100644
class WebUI;
struct DropData;
struct MHTMLGenerationParams;
@@ -275,6 +277,10 @@ class WebContents : public PageNavigator, public base::SupportsUserData {
@@ -277,6 +279,10 @@ class WebContents : public PageNavigator, public base::SupportsUserData {
network::mojom::WebSandboxFlags starting_sandbox_flags =
network::mojom::WebSandboxFlags::kNone;
@ -88,10 +88,10 @@ index 825e0d9d641bf..13954b3f5b45c 100644
// the value that'll be returned by GetLastActiveTimeTicks(). If this is
// left default initialized then the value is not passed on to the
diff --git content/public/browser/web_contents_delegate.h content/public/browser/web_contents_delegate.h
index 77ee6ba6c65c9..59f7c8cc58b60 100644
index c0be779a4c1d8..02fda067754a0 100644
--- content/public/browser/web_contents_delegate.h
+++ content/public/browser/web_contents_delegate.h
@@ -67,9 +67,11 @@ class EyeDropperListener;
@@ -97,9 +97,11 @@ class EyeDropperListener;
class FileSelectListener;
class JavaScriptDialogManager;
class RenderFrameHost;
@ -103,7 +103,7 @@ index 77ee6ba6c65c9..59f7c8cc58b60 100644
struct ContextMenuParams;
struct DropData;
struct MediaPlayerWatchTime;
@@ -368,6 +370,14 @@ class CONTENT_EXPORT WebContentsDelegate {
@@ -365,6 +367,14 @@ class CONTENT_EXPORT WebContentsDelegate {
const StoragePartitionConfig& partition_config,
SessionStorageNamespace* session_storage_namespace);
@ -119,10 +119,10 @@ index 77ee6ba6c65c9..59f7c8cc58b60 100644
// typically happens when popups are created.
virtual void WebContentsCreated(WebContents* source_contents,
diff --git content/public/browser/web_contents_observer.h content/public/browser/web_contents_observer.h
index 0379a5ca835e3..950c4a8d8e508 100644
index bc246993906cd..40739daed7bf9 100644
--- content/public/browser/web_contents_observer.h
+++ content/public/browser/web_contents_observer.h
@@ -244,6 +244,9 @@ class CONTENT_EXPORT WebContentsObserver : public base::CheckedObserver {
@@ -248,6 +248,9 @@ class CONTENT_EXPORT WebContentsObserver : public base::CheckedObserver {
// controlled by the capturing tab.
virtual void OnCapturedSurfaceControl() {}
@ -132,7 +132,7 @@ index 0379a5ca835e3..950c4a8d8e508 100644
// This method is invoked when the `blink::WebView` of the current
// RenderViewHost is ready, e.g. because we recreated it after a crash.
virtual void RenderViewReady() {}
@@ -917,6 +920,10 @@ class CONTENT_EXPORT WebContentsObserver : public base::CheckedObserver {
@@ -939,6 +942,10 @@ class CONTENT_EXPORT WebContentsObserver : public base::CheckedObserver {
// WebContents has gained/lost focus.
virtual void OnFocusChangedInPage(FocusedNodeDetails* details) {}

View File

@ -1,8 +1,8 @@
diff --git third_party/blink/public/platform/platform.h third_party/blink/public/platform/platform.h
index f2be7de2e13b7..4708b9ee705b3 100644
index 6bae009bb76ea..7ef6ace04ff1e 100644
--- third_party/blink/public/platform/platform.h
+++ third_party/blink/public/platform/platform.h
@@ -812,6 +812,11 @@ class BLINK_PLATFORM_EXPORT Platform {
@@ -808,6 +808,11 @@ class BLINK_PLATFORM_EXPORT Platform {
}
#endif
@ -15,10 +15,10 @@ index f2be7de2e13b7..4708b9ee705b3 100644
static void InitializeMainThreadCommon(
std::unique_ptr<MainThread> main_thread);
diff --git third_party/blink/renderer/core/inspector/devtools_session.cc third_party/blink/renderer/core/inspector/devtools_session.cc
index 128bb7d84c392..dd4f22aee9a52 100644
index 15700b6fcff0a..903b2d23a9a3c 100644
--- third_party/blink/renderer/core/inspector/devtools_session.cc
+++ third_party/blink/renderer/core/inspector/devtools_session.cc
@@ -16,6 +16,7 @@
@@ -17,6 +17,7 @@
#include "base/task/sequenced_task_runner.h"
#include "base/task/single_thread_task_runner.h"
#include "base/trace_event/trace_event.h"
@ -26,7 +26,7 @@ index 128bb7d84c392..dd4f22aee9a52 100644
#include "third_party/blink/renderer/bindings/core/v8/script_controller.h"
#include "third_party/blink/renderer/core/frame/local_frame.h"
#include "third_party/blink/renderer/core/inspector/devtools_agent.h"
@@ -173,6 +174,7 @@ DevToolsSession::DevToolsSession(
@@ -175,6 +176,7 @@ DevToolsSession::DevToolsSession(
for (wtf_size_t i = 0; i < agents_.size(); i++)
agents_[i]->Restore();
}
@ -34,7 +34,7 @@ index 128bb7d84c392..dd4f22aee9a52 100644
}
DevToolsSession::~DevToolsSession() {
@@ -218,6 +220,7 @@ void DevToolsSession::Detach() {
@@ -220,6 +222,7 @@ void DevToolsSession::Detach() {
agents_.clear();
v8_session_.reset();
agent_->client_->DebuggerTaskFinished();

View File

@ -11,7 +11,7 @@ index 083af135d890c..799ef161a493a 100644
// Cancels and hides the current popup (datetime, select...) if any.
virtual void CancelPagePopup() = 0;
diff --git third_party/blink/renderer/core/exported/web_view_impl.cc third_party/blink/renderer/core/exported/web_view_impl.cc
index f5fe2e0614486..58d48b08dec6d 100644
index c1aebbc3db3e2..e3e1412718fbf 100644
--- third_party/blink/renderer/core/exported/web_view_impl.cc
+++ third_party/blink/renderer/core/exported/web_view_impl.cc
@@ -257,8 +257,13 @@ void WebView::SetUseExternalPopupMenus(bool use_external_popup_menus) {
@ -30,7 +30,7 @@ index f5fe2e0614486..58d48b08dec6d 100644
}
namespace {
@@ -617,6 +622,7 @@ WebViewImpl::WebViewImpl(
@@ -615,6 +620,7 @@ WebViewImpl::WebViewImpl(
blink::ZoomFactorToZoomLevel(kMinimumBrowserZoomFactor)),
maximum_zoom_level_(
blink::ZoomFactorToZoomLevel(kMaximumBrowserZoomFactor)),
@ -39,7 +39,7 @@ index f5fe2e0614486..58d48b08dec6d 100644
fullscreen_controller_(std::make_unique<FullscreenController>(this)),
page_base_background_color_(
diff --git third_party/blink/renderer/core/exported/web_view_impl.h third_party/blink/renderer/core/exported/web_view_impl.h
index d5397c53559ba..ae75834087808 100644
index 4f77ef1379390..9f4a3f4e10295 100644
--- third_party/blink/renderer/core/exported/web_view_impl.h
+++ third_party/blink/renderer/core/exported/web_view_impl.h
@@ -140,7 +140,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
@ -52,7 +52,7 @@ index d5397c53559ba..ae75834087808 100644
// Returns whether frames under this WebView are backed by a compositor.
bool does_composite() const { return does_composite_; }
@@ -877,6 +878,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
@@ -882,6 +883,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
float fake_page_scale_animation_page_scale_factor_ = 0.f;
bool fake_page_scale_animation_use_anchor_ = false;
@ -62,7 +62,7 @@ index d5397c53559ba..ae75834087808 100644
gfx::Transform device_emulation_transform_;
diff --git third_party/blink/renderer/core/page/chrome_client_impl.cc third_party/blink/renderer/core/page/chrome_client_impl.cc
index 9326028540aae..6f2eb37355383 100644
index 4993d90d105b6..0aaa980d74853 100644
--- third_party/blink/renderer/core/page/chrome_client_impl.cc
+++ third_party/blink/renderer/core/page/chrome_client_impl.cc
@@ -971,7 +971,7 @@ PopupMenu* ChromeClientImpl::OpenPopupMenu(LocalFrame& frame,

View File

@ -1,8 +1,8 @@
diff --git sandbox/policy/win/sandbox_win.cc sandbox/policy/win/sandbox_win.cc
index 5f5857379ad34..1de09e19a2350 100644
index 617103850407d..633805d2f7e8d 100644
--- sandbox/policy/win/sandbox_win.cc
+++ sandbox/policy/win/sandbox_win.cc
@@ -963,6 +963,17 @@ ResultCode SandboxWin::StartSandboxedProcess(
@@ -933,6 +933,17 @@ ResultCode SandboxWin::StartSandboxedProcess(
const base::HandlesToInheritVector& handles_to_inherit,
SandboxDelegate* delegate,
StartSandboxedProcessCallback result_callback) {

View File

@ -12,7 +12,7 @@ index 17699e60e60be..53658b54f4fa7 100644
} // namespace sandbox
diff --git sandbox/win/src/sandbox_policy_base.cc sandbox/win/src/sandbox_policy_base.cc
index bb144af1a7e12..2a05c5a62c941 100644
index 0ac08110aa260..7c1d4cf7d5e78 100644
--- sandbox/win/src/sandbox_policy_base.cc
+++ sandbox/win/src/sandbox_policy_base.cc
@@ -194,12 +194,12 @@ PolicyGlobal* ConfigBase::policy() {
@ -38,7 +38,7 @@ index bb144af1a7e12..2a05c5a62c941 100644
-std::optional<base::span<const uint8_t>> PolicyBase::delegate_data_span() {
+std::optional<base::span<uint8_t>> PolicyBase::delegate_data_span() {
if (delegate_data_) {
return base::make_span(*delegate_data_);
return base::span(*delegate_data_);
}
return std::nullopt;
}