mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Update to Chromium version 78.0.3904.0 (#693954)
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
diff --git base/values.cc base/values.cc
|
||||
index 7d042cdcd459..09eb01af5745 100644
|
||||
index 02e92b7e082b..b227923a6220 100644
|
||||
--- base/values.cc
|
||||
+++ base/values.cc
|
||||
@@ -23,20 +23,6 @@
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git content/browser/renderer_host/render_widget_host_view_child_frame.cc content/browser/renderer_host/render_widget_host_view_child_frame.cc
|
||||
index fbb86a38a7ac..bd1c70e53371 100644
|
||||
index 2531e9d6b344..87cadc541057 100644
|
||||
--- content/browser/renderer_host/render_widget_host_view_child_frame.cc
|
||||
+++ content/browser/renderer_host/render_widget_host_view_child_frame.cc
|
||||
@@ -613,6 +613,7 @@ void RenderWidgetHostViewChildFrame::SubmitCompositorFrame(
|
||||
@@ -598,6 +598,7 @@ void RenderWidgetHostViewChildFrame::SubmitCompositorFrame(
|
||||
"RenderWidgetHostViewChildFrame::OnSwapCompositorFrame");
|
||||
support_->SubmitCompositorFrame(local_surface_id, std::move(frame),
|
||||
std::move(hit_test_region_list));
|
||||
@@ -10,7 +10,7 @@ index fbb86a38a7ac..bd1c70e53371 100644
|
||||
}
|
||||
|
||||
void RenderWidgetHostViewChildFrame::OnDidNotProduceFrame(
|
||||
@@ -621,6 +622,15 @@ void RenderWidgetHostViewChildFrame::OnDidNotProduceFrame(
|
||||
@@ -606,6 +607,15 @@ void RenderWidgetHostViewChildFrame::OnDidNotProduceFrame(
|
||||
support_->DidNotProduceFrame(ack);
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ index fbb86a38a7ac..bd1c70e53371 100644
|
||||
void RenderWidgetHostViewChildFrame::TransformPointToRootSurface(
|
||||
gfx::PointF* point) {
|
||||
// This function is called by RenderWidgetHostInputEventRouter only for
|
||||
@@ -818,6 +828,11 @@ void RenderWidgetHostViewChildFrame::ShowDefinitionForSelection() {
|
||||
@@ -802,6 +812,11 @@ void RenderWidgetHostViewChildFrame::ShowDefinitionForSelection() {
|
||||
void RenderWidgetHostViewChildFrame::SpeakSelection() {}
|
||||
#endif // defined(OS_MACOSX)
|
||||
|
||||
|
@@ -12,7 +12,7 @@ index de89d291e5cb..9ce7bf4cb250 100644
|
||||
// Force a new surface id to be allocated. Returns true if the
|
||||
// RenderWidgetHostImpl sent the resulting surface id to the renderer.
|
||||
diff --git content/browser/renderer_host/browser_compositor_view_mac.mm content/browser/renderer_host/browser_compositor_view_mac.mm
|
||||
index 4b3f3c7e97e7..0ce693402b99 100644
|
||||
index 8ddd790decc4..3ffd3db8da4b 100644
|
||||
--- content/browser/renderer_host/browser_compositor_view_mac.mm
|
||||
+++ content/browser/renderer_host/browser_compositor_view_mac.mm
|
||||
@@ -85,6 +85,12 @@ DelegatedFrameHost* BrowserCompositorMac::GetDelegatedFrameHost() {
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git content/browser/browser_plugin/browser_plugin_guest.cc content/browser/browser_plugin/browser_plugin_guest.cc
|
||||
index ddb17ac729df..255d2ec9729d 100644
|
||||
index 6eb21be63dec..87ccc46f4d43 100644
|
||||
--- content/browser/browser_plugin/browser_plugin_guest.cc
|
||||
+++ content/browser/browser_plugin/browser_plugin_guest.cc
|
||||
@@ -307,8 +307,11 @@ void BrowserPluginGuest::InitInternal(
|
||||
@@ -306,8 +306,11 @@ void BrowserPluginGuest::InitInternal(
|
||||
static_cast<WebContentsViewGuest*>(GetWebContents()->GetView());
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ index ddb17ac729df..255d2ec9729d 100644
|
||||
|
||||
// Once a BrowserPluginGuest has an embedder WebContents, it's considered to
|
||||
// be attached.
|
||||
@@ -821,10 +824,19 @@ void BrowserPluginGuest::OnWillAttachComplete(
|
||||
@@ -820,10 +823,19 @@ void BrowserPluginGuest::OnWillAttachComplete(
|
||||
static_cast<WebContentsViewGuest*>(GetWebContents()->GetView());
|
||||
if (!web_contents()->GetRenderViewHost()->GetWidget()->GetView()) {
|
||||
web_contents_view->CreateViewForWidget(
|
||||
@@ -37,10 +37,10 @@ index ddb17ac729df..255d2ec9729d 100644
|
||||
|
||||
attached_ = true;
|
||||
diff --git content/browser/frame_host/interstitial_page_impl.cc content/browser/frame_host/interstitial_page_impl.cc
|
||||
index 875ec8ce299b..a8e1119d4b03 100644
|
||||
index be1334c46132..60abcebf7422 100644
|
||||
--- content/browser/frame_host/interstitial_page_impl.cc
|
||||
+++ content/browser/frame_host/interstitial_page_impl.cc
|
||||
@@ -624,7 +624,7 @@ WebContentsView* InterstitialPageImpl::CreateWebContentsView() {
|
||||
@@ -622,7 +622,7 @@ WebContentsView* InterstitialPageImpl::CreateWebContentsView() {
|
||||
WebContentsView* wcv =
|
||||
static_cast<WebContentsImpl*>(web_contents())->GetView();
|
||||
RenderWidgetHostViewBase* view =
|
||||
@@ -79,10 +79,10 @@ index bfb918a2cba3..a193b5a0fed8 100644
|
||||
// Creates a new View that holds a non-top-level widget and receives messages
|
||||
// for it.
|
||||
diff --git content/browser/web_contents/web_contents_view_aura.cc content/browser/web_contents/web_contents_view_aura.cc
|
||||
index ab27502c3509..282985c05c45 100644
|
||||
index dda92e4006db..23f86f9f1564 100644
|
||||
--- content/browser/web_contents/web_contents_view_aura.cc
|
||||
+++ content/browser/web_contents/web_contents_view_aura.cc
|
||||
@@ -947,7 +947,8 @@ void WebContentsViewAura::CreateView(const gfx::Size& initial_size,
|
||||
@@ -948,7 +948,8 @@ void WebContentsViewAura::CreateView(const gfx::Size& initial_size,
|
||||
}
|
||||
|
||||
RenderWidgetHostViewBase* WebContentsViewAura::CreateViewForWidget(
|
||||
@@ -92,7 +92,7 @@ index ab27502c3509..282985c05c45 100644
|
||||
if (render_widget_host->GetView()) {
|
||||
// During testing, the view will already be set up in most cases to the
|
||||
// test view, so we don't want to clobber it with a real one. To verify that
|
||||
@@ -959,6 +960,7 @@ RenderWidgetHostViewBase* WebContentsViewAura::CreateViewForWidget(
|
||||
@@ -960,6 +961,7 @@ RenderWidgetHostViewBase* WebContentsViewAura::CreateViewForWidget(
|
||||
render_widget_host->GetView());
|
||||
}
|
||||
|
||||
@@ -101,7 +101,7 @@ index ab27502c3509..282985c05c45 100644
|
||||
g_create_render_widget_host_view
|
||||
? g_create_render_widget_host_view(render_widget_host,
|
||||
diff --git content/browser/web_contents/web_contents_view_aura.h content/browser/web_contents/web_contents_view_aura.h
|
||||
index 9be20d50ba4b..84c5106d15f2 100644
|
||||
index ed3c8d86cacc..70f869da762f 100644
|
||||
--- content/browser/web_contents/web_contents_view_aura.h
|
||||
+++ content/browser/web_contents/web_contents_view_aura.h
|
||||
@@ -122,7 +122,7 @@ class CONTENT_EXPORT WebContentsViewAura
|
||||
@@ -221,7 +221,7 @@ index 35da7e53b6a6..df938f455be2 100644
|
||||
RenderWidgetHost* render_widget_host) override;
|
||||
void SetPageTitle(const base::string16& title) override;
|
||||
diff --git content/browser/web_contents/web_contents_view_mac.mm content/browser/web_contents/web_contents_view_mac.mm
|
||||
index 1d1f44d6a943..275e928d6bd1 100644
|
||||
index b35b9b48b53c..bfa5f5409d5d 100644
|
||||
--- content/browser/web_contents/web_contents_view_mac.mm
|
||||
+++ content/browser/web_contents/web_contents_view_mac.mm
|
||||
@@ -327,7 +327,8 @@ void WebContentsViewMac::CreateView(
|
||||
@@ -266,7 +266,7 @@ index ea12af6b86b8..f1211f374328 100644
|
||||
// a BrowserPlugin even when we are using cross process frames for guests. It
|
||||
// should be removed after resolving https://crbug.com/642826).
|
||||
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 b7cb9fc9df13..a4a81ee1c863 100644
|
||||
index 1578ad4f86bd..a07ed1044d60 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
|
||||
@@ -212,6 +212,8 @@ void MimeHandlerViewGuest::CreateWebContents(
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git content/browser/scheduler/browser_task_executor.cc content/browser/scheduler/browser_task_executor.cc
|
||||
index 3025bd308a4a..f7fb156a75d8 100644
|
||||
index f2ddb987a4de..a309caf4c670 100644
|
||||
--- content/browser/scheduler/browser_task_executor.cc
|
||||
+++ content/browser/scheduler/browser_task_executor.cc
|
||||
@@ -135,10 +135,11 @@ void BrowserTaskExecutor::PostFeatureListSetup() {
|
||||
@@ -136,10 +136,11 @@ void BrowserTaskExecutor::PostFeatureListSetup() {
|
||||
|
||||
// static
|
||||
void BrowserTaskExecutor::Shutdown() {
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git build/config/compiler/BUILD.gn build/config/compiler/BUILD.gn
|
||||
index 66f3b325be58..b3bdbd5c39d9 100644
|
||||
index d1a9bfa30cb2..3c74d4acdda2 100644
|
||||
--- build/config/compiler/BUILD.gn
|
||||
+++ build/config/compiler/BUILD.gn
|
||||
@@ -160,7 +160,7 @@ declare_args() {
|
||||
@@ -152,7 +152,7 @@ declare_args() {
|
||||
!use_clang_coverage && !(is_android && use_order_profiling) &&
|
||||
(use_lld ||
|
||||
(use_gold &&
|
||||
@@ -11,7 +11,7 @@ index 66f3b325be58..b3bdbd5c39d9 100644
|
||||
!(current_cpu == "x86" || current_cpu == "x64"))))
|
||||
}
|
||||
|
||||
@@ -1734,8 +1734,6 @@ config("thin_archive") {
|
||||
@@ -1728,8 +1728,6 @@ config("thin_archive") {
|
||||
# archive names to 16 characters, which is not what we want).
|
||||
if ((is_posix && !is_nacl && !is_mac && !is_ios) || is_fuchsia) {
|
||||
arflags = [ "-T" ]
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git chrome/browser/BUILD.gn chrome/browser/BUILD.gn
|
||||
index 8ce5e842bbb2..95b0356cab27 100644
|
||||
index 0bc6da647d95..aa57c4d046d5 100644
|
||||
--- chrome/browser/BUILD.gn
|
||||
+++ chrome/browser/BUILD.gn
|
||||
@@ -9,6 +9,7 @@ import("//build/config/jumbo.gni")
|
||||
@@ -10,6 +10,7 @@ import("//build/config/jumbo.gni")
|
||||
import("//build/config/linux/gtk/gtk.gni")
|
||||
import("//build/config/ui.gni")
|
||||
import("//build/split_static_library.gni")
|
||||
@@ -10,7 +10,7 @@ index 8ce5e842bbb2..95b0356cab27 100644
|
||||
import("//chrome/common/features.gni")
|
||||
import("//components/feature_engagement/features.gni")
|
||||
import("//components/feed/features.gni")
|
||||
@@ -1889,6 +1890,7 @@ jumbo_split_static_library("browser") {
|
||||
@@ -1938,6 +1939,7 @@ jumbo_split_static_library("browser") {
|
||||
"//base/util/values:values_util",
|
||||
"//build:branding_buildflags",
|
||||
"//cc",
|
||||
@@ -18,7 +18,7 @@ index 8ce5e842bbb2..95b0356cab27 100644
|
||||
"//chrome:extra_resources",
|
||||
"//chrome:resources",
|
||||
"//chrome:strings",
|
||||
@@ -2192,6 +2194,10 @@ jumbo_split_static_library("browser") {
|
||||
@@ -2238,6 +2240,10 @@ jumbo_split_static_library("browser") {
|
||||
]
|
||||
}
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git chrome/browser/ui/BUILD.gn chrome/browser/ui/BUILD.gn
|
||||
index 50f7329cca40..c6cae9beda15 100644
|
||||
index 3b387d754736..2c537f9c15c1 100644
|
||||
--- chrome/browser/ui/BUILD.gn
|
||||
+++ chrome/browser/ui/BUILD.gn
|
||||
@@ -10,6 +10,7 @@ import("//build/config/jumbo.gni")
|
||||
@@ -10,7 +10,7 @@ index 50f7329cca40..c6cae9beda15 100644
|
||||
import("//chrome/common/features.gni")
|
||||
import("//chromeos/assistant/assistant.gni")
|
||||
import("//components/feature_engagement/features.gni")
|
||||
@@ -368,6 +369,10 @@ jumbo_split_static_library("ui") {
|
||||
@@ -370,6 +371,10 @@ jumbo_split_static_library("ui") {
|
||||
"//build/config/compiler:wexit_time_destructors",
|
||||
]
|
||||
|
||||
@@ -21,7 +21,7 @@ index 50f7329cca40..c6cae9beda15 100644
|
||||
# Since browser and browser_ui actually depend on each other,
|
||||
# we must omit the dependency from browser_ui to browser.
|
||||
# However, this means browser_ui and browser should more or less
|
||||
@@ -385,6 +390,7 @@ jumbo_split_static_library("ui") {
|
||||
@@ -388,6 +393,7 @@ jumbo_split_static_library("ui") {
|
||||
"//base:i18n",
|
||||
"//base/allocator:buildflags",
|
||||
"//cc/paint",
|
||||
@@ -30,7 +30,7 @@ index 50f7329cca40..c6cae9beda15 100644
|
||||
"//chrome:resources",
|
||||
"//chrome:strings",
|
||||
diff --git chrome/browser/ui/webui/net_export_ui.cc chrome/browser/ui/webui/net_export_ui.cc
|
||||
index c50cd8b8f779..31aa7a2a696b 100644
|
||||
index 081ef17bf0d9..46b1d1af2baa 100644
|
||||
--- chrome/browser/ui/webui/net_export_ui.cc
|
||||
+++ chrome/browser/ui/webui/net_export_ui.cc
|
||||
@@ -20,13 +20,12 @@
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git chrome/browser/chrome_content_browser_client.cc chrome/browser/chrome_content_browser_client.cc
|
||||
index 0b29bc11f07c..9c0ffba4dc20 100644
|
||||
index b1d5ac049933..cfb78bb97597 100644
|
||||
--- chrome/browser/chrome_content_browser_client.cc
|
||||
+++ chrome/browser/chrome_content_browser_client.cc
|
||||
@@ -1067,10 +1067,6 @@ void LaunchURL(
|
||||
@@ -1013,10 +1013,6 @@ void LaunchURL(const GURL& url,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,7 +13,7 @@ index 0b29bc11f07c..9c0ffba4dc20 100644
|
||||
void MaybeAppendSecureOriginsAllowlistSwitch(base::CommandLine* cmdline) {
|
||||
// |allowlist| combines pref/policy + cmdline switch in the browser process.
|
||||
// For renderer and utility (e.g. NetworkService) processes the switch is the
|
||||
@@ -1088,6 +1084,14 @@ void MaybeAppendSecureOriginsAllowlistSwitch(base::CommandLine* cmdline) {
|
||||
@@ -1059,6 +1055,14 @@ base::FilePath GetModulePath(base::StringPiece16 module_name) {
|
||||
|
||||
} // namespace
|
||||
|
||||
@@ -29,10 +29,10 @@ index 0b29bc11f07c..9c0ffba4dc20 100644
|
||||
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
|
||||
if (command_line->HasSwitch(switches::kUserAgent)) {
|
||||
diff --git chrome/browser/chrome_content_browser_client.h chrome/browser/chrome_content_browser_client.h
|
||||
index 069f597633a2..e81d7718cfca 100644
|
||||
index 6bb50192ce17..6cb6a28d3114 100644
|
||||
--- chrome/browser/chrome_content_browser_client.h
|
||||
+++ chrome/browser/chrome_content_browser_client.h
|
||||
@@ -84,7 +84,8 @@ enum class Channel;
|
||||
@@ -85,7 +85,8 @@ enum class Channel;
|
||||
class ChromeHidDelegate;
|
||||
class ChromeSerialDelegate;
|
||||
|
||||
|
@@ -1,10 +1,10 @@
|
||||
diff --git chrome/browser/profiles/profile_manager.cc chrome/browser/profiles/profile_manager.cc
|
||||
index bd2715738d89..a61a0765301f 100644
|
||||
index 5fb5b84258a8..e28db2e984f6 100644
|
||||
--- chrome/browser/profiles/profile_manager.cc
|
||||
+++ chrome/browser/profiles/profile_manager.cc
|
||||
@@ -375,7 +375,7 @@ ProfileManager::ProfileManager(const base::FilePath& user_data_dir)
|
||||
chrome::NOTIFICATION_BROWSER_CLOSE_CANCELLED,
|
||||
content::NotificationService::AllSources());
|
||||
@@ -359,7 +359,7 @@ ProfileManager::ProfileManager(const base::FilePath& user_data_dir)
|
||||
registrar_.Add(this, chrome::NOTIFICATION_BROWSER_CLOSE_CANCELLED,
|
||||
content::NotificationService::AllSources());
|
||||
|
||||
- if (ProfileShortcutManager::IsFeatureEnabled() && !user_data_dir_.empty())
|
||||
+ if (!user_data_dir_.empty() && ProfileShortcutManager::IsFeatureEnabled())
|
||||
@@ -12,10 +12,10 @@ index bd2715738d89..a61a0765301f 100644
|
||||
}
|
||||
|
||||
diff --git chrome/browser/profiles/profile_manager.h chrome/browser/profiles/profile_manager.h
|
||||
index 985c64458bdf..f46ddbb8c05d 100644
|
||||
index 87ecf1fc998b..924c24fa42a2 100644
|
||||
--- chrome/browser/profiles/profile_manager.h
|
||||
+++ chrome/browser/profiles/profile_manager.h
|
||||
@@ -94,7 +94,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
@@ -99,7 +99,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
// acceptable. Returns null if creation of the new profile fails.
|
||||
// TODO(bauerb): Migrate calls from other code to GetProfileByPath(), then
|
||||
// make this method private.
|
||||
@@ -24,7 +24,7 @@ index 985c64458bdf..f46ddbb8c05d 100644
|
||||
|
||||
// Returns total number of profiles available on this machine.
|
||||
size_t GetNumberOfProfiles();
|
||||
@@ -124,7 +124,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
@@ -129,7 +129,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
|
||||
// Returns true if the profile pointer is known to point to an existing
|
||||
// profile.
|
||||
@@ -33,7 +33,7 @@ index 985c64458bdf..f46ddbb8c05d 100644
|
||||
|
||||
// Returns the directory where the first created profile is stored,
|
||||
// relative to the user data directory currently in use.
|
||||
@@ -133,7 +133,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
@@ -138,7 +138,7 @@ class ProfileManager : public content::NotificationObserver,
|
||||
// Get the Profile last used (the Profile to which owns the most recently
|
||||
// focused window) with this Chrome build. If no signed profile has been
|
||||
// stored in Local State, hand back the Default profile.
|
||||
|
@@ -1,10 +1,10 @@
|
||||
diff --git chrome/browser/plugins/plugin_info_host_impl.cc chrome/browser/plugins/plugin_info_host_impl.cc
|
||||
index f2223e24ec7c..8374b7f0d56d 100644
|
||||
index 865ca9288de7..8f736f081b86 100644
|
||||
--- chrome/browser/plugins/plugin_info_host_impl.cc
|
||||
+++ chrome/browser/plugins/plugin_info_host_impl.cc
|
||||
@@ -18,6 +18,7 @@
|
||||
#include "base/task_runner_util.h"
|
||||
#include "base/threading/thread_task_runner_handle.h"
|
||||
#include "build/branding_buildflags.h"
|
||||
#include "build/build_config.h"
|
||||
+#include "cef/libcef/features/features.h"
|
||||
#include "chrome/browser/browser_process.h"
|
||||
@@ -32,38 +32,42 @@ index f2223e24ec7c..8374b7f0d56d 100644
|
||||
extensions::WebViewRendererState* renderer_state =
|
||||
extensions::WebViewRendererState::GetInstance();
|
||||
std::string partition_id;
|
||||
@@ -130,12 +139,16 @@ bool IsPluginLoadingAccessibleResourceInWebView(
|
||||
@@ -129,9 +138,6 @@ bool IsPluginLoadingAccessibleResourceInWebView(
|
||||
|
||||
PluginInfoHostImpl::Context::Context(int render_process_id, Profile* profile)
|
||||
: render_process_id_(render_process_id),
|
||||
resource_context_(profile->GetResourceContext()),
|
||||
-#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
- extension_registry_(extensions::ExtensionRegistry::Get(profile)),
|
||||
-#endif
|
||||
host_content_settings_map_(
|
||||
HostContentSettingsMapFactory::GetForProfile(profile)),
|
||||
plugin_prefs_(PluginPrefs::GetForProfile(profile)) {
|
||||
@@ -139,6 +145,13 @@ PluginInfoHostImpl::Context::Context(int render_process_id, Profile* profile)
|
||||
profile->GetPrefs());
|
||||
run_all_flash_in_allow_mode_.Init(prefs::kRunAllFlashInAllowMode,
|
||||
profile->GetPrefs());
|
||||
+
|
||||
+#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
+#if BUILDFLAG(ENABLE_CEF)
|
||||
+ if (extensions::ExtensionsEnabled())
|
||||
+#endif
|
||||
+ extension_registry_ = extensions::ExtensionRegistry::Get(profile);
|
||||
+#endif
|
||||
+
|
||||
allow_outdated_plugins_.Init(prefs::kPluginsAllowOutdated,
|
||||
profile->GetPrefs());
|
||||
allow_outdated_plugins_.MoveToSequence(
|
||||
@@ -234,6 +247,7 @@ void PluginInfoHostImpl::PluginsLoaded(
|
||||
}
|
||||
|
||||
PluginInfoHostImpl::Context::~Context() {}
|
||||
@@ -209,6 +222,7 @@ void PluginInfoHostImpl::PluginsLoaded(
|
||||
plugin_metadata->identifier(), &output->status);
|
||||
}
|
||||
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
if (output->status == chrome::mojom::PluginStatus::kNotFound) {
|
||||
// Check to see if the component updater can fetch an implementation.
|
||||
base::PostTaskAndReplyWithResult(
|
||||
@@ -245,7 +259,9 @@ void PluginInfoHostImpl::PluginsLoaded(
|
||||
base::BindOnce(&PluginInfoHostImpl::ComponentPluginLookupDone, this,
|
||||
params, std::move(output), std::move(callback),
|
||||
std::move(plugin_metadata)));
|
||||
std::unique_ptr<component_updater::ComponentInfo> cus_plugin_info =
|
||||
@@ -217,7 +231,9 @@ void PluginInfoHostImpl::PluginsLoaded(
|
||||
ComponentPluginLookupDone(params, std::move(output), std::move(callback),
|
||||
std::move(plugin_metadata),
|
||||
std::move(cus_plugin_info));
|
||||
- } else {
|
||||
+ } else
|
||||
+#endif // !BUILDFLAG(ENABLE_CEF)
|
||||
@@ -71,7 +75,7 @@ index f2223e24ec7c..8374b7f0d56d 100644
|
||||
GetPluginInfoFinish(params, std::move(output), std::move(callback),
|
||||
std::move(plugin_metadata));
|
||||
}
|
||||
@@ -258,6 +274,14 @@ void PluginInfoHostImpl::Context::DecidePluginStatus(
|
||||
@@ -230,6 +246,14 @@ void PluginInfoHostImpl::Context::DecidePluginStatus(
|
||||
PluginMetadata::SecurityStatus security_status,
|
||||
const std::string& plugin_identifier,
|
||||
chrome::mojom::PluginStatus* status) const {
|
||||
@@ -86,7 +90,7 @@ index f2223e24ec7c..8374b7f0d56d 100644
|
||||
if (security_status == PluginMetadata::SECURITY_STATUS_FULLY_TRUSTED) {
|
||||
*status = chrome::mojom::PluginStatus::kAllowed;
|
||||
return;
|
||||
@@ -366,16 +390,36 @@ bool PluginInfoHostImpl::Context::FindEnabledPlugin(
|
||||
@@ -338,16 +362,35 @@ bool PluginInfoHostImpl::Context::FindEnabledPlugin(
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -101,9 +105,8 @@ index f2223e24ec7c..8374b7f0d56d 100644
|
||||
+ size_t i = 0;
|
||||
+ for (; i < matching_plugins.size(); ++i) {
|
||||
+ if (filter->IsPluginAvailable(render_process_id_, render_frame_id,
|
||||
+ resource_context_, url, is_main_frame,
|
||||
+ main_frame_origin, &matching_plugins[i],
|
||||
+ status)) {
|
||||
+ url, is_main_frame, main_frame_origin,
|
||||
+ &matching_plugins[i], status)) {
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
@@ -112,11 +115,11 @@ index f2223e24ec7c..8374b7f0d56d 100644
|
||||
PluginService::GetInstance()->GetFilter();
|
||||
size_t i = 0;
|
||||
for (; i < matching_plugins.size(); ++i) {
|
||||
if (!filter || filter->IsPluginAvailable(
|
||||
render_process_id_, render_frame_id, resource_context_,
|
||||
- url, main_frame_origin, &matching_plugins[i])) {
|
||||
+ url, is_main_frame, main_frame_origin,
|
||||
+ &matching_plugins[i])) {
|
||||
if (!filter ||
|
||||
filter->IsPluginAvailable(render_process_id_, render_frame_id, url,
|
||||
- main_frame_origin, &matching_plugins[i])) {
|
||||
+ is_main_frame, main_frame_origin,
|
||||
+ &matching_plugins[i])) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -125,7 +128,7 @@ index f2223e24ec7c..8374b7f0d56d 100644
|
||||
// If we broke out of the loop, we have found an enabled plugin.
|
||||
bool enabled = i < matching_plugins.size();
|
||||
diff --git chrome/browser/plugins/plugin_utils.cc chrome/browser/plugins/plugin_utils.cc
|
||||
index 73d60aa7f77c..89bff0de7186 100644
|
||||
index 56f147d2fc56..90553ec27d23 100644
|
||||
--- chrome/browser/plugins/plugin_utils.cc
|
||||
+++ chrome/browser/plugins/plugin_utils.cc
|
||||
@@ -5,6 +5,7 @@
|
||||
@@ -148,40 +151,8 @@ index 73d60aa7f77c..89bff0de7186 100644
|
||||
#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
#include "chrome/common/pref_names.h"
|
||||
#include "components/prefs/pref_service.h"
|
||||
@@ -251,12 +257,29 @@ base::flat_map<std::string, std::string>
|
||||
PluginUtils::GetMimeTypeToExtensionIdMap(
|
||||
content::ResourceContext* resource_context) {
|
||||
#if BUILDFLAG(ENABLE_EXTENSIONS)
|
||||
+
|
||||
+#if BUILDFLAG(ENABLE_CEF)
|
||||
+ if (!extensions::ExtensionsEnabled())
|
||||
+ return {};
|
||||
+
|
||||
+ CefResourceContext* context =
|
||||
+ static_cast<CefResourceContext*>(resource_context);
|
||||
+ bool profile_is_off_the_record = context->IsOffTheRecord();
|
||||
+ scoped_refptr<extensions::InfoMap> extension_info_map(
|
||||
+ const_cast<extensions::InfoMap*>(context->GetExtensionInfoMap()));
|
||||
+ bool always_open_pdf_externally = !extensions::PdfExtensionEnabled();
|
||||
+#else
|
||||
ProfileIOData* io_data = ProfileIOData::FromResourceContext(resource_context);
|
||||
scoped_refptr<extensions::InfoMap> extension_info_map(
|
||||
io_data->GetExtensionInfoMap());
|
||||
+ bool profile_is_off_the_record = io_data->IsOffTheRecord();
|
||||
+ bool always_open_pdf_externally =
|
||||
+ io_data->always_open_pdf_externally()->GetValue();
|
||||
+#endif
|
||||
+
|
||||
return GetMimeTypeToExtensionIdMapInternal(
|
||||
- io_data->IsOffTheRecord(),
|
||||
- io_data->always_open_pdf_externally()->GetValue(),
|
||||
+ profile_is_off_the_record,
|
||||
+ always_open_pdf_externally,
|
||||
base::BindRepeating(
|
||||
[](const scoped_refptr<extensions::InfoMap>& info_map,
|
||||
const std::string& extension_id) {
|
||||
diff --git chrome/renderer/chrome_content_renderer_client.cc chrome/renderer/chrome_content_renderer_client.cc
|
||||
index ae7e07340ea4..f193040e8bca 100644
|
||||
index 03781c0b08e0..37dc3e93c7d9 100644
|
||||
--- chrome/renderer/chrome_content_renderer_client.cc
|
||||
+++ chrome/renderer/chrome_content_renderer_client.cc
|
||||
@@ -794,6 +794,7 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin(
|
||||
|
@@ -1,10 +1,10 @@
|
||||
diff --git chrome/browser/ui/prefs/pref_watcher.h chrome/browser/ui/prefs/pref_watcher.h
|
||||
index b5ccdc521a36..716117c141cc 100644
|
||||
index dd06c6d22b16..1f3a5aa7ac2b 100644
|
||||
--- chrome/browser/ui/prefs/pref_watcher.h
|
||||
+++ chrome/browser/ui/prefs/pref_watcher.h
|
||||
@@ -29,10 +29,10 @@ class PrefWatcher : public KeyedService {
|
||||
void RegisterRendererPreferenceWatcher(
|
||||
blink::mojom::RendererPreferenceWatcherPtr watcher);
|
||||
mojo::PendingRemote<blink::mojom::RendererPreferenceWatcher> watcher);
|
||||
|
||||
- private:
|
||||
// KeyedService overrides:
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git chrome/renderer/BUILD.gn chrome/renderer/BUILD.gn
|
||||
index 4f3ed79d0500..357a0b260e85 100644
|
||||
index a008c196d020..bf91ed98b864 100644
|
||||
--- chrome/renderer/BUILD.gn
|
||||
+++ chrome/renderer/BUILD.gn
|
||||
@@ -4,6 +4,7 @@
|
||||
@@ -10,7 +10,7 @@ index 4f3ed79d0500..357a0b260e85 100644
|
||||
import("//chrome/common/features.gni")
|
||||
import("//components/nacl/features.gni")
|
||||
import("//components/offline_pages/buildflags/features.gni")
|
||||
@@ -125,6 +126,7 @@ jumbo_static_library("renderer") {
|
||||
@@ -118,6 +119,7 @@ jumbo_static_library("renderer") {
|
||||
defines = []
|
||||
|
||||
deps = [
|
||||
@@ -18,7 +18,7 @@ index 4f3ed79d0500..357a0b260e85 100644
|
||||
"//chrome:resources",
|
||||
"//chrome:strings",
|
||||
"//chrome/common",
|
||||
@@ -190,6 +192,10 @@ jumbo_static_library("renderer") {
|
||||
@@ -185,6 +187,10 @@ jumbo_static_library("renderer") {
|
||||
|
||||
configs += [ "//build/config/compiler:wexit_time_destructors" ]
|
||||
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git chrome/common/chrome_content_client.cc chrome/common/chrome_content_client.cc
|
||||
index 1e9bc3b924db..eaf4ac0f22f8 100644
|
||||
index fb0059b3e652..452f58ab4a0a 100644
|
||||
--- chrome/common/chrome_content_client.cc
|
||||
+++ chrome/common/chrome_content_client.cc
|
||||
@@ -92,7 +92,8 @@
|
||||
@@ -93,7 +93,8 @@
|
||||
// Registers Widevine CDM if Widevine is enabled, the Widevine CDM is
|
||||
// bundled and not a component. When the Widevine CDM is a component, it is
|
||||
// registered in widevine_cdm_component_installer.cc.
|
||||
@@ -13,7 +13,7 @@ index 1e9bc3b924db..eaf4ac0f22f8 100644
|
||||
#include "third_party/widevine/cdm/widevine_cdm_common.h" // nogncheck
|
||||
// TODO(crbug.com/663554): Needed for WIDEVINE_CDM_VERSION_STRING. Support
|
||||
diff --git third_party/widevine/cdm/BUILD.gn third_party/widevine/cdm/BUILD.gn
|
||||
index 27b3e9150832..bf5b96c5f69f 100644
|
||||
index 18177ec2e536..dca927a726b9 100644
|
||||
--- third_party/widevine/cdm/BUILD.gn
|
||||
+++ third_party/widevine/cdm/BUILD.gn
|
||||
@@ -5,6 +5,7 @@
|
||||
@@ -24,3 +24,12 @@ index 27b3e9150832..bf5b96c5f69f 100644
|
||||
import("//media/cdm/library_cdm/cdm_paths.gni")
|
||||
import("//media/media_options.gni")
|
||||
import("//third_party/widevine/cdm/widevine.gni")
|
||||
@@ -106,8 +107,6 @@ if (widevine_cdm_manifest_and_license_files != []) {
|
||||
]
|
||||
}
|
||||
} else {
|
||||
- assert(!enable_widevine_cdm_component,
|
||||
- "Widevine as a component requires a manifest.")
|
||||
group("widevine_cdm_manifest_and_license") {
|
||||
# NOP
|
||||
}
|
||||
|
@@ -1,75 +1,73 @@
|
||||
diff --git chrome/browser/download/download_target_determiner.cc chrome/browser/download/download_target_determiner.cc
|
||||
index e0d2c5c42517..0849c5bf6b7e 100644
|
||||
index 2d5b195caecb..827fcc962640 100644
|
||||
--- chrome/browser/download/download_target_determiner.cc
|
||||
+++ chrome/browser/download/download_target_determiner.cc
|
||||
@@ -631,8 +631,8 @@ void IsHandledBySafePlugin(content::ResourceContext* resource_context,
|
||||
@@ -636,7 +636,7 @@ void IsHandledBySafePlugin(int render_process_id,
|
||||
content::PluginService* plugin_service =
|
||||
content::PluginService::GetInstance();
|
||||
bool plugin_found = plugin_service->GetPluginInfo(
|
||||
- -1, -1, resource_context, url, url::Origin(), mime_type, false, &is_stale,
|
||||
- &plugin_info, &actual_mime_type);
|
||||
+ -1, -1, resource_context, url, true, url::Origin(), mime_type, false,
|
||||
+ &is_stale, &plugin_info, &actual_mime_type);
|
||||
- render_process_id, routing_id, url, url::Origin(), mime_type, false,
|
||||
+ render_process_id, routing_id, url, true, url::Origin(), mime_type, false,
|
||||
&is_stale, &plugin_info, &actual_mime_type);
|
||||
if (is_stale && stale_plugin_action == RETRY_IF_STALE_PLUGIN_LIST) {
|
||||
// The GetPlugins call causes the plugin list to be refreshed. Once that's
|
||||
// done we can retry the GetPluginInfo call. We break out of this cycle
|
||||
diff --git chrome/browser/plugins/chrome_plugin_service_filter.cc chrome/browser/plugins/chrome_plugin_service_filter.cc
|
||||
index 55801ac0fee7..8e993e959ca2 100644
|
||||
index 8916d9329a6c..bd1174231578 100644
|
||||
--- chrome/browser/plugins/chrome_plugin_service_filter.cc
|
||||
+++ chrome/browser/plugins/chrome_plugin_service_filter.cc
|
||||
@@ -167,6 +167,7 @@ bool ChromePluginServiceFilter::IsPluginAvailable(
|
||||
@@ -163,6 +163,7 @@ bool ChromePluginServiceFilter::IsPluginAvailable(
|
||||
int render_process_id,
|
||||
int render_frame_id,
|
||||
const void* context,
|
||||
const GURL& plugin_content_url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
content::WebPluginInfo* plugin) {
|
||||
base::AutoLock auto_lock(lock_);
|
||||
diff --git chrome/browser/plugins/chrome_plugin_service_filter.h chrome/browser/plugins/chrome_plugin_service_filter.h
|
||||
index c707c8773a74..20bdf74abf01 100644
|
||||
index 937d3d5bc84f..ac327392dcf3 100644
|
||||
--- chrome/browser/plugins/chrome_plugin_service_filter.h
|
||||
+++ chrome/browser/plugins/chrome_plugin_service_filter.h
|
||||
@@ -65,6 +65,7 @@ class ChromePluginServiceFilter : public content::PluginServiceFilter,
|
||||
@@ -64,6 +64,7 @@ class ChromePluginServiceFilter : public content::PluginServiceFilter,
|
||||
bool IsPluginAvailable(int render_process_id,
|
||||
int render_frame_id,
|
||||
const void* context,
|
||||
const GURL& plugin_content_url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
content::WebPluginInfo* plugin) override;
|
||||
|
||||
diff --git chrome/browser/plugins/pdf_iframe_navigation_throttle.cc chrome/browser/plugins/pdf_iframe_navigation_throttle.cc
|
||||
index 2eb7f21919fd..4218d3352d70 100644
|
||||
index 2c66cd46d84b..f81854a7b25f 100644
|
||||
--- chrome/browser/plugins/pdf_iframe_navigation_throttle.cc
|
||||
+++ chrome/browser/plugins/pdf_iframe_navigation_throttle.cc
|
||||
@@ -71,8 +71,8 @@ bool IsPDFPluginEnabled(content::NavigationHandle* navigation_handle,
|
||||
@@ -68,7 +68,7 @@ bool IsPDFPluginEnabled(content::NavigationHandle* navigation_handle,
|
||||
|
||||
content::WebPluginInfo plugin_info;
|
||||
return content::PluginService::GetInstance()->GetPluginInfo(
|
||||
process_id, routing_id, resource_context, navigation_handle->GetURL(),
|
||||
- web_contents->GetMainFrame()->GetLastCommittedOrigin(), kPDFMimeType,
|
||||
- false /* allow_wildcard */, is_stale, &plugin_info,
|
||||
+ false, web_contents->GetMainFrame()->GetLastCommittedOrigin(),
|
||||
+ kPDFMimeType, false /* allow_wildcard */, is_stale, &plugin_info,
|
||||
- process_id, routing_id, navigation_handle->GetURL(),
|
||||
+ process_id, routing_id, navigation_handle->GetURL(), false,
|
||||
web_contents->GetMainFrame()->GetLastCommittedOrigin(), kPDFMimeType,
|
||||
false /* allow_wildcard */, is_stale, &plugin_info,
|
||||
nullptr /* actual_mime_type */);
|
||||
}
|
||||
#endif
|
||||
diff --git chrome/browser/ui/views/frame/browser_root_view.cc chrome/browser/ui/views/frame/browser_root_view.cc
|
||||
index 786365927e71..27d32872d8d0 100644
|
||||
index e7f241e8db68..fe0b6e546b86 100644
|
||||
--- chrome/browser/ui/views/frame/browser_root_view.cc
|
||||
+++ chrome/browser/ui/views/frame/browser_root_view.cc
|
||||
@@ -70,7 +70,7 @@ void OnFindURLMimeType(const GURL& url,
|
||||
content::PluginService::GetInstance()->GetPluginInfo(
|
||||
-1, // process ID
|
||||
MSG_ROUTING_NONE, // routing ID
|
||||
- profile->GetResourceContext(), url, url::Origin(), mime_type,
|
||||
+ profile->GetResourceContext(), url, true, url::Origin(), mime_type,
|
||||
false, nullptr, &plugin, nullptr));
|
||||
@@ -69,8 +69,8 @@ void OnFindURLMimeType(const GURL& url,
|
||||
std::move(callback).Run(
|
||||
url, mime_type.empty() || blink::IsSupportedMimeType(mime_type) ||
|
||||
content::PluginService::GetInstance()->GetPluginInfo(
|
||||
- process_id, routing_id, url, url::Origin(), mime_type, false,
|
||||
- nullptr, &plugin, nullptr));
|
||||
+ process_id, routing_id, url, true, url::Origin(), mime_type,
|
||||
+ false, nullptr, &plugin, nullptr));
|
||||
}
|
||||
|
||||
bool GetURLForDrop(const ui::DropTargetEvent& event, GURL* url) {
|
||||
diff --git content/browser/devtools/devtools_http_handler.cc content/browser/devtools/devtools_http_handler.cc
|
||||
index 83772ae8cca7..0eadd7c9a37a 100644
|
||||
index 569503d5f870..26e8b0c207c6 100644
|
||||
--- content/browser/devtools/devtools_http_handler.cc
|
||||
+++ content/browser/devtools/devtools_http_handler.cc
|
||||
@@ -572,7 +572,7 @@ void DevToolsHttpHandler::OnJsonRequest(
|
||||
@@ -570,7 +570,7 @@ void DevToolsHttpHandler::OnJsonRequest(
|
||||
version.SetString("Protocol-Version",
|
||||
DevToolsAgentHost::GetProtocolVersion());
|
||||
version.SetString("WebKit-Version", GetWebKitVersion());
|
||||
@@ -79,10 +77,10 @@ index 83772ae8cca7..0eadd7c9a37a 100644
|
||||
GetContentClient()->browser()->GetUserAgent());
|
||||
version.SetString("V8-Version", V8_VERSION_STRING);
|
||||
diff --git content/browser/frame_host/render_frame_message_filter.cc content/browser/frame_host/render_frame_message_filter.cc
|
||||
index 5815fdfd6259..307c222c0d40 100644
|
||||
index 1202e49da23f..a829f2f6b1ad 100644
|
||||
--- content/browser/frame_host/render_frame_message_filter.cc
|
||||
+++ content/browser/frame_host/render_frame_message_filter.cc
|
||||
@@ -493,6 +493,7 @@ void RenderFrameMessageFilter::OnAre3DAPIsBlocked(int render_frame_id,
|
||||
@@ -468,6 +468,7 @@ void RenderFrameMessageFilter::OnAre3DAPIsBlocked(int render_frame_id,
|
||||
void RenderFrameMessageFilter::OnGetPluginInfo(
|
||||
int render_frame_id,
|
||||
const GURL& url,
|
||||
@@ -90,22 +88,23 @@ index 5815fdfd6259..307c222c0d40 100644
|
||||
const url::Origin& main_frame_origin,
|
||||
const std::string& mime_type,
|
||||
bool* found,
|
||||
@@ -504,8 +505,8 @@ void RenderFrameMessageFilter::OnGetPluginInfo(
|
||||
@@ -475,8 +476,9 @@ void RenderFrameMessageFilter::OnGetPluginInfo(
|
||||
std::string* actual_mime_type) {
|
||||
bool allow_wildcard = true;
|
||||
*found = plugin_service_->GetPluginInfo(
|
||||
render_process_id_, render_frame_id, resource_context_, url,
|
||||
- main_frame_origin, mime_type, allow_wildcard, nullptr, info,
|
||||
- actual_mime_type);
|
||||
+ is_main_frame, main_frame_origin, mime_type, allow_wildcard, nullptr,
|
||||
+ info, actual_mime_type);
|
||||
- render_process_id_, render_frame_id, url, main_frame_origin, mime_type,
|
||||
- allow_wildcard, nullptr, info, actual_mime_type);
|
||||
+ render_process_id_, render_frame_id, url, is_main_frame,
|
||||
+ main_frame_origin, mime_type, allow_wildcard, nullptr, info,
|
||||
+ actual_mime_type);
|
||||
}
|
||||
|
||||
void RenderFrameMessageFilter::OnOpenChannelToPepperPlugin(
|
||||
diff --git content/browser/frame_host/render_frame_message_filter.h content/browser/frame_host/render_frame_message_filter.h
|
||||
index e7900ef22a0d..f05d2ee128bd 100644
|
||||
index d3510133b2dc..ebcfb56a6034 100644
|
||||
--- content/browser/frame_host/render_frame_message_filter.h
|
||||
+++ content/browser/frame_host/render_frame_message_filter.h
|
||||
@@ -113,6 +113,7 @@ class CONTENT_EXPORT RenderFrameMessageFilter : public BrowserMessageFilter {
|
||||
@@ -111,6 +111,7 @@ class CONTENT_EXPORT RenderFrameMessageFilter : public BrowserMessageFilter {
|
||||
#if BUILDFLAG(ENABLE_PLUGINS)
|
||||
void OnGetPluginInfo(int render_frame_id,
|
||||
const GURL& url,
|
||||
@@ -113,26 +112,11 @@ index e7900ef22a0d..f05d2ee128bd 100644
|
||||
const url::Origin& main_frame_origin,
|
||||
const std::string& mime_type,
|
||||
bool* found,
|
||||
diff --git content/browser/loader/mime_sniffing_resource_handler.cc content/browser/loader/mime_sniffing_resource_handler.cc
|
||||
index b0458c1168d9..98f7ae7b7899 100644
|
||||
--- content/browser/loader/mime_sniffing_resource_handler.cc
|
||||
+++ content/browser/loader/mime_sniffing_resource_handler.cc
|
||||
@@ -510,8 +510,8 @@ bool MimeSniffingResourceHandler::CheckForPluginHandler(
|
||||
WebPluginInfo plugin;
|
||||
bool has_plugin = plugin_service_->GetPluginInfo(
|
||||
info->GetChildID(), info->GetRenderFrameID(), info->GetContext(),
|
||||
- request()->url(), url::Origin(), response_->head.mime_type,
|
||||
- allow_wildcard, &stale, &plugin, nullptr);
|
||||
+ request()->url(), info->IsMainFrame(), url::Origin(),
|
||||
+ response_->head.mime_type, allow_wildcard, &stale, &plugin, nullptr);
|
||||
|
||||
if (stale) {
|
||||
// Refresh the plugins asynchronously.
|
||||
diff --git content/browser/loader/navigation_url_loader_impl.cc content/browser/loader/navigation_url_loader_impl.cc
|
||||
index 7dafa5c27290..14d97d465f2c 100644
|
||||
index c82860885d1b..db78f147b39a 100644
|
||||
--- content/browser/loader/navigation_url_loader_impl.cc
|
||||
+++ content/browser/loader/navigation_url_loader_impl.cc
|
||||
@@ -1061,6 +1061,13 @@ class NavigationURLLoaderImpl::URLLoaderRequestController
|
||||
@@ -661,6 +661,13 @@ class NavigationURLLoaderImpl::URLLoaderRequestController
|
||||
static_cast<ui::PageTransition>(resource_request_->transition_type),
|
||||
resource_request_->has_user_gesture, &loader_factory);
|
||||
|
||||
@@ -146,22 +130,25 @@ index 7dafa5c27290..14d97d465f2c 100644
|
||||
if (loader_factory) {
|
||||
factory =
|
||||
base::MakeRefCounted<network::WrapperSharedURLLoaderFactory>(
|
||||
@@ -1310,7 +1317,7 @@ class NavigationURLLoaderImpl::URLLoaderRequestController
|
||||
// path does as well for navigations.
|
||||
@@ -874,8 +881,9 @@ class NavigationURLLoaderImpl::URLLoaderRequestController
|
||||
frame_tree_node->current_frame_host()->GetProcess()->GetID();
|
||||
int routing_id = frame_tree_node->current_frame_host()->GetRoutingID();
|
||||
bool has_plugin = PluginService::GetInstance()->GetPluginInfo(
|
||||
-1 /* render_process_id */, -1 /* render_frame_id */, resource_context_,
|
||||
- resource_request_->url, url::Origin(), head.mime_type,
|
||||
+ resource_request_->url, true, url::Origin(), head.mime_type,
|
||||
false /* allow_wildcard */, &stale, &plugin, nullptr);
|
||||
- render_process_id, routing_id, resource_request_->url, url::Origin(),
|
||||
- head.mime_type, false /* allow_wildcard */, &stale, &plugin, nullptr);
|
||||
+ render_process_id, routing_id, resource_request_->url, true,
|
||||
+ url::Origin(), head.mime_type, false /* allow_wildcard */, &stale,
|
||||
+ &plugin, nullptr);
|
||||
|
||||
if (stale) {
|
||||
// Refresh the plugins asynchronously.
|
||||
diff --git content/browser/plugin_service_impl.cc content/browser/plugin_service_impl.cc
|
||||
index a599f989065f..115867edec92 100644
|
||||
index 06bd3e74a1cb..a6d3a0956c7e 100644
|
||||
--- content/browser/plugin_service_impl.cc
|
||||
+++ content/browser/plugin_service_impl.cc
|
||||
@@ -302,6 +302,7 @@ bool PluginServiceImpl::GetPluginInfo(int render_process_id,
|
||||
@@ -301,6 +301,7 @@ bool PluginServiceImpl::GetPluginInfoArray(
|
||||
bool PluginServiceImpl::GetPluginInfo(int render_process_id,
|
||||
int render_frame_id,
|
||||
ResourceContext* context,
|
||||
const GURL& url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
@@ -170,30 +157,30 @@ index a599f989065f..115867edec92 100644
|
||||
@@ -318,7 +319,8 @@ bool PluginServiceImpl::GetPluginInfo(int render_process_id,
|
||||
for (size_t i = 0; i < plugins.size(); ++i) {
|
||||
if (!filter_ ||
|
||||
filter_->IsPluginAvailable(render_process_id, render_frame_id, context,
|
||||
- url, main_frame_origin, &plugins[i])) {
|
||||
+ url, is_main_frame, main_frame_origin,
|
||||
filter_->IsPluginAvailable(render_process_id, render_frame_id, url,
|
||||
- main_frame_origin, &plugins[i])) {
|
||||
+ is_main_frame, main_frame_origin,
|
||||
+ &plugins[i])) {
|
||||
*info = plugins[i];
|
||||
if (actual_mime_type)
|
||||
*actual_mime_type = mime_types[i];
|
||||
diff --git content/browser/plugin_service_impl.h content/browser/plugin_service_impl.h
|
||||
index c4c0ed551697..b234e239bba4 100644
|
||||
index 6c39259a2c67..b3d18b1135d3 100644
|
||||
--- content/browser/plugin_service_impl.h
|
||||
+++ content/browser/plugin_service_impl.h
|
||||
@@ -57,6 +57,7 @@ class CONTENT_EXPORT PluginServiceImpl : public PluginService {
|
||||
@@ -54,6 +54,7 @@ class CONTENT_EXPORT PluginServiceImpl : public PluginService {
|
||||
bool GetPluginInfo(int render_process_id,
|
||||
int render_frame_id,
|
||||
ResourceContext* context,
|
||||
const GURL& url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
const std::string& mime_type,
|
||||
bool allow_wildcard,
|
||||
diff --git content/browser/renderer_host/plugin_registry_impl.cc content/browser/renderer_host/plugin_registry_impl.cc
|
||||
index 717db1507d66..d44142b67ff7 100644
|
||||
index a6d6188fb139..7ac57de6fd55 100644
|
||||
--- content/browser/renderer_host/plugin_registry_impl.cc
|
||||
+++ content/browser/renderer_host/plugin_registry_impl.cc
|
||||
@@ -27,6 +27,7 @@ void PluginRegistryImpl::Bind(blink::mojom::PluginRegistryRequest request) {
|
||||
@@ -29,6 +29,7 @@ void PluginRegistryImpl::Bind(
|
||||
}
|
||||
|
||||
void PluginRegistryImpl::GetPlugins(bool refresh,
|
||||
@@ -201,7 +188,7 @@ index 717db1507d66..d44142b67ff7 100644
|
||||
const url::Origin& main_frame_origin,
|
||||
GetPluginsCallback callback) {
|
||||
auto* plugin_service = PluginServiceImpl::GetInstance();
|
||||
@@ -48,10 +49,11 @@ void PluginRegistryImpl::GetPlugins(bool refresh,
|
||||
@@ -50,10 +51,11 @@ void PluginRegistryImpl::GetPlugins(bool refresh,
|
||||
|
||||
plugin_service->GetPlugins(base::BindOnce(
|
||||
&PluginRegistryImpl::GetPluginsComplete, weak_factory_.GetWeakPtr(),
|
||||
@@ -214,29 +201,19 @@ index 717db1507d66..d44142b67ff7 100644
|
||||
const url::Origin& main_frame_origin,
|
||||
GetPluginsCallback callback,
|
||||
const std::vector<WebPluginInfo>& all_plugins) {
|
||||
@@ -61,7 +63,7 @@ void PluginRegistryImpl::GetPluginsComplete(
|
||||
GetContentClient()->browser()->GetPluginMimeTypesWithExternalHandlers(
|
||||
resource_context_);
|
||||
|
||||
- const int child_process_id = -1;
|
||||
+ const int child_process_id = render_process_id_;
|
||||
const int routing_id = MSG_ROUTING_NONE;
|
||||
// In this loop, copy the WebPluginInfo (and do not use a reference) because
|
||||
// the filter might mutate it.
|
||||
@@ -70,7 +72,7 @@ void PluginRegistryImpl::GetPluginsComplete(
|
||||
if (!filter ||
|
||||
filter->IsPluginAvailable(child_process_id, routing_id,
|
||||
resource_context_, main_frame_origin.GetURL(),
|
||||
- main_frame_origin, &plugin)) {
|
||||
+ is_main_frame, main_frame_origin, &plugin)) {
|
||||
@@ -76,6 +78,7 @@ void PluginRegistryImpl::GetPluginsComplete(
|
||||
// TODO(crbug.com/621724): Pass an url::Origin instead of a GURL.
|
||||
if (!filter || filter->IsPluginAvailable(render_process_id_, routing_id,
|
||||
main_frame_origin.GetURL(),
|
||||
+ is_main_frame,
|
||||
main_frame_origin, &plugin)) {
|
||||
auto plugin_blink = blink::mojom::PluginInfo::New();
|
||||
plugin_blink->name = plugin.name;
|
||||
plugin_blink->description = plugin.desc;
|
||||
diff --git content/browser/renderer_host/plugin_registry_impl.h content/browser/renderer_host/plugin_registry_impl.h
|
||||
index 061dd21cbbd1..a418b8d08091 100644
|
||||
index 632ae86c6fd6..55b749ec1242 100644
|
||||
--- content/browser/renderer_host/plugin_registry_impl.h
|
||||
+++ content/browser/renderer_host/plugin_registry_impl.h
|
||||
@@ -24,17 +24,24 @@ class PluginRegistryImpl : public blink::mojom::PluginRegistry {
|
||||
@@ -24,11 +24,13 @@ class PluginRegistryImpl : public blink::mojom::PluginRegistry {
|
||||
|
||||
// blink::mojom::PluginRegistry
|
||||
void GetPlugins(bool refresh,
|
||||
@@ -244,10 +221,6 @@ index 061dd21cbbd1..a418b8d08091 100644
|
||||
const url::Origin& main_frame_origin,
|
||||
GetPluginsCallback callback) override;
|
||||
|
||||
+ void set_render_process_id(int render_process_id) {
|
||||
+ render_process_id_ = render_process_id;
|
||||
+ }
|
||||
+
|
||||
private:
|
||||
- void GetPluginsComplete(const url::Origin& main_frame_origin,
|
||||
+ void GetPluginsComplete(bool is_main_frame,
|
||||
@@ -255,18 +228,11 @@ index 061dd21cbbd1..a418b8d08091 100644
|
||||
GetPluginsCallback callback,
|
||||
const std::vector<WebPluginInfo>& all_plugins);
|
||||
|
||||
ResourceContext* const resource_context_;
|
||||
mojo::BindingSet<PluginRegistry> bindings_;
|
||||
base::TimeTicks last_plugin_refresh_time_;
|
||||
+ int render_process_id_ = -1;
|
||||
base::WeakPtrFactory<PluginRegistryImpl> weak_factory_{this};
|
||||
};
|
||||
|
||||
diff --git content/common/frame_messages.h content/common/frame_messages.h
|
||||
index 60077e7ec11a..1e703ba07b4d 100644
|
||||
index 318e199de304..2baed51cc931 100644
|
||||
--- content/common/frame_messages.h
|
||||
+++ content/common/frame_messages.h
|
||||
@@ -1228,9 +1228,10 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback,
|
||||
@@ -1146,9 +1146,10 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback,
|
||||
// type. If there is no matching plugin, |found| is false.
|
||||
// |actual_mime_type| is the actual mime type supported by the
|
||||
// found plugin.
|
||||
@@ -279,16 +245,16 @@ index 60077e7ec11a..1e703ba07b4d 100644
|
||||
std::string /* mime_type */,
|
||||
bool /* found */,
|
||||
diff --git content/public/browser/content_browser_client.h content/public/browser/content_browser_client.h
|
||||
index a14b357dca01..780861333a4b 100644
|
||||
index dcb77c781146..50d54464e790 100644
|
||||
--- content/public/browser/content_browser_client.h
|
||||
+++ content/public/browser/content_browser_client.h
|
||||
@@ -1492,6 +1492,15 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
@@ -1512,6 +1512,15 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
bool has_user_gesture,
|
||||
network::mojom::URLLoaderFactoryPtr* out_factory);
|
||||
|
||||
+ // Same as above, but exposing the whole ResourceRequest object.
|
||||
+ virtual bool HandleExternalProtocol(
|
||||
+ ResourceRequestInfo::WebContentsGetter web_contents_getter,
|
||||
+ WebContents::Getter web_contents_getter,
|
||||
+ int frame_tree_node_id,
|
||||
+ NavigationUIData* navigation_data,
|
||||
+ const network::ResourceRequest& request,
|
||||
@@ -298,7 +264,7 @@ index a14b357dca01..780861333a4b 100644
|
||||
// Creates an OverlayWindow to be used for Picture-in-Picture. This window
|
||||
// will house the content shown when in Picture-in-Picture mode. This will
|
||||
// return a new OverlayWindow.
|
||||
@@ -1562,6 +1571,10 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
@@ -1579,6 +1588,10 @@ class CONTENT_EXPORT ContentBrowserClient {
|
||||
// Used as part of the user agent string.
|
||||
virtual std::string GetProduct();
|
||||
|
||||
@@ -310,34 +276,34 @@ index a14b357dca01..780861333a4b 100644
|
||||
virtual std::string GetUserAgent();
|
||||
|
||||
diff --git content/public/browser/plugin_service.h content/public/browser/plugin_service.h
|
||||
index 7646bdad2061..887ac022f2a1 100644
|
||||
index dcfd3ff37186..4e822ee5f750 100644
|
||||
--- content/public/browser/plugin_service.h
|
||||
+++ content/public/browser/plugin_service.h
|
||||
@@ -75,6 +75,7 @@ class CONTENT_EXPORT PluginService {
|
||||
@@ -74,6 +74,7 @@ class CONTENT_EXPORT PluginService {
|
||||
virtual bool GetPluginInfo(int render_process_id,
|
||||
int render_frame_id,
|
||||
ResourceContext* context,
|
||||
const GURL& url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
const std::string& mime_type,
|
||||
bool allow_wildcard,
|
||||
diff --git content/public/browser/plugin_service_filter.h content/public/browser/plugin_service_filter.h
|
||||
index 3b610b1f554e..7c439e060779 100644
|
||||
index 98c59005599e..69752184745d 100644
|
||||
--- content/public/browser/plugin_service_filter.h
|
||||
+++ content/public/browser/plugin_service_filter.h
|
||||
@@ -33,6 +33,7 @@ class PluginServiceFilter {
|
||||
@@ -32,6 +32,7 @@ class PluginServiceFilter {
|
||||
virtual bool IsPluginAvailable(int render_process_id,
|
||||
int render_frame_id,
|
||||
const void* context,
|
||||
const GURL& url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
WebPluginInfo* plugin) = 0;
|
||||
|
||||
diff --git content/public/renderer/content_renderer_client.h content/public/renderer/content_renderer_client.h
|
||||
index bfc62d176668..b9f695eaad5a 100644
|
||||
index 7d53414dfbe7..fdbe566ee2bb 100644
|
||||
--- content/public/renderer/content_renderer_client.h
|
||||
+++ content/public/renderer/content_renderer_client.h
|
||||
@@ -74,6 +74,9 @@ class CONTENT_EXPORT ContentRendererClient {
|
||||
@@ -72,6 +72,9 @@ class CONTENT_EXPORT ContentRendererClient {
|
||||
// Notifies us that the RenderThread has been created.
|
||||
virtual void RenderThreadStarted() {}
|
||||
|
||||
@@ -347,7 +313,7 @@ index bfc62d176668..b9f695eaad5a 100644
|
||||
// Notifies that a new RenderFrame has been created.
|
||||
virtual void RenderFrameCreated(RenderFrame* render_frame) {}
|
||||
|
||||
@@ -326,6 +329,10 @@ class CONTENT_EXPORT ContentRendererClient {
|
||||
@@ -318,6 +321,10 @@ class CONTENT_EXPORT ContentRendererClient {
|
||||
// This method may invalidate the frame.
|
||||
virtual void RunScriptsAtDocumentIdle(RenderFrame* render_frame) {}
|
||||
|
||||
@@ -359,10 +325,10 @@ index bfc62d176668..b9f695eaad5a 100644
|
||||
// started.
|
||||
virtual void SetRuntimeFeaturesDefaultsBeforeBlinkInitialization() {}
|
||||
diff --git content/public/renderer/render_frame_observer.h content/public/renderer/render_frame_observer.h
|
||||
index 0e2e86e6a2af..b44e90f69263 100644
|
||||
index 1f4868132226..96a0fbfd8188 100644
|
||||
--- content/public/renderer/render_frame_observer.h
|
||||
+++ content/public/renderer/render_frame_observer.h
|
||||
@@ -214,6 +214,9 @@ class CONTENT_EXPORT RenderFrameObserver : public IPC::Listener,
|
||||
@@ -216,6 +216,9 @@ class CONTENT_EXPORT RenderFrameObserver : public IPC::Listener,
|
||||
virtual void DidReceiveTransferSizeUpdate(int resource_id,
|
||||
int received_data_length) {}
|
||||
|
||||
@@ -373,10 +339,10 @@ index 0e2e86e6a2af..b44e90f69263 100644
|
||||
virtual void FocusedElementChanged(const blink::WebElement& element) {}
|
||||
|
||||
diff --git content/renderer/render_frame_impl.cc content/renderer/render_frame_impl.cc
|
||||
index e2a9d4a370f3..2919772fef77 100644
|
||||
index f8f8209786ff..c181986c246a 100644
|
||||
--- content/renderer/render_frame_impl.cc
|
||||
+++ content/renderer/render_frame_impl.cc
|
||||
@@ -4095,7 +4095,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin(
|
||||
@@ -4166,7 +4166,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin(
|
||||
std::string mime_type;
|
||||
bool found = false;
|
||||
Send(new FrameHostMsg_GetPluginInfo(
|
||||
@@ -386,20 +352,20 @@ index e2a9d4a370f3..2919772fef77 100644
|
||||
params.mime_type.Utf8(), &found, &info, &mime_type));
|
||||
if (!found)
|
||||
return nullptr;
|
||||
@@ -4510,6 +4511,8 @@ void RenderFrameImpl::FrameDetached(DetachType type) {
|
||||
@@ -4586,6 +4587,8 @@ void RenderFrameImpl::FrameDetached(DetachType type) {
|
||||
|
||||
void RenderFrameImpl::FrameFocused() {
|
||||
Send(new FrameHostMsg_FrameFocused(routing_id_));
|
||||
GetFrameHost()->FrameFocused();
|
||||
+ for (auto& observer : observers_)
|
||||
+ observer.FrameFocused();
|
||||
}
|
||||
|
||||
void RenderFrameImpl::DidChangeName(const blink::WebString& name) {
|
||||
diff --git content/renderer/render_thread_impl.cc content/renderer/render_thread_impl.cc
|
||||
index f2d4f932341e..409eabcdabc3 100644
|
||||
index f133e1651a27..1785e961f089 100644
|
||||
--- content/renderer/render_thread_impl.cc
|
||||
+++ content/renderer/render_thread_impl.cc
|
||||
@@ -786,6 +786,8 @@ void RenderThreadImpl::Init() {
|
||||
@@ -790,6 +790,8 @@ void RenderThreadImpl::Init() {
|
||||
|
||||
StartServiceManagerConnection();
|
||||
|
||||
@@ -409,10 +375,10 @@ index f2d4f932341e..409eabcdabc3 100644
|
||||
&RenderThreadImpl::OnRendererInterfaceRequest, base::Unretained(this)));
|
||||
|
||||
diff --git content/renderer/renderer_blink_platform_impl.cc content/renderer/renderer_blink_platform_impl.cc
|
||||
index a89a61d35a4b..5d8369cc2eda 100644
|
||||
index 6a81c4a2a94e..2c52d6085df9 100644
|
||||
--- content/renderer/renderer_blink_platform_impl.cc
|
||||
+++ content/renderer/renderer_blink_platform_impl.cc
|
||||
@@ -949,6 +949,15 @@ RendererBlinkPlatformImpl::GetGpuFactories() {
|
||||
@@ -959,6 +959,15 @@ RendererBlinkPlatformImpl::GetGpuFactories() {
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
@@ -427,12 +393,12 @@ index a89a61d35a4b..5d8369cc2eda 100644
|
||||
+
|
||||
blink::mojom::CodeCacheHost& RendererBlinkPlatformImpl::GetCodeCacheHost() {
|
||||
if (!code_cache_host_) {
|
||||
code_cache_host_ = blink::mojom::ThreadSafeCodeCacheHostPtr::Create(
|
||||
code_cache_host_ = mojo::SharedRemote<blink::mojom::CodeCacheHost>(
|
||||
diff --git content/renderer/renderer_blink_platform_impl.h content/renderer/renderer_blink_platform_impl.h
|
||||
index f1bc21b53606..0706ff050349 100644
|
||||
index 0db3cf9498a1..a13458688a08 100644
|
||||
--- content/renderer/renderer_blink_platform_impl.h
|
||||
+++ content/renderer/renderer_blink_platform_impl.h
|
||||
@@ -211,6 +211,9 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
|
||||
@@ -205,6 +205,9 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl {
|
||||
|
||||
media::GpuVideoAcceleratorFactories* GetGpuFactories() override;
|
||||
|
||||
@@ -443,48 +409,48 @@ index f1bc21b53606..0706ff050349 100644
|
||||
// It is invalid to call this in an incomplete env where
|
||||
// RenderThreadImpl::current() returns nullptr (e.g. in some tests).
|
||||
diff --git content/shell/browser/shell_plugin_service_filter.cc content/shell/browser/shell_plugin_service_filter.cc
|
||||
index 3a48c59b7e3e..d10ef64adbba 100644
|
||||
index 427132c6920e..4809ddaf21e1 100644
|
||||
--- content/shell/browser/shell_plugin_service_filter.cc
|
||||
+++ content/shell/browser/shell_plugin_service_filter.cc
|
||||
@@ -18,6 +18,7 @@ bool ShellPluginServiceFilter::IsPluginAvailable(
|
||||
@@ -17,6 +17,7 @@ bool ShellPluginServiceFilter::IsPluginAvailable(
|
||||
int render_process_id,
|
||||
int render_frame_id,
|
||||
const void* context,
|
||||
const GURL& url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
WebPluginInfo* plugin) {
|
||||
return plugin->name == base::ASCIIToUTF16("Blink Test Plugin") ||
|
||||
diff --git content/shell/browser/shell_plugin_service_filter.h content/shell/browser/shell_plugin_service_filter.h
|
||||
index 7767a620a9fd..8a95377f5f3b 100644
|
||||
index 337b4b0653fe..107ab4c9d8a8 100644
|
||||
--- content/shell/browser/shell_plugin_service_filter.h
|
||||
+++ content/shell/browser/shell_plugin_service_filter.h
|
||||
@@ -21,6 +21,7 @@ class ShellPluginServiceFilter : public PluginServiceFilter {
|
||||
@@ -20,6 +20,7 @@ class ShellPluginServiceFilter : public PluginServiceFilter {
|
||||
bool IsPluginAvailable(int render_process_id,
|
||||
int render_frame_id,
|
||||
const void* context,
|
||||
const GURL& url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
WebPluginInfo* plugin) override;
|
||||
|
||||
diff --git content/test/fake_plugin_service.cc content/test/fake_plugin_service.cc
|
||||
index 6500af1d859f..0d078a4a4281 100644
|
||||
index eb280cd21c6d..b499b2536b2d 100644
|
||||
--- content/test/fake_plugin_service.cc
|
||||
+++ content/test/fake_plugin_service.cc
|
||||
@@ -29,6 +29,7 @@ bool FakePluginService::GetPluginInfo(int render_process_id,
|
||||
@@ -28,6 +28,7 @@ bool FakePluginService::GetPluginInfoArray(
|
||||
bool FakePluginService::GetPluginInfo(int render_process_id,
|
||||
int render_frame_id,
|
||||
ResourceContext* context,
|
||||
const GURL& url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
const std::string& mime_type,
|
||||
bool allow_wildcard,
|
||||
diff --git content/test/fake_plugin_service.h content/test/fake_plugin_service.h
|
||||
index 205dfc39dfa7..ec250828b0ba 100644
|
||||
index df49da7cbec0..edf526fff7f8 100644
|
||||
--- content/test/fake_plugin_service.h
|
||||
+++ content/test/fake_plugin_service.h
|
||||
@@ -30,6 +30,7 @@ class FakePluginService : public PluginService {
|
||||
@@ -29,6 +29,7 @@ class FakePluginService : public PluginService {
|
||||
bool GetPluginInfo(int render_process_id,
|
||||
int render_frame_id,
|
||||
ResourceContext* context,
|
||||
const GURL& url,
|
||||
+ bool is_main_frame,
|
||||
const url::Origin& main_frame_origin,
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git content/browser/renderer_host/pepper/pepper_flash_file_message_filter.cc content/browser/renderer_host/pepper/pepper_flash_file_message_filter.cc
|
||||
index 3619dfae8c83..7efdf571dec8 100644
|
||||
index 6c40589cc989..a34b0eb0eb15 100644
|
||||
--- content/browser/renderer_host/pepper/pepper_flash_file_message_filter.cc
|
||||
+++ content/browser/renderer_host/pepper/pepper_flash_file_message_filter.cc
|
||||
@@ -55,7 +55,7 @@ PepperFlashFileMessageFilter::PepperFlashFileMessageFilter(
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git chrome/chrome_elf/BUILD.gn chrome/chrome_elf/BUILD.gn
|
||||
index 9c59c4b5e7a6..e470635e88d2 100644
|
||||
index 99ef45605fb5..2e16fc44a242 100644
|
||||
--- chrome/chrome_elf/BUILD.gn
|
||||
+++ chrome/chrome_elf/BUILD.gn
|
||||
@@ -7,6 +7,7 @@
|
||||
@@ -10,7 +10,7 @@ index 9c59c4b5e7a6..e470635e88d2 100644
|
||||
import("//chrome/process_version_rc_template.gni")
|
||||
import("//testing/test.gni")
|
||||
|
||||
@@ -132,9 +133,6 @@ source_set("constants") {
|
||||
@@ -110,9 +111,6 @@ source_set("constants") {
|
||||
|
||||
static_library("crash") {
|
||||
sources = [
|
||||
@@ -20,7 +20,7 @@ index 9c59c4b5e7a6..e470635e88d2 100644
|
||||
"crash/crash_helper.cc",
|
||||
"crash/crash_helper.h",
|
||||
]
|
||||
@@ -142,6 +140,7 @@ static_library("crash") {
|
||||
@@ -120,6 +118,7 @@ static_library("crash") {
|
||||
":hook_util",
|
||||
"//base", # This needs to go. DEP of app, crash_keys, client.
|
||||
"//base:base_static", # pe_image
|
||||
@@ -28,7 +28,7 @@ index 9c59c4b5e7a6..e470635e88d2 100644
|
||||
"//chrome/install_static:install_static_util",
|
||||
"//components/crash/content/app",
|
||||
"//components/crash/core/common", # crash_keys
|
||||
@@ -149,6 +148,17 @@ static_library("crash") {
|
||||
@@ -127,6 +126,17 @@ static_library("crash") {
|
||||
"//content/public/common:result_codes",
|
||||
"//third_party/crashpad/crashpad/client", # DumpWithoutCrash
|
||||
]
|
||||
@@ -127,7 +127,7 @@ index bcf172e645a2..f879aa745adf 100644
|
||||
// on the given |command_line|.
|
||||
void SetCrashKeysFromCommandLine(const base::CommandLine& command_line);
|
||||
diff --git components/crash/content/app/breakpad_linux.cc components/crash/content/app/breakpad_linux.cc
|
||||
index bb5ee46d3f2b..639958e189ad 100644
|
||||
index 505156ada2d8..34ad815d20c6 100644
|
||||
--- components/crash/content/app/breakpad_linux.cc
|
||||
+++ components/crash/content/app/breakpad_linux.cc
|
||||
@@ -28,6 +28,7 @@
|
||||
@@ -138,7 +138,7 @@ index bb5ee46d3f2b..639958e189ad 100644
|
||||
#include "base/files/file_path.h"
|
||||
#include "base/lazy_instance.h"
|
||||
#include "base/linux_util.h"
|
||||
@@ -101,6 +102,7 @@ namespace {
|
||||
@@ -104,6 +105,7 @@ namespace {
|
||||
uint64_t g_crash_loop_before_time = 0;
|
||||
#else
|
||||
const char kUploadURL[] = "https://clients2.google.com/cr/report";
|
||||
@@ -146,7 +146,7 @@ index bb5ee46d3f2b..639958e189ad 100644
|
||||
#endif
|
||||
|
||||
bool g_is_crash_reporter_enabled = false;
|
||||
@@ -714,7 +716,7 @@ bool CrashDone(const MinidumpDescriptor& minidump,
|
||||
@@ -717,7 +719,7 @@ bool CrashDone(const MinidumpDescriptor& minidump,
|
||||
info.process_type_length = 7;
|
||||
info.distro = base::g_linux_distro;
|
||||
info.distro_length = my_strlen(base::g_linux_distro);
|
||||
@@ -155,7 +155,7 @@ index bb5ee46d3f2b..639958e189ad 100644
|
||||
info.process_start_time = g_process_start_time;
|
||||
info.oom_size = base::g_oom_size;
|
||||
info.pid = g_pid;
|
||||
@@ -1400,7 +1402,7 @@ void ExecUploadProcessOrTerminate(const BreakpadInfo& info,
|
||||
@@ -1404,7 +1406,7 @@ void ExecUploadProcessOrTerminate(const BreakpadInfo& info,
|
||||
header_content_encoding,
|
||||
header_content_type,
|
||||
post_file,
|
||||
@@ -164,7 +164,7 @@ index bb5ee46d3f2b..639958e189ad 100644
|
||||
"--timeout=10", // Set a timeout so we don't hang forever.
|
||||
"--tries=1", // Don't retry if the upload fails.
|
||||
"-O", // Output reply to the file descriptor path.
|
||||
@@ -1740,10 +1742,19 @@ void HandleCrashDump(const BreakpadInfo& info) {
|
||||
@@ -1744,10 +1746,19 @@ void HandleCrashDump(const BreakpadInfo& info) {
|
||||
GetCrashReporterClient()->GetProductNameAndVersion(&product_name, &version);
|
||||
|
||||
writer.AddBoundary();
|
||||
@@ -186,7 +186,7 @@ index bb5ee46d3f2b..639958e189ad 100644
|
||||
if (info.pid > 0) {
|
||||
char pid_value_buf[kUint64StringSize];
|
||||
uint64_t pid_value_len = my_uint64_len(info.pid);
|
||||
@@ -1860,10 +1871,20 @@ void HandleCrashDump(const BreakpadInfo& info) {
|
||||
@@ -1864,10 +1875,20 @@ void HandleCrashDump(const BreakpadInfo& info) {
|
||||
crash_reporter::internal::TransitionalCrashKeyStorage;
|
||||
CrashKeyStorage::Iterator crash_key_iterator(*info.crash_keys);
|
||||
const CrashKeyStorage::Entry* entry;
|
||||
@@ -208,7 +208,7 @@ index bb5ee46d3f2b..639958e189ad 100644
|
||||
writer.AddBoundary();
|
||||
writer.Flush();
|
||||
}
|
||||
@@ -2075,6 +2096,17 @@ void SetChannelCrashKey(const std::string& channel) {
|
||||
@@ -2079,6 +2100,17 @@ void SetChannelCrashKey(const std::string& channel) {
|
||||
channel_key.Set(channel);
|
||||
}
|
||||
|
||||
@@ -227,7 +227,7 @@ index bb5ee46d3f2b..639958e189ad 100644
|
||||
void InitNonBrowserCrashReporterForAndroid(const std::string& process_type) {
|
||||
SanitizationInfo sanitization_info;
|
||||
diff --git components/crash/content/app/breakpad_linux.h components/crash/content/app/breakpad_linux.h
|
||||
index fb7f0a8af261..0d25d227fb8a 100644
|
||||
index 6e95af6ca7f5..061fb189d60f 100644
|
||||
--- components/crash/content/app/breakpad_linux.h
|
||||
+++ components/crash/content/app/breakpad_linux.h
|
||||
@@ -20,6 +20,9 @@ extern void InitCrashReporter(const std::string& process_type);
|
||||
@@ -402,10 +402,10 @@ index 5eba3742684b..9bc66b0dbfb9 100644
|
||||
->set_system_crash_reporter_forwarding(crashpad::TriState::kDisabled);
|
||||
}
|
||||
diff --git components/crash/content/app/crashpad_mac.mm components/crash/content/app/crashpad_mac.mm
|
||||
index a76d264648d2..ff9a19e259fb 100644
|
||||
index c2de9fe867c5..29cda67a1f72 100644
|
||||
--- components/crash/content/app/crashpad_mac.mm
|
||||
+++ components/crash/content/app/crashpad_mac.mm
|
||||
@@ -16,11 +16,14 @@
|
||||
@@ -16,12 +16,15 @@
|
||||
#include "base/logging.h"
|
||||
#include "base/mac/bundle_locations.h"
|
||||
#include "base/mac/foundation_util.h"
|
||||
@@ -414,13 +414,14 @@ index a76d264648d2..ff9a19e259fb 100644
|
||||
#include "base/strings/string_piece.h"
|
||||
#include "base/strings/stringprintf.h"
|
||||
#include "base/strings/sys_string_conversions.h"
|
||||
#include "build/branding_buildflags.h"
|
||||
#include "components/crash/content/app/crash_reporter_client.h"
|
||||
+#include "components/crash/content/app/crash_switches.h"
|
||||
+#include "content/public/common/content_paths.h"
|
||||
#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"
|
||||
@@ -36,12 +39,25 @@ namespace {
|
||||
@@ -37,12 +40,25 @@ namespace {
|
||||
std::map<std::string, std::string> GetProcessSimpleAnnotations() {
|
||||
static std::map<std::string, std::string> annotations = []() -> auto {
|
||||
std::map<std::string, std::string> process_annotations;
|
||||
@@ -448,9 +449,9 @@ index a76d264648d2..ff9a19e259fb 100644
|
||||
+ process_annotations["product"] = product_name;
|
||||
+ }
|
||||
|
||||
#if defined(GOOGLE_CHROME_BUILD)
|
||||
#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
|
||||
// Empty means stable.
|
||||
@@ -57,12 +73,16 @@ std::map<std::string, std::string> GetProcessSimpleAnnotations() {
|
||||
@@ -58,12 +74,16 @@ std::map<std::string, std::string> GetProcessSimpleAnnotations() {
|
||||
process_annotations["channel"] = "";
|
||||
}
|
||||
|
||||
@@ -472,7 +473,7 @@ index a76d264648d2..ff9a19e259fb 100644
|
||||
} // @autoreleasepool
|
||||
return process_annotations;
|
||||
}();
|
||||
@@ -122,10 +142,10 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
@@ -123,10 +143,10 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
|
||||
if (initial_client) {
|
||||
@autoreleasepool {
|
||||
@@ -487,7 +488,7 @@ index a76d264648d2..ff9a19e259fb 100644
|
||||
|
||||
// Is there a way to recover if this fails?
|
||||
CrashReporterClient* crash_reporter_client = GetCrashReporterClient();
|
||||
@@ -137,7 +157,7 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
@@ -138,7 +158,7 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
// crash server won't have symbols for any other build types.
|
||||
std::string url = "https://clients2.google.com/cr/report";
|
||||
#else
|
||||
@@ -496,7 +497,7 @@ index a76d264648d2..ff9a19e259fb 100644
|
||||
#endif
|
||||
|
||||
std::vector<std::string> arguments;
|
||||
@@ -160,6 +180,12 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
@@ -161,6 +181,12 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
"--reset-own-crash-exception-port-to-system-default");
|
||||
}
|
||||
|
||||
@@ -510,10 +511,10 @@ index a76d264648d2..ff9a19e259fb 100644
|
||||
handler_path, database_path, metrics_path, url,
|
||||
GetProcessSimpleAnnotations(), arguments, true, false);
|
||||
diff --git components/crash/content/app/crashpad_win.cc components/crash/content/app/crashpad_win.cc
|
||||
index 8f55759a6f4a..5d60fc3f84eb 100644
|
||||
index d13ae5cf7e40..f87f84d3121c 100644
|
||||
--- components/crash/content/app/crashpad_win.cc
|
||||
+++ components/crash/content/app/crashpad_win.cc
|
||||
@@ -35,8 +35,8 @@ void GetPlatformCrashpadAnnotations(
|
||||
@@ -36,8 +36,8 @@ void GetPlatformCrashpadAnnotations(
|
||||
base::string16 product_name, version, special_build, channel_name;
|
||||
crash_reporter_client->GetProductNameAndVersion(
|
||||
exe_file, &product_name, &version, &special_build, &channel_name);
|
||||
@@ -521,10 +522,10 @@ index 8f55759a6f4a..5d60fc3f84eb 100644
|
||||
- (*annotations)["ver"] = base::UTF16ToUTF8(version);
|
||||
+ (*annotations)["product"] = base::UTF16ToUTF8(product_name);
|
||||
+ (*annotations)["version"] = base::UTF16ToUTF8(version);
|
||||
#if defined(GOOGLE_CHROME_BUILD)
|
||||
#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
|
||||
// Empty means stable.
|
||||
const bool allow_empty_channel = true;
|
||||
@@ -48,9 +48,9 @@ void GetPlatformCrashpadAnnotations(
|
||||
@@ -49,9 +49,9 @@ void GetPlatformCrashpadAnnotations(
|
||||
if (!special_build.empty())
|
||||
(*annotations)["special"] = base::UTF16ToUTF8(special_build);
|
||||
#if defined(ARCH_CPU_X86)
|
||||
@@ -536,7 +537,7 @@ index 8f55759a6f4a..5d60fc3f84eb 100644
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -65,7 +65,9 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
@@ -66,7 +66,9 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
base::FilePath metrics_path; // Only valid in the browser process.
|
||||
|
||||
const char kPipeNameVar[] = "CHROME_CRASHPAD_PIPE_NAME";
|
||||
@@ -546,9 +547,9 @@ index 8f55759a6f4a..5d60fc3f84eb 100644
|
||||
std::unique_ptr<base::Environment> env(base::Environment::Create());
|
||||
if (initial_client) {
|
||||
CrashReporterClient* crash_reporter_client = GetCrashReporterClient();
|
||||
@@ -85,13 +87,13 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
@@ -86,13 +88,13 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
|
||||
#if defined(GOOGLE_CHROME_BUILD)
|
||||
#if BUILDFLAG(GOOGLE_CHROME_BRANDING)
|
||||
std::string url = "https://clients2.google.com/cr/report";
|
||||
-#else
|
||||
- std::string url;
|
||||
@@ -563,7 +564,7 @@ index 8f55759a6f4a..5d60fc3f84eb 100644
|
||||
|
||||
base::FilePath exe_file(exe_path);
|
||||
if (exe_file.empty()) {
|
||||
@@ -109,13 +111,14 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
@@ -110,13 +112,14 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
crashpad::TriState::kEnabled, kIndirectMemoryLimit);
|
||||
}
|
||||
|
||||
@@ -583,7 +584,7 @@ index 8f55759a6f4a..5d60fc3f84eb 100644
|
||||
if (!user_data_dir.empty()) {
|
||||
start_arguments.push_back(std::string("--user-data-dir=") +
|
||||
user_data_dir);
|
||||
@@ -126,9 +129,12 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
@@ -127,9 +130,12 @@ base::FilePath PlatformCrashpadInitialization(
|
||||
start_arguments.push_back("/prefetch:7");
|
||||
} else {
|
||||
base::FilePath exe_dir = exe_file.DirName();
|
||||
|
@@ -146,7 +146,7 @@ index a2b0c74636f4..01370fdc20d9 100644
|
||||
struct Data;
|
||||
|
||||
diff --git third_party/crashpad/crashpad/handler/BUILD.gn third_party/crashpad/crashpad/handler/BUILD.gn
|
||||
index b841b0ccd3a2..94ff9177d842 100644
|
||||
index 550f686a4562..b6cc04846d42 100644
|
||||
--- third_party/crashpad/crashpad/handler/BUILD.gn
|
||||
+++ third_party/crashpad/crashpad/handler/BUILD.gn
|
||||
@@ -12,6 +12,7 @@
|
||||
@@ -157,7 +157,7 @@ index b841b0ccd3a2..94ff9177d842 100644
|
||||
import("../build/crashpad_buildconfig.gni")
|
||||
|
||||
static_library("handler") {
|
||||
@@ -65,6 +66,17 @@ static_library("handler") {
|
||||
@@ -74,6 +75,17 @@ static_library("handler") {
|
||||
]
|
||||
}
|
||||
|
||||
@@ -175,7 +175,7 @@ index b841b0ccd3a2..94ff9177d842 100644
|
||||
public_configs = [ "..:crashpad_config" ]
|
||||
|
||||
public_deps = [
|
||||
@@ -77,6 +89,7 @@ static_library("handler") {
|
||||
@@ -86,6 +98,7 @@ static_library("handler") {
|
||||
"../minidump",
|
||||
"../snapshot",
|
||||
"../tools:tool_support",
|
||||
@@ -248,7 +248,7 @@ index 2ec1147d2620..8ff9a72e0bd7 100644
|
||||
//! \brief Calls ProcessPendingReports() in response to ReportPending() having
|
||||
//! been called on any thread, as well as periodically on a timer.
|
||||
diff --git third_party/crashpad/crashpad/handler/handler_main.cc third_party/crashpad/crashpad/handler/handler_main.cc
|
||||
index 05a2e7b44e41..6e72c17a57e6 100644
|
||||
index 7b69e8481ffa..2cee1da0dc4b 100644
|
||||
--- third_party/crashpad/crashpad/handler/handler_main.cc
|
||||
+++ third_party/crashpad/crashpad/handler/handler_main.cc
|
||||
@@ -36,8 +36,10 @@
|
||||
@@ -262,7 +262,7 @@ index 05a2e7b44e41..6e72c17a57e6 100644
|
||||
#include "client/crash_report_database.h"
|
||||
#include "client/crashpad_client.h"
|
||||
#include "client/crashpad_info.h"
|
||||
@@ -96,6 +98,10 @@
|
||||
@@ -100,6 +102,10 @@
|
||||
#include "handler/linux/exception_handler_server.h"
|
||||
#endif // OS_MACOSX
|
||||
|
||||
@@ -273,28 +273,28 @@ index 05a2e7b44e41..6e72c17a57e6 100644
|
||||
namespace crashpad {
|
||||
|
||||
namespace {
|
||||
@@ -188,6 +194,9 @@ struct Options {
|
||||
@@ -195,6 +201,9 @@ struct Options {
|
||||
bool periodic_tasks;
|
||||
bool rate_limit;
|
||||
bool upload_gzip;
|
||||
+ int max_uploads;
|
||||
+ int max_database_size;
|
||||
+ int max_database_age;
|
||||
};
|
||||
|
||||
// Splits |key_value| on '=' and inserts the resulting key and value into |map|.
|
||||
@@ -553,6 +562,9 @@ int HandlerMain(int argc,
|
||||
#if defined(OS_CHROMEOS)
|
||||
bool use_cros_crash_reporter;
|
||||
#endif // OS_CHROMEOS
|
||||
@@ -569,6 +578,9 @@ int HandlerMain(int argc,
|
||||
kOptionTraceParentWithException,
|
||||
#endif
|
||||
kOptionURL,
|
||||
+ kOptionMaxUploads,
|
||||
+ kOptionMaxDatabaseSize,
|
||||
+ kOptionMaxDatabaseAge,
|
||||
|
||||
// Standard options.
|
||||
kOptionHelp = -2,
|
||||
@@ -620,6 +632,9 @@ int HandlerMain(int argc,
|
||||
{"url", required_argument, nullptr, kOptionURL},
|
||||
#if defined(OS_CHROMEOS)
|
||||
kOptionUseCrosCrashReporter,
|
||||
#endif // OS_CHROMEOS
|
||||
@@ -645,6 +657,9 @@ int HandlerMain(int argc,
|
||||
#endif // OS_CHROMEOS
|
||||
{"help", no_argument, nullptr, kOptionHelp},
|
||||
{"version", no_argument, nullptr, kOptionVersion},
|
||||
+ {"max-uploads", required_argument, nullptr, kOptionMaxUploads},
|
||||
@@ -303,7 +303,7 @@ index 05a2e7b44e41..6e72c17a57e6 100644
|
||||
{nullptr, 0, nullptr, 0},
|
||||
};
|
||||
|
||||
@@ -759,6 +774,27 @@ int HandlerMain(int argc,
|
||||
@@ -784,6 +799,27 @@ int HandlerMain(int argc,
|
||||
options.url = optarg;
|
||||
break;
|
||||
}
|
||||
@@ -328,10 +328,10 @@ index 05a2e7b44e41..6e72c17a57e6 100644
|
||||
+ }
|
||||
+ break;
|
||||
+ }
|
||||
case kOptionHelp: {
|
||||
Usage(me);
|
||||
MetricsRecordExit(Metrics::LifetimeMilestone::kExitedEarly);
|
||||
@@ -879,8 +915,14 @@ int HandlerMain(int argc,
|
||||
#if defined(OS_CHROMEOS)
|
||||
case kOptionUseCrosCrashReporter: {
|
||||
options.use_cros_crash_reporter = true;
|
||||
@@ -910,8 +946,14 @@ int HandlerMain(int argc,
|
||||
upload_thread_options.upload_gzip = options.upload_gzip;
|
||||
upload_thread_options.watch_pending_reports = options.periodic_tasks;
|
||||
|
||||
@@ -346,7 +346,7 @@ index 05a2e7b44e41..6e72c17a57e6 100644
|
||||
upload_thread.Get()->Start();
|
||||
}
|
||||
|
||||
@@ -908,7 +950,8 @@ int HandlerMain(int argc,
|
||||
@@ -961,7 +1003,8 @@ int HandlerMain(int argc,
|
||||
ScopedStoppable prune_thread;
|
||||
if (options.periodic_tasks) {
|
||||
prune_thread.Reset(new PruneCrashReportThread(
|
||||
|
@@ -132,7 +132,7 @@ index c0f80fd848d6..75b0e53ae68e 100644
|
||||
// A weak pointer to the current or pending RenderViewHost. We don't access
|
||||
// this through the host_contents because we want to deal with the pending
|
||||
diff --git extensions/browser/extensions_browser_client.h extensions/browser/extensions_browser_client.h
|
||||
index 2f4890b54897..84164c1170a3 100644
|
||||
index ed47ee5227ac..6b9e93784eaf 100644
|
||||
--- extensions/browser/extensions_browser_client.h
|
||||
+++ extensions/browser/extensions_browser_client.h
|
||||
@@ -54,6 +54,7 @@ class ComponentExtensionResourceManager;
|
||||
@@ -141,9 +141,9 @@ index 2f4890b54897..84164c1170a3 100644
|
||||
class ExtensionError;
|
||||
+class ExtensionHost;
|
||||
class ExtensionHostDelegate;
|
||||
class ExtensionApiFrameIdMap;
|
||||
class ExtensionApiFrameIdMapHelper;
|
||||
@@ -195,6 +196,14 @@ class ExtensionsBrowserClient {
|
||||
class ExtensionSet;
|
||||
class ExtensionSystem;
|
||||
@@ -193,6 +194,14 @@ class ExtensionsBrowserClient {
|
||||
virtual std::unique_ptr<ExtensionHostDelegate>
|
||||
CreateExtensionHostDelegate() = 0;
|
||||
|
||||
@@ -159,10 +159,10 @@ index 2f4890b54897..84164c1170a3 100644
|
||||
// once each time the extensions system is loaded per browser_context. The
|
||||
// implementation may wish to use the BrowserContext to record the current
|
||||
diff --git extensions/browser/process_manager.cc extensions/browser/process_manager.cc
|
||||
index e0f053ce45bd..3bf13bc0ad03 100644
|
||||
index 55dcd62be9fc..c19fa68da048 100644
|
||||
--- extensions/browser/process_manager.cc
|
||||
+++ extensions/browser/process_manager.cc
|
||||
@@ -382,9 +382,16 @@ bool ProcessManager::CreateBackgroundHost(const Extension* extension,
|
||||
@@ -380,9 +380,16 @@ bool ProcessManager::CreateBackgroundHost(const Extension* extension,
|
||||
return true; // TODO(kalman): return false here? It might break things...
|
||||
|
||||
DVLOG(1) << "CreateBackgroundHost " << extension->id();
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git .gn .gn
|
||||
index 70856f65e720..649c347a899b 100644
|
||||
index b66e15317bb2..79f09da67517 100644
|
||||
--- .gn
|
||||
+++ .gn
|
||||
@@ -670,6 +670,8 @@ exec_script_whitelist =
|
||||
@@ -667,6 +667,8 @@ exec_script_whitelist =
|
||||
|
||||
"//chrome/android/webapk/shell_apk/prepare_upload_dir/BUILD.gn",
|
||||
|
||||
@@ -12,10 +12,10 @@ index 70856f65e720..649c347a899b 100644
|
||||
# https://crbug.com/474506.
|
||||
"//clank/java/BUILD.gn",
|
||||
diff --git BUILD.gn BUILD.gn
|
||||
index 19fd588dfed1..30d3a9774eb3 100644
|
||||
index 5e2f6b9b0f41..8ce1c0d77f76 100644
|
||||
--- BUILD.gn
|
||||
+++ BUILD.gn
|
||||
@@ -204,6 +204,7 @@ group("gn_all") {
|
||||
@@ -209,6 +209,7 @@ group("gn_all") {
|
||||
|
||||
if (!is_ios && !is_fuchsia) {
|
||||
deps += [
|
||||
@@ -100,7 +100,7 @@ index ef8aeda56458..5b7f057311b9 100644
|
||||
|
||||
|
||||
diff --git build/vs_toolchain.py build/vs_toolchain.py
|
||||
index 97f503bff408..fe1f0344dd77 100755
|
||||
index 3f2506128643..bf3a34778458 100755
|
||||
--- build/vs_toolchain.py
|
||||
+++ build/vs_toolchain.py
|
||||
@@ -81,11 +81,18 @@ def SetEnvironmentAndGetRuntimeDllDirs():
|
||||
@@ -123,10 +123,10 @@ index 97f503bff408..fe1f0344dd77 100755
|
||||
# directory in order to run binaries locally, but they are needed in order
|
||||
# to create isolates or the mini_installer. Copying them to the output
|
||||
diff --git chrome/chrome_paks.gni chrome/chrome_paks.gni
|
||||
index 93af4dcd03bb..e1a8543a5f14 100644
|
||||
index 5b58ed59878e..2e45266d21db 100644
|
||||
--- chrome/chrome_paks.gni
|
||||
+++ chrome/chrome_paks.gni
|
||||
@@ -271,7 +271,7 @@ template("chrome_paks") {
|
||||
@@ -277,7 +277,7 @@ template("chrome_paks") {
|
||||
}
|
||||
|
||||
input_locales = locales
|
||||
@@ -136,10 +136,10 @@ index 93af4dcd03bb..e1a8543a5f14 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 7a779fc3ce1a..2ba4d85fa276 100644
|
||||
index cc2bfe0642d1..688ae4d8be2c 100644
|
||||
--- chrome/installer/mini_installer/BUILD.gn
|
||||
+++ chrome/installer/mini_installer/BUILD.gn
|
||||
@@ -133,7 +133,7 @@ template("generate_mini_installer") {
|
||||
@@ -138,7 +138,7 @@ template("generate_mini_installer") {
|
||||
inputs = [
|
||||
"$chrome_dll_file",
|
||||
"$root_out_dir/chrome.exe",
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git tools/gritsettings/resource_ids tools/gritsettings/resource_ids
|
||||
index 7ac3cf37b481..0ad6d1b8c31d 100644
|
||||
index a4c39b1f6b14..5706254c1ec4 100644
|
||||
--- tools/gritsettings/resource_ids
|
||||
+++ tools/gritsettings/resource_ids
|
||||
@@ -466,4 +466,11 @@
|
||||
@@ -472,4 +472,11 @@
|
||||
# Please read the header and find the right section above instead.
|
||||
|
||||
# Resource ids starting at 31000 are reserved for projects built on Chromium.
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git ui/base/ime/win/input_method_win_base.cc ui/base/ime/win/input_method_win_base.cc
|
||||
index 9d014932e5cd..8fcf988f5897 100644
|
||||
index d88e691ee118..e89dade3ff04 100644
|
||||
--- ui/base/ime/win/input_method_win_base.cc
|
||||
+++ ui/base/ime/win/input_method_win_base.cc
|
||||
@@ -264,8 +264,9 @@ bool InputMethodWinBase::IsWindowFocused(const TextInputClient* client) const {
|
||||
@@ -263,8 +263,9 @@ bool InputMethodWinBase::IsWindowFocused(const TextInputClient* client) const {
|
||||
// receiving keyboard input as long as it is an active window. This works well
|
||||
// even when the |attached_window_handle| becomes active but has not received
|
||||
// WM_FOCUS yet.
|
||||
|
@@ -39,10 +39,10 @@ index 07f06ac694f5..831fd9f82dbe 100644
|
||||
|
||||
void ChromeBrowserMainExtraPartsViewsLinux::ToolkitInitialized() {
|
||||
diff --git chrome/test/BUILD.gn chrome/test/BUILD.gn
|
||||
index f60af132bcdd..626c0081b78a 100644
|
||||
index 9e12dd26146d..4748af4b1cc8 100644
|
||||
--- chrome/test/BUILD.gn
|
||||
+++ chrome/test/BUILD.gn
|
||||
@@ -4457,7 +4457,7 @@ test("unit_tests") {
|
||||
@@ -4545,7 +4545,7 @@ test("unit_tests") {
|
||||
if (use_gio) {
|
||||
configs += [ "//build/linux:gio_config" ]
|
||||
}
|
||||
@@ -51,7 +51,7 @@ index f60af132bcdd..626c0081b78a 100644
|
||||
deps += [ "//chrome/browser/ui/libgtkui" ]
|
||||
}
|
||||
|
||||
@@ -5471,7 +5471,7 @@ if (!is_android) {
|
||||
@@ -5599,7 +5599,7 @@ if (!is_android) {
|
||||
# suites, it seems like one or another starts timing out too.
|
||||
"../browser/ui/views/keyboard_access_browsertest.cc",
|
||||
]
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git base/files/file_path_watcher_linux.cc base/files/file_path_watcher_linux.cc
|
||||
index 4b727c37c4f3..ba97a9e38ae7 100644
|
||||
index 51cecad2eb04..004054491187 100644
|
||||
--- base/files/file_path_watcher_linux.cc
|
||||
+++ base/files/file_path_watcher_linux.cc
|
||||
@@ -5,6 +5,7 @@
|
||||
|
@@ -1,31 +1,31 @@
|
||||
diff --git base/message_loop/message_loop.cc base/message_loop/message_loop.cc
|
||||
index 90cb3e3fc7dd..903f258f2e1c 100644
|
||||
index a8a66308a1c5..65ff368c5a72 100644
|
||||
--- base/message_loop/message_loop.cc
|
||||
+++ base/message_loop/message_loop.cc
|
||||
@@ -100,6 +100,9 @@ bool MessageLoop::IsIdleForTesting() {
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
@@ -174,6 +174,9 @@ MessageLoopForUI::MessageLoopForUI(MessagePumpType type) : MessageLoop(type) {
|
||||
#endif
|
||||
}
|
||||
|
||||
+MessageLoopForUI::MessageLoopForUI(std::unique_ptr<MessagePump> pump)
|
||||
+ : MessageLoop(TYPE_UI, std::move(pump)) {}
|
||||
+ : MessageLoop(MessagePumpType::UI, std::move(pump)) {}
|
||||
+
|
||||
// static
|
||||
std::unique_ptr<MessageLoop> MessageLoop::CreateUnbound(Type type) {
|
||||
return WrapUnique(new MessageLoop(type, nullptr));
|
||||
#if defined(OS_IOS)
|
||||
void MessageLoopForUI::Attach() {
|
||||
sequence_manager_->AttachToMessagePump();
|
||||
diff --git base/message_loop/message_loop.h base/message_loop/message_loop.h
|
||||
index a1d6acc4e78d..f9518bc96ce4 100644
|
||||
index cc760ffab174..131ccbb6520d 100644
|
||||
--- base/message_loop/message_loop.h
|
||||
+++ base/message_loop/message_loop.h
|
||||
@@ -229,6 +229,7 @@ class BASE_EXPORT MessageLoop {
|
||||
@@ -217,6 +217,7 @@ class BASE_EXPORT MessageLoop {
|
||||
class BASE_EXPORT MessageLoopForUI : public MessageLoop {
|
||||
public:
|
||||
explicit MessageLoopForUI(Type type = TYPE_UI);
|
||||
explicit MessageLoopForUI(MessagePumpType type = MessagePumpType::UI);
|
||||
+ explicit MessageLoopForUI(std::unique_ptr<MessagePump> pump);
|
||||
|
||||
#if defined(OS_IOS)
|
||||
// On iOS, the main message loop cannot be Run(). Instead call Attach(),
|
||||
diff --git base/message_loop/message_loop_current.cc base/message_loop/message_loop_current.cc
|
||||
index 54e2d2b41dbd..cd299c90618b 100644
|
||||
index 7688ba3d7b0d..9acaaa0d5c7f 100644
|
||||
--- base/message_loop/message_loop_current.cc
|
||||
+++ base/message_loop/message_loop_current.cc
|
||||
@@ -47,6 +47,8 @@ void MessageLoopCurrent::AddDestructionObserver(
|
||||
@@ -38,10 +38,10 @@ index 54e2d2b41dbd..cd299c90618b 100644
|
||||
current_->RemoveDestructionObserver(destruction_observer);
|
||||
}
|
||||
diff --git base/message_loop/message_loop_current.h base/message_loop/message_loop_current.h
|
||||
index 08a1c5e36735..48c5f8d102d0 100644
|
||||
index a3b48b58d367..57f8dc7fe2fa 100644
|
||||
--- base/message_loop/message_loop_current.h
|
||||
+++ base/message_loop/message_loop_current.h
|
||||
@@ -124,6 +124,12 @@ class BASE_EXPORT MessageLoopCurrent {
|
||||
@@ -120,6 +120,12 @@ class BASE_EXPORT MessageLoopCurrent {
|
||||
// posted tasks.
|
||||
void SetAddQueueTimeToTasks(bool enable);
|
||||
|
||||
@@ -54,8 +54,8 @@ index 08a1c5e36735..48c5f8d102d0 100644
|
||||
// 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
|
||||
@@ -194,6 +200,13 @@ class BASE_EXPORT MessageLoopCurrent {
|
||||
friend class web::TestWebThreadBundle;
|
||||
@@ -190,6 +196,13 @@ class BASE_EXPORT MessageLoopCurrent {
|
||||
friend class web::WebTaskEnvironment;
|
||||
|
||||
sequence_manager::internal::SequenceManagerImpl* current_;
|
||||
+
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git content/public/common/common_param_traits_macros.h content/public/common/common_param_traits_macros.h
|
||||
index c0c22fa5429f..f0a6215f3f54 100644
|
||||
index dd1363a6b295..b69c7895c0e3 100644
|
||||
--- content/public/common/common_param_traits_macros.h
|
||||
+++ content/public/common/common_param_traits_macros.h
|
||||
@@ -191,6 +191,7 @@ IPC_STRUCT_TRAITS_BEGIN(content::WebPreferences)
|
||||
@@ -189,6 +189,7 @@ IPC_STRUCT_TRAITS_BEGIN(content::WebPreferences)
|
||||
IPC_STRUCT_TRAITS_MEMBER(main_frame_resizes_are_orientation_changes)
|
||||
IPC_STRUCT_TRAITS_MEMBER(initialize_at_minimum_page_scale)
|
||||
IPC_STRUCT_TRAITS_MEMBER(smart_insert_delete_enabled)
|
||||
@@ -11,10 +11,10 @@ index c0c22fa5429f..f0a6215f3f54 100644
|
||||
IPC_STRUCT_TRAITS_MEMBER(navigate_on_drag_drop)
|
||||
IPC_STRUCT_TRAITS_MEMBER(spatial_navigation_enabled)
|
||||
diff --git content/public/common/web_preferences.cc content/public/common/web_preferences.cc
|
||||
index 678bd07c0753..1ae838c3de32 100644
|
||||
index 114b0f7d04cd..adce9ab8c3b5 100644
|
||||
--- content/public/common/web_preferences.cc
|
||||
+++ content/public/common/web_preferences.cc
|
||||
@@ -169,6 +169,7 @@ WebPreferences::WebPreferences()
|
||||
@@ -167,6 +167,7 @@ WebPreferences::WebPreferences()
|
||||
caret_browsing_enabled(false),
|
||||
use_solid_color_scrollbars(false),
|
||||
navigate_on_drag_drop(true),
|
||||
@@ -23,10 +23,10 @@ index 678bd07c0753..1ae838c3de32 100644
|
||||
record_whole_document(false),
|
||||
cookie_enabled(true),
|
||||
diff --git content/public/common/web_preferences.h content/public/common/web_preferences.h
|
||||
index ca883e52fee0..0bc16d1e8330 100644
|
||||
index e47b250f52bd..dfa18577d402 100644
|
||||
--- content/public/common/web_preferences.h
|
||||
+++ content/public/common/web_preferences.h
|
||||
@@ -186,6 +186,7 @@ struct CONTENT_EXPORT WebPreferences {
|
||||
@@ -184,6 +184,7 @@ struct CONTENT_EXPORT WebPreferences {
|
||||
bool caret_browsing_enabled;
|
||||
bool use_solid_color_scrollbars;
|
||||
bool navigate_on_drag_drop;
|
||||
@@ -35,10 +35,10 @@ index ca883e52fee0..0bc16d1e8330 100644
|
||||
bool record_whole_document;
|
||||
|
||||
diff --git content/renderer/render_view_impl.cc content/renderer/render_view_impl.cc
|
||||
index d0ca81590d2b..8f2f30878650 100644
|
||||
index f780c653d6e5..4b07220bac8c 100644
|
||||
--- content/renderer/render_view_impl.cc
|
||||
+++ content/renderer/render_view_impl.cc
|
||||
@@ -1018,6 +1018,8 @@ void RenderView::ApplyWebPreferences(const WebPreferences& prefs,
|
||||
@@ -998,6 +998,8 @@ void RenderView::ApplyWebPreferences(const WebPreferences& prefs,
|
||||
#endif
|
||||
|
||||
WebRuntimeFeatures::EnableTranslateService(prefs.translate_service_available);
|
||||
|
@@ -34,18 +34,18 @@ index 323534a720c1..72b232f0ed85 100644
|
||||
|
||||
bool DownloadPrefs::IsFromTrustedSource(const download::DownloadItem& item) {
|
||||
diff --git chrome/browser/printing/print_preview_dialog_controller.cc chrome/browser/printing/print_preview_dialog_controller.cc
|
||||
index d2a3be7590a0..883825bfc996 100644
|
||||
index 3dcc3aa7bea2..637661e9d0b9 100644
|
||||
--- chrome/browser/printing/print_preview_dialog_controller.cc
|
||||
+++ chrome/browser/printing/print_preview_dialog_controller.cc
|
||||
@@ -15,6 +15,7 @@
|
||||
#include "base/path_service.h"
|
||||
@@ -16,6 +16,7 @@
|
||||
#include "base/strings/utf_string_conversions.h"
|
||||
#include "build/branding_buildflags.h"
|
||||
#include "build/build_config.h"
|
||||
+#include "cef/libcef/features/features.h"
|
||||
#include "chrome/browser/browser_process.h"
|
||||
#include "chrome/browser/extensions/chrome_extension_web_contents_observer.h"
|
||||
#include "chrome/browser/printing/print_view_manager.h"
|
||||
@@ -440,8 +441,11 @@ WebContents* PrintPreviewDialogController::CreatePrintPreviewDialog(
|
||||
@@ -456,8 +457,11 @@ WebContents* PrintPreviewDialogController::CreatePrintPreviewDialog(
|
||||
content::HostZoomMap::Get(preview_dialog->GetSiteInstance())
|
||||
->SetZoomLevelForHostAndScheme(print_url.scheme(), print_url.host(), 0);
|
||||
PrintViewManager::CreateForWebContents(preview_dialog);
|
||||
@@ -112,7 +112,7 @@ index 12f77178ea92..470b13bd7879 100644
|
||||
|
||||
ConstrainedWebDialogUI::~ConstrainedWebDialogUI() {
|
||||
diff --git chrome/browser/ui/webui/print_preview/pdf_printer_handler.cc chrome/browser/ui/webui/print_preview/pdf_printer_handler.cc
|
||||
index 6147b07f6dad..a68b5bfaf193 100644
|
||||
index 00cf10991ede..8087cb6aab05 100644
|
||||
--- chrome/browser/ui/webui/print_preview/pdf_printer_handler.cc
|
||||
+++ chrome/browser/ui/webui/print_preview/pdf_printer_handler.cc
|
||||
@@ -143,8 +143,10 @@ PdfPrinterHandler::PdfPrinterHandler(Profile* profile,
|
||||
@@ -141,7 +141,7 @@ index 6147b07f6dad..a68b5bfaf193 100644
|
||||
|
||||
DCHECK(!print_callback_);
|
||||
print_callback_ = std::move(callback);
|
||||
@@ -323,7 +327,11 @@ void PdfPrinterHandler::SelectFile(const base::FilePath& default_filename,
|
||||
@@ -324,7 +328,11 @@ void PdfPrinterHandler::SelectFile(const base::FilePath& default_filename,
|
||||
// If the directory is empty there is no reason to create it or use the
|
||||
// default location.
|
||||
if (path.empty()) {
|
||||
@@ -153,9 +153,9 @@ index 6147b07f6dad..a68b5bfaf193 100644
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -333,8 +341,14 @@ void PdfPrinterHandler::SelectFile(const base::FilePath& default_filename,
|
||||
base::PostTaskWithTraitsAndReplyWithResult(
|
||||
FROM_HERE, {base::MayBlock(), base::TaskPriority::BEST_EFFORT},
|
||||
@@ -335,8 +343,14 @@ void PdfPrinterHandler::SelectFile(const base::FilePath& default_filename,
|
||||
FROM_HERE,
|
||||
{base::ThreadPool(), base::MayBlock(), base::TaskPriority::BEST_EFFORT},
|
||||
base::BindOnce(&SelectSaveDirectory, path, default_path),
|
||||
+#if !BUILDFLAG(ENABLE_CEF)
|
||||
base::BindOnce(&PdfPrinterHandler::OnDirectorySelected,
|
||||
@@ -168,7 +168,7 @@ index 6147b07f6dad..a68b5bfaf193 100644
|
||||
}
|
||||
|
||||
void PdfPrinterHandler::PostPrintToPdfTask() {
|
||||
@@ -350,6 +364,7 @@ void PdfPrinterHandler::OnGotUniqueFileName(const base::FilePath& path) {
|
||||
@@ -353,6 +367,7 @@ void PdfPrinterHandler::OnGotUniqueFileName(const base::FilePath& path) {
|
||||
FileSelected(path, 0, nullptr);
|
||||
}
|
||||
|
||||
@@ -176,7 +176,7 @@ index 6147b07f6dad..a68b5bfaf193 100644
|
||||
void PdfPrinterHandler::OnDirectorySelected(const base::FilePath& filename,
|
||||
const base::FilePath& directory) {
|
||||
base::FilePath path = directory.Append(filename);
|
||||
@@ -374,5 +389,36 @@ void PdfPrinterHandler::OnDirectorySelected(const base::FilePath& filename,
|
||||
@@ -377,5 +392,36 @@ void PdfPrinterHandler::OnDirectorySelected(const base::FilePath& filename,
|
||||
&file_type_info, 0, base::FilePath::StringType(),
|
||||
platform_util::GetTopLevel(preview_web_contents_->GetNativeView()), NULL);
|
||||
}
|
||||
@@ -262,7 +262,7 @@ index 06f5799efbb9..6119691b2700 100644
|
||||
Profile* const profile_;
|
||||
StickySettings* const sticky_settings_;
|
||||
diff --git chrome/browser/ui/webui/print_preview/print_preview_handler.cc chrome/browser/ui/webui/print_preview/print_preview_handler.cc
|
||||
index e3d7c5f14cd5..70d1b47d35c9 100644
|
||||
index 0a6c4d4de3aa..a22377a02343 100644
|
||||
--- chrome/browser/ui/webui/print_preview/print_preview_handler.cc
|
||||
+++ chrome/browser/ui/webui/print_preview/print_preview_handler.cc
|
||||
@@ -26,6 +26,7 @@
|
||||
@@ -273,7 +273,7 @@ index e3d7c5f14cd5..70d1b47d35c9 100644
|
||||
#include "chrome/browser/app_mode/app_mode_utils.h"
|
||||
#include "chrome/browser/bad_message.h"
|
||||
#include "chrome/browser/browser_process.h"
|
||||
@@ -1226,6 +1227,9 @@ PrinterHandler* PrintPreviewHandler::GetPrinterHandler(
|
||||
@@ -1253,6 +1254,9 @@ PrinterHandler* PrintPreviewHandler::GetPrinterHandler(
|
||||
}
|
||||
return privet_printer_handler_.get();
|
||||
}
|
||||
@@ -283,7 +283,7 @@ index e3d7c5f14cd5..70d1b47d35c9 100644
|
||||
#endif
|
||||
if (printer_type == PrinterType::kPdfPrinter) {
|
||||
if (!pdf_printer_handler_) {
|
||||
@@ -1308,6 +1312,7 @@ void PrintPreviewHandler::OnPrintResult(const std::string& callback_id,
|
||||
@@ -1335,6 +1339,7 @@ void PrintPreviewHandler::OnPrintResult(const std::string& callback_id,
|
||||
}
|
||||
|
||||
void PrintPreviewHandler::RegisterForGaiaCookieChanges() {
|
||||
@@ -291,7 +291,7 @@ index e3d7c5f14cd5..70d1b47d35c9 100644
|
||||
DCHECK(!identity_manager_);
|
||||
cloud_print_enabled_ =
|
||||
GetPrefs()->GetBoolean(prefs::kCloudPrintSubmitEnabled);
|
||||
@@ -1323,6 +1328,7 @@ void PrintPreviewHandler::RegisterForGaiaCookieChanges() {
|
||||
@@ -1350,6 +1355,7 @@ void PrintPreviewHandler::RegisterForGaiaCookieChanges() {
|
||||
|
||||
identity_manager_ = IdentityManagerFactory::GetForProfile(profile);
|
||||
identity_manager_->AddObserver(this);
|
||||
@@ -300,7 +300,7 @@ index e3d7c5f14cd5..70d1b47d35c9 100644
|
||||
|
||||
void PrintPreviewHandler::UnregisterForGaiaCookieChanges() {
|
||||
diff --git chrome/browser/ui/webui/print_preview/print_preview_ui.cc chrome/browser/ui/webui/print_preview/print_preview_ui.cc
|
||||
index 2dfc91469b8e..c6fd71452fb9 100644
|
||||
index a855e2f1d974..755f386deebf 100644
|
||||
--- chrome/browser/ui/webui/print_preview/print_preview_ui.cc
|
||||
+++ chrome/browser/ui/webui/print_preview/print_preview_ui.cc
|
||||
@@ -25,6 +25,7 @@
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git chrome/browser/printing/print_job_worker.cc chrome/browser/printing/print_job_worker.cc
|
||||
index 63f432b58371..fe664e69427a 100644
|
||||
index 13f9d7af3ae7..22d991fc1c14 100644
|
||||
--- chrome/browser/printing/print_job_worker.cc
|
||||
+++ chrome/browser/printing/print_job_worker.cc
|
||||
@@ -130,6 +130,7 @@ PrintJobWorker::PrintJobWorker(int render_process_id, int render_frame_id)
|
||||
@@ -11,10 +11,10 @@ index 63f432b58371..fe664e69427a 100644
|
||||
|
||||
PrintJobWorker::~PrintJobWorker() {
|
||||
diff --git printing/printing_context.h printing/printing_context.h
|
||||
index 9ccc1a6680bc..c0494a1cc2e2 100644
|
||||
index 6a5a7c90ef5b..04c0535046dc 100644
|
||||
--- printing/printing_context.h
|
||||
+++ printing/printing_context.h
|
||||
@@ -129,6 +129,13 @@ class PRINTING_EXPORT PrintingContext {
|
||||
@@ -131,6 +131,13 @@ class PRINTING_EXPORT PrintingContext {
|
||||
|
||||
int job_id() const { return job_id_; }
|
||||
|
||||
@@ -28,7 +28,7 @@ index 9ccc1a6680bc..c0494a1cc2e2 100644
|
||||
protected:
|
||||
explicit PrintingContext(Delegate* delegate);
|
||||
|
||||
@@ -153,6 +160,10 @@ class PRINTING_EXPORT PrintingContext {
|
||||
@@ -155,6 +162,10 @@ class PRINTING_EXPORT PrintingContext {
|
||||
// The job id for the current job. The value is 0 if no jobs are active.
|
||||
int job_id_;
|
||||
|
||||
|
@@ -1,51 +0,0 @@
|
||||
diff --git content/renderer/accessibility/render_accessibility_impl.cc content/renderer/accessibility/render_accessibility_impl.cc
|
||||
index 96ac02ca4dda..8812c390b681 100644
|
||||
--- content/renderer/accessibility/render_accessibility_impl.cc
|
||||
+++ content/renderer/accessibility/render_accessibility_impl.cc
|
||||
@@ -194,7 +194,6 @@ void RenderAccessibilityImpl::DidCreateNewDocument() {
|
||||
void RenderAccessibilityImpl::DidCommitProvisionalLoad(
|
||||
bool is_same_document_navigation,
|
||||
ui::PageTransition transition) {
|
||||
- is_initial_load_processed_ = false;
|
||||
has_injected_stylesheet_ = false;
|
||||
// Remove the image annotator if the page is loading and it was added for
|
||||
// the one-shot image annotation (i.e. AXMode for image annotation is not
|
||||
@@ -642,8 +641,6 @@ void RenderAccessibilityImpl::SendPendingAccessibilityEvents() {
|
||||
// ids to locations.
|
||||
for (size_t j = 0; j < update.nodes.size(); ++j) {
|
||||
ui::AXNodeData& src = update.nodes[j];
|
||||
- // TODO(accessibility) What if location hasn't been set yet?
|
||||
- // Get cached location for this node or create a new entry if none exists.
|
||||
ui::AXRelativeBounds& dst = locations_[update.nodes[j].id];
|
||||
dst = src.relative_bounds;
|
||||
}
|
||||
@@ -663,13 +660,11 @@ void RenderAccessibilityImpl::SendPendingAccessibilityEvents() {
|
||||
ack_token_));
|
||||
reset_token_ = 0;
|
||||
|
||||
- if (had_layout_complete_messages && is_initial_load_processed_)
|
||||
+ if (had_layout_complete_messages)
|
||||
SendLocationChanges();
|
||||
|
||||
- if (had_load_complete_messages) {
|
||||
+ if (had_load_complete_messages)
|
||||
has_injected_stylesheet_ = false;
|
||||
- is_initial_load_processed_ = true;
|
||||
- }
|
||||
|
||||
if (image_annotation_debugging_)
|
||||
AddImageAnnotationDebuggingAttributes(bundle.updates);
|
||||
diff --git content/renderer/accessibility/render_accessibility_impl.h content/renderer/accessibility/render_accessibility_impl.h
|
||||
index e5e6325c1cf6..ebc2db666772 100644
|
||||
--- content/renderer/accessibility/render_accessibility_impl.h
|
||||
+++ content/renderer/accessibility/render_accessibility_impl.h
|
||||
@@ -238,9 +238,6 @@ class CONTENT_EXPORT RenderAccessibilityImpl
|
||||
// for debugging.
|
||||
bool image_annotation_debugging_ = false;
|
||||
|
||||
- // Has all data related to the initial page load been processed.
|
||||
- bool is_initial_load_processed_ = false;
|
||||
-
|
||||
// So we can queue up tasks to be executed later.
|
||||
base::WeakPtrFactory<RenderAccessibilityImpl> weak_factory_{this};
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git ui/base/resource/resource_bundle.cc ui/base/resource/resource_bundle.cc
|
||||
index fa666755d5f3..779ebb5949cf 100644
|
||||
index 5b2f19834d43..db733ea25bdc 100644
|
||||
--- ui/base/resource/resource_bundle.cc
|
||||
+++ ui/base/resource/resource_bundle.cc
|
||||
@@ -809,6 +809,12 @@ ResourceBundle::ResourceBundle(Delegate* delegate)
|
||||
@@ -817,6 +817,12 @@ ResourceBundle::ResourceBundle(Delegate* delegate)
|
||||
: delegate_(delegate),
|
||||
locale_resources_data_lock_(new base::Lock),
|
||||
max_scale_factor_(SCALE_FACTOR_100P) {
|
||||
@@ -15,7 +15,7 @@ index fa666755d5f3..779ebb5949cf 100644
|
||||
mangle_localized_strings_ = base::CommandLine::ForCurrentProcess()->HasSwitch(
|
||||
switches::kMangleLocalizedStrings);
|
||||
}
|
||||
@@ -818,6 +824,11 @@ ResourceBundle::~ResourceBundle() {
|
||||
@@ -826,6 +832,11 @@ ResourceBundle::~ResourceBundle() {
|
||||
UnloadLocaleResources();
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ index fa666755d5f3..779ebb5949cf 100644
|
||||
void ResourceBundle::InitSharedInstance(Delegate* delegate) {
|
||||
DCHECK(g_shared_instance_ == NULL) << "ResourceBundle initialized twice";
|
||||
diff --git ui/base/resource/resource_bundle.h ui/base/resource/resource_bundle.h
|
||||
index f5a09173007e..36734b2ed811 100644
|
||||
index a342b41335a6..67bbffb9bbda 100644
|
||||
--- ui/base/resource/resource_bundle.h
|
||||
+++ ui/base/resource/resource_bundle.h
|
||||
@@ -155,6 +155,11 @@ class UI_BASE_EXPORT ResourceBundle {
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git content/browser/renderer_host/render_widget_host_view_aura.cc content/browser/renderer_host/render_widget_host_view_aura.cc
|
||||
index 7bea1b72e4d0..a0c6c00d48a7 100644
|
||||
index 09e58950d351..54bbb72e2a38 100644
|
||||
--- content/browser/renderer_host/render_widget_host_view_aura.cc
|
||||
+++ content/browser/renderer_host/render_widget_host_view_aura.cc
|
||||
@@ -696,10 +696,12 @@ gfx::Rect RenderWidgetHostViewAura::GetViewBounds() {
|
||||
@@ -711,10 +711,12 @@ gfx::Rect RenderWidgetHostViewAura::GetViewBounds() {
|
||||
void RenderWidgetHostViewAura::UpdateBackgroundColor() {
|
||||
DCHECK(GetBackgroundColor());
|
||||
|
||||
@@ -19,7 +19,7 @@ index 7bea1b72e4d0..a0c6c00d48a7 100644
|
||||
}
|
||||
|
||||
void RenderWidgetHostViewAura::WindowTitleChanged() {
|
||||
@@ -2024,6 +2026,15 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) {
|
||||
@@ -2037,6 +2039,15 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) {
|
||||
// Init(), because it needs to have the layer.
|
||||
if (frame_sink_id_.is_valid())
|
||||
window_->SetEmbedFrameSinkId(frame_sink_id_);
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git services/service_manager/embedder/main.cc services/service_manager/embedder/main.cc
|
||||
index 0d1fa74a3f43..c06c98acffb2 100644
|
||||
index 099a76a207a3..25080688384f 100644
|
||||
--- services/service_manager/embedder/main.cc
|
||||
+++ services/service_manager/embedder/main.cc
|
||||
@@ -240,22 +240,36 @@ int RunService(MainDelegate* delegate) {
|
||||
@@ -241,22 +241,36 @@ int RunService(MainDelegate* delegate) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ index 0d1fa74a3f43..c06c98acffb2 100644
|
||||
|
||||
// A flag to indicate whether Main() has been called before. On Android, we
|
||||
// may re-run Main() without restarting the browser process. This flag
|
||||
@@ -341,12 +355,7 @@ int Main(const MainParams& params) {
|
||||
@@ -342,12 +356,7 @@ int Main(const MainParams& params) {
|
||||
MainDelegate::InitializeParams init_params;
|
||||
|
||||
#if defined(OS_MACOSX)
|
||||
@@ -57,7 +57,7 @@ index 0d1fa74a3f43..c06c98acffb2 100644
|
||||
InitializeMac();
|
||||
#endif
|
||||
|
||||
@@ -390,18 +399,16 @@ int Main(const MainParams& params) {
|
||||
@@ -391,18 +400,16 @@ int Main(const MainParams& params) {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ index 0d1fa74a3f43..c06c98acffb2 100644
|
||||
switch (process_type) {
|
||||
case ProcessType::kDefault:
|
||||
NOTREACHED();
|
||||
@@ -423,6 +430,8 @@ int Main(const MainParams& params) {
|
||||
@@ -424,6 +431,8 @@ int Main(const MainParams& params) {
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -94,7 +94,7 @@ index 0d1fa74a3f43..c06c98acffb2 100644
|
||||
if (tracker) {
|
||||
if (exit_code == 0) {
|
||||
tracker->SetProcessPhaseIfEnabled(
|
||||
@@ -434,13 +443,38 @@ int Main(const MainParams& params) {
|
||||
@@ -435,13 +444,38 @@ int Main(const MainParams& params) {
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git chrome/browser/net/profile_network_context_service.cc chrome/browser/net/profile_network_context_service.cc
|
||||
index 27ebbc3dd176..063ba271c51e 100644
|
||||
index 35302d90a73f..73424c925e13 100644
|
||||
--- chrome/browser/net/profile_network_context_service.cc
|
||||
+++ chrome/browser/net/profile_network_context_service.cc
|
||||
@@ -14,6 +14,7 @@
|
||||
@@ -10,7 +10,7 @@ index 27ebbc3dd176..063ba271c51e 100644
|
||||
#include "chrome/browser/browser_process.h"
|
||||
#include "chrome/browser/content_settings/cookie_settings_factory.h"
|
||||
#include "chrome/browser/content_settings/host_content_settings_map_factory.h"
|
||||
@@ -427,16 +428,23 @@ ProfileNetworkContextService::CreateNetworkContextParams(
|
||||
@@ -463,9 +464,22 @@ ProfileNetworkContextService::CreateNetworkContextParams(
|
||||
network_context_params->cookie_manager_params =
|
||||
CreateCookieManagerParams(profile_, *cookie_settings_);
|
||||
|
||||
@@ -18,27 +18,34 @@ index 27ebbc3dd176..063ba271c51e 100644
|
||||
+
|
||||
// Configure on-disk storage for non-OTR profiles. OTR profiles just use
|
||||
// default behavior (in memory storage, default sizes).
|
||||
PrefService* prefs = profile_->GetPrefs();
|
||||
if (!in_memory) {
|
||||
+#if BUILDFLAG(ENABLE_CEF)
|
||||
+ PrefService* prefs = profile_->GetPrefs();
|
||||
+ // Configure the HTTP cache path and size.
|
||||
+ const base::FilePath& base_cache_path =
|
||||
+ prefs->GetFilePath(prefs::kDiskCacheDir);
|
||||
+ DCHECK(!base_cache_path.empty());
|
||||
+ network_context_params->http_cache_path =
|
||||
+ base_cache_path.Append(chrome::kCacheDirname);
|
||||
+ network_context_params->http_cache_max_size =
|
||||
+ prefs->GetInteger(prefs::kDiskCacheSize);
|
||||
+#else
|
||||
PrefService* local_state = g_browser_process->local_state();
|
||||
// Configure the HTTP cache path and size.
|
||||
base::FilePath base_cache_path;
|
||||
+#if BUILDFLAG(ENABLE_CEF)
|
||||
+ base_cache_path = prefs->GetFilePath(prefs::kDiskCacheDir);
|
||||
+ DCHECK(!base_cache_path.empty());
|
||||
+#else
|
||||
chrome::GetUserCacheDirectory(path, &base_cache_path);
|
||||
base::FilePath disk_cache_dir = prefs->GetFilePath(prefs::kDiskCacheDir);
|
||||
if (!disk_cache_dir.empty())
|
||||
base_cache_path = disk_cache_dir.Append(base_cache_path.BaseName());
|
||||
+#endif
|
||||
network_context_params->http_cache_path =
|
||||
@@ -478,6 +492,7 @@ ProfileNetworkContextService::CreateNetworkContextParams(
|
||||
base_cache_path.Append(chrome::kCacheDirname);
|
||||
network_context_params->http_cache_max_size =
|
||||
local_state->GetInteger(prefs::kDiskCacheSize);
|
||||
+#endif
|
||||
|
||||
// Currently this just contains HttpServerProperties, but that will likely
|
||||
// change.
|
||||
diff --git chrome/browser/profiles/profile.h chrome/browser/profiles/profile.h
|
||||
index e47a8949199f..c713ada1b206 100644
|
||||
index 6a7b2e1c9c99..d119da2910fe 100644
|
||||
--- chrome/browser/profiles/profile.h
|
||||
+++ chrome/browser/profiles/profile.h
|
||||
@@ -365,6 +365,11 @@ class Profile : public content::BrowserContext {
|
||||
@@ -373,6 +373,11 @@ class Profile : public content::BrowserContext {
|
||||
virtual bool ShouldRestoreOldSessionCookies();
|
||||
virtual bool ShouldPersistSessionCookies();
|
||||
|
||||
@@ -51,10 +58,10 @@ index e47a8949199f..c713ada1b206 100644
|
||||
// itself, if |relative_path| is empty).
|
||||
virtual network::mojom::NetworkContextPtr CreateNetworkContext(
|
||||
diff --git net/cookies/cookie_monster.cc net/cookies/cookie_monster.cc
|
||||
index 83a309d40b1b..7d93f7891426 100644
|
||||
index d522c4d82094..f4979561fdf0 100644
|
||||
--- net/cookies/cookie_monster.cc
|
||||
+++ net/cookies/cookie_monster.cc
|
||||
@@ -509,6 +509,25 @@ void CookieMonster::SetCookieableSchemes(
|
||||
@@ -493,6 +493,25 @@ void CookieMonster::SetCookieableSchemes(
|
||||
MaybeRunCookieCallback(std::move(callback), true);
|
||||
}
|
||||
|
||||
@@ -81,10 +88,10 @@ index 83a309d40b1b..7d93f7891426 100644
|
||||
void CookieMonster::SetPersistSessionCookies(bool persist_session_cookies) {
|
||||
DCHECK(thread_checker_.CalledOnValidThread());
|
||||
diff --git net/cookies/cookie_monster.h net/cookies/cookie_monster.h
|
||||
index 913737e78194..05ad0e8deffd 100644
|
||||
index a0bd017e9c18..87f8ed8989d4 100644
|
||||
--- net/cookies/cookie_monster.h
|
||||
+++ net/cookies/cookie_monster.h
|
||||
@@ -180,6 +180,8 @@ class NET_EXPORT CookieMonster : public CookieStore {
|
||||
@@ -177,6 +177,8 @@ class NET_EXPORT CookieMonster : public CookieStore {
|
||||
CookieChangeDispatcher& GetChangeDispatcher() override;
|
||||
void SetCookieableSchemes(const std::vector<std::string>& schemes,
|
||||
SetCookieableSchemesCallback callback) override;
|
||||
@@ -94,10 +101,10 @@ index 913737e78194..05ad0e8deffd 100644
|
||||
// Enables writing session cookies into the cookie database. If this this
|
||||
// method is called, it must be called before first use of the instance
|
||||
diff --git net/cookies/cookie_store.h net/cookies/cookie_store.h
|
||||
index d6299f543edd..ac8edd449452 100644
|
||||
index bcd72c1b56f7..67ff2c0edb32 100644
|
||||
--- net/cookies/cookie_store.h
|
||||
+++ net/cookies/cookie_store.h
|
||||
@@ -145,6 +145,11 @@ class NET_EXPORT CookieStore {
|
||||
@@ -127,6 +127,11 @@ class NET_EXPORT CookieStore {
|
||||
virtual void SetCookieableSchemes(const std::vector<std::string>& schemes,
|
||||
SetCookieableSchemesCallback callback) = 0;
|
||||
|
||||
@@ -110,10 +117,10 @@ index d6299f543edd..ac8edd449452 100644
|
||||
virtual void DumpMemoryStats(base::trace_event::ProcessMemoryDump* pmd,
|
||||
const std::string& parent_absolute_name) const;
|
||||
diff --git services/network/cookie_manager.cc services/network/cookie_manager.cc
|
||||
index a73b9f31cf17..4e0d4b4b4746 100644
|
||||
index c0f105aec142..6afd5f9e25fc 100644
|
||||
--- services/network/cookie_manager.cc
|
||||
+++ services/network/cookie_manager.cc
|
||||
@@ -206,14 +206,9 @@ void CookieManager::FlushCookieStore(FlushCookieStoreCallback callback) {
|
||||
@@ -214,14 +214,9 @@ void CookieManager::FlushCookieStore(FlushCookieStoreCallback callback) {
|
||||
void CookieManager::AllowFileSchemeCookies(
|
||||
bool allow,
|
||||
AllowFileSchemeCookiesCallback callback) {
|
||||
@@ -132,10 +139,10 @@ index a73b9f31cf17..4e0d4b4b4746 100644
|
||||
|
||||
void CookieManager::SetForceKeepSessionState() {
|
||||
diff --git services/network/network_context.cc services/network/network_context.cc
|
||||
index dffa1299b1cf..169ea2925274 100644
|
||||
index 8e848688225a..cbbf5de461d6 100644
|
||||
--- services/network/network_context.cc
|
||||
+++ services/network/network_context.cc
|
||||
@@ -1726,6 +1726,7 @@ URLRequestContextOwner NetworkContext::ApplyContextParamsToBuilder(
|
||||
@@ -1762,6 +1762,7 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext() {
|
||||
}
|
||||
|
||||
scoped_refptr<SessionCleanupCookieStore> session_cleanup_cookie_store;
|
||||
@@ -143,7 +150,7 @@ index dffa1299b1cf..169ea2925274 100644
|
||||
if (params_->cookie_path) {
|
||||
scoped_refptr<base::SequencedTaskRunner> client_task_runner =
|
||||
base::ThreadTaskRunnerHandle::Get();
|
||||
@@ -1753,18 +1754,27 @@ URLRequestContextOwner NetworkContext::ApplyContextParamsToBuilder(
|
||||
@@ -1789,18 +1790,27 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext() {
|
||||
session_cleanup_cookie_store =
|
||||
base::MakeRefCounted<SessionCleanupCookieStore>(sqlite_store);
|
||||
|
||||
@@ -154,7 +161,7 @@ index dffa1299b1cf..169ea2925274 100644
|
||||
if (params_->persist_session_cookies)
|
||||
cookie_store->SetPersistSessionCookies(true);
|
||||
-
|
||||
- builder->SetCookieStore(std::move(cookie_store));
|
||||
- builder.SetCookieStore(std::move(cookie_store));
|
||||
} else {
|
||||
DCHECK(!params_->restore_old_session_cookies);
|
||||
DCHECK(!params_->persist_session_cookies);
|
||||
@@ -169,16 +176,16 @@ index dffa1299b1cf..169ea2925274 100644
|
||||
+ net::CookieStore::SetCookieableSchemesCallback());
|
||||
+ }
|
||||
+
|
||||
+ builder->SetCookieStore(std::move(cookie_store));
|
||||
+ builder.SetCookieStore(std::move(cookie_store));
|
||||
+
|
||||
std::unique_ptr<net::StaticHttpUserAgentSettings> user_agent_settings =
|
||||
std::make_unique<net::StaticHttpUserAgentSettings>(
|
||||
params_->accept_language, params_->user_agent);
|
||||
diff --git services/network/public/mojom/network_context.mojom services/network/public/mojom/network_context.mojom
|
||||
index 58b18e0c3c2b..38020694872a 100644
|
||||
index 873bce449b63..3189e268d950 100644
|
||||
--- services/network/public/mojom/network_context.mojom
|
||||
+++ services/network/public/mojom/network_context.mojom
|
||||
@@ -206,6 +206,9 @@ struct NetworkContextParams {
|
||||
@@ -210,6 +210,9 @@ struct NetworkContextParams {
|
||||
// cookies. Otherwise it should be false.
|
||||
bool persist_session_cookies = false;
|
||||
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git content/browser/network_service_client.cc content/browser/network_service_client.cc
|
||||
index b89e764feb03..0bb056852db2 100644
|
||||
--- content/browser/network_service_client.cc
|
||||
+++ content/browser/network_service_client.cc
|
||||
@@ -207,10 +207,6 @@ class LoginHandlerDelegate {
|
||||
diff --git content/browser/storage_partition_impl.cc content/browser/storage_partition_impl.cc
|
||||
index c626801963af..9d05b869101b 100644
|
||||
--- content/browser/storage_partition_impl.cc
|
||||
+++ content/browser/storage_partition_impl.cc
|
||||
@@ -583,10 +583,6 @@ class LoginHandlerDelegate {
|
||||
}
|
||||
|
||||
WebContents* web_contents = web_contents_getter_.Run();
|
||||
@@ -13,20 +13,21 @@ index b89e764feb03..0bb056852db2 100644
|
||||
|
||||
// WeakPtr is not strictly necessary here due to OnRequestCancelled.
|
||||
creating_login_delegate_ = true;
|
||||
@@ -332,10 +328,7 @@ void OnAuthRequiredContinuation(
|
||||
@@ -643,12 +639,6 @@ void OnAuthRequiredContinuation(
|
||||
web_contents_getter =
|
||||
base::BindRepeating(GetWebContents, process_id, routing_id);
|
||||
}
|
||||
- if (!web_contents_getter.Run()) {
|
||||
- std::move(auth_challenge_responder)->OnAuthCredentials(base::nullopt);
|
||||
- mojo::Remote<network::mojom::AuthChallengeResponder>
|
||||
- auth_challenge_responder_remote(std::move(auth_challenge_responder));
|
||||
- auth_challenge_responder_remote->OnAuthCredentials(base::nullopt);
|
||||
- return;
|
||||
- }
|
||||
+
|
||||
new LoginHandlerDelegate(std::move(auth_challenge_responder),
|
||||
std::move(web_contents_getter), auth_info,
|
||||
is_request_for_main_frame, process_id, routing_id,
|
||||
diff --git services/network/public/cpp/simple_url_loader.cc services/network/public/cpp/simple_url_loader.cc
|
||||
index b575b0bb3a35..a04e74d5896f 100644
|
||||
index 1ab5688d10d6..7e8d8242a06f 100644
|
||||
--- services/network/public/cpp/simple_url_loader.cc
|
||||
+++ services/network/public/cpp/simple_url_loader.cc
|
||||
@@ -227,6 +227,7 @@ class SimpleURLLoaderImpl : public SimpleURLLoader,
|
||||
@@ -69,10 +70,10 @@ index b575b0bb3a35..a04e74d5896f 100644
|
||||
net::MutableNetworkTrafficAnnotationTag(annotation_tag_));
|
||||
|
||||
diff --git services/network/public/cpp/simple_url_loader.h services/network/public/cpp/simple_url_loader.h
|
||||
index f81788d25fda..ba8948be5ebf 100644
|
||||
index 255cb1830c5c..bd89d66d2520 100644
|
||||
--- services/network/public/cpp/simple_url_loader.h
|
||||
+++ services/network/public/cpp/simple_url_loader.h
|
||||
@@ -324,6 +324,9 @@ class COMPONENT_EXPORT(NETWORK_CPP) SimpleURLLoader {
|
||||
@@ -327,6 +327,9 @@ class COMPONENT_EXPORT(NETWORK_CPP) SimpleURLLoader {
|
||||
// as much time as it wants.
|
||||
virtual void SetTimeoutDuration(base::TimeDelta timeout_duration) = 0;
|
||||
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git ui/views/controls/native/native_view_host.cc ui/views/controls/native/native_view_host.cc
|
||||
index d6116fdbdd09..99191c7e46a9 100644
|
||||
index bc1cb3a9e6fc..f68bdeb8786c 100644
|
||||
--- ui/views/controls/native/native_view_host.cc
|
||||
+++ ui/views/controls/native/native_view_host.cc
|
||||
@@ -150,7 +150,7 @@ void NativeViewHost::OnPaint(gfx::Canvas* canvas) {
|
||||
@@ -151,7 +151,7 @@ void NativeViewHost::OnPaint(gfx::Canvas* canvas) {
|
||||
// It would be nice if this used some approximation of the page's
|
||||
// current background color.
|
||||
if (native_wrapper_->HasInstalledClip())
|
||||
@@ -39,7 +39,7 @@ index 2a6cfc54d866..48623ab5d672 100644
|
||||
};
|
||||
|
||||
diff --git ui/views/controls/webview/webview.cc ui/views/controls/webview/webview.cc
|
||||
index 805703d5f79a..4f86e1982a8e 100644
|
||||
index 982ab4872532..e24c59e4e363 100644
|
||||
--- ui/views/controls/webview/webview.cc
|
||||
+++ ui/views/controls/webview/webview.cc
|
||||
@@ -112,6 +112,10 @@ void WebView::EnableSizingFromWebContents(const gfx::Size& min_size,
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git content/browser/blob_storage/chrome_blob_storage_context.cc content/browser/blob_storage/chrome_blob_storage_context.cc
|
||||
index 859cf37ae470..ddf7c87e9327 100644
|
||||
index 0d5a04d7af76..b4610f07b0c2 100644
|
||||
--- content/browser/blob_storage/chrome_blob_storage_context.cc
|
||||
+++ content/browser/blob_storage/chrome_blob_storage_context.cc
|
||||
@@ -117,7 +117,8 @@ ChromeBlobStorageContext* ChromeBlobStorageContext::GetFor(
|
||||
@@ -9,14 +9,14 @@ index 859cf37ae470..ddf7c87e9327 100644
|
||||
- if (!context->IsOffTheRecord() && io_thread_valid) {
|
||||
+ if (!context->GetPath().empty() && !context->IsOffTheRecord() &&
|
||||
+ io_thread_valid) {
|
||||
file_task_runner = base::CreateTaskRunnerWithTraits(
|
||||
{base::MayBlock(), base::TaskPriority::BEST_EFFORT,
|
||||
base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN});
|
||||
file_task_runner = base::CreateTaskRunner(
|
||||
{base::ThreadPool(), base::MayBlock(),
|
||||
base::TaskPriority::USER_VISIBLE,
|
||||
diff --git content/browser/browser_context.cc content/browser/browser_context.cc
|
||||
index 5fbd75f67fb7..b92df84a2abf 100644
|
||||
index 9e5b73896b85..153c089421f9 100644
|
||||
--- content/browser/browser_context.cc
|
||||
+++ content/browser/browser_context.cc
|
||||
@@ -58,6 +58,7 @@
|
||||
@@ -57,6 +57,7 @@
|
||||
#include "content/public/common/content_switches.h"
|
||||
#include "content/public/common/service_manager_connection.h"
|
||||
#include "content/public/common/service_names.mojom.h"
|
||||
@@ -33,7 +33,7 @@ index 5fbd75f67fb7..b92df84a2abf 100644
|
||||
in_memory = true;
|
||||
|
||||
return partition_map->Get(partition_domain, partition_name, in_memory,
|
||||
@@ -798,7 +799,7 @@ media::VideoDecodePerfHistory* BrowserContext::GetVideoDecodePerfHistory() {
|
||||
@@ -792,7 +793,7 @@ media::VideoDecodePerfHistory* BrowserContext::GetVideoDecodePerfHistory() {
|
||||
kUseInMemoryDBDefault);
|
||||
|
||||
std::unique_ptr<media::VideoDecodeStatsDB> stats_db;
|
||||
@@ -42,25 +42,11 @@ index 5fbd75f67fb7..b92df84a2abf 100644
|
||||
stats_db =
|
||||
std::make_unique<media::InMemoryVideoDecodeStatsDBImpl>(nullptr);
|
||||
} else {
|
||||
diff --git content/browser/renderer_host/render_process_host_impl.cc content/browser/renderer_host/render_process_host_impl.cc
|
||||
index c49bdcea4b64..a578f26a7aa7 100644
|
||||
--- content/browser/renderer_host/render_process_host_impl.cc
|
||||
+++ content/browser/renderer_host/render_process_host_impl.cc
|
||||
@@ -2213,6 +2213,9 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() {
|
||||
plugin_registry_.reset(
|
||||
new PluginRegistryImpl(GetBrowserContext()->GetResourceContext()));
|
||||
}
|
||||
+ // Needed for proper routing of IsPluginAvailable callbacks.
|
||||
+ DCHECK_GE(GetID(), 0);
|
||||
+ plugin_registry_->set_render_process_id(GetID());
|
||||
registry->AddInterface(base::BindRepeating(
|
||||
&PluginRegistryImpl::Bind, base::Unretained(plugin_registry_.get())));
|
||||
#endif
|
||||
diff --git storage/browser/database/database_tracker.cc storage/browser/database/database_tracker.cc
|
||||
index 18f8b0a11438..a10ab23aaceb 100644
|
||||
index a0065cac99f0..2d808ea8d33f 100644
|
||||
--- storage/browser/database/database_tracker.cc
|
||||
+++ storage/browser/database/database_tracker.cc
|
||||
@@ -509,7 +509,7 @@ bool DatabaseTracker::LazyInit() {
|
||||
@@ -510,7 +510,7 @@ bool DatabaseTracker::LazyInit() {
|
||||
meta_table_.reset(new sql::MetaTable());
|
||||
|
||||
is_initialized_ =
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git base/trace_event/builtin_categories.h base/trace_event/builtin_categories.h
|
||||
index 7c0723ffd493..96e2af4c0588 100644
|
||||
index 6717a2bd93b7..25136f5e99ba 100644
|
||||
--- base/trace_event/builtin_categories.h
|
||||
+++ base/trace_event/builtin_categories.h
|
||||
@@ -47,6 +47,8 @@
|
||||
@@ -48,6 +48,8 @@
|
||||
X("cc") \
|
||||
X("cc.debug") \
|
||||
X("cdp.perf") \
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git ui/base/models/menu_model.h ui/base/models/menu_model.h
|
||||
index cce16a111356..9f0a8b73adb5 100644
|
||||
index e0324ff11fb8..6a2455caaab8 100644
|
||||
--- ui/base/models/menu_model.h
|
||||
+++ ui/base/models/menu_model.h
|
||||
@@ -15,6 +15,7 @@
|
||||
@@ -39,7 +39,7 @@ index cce16a111356..9f0a8b73adb5 100644
|
||||
virtual void MenuWillShow() {}
|
||||
|
||||
diff --git ui/gfx/render_text.cc ui/gfx/render_text.cc
|
||||
index 2ed814d50a9b..4a1fec248663 100644
|
||||
index 8aedc0ecc317..2d9c6cd5452a 100644
|
||||
--- ui/gfx/render_text.cc
|
||||
+++ ui/gfx/render_text.cc
|
||||
@@ -539,6 +539,14 @@ void RenderText::SetWhitespaceElision(base::Optional<bool> whitespace_elision) {
|
||||
@@ -57,7 +57,7 @@ index 2ed814d50a9b..4a1fec248663 100644
|
||||
void RenderText::SetDisplayRect(const Rect& r) {
|
||||
if (r != display_rect_) {
|
||||
display_rect_ = r;
|
||||
@@ -1661,6 +1669,19 @@ void RenderText::OnTextAttributeChanged() {
|
||||
@@ -1666,6 +1674,19 @@ void RenderText::OnTextAttributeChanged() {
|
||||
if (!multiline_ && replace_newline_chars_with_symbols_)
|
||||
base::ReplaceChars(layout_text_, kNewline, kNewlineSymbol, &layout_text_);
|
||||
|
||||
@@ -78,10 +78,10 @@ index 2ed814d50a9b..4a1fec248663 100644
|
||||
}
|
||||
|
||||
diff --git ui/gfx/render_text.h ui/gfx/render_text.h
|
||||
index 3c3fc3e8eb16..c6e46c0082d8 100644
|
||||
index d0dc1d08c912..7496b2620bd3 100644
|
||||
--- ui/gfx/render_text.h
|
||||
+++ ui/gfx/render_text.h
|
||||
@@ -318,6 +318,10 @@ class GFX_EXPORT RenderText {
|
||||
@@ -320,6 +320,10 @@ class GFX_EXPORT RenderText {
|
||||
return whitespace_elision_;
|
||||
}
|
||||
|
||||
@@ -92,7 +92,7 @@ index 3c3fc3e8eb16..c6e46c0082d8 100644
|
||||
const Rect& display_rect() const { return display_rect_; }
|
||||
void SetDisplayRect(const Rect& r);
|
||||
|
||||
@@ -977,6 +981,8 @@ class GFX_EXPORT RenderText {
|
||||
@@ -979,6 +983,8 @@ class GFX_EXPORT RenderText {
|
||||
// The cursor position in view space, used to traverse lines of varied widths.
|
||||
base::Optional<int> cached_cursor_x_;
|
||||
|
||||
@@ -132,7 +132,7 @@ index 214b1a74c5b2..fd15c4dfcb50 100644
|
||||
const gfx::Size previous_image_size(image_->GetPreferredSize());
|
||||
UpdateImage();
|
||||
diff --git ui/views/controls/button/label_button.h ui/views/controls/button/label_button.h
|
||||
index c183274ec443..63fee0c613ab 100644
|
||||
index 2162f9ef52b1..10b1f9120aa3 100644
|
||||
--- ui/views/controls/button/label_button.h
|
||||
+++ ui/views/controls/button/label_button.h
|
||||
@@ -107,6 +107,9 @@ class VIEWS_EXPORT LabelButton : public Button, public NativeThemeDelegate {
|
||||
@@ -146,10 +146,10 @@ index c183274ec443..63fee0c613ab 100644
|
||||
ImageView* image() const { return image_; }
|
||||
Label* label() const { return label_; }
|
||||
diff --git ui/views/controls/label.cc ui/views/controls/label.cc
|
||||
index e2d51fc87b23..258b50c8ea11 100644
|
||||
index a4f20420e9ee..ae38c737d8c2 100644
|
||||
--- ui/views/controls/label.cc
|
||||
+++ ui/views/controls/label.cc
|
||||
@@ -40,6 +40,20 @@ bool IsOpaque(SkColor color) {
|
||||
@@ -52,6 +52,20 @@ bool IsOpaque(SkColor color) {
|
||||
return SkColorGetA(color) == SK_AlphaOPAQUE;
|
||||
}
|
||||
|
||||
@@ -170,7 +170,7 @@ index e2d51fc87b23..258b50c8ea11 100644
|
||||
} // namespace
|
||||
|
||||
namespace views {
|
||||
@@ -271,6 +285,14 @@ base::string16 Label::GetTooltipText() const {
|
||||
@@ -309,6 +323,14 @@ base::string16 Label::GetTooltipText() const {
|
||||
return tooltip_text_;
|
||||
}
|
||||
|
||||
@@ -185,9 +185,9 @@ index e2d51fc87b23..258b50c8ea11 100644
|
||||
void Label::SetTooltipText(const base::string16& tooltip_text) {
|
||||
DCHECK(handles_tooltips_);
|
||||
if (tooltip_text_ == tooltip_text)
|
||||
@@ -539,7 +561,19 @@ std::unique_ptr<gfx::RenderText> Label::CreateRenderText() const {
|
||||
@@ -578,7 +600,19 @@ std::unique_ptr<gfx::RenderText> Label::CreateRenderText() const {
|
||||
render_text->SetFontList(font_list());
|
||||
render_text->set_shadows(shadows());
|
||||
render_text->set_shadows(GetShadows());
|
||||
render_text->SetCursorEnabled(false);
|
||||
- render_text->SetText(GetText());
|
||||
+
|
||||
@@ -203,14 +203,14 @@ index e2d51fc87b23..258b50c8ea11 100644
|
||||
+ render_text->SetText(GetText());
|
||||
+ }
|
||||
+
|
||||
render_text->SetMultiline(GetMultiLine());
|
||||
render_text->SetMaxLines(GetMultiLine() ? GetMaxLines() : 0);
|
||||
render_text->SetWordWrapBehavior(full_text_->word_wrap_behavior());
|
||||
const bool multiline = GetMultiLine();
|
||||
render_text->SetMultiline(multiline);
|
||||
render_text->SetMaxLines(multiline ? GetMaxLines() : 0);
|
||||
diff --git ui/views/controls/label.h ui/views/controls/label.h
|
||||
index ce169b164bc7..743509aa6acb 100644
|
||||
index bc90b6fbf5bd..596c21476e2f 100644
|
||||
--- ui/views/controls/label.h
|
||||
+++ ui/views/controls/label.h
|
||||
@@ -164,6 +164,10 @@ class VIEWS_EXPORT Label : public View,
|
||||
@@ -176,6 +176,10 @@ class VIEWS_EXPORT Label : public View,
|
||||
gfx::ElideBehavior GetElideBehavior() const;
|
||||
void SetElideBehavior(gfx::ElideBehavior elide_behavior);
|
||||
|
||||
@@ -221,7 +221,7 @@ index ce169b164bc7..743509aa6acb 100644
|
||||
// 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
|
||||
@@ -396,6 +400,7 @@ class VIEWS_EXPORT Label : public View,
|
||||
@@ -409,6 +413,7 @@ class VIEWS_EXPORT Label : public View,
|
||||
bool collapse_when_hidden_;
|
||||
int fixed_width_;
|
||||
int max_width_;
|
||||
@@ -230,10 +230,10 @@ index ce169b164bc7..743509aa6acb 100644
|
||||
std::unique_ptr<SelectionController> selection_controller_;
|
||||
|
||||
diff --git ui/views/controls/menu/menu_controller.cc ui/views/controls/menu/menu_controller.cc
|
||||
index 354216cafea8..16ec7b4c4c3f 100644
|
||||
index ee4fbf418def..12bd665da4ce 100644
|
||||
--- ui/views/controls/menu/menu_controller.cc
|
||||
+++ ui/views/controls/menu/menu_controller.cc
|
||||
@@ -2571,8 +2571,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem(
|
||||
@@ -2614,8 +2614,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem(
|
||||
|
||||
void MenuController::OpenSubmenuChangeSelectionIfCan() {
|
||||
MenuItemView* item = pending_state_.item;
|
||||
@@ -248,7 +248,7 @@ index 354216cafea8..16ec7b4c4c3f 100644
|
||||
MenuItemView* to_select = nullptr;
|
||||
if (!item->GetSubmenu()->GetMenuItems().empty())
|
||||
to_select = FindInitialSelectableMenuItem(item, INCREMENT_SELECTION_DOWN);
|
||||
@@ -2591,8 +2596,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() {
|
||||
@@ -2634,8 +2639,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() {
|
||||
void MenuController::CloseSubmenu() {
|
||||
MenuItemView* item = state_.item;
|
||||
DCHECK(item);
|
||||
@@ -300,10 +300,10 @@ index bdbd9c7e37b8..86138fd1d21c 100644
|
||||
virtual int GetMaxWidthForMenu(MenuItemView* menu);
|
||||
|
||||
diff --git ui/views/controls/menu/menu_item_view.cc ui/views/controls/menu/menu_item_view.cc
|
||||
index c8a32b58cf7d..9d67171c89a8 100644
|
||||
index a37e13686535..cb0d3fb5ef45 100644
|
||||
--- ui/views/controls/menu/menu_item_view.cc
|
||||
+++ ui/views/controls/menu/menu_item_view.cc
|
||||
@@ -1057,6 +1057,15 @@ void MenuItemView::PaintBackground(gfx::Canvas* canvas,
|
||||
@@ -1065,6 +1065,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);
|
||||
@@ -319,7 +319,7 @@ index c8a32b58cf7d..9d67171c89a8 100644
|
||||
} else if (render_selection) {
|
||||
gfx::Rect item_bounds = GetLocalBounds();
|
||||
if (type_ == ACTIONABLE_SUBMENU) {
|
||||
@@ -1123,6 +1132,13 @@ void MenuItemView::PaintMinorIconAndText(
|
||||
@@ -1131,6 +1140,13 @@ void MenuItemView::PaintMinorIconAndText(
|
||||
}
|
||||
|
||||
SkColor MenuItemView::GetTextColor(bool minor, bool render_selection) const {
|
||||
@@ -334,10 +334,10 @@ index c8a32b58cf7d..9d67171c89a8 100644
|
||||
minor ? ui::NativeTheme::kColorId_MenuItemMinorTextColor
|
||||
: ui::NativeTheme::kColorId_EnabledMenuItemForegroundColor;
|
||||
diff --git ui/views/controls/menu/menu_model_adapter.cc ui/views/controls/menu/menu_model_adapter.cc
|
||||
index bae77a21e0d5..ac01a8a5c52c 100644
|
||||
index 09b72733e66d..4bcee9da5b8a 100644
|
||||
--- ui/views/controls/menu/menu_model_adapter.cc
|
||||
+++ ui/views/controls/menu/menu_model_adapter.cc
|
||||
@@ -225,6 +225,77 @@ bool MenuModelAdapter::IsItemChecked(int id) const {
|
||||
@@ -226,6 +226,77 @@ bool MenuModelAdapter::IsItemChecked(int id) const {
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -472,7 +472,7 @@ index 4f865802a6e9..42d047bd68ad 100644
|
||||
// Move the cursor because EnterNotify/LeaveNotify are generated with the
|
||||
// current mouse position as a result of XGrabPointer()
|
||||
diff --git ui/views/view.h ui/views/view.h
|
||||
index a4f2ba254fb0..8d76cfa46fa6 100644
|
||||
index 722b98d676ed..3c7e27cf6eb0 100644
|
||||
--- ui/views/view.h
|
||||
+++ ui/views/view.h
|
||||
@@ -22,6 +22,7 @@
|
||||
@@ -482,8 +482,8 @@ index a4f2ba254fb0..8d76cfa46fa6 100644
|
||||
+#include "base/supports_user_data.h"
|
||||
#include "build/build_config.h"
|
||||
#include "third_party/skia/include/core/SkPath.h"
|
||||
#include "ui/accessibility/ax_enums.mojom.h"
|
||||
@@ -275,7 +276,8 @@ class VIEWS_EXPORT View : public ui::LayerDelegate,
|
||||
#include "ui/accessibility/ax_enums.mojom-forward.h"
|
||||
@@ -274,7 +275,8 @@ class VIEWS_EXPORT View : public ui::LayerDelegate,
|
||||
public ui::EventTarget,
|
||||
public ui::EventHandler,
|
||||
public ui::PropertyHandler,
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git content/browser/renderer_host/render_widget_host_view_base.cc content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
index f41270e26278..38303c9c3ec8 100644
|
||||
index dbfcd1da5c85..5b3f20f18ea5 100644
|
||||
--- content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
+++ content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
@@ -577,6 +577,14 @@ float RenderWidgetHostViewBase::GetDeviceScaleFactor() {
|
||||
@@ -581,6 +581,14 @@ float RenderWidgetHostViewBase::GetDeviceScaleFactor() {
|
||||
return screen_info.device_scale_factor;
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ index f41270e26278..38303c9c3ec8 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 8e523d78e765..d951d8915864 100644
|
||||
index 2bd5d56bc37d..c14d9a858796 100644
|
||||
--- content/browser/renderer_host/render_widget_host_view_base.h
|
||||
+++ content/browser/renderer_host/render_widget_host_view_base.h
|
||||
@@ -71,6 +71,7 @@ class CursorManager;
|
||||
@@ -39,7 +39,7 @@ index 8e523d78e765..d951d8915864 100644
|
||||
|
||||
// Returns the focused RenderWidgetHost inside this |view|'s RWH.
|
||||
RenderWidgetHostImpl* GetFocusedWidget() const;
|
||||
@@ -125,6 +129,8 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -126,6 +130,8 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
void DisableAutoResize(const gfx::Size& new_size) override;
|
||||
bool IsScrollOffsetAtTop() override;
|
||||
float GetDeviceScaleFactor() final;
|
||||
@@ -48,7 +48,7 @@ index 8e523d78e765..d951d8915864 100644
|
||||
TouchSelectionControllerClientManager*
|
||||
GetTouchSelectionControllerClientManager() override;
|
||||
void SetRecordTabSwitchTimeRequest(base::TimeTicks start_time,
|
||||
@@ -479,6 +485,12 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -475,6 +481,12 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
// helps to position the full screen widget on the correct monitor.
|
||||
virtual void InitAsFullscreen(RenderWidgetHostView* reference_host_view) = 0;
|
||||
|
||||
@@ -61,19 +61,19 @@ index 8e523d78e765..d951d8915864 100644
|
||||
// Sets the cursor for this view to the one associated with the specified
|
||||
// cursor_type.
|
||||
virtual void UpdateCursor(const WebCursor& cursor) = 0;
|
||||
@@ -643,6 +655,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
@@ -639,6 +651,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
|
||||
bool is_currently_scrolling_viewport_ = false;
|
||||
|
||||
+ // True if the widget has a external parent view/window outside of the
|
||||
+ // Chromium-controlled view/window hierarchy.
|
||||
+ bool has_external_parent_;
|
||||
+ bool has_external_parent_ = false;
|
||||
+
|
||||
private:
|
||||
FRIEND_TEST_ALL_PREFIXES(
|
||||
BrowserSideFlingBrowserTest,
|
||||
diff --git content/browser/renderer_host/render_widget_host_view_event_handler.cc content/browser/renderer_host/render_widget_host_view_event_handler.cc
|
||||
index 21f93de01aa5..8b7ec41d94da 100644
|
||||
index caaec4aabb93..42067642c699 100644
|
||||
--- content/browser/renderer_host/render_widget_host_view_event_handler.cc
|
||||
+++ content/browser/renderer_host/render_widget_host_view_event_handler.cc
|
||||
@@ -32,6 +32,10 @@
|
||||
@@ -87,7 +87,7 @@ index 21f93de01aa5..8b7ec41d94da 100644
|
||||
#if defined(OS_WIN)
|
||||
#include "content/browser/frame_host/render_frame_host_impl.h"
|
||||
#include "content/public/common/context_menu_params.h"
|
||||
@@ -922,6 +926,14 @@ void RenderWidgetHostViewEventHandler::SetKeyboardFocus() {
|
||||
@@ -903,6 +907,14 @@ void RenderWidgetHostViewEventHandler::SetKeyboardFocus() {
|
||||
::SetFocus(hwnd);
|
||||
}
|
||||
}
|
||||
@@ -103,10 +103,10 @@ index 21f93de01aa5..8b7ec41d94da 100644
|
||||
// TODO(wjmaclean): can host_ ever be null?
|
||||
if (host_ && set_focus_on_mouse_down_or_key_event_) {
|
||||
diff --git content/public/browser/render_widget_host_view.h content/public/browser/render_widget_host_view.h
|
||||
index 07d4351d0a8a..4ad78ab76a7c 100644
|
||||
index 78e055820447..9f8a6fd1cd65 100644
|
||||
--- content/public/browser/render_widget_host_view.h
|
||||
+++ content/public/browser/render_widget_host_view.h
|
||||
@@ -246,6 +246,14 @@ class CONTENT_EXPORT RenderWidgetHostView {
|
||||
@@ -249,6 +249,14 @@ class CONTENT_EXPORT RenderWidgetHostView {
|
||||
// This must always return the same device scale factor as GetScreenInfo.
|
||||
virtual float GetDeviceScaleFactor() = 0;
|
||||
|
||||
@@ -122,10 +122,10 @@ index 07d4351d0a8a..4ad78ab76a7c 100644
|
||||
// Set the view's active state (i.e., tint state of controls).
|
||||
virtual void SetActive(bool active) = 0;
|
||||
diff --git ui/base/x/x11_window.cc ui/base/x/x11_window.cc
|
||||
index 7df0a3a8ed26..4078efb5ad10 100644
|
||||
index 1bb97da34481..f56a74312d67 100644
|
||||
--- ui/base/x/x11_window.cc
|
||||
+++ ui/base/x/x11_window.cc
|
||||
@@ -190,8 +190,12 @@ void XWindow::Init(const Configuration& config) {
|
||||
@@ -205,8 +205,12 @@ void XWindow::Init(const Configuration& config) {
|
||||
attribute_mask |= CWBorderPixel;
|
||||
swa.border_pixel = 0;
|
||||
|
||||
@@ -140,7 +140,7 @@ index 7df0a3a8ed26..4078efb5ad10 100644
|
||||
bounds_in_pixels_.height(),
|
||||
0, // border width
|
||||
diff --git ui/base/x/x11_window.h ui/base/x/x11_window.h
|
||||
index 97d8273414fa..b8784d044c61 100644
|
||||
index 9db97d2f5214..4eb41eaf12aa 100644
|
||||
--- ui/base/x/x11_window.h
|
||||
+++ ui/base/x/x11_window.h
|
||||
@@ -20,6 +20,7 @@
|
||||
@@ -151,14 +151,26 @@ index 97d8273414fa..b8784d044c61 100644
|
||||
#include "ui/gfx/x/x11.h"
|
||||
#include "ui/gfx/x/x11_types.h"
|
||||
|
||||
@@ -86,6 +87,7 @@ class COMPONENT_EXPORT(UI_BASE_X) XWindow {
|
||||
@@ -83,6 +84,7 @@ class COMPONENT_EXPORT(UI_BASE_X) XWindow {
|
||||
std::string wm_class_name;
|
||||
std::string wm_class_class;
|
||||
std::string wm_role_name;
|
||||
+ gfx::AcceleratedWidget parent_widget;
|
||||
+ gfx::AcceleratedWidget parent_widget = gfx::kNullAcceleratedWidget;
|
||||
};
|
||||
|
||||
explicit XWindow(Delegate* delegate);
|
||||
XWindow();
|
||||
diff --git ui/platform_window/x11/x11_window.cc ui/platform_window/x11/x11_window.cc
|
||||
index c181b69f49ac..9bb225975488 100644
|
||||
--- ui/platform_window/x11/x11_window.cc
|
||||
+++ ui/platform_window/x11/x11_window.cc
|
||||
@@ -66,6 +66,7 @@ ui::XWindow::Configuration ConvertInitPropertiesToXWindowConfig(
|
||||
config.wm_class_class = properties.wm_class_class;
|
||||
config.wm_role_name = properties.wm_role_name;
|
||||
config.activatable = properties.activatable;
|
||||
+ config.parent_widget = properties.parent_widget;
|
||||
return config;
|
||||
}
|
||||
|
||||
diff --git ui/views/widget/desktop_aura/desktop_screen_win.cc ui/views/widget/desktop_aura/desktop_screen_win.cc
|
||||
index 70553b153c44..ecd99bc78373 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_screen_win.cc
|
||||
@@ -172,19 +184,23 @@ index 70553b153c44..ecd99bc78373 100644
|
||||
aura::WindowTreeHost* host = window->GetHost();
|
||||
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 da401532ffbe..e878204e71db 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc
|
||||
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc
|
||||
@@ -78,6 +78,7 @@ void DesktopWindowTreeHostLinux::AddAdditionalInitProperties(
|
||||
properties->wm_class_name = params.wm_class_name;
|
||||
properties->wm_class_class = params.wm_class_class;
|
||||
properties->wm_role_name = params.wm_role_name;
|
||||
+ properties->parent_widget = params.parent_widget;
|
||||
}
|
||||
|
||||
} // namespace views
|
||||
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 7e31a1c159af..eb0451b8913a 100644
|
||||
index 0eedc2665313..1bbc2abc7514 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
||||
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
|
||||
@@ -95,6 +95,7 @@ DesktopWindowTreeHostWin::DesktopWindowTreeHostWin(
|
||||
should_animate_window_close_(false),
|
||||
pending_close_(false),
|
||||
has_non_client_view_(false),
|
||||
+ has_external_parent_(false),
|
||||
tooltip_(nullptr) {}
|
||||
|
||||
DesktopWindowTreeHostWin::~DesktopWindowTreeHostWin() {
|
||||
@@ -128,8 +129,12 @@ void DesktopWindowTreeHostWin::Init(const Widget::InitParams& params) {
|
||||
@@ -128,8 +128,12 @@ void DesktopWindowTreeHostWin::Init(const Widget::InitParams& params) {
|
||||
native_widget_delegate_);
|
||||
|
||||
HWND parent_hwnd = nullptr;
|
||||
@@ -198,7 +214,7 @@ index 7e31a1c159af..eb0451b8913a 100644
|
||||
|
||||
remove_standard_frame_ = params.remove_standard_frame;
|
||||
has_non_client_view_ = Widget::RequiresNonClientView(params.type);
|
||||
@@ -891,11 +896,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
|
||||
@@ -900,11 +904,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
|
||||
}
|
||||
|
||||
void DesktopWindowTreeHostWin::HandleNativeFocus(HWND last_focused_window) {
|
||||
@@ -217,7 +233,7 @@ index 7e31a1c159af..eb0451b8913a 100644
|
||||
|
||||
bool DesktopWindowTreeHostWin::HandleMouseEvent(ui::MouseEvent* event) {
|
||||
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_win.h ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
|
||||
index 335db0db49bb..7f60402ed086 100644
|
||||
index 335db0db49bb..35c30789741a 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
|
||||
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
|
||||
@@ -288,6 +288,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin
|
||||
@@ -226,68 +242,49 @@ index 335db0db49bb..7f60402ed086 100644
|
||||
|
||||
+ // True if the widget has a external parent view/window outside of the
|
||||
+ // Chromium-controlled view/window hierarchy.
|
||||
+ bool has_external_parent_;
|
||||
+ bool has_external_parent_ = false;
|
||||
+
|
||||
// Owned by TooltipController, but we need to forward events to it so we keep
|
||||
// a reference.
|
||||
corewm::TooltipWin* tooltip_;
|
||||
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
||||
index b03a5bc9d509..bcbf960a130e 100644
|
||||
index 2b6a9d013039..023e12b3a2bb 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
||||
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
|
||||
@@ -139,6 +139,7 @@ ui::XWindow::Configuration ConvertInitParamsToX11WindowConfig(
|
||||
config.wm_class_name = params.wm_class_name;
|
||||
config.wm_class_class = params.wm_class_class;
|
||||
config.wm_role_name = params.wm_role_name;
|
||||
+ config.parent_widget = params.parent_widget;
|
||||
@@ -247,6 +247,9 @@ void DesktopWindowTreeHostX11::Init(const Widget::InitParams& params) {
|
||||
window_parent_->window_children_.insert(this);
|
||||
}
|
||||
|
||||
return config;
|
||||
}
|
||||
@@ -246,6 +247,8 @@ std::vector<aura::Window*> DesktopWindowTreeHostX11::GetAllOpenWindows() {
|
||||
}
|
||||
|
||||
gfx::Rect DesktopWindowTreeHostX11::GetX11RootWindowBounds() const {
|
||||
+ if (!screen_bounds_.IsEmpty())
|
||||
+ return screen_bounds_;
|
||||
return x11_window_->bounds();
|
||||
}
|
||||
|
||||
@@ -540,6 +543,8 @@ void DesktopWindowTreeHostX11::GetWindowPlacement(
|
||||
}
|
||||
|
||||
gfx::Rect DesktopWindowTreeHostX11::GetWindowBoundsInScreen() const {
|
||||
+ if (!screen_bounds_.IsEmpty())
|
||||
+ return screen_bounds_;
|
||||
gfx::Rect bounds_in_pixels = x11_window_->bounds();
|
||||
return ToDIPRect(bounds_in_pixels);
|
||||
}
|
||||
@@ -954,6 +959,9 @@ void DesktopWindowTreeHostX11::SetBoundsInPixels(
|
||||
}
|
||||
|
||||
gfx::Point DesktopWindowTreeHostX11::GetLocationOnScreenInPixels() const {
|
||||
+ if (!screen_bounds_.IsEmpty())
|
||||
+ return screen_bounds_.origin();
|
||||
+
|
||||
return x11_window_->bounds().origin();
|
||||
}
|
||||
|
||||
@@ -1280,6 +1288,11 @@ void DesktopWindowTreeHostX11::InitX11Window(const Widget::InitParams& params) {
|
||||
config.background_color = background_color;
|
||||
config.prefer_dark_theme = linux_ui && linux_ui->PreferDarkTheme();
|
||||
config.icon = ViewsDelegate::GetInstance()->GetDefaultWindowIcon();
|
||||
+
|
||||
+ gfx::AcceleratedWidget parent_widget = config.parent_widget;
|
||||
+ if (parent_widget != gfx::kNullAcceleratedWidget)
|
||||
+ if (params.parent_widget != gfx::kNullAcceleratedWidget)
|
||||
+ has_external_parent_ = true;
|
||||
+
|
||||
x11_window_->Init(config);
|
||||
DesktopWindowTreeHostPlatform::Init(params);
|
||||
|
||||
// Disable compositing on tooltips as a workaround for
|
||||
// Set XEventDelegate to receive selection, drag&drop and raw key events.
|
||||
@@ -435,6 +438,18 @@ void DesktopWindowTreeHostX11::StackAtTop() {
|
||||
GetXWindow()->StackAtTop();
|
||||
}
|
||||
|
||||
+gfx::Rect DesktopWindowTreeHostX11::GetWindowBoundsInScreen() const {
|
||||
+ if (!screen_bounds_.IsEmpty())
|
||||
+ return screen_bounds_;
|
||||
+ return DesktopWindowTreeHostLinux::GetWindowBoundsInScreen();
|
||||
+}
|
||||
+
|
||||
+gfx::Point DesktopWindowTreeHostX11::GetLocationOnScreenInPixels() const {
|
||||
+ if (!screen_bounds_.IsEmpty())
|
||||
+ return screen_bounds_.origin();
|
||||
+ return DesktopWindowTreeHostLinux::GetLocationOnScreenInPixels();
|
||||
+}
|
||||
+
|
||||
void DesktopWindowTreeHostX11::GetWindowPlacement(
|
||||
gfx::Rect* bounds,
|
||||
ui::WindowShowState* show_state) const {
|
||||
diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
|
||||
index e32726ad4616..cad33f22bf74 100644
|
||||
index 09baef384772..8895a31c611b 100644
|
||||
--- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
|
||||
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
|
||||
@@ -102,6 +102,12 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
|
||||
@@ -98,6 +98,12 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 : public DesktopWindowTreeHostLinux,
|
||||
// be changed after.
|
||||
void SetVisualId(VisualID visual_id);
|
||||
|
||||
@@ -300,7 +297,16 @@ index e32726ad4616..cad33f22bf74 100644
|
||||
protected:
|
||||
// Overridden from DesktopWindowTreeHost:
|
||||
void Init(const Widget::InitParams& params) override;
|
||||
@@ -294,6 +300,13 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
|
||||
@@ -112,6 +118,8 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 : public DesktopWindowTreeHostLinux,
|
||||
void SetSize(const gfx::Size& requested_size) override;
|
||||
void StackAbove(aura::Window* window) override;
|
||||
void StackAtTop() override;
|
||||
+ gfx::Rect GetWindowBoundsInScreen() const override;
|
||||
+ gfx::Point GetLocationOnScreenInPixels() const override;
|
||||
void GetWindowPlacement(gfx::Rect* bounds,
|
||||
ui::WindowShowState* show_state) const override;
|
||||
gfx::Rect GetRestoredBounds() const override;
|
||||
@@ -255,6 +263,13 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 : public DesktopWindowTreeHostLinux,
|
||||
// behavior if > 0.
|
||||
ui::ZOrderLevel z_order_ = ui::ZOrderLevel::kNormal;
|
||||
|
||||
@@ -313,43 +319,46 @@ index e32726ad4616..cad33f22bf74 100644
|
||||
+
|
||||
DesktopDragDropClientAuraX11* drag_drop_client_ = nullptr;
|
||||
|
||||
std::unique_ptr<ui::EventHandler> x11_non_client_event_filter_;
|
||||
std::unique_ptr<WindowEventFilter> non_client_event_filter_;
|
||||
@@ -285,6 +300,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 : public DesktopWindowTreeHostLinux,
|
||||
|
||||
std::unique_ptr<CompositorObserver> compositor_observer_;
|
||||
|
||||
+ // True if the xwindow has already been destroyed.
|
||||
+ bool xwindow_destroyed_ = false;
|
||||
+
|
||||
// The display and the native X window hosting the root window.
|
||||
base::WeakPtrFactory<DesktopWindowTreeHostX11> close_widget_factory_{this};
|
||||
base::WeakPtrFactory<DesktopWindowTreeHostX11> weak_factory_{this};
|
||||
diff --git ui/views/widget/widget.cc ui/views/widget/widget.cc
|
||||
index 0cb75272c2ca..ef79679114d4 100644
|
||||
index 3e4c62c49f07..778c984b59b3 100644
|
||||
--- ui/views/widget/widget.cc
|
||||
+++ ui/views/widget/widget.cc
|
||||
@@ -157,6 +157,7 @@ Widget::InitParams::InitParams(Type type)
|
||||
use_system_default_icon(false),
|
||||
show_state(ui::SHOW_STATE_DEFAULT),
|
||||
parent(nullptr),
|
||||
+ parent_widget(gfx::kNullAcceleratedWidget),
|
||||
native_widget(nullptr),
|
||||
desktop_window_tree_host(nullptr),
|
||||
layer_type(ui::LAYER_TEXTURED),
|
||||
@@ -325,7 +326,7 @@ void Widget::Init(const InitParams& in_params) {
|
||||
@@ -304,7 +304,8 @@ void Widget::Init(InitParams params) {
|
||||
params.name = params.delegate->GetContentsView()->GetClassName();
|
||||
|
||||
params.child |= (params.type == InitParams::TYPE_CONTROL);
|
||||
- is_top_level_ = !params.child;
|
||||
+ is_top_level_ = !params.child || params.parent_widget;
|
||||
+ is_top_level_ = !params.child ||
|
||||
+ params.parent_widget != gfx::kNullAcceleratedWidget;
|
||||
|
||||
if (params.opacity == views::Widget::InitParams::INFER_OPACITY &&
|
||||
params.type != views::Widget::InitParams::TYPE_WINDOW) {
|
||||
@@ -389,7 +390,12 @@ void Widget::Init(const InitParams& in_params) {
|
||||
@@ -387,7 +388,12 @@ void Widget::Init(InitParams params) {
|
||||
}
|
||||
} else if (params.delegate) {
|
||||
SetContentsView(params.delegate->GetContentsView());
|
||||
- SetInitialBoundsForFramelessWindow(params.bounds);
|
||||
+ if (params.parent_widget) {
|
||||
} else if (delegate) {
|
||||
SetContentsView(delegate->GetContentsView());
|
||||
- SetInitialBoundsForFramelessWindow(bounds);
|
||||
+ if (params.parent_widget != gfx::kNullAcceleratedWidget) {
|
||||
+ // Set the bounds directly instead of applying an inset.
|
||||
+ SetBounds(params.bounds);
|
||||
+ SetBounds(bounds);
|
||||
+ } else {
|
||||
+ SetInitialBoundsForFramelessWindow(params.bounds);
|
||||
+ SetInitialBoundsForFramelessWindow(bounds);
|
||||
+ }
|
||||
}
|
||||
// TODO(https://crbug.com/953978): Use GetNativeTheme() for all platforms.
|
||||
#if defined(OS_MACOSX) || defined(OS_WIN)
|
||||
@@ -1175,10 +1181,16 @@ void Widget::OnNativeWidgetDestroyed() {
|
||||
@@ -1174,10 +1180,16 @@ void Widget::OnNativeWidgetDestroyed() {
|
||||
}
|
||||
|
||||
gfx::Size Widget::GetMinimumSize() const {
|
||||
@@ -367,19 +376,20 @@ index 0cb75272c2ca..ef79679114d4 100644
|
||||
}
|
||||
|
||||
diff --git ui/views/widget/widget.h ui/views/widget/widget.h
|
||||
index 83ba608199b4..546cbe32020c 100644
|
||||
index 4d622c392db3..a610bff37782 100644
|
||||
--- ui/views/widget/widget.h
|
||||
+++ ui/views/widget/widget.h
|
||||
@@ -259,6 +259,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
|
||||
// Whether the widget should be maximized or minimized.
|
||||
ui::WindowShowState show_state;
|
||||
gfx::NativeView parent;
|
||||
+ gfx::AcceleratedWidget parent_widget;
|
||||
@@ -284,6 +284,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
|
||||
|
||||
gfx::NativeView parent = nullptr;
|
||||
|
||||
+ gfx::AcceleratedWidget parent_widget = gfx::kNullAcceleratedWidget;
|
||||
+
|
||||
// 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
|
||||
diff --git ui/views/widget/widget_delegate.h ui/views/widget/widget_delegate.h
|
||||
index 77585733e699..77c5db949902 100644
|
||||
index e71776db8db7..783bf1f45bdb 100644
|
||||
--- ui/views/widget/widget_delegate.h
|
||||
+++ ui/views/widget/widget_delegate.h
|
||||
@@ -191,6 +191,10 @@ class VIEWS_EXPORT WidgetDelegate {
|
||||
@@ -407,10 +417,10 @@ index 9edfa2c00c4b..8a9217578609 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 9b683f301913..8609f61ebd0f 100644
|
||||
index 67202004ea3a..50e240bdb6c8 100644
|
||||
--- ui/views/win/hwnd_message_handler.cc
|
||||
+++ ui/views/win/hwnd_message_handler.cc
|
||||
@@ -2963,10 +2963,13 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
|
||||
@@ -2972,10 +2972,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.
|
||||
|
@@ -29,7 +29,7 @@ index f5e18df4e06e..58a8e8ef125b 100644
|
||||
#if defined(USE_X11)
|
||||
void HostDisplayClient::DidCompleteSwapWithNewSize(const gfx::Size& size) {
|
||||
diff --git components/viz/host/host_display_client.h components/viz/host/host_display_client.h
|
||||
index 5e5c5da4a3cf..30eca49765bd 100644
|
||||
index b8177277ebca..955e5a146be5 100644
|
||||
--- components/viz/host/host_display_client.h
|
||||
+++ components/viz/host/host_display_client.h
|
||||
@@ -30,17 +30,17 @@ class VIZ_HOST_EXPORT HostDisplayClient : public mojom::DisplayClient {
|
||||
@@ -67,7 +67,7 @@ index 65c26e2f7ae8..e0f60e2ac25e 100644
|
||||
|
||||
if (!canvas_) {
|
||||
diff --git components/viz/host/layered_window_updater_impl.h components/viz/host/layered_window_updater_impl.h
|
||||
index d9a9730a78b9..d98426e9f789 100644
|
||||
index ced30727ab67..f422786fe6cd 100644
|
||||
--- components/viz/host/layered_window_updater_impl.h
|
||||
+++ components/viz/host/layered_window_updater_impl.h
|
||||
@@ -33,7 +33,7 @@ class VIZ_HOST_EXPORT LayeredWindowUpdaterImpl
|
||||
@@ -80,7 +80,7 @@ index d9a9730a78b9..d98426e9f789 100644
|
||||
private:
|
||||
const HWND hwnd_;
|
||||
diff --git components/viz/service/BUILD.gn components/viz/service/BUILD.gn
|
||||
index fdd358f741e6..57afa1d3855e 100644
|
||||
index a3fc1b3bdc9c..33f2b5206ca2 100644
|
||||
--- components/viz/service/BUILD.gn
|
||||
+++ components/viz/service/BUILD.gn
|
||||
@@ -13,6 +13,8 @@ config("viz_service_implementation") {
|
||||
@@ -93,7 +93,7 @@ index fdd358f741e6..57afa1d3855e 100644
|
||||
"display/bsp_tree.h",
|
||||
"display/bsp_walk_action.cc",
|
||||
diff --git components/viz/service/display_embedder/output_surface_provider_impl.cc components/viz/service/display_embedder/output_surface_provider_impl.cc
|
||||
index 7f61cb7c847b..f1e3f2fec151 100644
|
||||
index e3c8e9dbca69..5ee6f60584d1 100644
|
||||
--- components/viz/service/display_embedder/output_surface_provider_impl.cc
|
||||
+++ components/viz/service/display_embedder/output_surface_provider_impl.cc
|
||||
@@ -12,6 +12,7 @@
|
||||
@@ -104,7 +104,7 @@ index 7f61cb7c847b..f1e3f2fec151 100644
|
||||
#include "components/viz/common/display/renderer_settings.h"
|
||||
#include "components/viz/common/frame_sinks/begin_frame_source.h"
|
||||
#include "components/viz/service/display_embedder/gl_output_surface.h"
|
||||
@@ -219,6 +220,20 @@ OutputSurfaceProviderImpl::CreateSoftwareOutputDeviceForPlatform(
|
||||
@@ -223,6 +224,20 @@ OutputSurfaceProviderImpl::CreateSoftwareOutputDeviceForPlatform(
|
||||
if (headless_)
|
||||
return std::make_unique<SoftwareOutputDevice>();
|
||||
|
||||
@@ -126,7 +126,7 @@ index 7f61cb7c847b..f1e3f2fec151 100644
|
||||
return CreateSoftwareOutputDeviceWin(surface_handle, &output_device_backing_,
|
||||
display_client);
|
||||
diff --git components/viz/service/display_embedder/software_output_device_win.cc components/viz/service/display_embedder/software_output_device_win.cc
|
||||
index 73ea1986b214..d437e045de2f 100644
|
||||
index 74316edc0e0b..14c9339027a2 100644
|
||||
--- components/viz/service/display_embedder/software_output_device_win.cc
|
||||
+++ components/viz/service/display_embedder/software_output_device_win.cc
|
||||
@@ -265,8 +265,9 @@ void SoftwareOutputDeviceWinProxy::EndPaintDelegated(
|
||||
@@ -142,10 +142,10 @@ index 73ea1986b214..d437e045de2f 100644
|
||||
|
||||
TRACE_EVENT_ASYNC_BEGIN0("viz", "SoftwareOutputDeviceWinProxy::Draw", this);
|
||||
diff --git mojo/public/cpp/bindings/sync_call_restrictions.h mojo/public/cpp/bindings/sync_call_restrictions.h
|
||||
index 906be544c90f..a110f254d7ec 100644
|
||||
index f273901017ad..c04e4bcea80f 100644
|
||||
--- mojo/public/cpp/bindings/sync_call_restrictions.h
|
||||
+++ mojo/public/cpp/bindings/sync_call_restrictions.h
|
||||
@@ -34,6 +34,7 @@ class HostContextFactoryPrivate;
|
||||
@@ -33,6 +33,7 @@ class HostContextFactoryPrivate;
|
||||
|
||||
namespace viz {
|
||||
class HostFrameSinkManager;
|
||||
@@ -153,7 +153,7 @@ index 906be544c90f..a110f254d7ec 100644
|
||||
}
|
||||
|
||||
namespace mojo {
|
||||
@@ -91,6 +92,8 @@ class COMPONENT_EXPORT(MOJO_CPP_BINDINGS) SyncCallRestrictions {
|
||||
@@ -88,6 +89,8 @@ class COMPONENT_EXPORT(MOJO_CPP_BINDINGS) SyncCallRestrictions {
|
||||
// For preventing frame swaps of wrong size during resize on Windows.
|
||||
// (https://crbug.com/811945)
|
||||
friend class ui::HostContextFactoryPrivate;
|
||||
@@ -162,10 +162,10 @@ index 906be544c90f..a110f254d7ec 100644
|
||||
// END ALLOWED USAGE.
|
||||
|
||||
#if ENABLE_SYNC_CALL_RESTRICTIONS
|
||||
diff --git services/viz/privileged/interfaces/compositing/display_private.mojom services/viz/privileged/interfaces/compositing/display_private.mojom
|
||||
index 8898b9162a65..3a93996f9893 100644
|
||||
--- services/viz/privileged/interfaces/compositing/display_private.mojom
|
||||
+++ services/viz/privileged/interfaces/compositing/display_private.mojom
|
||||
diff --git services/viz/privileged/mojom/compositing/display_private.mojom services/viz/privileged/mojom/compositing/display_private.mojom
|
||||
index 5c6292cfb3b8..c85a4c8991de 100644
|
||||
--- services/viz/privileged/mojom/compositing/display_private.mojom
|
||||
+++ services/viz/privileged/mojom/compositing/display_private.mojom
|
||||
@@ -79,12 +79,14 @@ interface DisplayPrivate {
|
||||
};
|
||||
|
||||
@@ -182,10 +182,10 @@ index 8898b9162a65..3a93996f9893 100644
|
||||
CreateLayeredWindowUpdater(LayeredWindowUpdater& layered_window_updater);
|
||||
|
||||
// Notifies that a swap has occurred and provides information about the pixel
|
||||
diff --git services/viz/privileged/interfaces/compositing/layered_window_updater.mojom services/viz/privileged/interfaces/compositing/layered_window_updater.mojom
|
||||
index 58a7e221eaab..dd141b16eace 100644
|
||||
--- services/viz/privileged/interfaces/compositing/layered_window_updater.mojom
|
||||
+++ services/viz/privileged/interfaces/compositing/layered_window_updater.mojom
|
||||
diff --git services/viz/privileged/mojom/compositing/layered_window_updater.mojom services/viz/privileged/mojom/compositing/layered_window_updater.mojom
|
||||
index 6b7fbb6cf13d..e2af75168cb9 100644
|
||||
--- services/viz/privileged/mojom/compositing/layered_window_updater.mojom
|
||||
+++ services/viz/privileged/mojom/compositing/layered_window_updater.mojom
|
||||
@@ -26,5 +26,5 @@ interface LayeredWindowUpdater {
|
||||
// Draws to the HWND by copying pixels from shared memory. Callback must be
|
||||
// called after draw operation is complete to signal shared memory can be
|
||||
@@ -194,7 +194,7 @@ index 58a7e221eaab..dd141b16eace 100644
|
||||
+ Draw(gfx.mojom.Rect damage_rect) => ();
|
||||
};
|
||||
diff --git ui/compositor/compositor.h ui/compositor/compositor.h
|
||||
index 5158731bd851..07d3bda5f6ff 100644
|
||||
index ff4562c024be..9e964381f904 100644
|
||||
--- ui/compositor/compositor.h
|
||||
+++ ui/compositor/compositor.h
|
||||
@@ -23,7 +23,9 @@
|
||||
@@ -204,7 +204,7 @@ index 5158731bd851..07d3bda5f6ff 100644
|
||||
+#include "components/viz/host/host_display_client.h"
|
||||
#include "components/viz/host/host_frame_sink_client.h"
|
||||
+#include "components/viz/service/display/software_output_device.h"
|
||||
#include "services/viz/privileged/interfaces/compositing/vsync_parameter_observer.mojom-forward.h"
|
||||
#include "services/viz/privileged/mojom/compositing/vsync_parameter_observer.mojom-forward.h"
|
||||
#include "third_party/skia/include/core/SkColor.h"
|
||||
#include "third_party/skia/include/core/SkMatrix44.h"
|
||||
@@ -194,6 +196,14 @@ class COMPOSITOR_EXPORT ContextFactory {
|
||||
@@ -232,7 +232,7 @@ index 5158731bd851..07d3bda5f6ff 100644
|
||||
// Sets the root of the layer tree drawn by this Compositor. The root layer
|
||||
// must have no parent. The compositor's root layer is reset if the root layer
|
||||
// is destroyed. NULL can be passed to reset the root layer, in which case the
|
||||
@@ -448,6 +461,8 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient,
|
||||
@@ -450,6 +463,8 @@ class COMPOSITOR_EXPORT Compositor : public cc::LayerTreeHostClient,
|
||||
ui::ContextFactory* context_factory_;
|
||||
ui::ContextFactoryPrivate* context_factory_private_;
|
||||
|
||||
@@ -242,10 +242,10 @@ index 5158731bd851..07d3bda5f6ff 100644
|
||||
Layer* root_layer_ = nullptr;
|
||||
|
||||
diff --git ui/compositor/host/host_context_factory_private.cc ui/compositor/host/host_context_factory_private.cc
|
||||
index 1c84de621781..3ebde59a8041 100644
|
||||
index d32c154b965b..b5ba8426670f 100644
|
||||
--- ui/compositor/host/host_context_factory_private.cc
|
||||
+++ ui/compositor/host/host_context_factory_private.cc
|
||||
@@ -99,8 +99,13 @@ void HostContextFactoryPrivate::ConfigureCompositor(
|
||||
@@ -98,8 +98,13 @@ void HostContextFactoryPrivate::ConfigureCompositor(
|
||||
mojo::MakeRequest(&root_params->compositor_frame_sink_client);
|
||||
root_params->display_private =
|
||||
mojo::MakeRequest(&compositor_data.display_private);
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git content/browser/web_contents/web_contents_impl.cc content/browser/web_contents/web_contents_impl.cc
|
||||
index ae1bcfa7db7d..0ff65dcfe38f 100644
|
||||
index a4e4a612d82c..3bf880312d5e 100644
|
||||
--- content/browser/web_contents/web_contents_impl.cc
|
||||
+++ content/browser/web_contents/web_contents_impl.cc
|
||||
@@ -2131,21 +2131,30 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
|
||||
@@ -2137,21 +2137,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 ae1bcfa7db7d..0ff65dcfe38f 100644
|
||||
CHECK(render_view_host_delegate_view_);
|
||||
CHECK(view_.get());
|
||||
|
||||
@@ -2844,6 +2853,15 @@ void WebContentsImpl::CreateNewWindow(
|
||||
@@ -2852,6 +2861,15 @@ void WebContentsImpl::CreateNewWindow(
|
||||
create_params.renderer_initiated_creation =
|
||||
main_frame_route_id != MSG_ROUTING_NONE;
|
||||
|
||||
@@ -61,16 +61,16 @@ index ae1bcfa7db7d..0ff65dcfe38f 100644
|
||||
std::unique_ptr<WebContents> new_contents;
|
||||
if (!is_guest) {
|
||||
create_params.context = view_->GetNativeView();
|
||||
@@ -2876,7 +2894,7 @@ void WebContentsImpl::CreateNewWindow(
|
||||
@@ -2884,7 +2902,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(
|
||||
RenderWidgetHostView* widget_view = new_view->CreateViewForWidget(
|
||||
- new_contents_impl->GetRenderViewHost()->GetWidget(), false);
|
||||
+ new_contents_impl->GetRenderViewHost()->GetWidget(), nullptr);
|
||||
}
|
||||
// Save the created window associated with the route so we can show it
|
||||
// later.
|
||||
@@ -6516,7 +6534,7 @@ InterstitialPageImpl* WebContentsImpl::GetInterstitialForRenderManager() {
|
||||
if (!renderer_started_hidden) {
|
||||
// RenderWidgets for frames always initialize as hidden. If the renderer
|
||||
// created this window as visible, then we show it here.
|
||||
@@ -6544,7 +6562,7 @@ InterstitialPageImpl* WebContentsImpl::GetInterstitialForRenderManager() {
|
||||
void WebContentsImpl::CreateRenderWidgetHostViewForRenderManager(
|
||||
RenderViewHost* render_view_host) {
|
||||
RenderWidgetHostViewBase* rwh_view =
|
||||
@@ -95,10 +95,10 @@ index df508da0aef2..f6f4bf42b108 100644
|
||||
WebContents::CreateParams::CreateParams(const CreateParams& other) = default;
|
||||
|
||||
diff --git content/public/browser/web_contents.h content/public/browser/web_contents.h
|
||||
index 50236e972100..8c09c1b53d27 100644
|
||||
index b5ff1cc5d6f6..f1a2ba836ea1 100644
|
||||
--- content/public/browser/web_contents.h
|
||||
+++ content/public/browser/web_contents.h
|
||||
@@ -76,9 +76,11 @@ class BrowserPluginGuestDelegate;
|
||||
@@ -78,9 +78,11 @@ class BrowserPluginGuestDelegate;
|
||||
class InterstitialPage;
|
||||
class RenderFrameHost;
|
||||
class RenderViewHost;
|
||||
@@ -110,7 +110,7 @@ index 50236e972100..8c09c1b53d27 100644
|
||||
struct CustomContextMenuContext;
|
||||
struct DropData;
|
||||
struct MHTMLGenerationParams;
|
||||
@@ -217,6 +219,10 @@ class WebContents : public PageNavigator,
|
||||
@@ -219,6 +221,10 @@ class WebContents : public PageNavigator,
|
||||
// Sandboxing flags set on the new WebContents.
|
||||
blink::WebSandboxFlags starting_sandbox_flags;
|
||||
|
||||
@@ -122,10 +122,10 @@ index 50236e972100..8c09c1b53d27 100644
|
||||
// the value that'll be returned by GetLastActiveTime(). If this is left
|
||||
// default initialized then the value is not passed on to the WebContents
|
||||
diff --git content/public/browser/web_contents_delegate.h content/public/browser/web_contents_delegate.h
|
||||
index 23c2a2bdaa77..67fd2a66cab4 100644
|
||||
index 70afb5357631..d78b15c3a83b 100644
|
||||
--- content/public/browser/web_contents_delegate.h
|
||||
+++ content/public/browser/web_contents_delegate.h
|
||||
@@ -59,10 +59,12 @@ class FileSelectListener;
|
||||
@@ -58,10 +58,12 @@ class FileSelectListener;
|
||||
class JavaScriptDialogManager;
|
||||
class RenderFrameHost;
|
||||
class RenderProcessHost;
|
||||
@@ -138,7 +138,7 @@ index 23c2a2bdaa77..67fd2a66cab4 100644
|
||||
struct ContextMenuParams;
|
||||
struct DropData;
|
||||
struct NativeWebKeyboardEvent;
|
||||
@@ -334,6 +336,14 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
@@ -333,6 +335,14 @@ class CONTENT_EXPORT WebContentsDelegate {
|
||||
const std::string& partition_id,
|
||||
SessionStorageNamespace* session_storage_namespace);
|
||||
|
||||
|
@@ -10,10 +10,10 @@ index ff7a8ed89e94..77f44956ff22 100644
|
||||
+ GetPlugins(bool refresh, bool is_main_frame, url.mojom.Origin main_frame_origin) => (array<PluginInfo> plugins);
|
||||
};
|
||||
diff --git third_party/blink/public/platform/platform.h third_party/blink/public/platform/platform.h
|
||||
index 9ae02783be95..b64538cbe8b6 100644
|
||||
index 68051e35252c..bda59d747a62 100644
|
||||
--- third_party/blink/public/platform/platform.h
|
||||
+++ third_party/blink/public/platform/platform.h
|
||||
@@ -685,6 +685,11 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
@@ -731,6 +731,11 @@ class BLINK_PLATFORM_EXPORT Platform {
|
||||
// runs during Chromium's build step).
|
||||
virtual bool IsTakingV8ContextSnapshot() { return false; }
|
||||
|
||||
@@ -44,10 +44,10 @@ index 80a9ec9bc75b..13cbb056cdfa 100644
|
||||
.Top()
|
||||
.GetSecurityContext()
|
||||
diff --git third_party/blink/renderer/core/frame/local_frame.cc third_party/blink/renderer/core/frame/local_frame.cc
|
||||
index 60b3fe655dc8..8dedb75b8d8b 100644
|
||||
index 52f56794f2ed..9bbef168e262 100644
|
||||
--- third_party/blink/renderer/core/frame/local_frame.cc
|
||||
+++ third_party/blink/renderer/core/frame/local_frame.cc
|
||||
@@ -1182,7 +1182,7 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
|
||||
@@ -1236,7 +1236,7 @@ WebContentSettingsClient* LocalFrame::GetContentSettingsClient() {
|
||||
PluginData* LocalFrame::GetPluginData() const {
|
||||
if (!Loader().AllowPlugins(kNotAboutToInstantiatePlugin))
|
||||
return nullptr;
|
||||
@@ -57,18 +57,18 @@ index 60b3fe655dc8..8dedb75b8d8b 100644
|
||||
}
|
||||
|
||||
diff --git third_party/blink/renderer/core/inspector/devtools_session.cc third_party/blink/renderer/core/inspector/devtools_session.cc
|
||||
index 789b09417ceb..56d60ee8cb70 100644
|
||||
index 3f0763384089..6919c6f0b2b8 100644
|
||||
--- third_party/blink/renderer/core/inspector/devtools_session.cc
|
||||
+++ third_party/blink/renderer/core/inspector/devtools_session.cc
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "third_party/blink/renderer/core/inspector/devtools_session.h"
|
||||
@@ -9,6 +9,7 @@
|
||||
#include <vector>
|
||||
|
||||
#include "base/containers/span.h"
|
||||
+#include "third_party/blink/public/platform/platform.h"
|
||||
#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"
|
||||
@@ -184,6 +185,7 @@ DevToolsSession::DevToolsSession(
|
||||
@@ -188,6 +189,7 @@ DevToolsSession::DevToolsSession(
|
||||
for (wtf_size_t i = 0; i < agents_.size(); i++)
|
||||
agents_[i]->Restore();
|
||||
}
|
||||
@@ -76,7 +76,7 @@ index 789b09417ceb..56d60ee8cb70 100644
|
||||
}
|
||||
|
||||
DevToolsSession::~DevToolsSession() {
|
||||
@@ -223,6 +225,7 @@ void DevToolsSession::Detach() {
|
||||
@@ -227,6 +229,7 @@ void DevToolsSession::Detach() {
|
||||
agents_.clear();
|
||||
v8_session_.reset();
|
||||
agent_->client_->DebuggerTaskFinished();
|
||||
@@ -85,10 +85,10 @@ index 789b09417ceb..56d60ee8cb70 100644
|
||||
|
||||
void DevToolsSession::FlushProtocolNotifications() {
|
||||
diff --git third_party/blink/renderer/core/page/page.cc third_party/blink/renderer/core/page/page.cc
|
||||
index d3f15ac9569d..6823265f1ff0 100644
|
||||
index 5b2c09a61111..858725e57438 100644
|
||||
--- third_party/blink/renderer/core/page/page.cc
|
||||
+++ third_party/blink/renderer/core/page/page.cc
|
||||
@@ -185,7 +185,8 @@ Page::Page(PageClients& page_clients)
|
||||
@@ -183,7 +183,8 @@ Page::Page(PageClients& page_clients)
|
||||
MakeGarbageCollected<OverscrollController>(GetVisualViewport(),
|
||||
GetChromeClient())),
|
||||
link_highlights_(MakeGarbageCollected<LinkHighlights>(*this)),
|
||||
@@ -98,7 +98,7 @@ index d3f15ac9569d..6823265f1ff0 100644
|
||||
// TODO(pdr): Initialize |validation_message_client_| lazily.
|
||||
validation_message_client_(
|
||||
MakeGarbageCollected<ValidationMessageClientImpl>(*this)),
|
||||
@@ -345,21 +346,40 @@ void Page::InitialStyleChanged() {
|
||||
@@ -343,21 +344,40 @@ void Page::InitialStyleChanged() {
|
||||
}
|
||||
}
|
||||
|
||||
@@ -148,7 +148,7 @@ index d3f15ac9569d..6823265f1ff0 100644
|
||||
page->NotifyPluginsChanged();
|
||||
}
|
||||
}
|
||||
@@ -832,7 +852,8 @@ void Page::Trace(blink::Visitor* visitor) {
|
||||
@@ -830,7 +850,8 @@ void Page::Trace(blink::Visitor* visitor) {
|
||||
visitor->Trace(link_highlights_);
|
||||
visitor->Trace(spatial_navigation_controller_);
|
||||
visitor->Trace(main_frame_);
|
||||
@@ -159,10 +159,10 @@ index d3f15ac9569d..6823265f1ff0 100644
|
||||
visitor->Trace(plugins_changed_observers_);
|
||||
visitor->Trace(next_related_page_);
|
||||
diff --git third_party/blink/renderer/core/page/page.h third_party/blink/renderer/core/page/page.h
|
||||
index cc3fa3e02fad..bfb8986958ba 100644
|
||||
index 9f70ee045546..aad92d9e2e90 100644
|
||||
--- third_party/blink/renderer/core/page/page.h
|
||||
+++ third_party/blink/renderer/core/page/page.h
|
||||
@@ -141,7 +141,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized<Page>,
|
||||
@@ -140,7 +140,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized<Page>,
|
||||
ViewportDescription GetViewportDescription() const;
|
||||
|
||||
// Returns the plugin data associated with |main_frame_origin|.
|
||||
@@ -172,7 +172,7 @@ index cc3fa3e02fad..bfb8986958ba 100644
|
||||
|
||||
// Resets the plugin data for all pages in the renderer process and notifies
|
||||
// PluginsChangedObservers.
|
||||
@@ -374,7 +375,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized<Page>,
|
||||
@@ -371,7 +372,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized<Page>,
|
||||
const Member<LinkHighlights> link_highlights_;
|
||||
Member<SpatialNavigationController> spatial_navigation_controller_;
|
||||
|
||||
@@ -183,12 +183,12 @@ index cc3fa3e02fad..bfb8986958ba 100644
|
||||
Member<ValidationMessageClient> validation_message_client_;
|
||||
|
||||
diff --git third_party/blink/renderer/core/page/plugin_data.cc third_party/blink/renderer/core/page/plugin_data.cc
|
||||
index 53a380945307..ae05d1ae36ee 100644
|
||||
index 7ea0e09e47a0..69a5c8f8e3d5 100644
|
||||
--- third_party/blink/renderer/core/page/plugin_data.cc
|
||||
+++ third_party/blink/renderer/core/page/plugin_data.cc
|
||||
@@ -90,10 +90,12 @@ void PluginData::RefreshBrowserSidePluginCache() {
|
||||
@@ -91,10 +91,12 @@ void PluginData::RefreshBrowserSidePluginCache() {
|
||||
Platform::Current()->GetInterfaceProvider()->GetInterface(
|
||||
mojo::MakeRequest(®istry));
|
||||
registry.BindNewPipeAndPassReceiver());
|
||||
Vector<mojom::blink::PluginInfoPtr> plugins;
|
||||
- registry->GetPlugins(true, SecurityOrigin::CreateUniqueOpaque(), &plugins);
|
||||
+ registry->GetPlugins(true, true, SecurityOrigin::CreateUniqueOpaque(),
|
||||
@@ -201,9 +201,9 @@ index 53a380945307..ae05d1ae36ee 100644
|
||||
ResetPluginData();
|
||||
main_frame_origin_ = main_frame_origin;
|
||||
|
||||
@@ -101,7 +103,7 @@ void PluginData::UpdatePluginList(const SecurityOrigin* main_frame_origin) {
|
||||
@@ -102,7 +104,7 @@ void PluginData::UpdatePluginList(const SecurityOrigin* main_frame_origin) {
|
||||
Platform::Current()->GetInterfaceProvider()->GetInterface(
|
||||
mojo::MakeRequest(®istry));
|
||||
registry.BindNewPipeAndPassReceiver());
|
||||
Vector<mojom::blink::PluginInfoPtr> plugins;
|
||||
- registry->GetPlugins(false, main_frame_origin_, &plugins);
|
||||
+ registry->GetPlugins(false, is_main_frame, main_frame_origin_, &plugins);
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git third_party/blink/renderer/core/input/pointer_event_manager.cc third_party/blink/renderer/core/input/pointer_event_manager.cc
|
||||
index 1ccbd3b948f0..98a67619990d 100644
|
||||
index 152866713e16..89bca464b90b 100644
|
||||
--- third_party/blink/renderer/core/input/pointer_event_manager.cc
|
||||
+++ third_party/blink/renderer/core/input/pointer_event_manager.cc
|
||||
@@ -312,7 +312,7 @@ void PointerEventManager::HandlePointerInterruption(
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git third_party/blink/public/web/web_view.h third_party/blink/public/web/web_view.h
|
||||
index 20bd110babb1..4f5301c77bda 100644
|
||||
index db7d7c87686a..a7c6beb6a6f1 100644
|
||||
--- third_party/blink/public/web/web_view.h
|
||||
+++ third_party/blink/public/web/web_view.h
|
||||
@@ -371,6 +371,7 @@ class WebView {
|
||||
@@ -366,6 +366,7 @@ class WebView {
|
||||
|
||||
// Sets whether select popup menus should be rendered by the browser.
|
||||
BLINK_EXPORT static void SetUseExternalPopupMenus(bool);
|
||||
@@ -11,10 +11,10 @@ index 20bd110babb1..4f5301c77bda 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 414e7de22b08..9db9ea786e27 100644
|
||||
index 58e4fbcf6ee2..51f2645e6154 100644
|
||||
--- third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
+++ third_party/blink/renderer/core/exported/web_view_impl.cc
|
||||
@@ -217,8 +217,13 @@ void WebView::SetUseExternalPopupMenus(bool use_external_popup_menus) {
|
||||
@@ -219,8 +219,13 @@ void WebView::SetUseExternalPopupMenus(bool use_external_popup_menus) {
|
||||
g_should_use_external_popup_menus = use_external_popup_menus;
|
||||
}
|
||||
|
||||
@@ -30,7 +30,7 @@ index 414e7de22b08..9db9ea786e27 100644
|
||||
}
|
||||
|
||||
namespace {
|
||||
@@ -276,6 +281,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client,
|
||||
@@ -278,6 +283,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client,
|
||||
chrome_client_(MakeGarbageCollected<ChromeClientImpl>(this)),
|
||||
minimum_zoom_level_(ZoomFactorToZoomLevel(kMinTextSizeMultiplier)),
|
||||
maximum_zoom_level_(ZoomFactorToZoomLevel(kMaxTextSizeMultiplier)),
|
||||
@@ -39,10 +39,10 @@ index 414e7de22b08..9db9ea786e27 100644
|
||||
fullscreen_controller_(std::make_unique<FullscreenController>(this)) {
|
||||
if (!AsView().client) {
|
||||
diff --git third_party/blink/renderer/core/exported/web_view_impl.h third_party/blink/renderer/core/exported/web_view_impl.h
|
||||
index 720ea6fcfb7f..9116fbdcf673 100644
|
||||
index 61d54c30b50c..d08ad65454ac 100644
|
||||
--- third_party/blink/renderer/core/exported/web_view_impl.h
|
||||
+++ third_party/blink/renderer/core/exported/web_view_impl.h
|
||||
@@ -109,7 +109,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
|
||||
@@ -115,7 +115,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
|
||||
static HashSet<WebViewImpl*>& AllInstances();
|
||||
// Returns true if popup menus should be rendered by the browser, false if
|
||||
// they should be rendered by WebKit (which is the default).
|
||||
@@ -50,9 +50,9 @@ index 720ea6fcfb7f..9116fbdcf673 100644
|
||||
+ void SetUseExternalPopupMenusThisInstance(bool) override;
|
||||
+ bool UseExternalPopupMenus() const;
|
||||
|
||||
// Returns whether frames under this WebView are backed by a compositor. When
|
||||
// false there may be no WebWidgetClient present. When true, there must be a
|
||||
@@ -619,6 +620,8 @@ class CORE_EXPORT WebViewImpl final : public WebView,
|
||||
// Returns whether frames under this WebView are backed by a compositor.
|
||||
bool does_composite() const { return does_composite_; }
|
||||
@@ -617,6 +618,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,15 +62,15 @@ index 720ea6fcfb7f..9116fbdcf673 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 2df0aefc5764..6ef2dae97acd 100644
|
||||
index 6d90e9c8e0be..b9e56a2f48e5 100644
|
||||
--- third_party/blink/renderer/core/page/chrome_client_impl.cc
|
||||
+++ third_party/blink/renderer/core/page/chrome_client_impl.cc
|
||||
@@ -848,7 +848,7 @@ bool ChromeClientImpl::HasOpenedPopup() const {
|
||||
@@ -856,7 +856,7 @@ bool ChromeClientImpl::HasOpenedPopup() const {
|
||||
PopupMenu* ChromeClientImpl::OpenPopupMenu(LocalFrame& frame,
|
||||
HTMLSelectElement& select) {
|
||||
NotifyPopupOpeningObservers();
|
||||
- if (WebViewImpl::UseExternalPopupMenus())
|
||||
+ if (web_view_->UseExternalPopupMenus())
|
||||
return MakeGarbageCollected<ExternalPopupMenu>(frame, select, *web_view_);
|
||||
return MakeGarbageCollected<ExternalPopupMenu>(frame, select);
|
||||
|
||||
DCHECK(RuntimeEnabledFeatures::PagePopupEnabled());
|
||||
|
@@ -1,5 +1,5 @@
|
||||
diff --git chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc
|
||||
index 827f49d3a00f..2ddfbbab1ab7 100644
|
||||
index ab59df1d9b16..d8a853bd110c 100644
|
||||
--- chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc
|
||||
+++ chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc
|
||||
@@ -21,6 +21,7 @@
|
||||
@@ -10,7 +10,7 @@ index 827f49d3a00f..2ddfbbab1ab7 100644
|
||||
#include "components/prefs/pref_service.h"
|
||||
#include "components/sync/driver/about_sync_util.h"
|
||||
#include "components/sync/driver/sync_service.h"
|
||||
@@ -267,6 +268,10 @@ void ChromeInternalLogSource::Fetch(SysLogsSourceCallback callback) {
|
||||
@@ -269,6 +270,10 @@ void ChromeInternalLogSource::Fetch(SysLogsSourceCallback callback) {
|
||||
}
|
||||
|
||||
void ChromeInternalLogSource::PopulateSyncLogs(SystemLogsResponse* response) {
|
||||
@@ -21,7 +21,7 @@ index 827f49d3a00f..2ddfbbab1ab7 100644
|
||||
// We are only interested in sync logs for the primary user profile.
|
||||
Profile* profile = ProfileManager::GetPrimaryUserProfile();
|
||||
if (!profile || !ProfileSyncServiceFactory::HasSyncService(profile))
|
||||
@@ -309,6 +314,12 @@ void ChromeInternalLogSource::PopulateExtensionInfoLogs(
|
||||
@@ -311,6 +316,12 @@ void ChromeInternalLogSource::PopulateExtensionInfoLogs(
|
||||
if (!profile)
|
||||
return;
|
||||
|
||||
@@ -34,7 +34,7 @@ index 827f49d3a00f..2ddfbbab1ab7 100644
|
||||
extensions::ExtensionRegistry* extension_registry =
|
||||
extensions::ExtensionRegistry::Get(profile);
|
||||
std::string extensions_list;
|
||||
@@ -387,6 +398,8 @@ void ChromeInternalLogSource::PopulateLocalStateSettings(
|
||||
@@ -389,6 +400,8 @@ void ChromeInternalLogSource::PopulateLocalStateSettings(
|
||||
#if defined(OS_WIN)
|
||||
void ChromeInternalLogSource::PopulateUsbKeyboardDetected(
|
||||
SystemLogsResponse* response) {
|
||||
@@ -44,7 +44,7 @@ index 827f49d3a00f..2ddfbbab1ab7 100644
|
||||
bool result =
|
||||
base::win::IsKeyboardPresentOnSlate(&reason, ui::GetHiddenWindow());
|
||||
diff --git chrome/browser/memory_details.cc chrome/browser/memory_details.cc
|
||||
index 14b789a35c34..19a1f340a101 100644
|
||||
index 8a32ddd423c1..34abc57cc3a2 100644
|
||||
--- chrome/browser/memory_details.cc
|
||||
+++ chrome/browser/memory_details.cc
|
||||
@@ -17,6 +17,7 @@
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git chrome/app/generated_resources.grd chrome/app/generated_resources.grd
|
||||
index 0f25c61d5170..201f4d1c1651 100644
|
||||
index 7ba7a4d37f83..b2ca5edc150c 100644
|
||||
--- chrome/app/generated_resources.grd
|
||||
+++ chrome/app/generated_resources.grd
|
||||
@@ -4648,7 +4648,7 @@ Keep your key file in a safe place. You will need it to create new versions of y
|
||||
@@ -4732,7 +4732,7 @@ Keep your key file in a safe place. You will need it to create new versions of y
|
||||
</message>
|
||||
</if>
|
||||
<message name="IDS_PLUGIN_BLOCKED_BY_POLICY" desc="The placeholder text for a plugin blocked by enterprise policy.">
|
||||
|
@@ -1,8 +1,8 @@
|
||||
diff --git services/service_manager/sandbox/win/sandbox_win.cc services/service_manager/sandbox/win/sandbox_win.cc
|
||||
index d4370c2797c0..7509eb4d734d 100644
|
||||
index 5c915f75f985..f8ec8a81ce44 100644
|
||||
--- services/service_manager/sandbox/win/sandbox_win.cc
|
||||
+++ services/service_manager/sandbox/win/sandbox_win.cc
|
||||
@@ -934,8 +934,11 @@ sandbox::ResultCode SandboxWin::StartSandboxedProcess(
|
||||
@@ -927,8 +927,11 @@ sandbox::ResultCode SandboxWin::StartSandboxedProcess(
|
||||
}
|
||||
// TODO(wfh): Relax strict handle checks for network process until root cause
|
||||
// for this crash can be resolved. See https://crbug.com/939590.
|
||||
|
Reference in New Issue
Block a user