Update to Chromium version 68.0.3399.0 (#551554)

This commit is contained in:
Marshall Greenblatt 2018-05-14 14:24:05 +03:00
parent 66484d799e
commit 8426da0de6
44 changed files with 312 additions and 319 deletions

View File

@ -677,7 +677,6 @@ static_library("libcef_static") {
"//components/printing/service/public/cpp:factory",
"//components/printing/service/public/interfaces",
"//components/proxy_config",
"//components/ssl_config",
"//components/update_client",
"//components/url_formatter",
"//components/user_prefs",

View File

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

View File

@ -86,6 +86,7 @@ typedef std::char_traits<wchar_t> string16_char_traits;
#include "include/base/cef_macros.h"
namespace cef {
namespace base {
typedef uint16_t char16;
@ -156,7 +157,14 @@ struct string16_char_traits {
static int_type eof() { return static_cast<int_type>(EOF); }
};
typedef std::basic_string<char16, base::string16_char_traits> string16;
typedef std::basic_string<char16, string16_char_traits> string16;
} // namespace base
} // namespace cef
namespace base {
typedef cef::base::string16 string16;
extern std::ostream& operator<<(std::ostream& out, const string16& str);
@ -204,8 +212,8 @@ extern void PrintTo(const string16& str, std::ostream* out);
//
// TODO(mark): File this bug with Apple and update this note with a bug number.
extern template class std::basic_string<base::char16,
base::string16_char_traits>;
extern template class std::basic_string<cef::base::char16,
cef::base::string16_char_traits>;
#endif // WCHAR_T_IS_UTF32

View File

@ -87,6 +87,7 @@
#include "net/ssl/ssl_cert_request_info.h"
#include "ppapi/host/ppapi_host.h"
#include "services/service_manager/public/mojom/connector.mojom.h"
#include "services/service_manager/sandbox/switches.h"
#include "storage/browser/quota/quota_settings.h"
#include "third_party/blink/public/web/web_window_features.h"
#include "ui/base/l10n/l10n_util.h"
@ -335,7 +336,7 @@ class CefQuotaPermissionContext : public content::QuotaPermissionContext {
breakpad::CrashHandlerHostLinux* CreateCrashHandlerHost(
const std::string& process_type) {
base::FilePath dumps_path;
PathService::Get(chrome::DIR_CRASH_DUMPS, &dumps_path);
base::PathService::Get(chrome::DIR_CRASH_DUMPS, &dumps_path);
{
ANNOTATE_SCOPED_MEMORY_LEAK;
// Uploads will only occur if a non-empty crash URL is specified in
@ -729,7 +730,7 @@ void CefContentBrowserClient::AppendExtraCommandLineSwitches(
arraysize(kSwitchNames));
#if defined(WIDEVINE_CDM_AVAILABLE) && BUILDFLAG(ENABLE_LIBRARY_CDMS)
if (!browser_cmd->HasSwitch(switches::kNoSandbox)) {
if (!browser_cmd->HasSwitch(service_manager::switches::kNoSandbox)) {
// Pass the Widevine CDM path to the Zygote process. See comments in
// CefWidevineLoader::AddContentDecryptionModules.
const base::FilePath& cdm_path = CefWidevineLoader::GetInstance()->path();
@ -993,7 +994,7 @@ const wchar_t* CefContentBrowserClient::GetResourceDllName() {
if (file_path[0] == 0) {
// Retrieve the module path (usually libcef.dll).
base::FilePath module;
PathService::Get(base::FILE_MODULE, &module);
base::PathService::Get(base::FILE_MODULE, &module);
const std::wstring wstr = module.value();
size_t count = std::min(static_cast<size_t>(MAX_PATH), wstr.size());
wcsncpy(file_path, wstr.c_str(), count);

View File

@ -90,7 +90,7 @@ class CefBeforeDownloadCallbackImpl : public CefBeforeDownloadCallback {
}
if (suggested_path.empty()) {
if (PathService::Get(base::DIR_TEMP, &suggested_path)) {
if (base::PathService::Get(base::DIR_TEMP, &suggested_path)) {
// Use the temp directory.
suggested_path = suggested_path.Append(suggested_name);
} else {

View File

@ -25,7 +25,7 @@ bool CefComponentExtensionResourceManager::IsComponentExtensionResource(
base::FilePath directory_path = extension_path;
base::FilePath resources_dir;
base::FilePath relative_path;
if (!PathService::Get(chrome::DIR_RESOURCES, &resources_dir) ||
if (!base::PathService::Get(chrome::DIR_RESOURCES, &resources_dir) ||
!resources_dir.AppendRelativePath(directory_path, &relative_path)) {
return false;
}

View File

@ -476,7 +476,7 @@ CefExtensionSystem::ComponentExtensionInfo::ComponentExtensionInfo(
if (!root_directory.IsAbsolute()) {
// This path structure is required by
// url_request_util::MaybeCreateURLRequestResourceBundleJob.
CHECK(PathService::Get(chrome::DIR_RESOURCES, &root_directory));
CHECK(base::PathService::Get(chrome::DIR_RESOURCES, &root_directory));
root_directory = root_directory.Append(directory);
}
}

View File

@ -121,7 +121,7 @@ void CefJavaScriptDialogRunnerWin::Run(
HMODULE hModule = NULL;
// Try to load the dialog from the DLL.
if (PathService::Get(base::DIR_MODULE, &file_path)) {
if (base::PathService::Get(base::DIR_MODULE, &file_path)) {
file_path = file_path.Append(L"libcef.dll");
hModule = ::GetModuleHandle(file_path.value().c_str());
}

View File

@ -437,7 +437,7 @@ std::string GetCommandLine() {
std::string GetModulePath() {
base::FilePath path;
if (PathService::Get(base::FILE_MODULE, &path))
if (base::PathService::Get(base::FILE_MODULE, &path))
return CefString(path.value());
return std::string();
}

View File

@ -26,10 +26,12 @@ class CefCompositorHostWin : public gfx::WindowImpl {
~CefCompositorHostWin() override { DestroyWindow(hwnd()); }
private:
CR_BEGIN_MSG_MAP_EX(CompositorHostWin)
CR_BEGIN_MSG_MAP_EX(CefCompositorHostWin)
CR_MSG_WM_PAINT(OnPaint)
CR_END_MSG_MAP()
CR_MSG_MAP_CLASS_DECLARATIONS(CefCompositorHostWin)
void OnPaint(HDC dc) { ValidateRect(hwnd(), NULL); }
DISALLOW_COPY_AND_ASSIGN(CefCompositorHostWin);

View File

@ -47,7 +47,7 @@ bool CefGetPath(PathKey key, CefString& path) {
}
base::FilePath file_path;
if (PathService::Get(pref_key, &file_path)) {
if (base::PathService::Get(pref_key, &file_path)) {
path = file_path.value();
return true;
}

View File

@ -82,7 +82,7 @@ CefPrintViewManagerBase::CefPrintViewManagerBase(
inside_inner_message_loop_(false),
queue_(g_browser_process->print_job_manager()->queue()),
weak_ptr_factory_(this) {
DCHECK(queue_.get());
DCHECK(queue_);
Profile* profile =
Profile::FromBrowserContext(web_contents->GetBrowserContext());
printing_enabled_.Init(
@ -96,7 +96,6 @@ CefPrintViewManagerBase::~CefPrintViewManagerBase() {
DisconnectFromCurrentPrintJob();
}
#if BUILDFLAG(ENABLE_BASIC_PRINTING)
bool CefPrintViewManagerBase::PrintNow(content::RenderFrameHost* rfh) {
DisconnectFromCurrentPrintJob();
@ -104,49 +103,22 @@ bool CefPrintViewManagerBase::PrintNow(content::RenderFrameHost* rfh) {
int32_t id = rfh->GetRoutingID();
return PrintNowInternal(rfh, std::make_unique<PrintMsg_PrintPages>(id));
}
#endif
void CefPrintViewManagerBase::PrintDocument(
PrintedDocument* document,
const scoped_refptr<base::RefCountedMemory>& print_data,
const gfx::Size& page_size,
const gfx::Rect& content_area,
const gfx::Point& offsets) {
#if defined(OS_WIN)
if (PrintedDocument::HasDebugDumpPath())
document->DebugDumpData(print_data.get(), FILE_PATH_LITERAL(".pdf"));
const auto& settings = document->settings();
if (settings.printer_is_textonly()) {
print_job_->StartPdfToTextConversion(print_data, page_size);
} else if ((settings.printer_is_ps2() || settings.printer_is_ps3()) &&
!base::FeatureList::IsEnabled(
features::kDisablePostScriptPrinting)) {
print_job_->StartPdfToPostScriptConversion(
print_data, content_area, offsets, settings.printer_is_ps2());
} else {
// TODO(thestig): Figure out why rendering text with GDI results in random
// missing characters for some users. https://crbug.com/658606
// Update : The missing letters seem to have been caused by the same
// problem as https://crbug.com/659604 which was resolved. GDI printing
// seems to work with the fix for this bug applied.
bool print_text_with_gdi =
settings.print_text_with_gdi() && !settings.printer_is_xps() &&
base::FeatureList::IsEnabled(features::kGdiTextPrinting);
print_job_->StartPdfToEmfConversion(print_data, page_size, content_area,
print_text_with_gdi);
}
// Indicate that the PDF is fully rendered and we no longer need the renderer
// and web contents, so the print job does not need to be cancelled if they
// die. This is needed on Windows because the PrintedDocument will not be
// considered complete until PDF conversion finishes.
document->SetConvertingPdf();
print_job_->StartConversionToNativeFormat(print_data, page_size, content_area,
offsets);
#else
std::unique_ptr<PdfMetafileSkia> metafile =
std::make_unique<PdfMetafileSkia>();
CHECK(metafile->InitFromData(print_data->front(), print_data->size()));
// Update the rendered document. It will send notifications to the listener.
PrintedDocument* document = print_job_->document();
document->SetDocument(std::move(metafile), page_size, content_area);
ShouldQuitFromInnerMessageLoop();
#endif
@ -178,17 +150,14 @@ void CefPrintViewManagerBase::OnDidGetPrintedPagesCount(int cookie,
OpportunisticallyCreatePrintJob(cookie);
}
PrintedDocument* CefPrintViewManagerBase::GetDocument(int cookie) {
bool CefPrintViewManagerBase::PrintJobHasDocument(int cookie) {
if (!OpportunisticallyCreatePrintJob(cookie))
return nullptr;
return false;
// These checks may fail since we are completely asynchronous. Old spurious
// messages can be received if one of the processes is overloaded.
PrintedDocument* document = print_job_->document();
if (!document || cookie != document->cookie()) {
// Out of sync. It may happen since we are completely asynchronous. Old
// spurious messages can be received if one of the processes is overloaded.
return nullptr;
}
return document;
return document && document->cookie() == cookie;
}
void CefPrintViewManagerBase::OnComposePdfDone(
@ -201,8 +170,7 @@ void CefPrintViewManagerBase::OnComposePdfDone(
return;
}
PrintedDocument* document = print_job_->document();
if (!document)
if (!print_job_->document())
return;
std::unique_ptr<base::SharedMemory> shared_buf =
@ -213,15 +181,14 @@ void CefPrintViewManagerBase::OnComposePdfDone(
size_t size = shared_buf->mapped_size();
auto data = base::MakeRefCounted<base::RefCountedSharedMemory>(
std::move(shared_buf), size);
PrintDocument(document, data, params.page_size, params.content_area,
PrintDocument(data, params.page_size, params.content_area,
params.physical_offsets);
}
void CefPrintViewManagerBase::OnDidPrintDocument(
content::RenderFrameHost* render_frame_host,
const PrintHostMsg_DidPrintDocument_Params& params) {
PrintedDocument* document = GetDocument(params.document_cookie);
if (!document)
if (!PrintJobHasDocument(params.document_cookie))
return;
const PrintHostMsg_DidPrintContent_Params& content = params.content;
@ -250,7 +217,7 @@ void CefPrintViewManagerBase::OnDidPrintDocument(
auto data = base::MakeRefCounted<base::RefCountedSharedMemory>(
std::move(shared_buf), content.data_size);
PrintDocument(document, data, params.page_size, params.content_area,
PrintDocument(data, params.page_size, params.content_area,
params.physical_offsets);
}
@ -282,11 +249,11 @@ void CefPrintViewManagerBase::RenderFrameDeleted(
PrintManager::PrintingRenderFrameDeleted();
ReleasePrinterQuery();
if (!print_job_.get())
if (!print_job_)
return;
scoped_refptr<PrintedDocument> document(print_job_->document());
if (document.get()) {
if (document) {
// If IsComplete() returns false, the document isn't completely rendered.
// Since our renderer is gone, there's nothing to do, cancel it. Otherwise,
// the print job may finish without problem.
@ -374,7 +341,7 @@ void CefPrintViewManagerBase::OnNotifyPrintJobEvent(
}
bool CefPrintViewManagerBase::RenderAllMissingPagesNow() {
if (!print_job_.get() || !print_job_->is_job_pending())
if (!print_job_ || !print_job_->is_job_pending())
return false;
// Is the document already complete?
@ -420,8 +387,9 @@ void CefPrintViewManagerBase::ShouldQuitFromInnerMessageLoop() {
}
}
bool CefPrintViewManagerBase::CreateNewPrintJob(PrintJobWorkerOwner* job) {
bool CefPrintViewManagerBase::CreateNewPrintJob(PrinterQuery* query) {
DCHECK(!inside_inner_message_loop_);
DCHECK(query);
// Disconnect the current |print_job_|.
DisconnectFromCurrentPrintJob();
@ -432,13 +400,9 @@ bool CefPrintViewManagerBase::CreateNewPrintJob(PrintJobWorkerOwner* job) {
return false;
}
DCHECK(!print_job_.get());
DCHECK(job);
if (!job)
return false;
DCHECK(!print_job_);
print_job_ = base::MakeRefCounted<PrintJob>();
print_job_->Initialize(job, RenderSourceName(), number_pages_);
print_job_->Initialize(query, RenderSourceName(), number_pages_);
registrar_.Add(this, chrome::NOTIFICATION_PRINT_JOB_EVENT,
content::Source<PrintJob>(print_job_.get()));
printing_succeeded_ = false;
@ -451,7 +415,7 @@ void CefPrintViewManagerBase::DisconnectFromCurrentPrintJob() {
bool result = RenderAllMissingPagesNow();
// Verify that assertion.
if (print_job_.get() && print_job_->document() &&
if (print_job_ && print_job_->document() &&
!print_job_->document()->IsComplete()) {
DCHECK(!result);
// That failed.
@ -463,7 +427,7 @@ void CefPrintViewManagerBase::DisconnectFromCurrentPrintJob() {
}
void CefPrintViewManagerBase::TerminatePrintJob(bool cancel) {
if (!print_job_.get())
if (!print_job_)
return;
if (cancel) {
@ -486,7 +450,7 @@ void CefPrintViewManagerBase::ReleasePrintJob() {
content::RenderFrameHost* rfh = printing_rfh_;
printing_rfh_ = nullptr;
if (!print_job_.get())
if (!print_job_)
return;
if (rfh) {
@ -540,7 +504,7 @@ bool CefPrintViewManagerBase::RunInnerMessageLoop() {
}
bool CefPrintViewManagerBase::OpportunisticallyCreatePrintJob(int cookie) {
if (print_job_.get())
if (print_job_)
return true;
if (!cookie) {
@ -552,7 +516,7 @@ bool CefPrintViewManagerBase::OpportunisticallyCreatePrintJob(int cookie) {
// The job was initiated by a script. Time to get the corresponding worker
// thread.
scoped_refptr<PrinterQuery> queued_query = queue_->PopPrinterQuery(cookie);
if (!queued_query.get()) {
if (!queued_query) {
NOTREACHED();
return false;
}
@ -596,7 +560,7 @@ void CefPrintViewManagerBase::ReleasePrinterQuery() {
scoped_refptr<PrinterQuery> printer_query;
printer_query = queue_->PopPrinterQuery(cookie);
if (!printer_query.get())
if (!printer_query)
return;
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,

View File

@ -34,9 +34,7 @@ namespace printing {
class JobEventDetails;
class PrintJob;
class PrintJobWorkerOwner;
class PrintQueriesQueue;
class PrintedDocument;
class PrinterQuery;
// Base class for managing the print commands for a WebContents.
@ -45,12 +43,10 @@ class CefPrintViewManagerBase : public content::NotificationObserver,
public:
~CefPrintViewManagerBase() override;
#if BUILDFLAG(ENABLE_BASIC_PRINTING)
// Prints the current document immediately. Since the rendering is
// asynchronous, the actual printing will not be completed on the return of
// this function. Returns false if printing is impossible at the moment.
virtual bool PrintNow(content::RenderFrameHost* rfh);
#endif // ENABLE_BASIC_PRINTING
// Whether printing is enabled or not.
void UpdatePrintingEnabled();
@ -78,7 +74,7 @@ class CefPrintViewManagerBase : public content::NotificationObserver,
// currently a print job, safely disconnect from it. Returns false if it is
// impossible to safely disconnect from the current print job or it is
// impossible to create a new print job.
virtual bool CreateNewPrintJob(PrintJobWorkerOwner* job);
virtual bool CreateNewPrintJob(PrinterQuery* query);
// Manages the low-level talk to the printer.
scoped_refptr<PrintJob> print_job_;
@ -112,14 +108,13 @@ class CefPrintViewManagerBase : public content::NotificationObserver,
// been requested to the renderer.
bool RenderAllMissingPagesNow();
// Checks that synchronization is correct and a print query exists for
// |cookie|. If so, returns the document associated with the cookie.
PrintedDocument* GetDocument(int cookie);
// Checks that synchronization is correct with |print_job_| based on |cookie|.
bool PrintJobHasDocument(int cookie);
// Starts printing |document| with the given |print_data|. This method assumes
// |print_data| contains valid data.
void PrintDocument(PrintedDocument* document,
const scoped_refptr<base::RefCountedMemory>& print_data,
// Starts printing the |document| in |print_job_| with the given |print_data|.
// This method assumes PrintJobHasDocument() has been called, and |print_data|
// contains valid data.
void PrintDocument(const scoped_refptr<base::RefCountedMemory>& print_data,
const gfx::Size& page_size,
const gfx::Rect& content_area,
const gfx::Point& offsets);
@ -177,7 +172,7 @@ class CefPrintViewManagerBase : public content::NotificationObserver,
// Whether printing is enabled.
BooleanPrefMember printing_enabled_;
scoped_refptr<printing::PrintQueriesQueue> queue_;
scoped_refptr<PrintQueriesQueue> queue_;
base::WeakPtrFactory<CefPrintViewManagerBase> weak_ptr_factory_;

View File

@ -150,8 +150,8 @@ bool GetSystemPepperFlash(content::PepperPluginInfo* plugin) {
return false;
base::FilePath flash_filename;
if (!PathService::Get(chrome::FILE_PEPPER_FLASH_SYSTEM_PLUGIN,
&flash_filename)) {
if (!base::PathService::Get(chrome::FILE_PEPPER_FLASH_SYSTEM_PLUGIN,
&flash_filename)) {
return false;
}

View File

@ -84,7 +84,7 @@ PathString GetCrashConfigPath() {
if (config_path.empty()) {
// Start with the path to the running executable.
if (!PathService::Get(base::DIR_EXE, &config_path))
if (!base::PathService::Get(base::DIR_EXE, &config_path))
return PathString();
}
@ -637,9 +637,9 @@ bool CefCrashReporterClient::GetCrashDumpLocation(base::FilePath* crash_dir) {
if (env->GetVar("BREAKPAD_DUMP_LOCATION", &alternate_crash_dump_location)) {
base::FilePath crash_dumps_dir_path =
base::FilePath::FromUTF8Unsafe(alternate_crash_dump_location);
PathService::Override(chrome::DIR_CRASH_DUMPS, crash_dumps_dir_path);
base::PathService::Override(chrome::DIR_CRASH_DUMPS, crash_dumps_dir_path);
}
return PathService::Get(chrome::DIR_CRASH_DUMPS, crash_dir);
return base::PathService::Get(chrome::DIR_CRASH_DUMPS, crash_dir);
}
#endif // !defined(OS_POSIX)

View File

@ -36,6 +36,7 @@
#include "extensions/common/constants.h"
#include "ipc/ipc_buildflags.h"
#include "pdf/pdf_ppapi.h"
#include "services/service_manager/sandbox/switches.h"
#include "ui/base/layout.h"
#include "ui/base/material_design/material_design_controller.h"
#include "ui/base/resource/resource_bundle.h"
@ -107,21 +108,21 @@ void OverrideChildProcessPath() {
}
// Used by ChildProcessHost::GetChildPath and PlatformCrashpadInitialization.
PathService::Override(content::CHILD_PROCESS_EXE, child_process_path);
base::PathService::Override(content::CHILD_PROCESS_EXE, child_process_path);
}
#else // !defined(OS_MACOSX)
base::FilePath GetResourcesFilePath() {
base::FilePath pak_dir;
PathService::Get(base::DIR_MODULE, &pak_dir);
base::PathService::Get(base::DIR_MODULE, &pak_dir);
return pak_dir;
}
// Use a "debug.log" file in the running executable's directory.
base::FilePath GetDefaultLogFile() {
base::FilePath log_path;
PathService::Get(base::DIR_EXE, &log_path);
base::PathService::Get(base::DIR_EXE, &log_path);
return log_path.Append(FILE_PATH_LITERAL("debug.log"));
}
@ -168,8 +169,8 @@ void OverridePepperFlashSystemPluginPath() {
#endif
if (!plugin_filename.empty()) {
PathService::Override(chrome::FILE_PEPPER_FLASH_SYSTEM_PLUGIN,
plugin_filename);
base::PathService::Override(chrome::FILE_PEPPER_FLASH_SYSTEM_PLUGIN,
plugin_filename);
}
}
@ -193,7 +194,7 @@ bool GetDefaultUserDataDirectory(base::FilePath* result) {
// Based on chrome/common/chrome_paths_mac.mm.
bool GetDefaultUserDataDirectory(base::FilePath* result) {
if (!PathService::Get(base::DIR_APP_DATA, result))
if (!base::PathService::Get(base::DIR_APP_DATA, result))
return false;
*result = result->Append(FILE_PATH_LITERAL("CEF"));
*result = result->Append(FILE_PATH_LITERAL("User Data"));
@ -204,7 +205,7 @@ bool GetDefaultUserDataDirectory(base::FilePath* result) {
// Based on chrome/common/chrome_paths_win.cc.
bool GetDefaultUserDataDirectory(base::FilePath* result) {
if (!PathService::Get(base::DIR_LOCAL_APP_DATA, result))
if (!base::PathService::Get(base::DIR_LOCAL_APP_DATA, result))
return false;
*result = result->Append(FILE_PATH_LITERAL("CEF"));
*result = result->Append(FILE_PATH_LITERAL("User Data"));
@ -222,7 +223,7 @@ base::FilePath GetUserDataPath() {
if (GetDefaultUserDataDirectory(&result))
return result;
if (PathService::Get(base::DIR_TEMP, &result))
if (base::PathService::Get(base::DIR_TEMP, &result))
return result;
NOTREACHED();
@ -343,7 +344,7 @@ bool CefMainDelegate::BasicStartupComplete(int* exit_code) {
#endif
if (no_sandbox)
command_line->AppendSwitch(switches::kNoSandbox);
command_line->AppendSwitch(service_manager::switches::kNoSandbox);
if (settings.user_agent.length > 0) {
command_line->AppendSwitchASCII(switches::kUserAgent,
@ -547,13 +548,13 @@ void CefMainDelegate::PreSandboxStartup() {
OverridePepperFlashSystemPluginPath();
const base::FilePath& user_data_path = GetUserDataPath();
PathService::Override(chrome::DIR_USER_DATA, user_data_path);
base::PathService::Override(chrome::DIR_USER_DATA, user_data_path);
// Path used for crash dumps.
PathService::Override(chrome::DIR_CRASH_DUMPS, user_data_path);
base::PathService::Override(chrome::DIR_CRASH_DUMPS, user_data_path);
// Path used for spell checking dictionary files.
PathService::OverrideAndCreateIfNeeded(
base::PathService::OverrideAndCreateIfNeeded(
chrome::DIR_APP_DICTIONARIES,
user_data_path.AppendASCII("Dictionaries"),
false, // May not be an absolute path.
@ -668,7 +669,7 @@ void CefMainDelegate::InitializeResourceBundle() {
if (resources_dir.empty())
resources_dir = GetResourcesFilePath();
if (!resources_dir.empty())
PathService::Override(chrome::DIR_RESOURCES, resources_dir);
base::PathService::Override(chrome::DIR_RESOURCES, resources_dir);
if (!content_client_.pack_loading_disabled()) {
if (!resources_dir.empty()) {
@ -688,7 +689,7 @@ void CefMainDelegate::InitializeResourceBundle() {
locales_dir = command_line->GetSwitchValuePath(switches::kLocalesDirPath);
if (!locales_dir.empty())
PathService::Override(ui::DIR_LOCALES, locales_dir);
base::PathService::Override(ui::DIR_LOCALES, locales_dir);
}
std::string locale = command_line->GetSwitchValueASCII(switches::kLang);

View File

@ -63,7 +63,7 @@ base::FilePath GetFrameworkResourcesDirectory() {
base::FilePath GetMainProcessPath() {
base::FilePath path;
PathService::Get(base::FILE_EXE, &path);
base::PathService::Get(base::FILE_EXE, &path);
DCHECK(!path.empty());
return path;
}

View File

@ -25,6 +25,7 @@
#include "content/public/common/content_switches.h"
#include "media/cdm/cdm_host_file.h"
#include "media/cdm/supported_cdm_versions.h"
#include "services/service_manager/sandbox/switches.h"
namespace {
@ -355,7 +356,7 @@ void CefWidevineLoader::AddContentDecryptionModules(
// load all plugins before initializing the sandbox.
if (command_line.GetSwitchValueASCII(switches::kProcessType) !=
switches::kZygoteProcess ||
command_line.HasSwitch(switches::kNoSandbox)) {
command_line.HasSwitch(service_manager::switches::kNoSandbox)) {
return;
}

View File

@ -19,6 +19,7 @@
#include "include/internal/cef_string_types.h"
namespace cef {
namespace base {
int c16memcmp(const char16* s1, const char16* s2, size_t n) {
@ -69,6 +70,11 @@ char16* c16memset(char16* s, char16 c, size_t n) {
return s_orig;
}
} // namespace base
} // namespace cef
namespace base {
std::ostream& operator<<(std::ostream& out, const string16& str) {
cef_string_utf8_t cef_str = {0};
cef_string_utf16_to_utf8(str.c_str(), str.size(), &cef_str);
@ -83,7 +89,8 @@ void PrintTo(const string16& str, std::ostream* out) {
} // namespace base
template class std::basic_string<base::char16, base::string16_char_traits>;
template class std::basic_string<cef::base::char16,
cef::base::string16_char_traits>;
#endif // WCHAR_T_IS_UTF32
#endif // OS_POSIX

View File

@ -17,7 +17,7 @@ index 091f34477c01..44002b362be7 100644
void DidCreateNewRendererCompositorFrameSink(
viz::mojom::CompositorFrameSinkClient* renderer_compositor_frame_sink);
diff --git content/browser/renderer_host/browser_compositor_view_mac.mm content/browser/renderer_host/browser_compositor_view_mac.mm
index fac719b0bb6f..0672d1445f39 100644
index f459dc4ff03b..142e66948c3b 100644
--- content/browser/renderer_host/browser_compositor_view_mac.mm
+++ content/browser/renderer_host/browser_compositor_view_mac.mm
@@ -208,6 +208,12 @@ BrowserCompositorMac::~BrowserCompositorMac() {

View File

@ -1,8 +1,8 @@
diff --git content/browser/browser_plugin/browser_plugin_guest.cc content/browser/browser_plugin/browser_plugin_guest.cc
index 15994d5dada4..e19eca0c4369 100644
index dab07a8cc762..48c51893135f 100644
--- content/browser/browser_plugin/browser_plugin_guest.cc
+++ content/browser/browser_plugin/browser_plugin_guest.cc
@@ -315,8 +315,11 @@ void BrowserPluginGuest::InitInternal(
@@ -314,8 +314,11 @@ void BrowserPluginGuest::InitInternal(
static_cast<WebContentsViewGuest*>(GetWebContents()->GetView());
}
@ -15,7 +15,7 @@ index 15994d5dada4..e19eca0c4369 100644
// Once a BrowserPluginGuest has an embedder WebContents, it's considered to
// be attached.
@@ -799,10 +802,19 @@ void BrowserPluginGuest::OnWillAttachComplete(
@@ -790,10 +793,19 @@ void BrowserPluginGuest::OnWillAttachComplete(
static_cast<WebContentsViewGuest*>(GetWebContents()->GetView());
if (!web_contents()->GetRenderViewHost()->GetWidget()->GetView()) {
web_contents_view->CreateViewForWidget(
@ -37,10 +37,10 @@ index 15994d5dada4..e19eca0c4369 100644
attached_ = true;
diff --git content/browser/frame_host/interstitial_page_impl.cc content/browser/frame_host/interstitial_page_impl.cc
index af9c604d5785..81d3071b0f3d 100644
index f7340d1f5d4c..d2cdb73e8db9 100644
--- content/browser/frame_host/interstitial_page_impl.cc
+++ content/browser/frame_host/interstitial_page_impl.cc
@@ -618,7 +618,7 @@ WebContentsView* InterstitialPageImpl::CreateWebContentsView() {
@@ -619,7 +619,7 @@ WebContentsView* InterstitialPageImpl::CreateWebContentsView() {
WebContentsView* wcv =
static_cast<WebContentsImpl*>(web_contents())->GetView();
RenderWidgetHostViewBase* view =

View File

@ -1,5 +1,5 @@
diff --git chrome/browser/BUILD.gn chrome/browser/BUILD.gn
index ac64f5c5cd14..d926502a78a0 100644
index d1fc8968a730..0f485507181d 100644
--- chrome/browser/BUILD.gn
+++ chrome/browser/BUILD.gn
@@ -8,6 +8,7 @@ import("//build/config/features.gni")
@ -10,7 +10,7 @@ index ac64f5c5cd14..d926502a78a0 100644
import("//chrome/common/features.gni")
import("//components/feature_engagement/features.gni")
import("//components/nacl/features.gni")
@@ -1581,6 +1582,7 @@ jumbo_split_static_library("browser") {
@@ -1583,6 +1584,7 @@ jumbo_split_static_library("browser") {
"//base:i18n",
"//base/allocator:buildflags",
"//cc",
@ -18,7 +18,7 @@ index ac64f5c5cd14..d926502a78a0 100644
"//chrome:extra_resources",
"//chrome:resources",
"//chrome:strings",
@@ -1835,6 +1837,10 @@ jumbo_split_static_library("browser") {
@@ -1836,6 +1838,10 @@ jumbo_split_static_library("browser") {
"//ui/web_dialogs",
]

View File

@ -1,12 +1,11 @@
diff --git chrome/browser/profiles/incognito_helpers.cc chrome/browser/profiles/incognito_helpers.cc
index ce4f72b98a05..f7d57b854399 100644
index ce4f72b98a05..39f7c3140c6e 100644
--- chrome/browser/profiles/incognito_helpers.cc
+++ chrome/browser/profiles/incognito_helpers.cc
@@ -7,19 +7,42 @@
#include "chrome/browser/profiles/profile.h"
@@ -8,18 +8,41 @@
namespace chrome {
+
+namespace {
+BrowserContextIncognitoHelper* g_helper = nullptr;
+} // namespace
@ -14,7 +13,7 @@ index ce4f72b98a05..f7d57b854399 100644
+void SetBrowserContextIncognitoHelper(BrowserContextIncognitoHelper* helper) {
+ g_helper = helper;
+}
+
content::BrowserContext* GetBrowserContextRedirectedInIncognito(
content::BrowserContext* context) {
+ if (g_helper) {
@ -71,10 +70,10 @@ index e8e76ce5b954..1dd338dd0142 100644
content::BrowserContext* GetBrowserContextRedirectedInIncognito(
content::BrowserContext* context);
diff --git chrome/browser/profiles/profile_manager.cc chrome/browser/profiles/profile_manager.cc
index 7675240b2556..08f621236038 100644
index 7f15a0bcb0a9..3f2db9c4b75b 100644
--- chrome/browser/profiles/profile_manager.cc
+++ chrome/browser/profiles/profile_manager.cc
@@ -378,7 +378,7 @@ ProfileManager::ProfileManager(const base::FilePath& user_data_dir)
@@ -379,7 +379,7 @@ ProfileManager::ProfileManager(const base::FilePath& user_data_dir)
chrome::NOTIFICATION_BROWSER_CLOSE_CANCELLED,
content::NotificationService::AllSources());

View File

@ -157,10 +157,10 @@ index 484e07af5a98..0e62e20095c7 100644
// If we broke out of the loop, we have found an enabled plugin.
bool enabled = i < matching_plugins.size();
diff --git chrome/renderer/chrome_content_renderer_client.cc chrome/renderer/chrome_content_renderer_client.cc
index 1cd2e64b9eb9..a46e40fb1e25 100644
index ec423e4aa428..493ec5b44c90 100644
--- chrome/renderer/chrome_content_renderer_client.cc
+++ chrome/renderer/chrome_content_renderer_client.cc
@@ -770,6 +770,7 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
@@ -771,6 +771,7 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
if ((status == chrome::mojom::PluginStatus::kUnauthorized ||
status == chrome::mojom::PluginStatus::kBlocked) &&
@ -168,7 +168,7 @@ index 1cd2e64b9eb9..a46e40fb1e25 100644
observer->IsPluginTemporarilyAllowed(identifier)) {
status = chrome::mojom::PluginStatus::kAllowed;
}
@@ -957,7 +958,8 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
@@ -958,7 +959,8 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
render_frame->GetRemoteAssociatedInterfaces()->GetInterface(
&plugin_auth_host);
plugin_auth_host->BlockedUnauthorizedPlugin(group_name, identifier);
@ -178,7 +178,7 @@ index 1cd2e64b9eb9..a46e40fb1e25 100644
break;
}
case chrome::mojom::PluginStatus::kBlocked: {
@@ -966,7 +968,8 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
@@ -967,7 +969,8 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
l10n_util::GetStringFUTF16(IDS_PLUGIN_BLOCKED, group_name));
placeholder->AllowLoading();
RenderThread::Get()->RecordAction(UserMetricsAction("Plugin_Blocked"));
@ -188,7 +188,7 @@ index 1cd2e64b9eb9..a46e40fb1e25 100644
break;
}
case chrome::mojom::PluginStatus::kBlockedByPolicy: {
@@ -976,7 +979,8 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
@@ -977,7 +980,8 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
group_name));
RenderThread::Get()->RecordAction(
UserMetricsAction("Plugin_BlockedByPolicy"));
@ -198,7 +198,7 @@ index 1cd2e64b9eb9..a46e40fb1e25 100644
break;
}
case chrome::mojom::PluginStatus::kBlockedNoLoading: {
@@ -984,7 +988,8 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
@@ -985,7 +989,8 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
IDR_BLOCKED_PLUGIN_HTML,
l10n_util::GetStringFUTF16(IDS_PLUGIN_BLOCKED_NO_LOADING,
group_name));

View File

@ -1,5 +1,5 @@
diff --git chrome/renderer/BUILD.gn chrome/renderer/BUILD.gn
index 0903a4520939..be719c54f671 100644
index 859fc5b5cb25..3a2a51bd1df1 100644
--- chrome/renderer/BUILD.gn
+++ chrome/renderer/BUILD.gn
@@ -3,6 +3,7 @@
@ -10,7 +10,7 @@ index 0903a4520939..be719c54f671 100644
import("//chrome/common/features.gni")
import("//components/nacl/features.gni")
import("//components/offline_pages/buildflags/features.gni")
@@ -109,6 +110,7 @@ static_library("renderer") {
@@ -111,6 +112,7 @@ static_library("renderer") {
defines = []
deps = [
@ -18,7 +18,7 @@ index 0903a4520939..be719c54f671 100644
"//chrome:resources",
"//chrome:strings",
"//chrome/common",
@@ -169,6 +171,10 @@ static_library("renderer") {
@@ -171,6 +173,10 @@ static_library("renderer") {
configs += [ "//build/config/compiler:wexit_time_destructors" ]

View File

@ -13,7 +13,7 @@ index d15599593511..0f37d5933391 100644
#endif
#endif // BUILDFLAG(ENABLE_LIBRARY_CDMS)
diff --git third_party/widevine/cdm/BUILD.gn third_party/widevine/cdm/BUILD.gn
index 55b471ea..6dac055 100644
index 55b471ea93f8..6dac0552d66f 100644
--- third_party/widevine/cdm/BUILD.gn
+++ third_party/widevine/cdm/BUILD.gn
@@ -4,6 +4,7 @@

View File

@ -93,10 +93,10 @@ index 0c0c4cbb9efe..4703ce943367 100644
}
diff --git content/browser/frame_host/render_frame_host_impl.cc content/browser/frame_host/render_frame_host_impl.cc
index f47a05e199ef..3010f016c035 100644
index ecc292f2050b..6a91426372d1 100644
--- content/browser/frame_host/render_frame_host_impl.cc
+++ content/browser/frame_host/render_frame_host_impl.cc
@@ -1552,6 +1552,7 @@ void RenderFrameHostImpl::OnDidFailProvisionalLoadWithError(
@@ -1549,6 +1549,7 @@ void RenderFrameHostImpl::OnDidFailProvisionalLoadWithError(
if (GetNavigationHandle()) {
GetNavigationHandle()->set_net_error_code(
static_cast<net::Error>(params.error_code));
@ -104,7 +104,7 @@ index f47a05e199ef..3010f016c035 100644
}
frame_tree_node_->navigator()->DidFailProvisionalLoadWithError(this, params);
@@ -3309,9 +3310,9 @@ void RenderFrameHostImpl::RegisterMojoInterfaces() {
@@ -3314,9 +3315,9 @@ void RenderFrameHostImpl::RegisterMojoInterfaces() {
&QuotaDispatcherHost::CreateForFrame, GetProcess(), routing_id_));
if (base::FeatureList::IsEnabled(network::features::kNetworkService)) {
@ -117,7 +117,7 @@ index f47a05e199ef..3010f016c035 100644
// TODO(https://crbug.com/813479): Investigate why we need to explicitly
// specify task runner for BrowserThread::IO here.
// Bind calls to the BindRegistry should come on to the IO thread by
@@ -3588,9 +3589,9 @@ void RenderFrameHostImpl::CommitNavigation(
@@ -3593,9 +3594,9 @@ void RenderFrameHostImpl::CommitNavigation(
// however only do this for cross-document navigations, because the
// alternative would be redundant effort.
network::mojom::URLLoaderFactoryPtrInfo default_factory_info;
@ -130,7 +130,7 @@ index f47a05e199ef..3010f016c035 100644
if (subresource_loader_params &&
subresource_loader_params->loader_factory_info.is_valid()) {
// If the caller has supplied a default URLLoaderFactory override (for
@@ -4218,8 +4219,8 @@ void RenderFrameHostImpl::CreateNetworkServiceDefaultFactoryAndObserve(
@@ -4219,8 +4220,8 @@ void RenderFrameHostImpl::CreateNetworkServiceDefaultFactoryAndObserve(
// Keep DevTools proxy lasy, i.e. closest to the network.
RenderFrameDevToolsAgentHost::WillCreateURLLoaderFactory(
this, false, &default_factory_request);
@ -141,6 +141,17 @@ index f47a05e199ef..3010f016c035 100644
if (g_create_network_factory_callback_for_test.Get().is_null()) {
storage_partition->GetNetworkContext()->CreateURLLoaderFactory(
std::move(default_factory_request), GetProcess()->GetID());
@@ -4471,8 +4472,8 @@ void RenderFrameHostImpl::CreateWebSocket(
network::mojom::WebSocketRequest request) {
if (base::FeatureList::IsEnabled(network::features::kNetworkService)) {
auto* context = GetSiteInstance()->GetBrowserContext();
- auto* storage_partition = static_cast<StoragePartitionImpl*>(
- BrowserContext::GetStoragePartition(context, GetSiteInstance()));
+ auto* storage_partition =
+ BrowserContext::GetStoragePartition(context, GetSiteInstance());
storage_partition->GetNetworkContext()->CreateWebSocket(
std::move(request), process_->GetID(), routing_id_,
last_committed_origin_);
diff --git content/browser/frame_host/render_frame_message_filter.cc content/browser/frame_host/render_frame_message_filter.cc
index 80fd7cf89578..8e965cd18a47 100644
--- content/browser/frame_host/render_frame_message_filter.cc
@ -274,10 +285,10 @@ index 4e11056a3dc9..973ad50975e1 100644
const std::string& mime_type,
bool allow_wildcard,
diff --git content/common/frame_messages.h content/common/frame_messages.h
index 7ee98ee35116..63082b5a8132 100644
index d8ac3881e867..d040a59a5090 100644
--- content/common/frame_messages.h
+++ content/common/frame_messages.h
@@ -1387,8 +1387,9 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback,
@@ -1398,8 +1398,9 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback,
// Used to get the list of plugins. |main_frame_origin| is used to handle
// exceptions for plugin content settings.
@ -288,7 +299,7 @@ index 7ee98ee35116..63082b5a8132 100644
url::Origin /* main_frame_origin */,
std::vector<content::WebPluginInfo> /* plugins */)
@@ -1396,9 +1397,10 @@ IPC_SYNC_MESSAGE_CONTROL2_1(FrameHostMsg_GetPlugins,
@@ -1407,9 +1408,10 @@ IPC_SYNC_MESSAGE_CONTROL2_1(FrameHostMsg_GetPlugins,
// type. If there is no matching plugin, |found| is false.
// |actual_mime_type| is the actual mime type supported by the
// found plugin.
@ -349,7 +360,7 @@ index 3b610b1f554e..7c439e060779 100644
WebPluginInfo* plugin) = 0;
diff --git content/public/renderer/content_renderer_client.h content/public/renderer/content_renderer_client.h
index a68f00aec37a..696f9efab95d 100644
index f2af9c4d6625..98481ffed5b9 100644
--- content/public/renderer/content_renderer_client.h
+++ content/public/renderer/content_renderer_client.h
@@ -77,6 +77,9 @@ class CONTENT_EXPORT ContentRendererClient {
@ -362,7 +373,7 @@ index a68f00aec37a..696f9efab95d 100644
// Notifies that a new RenderFrame has been created.
virtual void RenderFrameCreated(RenderFrame* render_frame) {}
@@ -356,6 +359,10 @@ class CONTENT_EXPORT ContentRendererClient {
@@ -363,6 +366,10 @@ class CONTENT_EXPORT ContentRendererClient {
// This method may invalidate the frame.
virtual void RunScriptsAtDocumentIdle(RenderFrame* render_frame) {}
@ -388,10 +399,10 @@ index 74a031ad10c3..3b3f9e292f4b 100644
virtual void FocusedNodeChanged(const blink::WebNode& node) {}
diff --git content/renderer/render_frame_impl.cc content/renderer/render_frame_impl.cc
index fede37b7301b..6bda5cfdbcd1 100644
index e5478c1845ef..5302ab1138a1 100644
--- content/renderer/render_frame_impl.cc
+++ content/renderer/render_frame_impl.cc
@@ -3486,7 +3486,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin(
@@ -3281,7 +3281,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin(
std::string mime_type;
bool found = false;
Send(new FrameHostMsg_GetPluginInfo(
@ -401,7 +412,7 @@ index fede37b7301b..6bda5cfdbcd1 100644
params.mime_type.Utf8(), &found, &info, &mime_type));
if (!found)
return nullptr;
@@ -3847,6 +3848,8 @@ void RenderFrameImpl::FrameDetached(DetachType type) {
@@ -3646,6 +3647,8 @@ void RenderFrameImpl::FrameDetached(DetachType type) {
void RenderFrameImpl::FrameFocused() {
Send(new FrameHostMsg_FrameFocused(routing_id_));
@ -411,10 +422,10 @@ index fede37b7301b..6bda5cfdbcd1 100644
void RenderFrameImpl::WillCommitProvisionalLoad() {
diff --git content/renderer/render_thread_impl.cc content/renderer/render_thread_impl.cc
index 089bc9a31881..7c938b4d3c8d 100644
index dcd109f2947f..dff078ea3f4f 100644
--- content/renderer/render_thread_impl.cc
+++ content/renderer/render_thread_impl.cc
@@ -942,6 +942,8 @@ void RenderThreadImpl::Init(
@@ -911,6 +911,8 @@ void RenderThreadImpl::Init(
StartServiceManagerConnection();
@ -424,10 +435,10 @@ index 089bc9a31881..7c938b4d3c8d 100644
base::Bind(&RenderThreadImpl::OnRendererInterfaceRequest,
base::Unretained(this)));
diff --git content/renderer/renderer_blink_platform_impl.cc content/renderer/renderer_blink_platform_impl.cc
index 58008cefd4be..c933ed29f304 100644
index 7e4d6f05a496..a6f10b7f66a6 100644
--- content/renderer/renderer_blink_platform_impl.cc
+++ content/renderer/renderer_blink_platform_impl.cc
@@ -842,6 +842,7 @@ RendererBlinkPlatformImpl::CreateMIDIAccessor(
@@ -839,6 +839,7 @@ RendererBlinkPlatformImpl::CreateMIDIAccessor(
void RendererBlinkPlatformImpl::GetPluginList(
bool refresh,
@ -435,7 +446,7 @@ index 58008cefd4be..c933ed29f304 100644
const blink::WebSecurityOrigin& mainFrameOrigin,
blink::WebPluginListBuilder* builder) {
#if BUILDFLAG(ENABLE_PLUGINS)
@@ -849,7 +850,8 @@ void RendererBlinkPlatformImpl::GetPluginList(
@@ -846,7 +847,8 @@ void RendererBlinkPlatformImpl::GetPluginList(
if (!plugin_refresh_allowed_)
refresh = false;
RenderThread::Get()->Send(
@ -445,7 +456,7 @@ index 58008cefd4be..c933ed29f304 100644
for (const WebPluginInfo& plugin : plugins) {
builder->AddPlugin(WebString::FromUTF16(plugin.name),
WebString::FromUTF16(plugin.desc),
@@ -1416,6 +1418,14 @@ void RendererBlinkPlatformImpl::RequestPurgeMemory() {
@@ -1413,6 +1415,14 @@ void RendererBlinkPlatformImpl::RequestPurgeMemory() {
base::MemoryCoordinatorClientRegistry::GetInstance()->PurgeMemory();
}
@ -461,10 +472,10 @@ index 58008cefd4be..c933ed29f304 100644
if (!web_database_host_) {
web_database_host_ = blink::mojom::ThreadSafeWebDatabaseHostPtr::Create(
diff --git content/renderer/renderer_blink_platform_impl.h content/renderer/renderer_blink_platform_impl.h
index 611b6b70f3cb..98e858e6bd93 100644
index 09c80bbe6eb8..b41bd2928e41 100644
--- content/renderer/renderer_blink_platform_impl.h
+++ content/renderer/renderer_blink_platform_impl.h
@@ -126,6 +126,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
@@ -127,6 +127,7 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
viz::FrameSinkId GenerateFrameSinkId() override;
void GetPluginList(bool refresh,

View File

@ -30,22 +30,22 @@ index 887e13776dd2..de30ebff25e4 100644
void SetActiveExtensions(const std::set<std::string>& extensions) {
diff --git chrome/common/crash_keys.h chrome/common/crash_keys.h
index bcf172e645a2..a46141ea43e0 100644
index bcf172e645a2..f879aa745adf 100644
--- chrome/common/crash_keys.h
+++ chrome/common/crash_keys.h
@@ -16,6 +16,10 @@ class CommandLine;
}
@@ -17,6 +17,10 @@ class CommandLine;
namespace crash_keys {
+
+// Returns true if the specified command-line flag should be excluded from
+// crash reporting.
+bool IsBoringChromeSwitch(const std::string& flag);
+
// Sets the kNumSwitches key and the set of keys named using kSwitchFormat based
// on the given |command_line|.
void SetCrashKeysFromCommandLine(const base::CommandLine& command_line);
diff --git chrome_elf/BUILD.gn chrome_elf/BUILD.gn
index e66f49a470f8..f2b725efb6fd 100644
index 6cdabcb46a36..1e70786f8317 100644
--- chrome_elf/BUILD.gn
+++ chrome_elf/BUILD.gn
@@ -7,6 +7,7 @@

View File

@ -3,7 +3,7 @@ index 53c7404ef1f9..ac33df7cfe0e 100644
--- chrome/browser/extensions/api/streams_private/streams_private_api.cc
+++ chrome/browser/extensions/api/streams_private/streams_private_api.cc
@@ -9,6 +9,7 @@
#include "base/lazy_instance.h"
#include "base/values.h"
+#include "cef/libcef/features/features.h"
@ -13,7 +13,7 @@ index 53c7404ef1f9..ac33df7cfe0e 100644
@@ -79,6 +80,7 @@ void StreamsPrivateAPI::SendExecuteMimeTypeHandlerEvent(
if (!web_contents)
return;
+#if !BUILDFLAG(ENABLE_CEF)
// If the request was for a prerender, abort the prerender and do not
// continue. This is because plugins cancel prerender, see
@ -23,7 +23,7 @@ index 53c7404ef1f9..ac33df7cfe0e 100644
return;
}
+#endif // !BUILDFLAG(ENABLE_CEF)
auto* browser_context = web_contents->GetBrowserContext();
StreamsPrivateAPI* streams_private = GetStreamsPrivateAPI(browser_context);
diff --git content/browser/frame_host/render_frame_host_manager.cc content/browser/frame_host/render_frame_host_manager.cc

View File

@ -12,7 +12,7 @@ index 2bcaabc1330e..6e6cbb542a59 100644
# https://crbug.com/474506.
"//clank/java/BUILD.gn",
diff --git BUILD.gn BUILD.gn
index acd17275a438..52ea2a4654b0 100644
index 5ce3ebab4683..73f9594f36cb 100644
--- BUILD.gn
+++ BUILD.gn
@@ -192,6 +192,7 @@ group("gn_all") {
@ -110,10 +110,10 @@ index fce62521a385..73fa49852fd6 100644
diff --git build/vs_toolchain.py build/vs_toolchain.py
index 6060415bda86..1cc1eaae0a1d 100755
index 11e5e4c7d30f..88e8b84d23e3 100755
--- build/vs_toolchain.py
+++ build/vs_toolchain.py
@@ -81,11 +81,18 @@ def SetEnvironmentAndGetRuntimeDllDirs():
@@ -82,11 +82,18 @@ def SetEnvironmentAndGetRuntimeDllDirs():
runtime_path = os.path.pathsep.join(vs_runtime_dll_dirs)
os.environ['PATH'] = runtime_path + os.path.pathsep + os.environ['PATH']
elif sys.platform == 'win32' and not depot_tools_win_toolchain:
@ -146,7 +146,7 @@ index 6d412994ffd8..575536f80166 100644
if (is_mac) {
output_locales = locales_as_mac_outputs
diff --git chrome/installer/mini_installer/BUILD.gn chrome/installer/mini_installer/BUILD.gn
index c365088b90b7..29c28300979e 100644
index 5c940dde6d9c..1cc058e51c5b 100644
--- chrome/installer/mini_installer/BUILD.gn
+++ chrome/installer/mini_installer/BUILD.gn
@@ -133,7 +133,7 @@ template("generate_mini_installer") {

View File

@ -1,5 +1,5 @@
diff --git build/config/compiler/BUILD.gn build/config/compiler/BUILD.gn
index 461e62da2d50..7cd9237c03ca 100644
index a93cc5ee5ce9..9bd6210b3a3f 100644
--- build/config/compiler/BUILD.gn
+++ build/config/compiler/BUILD.gn
@@ -149,7 +149,7 @@ declare_args() {

View File

@ -1,8 +1,8 @@
diff --git base/message_loop/message_loop.h base/message_loop/message_loop.h
index 439d364fc54c..6cbe494e7041 100644
--- base/message_loop/message_loop.h
+++ base/message_loop/message_loop.h
@@ -257,6 +257,16 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate,
diff --git base/message_loop/message_loop_current.h base/message_loop/message_loop_current.h
index 4b313adf63ec..c23927ea4e1e 100644
--- base/message_loop/message_loop_current.h
+++ base/message_loop/message_loop_current.h
@@ -126,6 +126,16 @@ class BASE_EXPORT MessageLoopCurrent {
void AddTaskObserver(TaskObserver* task_observer);
void RemoveTaskObserver(TaskObserver* task_observer);
@ -16,22 +16,23 @@ index 439d364fc54c..6cbe494e7041 100644
+ }
+#endif // OS_WIN
+
// Returns true if the message loop is idle (ignoring delayed tasks). This is
// the same condition which triggers DoWork() to return false: i.e.
// out of tasks which can be processed at the current run-level -- there might
@@ -358,6 +368,12 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate,
// is known to generate a system-driven nested loop.
bool task_execution_allowed_ = true;
// Enables or disables the recursive task processing. This happens in the case
// of recursive message loops. Some unwanted message loops may occur when
// using common controls or printer functions. By default, recursive task
@@ -199,6 +209,13 @@ class BASE_EXPORT MessageLoopCurrent {
explicit MessageLoopCurrent(MessageLoop* current) : current_(current) {}
MessageLoop* const current_;
+
+#if defined(OS_WIN)
+ private:
+ // Should be set to true before calling Windows APIs like TrackPopupMenu, etc.
+ // which enter a modal message loop.
+ bool os_modal_loop_ = false;
+#endif
+
// pump_factory_.Run() is called to create a message pump for this loop
// if type_ is TYPE_CUSTOM and pump_ is null.
MessagePumpFactoryCallback pump_factory_;
};
#if !defined(OS_NACL)
diff --git base/message_loop/message_pump_win.cc base/message_loop/message_pump_win.cc
index b145a1d54a32..9b28169050b2 100644
--- base/message_loop/message_pump_win.cc

View File

@ -55,7 +55,7 @@ index fb6f4847cfe9..aa4c1cdafb9f 100644
} // namespace net
diff --git net/http/transport_security_state.cc net/http/transport_security_state.cc
index 2f07f68ace0d..8c223aed6210 100644
index c82981c270e3..25c6a3950830 100644
--- net/http/transport_security_state.cc
+++ net/http/transport_security_state.cc
@@ -1581,8 +1581,10 @@ void TransportSecurityState::ClearReportCachesForTesting() {
@ -72,7 +72,7 @@ index 2f07f68ace0d..8c223aed6210 100644
// We consider built-in information to be timely for 10 weeks.
return (base::Time::Now() - build_time).InDays() < 70 /* 10 weeks */;
diff --git net/http/transport_security_state.h net/http/transport_security_state.h
index cf034710df38..d53de146034e 100644
index ed2c644c3c81..4c7a43990c8b 100644
--- net/http/transport_security_state.h
+++ net/http/transport_security_state.h
@@ -582,6 +582,10 @@ class NET_EXPORT TransportSecurityState {

View File

@ -1,8 +1,8 @@
diff --git BUILD.gn BUILD.gn
index 2f74e43bf..a74e2dade 100644
index c00557594..a95bccb31 100644
--- BUILD.gn
+++ BUILD.gn
@@ -240,6 +240,10 @@ jumbo_static_library("pdfium") {
@@ -241,6 +241,10 @@ jumbo_static_library("pdfium") {
complete_static_lib = true
configs -= [ "//build/config/compiler:thin_archive" ]
}
@ -14,7 +14,7 @@ index 2f74e43bf..a74e2dade 100644
jumbo_static_library("test_support") {
diff --git fpdfsdk/fpdf_view.cpp fpdfsdk/fpdf_view.cpp
index cd8edbbdd..ea06a5576 100644
index d21448bc5..5df0cfeb4 100644
--- fpdfsdk/fpdf_view.cpp
+++ fpdfsdk/fpdf_view.cpp
@@ -36,6 +36,7 @@

View File

@ -35,10 +35,10 @@ index e4fc39c60fd7..f19fccf47261 100644
bool record_whole_document;
SavePreviousDocumentResources save_previous_document_resources;
diff --git content/renderer/render_view_impl.cc content/renderer/render_view_impl.cc
index 58cf6da520e2..02ad4c2998bf 100644
index a0f5f3d0912b..f10561eeb952 100644
--- content/renderer/render_view_impl.cc
+++ content/renderer/render_view_impl.cc
@@ -1209,6 +1209,7 @@ void RenderViewImpl::ApplyWebPreferencesInternal(
@@ -1198,6 +1198,7 @@ void RenderViewImpl::ApplyWebPreferencesInternal(
blink::WebView* web_view,
CompositorDependencies* compositor_deps) {
ApplyWebPreferences(prefs, web_view);

View File

@ -1,8 +1,8 @@
diff --git chrome/browser/ui/BUILD.gn chrome/browser/ui/BUILD.gn
index 72dde06a99a7..0a7cd2e45d2c 100644
index 388cb0b5db0e..d9580cda6f8b 100644
--- chrome/browser/ui/BUILD.gn
+++ chrome/browser/ui/BUILD.gn
@@ -923,6 +923,7 @@ split_static_library("ui") {
@@ -884,6 +884,7 @@ split_static_library("ui") {
"//base:i18n",
"//base/allocator:buildflags",
"//cc/paint",
@ -133,7 +133,7 @@ index b308dc410ffb..6c92009df454 100644
}
-#endif // BUILDFLAG(ENABLE_PRINT_PREVIEW)
diff --git components/printing/common/print_messages.h components/printing/common/print_messages.h
index 0f1e59167b24..783cbcdc6bd9 100644
index b9e8aa76fe5a..12e8b30b339d 100644
--- components/printing/common/print_messages.h
+++ components/printing/common/print_messages.h
@@ -85,7 +85,6 @@ struct PrintMsg_PrintFrame_Params {
@ -242,7 +242,7 @@ index 0f1e59167b24..783cbcdc6bd9 100644
#endif // COMPONENTS_PRINTING_COMMON_PRINT_MESSAGES_H_
diff --git components/printing/renderer/print_render_frame_helper.cc components/printing/renderer/print_render_frame_helper.cc
index 1c914fd1ba34..6141c4021785 100644
index 0d4dcbd43b48..91c430ccead8 100644
--- components/printing/renderer/print_render_frame_helper.cc
+++ components/printing/renderer/print_render_frame_helper.cc
@@ -326,7 +326,6 @@ bool PrintingNodeOrPdfFrame(const blink::WebLocalFrame* frame,
@ -261,15 +261,15 @@ index 1c914fd1ba34..6141c4021785 100644
#if BUILDFLAG(ENABLE_PRINTING)
// Disable scaling when either:
@@ -405,7 +403,6 @@ MarginType GetMarginsForPdf(blink::WebLocalFrame* frame,
@@ -403,7 +401,6 @@ MarginType GetMarginsForPdf(blink::WebLocalFrame* frame,
: PRINTABLE_AREA_MARGINS;
}
#endif
-#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
bool FitToPageEnabled(const base::DictionaryValue& job_settings) {
bool fit_to_paper_size = false;
if (!job_settings.GetBoolean(kSettingFitToPageEnabled, &fit_to_paper_size)) {
@@ -447,7 +444,6 @@ blink::WebPrintScalingOption GetPrintScalingOption(
@@ -445,7 +442,6 @@ blink::WebPrintScalingOption GetPrintScalingOption(
}
return blink::kWebPrintScalingOptionFitToPrintableArea;
}
@ -277,7 +277,7 @@ index 1c914fd1ba34..6141c4021785 100644
// Helper function to scale and round an integer value with a double valued
// scaling.
@@ -951,6 +947,7 @@ PrintRenderFrameHelper::PrintRenderFrameHelper(
@@ -949,6 +945,7 @@ PrintRenderFrameHelper::PrintRenderFrameHelper(
notify_browser_of_print_failure_(true),
delegate_(std::move(delegate)),
print_node_in_progress_(false),
@ -285,7 +285,7 @@ index 1c914fd1ba34..6141c4021785 100644
is_loading_(false),
is_scripted_preview_delayed_(false),
ipc_nesting_level_(0),
@@ -1012,10 +1009,8 @@ void PrintRenderFrameHelper::ScriptedPrint(bool user_initiated) {
@@ -1010,10 +1007,8 @@ void PrintRenderFrameHelper::ScriptedPrint(bool user_initiated) {
return;
if (g_is_preview_enabled) {
@ -294,12 +294,12 @@ index 1c914fd1ba34..6141c4021785 100644
RequestPrintPreview(PRINT_PREVIEW_SCRIPTED);
-#endif
} else {
#if BUILDFLAG(ENABLE_BASIC_PRINTING)
auto weak_this = weak_ptr_factory_.GetWeakPtr();
@@ -1047,10 +1042,10 @@ bool PrintRenderFrameHelper::OnMessageReceived(const IPC::Message& message) {
web_frame->DispatchBeforePrintEvent();
@@ -1041,10 +1036,10 @@ bool PrintRenderFrameHelper::OnMessageReceived(const IPC::Message& message) {
IPC_BEGIN_MESSAGE_MAP(PrintRenderFrameHelper, message)
IPC_MESSAGE_HANDLER(PrintMsg_PrintPages, OnPrintPages)
IPC_MESSAGE_HANDLER(PrintMsg_PrintForSystemDialog, OnPrintForSystemDialog)
#endif // BUILDFLAG(ENABLE_BASIC_PRINTING)
-#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
IPC_MESSAGE_HANDLER(PrintMsg_InitiatePrintPreview, OnInitiatePrintPreview)
IPC_MESSAGE_HANDLER(PrintMsg_PrintPreview, OnPrintPreview)
@ -308,7 +308,7 @@ index 1c914fd1ba34..6141c4021785 100644
IPC_MESSAGE_HANDLER(PrintMsg_ClosePrintPreviewDialog,
OnClosePrintPreviewDialog)
#endif // BUILDFLAG(ENABLE_PRINT_PREVIEW)
@@ -1134,7 +1129,6 @@ void PrintRenderFrameHelper::UpdateFrameMarginsCssInfo(
@@ -1126,7 +1121,6 @@ void PrintRenderFrameHelper::UpdateFrameMarginsCssInfo(
ignore_css_margins_ = (margins_type != DEFAULT_MARGINS);
}
@ -316,7 +316,7 @@ index 1c914fd1ba34..6141c4021785 100644
void PrintRenderFrameHelper::OnPrintPreview(
const base::DictionaryValue& settings) {
if (ipc_nesting_level_ > 1)
@@ -1319,7 +1313,6 @@ bool PrintRenderFrameHelper::CreatePreviewDocument() {
@@ -1311,7 +1305,6 @@ bool PrintRenderFrameHelper::CreatePreviewDocument() {
return true;
}
@ -324,7 +324,7 @@ index 1c914fd1ba34..6141c4021785 100644
bool PrintRenderFrameHelper::RenderPreviewPage(
int page_number,
const PrintMsg_Print_Params& print_params) {
@@ -1347,7 +1340,6 @@ bool PrintRenderFrameHelper::RenderPreviewPage(
@@ -1339,7 +1332,6 @@ bool PrintRenderFrameHelper::RenderPreviewPage(
print_params.printed_doc_type);
return PreviewPageRendered(page_number, std::move(metafile));
}
@ -332,7 +332,7 @@ index 1c914fd1ba34..6141c4021785 100644
bool PrintRenderFrameHelper::FinalizePrintReadyDocument() {
DCHECK(!is_print_ready_metafile_sent_);
@@ -1375,7 +1367,6 @@ bool PrintRenderFrameHelper::FinalizePrintReadyDocument() {
@@ -1367,7 +1359,6 @@ bool PrintRenderFrameHelper::FinalizePrintReadyDocument() {
Send(new PrintHostMsg_MetafileReadyForPrinting(routing_id(), preview_params));
return true;
}
@ -340,7 +340,7 @@ index 1c914fd1ba34..6141c4021785 100644
void PrintRenderFrameHelper::OnPrintingDone(bool success) {
if (ipc_nesting_level_ > 1)
@@ -1390,7 +1381,6 @@ void PrintRenderFrameHelper::OnSetPrintingEnabled(bool enabled) {
@@ -1382,7 +1373,6 @@ void PrintRenderFrameHelper::OnSetPrintingEnabled(bool enabled) {
is_printing_enabled_ = enabled;
}
@ -348,7 +348,7 @@ index 1c914fd1ba34..6141c4021785 100644
void PrintRenderFrameHelper::OnInitiatePrintPreview(bool has_selection) {
if (ipc_nesting_level_ > 1)
return;
@@ -1401,7 +1391,9 @@ void PrintRenderFrameHelper::OnInitiatePrintPreview(bool has_selection) {
@@ -1393,7 +1383,9 @@ void PrintRenderFrameHelper::OnInitiatePrintPreview(bool has_selection) {
// that instead.
auto plugin = delegate_->GetPdfElement(frame);
if (!plugin.IsNull()) {
@ -358,7 +358,7 @@ index 1c914fd1ba34..6141c4021785 100644
return;
}
print_preview_context_.InitWithFrame(frame);
@@ -1410,10 +1402,11 @@ void PrintRenderFrameHelper::OnInitiatePrintPreview(bool has_selection) {
@@ -1402,10 +1394,11 @@ void PrintRenderFrameHelper::OnInitiatePrintPreview(bool has_selection) {
: PRINT_PREVIEW_USER_INITIATED_ENTIRE_FRAME);
}
@ -371,7 +371,7 @@ index 1c914fd1ba34..6141c4021785 100644
void PrintRenderFrameHelper::OnPrintFrameContent(
const PrintMsg_PrintFrame_Params& params) {
@@ -1497,11 +1490,9 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) {
@@ -1489,11 +1482,9 @@ void PrintRenderFrameHelper::PrintNode(const blink::WebNode& node) {
print_node_in_progress_ = true;
@ -382,9 +382,9 @@ index 1c914fd1ba34..6141c4021785 100644
RequestPrintPreview(PRINT_PREVIEW_USER_INITIATED_CONTEXT_NODE);
-#endif
} else {
#if BUILDFLAG(ENABLE_BASIC_PRINTING)
// Make a copy of the node, in case RenderView::OnContextMenuClosed() resets
@@ -1595,7 +1586,6 @@ void PrintRenderFrameHelper::DidFinishPrinting(PrintingResult result) {
// its |context_menu_node_|.
@@ -1583,7 +1574,6 @@ void PrintRenderFrameHelper::DidFinishPrinting(PrintingResult result) {
}
break;
@ -392,7 +392,7 @@ index 1c914fd1ba34..6141c4021785 100644
case FAIL_PREVIEW:
if (!is_print_ready_metafile_sent_) {
if (notify_browser_of_print_failure_) {
@@ -1612,7 +1602,6 @@ void PrintRenderFrameHelper::DidFinishPrinting(PrintingResult result) {
@@ -1600,7 +1590,6 @@ void PrintRenderFrameHelper::DidFinishPrinting(PrintingResult result) {
cookie));
print_preview_context_.Failed(false);
break;
@ -400,7 +400,7 @@ index 1c914fd1ba34..6141c4021785 100644
}
prep_frame_view_.reset();
print_pages_params_.reset();
@@ -1782,7 +1771,6 @@ bool PrintRenderFrameHelper::CalculateNumberOfPages(blink::WebLocalFrame* frame,
@@ -1768,7 +1757,6 @@ bool PrintRenderFrameHelper::CalculateNumberOfPages(blink::WebLocalFrame* frame,
return true;
}
@ -408,15 +408,15 @@ index 1c914fd1ba34..6141c4021785 100644
bool PrintRenderFrameHelper::SetOptionsFromPdfDocument(
PrintHostMsg_SetOptionsFromDocument_Params* options) {
blink::WebLocalFrame* source_frame = print_preview_context_.source_frame();
@@ -1876,7 +1864,6 @@ bool PrintRenderFrameHelper::UpdatePrintSettings(
@@ -1862,7 +1850,6 @@ bool PrintRenderFrameHelper::UpdatePrintSettings(
print_preview_context_.set_error(PREVIEW_ERROR_INVALID_PRINTER_SETTINGS);
return false;
}
-#endif // BUILDFLAG(ENABLE_PRINT_PREVIEW)
#if BUILDFLAG(ENABLE_BASIC_PRINTING)
void PrintRenderFrameHelper::GetPrintSettingsFromUser(
@@ -2034,7 +2021,6 @@ bool PrintRenderFrameHelper::CopyMetafileDataToReadOnlySharedMem(
blink::WebLocalFrame* frame,
@@ -2018,7 +2005,6 @@ bool PrintRenderFrameHelper::CopyMetafileDataToReadOnlySharedMem(
return true;
}
@ -424,7 +424,7 @@ index 1c914fd1ba34..6141c4021785 100644
void PrintRenderFrameHelper::ShowScriptedPrintPreview() {
if (is_scripted_preview_delayed_) {
is_scripted_preview_delayed_ = false;
@@ -2157,7 +2143,6 @@ bool PrintRenderFrameHelper::PreviewPageRendered(
@@ -2141,7 +2127,6 @@ bool PrintRenderFrameHelper::PreviewPageRendered(
Send(new PrintHostMsg_DidPreviewPage(routing_id(), preview_page_params));
return true;
}
@ -433,7 +433,7 @@ index 1c914fd1ba34..6141c4021785 100644
PrintRenderFrameHelper::PrintPreviewContext::PrintPreviewContext()
: total_page_count_(0),
diff --git components/printing/renderer/print_render_frame_helper.h components/printing/renderer/print_render_frame_helper.h
index b1b1a18dd6aa..8e014acdd246 100644
index cccd932eb993..ed7893a67e7a 100644
--- components/printing/renderer/print_render_frame_helper.h
+++ components/printing/renderer/print_render_frame_helper.h
@@ -145,10 +145,8 @@ class PrintRenderFrameHelper
@ -447,10 +447,10 @@ index b1b1a18dd6aa..8e014acdd246 100644
};
// These values are persisted to logs. Entries should not be renumbered and
@@ -186,9 +184,9 @@ class PrintRenderFrameHelper
@@ -184,9 +182,9 @@ class PrintRenderFrameHelper
// Message handlers ---------------------------------------------------------
void OnPrintPages();
void OnPrintForSystemDialog();
#endif // BUILDFLAG(ENABLE_BASIC_PRINTING)
-#if BUILDFLAG(ENABLE_PRINT_PREVIEW)
void OnInitiatePrintPreview(bool has_selection);
void OnPrintPreview(const base::DictionaryValue& settings);
@ -458,7 +458,7 @@ index b1b1a18dd6aa..8e014acdd246 100644
void OnClosePrintPreviewDialog();
#endif // BUILDFLAG(ENABLE_PRINT_PREVIEW)
void OnPrintFrameContent(const PrintMsg_PrintFrame_Params& params);
@@ -204,7 +202,6 @@ class PrintRenderFrameHelper
@@ -202,7 +200,6 @@ class PrintRenderFrameHelper
// Update |ignore_css_margins_| based on settings.
void UpdateFrameMarginsCssInfo(const base::DictionaryValue& settings);
@ -466,7 +466,7 @@ index b1b1a18dd6aa..8e014acdd246 100644
// Prepare frame for creating preview document.
void PrepareFrameForPreviewDocument();
@@ -221,7 +218,6 @@ class PrintRenderFrameHelper
@@ -219,7 +216,6 @@ class PrintRenderFrameHelper
// Finalize the print ready preview document.
bool FinalizePrintReadyDocument();
@ -474,7 +474,7 @@ index b1b1a18dd6aa..8e014acdd246 100644
// Enable/Disable printing.
void OnSetPrintingEnabled(bool enabled);
@@ -251,7 +247,6 @@ class PrintRenderFrameHelper
@@ -247,7 +243,6 @@ class PrintRenderFrameHelper
const blink::WebNode& node,
int* number_of_pages);
@ -482,15 +482,15 @@ index b1b1a18dd6aa..8e014acdd246 100644
// Set options for print preset from source PDF document.
bool SetOptionsFromPdfDocument(
PrintHostMsg_SetOptionsFromDocument_Params* options);
@@ -262,7 +257,6 @@ class PrintRenderFrameHelper
@@ -258,7 +253,6 @@ class PrintRenderFrameHelper
bool UpdatePrintSettings(blink::WebLocalFrame* frame,
const blink::WebNode& node,
const base::DictionaryValue& passed_job_settings);
-#endif // BUILDFLAG(ENABLE_PRINT_PREVIEW)
#if BUILDFLAG(ENABLE_BASIC_PRINTING)
// Get final print settings from the user.
@@ -348,7 +342,6 @@ class PrintRenderFrameHelper
// WARNING: |this| may be gone after this method returns.
@@ -340,7 +334,6 @@ class PrintRenderFrameHelper
bool IsScriptInitiatedPrintAllowed(blink::WebLocalFrame* frame,
bool user_initiated);
@ -498,7 +498,7 @@ index b1b1a18dd6aa..8e014acdd246 100644
// Shows scripted print preview when options from plugin are available.
void ShowScriptedPrintPreview();
@@ -367,7 +360,6 @@ class PrintRenderFrameHelper
@@ -359,7 +352,6 @@ class PrintRenderFrameHelper
// Returns true if print preview should continue, false on failure.
bool PreviewPageRendered(int page_number,
std::unique_ptr<PdfMetafileSkia> metafile);
@ -506,7 +506,7 @@ index b1b1a18dd6aa..8e014acdd246 100644
void SetPrintPagesParams(const PrintMsg_PrintPages_Params& settings);
@@ -521,6 +513,7 @@ class PrintRenderFrameHelper
@@ -513,6 +505,7 @@ class PrintRenderFrameHelper
ScriptingThrottler scripting_throttler_;
bool print_node_in_progress_;

View File

@ -1,11 +1,11 @@
diff --git chrome/browser/printing/print_job_worker.cc chrome/browser/printing/print_job_worker.cc
index da87d60520c6..1c45a50595b5 100644
index 06a5fe2bac26..e9783f33933a 100644
--- chrome/browser/printing/print_job_worker.cc
+++ chrome/browser/printing/print_job_worker.cc
@@ -142,6 +142,7 @@ PrintJobWorker::PrintJobWorker(int render_process_id,
@@ -146,6 +146,7 @@ PrintJobWorker::PrintJobWorker(int render_process_id,
weak_factory_(this) {
// The object is created in the IO thread.
DCHECK(owner_->RunsTasksInCurrentSequence());
DCHECK(query_->RunsTasksInCurrentSequence());
+ printing_context_->set_render_ids(render_process_id, render_frame_id);
}

View File

@ -110,6 +110,20 @@ index 15cb62d76bb0..4de29a1f11f9 100644
BrowserContext::~BrowserContext() {
CHECK(GetUserData(kMojoWasInitialized))
<< "Attempting to destroy a BrowserContext that never called "
diff --git content/browser/devtools/protocol/network_handler.cc content/browser/devtools/protocol/network_handler.cc
index 9066c881f6c7..804aaa98abe2 100644
--- content/browser/devtools/protocol/network_handler.cc
+++ content/browser/devtools/protocol/network_handler.cc
@@ -887,8 +887,7 @@ class BackgroundSyncRestorer {
scoped_refptr<ServiceWorkerDevToolsAgentHost> service_worker_host =
static_cast<ServiceWorkerDevToolsAgentHost*>(host.get());
scoped_refptr<BackgroundSyncContext> sync_context =
- static_cast<StoragePartitionImpl*>(storage_partition_)
- ->GetBackgroundSyncContext();
+ storage_partition_->GetBackgroundSyncContext();
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
base::BindOnce(
diff --git content/browser/devtools/protocol/service_worker_handler.cc content/browser/devtools/protocol/service_worker_handler.cc
index 5449b409717a..b138a8ca7fa3 100644
--- content/browser/devtools/protocol/service_worker_handler.cc
@ -147,10 +161,10 @@ index ec9ab86d0ca6..0fe5219f1e84 100644
base::WeakPtrFactory<ServiceWorkerHandler> weak_factory_;
diff --git content/browser/download/download_manager_impl.cc content/browser/download/download_manager_impl.cc
index 316ddd4982c9..cab536b7a0ec 100644
index c40582647347..6cb7dcd47392 100644
--- content/browser/download/download_manager_impl.cc
+++ content/browser/download/download_manager_impl.cc
@@ -87,9 +87,9 @@
@@ -86,9 +86,9 @@
namespace content {
namespace {
@ -163,7 +177,7 @@ index 316ddd4982c9..cab536b7a0ec 100644
DCHECK_CURRENTLY_ON(BrowserThread::UI);
SiteInstance* site_instance = nullptr;
@@ -99,8 +99,7 @@ StoragePartitionImpl* GetStoragePartition(BrowserContext* context,
@@ -98,8 +98,7 @@ StoragePartitionImpl* GetStoragePartition(BrowserContext* context,
if (render_frame_host_)
site_instance = render_frame_host_->GetSiteInstance();
}
@ -173,7 +187,7 @@ index 316ddd4982c9..cab536b7a0ec 100644
}
bool CanRequestURLFromRenderer(int render_process_id, GURL url) {
@@ -823,8 +822,8 @@ void DownloadManagerImpl::ResumeInterruptedDownload(
@@ -816,8 +815,8 @@ void DownloadManagerImpl::ResumeInterruptedDownload(
std::unique_ptr<download::DownloadUrlParameters> params,
uint32_t id,
const GURL& site_url) {
@ -184,7 +198,7 @@ index 316ddd4982c9..cab536b7a0ec 100644
params->set_url_request_context_getter(
storage_partition->GetURLRequestContext());
BeginDownloadInternal(std::move(params), nullptr, id, storage_partition);
@@ -1030,7 +1029,7 @@ void DownloadManagerImpl::DownloadUrl(
@@ -1019,7 +1018,7 @@ void DownloadManagerImpl::DownloadUrl(
download::RecordDownloadCountWithSource(
download::DownloadCountTypes::DOWNLOAD_TRIGGERED_COUNT,
params->download_source());
@ -193,7 +207,7 @@ index 316ddd4982c9..cab536b7a0ec 100644
GetStoragePartition(browser_context_, params->render_process_host_id(),
params->render_frame_host_routing_id());
BeginDownloadInternal(std::move(params), std::move(blob_data_handle),
@@ -1247,7 +1246,7 @@ void DownloadManagerImpl::InterceptNavigationOnChecksComplete(
@@ -1236,7 +1235,7 @@ void DownloadManagerImpl::InterceptNavigationOnChecksComplete(
tab_referrer_url = entry->GetReferrer().url;
}
}
@ -202,27 +216,17 @@ index 316ddd4982c9..cab536b7a0ec 100644
GetStoragePartition(browser_context_, render_process_id, render_frame_id);
BrowserThread::PostTask(
BrowserThread::IO, FROM_HERE,
@@ -1257,7 +1256,8 @@ void DownloadManagerImpl::InterceptNavigationOnChecksComplete(
tab_referrer_url, std::move(url_chain), suggested_filename,
std::move(response), std::move(cert_status),
std::move(url_loader_client_endpoints),
- storage_partition->url_loader_factory_getter(),
+ base::WrapRefCounted(
+ storage_partition->url_loader_factory_getter()),
base::MessageLoop::current()->task_runner()));
}
@@ -1299,7 +1299,7 @@ void DownloadManagerImpl::BeginDownloadInternal(
@@ -1291,7 +1290,7 @@ void DownloadManagerImpl::BeginDownloadInternal(
std::unique_ptr<download::DownloadUrlParameters> params,
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
uint32_t id,
- StoragePartitionImpl* storage_partition) {
+ StoragePartition* storage_partition) {
if (base::FeatureList::IsEnabled(network::features::kNetworkService)) {
std::unique_ptr<network::ResourceRequest> request =
download::CreateResourceRequest(params.get());
// Check if the renderer is permitted to request the requested URL.
if (params->render_process_host_id() >= 0 &&
!CanRequestURLFromRenderer(params->render_process_host_id(),
diff --git content/browser/download/download_manager_impl.h content/browser/download/download_manager_impl.h
index 13ae60ba1130..be2515338f7e 100644
index a13ab73e18e5..ef129440d3bf 100644
--- content/browser/download/download_manager_impl.h
+++ content/browser/download/download_manager_impl.h
@@ -41,7 +41,7 @@ class DownloadRequestHandleInterface;
@ -231,10 +235,10 @@ index 13ae60ba1130..be2515338f7e 100644
class ResourceContext;
-class StoragePartitionImpl;
+class StoragePartition;
class URLLoaderFactoryGetter;
class CONTENT_EXPORT DownloadManagerImpl
@@ -250,7 +250,7 @@ class CONTENT_EXPORT DownloadManagerImpl
: public DownloadManager,
@@ -251,7 +251,7 @@ class CONTENT_EXPORT DownloadManagerImpl
std::unique_ptr<download::DownloadUrlParameters> params,
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
uint32_t id,
@ -313,10 +317,10 @@ index 5d4aefd16449..b5f99bc43389 100644
partition->GetPaymentAppContext();
diff --git content/browser/renderer_host/render_process_host_impl.cc content/browser/renderer_host/render_process_host_impl.cc
index 3e6f43de2a5d..e5c1d2031173 100644
index fa71b597f04c..129ad22146c0 100644
--- content/browser/renderer_host/render_process_host_impl.cc
+++ content/browser/renderer_host/render_process_host_impl.cc
@@ -718,11 +718,10 @@ class DefaultSubframeProcessHostHolder : public base::SupportsUserData::Data,
@@ -736,11 +736,10 @@ class DefaultSubframeProcessHostHolder : public base::SupportsUserData::Data,
// Gets the correct render process to use for this SiteInstance.
RenderProcessHost* GetProcessHost(SiteInstance* site_instance,
bool is_for_guests_only) {
@ -332,7 +336,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
// Is this the default storage partition? If it isn't, then just give it its
// own non-shared process.
@@ -1335,7 +1334,7 @@ int RenderProcessHost::GetCurrentRenderProcessCountForTesting() {
@@ -1353,7 +1352,7 @@ int RenderProcessHost::GetCurrentRenderProcessCountForTesting() {
// static
RenderProcessHost* RenderProcessHostImpl::CreateRenderProcessHost(
BrowserContext* browser_context,
@ -341,7 +345,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
SiteInstance* site_instance,
bool is_for_guests_only) {
if (g_render_process_host_factory_) {
@@ -1344,8 +1343,8 @@ RenderProcessHost* RenderProcessHostImpl::CreateRenderProcessHost(
@@ -1362,8 +1361,8 @@ RenderProcessHost* RenderProcessHostImpl::CreateRenderProcessHost(
}
if (!storage_partition_impl) {
@ -352,7 +356,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
}
// If we've made a StoragePartition for guests (e.g., for the <webview> tag),
// stash the Site URL on it. This way, when we start a service worker inside
@@ -1370,7 +1369,7 @@ const unsigned int RenderProcessHostImpl::kMaxFrameDepthForPriority =
@@ -1388,7 +1387,7 @@ const unsigned int RenderProcessHostImpl::kMaxFrameDepthForPriority =
RenderProcessHostImpl::RenderProcessHostImpl(
BrowserContext* browser_context,
@ -361,7 +365,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
bool is_for_guests_only)
: fast_shutdown_started_(false),
deleting_soon_(false),
@@ -1403,7 +1402,8 @@ RenderProcessHostImpl::RenderProcessHostImpl(
@@ -1421,7 +1420,8 @@ RenderProcessHostImpl::RenderProcessHostImpl(
indexed_db_factory_(new IndexedDBDispatcherHost(
id_,
storage_partition_impl_->GetURLRequestContext(),
@ -371,7 +375,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
ChromeBlobStorageContext::GetFor(browser_context_))),
channel_connected_(false),
sent_render_process_ready_(false),
@@ -1440,7 +1440,8 @@ RenderProcessHostImpl::RenderProcessHostImpl(
@@ -1458,7 +1458,8 @@ RenderProcessHostImpl::RenderProcessHostImpl(
}
push_messaging_manager_.reset(new PushMessagingManager(
@ -381,7 +385,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
AddObserver(indexed_db_factory_.get());
#if defined(OS_MACOSX)
@@ -1768,6 +1769,20 @@ void RenderProcessHostImpl::ResetChannelProxy() {
@@ -1786,6 +1787,20 @@ void RenderProcessHostImpl::ResetChannelProxy() {
void RenderProcessHostImpl::CreateMessageFilters() {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
@ -402,7 +406,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
AddFilter(new ResourceSchedulerFilter(GetID()));
MediaInternals* media_internals = MediaInternals::GetInstance();
// Add BrowserPluginMessageFilter to ensure it gets the first stab at messages
@@ -1782,8 +1797,8 @@ void RenderProcessHostImpl::CreateMessageFilters() {
@@ -1800,8 +1815,8 @@ void RenderProcessHostImpl::CreateMessageFilters() {
new RenderMessageFilter(
GetID(), GetBrowserContext(), request_context.get(),
widget_helper_.get(), media_internals,
@ -413,7 +417,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
AddFilter(render_message_filter.get());
render_frame_message_filter_ = new RenderFrameMessageFilter(
@@ -1810,10 +1825,10 @@ void RenderProcessHostImpl::CreateMessageFilters() {
@@ -1828,10 +1843,10 @@ void RenderProcessHostImpl::CreateMessageFilters() {
ChromeBlobStorageContext::GetFor(browser_context);
resource_message_filter_ = new ResourceMessageFilter(
@ -427,7 +431,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
std::move(get_contexts_callback),
BrowserThread::GetTaskRunnerForThread(BrowserThread::IO));
@@ -1840,8 +1855,7 @@ void RenderProcessHostImpl::CreateMessageFilters() {
}
AddFilter(
new MidiHost(GetID(), BrowserMainLoop::GetInstance()->midi_service()));
- AddFilter(new DOMStorageMessageFilter(
@ -458,8 +462,8 @@ index 3e6f43de2a5d..e5c1d2031173 100644
+ GetID(), platform_notification_context,
resource_context, service_worker_context, browser_context);
AddFilter(notification_message_filter_.get());
@@ -1902,7 +1912,8 @@ void RenderProcessHostImpl::BindCacheStorage(
}
@@ -1894,7 +1904,8 @@ void RenderProcessHostImpl::BindCacheStorage(
cache_storage_dispatcher_host_ =
base::MakeRefCounted<CacheStorageDispatcherHost>();
cache_storage_dispatcher_host_->Init(
@ -469,7 +473,7 @@ index 3e6f43de2a5d..e5c1d2031173 100644
}
// Send the binding to IO thread, because Cache Storage handles Mojo IPC on IO
// thread entirely.
@@ -2040,7 +2051,8 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() {
@@ -2032,7 +2043,8 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() {
registry->AddInterface(base::BindRepeating(
&AppCacheDispatcherHost::Create,
@ -480,10 +484,10 @@ index 3e6f43de2a5d..e5c1d2031173 100644
AddUIThreadInterface(registry.get(), base::Bind(&FieldTrialRecorder::Create));
diff --git content/browser/renderer_host/render_process_host_impl.h content/browser/renderer_host/render_process_host_impl.h
index 3a37edd2ac2a..360011cbc76d 100644
index 145a2e9d821b..e53c18722d4a 100644
--- content/browser/renderer_host/render_process_host_impl.h
+++ content/browser/renderer_host/render_process_host_impl.h
@@ -89,7 +89,6 @@ class ResourceMessageFilter;
@@ -88,7 +88,6 @@ class ResourceMessageFilter;
class SiteInstance;
class SiteInstanceImpl;
class StoragePartition;
@ -491,7 +495,7 @@ index 3a37edd2ac2a..360011cbc76d 100644
#if BUILDFLAG(ENABLE_WEBRTC)
class MediaStreamTrackMetricsHost;
@@ -136,7 +135,7 @@ class CONTENT_EXPORT RenderProcessHostImpl
@@ -135,7 +134,7 @@ class CONTENT_EXPORT RenderProcessHostImpl
// null.
static RenderProcessHost* CreateRenderProcessHost(
BrowserContext* browser_context,
@ -500,7 +504,7 @@ index 3a37edd2ac2a..360011cbc76d 100644
SiteInstance* site_instance,
bool is_for_guests_only);
@@ -436,7 +435,7 @@ class CONTENT_EXPORT RenderProcessHostImpl
@@ -440,7 +439,7 @@ class CONTENT_EXPORT RenderProcessHostImpl
// Use CreateRenderProcessHost() instead of calling this constructor
// directly.
RenderProcessHostImpl(BrowserContext* browser_context,
@ -509,7 +513,7 @@ index 3a37edd2ac2a..360011cbc76d 100644
bool is_for_guests_only);
// Initializes a new IPC::ChannelProxy in |channel_|, which will be connected
@@ -710,10 +709,10 @@ class CONTENT_EXPORT RenderProcessHostImpl
@@ -709,10 +708,10 @@ class CONTENT_EXPORT RenderProcessHostImpl
// called.
int instance_id_ = 1;

View File

@ -102,20 +102,20 @@ index 4cc2bdc85fe8..2b05443698da 100644
};
diff --git ui/views/animation/ink_drop_host_view.h ui/views/animation/ink_drop_host_view.h
index 81d018254a5d..f5911778e3b6 100644
index 14929b2564b7..339b370199bd 100644
--- ui/views/animation/ink_drop_host_view.h
+++ ui/views/animation/ink_drop_host_view.h
@@ -73,6 +73,8 @@ class VIEWS_EXPORT InkDropHostView : public View, public InkDropHost {
@@ -84,6 +84,8 @@ class VIEWS_EXPORT InkDropHostView : public View, public InkDropHost {
// them.
void AnimateInkDrop(InkDropState state, const ui::LocatedEvent* event);
+ InkDropMode ink_drop_mode() const { return ink_drop_mode_; }
+
protected:
static constexpr int kInkDropSmallCornerRadius = 2;
static constexpr int kInkDropLargeCornerRadius = 4;
// Size used for the default SquareInkDropRipple.
static constexpr int kDefaultInkDropSize = 24;
diff --git ui/views/controls/button/label_button.cc ui/views/controls/button/label_button.cc
index d56f4cb2f73c..c89650dbd675 100644
index 60907bd19cd7..c1b4bba6177b 100644
--- ui/views/controls/button/label_button.cc
+++ ui/views/controls/button/label_button.cc
@@ -187,6 +187,7 @@ gfx::Size LabelButton::CalculatePreferredSize() const {
@ -295,10 +295,10 @@ index 1d35afeda78f..333f9c0f778d 100644
std::unique_ptr<SelectionController> selection_controller_;
diff --git ui/views/controls/menu/menu_controller.cc ui/views/controls/menu/menu_controller.cc
index 1e6f6cc17281..bcecef51482e 100644
index 46713d7170a6..685b0fb33286 100644
--- ui/views/controls/menu/menu_controller.cc
+++ ui/views/controls/menu/menu_controller.cc
@@ -2316,8 +2316,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem(
@@ -2321,8 +2321,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem(
void MenuController::OpenSubmenuChangeSelectionIfCan() {
MenuItemView* item = pending_state_.item;
@ -313,7 +313,7 @@ index 1e6f6cc17281..bcecef51482e 100644
MenuItemView* to_select = NULL;
if (item->GetSubmenu()->GetMenuItemCount() > 0)
to_select = FindInitialSelectableMenuItem(item, INCREMENT_SELECTION_DOWN);
@@ -2332,8 +2337,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() {
@@ -2337,8 +2342,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() {
void MenuController::CloseSubmenu() {
MenuItemView* item = state_.item;
DCHECK(item);
@ -512,7 +512,7 @@ index 0ac493c3c6a0..741769e90eb0 100644
void WillHideMenu(MenuItemView* menu) override;
void OnMenuClosed(MenuItemView* menu) override;
diff --git ui/views/controls/menu/menu_scroll_view_container.cc ui/views/controls/menu/menu_scroll_view_container.cc
index 2e2e6b2aa26e..0c2ce1af6021 100644
index e35e0509480f..7594bb47e5d0 100644
--- ui/views/controls/menu/menu_scroll_view_container.cc
+++ ui/views/controls/menu/menu_scroll_view_container.cc
@@ -183,6 +183,11 @@ MenuScrollViewContainer::MenuScrollViewContainer(SubmenuView* content_view)

View File

@ -18,7 +18,7 @@ index ca70db586f53..80cc47fdbb50 100644
return renderer_frame_number_;
}
diff --git content/browser/renderer_host/render_widget_host_view_base.h content/browser/renderer_host/render_widget_host_view_base.h
index 895e2dcaf262..8333bd24b192 100644
index 3dd76a134848..b13e619dd8ef 100644
--- content/browser/renderer_host/render_widget_host_view_base.h
+++ content/browser/renderer_host/render_widget_host_view_base.h
@@ -80,6 +80,7 @@ class BrowserAccessibilityManager;
@ -335,7 +335,7 @@ index 79d677baa9f7..9056f02c37f0 100644
base::WeakPtrFactory<DesktopWindowTreeHostX11> weak_factory_;
diff --git ui/views/widget/widget.cc ui/views/widget/widget.cc
index 7bc25d68ab4d..b6c69838fcc4 100644
index 239b66424dcc..1006f78e284c 100644
--- ui/views/widget/widget.cc
+++ ui/views/widget/widget.cc
@@ -133,6 +133,7 @@ Widget::InitParams::InitParams(Type type)
@ -369,7 +369,7 @@ index 7bc25d68ab4d..b6c69838fcc4 100644
}
// This must come after SetContentsView() or it might not be able to find
// the correct NativeTheme (on Linux). See http://crbug.com/384492
@@ -1110,10 +1116,16 @@ void Widget::OnNativeWidgetDestroyed() {
@@ -1098,10 +1104,16 @@ void Widget::OnNativeWidgetDestroyed() {
}
gfx::Size Widget::GetMinimumSize() const {
@ -387,7 +387,7 @@ index 7bc25d68ab4d..b6c69838fcc4 100644
}
diff --git ui/views/widget/widget.h ui/views/widget/widget.h
index e2df1f67a8b9..920f2ea6a8b7 100644
index bc3b94fa4f3b..e80f9674ccac 100644
--- ui/views/widget/widget.h
+++ ui/views/widget/widget.h
@@ -252,6 +252,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
@ -427,10 +427,10 @@ index c7296fed234d..244d0034a1c4 100644
if (native_widget_delegate->IsDialogBox()) {
*style |= DS_MODALFRAME;
diff --git ui/views/win/hwnd_message_handler.cc ui/views/win/hwnd_message_handler.cc
index 6a468941cf4a..55a159a2dbff 100644
index 010d3f43e501..43d54d4010f6 100644
--- ui/views/win/hwnd_message_handler.cc
+++ ui/views/win/hwnd_message_handler.cc
@@ -2794,10 +2794,13 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
@@ -2801,10 +2801,13 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
} else if (event.type() == ui::ET_MOUSEWHEEL) {
ui::MouseWheelEvent mouse_wheel_event(msg);
// Reroute the mouse wheel to the window under the pointer if applicable.

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 a45b0e73714b..9581ed604d19 100644
index fbd264add72e..d3109dd3c9c7 100644
--- content/browser/web_contents/web_contents_impl.cc
+++ content/browser/web_contents/web_contents_impl.cc
@@ -1783,21 +1783,30 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
@@ -1779,21 +1779,30 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
std::string unique_name;
frame_tree_.root()->SetFrameName(params.main_frame_name, unique_name);
@ -45,7 +45,7 @@ index a45b0e73714b..9581ed604d19 100644
CHECK(render_view_host_delegate_view_);
CHECK(view_.get());
@@ -2398,6 +2407,15 @@ void WebContentsImpl::CreateNewWindow(
@@ -2394,6 +2403,15 @@ void WebContentsImpl::CreateNewWindow(
create_params.renderer_initiated_creation =
main_frame_route_id != MSG_ROUTING_NONE;
@ -61,7 +61,7 @@ index a45b0e73714b..9581ed604d19 100644
WebContentsImpl* new_contents = nullptr;
if (!is_guest) {
create_params.context = view_->GetNativeView();
@@ -2427,7 +2445,7 @@ void WebContentsImpl::CreateNewWindow(
@@ -2423,7 +2441,7 @@ void WebContentsImpl::CreateNewWindow(
// TODO(brettw): It seems bogus that we have to call this function on the
// newly created object and give it one of its own member variables.
new_view->CreateViewForWidget(
@ -70,7 +70,7 @@ index a45b0e73714b..9581ed604d19 100644
}
// Save the created window associated with the route so we can show it
// later.
@@ -5749,7 +5767,7 @@ InterstitialPageImpl* WebContentsImpl::GetInterstitialForRenderManager() {
@@ -5732,7 +5750,7 @@ InterstitialPageImpl* WebContentsImpl::GetInterstitialForRenderManager() {
void WebContentsImpl::CreateRenderWidgetHostViewForRenderManager(
RenderViewHost* render_view_host) {
RenderWidgetHostViewBase* rwh_view =

View File

@ -1,8 +1,8 @@
diff --git third_party/blink/public/platform/platform.h third_party/blink/public/platform/platform.h
index d4948345246e..73b7e0b1effe 100644
index 1198bcacde83..0f2801225553 100644
--- third_party/blink/public/platform/platform.h
+++ third_party/blink/public/platform/platform.h
@@ -382,6 +382,7 @@ class BLINK_PLATFORM_EXPORT Platform {
@@ -381,6 +381,7 @@ class BLINK_PLATFORM_EXPORT Platform {
// satisfy this call. mainFrameOrigin is used by the browser process to
// filter plugins from the plugin list based on content settings.
virtual void GetPluginList(bool refresh,
@ -10,7 +10,7 @@ index d4948345246e..73b7e0b1effe 100644
const WebSecurityOrigin& main_frame_origin,
WebPluginListBuilder*) {}
@@ -754,6 +755,11 @@ class BLINK_PLATFORM_EXPORT Platform {
@@ -755,6 +756,11 @@ class BLINK_PLATFORM_EXPORT Platform {
// runs during Chromium's build step).
virtual bool IsTakingV8ContextSnapshot() { return false; }
@ -41,7 +41,7 @@ index c80fedc37a43..3b3cf2d73511 100644
.Top()
.GetSecurityContext()
diff --git third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc
index edf785effe8e..c895b23bc409 100644
index c9bbed3722d2..76d96682fead 100644
--- third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc
+++ third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc
@@ -323,6 +323,8 @@ WebDevToolsAgentImpl::Session::Session(
@ -75,7 +75,7 @@ index 04520b3a5427..a9a4f345386e 100644
}
diff --git third_party/blink/renderer/core/page/page.cc third_party/blink/renderer/core/page/page.cc
index a825578f8eee..b122d7fbf994 100644
index 9eae0f477b7f..51de5abb8a4c 100644
--- third_party/blink/renderer/core/page/page.cc
+++ third_party/blink/renderer/core/page/page.cc
@@ -153,7 +153,8 @@ Page::Page(PageClients& page_clients)
@ -88,7 +88,7 @@ index a825578f8eee..b122d7fbf994 100644
use_counter_(page_clients.chrome_client &&
page_clients.chrome_client->IsSVGImageChromeClient()
? UseCounter::kSVGImageContext
@@ -327,21 +328,40 @@ void Page::RefreshPlugins() {
@@ -326,21 +327,40 @@ void Page::RefreshPlugins() {
PluginData::RefreshBrowserSidePluginCache();
}
@ -138,7 +138,7 @@ index a825578f8eee..b122d7fbf994 100644
page->NotifyPluginsChanged();
}
}
@@ -714,7 +734,8 @@ void Page::Trace(blink::Visitor* visitor) {
@@ -713,7 +733,8 @@ void Page::Trace(blink::Visitor* visitor) {
visitor->Trace(visual_viewport_);
visitor->Trace(overscroll_controller_);
visitor->Trace(main_frame_);
@ -149,7 +149,7 @@ index a825578f8eee..b122d7fbf994 100644
visitor->Trace(use_counter_);
visitor->Trace(plugins_changed_observers_);
diff --git third_party/blink/renderer/core/page/page.h third_party/blink/renderer/core/page/page.h
index e614d62e2eeb..e180d16a7d47 100644
index 5206c91bfa89..c45a2cc0f16f 100644
--- third_party/blink/renderer/core/page/page.h
+++ third_party/blink/renderer/core/page/page.h
@@ -138,7 +138,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized<Page>,

View File

@ -1,5 +1,5 @@
diff --git third_party/blink/public/web/web_view.h third_party/blink/public/web/web_view.h
index e6ab3248281e..645fab919ace 100644
index d8228df7ddc2..2f05b96c8dc3 100644
--- third_party/blink/public/web/web_view.h
+++ third_party/blink/public/web/web_view.h
@@ -357,6 +357,7 @@ class WebView : protected WebWidget {
@ -20,10 +20,10 @@ index e6ab3248281e..645fab919ace 100644
// Call these methods before and after running a nested, modal event loop
diff --git third_party/blink/renderer/core/exported/web_view_impl.cc third_party/blink/renderer/core/exported/web_view_impl.cc
index 0d070fb8df7c..de3b889ce29a 100644
index 4ddb6f53a697..0eb812404164 100644
--- third_party/blink/renderer/core/exported/web_view_impl.cc
+++ third_party/blink/renderer/core/exported/web_view_impl.cc
@@ -251,8 +251,13 @@ void WebView::SetUseExternalPopupMenus(bool use_external_popup_menus) {
@@ -250,8 +250,13 @@ void WebView::SetUseExternalPopupMenus(bool use_external_popup_menus) {
g_should_use_external_popup_menus = use_external_popup_menus;
}
@ -39,7 +39,7 @@ index 0d070fb8df7c..de3b889ce29a 100644
}
namespace {
@@ -343,6 +348,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client,
@@ -342,6 +347,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client,
enable_fake_page_scale_animation_for_testing_(false),
fake_page_scale_animation_page_scale_factor_(0),
fake_page_scale_animation_use_anchor_(false),
@ -48,7 +48,7 @@ index 0d070fb8df7c..de3b889ce29a 100644
suppress_next_keypress_event_(false),
ime_accept_events_(true),
diff --git third_party/blink/renderer/core/exported/web_view_impl.h third_party/blink/renderer/core/exported/web_view_impl.h
index 68fadab79a6e..bc397a361f39 100644
index b607b9168a4e..2d42d89da893 100644
--- third_party/blink/renderer/core/exported/web_view_impl.h
+++ third_party/blink/renderer/core/exported/web_view_impl.h
@@ -102,7 +102,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
@ -61,7 +61,7 @@ index 68fadab79a6e..bc397a361f39 100644
// WebWidget methods:
void Close() override;
@@ -246,7 +247,7 @@ class CORE_EXPORT WebViewImpl final : public WebView,
@@ -247,7 +248,7 @@ class CORE_EXPORT WebViewImpl final : public WebView,
HitTestResult CoreHitTestResultAt(const WebPoint&);
void InvalidateRect(const IntRect&);
@ -70,7 +70,7 @@ index 68fadab79a6e..bc397a361f39 100644
void SetBaseBackgroundColorOverride(WebColor);
void ClearBaseBackgroundColorOverride();
void SetBackgroundColorOverride(WebColor);
@@ -619,6 +620,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
@@ -620,6 +621,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
float fake_page_scale_animation_page_scale_factor_;
bool fake_page_scale_animation_use_anchor_;
@ -80,12 +80,12 @@ index 68fadab79a6e..bc397a361f39 100644
TransformationMatrix 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 484f950bd065..a0c47c7ea782 100644
index 2d13e950b6be..136eb209570b 100644
--- third_party/blink/renderer/core/page/chrome_client_impl.cc
+++ third_party/blink/renderer/core/page/chrome_client_impl.cc
@@ -783,7 +783,7 @@ PopupMenu* ChromeClientImpl::OpenPopupMenu(LocalFrame& frame,
return nullptr;
@@ -780,7 +780,7 @@ bool ChromeClientImpl::HasOpenedPopup() const {
PopupMenu* ChromeClientImpl::OpenPopupMenu(LocalFrame& frame,
HTMLSelectElement& select) {
NotifyPopupOpeningObservers();
- if (WebViewImpl::UseExternalPopupMenus())
+ if (web_view_->UseExternalPopupMenus())

View File

@ -35,7 +35,7 @@ index af2362c38753..74a7fcf954a3 100644
extensions::ExtensionRegistry::Get(profile);
std::string extensions_list;
diff --git chrome/browser/memory_details.cc chrome/browser/memory_details.cc
index 34bc5ae039b8..77556e63ac6d 100644
index 4c0434b3c6ff..d92a70ce8ead 100644
--- chrome/browser/memory_details.cc
+++ chrome/browser/memory_details.cc
@@ -16,6 +16,7 @@