Update to Chromium revision 0bfd25d4 (#381305)

- Delete include/cef_runnable.h (issue #1336).
- Build the cef_unittests target using all Chromium headers. Add a
  USING_CHROMIUM_INCLUDES define and libcef_dll_wrapper_unittests
  target to support this. This change avoids compile errors due to
  the divergence of CEF and Chromium base/ header implementations.
  The libcef_dll_wrapper sources must now compile successfully with
  both CEF and Chromium base/ headers (issue #1632).
- The onbeforeunload message specified via JavaScript is no longer
  passed to the client (see http://crbug.com/587940).
This commit is contained in:
Marshall Greenblatt
2016-03-15 22:55:59 -04:00
parent 77746cfd1b
commit 243a9c26d7
152 changed files with 902 additions and 1211 deletions

View File

@ -1,8 +1,8 @@
diff --git render_widget_host_view_guest.cc render_widget_host_view_guest.cc
index a080567..8da4190 100644
index 1312e52..3d1656c 100644
--- render_widget_host_view_guest.cc
+++ render_widget_host_view_guest.cc
@@ -220,6 +220,9 @@ void RenderWidgetHostViewGuest::Destroy() {
@@ -191,6 +191,9 @@ void RenderWidgetHostViewGuest::Destroy() {
}
gfx::Size RenderWidgetHostViewGuest::GetPhysicalBackingSize() const {

View File

@ -1,8 +1,8 @@
diff --git browser/browser_plugin/browser_plugin_guest.cc browser/browser_plugin/browser_plugin_guest.cc
index 1855e5d..4e0cd1d 100644
index 007c977..069e8d4 100644
--- browser/browser_plugin/browser_plugin_guest.cc
+++ browser/browser_plugin/browser_plugin_guest.cc
@@ -27,7 +27,7 @@
@@ -28,7 +28,7 @@
#include "content/browser/renderer_host/render_widget_host_impl.h"
#include "content/browser/renderer_host/render_widget_host_view_base.h"
#include "content/browser/web_contents/web_contents_impl.h"
@ -11,7 +11,7 @@ index 1855e5d..4e0cd1d 100644
#include "content/common/browser_plugin/browser_plugin_constants.h"
#include "content/common/browser_plugin/browser_plugin_messages.h"
#include "content/common/content_constants_internal.h"
@@ -294,20 +294,19 @@ void BrowserPluginGuest::InitInternal(
@@ -286,20 +286,19 @@ void BrowserPluginGuest::InitInternal(
guest_window_rect_ = params.view_rect;
if (owner_web_contents_ != owner_web_contents) {
@ -36,7 +36,7 @@ index 1855e5d..4e0cd1d 100644
}
RendererPreferences* renderer_prefs =
@@ -792,11 +791,10 @@ void BrowserPluginGuest::OnWillAttachComplete(
@@ -754,11 +753,10 @@ void BrowserPluginGuest::OnWillAttachComplete(
->GetWidget()
->Init();
GetWebContents()->GetMainFrame()->Init();

View File

@ -1,10 +1,10 @@
diff --git web_contents_impl.cc web_contents_impl.cc
index 2af90ae..7580a73 100644
index 4c9db9e..0f1429a 100644
--- web_contents_impl.cc
+++ web_contents_impl.cc
@@ -1382,32 +1382,40 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
main_frame_widget_routing_id);
frame_tree_.root()->SetFrameName(params.main_frame_name);
@@ -1391,32 +1391,40 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
std::string unique_name = params.main_frame_name;
frame_tree_.root()->SetFrameName(params.main_frame_name, unique_name);
- WebContentsViewDelegate* delegate =
- GetContentClient()->browser()->GetWebContentsViewDelegate(this);
@ -62,7 +62,7 @@ index 2af90ae..7580a73 100644
CHECK(render_view_host_delegate_view_);
CHECK(view_.get());
@@ -1839,11 +1847,14 @@ void WebContentsImpl::CreateNewWindow(
@@ -1852,11 +1860,14 @@ void WebContentsImpl::CreateNewWindow(
static_cast<SessionStorageNamespaceImpl*>(session_storage_namespace);
CHECK(session_storage_namespace_impl->IsFromContext(dom_storage_context));
@ -78,7 +78,7 @@ index 2af90ae..7580a73 100644
if (route_id != MSG_ROUTING_NONE &&
!RenderViewHost::FromID(render_process_id, route_id)) {
// If the embedder didn't create a WebContents for this route, we need to
@@ -1867,6 +1878,8 @@ void WebContentsImpl::CreateNewWindow(
@@ -1880,6 +1891,8 @@ void WebContentsImpl::CreateNewWindow(
create_params.opener_render_process_id = render_process_id;
create_params.opener_render_frame_id = params.opener_render_frame_id;
create_params.opener_suppressed = params.opener_suppressed;

View File

@ -1,5 +1,5 @@
diff --git common.gypi common.gypi
index 846dc3a..700284e 100644
index 5f389b2..b8725d5 100644
--- common.gypi
+++ common.gypi
@@ -9,6 +9,9 @@

View File

@ -1,8 +1,8 @@
diff --git ui/browser.cc ui/browser.cc
index 8ceee96..da77140 100644
index 1595e86..e9c7cce 100644
--- ui/browser.cc
+++ ui/browser.cc
@@ -1726,7 +1726,9 @@ bool Browser::ShouldCreateWebContents(
@@ -1722,7 +1722,9 @@ bool Browser::ShouldCreateWebContents(
const std::string& frame_name,
const GURL& target_url,
const std::string& partition_id,
@ -14,10 +14,10 @@ index 8ceee96..da77140 100644
// If a BackgroundContents is created, suppress the normal WebContents.
return !MaybeCreateBackgroundContents(
diff --git ui/browser.h ui/browser.h
index 37d23b3..37c9ea9 100644
index f9a8392..ce76798 100644
--- ui/browser.h
+++ ui/browser.h
@@ -600,7 +600,9 @@ class Browser : public TabStripModelObserver,
@@ -604,7 +604,9 @@ class Browser : public TabStripModelObserver,
const std::string& frame_name,
const GURL& target_url,
const std::string& partition_id,

View File

@ -1,8 +1,8 @@
diff --git content/browser/compositor/gpu_process_transport_factory.cc content/browser/compositor/gpu_process_transport_factory.cc
index eccd9dc..d0908c6 100644
index 1d05689..139e7f4 100644
--- content/browser/compositor/gpu_process_transport_factory.cc
+++ content/browser/compositor/gpu_process_transport_factory.cc
@@ -132,6 +132,13 @@ GpuProcessTransportFactory::CreateOffscreenCommandBufferContext() {
@@ -131,6 +131,13 @@ GpuProcessTransportFactory::CreateOffscreenCommandBufferContext() {
scoped_ptr<cc::SoftwareOutputDevice>
GpuProcessTransportFactory::CreateSoftwareOutputDevice(
ui::Compositor* compositor) {

View File

@ -1,5 +1,5 @@
diff --git public/renderer/content_renderer_client.cc public/renderer/content_renderer_client.cc
index 3d0316f..ccd1f58 100644
index d32eccc..17e3e38 100644
--- public/renderer/content_renderer_client.cc
+++ public/renderer/content_renderer_client.cc
@@ -98,7 +98,6 @@ bool ContentRendererClient::AllowPopup() {
@ -19,10 +19,10 @@ index 3d0316f..ccd1f58 100644
bool ContentRendererClient::ShouldFork(blink::WebLocalFrame* frame,
const GURL& url,
diff --git public/renderer/content_renderer_client.h public/renderer/content_renderer_client.h
index 45686b5..18548a0 100644
index 880550c..3a59f3b 100644
--- public/renderer/content_renderer_client.h
+++ public/renderer/content_renderer_client.h
@@ -194,7 +194,6 @@ class CONTENT_EXPORT ContentRendererClient {
@@ -198,7 +198,6 @@ class CONTENT_EXPORT ContentRendererClient {
// Returns true if a popup window should be allowed.
virtual bool AllowPopup();
@ -30,7 +30,7 @@ index 45686b5..18548a0 100644
// TODO(sgurun) This callback is deprecated and will be removed as soon
// as android webview completes implementation of a resource throttle based
// shouldoverrideurl implementation. See crbug.com/325351
@@ -209,7 +208,6 @@ class CONTENT_EXPORT ContentRendererClient {
@@ -213,7 +212,6 @@ class CONTENT_EXPORT ContentRendererClient {
blink::WebNavigationType type,
blink::WebNavigationPolicy default_policy,
bool is_redirect);
@ -39,10 +39,10 @@ index 45686b5..18548a0 100644
// Returns true if we should fork a new process for the given navigation.
// If |send_referrer| is set to false (which is the default), no referrer
diff --git renderer/render_frame_impl.cc renderer/render_frame_impl.cc
index 0fc35cb..caed853 100644
index 6d9f299..b90bf05 100644
--- renderer/render_frame_impl.cc
+++ renderer/render_frame_impl.cc
@@ -4750,7 +4750,6 @@ WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation(
@@ -4703,7 +4703,6 @@ WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation(
(pending_navigation_params_ &&
!pending_navigation_params_->request_params.redirects.empty());
@ -50,7 +50,7 @@ index 0fc35cb..caed853 100644
// The handlenavigation API is deprecated and will be removed once
// crbug.com/325351 is resolved.
if (info.urlRequest.url() != GURL(kSwappedOutURL) &&
@@ -4760,7 +4759,6 @@ WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation(
@@ -4713,7 +4712,6 @@ WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation(
is_redirect)) {
return blink::WebNavigationPolicyIgnore;
}

View File

@ -0,0 +1,20 @@
diff --git texture_manager.h texture_manager.h
index 2485146..b31c3b9 100644
--- texture_manager.h
+++ texture_manager.h
@@ -17,6 +17,7 @@
#include "base/macros.h"
#include "base/memory/ref_counted.h"
#include "gpu/command_buffer/service/feature_info.h"
+#include "gpu/command_buffer/service/gl_stream_texture_image.h"
#include "gpu/command_buffer/service/gl_utils.h"
#include "gpu/command_buffer/service/memory_tracking.h"
#include "gpu/command_buffer/service/sampler_manager.h"
@@ -28,7 +29,6 @@ namespace gpu {
namespace gles2 {
class GLES2Decoder;
-class GLStreamTextureImage;
struct ContextState;
struct DecoderFramebufferState;
class Display;

View File

@ -1,5 +1,5 @@
diff --git resource_ids resource_ids
index 2943776..6d4b898 100644
index c8dc083..7773a93b 100644
--- resource_ids
+++ resource_ids
@@ -14,6 +14,12 @@

View File

@ -1,5 +1,5 @@
diff --git gyp/generator/ninja.py gyp/generator/ninja.py
index 552b2f8..3d61233 100644
index ffb3a85..02e0947 100644
--- gyp/generator/ninja.py
+++ gyp/generator/ninja.py
@@ -747,7 +747,16 @@ class NinjaWriter(object):

View File

@ -1,8 +1,8 @@
diff --git hwnd_message_handler.cc hwnd_message_handler.cc
index f632827..b6c912c 100644
index 1f4bf47..f145ca9 100644
--- hwnd_message_handler.cc
+++ hwnd_message_handler.cc
@@ -2382,8 +2382,12 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
@@ -2439,8 +2439,12 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message,
active_mouse_tracking_flags_ = 0;
} else if (event.type() == ui::ET_MOUSEWHEEL) {
// Reroute the mouse wheel to the window under the pointer if applicable.

View File

@ -1,8 +1,8 @@
diff --git input_method_win.cc input_method_win.cc
index 6ac7e6f..ad372ce 100644
index 9b04a8d..f0578e7 100644
--- input_method_win.cc
+++ input_method_win.cc
@@ -614,8 +614,9 @@ bool InputMethodWin::IsWindowFocused(const TextInputClient* client) const {
@@ -618,8 +618,9 @@ bool InputMethodWin::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.

View File

@ -1,5 +1,5 @@
diff --git message_loop.cc message_loop.cc
index 88f75e9..7abb471 100644
index 04aa9a8..ec302b6 100644
--- message_loop.cc
+++ message_loop.cc
@@ -139,12 +139,6 @@ MessageLoop::~MessageLoop() {

View File

@ -1,5 +1,5 @@
diff --git mime_handler_view_guest.cc mime_handler_view_guest.cc
index d704b9f..00d3c3f 100644
index 27297f3..a7e0f40b 100644
--- mime_handler_view_guest.cc
+++ mime_handler_view_guest.cc
@@ -134,6 +134,8 @@ void MimeHandlerViewGuest::CreateWebContents(

View File

@ -1,5 +1,5 @@
diff --git base/network_delegate.h base/network_delegate.h
index 0737137..60cfcd717 100644
index 509a87b..c05483c 100644
--- base/network_delegate.h
+++ base/network_delegate.h
@@ -35,6 +35,7 @@ namespace net {
@ -10,7 +10,7 @@ index 0737137..60cfcd717 100644
class HttpRequestHeaders;
class HttpResponseHeaders;
class ProxyInfo;
@@ -119,6 +120,13 @@ class NET_EXPORT NetworkDelegate : public base::NonThreadSafe {
@@ -111,6 +112,13 @@ class NET_EXPORT NetworkDelegate : public base::NonThreadSafe {
const GURL& target_url,
const GURL& referrer_url) const;
@ -25,7 +25,7 @@ index 0737137..60cfcd717 100644
// This is the interface for subclasses of NetworkDelegate to implement. These
// member functions will be called by the respective public notification
diff --git filter/filter.h filter/filter.h
index e9df3db..768b7fc 100644
index 31d08d4..1de8e84 100644
--- filter/filter.h
+++ filter/filter.h
@@ -59,6 +59,7 @@
@ -36,8 +36,8 @@ index e9df3db..768b7fc 100644
class GURL;
namespace net {
@@ -234,6 +235,7 @@ class NET_EXPORT_PRIVATE Filter {
std::string OrderedFilterList() const;
@@ -239,6 +240,7 @@ class NET_EXPORT_PRIVATE Filter {
FilterType type() const { return type_id_; }
protected:
+ friend class ::CefNetworkDelegate;
@ -45,10 +45,10 @@ index e9df3db..768b7fc 100644
friend class GZipUnitTest;
friend class SdchFilterChainingTest;
diff --git url_request/url_request_job.cc url_request/url_request_job.cc
index e46d3f1..0c0430f 100644
index cbefc9e..06a0123 100644
--- url_request/url_request_job.cc
+++ url_request/url_request_job.cc
@@ -448,6 +448,9 @@ void URLRequestJob::NotifyHeadersComplete() {
@@ -447,6 +447,9 @@ void URLRequestJob::NotifyHeadersComplete() {
if (request_->status().is_success())
filter_.reset(SetupFilter());

View File

@ -1,8 +1,8 @@
diff --git url_request.h url_request.h
index 1a17470..bf51358 100644
index d3b0b7a..0adec6f 100644
--- url_request.h
+++ url_request.h
@@ -674,10 +674,10 @@ class NET_EXPORT URLRequest : NON_EXPORTED_BASE(public base::NonThreadSafe),
@@ -675,10 +675,10 @@ class NET_EXPORT URLRequest : NON_EXPORTED_BASE(public base::NonThreadSafe),
// or after the response headers are received.
void GetConnectionAttempts(ConnectionAttempts* out) const;

View File

@ -1,8 +1,8 @@
diff --git fpdfsdk/src/fpdfview.cpp fpdfsdk/src/fpdfview.cpp
index ba64709..02e1391 100644
--- fpdfsdk/src/fpdfview.cpp
+++ fpdfsdk/src/fpdfview.cpp
@@ -14,6 +14,7 @@
diff --git fpdfsdk/fpdfview.cpp fpdfsdk/fpdfview.cpp
index 4630ac1..9b5b36f 100644
--- fpdfsdk/fpdfview.cpp
+++ fpdfsdk/fpdfview.cpp
@@ -16,6 +16,7 @@
#include "fpdfsdk/include/fsdk_mgr.h"
#include "fpdfsdk/include/fsdk_rendercontext.h"
#include "fpdfsdk/include/javascript/IJavaScript.h"
@ -10,7 +10,7 @@ index ba64709..02e1391 100644
#include "public/fpdf_ext.h"
#include "public/fpdf_progressive.h"
#include "third_party/base/numerics/safe_conversions_impl.h"
@@ -258,6 +259,7 @@ DLLEXPORT void STDCALL FPDF_DestroyLibrary() {
@@ -263,6 +264,7 @@ DLLEXPORT void STDCALL FPDF_DestroyLibrary() {
#endif // PDF_ENABLE_XFA
CPDF_ModuleMgr::Destroy();
CFX_GEModule::Destroy();

View File

@ -1,8 +1,8 @@
diff --git public/common/common_param_traits_macros.h public/common/common_param_traits_macros.h
index 45a9516..419f17e 100644
index b0cf1d1..15285c0 100644
--- public/common/common_param_traits_macros.h
+++ public/common/common_param_traits_macros.h
@@ -194,6 +194,7 @@ IPC_STRUCT_TRAITS_BEGIN(content::WebPreferences)
@@ -195,6 +195,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,19 +11,19 @@ index 45a9516..419f17e 100644
IPC_STRUCT_TRAITS_MEMBER(navigate_on_drag_drop)
IPC_STRUCT_TRAITS_MEMBER(spatial_navigation_enabled)
diff --git public/common/web_preferences.cc public/common/web_preferences.cc
index 62af1ce..23e31de 100644
index c0563f5..4118b5a 100644
--- public/common/web_preferences.cc
+++ public/common/web_preferences.cc
@@ -172,6 +172,7 @@ WebPreferences::WebPreferences()
@@ -157,6 +157,7 @@ WebPreferences::WebPreferences()
pinch_overlay_scrollbar_thickness(0),
use_solid_color_scrollbars(false),
navigate_on_drag_drop(true),
+ base_background_color(0xFFFFFFFF), // Color::white
v8_cache_options(V8_CACHE_OPTIONS_DEFAULT),
inert_visual_viewport(false),
cookie_enabled(true),
pepper_accelerated_video_decode_enabled(false),
diff --git public/common/web_preferences.h public/common/web_preferences.h
index 7d6ca7d..ba38861 100644
index 636f7a2..1936bed 100644
--- public/common/web_preferences.h
+++ public/common/web_preferences.h
@@ -174,6 +174,7 @@ struct CONTENT_EXPORT WebPreferences {
@ -32,18 +32,18 @@ index 7d6ca7d..ba38861 100644
bool navigate_on_drag_drop;
+ uint32_t base_background_color;
V8CacheOptions v8_cache_options;
bool inert_visual_viewport;
// This flags corresponds to a Page's Settings' setCookieEnabled state. It
diff --git renderer/render_view_impl.cc renderer/render_view_impl.cc
index 36d226c..ce8fd74 100644
index 9c56520..754ac04 100644
--- renderer/render_view_impl.cc
+++ renderer/render_view_impl.cc
@@ -953,6 +953,8 @@ void RenderView::ApplyWebPreferences(const WebPreferences& prefs,
settings->setCookieEnabled(prefs.cookie_enabled);
settings->setNavigateOnDragDrop(prefs.navigate_on_drag_drop);
+ web_view->setBaseBackgroundColor(prefs.base_background_color);
+
// By default, allow_universal_access_from_file_urls is set to false and thus
// we mitigate attacks from local HTML files by not granting file:// URLs
// universal access. Only test shell will enable this.
@@ -1545,6 +1545,8 @@ void RenderViewImpl::ApplyWebPreferencesInternal(
blink::WebView* web_view,
CompositorDependencies* compositor_deps) {
ApplyWebPreferences(prefs, web_view);
+ if (GetWebFrameWidget())
+ GetWebFrameWidget()->setBaseBackgroundColor(prefs.base_background_color);
#if defined(OS_MACOSX) && !defined(OS_IOS)
DCHECK(compositor_deps);
bool is_elastic_overscroll_enabled =

View File

@ -1,17 +1,18 @@
diff --git prefs_tab_helper.cc prefs_tab_helper.cc
index 36d6fe9..a875d1e 100644
index f8ca619..872050c 100644
--- prefs_tab_helper.cc
+++ prefs_tab_helper.cc
@@ -12,7 +12,7 @@
@@ -11,8 +11,8 @@
#include <string>
#include "base/command_line.h"
+#include "base/lazy_instance.h"
#include "base/macros.h"
-#include "base/memory/singleton.h"
+#include "base/lazy_instance.h"
#include "base/metrics/field_trial.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_util.h"
@@ -431,12 +431,10 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory {
#include "base/strings/stringprintf.h"
@@ -423,12 +423,10 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory {
GetInstance()->GetServiceForBrowserContext(profile, true));
}
@ -26,7 +27,7 @@ index 36d6fe9..a875d1e 100644
PrefWatcherFactory() : BrowserContextKeyedServiceFactory(
"PrefWatcher",
@@ -457,6 +455,18 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory {
@@ -449,6 +447,18 @@ class PrefWatcherFactory : public BrowserContextKeyedServiceFactory {
}
};

View File

@ -1,8 +1,8 @@
diff --git printing/common/print_messages.cc printing/common/print_messages.cc
index c3469fc..9fc71ac 100644
index e1a107a..1601811 100644
--- printing/common/print_messages.cc
+++ printing/common/print_messages.cc
@@ -95,7 +95,6 @@ void PrintMsg_PrintPages_Params::Reset() {
@@ -97,7 +97,6 @@ void PrintMsg_PrintPages_Params::Reset() {
pages = std::vector<int>();
}
@ -10,13 +10,13 @@ index c3469fc..9fc71ac 100644
PrintHostMsg_RequestPrintPreview_Params::
PrintHostMsg_RequestPrintPreview_Params()
: is_modifiable(false),
@@ -117,4 +116,3 @@ PrintHostMsg_SetOptionsFromDocument_Params::
@@ -119,4 +118,3 @@ PrintHostMsg_SetOptionsFromDocument_Params::
PrintHostMsg_SetOptionsFromDocument_Params::
~PrintHostMsg_SetOptionsFromDocument_Params() {
}
-#endif // defined(ENABLE_PRINT_PREVIEW)
diff --git printing/common/print_messages.h printing/common/print_messages.h
index 6060a1c..d051297 100644
index 771a4c5..1d8c5ca 100644
--- printing/common/print_messages.h
+++ printing/common/print_messages.h
@@ -70,7 +70,6 @@ struct PrintMsg_PrintPages_Params {
@ -35,7 +35,7 @@ index 6060a1c..d051297 100644
#endif // COMPONENTS_PRINTING_COMMON_PRINT_MESSAGES_H_
@@ -182,7 +180,6 @@ IPC_STRUCT_TRAITS_BEGIN(printing::PageRange)
@@ -176,7 +174,6 @@ IPC_STRUCT_TRAITS_BEGIN(printing::PageRange)
IPC_STRUCT_TRAITS_MEMBER(to)
IPC_STRUCT_TRAITS_END()
@ -43,7 +43,7 @@ index 6060a1c..d051297 100644
IPC_STRUCT_TRAITS_BEGIN(PrintHostMsg_RequestPrintPreview_Params)
IPC_STRUCT_TRAITS_MEMBER(is_modifiable)
IPC_STRUCT_TRAITS_MEMBER(webnode_only)
@@ -203,7 +200,6 @@ IPC_STRUCT_TRAITS_BEGIN(PrintHostMsg_SetOptionsFromDocument_Params)
@@ -197,7 +194,6 @@ IPC_STRUCT_TRAITS_BEGIN(PrintHostMsg_SetOptionsFromDocument_Params)
// Specifies page range to be printed.
IPC_STRUCT_TRAITS_MEMBER(page_ranges)
IPC_STRUCT_TRAITS_END()
@ -51,7 +51,7 @@ index 6060a1c..d051297 100644
IPC_STRUCT_TRAITS_BEGIN(printing::PageSizeMargins)
IPC_STRUCT_TRAITS_MEMBER(content_width)
@@ -223,7 +219,6 @@ IPC_STRUCT_TRAITS_BEGIN(PrintMsg_PrintPages_Params)
@@ -217,7 +213,6 @@ IPC_STRUCT_TRAITS_BEGIN(PrintMsg_PrintPages_Params)
IPC_STRUCT_TRAITS_MEMBER(pages)
IPC_STRUCT_TRAITS_END()
@ -59,7 +59,7 @@ index 6060a1c..d051297 100644
// Parameters to describe a rendered document.
IPC_STRUCT_BEGIN(PrintHostMsg_DidPreviewDocument_Params)
// A shared memory handle to metafile data.
@@ -277,7 +272,6 @@ IPC_STRUCT_BEGIN(PrintHostMsg_DidGetPreviewPageCount_Params)
@@ -271,7 +266,6 @@ IPC_STRUCT_BEGIN(PrintHostMsg_DidGetPreviewPageCount_Params)
// Indicates whether the existing preview data needs to be cleared or not.
IPC_STRUCT_MEMBER(bool, clear_preview_data)
IPC_STRUCT_END()
@ -67,7 +67,7 @@ index 6060a1c..d051297 100644
// Parameters to describe a rendered page.
IPC_STRUCT_BEGIN(PrintHostMsg_DidPrintPage_Params)
@@ -315,22 +309,20 @@ IPC_STRUCT_END()
@@ -309,22 +303,20 @@ IPC_STRUCT_END()
// Messages sent from the browser to the renderer.
@ -92,7 +92,7 @@ index 6060a1c..d051297 100644
#if defined(ENABLE_BASIC_PRINTING)
// Tells the render view to switch the CSS to print media type, renders every
@@ -349,13 +341,11 @@ IPC_MESSAGE_ROUTED1(PrintMsg_PrintingDone,
@@ -343,13 +335,11 @@ IPC_MESSAGE_ROUTED1(PrintMsg_PrintingDone,
IPC_MESSAGE_ROUTED1(PrintMsg_SetScriptedPrintingBlocked,
bool /* blocked */)
@ -106,7 +106,7 @@ index 6060a1c..d051297 100644
// Messages sent from the renderer to the browser.
@@ -415,7 +405,6 @@ IPC_MESSAGE_CONTROL2(PrintHostMsg_TempFileForPrintingWritten,
@@ -409,7 +399,6 @@ IPC_MESSAGE_CONTROL2(PrintHostMsg_TempFileForPrintingWritten,
int /* fd in browser */) // Used only by Chrome OS.
#endif // defined(OS_ANDROID)
@ -114,7 +114,7 @@ index 6060a1c..d051297 100644
// Asks the browser to do print preview.
IPC_MESSAGE_ROUTED1(PrintHostMsg_RequestPrintPreview,
PrintHostMsg_RequestPrintPreview_Params /* params */)
@@ -449,7 +438,6 @@ IPC_SYNC_MESSAGE_ROUTED2_1(PrintHostMsg_CheckForCancel,
@@ -443,7 +432,6 @@ IPC_SYNC_MESSAGE_ROUTED2_1(PrintHostMsg_CheckForCancel,
// The memory handle in this message is already valid in the browser process.
IPC_MESSAGE_ROUTED1(PrintHostMsg_MetafileReadyForPrinting,
PrintHostMsg_DidPreviewDocument_Params /* params */)
@ -122,7 +122,7 @@ index 6060a1c..d051297 100644
// This is sent when there are invalid printer settings.
IPC_MESSAGE_ROUTED0(PrintHostMsg_ShowInvalidPrinterSettingsError)
@@ -458,7 +446,6 @@ IPC_MESSAGE_ROUTED0(PrintHostMsg_ShowInvalidPrinterSettingsError)
@@ -452,7 +440,6 @@ IPC_MESSAGE_ROUTED0(PrintHostMsg_ShowInvalidPrinterSettingsError)
IPC_MESSAGE_ROUTED1(PrintHostMsg_PrintingFailed,
int /* document cookie */)
@ -130,16 +130,16 @@ index 6060a1c..d051297 100644
// Tell the browser print preview failed.
IPC_MESSAGE_ROUTED1(PrintHostMsg_PrintPreviewFailed,
int /* document cookie */)
@@ -485,4 +472,3 @@ IPC_MESSAGE_ROUTED1(PrintHostMsg_ShowScriptedPrintPreview,
@@ -479,4 +466,3 @@ IPC_MESSAGE_ROUTED1(PrintHostMsg_ShowScriptedPrintPreview,
// Notify the browser to set print presets based on source PDF document.
IPC_MESSAGE_ROUTED1(PrintHostMsg_SetOptionsFromDocument,
PrintHostMsg_SetOptionsFromDocument_Params /* params */)
-#endif // defined(ENABLE_PRINT_PREVIEW)
diff --git printing/renderer/print_web_view_helper.cc printing/renderer/print_web_view_helper.cc
index 6a8f1c3..f66469e 100644
index 823c957..51d8aa5 100644
--- printing/renderer/print_web_view_helper.cc
+++ printing/renderer/print_web_view_helper.cc
@@ -81,6 +81,9 @@ const double kMinDpi = 1.0;
@@ -80,6 +80,9 @@ const double kMinDpi = 1.0;
#if defined(ENABLE_PRINT_PREVIEW)
bool g_is_preview_enabled = true;
@ -149,7 +149,7 @@ index 6a8f1c3..f66469e 100644
const char kPageLoadScriptFormat[] =
"document.open(); document.write(%s); document.close();";
@@ -95,9 +98,6 @@ void ExecuteScript(blink::WebFrame* frame,
@@ -94,9 +97,6 @@ void ExecuteScript(blink::WebFrame* frame,
std::string script = base::StringPrintf(script_format, json.c_str());
frame->executeScript(blink::WebString(base::UTF8ToUTF16(script)));
}
@ -159,7 +159,7 @@ index 6a8f1c3..f66469e 100644
int GetDPI(const PrintMsg_Print_Params* print_params) {
#if defined(OS_MACOSX)
@@ -307,7 +307,6 @@ bool PrintingNodeOrPdfFrame(const blink::WebLocalFrame* frame,
@@ -306,7 +306,6 @@ bool PrintingNodeOrPdfFrame(const blink::WebLocalFrame* frame,
return plugin && plugin->supportsPaginatedPrint();
}
@ -167,7 +167,7 @@ index 6a8f1c3..f66469e 100644
// Returns true if the current destination printer is PRINT_TO_PDF.
bool IsPrintToPdfRequested(const base::DictionaryValue& job_settings) {
bool print_to_pdf = false;
@@ -329,7 +328,6 @@ bool PrintingFrameHasPageSizeStyle(blink::WebFrame* frame,
@@ -328,7 +327,6 @@ bool PrintingFrameHasPageSizeStyle(blink::WebFrame* frame,
}
return frame_has_custom_page_size_style;
}
@ -175,7 +175,7 @@ index 6a8f1c3..f66469e 100644
// Disable scaling when either:
// - The PDF specifies disabling scaling.
@@ -376,7 +374,6 @@ MarginType GetMarginsForPdf(blink::WebLocalFrame* frame,
@@ -375,7 +373,6 @@ MarginType GetMarginsForPdf(blink::WebLocalFrame* frame,
}
#endif
@ -183,7 +183,7 @@ index 6a8f1c3..f66469e 100644
bool FitToPageEnabled(const base::DictionaryValue& job_settings) {
bool fit_to_paper_size = false;
if (!job_settings.GetBoolean(kSettingFitToPageEnabled, &fit_to_paper_size)) {
@@ -418,7 +415,6 @@ blink::WebPrintScalingOption GetPrintScalingOption(
@@ -417,7 +414,6 @@ blink::WebPrintScalingOption GetPrintScalingOption(
}
return blink::WebPrintScalingOptionFitToPrintableArea;
}
@ -191,7 +191,7 @@ index 6a8f1c3..f66469e 100644
PrintMsg_Print_Params CalculatePrintParamsForCss(
blink::WebFrame* frame,
@@ -502,7 +498,6 @@ blink::WebView* FrameReference::view() {
@@ -501,7 +497,6 @@ blink::WebView* FrameReference::view() {
return view_;
}
@ -199,7 +199,7 @@ index 6a8f1c3..f66469e 100644
// static - Not anonymous so that platform implementations can use it.
void PrintWebViewHelper::PrintHeaderAndFooter(
blink::WebCanvas* canvas,
@@ -558,7 +553,6 @@ void PrintWebViewHelper::PrintHeaderAndFooter(
@@ -557,7 +552,6 @@ void PrintWebViewHelper::PrintHeaderAndFooter(
web_view->close();
frame->close();
}
@ -207,7 +207,7 @@ index 6a8f1c3..f66469e 100644
// static - Not anonymous so that platform implementations can use it.
float PrintWebViewHelper::RenderPageContent(blink::WebFrame* frame,
@@ -831,6 +825,7 @@ PrintWebViewHelper::PrintWebViewHelper(content::RenderView* render_view,
@@ -833,6 +827,7 @@ PrintWebViewHelper::PrintWebViewHelper(content::RenderView* render_view,
print_for_preview_(false),
delegate_(std::move(delegate)),
print_node_in_progress_(false),
@ -215,7 +215,7 @@ index 6a8f1c3..f66469e 100644
is_loading_(false),
is_scripted_preview_delayed_(false),
ipc_nesting_level_(0),
@@ -889,10 +884,8 @@ void PrintWebViewHelper::PrintPage(blink::WebLocalFrame* frame,
@@ -891,10 +886,8 @@ void PrintWebViewHelper::PrintPage(blink::WebLocalFrame* frame,
return;
if (g_is_preview_enabled) {
@ -226,7 +226,7 @@ index 6a8f1c3..f66469e 100644
} else {
#if defined(ENABLE_BASIC_PRINTING)
Print(frame, blink::WebNode(), true);
@@ -916,14 +909,10 @@ bool PrintWebViewHelper::OnMessageReceived(const IPC::Message& message) {
@@ -918,14 +911,10 @@ bool PrintWebViewHelper::OnMessageReceived(const IPC::Message& message) {
IPC_MESSAGE_HANDLER(PrintMsg_PrintPages, OnPrintPages)
IPC_MESSAGE_HANDLER(PrintMsg_PrintForSystemDialog, OnPrintForSystemDialog)
#endif // defined(ENABLE_BASIC_PRINTING)
@ -241,7 +241,7 @@ index 6a8f1c3..f66469e 100644
IPC_MESSAGE_HANDLER(PrintMsg_SetScriptedPrintingBlocked,
SetScriptedPrintBlocked)
IPC_MESSAGE_UNHANDLED(handled = false)
@@ -975,7 +964,6 @@ void PrintWebViewHelper::OnPrintForSystemDialog() {
@@ -977,7 +966,6 @@ void PrintWebViewHelper::OnPrintForSystemDialog() {
}
#endif // defined(ENABLE_BASIC_PRINTING)
@ -249,7 +249,7 @@ index 6a8f1c3..f66469e 100644
void PrintWebViewHelper::OnPrintForPrintPreview(
const base::DictionaryValue& job_settings) {
CHECK_LE(ipc_nesting_level_, 1);
@@ -1040,7 +1028,6 @@ void PrintWebViewHelper::OnPrintForPrintPreview(
@@ -1042,7 +1030,6 @@ void PrintWebViewHelper::OnPrintForPrintPreview(
DidFinishPrinting(FAIL_PRINT);
}
}
@ -257,7 +257,7 @@ index 6a8f1c3..f66469e 100644
void PrintWebViewHelper::GetPageSizeAndContentAreaFromPageLayout(
const PageSizeMargins& page_layout_in_points,
@@ -1065,7 +1052,6 @@ void PrintWebViewHelper::UpdateFrameMarginsCssInfo(
@@ -1067,7 +1054,6 @@ void PrintWebViewHelper::UpdateFrameMarginsCssInfo(
ignore_css_margins_ = (margins_type != DEFAULT_MARGINS);
}
@ -265,7 +265,7 @@ index 6a8f1c3..f66469e 100644
void PrintWebViewHelper::OnPrintPreview(const base::DictionaryValue& settings) {
if (ipc_nesting_level_ > 1)
return;
@@ -1226,7 +1212,7 @@ bool PrintWebViewHelper::CreatePreviewDocument() {
@@ -1228,7 +1214,7 @@ bool PrintWebViewHelper::CreatePreviewDocument() {
return true;
}
@ -274,7 +274,7 @@ index 6a8f1c3..f66469e 100644
bool PrintWebViewHelper::RenderPreviewPage(
int page_number,
const PrintMsg_Print_Params& print_params) {
@@ -1255,7 +1241,7 @@ bool PrintWebViewHelper::RenderPreviewPage(
@@ -1257,7 +1243,7 @@ bool PrintWebViewHelper::RenderPreviewPage(
}
return PreviewPageRendered(page_number, draft_metafile.get());
}
@ -283,7 +283,7 @@ index 6a8f1c3..f66469e 100644
bool PrintWebViewHelper::FinalizePrintReadyDocument() {
DCHECK(!is_print_ready_metafile_sent_);
@@ -1285,7 +1271,6 @@ bool PrintWebViewHelper::FinalizePrintReadyDocument() {
@@ -1287,7 +1273,6 @@ bool PrintWebViewHelper::FinalizePrintReadyDocument() {
Send(new PrintHostMsg_MetafileReadyForPrinting(routing_id(), preview_params));
return true;
}
@ -291,7 +291,7 @@ index 6a8f1c3..f66469e 100644
void PrintWebViewHelper::OnPrintingDone(bool success) {
if (ipc_nesting_level_ > 1)
@@ -1300,7 +1285,6 @@ void PrintWebViewHelper::SetScriptedPrintBlocked(bool blocked) {
@@ -1302,7 +1287,6 @@ void PrintWebViewHelper::SetScriptedPrintBlocked(bool blocked) {
is_scripted_printing_blocked_ = blocked;
}
@ -299,7 +299,7 @@ index 6a8f1c3..f66469e 100644
void PrintWebViewHelper::OnInitiatePrintPreview(bool selection_only) {
if (ipc_nesting_level_ > 1)
return;
@@ -1311,7 +1295,9 @@ void PrintWebViewHelper::OnInitiatePrintPreview(bool selection_only) {
@@ -1313,7 +1297,9 @@ void PrintWebViewHelper::OnInitiatePrintPreview(bool selection_only) {
// that instead.
auto plugin = delegate_->GetPdfElement(frame);
if (!plugin.isNull()) {
@ -309,7 +309,7 @@ index 6a8f1c3..f66469e 100644
return;
}
print_preview_context_.InitWithFrame(frame);
@@ -1319,7 +1305,6 @@ void PrintWebViewHelper::OnInitiatePrintPreview(bool selection_only) {
@@ -1321,7 +1307,6 @@ void PrintWebViewHelper::OnInitiatePrintPreview(bool selection_only) {
? PRINT_PREVIEW_USER_INITIATED_SELECTION
: PRINT_PREVIEW_USER_INITIATED_ENTIRE_FRAME);
}
@ -317,7 +317,7 @@ index 6a8f1c3..f66469e 100644
bool PrintWebViewHelper::IsPrintingEnabled() {
bool result = false;
@@ -1345,11 +1330,9 @@ void PrintWebViewHelper::PrintNode(const blink::WebNode& node) {
@@ -1347,11 +1332,9 @@ void PrintWebViewHelper::PrintNode(const blink::WebNode& node) {
// Make a copy of the node, in case RenderView::OnContextMenuClosed resets
// its |context_menu_node_|.
@ -330,7 +330,7 @@ index 6a8f1c3..f66469e 100644
} else {
#if defined(ENABLE_BASIC_PRINTING)
blink::WebNode duplicate_node(node);
@@ -1415,7 +1398,6 @@ void PrintWebViewHelper::DidFinishPrinting(PrintingResult result) {
@@ -1417,7 +1400,6 @@ void PrintWebViewHelper::DidFinishPrinting(PrintingResult result) {
}
break;
@ -338,7 +338,7 @@ index 6a8f1c3..f66469e 100644
case FAIL_PREVIEW:
int cookie =
print_pages_params_ ? print_pages_params_->params.document_cookie : 0;
@@ -1427,7 +1409,6 @@ void PrintWebViewHelper::DidFinishPrinting(PrintingResult result) {
@@ -1429,7 +1411,6 @@ void PrintWebViewHelper::DidFinishPrinting(PrintingResult result) {
}
print_preview_context_.Failed(notify_browser_of_print_failure_);
break;
@ -346,7 +346,7 @@ index 6a8f1c3..f66469e 100644
}
prep_frame_view_.reset();
print_pages_params_.reset();
@@ -1559,7 +1540,6 @@ bool PrintWebViewHelper::CalculateNumberOfPages(blink::WebLocalFrame* frame,
@@ -1561,7 +1542,6 @@ bool PrintWebViewHelper::CalculateNumberOfPages(blink::WebLocalFrame* frame,
return true;
}
@ -354,7 +354,7 @@ index 6a8f1c3..f66469e 100644
bool PrintWebViewHelper::SetOptionsFromPdfDocument(
PrintHostMsg_SetOptionsFromDocument_Params* options) {
blink::WebLocalFrame* source_frame = print_preview_context_.source_frame();
@@ -1668,7 +1648,6 @@ bool PrintWebViewHelper::UpdatePrintSettings(
@@ -1670,7 +1650,6 @@ bool PrintWebViewHelper::UpdatePrintSettings(
return true;
}
@ -362,46 +362,31 @@ index 6a8f1c3..f66469e 100644
#if defined(ENABLE_BASIC_PRINTING)
bool PrintWebViewHelper::GetPrintSettingsFromUser(blink::WebLocalFrame* frame,
@@ -1760,11 +1739,14 @@ void PrintWebViewHelper::PrintPageInternal(
gfx::Rect canvas_area =
params.params.display_header_footer ? gfx::Rect(page_size) : content_area;
-#if defined(OS_WIN) || defined(ENABLE_PRINT_PREVIEW)
+#if defined(OS_WIN)
float webkit_page_shrink_factor =
frame->getPrintPageShrink(params.page_number);
float scale_factor = css_scale_factor * webkit_page_shrink_factor;
+#else
+ float scale_factor = css_scale_factor / 1.25f;
#endif
+
// TODO(thestig) GetVectorCanvasForNewPage() and RenderPageContent() take a
// different scale factor vs Windows. Figure out why and combine the two.
#if defined(OS_WIN)
@@ -1780,14 +1762,12 @@ void PrintWebViewHelper::PrintPageInternal(
@@ -1778,7 +1757,6 @@ void PrintWebViewHelper::PrintPageInternal(
MetafileSkiaWrapper::SetMetafileOnCanvas(*canvas, metafile);
-#if defined(ENABLE_PRINT_PREVIEW)
if (params.params.display_header_footer) {
// |page_number| is 0-based, so 1 is added.
PrintHeaderAndFooter(canvas, params.page_number + 1,
print_preview_context_.total_page_count(), *frame,
scale_factor, page_layout_in_points, params.params);
// TODO(thestig): Figure out why Linux needs this. The value may be
// |printingMinimumShrinkFactor|.
@@ -1793,7 +1771,6 @@ void PrintWebViewHelper::PrintPageInternal(
scale_factor / fudge_factor, page_layout_in_points,
params.params);
}
-#endif // defined(ENABLE_PRINT_PREVIEW)
float webkit_scale_factor =
RenderPageContent(frame, params.page_number, canvas_area, content_area,
@@ -1836,7 +1816,6 @@ bool PrintWebViewHelper::CopyMetafileDataToSharedMem(
#endif // defined(OS_WIN)
@@ -1829,7 +1806,6 @@ bool PrintWebViewHelper::CopyMetafileDataToSharedMem(
return true;
}
-#if defined(ENABLE_PRINT_PREVIEW)
void PrintWebViewHelper::ShowScriptedPrintPreview() {
if (is_scripted_preview_delayed_) {
is_scripted_preview_delayed_ = false;
@@ -1964,7 +1943,6 @@ bool PrintWebViewHelper::PreviewPageRendered(int page_number,
@@ -1957,7 +1933,6 @@ bool PrintWebViewHelper::PreviewPageRendered(int page_number,
Send(new PrintHostMsg_DidPreviewPage(routing_id(), preview_page_params));
return true;
}
@ -410,7 +395,7 @@ index 6a8f1c3..f66469e 100644
PrintWebViewHelper::PrintPreviewContext::PrintPreviewContext()
: total_page_count_(0),
diff --git printing/renderer/print_web_view_helper.h printing/renderer/print_web_view_helper.h
index ca10384..7aacfbc 100644
index 39ef858..3c4f89e 100644
--- printing/renderer/print_web_view_helper.h
+++ printing/renderer/print_web_view_helper.h
@@ -137,9 +137,7 @@ class PrintWebViewHelper
@ -507,10 +492,10 @@ index ca10384..7aacfbc 100644
bool is_loading_;
bool is_scripted_preview_delayed_;
diff --git printing/renderer/print_web_view_helper_mac.mm printing/renderer/print_web_view_helper_mac.mm
index 08a1c10..4a80a2d 100644
index 6552666..8899b6d 100644
--- printing/renderer/print_web_view_helper_mac.mm
+++ printing/renderer/print_web_view_helper_mac.mm
@@ -69,7 +69,6 @@ void PrintWebViewHelper::PrintPageInternal(
@@ -68,7 +68,6 @@ void PrintWebViewHelper::PrintPageInternal(
Send(new PrintHostMsg_DidPrintPage(routing_id(), page_params));
}
@ -518,7 +503,7 @@ index 08a1c10..4a80a2d 100644
bool PrintWebViewHelper::RenderPreviewPage(
int page_number,
const PrintMsg_Print_Params& print_params) {
@@ -110,7 +109,6 @@ bool PrintWebViewHelper::RenderPreviewPage(
@@ -104,7 +103,6 @@ bool PrintWebViewHelper::RenderPreviewPage(
}
return PreviewPageRendered(page_number, draft_metafile.get());
}
@ -526,7 +511,7 @@ index 08a1c10..4a80a2d 100644
void PrintWebViewHelper::RenderPage(const PrintMsg_Print_Params& params,
int page_number,
@@ -145,14 +143,12 @@ void PrintWebViewHelper::RenderPage(const PrintMsg_Print_Params& params,
@@ -139,14 +137,12 @@ void PrintWebViewHelper::RenderPage(const PrintMsg_Print_Params& params,
MetafileSkiaWrapper::SetMetafileOnCanvas(*canvas, metafile);
skia::SetIsPreviewMetafile(*canvas, is_preview);

View File

@ -1,5 +1,5 @@
diff --git web_contents.cc web_contents.cc
index 1b6d8a6..b606a30 100644
index d4b5fd0..b804902 100644
--- web_contents.cc
+++ web_contents.cc
@@ -26,7 +26,9 @@ WebContents::CreateParams::CreateParams(BrowserContext* context,
@ -11,10 +11,10 @@ index 1b6d8a6..b606a30 100644
+ view(nullptr),
+ delegate_view(nullptr) {}
WebContents::CreateParams::~CreateParams() {
}
WebContents::CreateParams::CreateParams(const CreateParams& other) = default;
diff --git web_contents.h web_contents.h
index 5260b91..4495078 100644
index 9dd14bf..7c7b7c9 100644
--- web_contents.h
+++ web_contents.h
@@ -54,9 +54,11 @@ class PageState;
@ -29,7 +29,7 @@ index 5260b91..4495078 100644
struct CustomContextMenuContext;
struct DropData;
struct Manifest;
@@ -146,6 +148,10 @@ class WebContents : public PageNavigator,
@@ -147,6 +149,10 @@ class WebContents : public PageNavigator,
// RenderFrame, have already been created on the renderer side, and
// WebContents construction should take this into account.
bool renderer_initiated_creation;
@ -41,7 +41,7 @@ index 5260b91..4495078 100644
// Creates a new WebContents.
diff --git web_contents_delegate.cc web_contents_delegate.cc
index 71c3075..7abcac3 100644
index c937d66..4ce571f 100644
--- web_contents_delegate.cc
+++ web_contents_delegate.cc
@@ -144,7 +144,9 @@ bool WebContentsDelegate::ShouldCreateWebContents(
@ -56,12 +56,12 @@ index 71c3075..7abcac3 100644
}
diff --git web_contents_delegate.h web_contents_delegate.h
index b6015b0..75b53d4 100644
index 2c2ac76..8f87caf 100644
--- web_contents_delegate.h
+++ web_contents_delegate.h
@@ -41,9 +41,11 @@ class DownloadItem;
class JavaScriptDialogManager;
@@ -42,9 +42,11 @@ class JavaScriptDialogManager;
class PageState;
class RenderFrameHost;
class RenderViewHost;
+class RenderViewHostDelegateView;
class SessionStorageNamespace;
@ -71,7 +71,7 @@ index b6015b0..75b53d4 100644
struct ColorSuggestion;
struct ContextMenuParams;
struct DropData;
@@ -309,7 +311,9 @@ class CONTENT_EXPORT WebContentsDelegate {
@@ -311,7 +313,9 @@ class CONTENT_EXPORT WebContentsDelegate {
const std::string& frame_name,
const GURL& target_url,
const std::string& partition_id,

View File

@ -1,8 +1,8 @@
diff --git render_widget_host_view_mac.mm render_widget_host_view_mac.mm
index acc1c8a..c07cb49 100644
index 96e472e..4d61084 100644
--- render_widget_host_view_mac.mm
+++ render_widget_host_view_mac.mm
@@ -530,9 +530,6 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget,
@@ -534,9 +534,6 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget,
// Paint this view host with |background_color_| when there is no content
// ready to draw.
background_layer_.reset([[CALayer alloc] init]);

View File

@ -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 d06fde4..329432e 100644
index 27e1809..b522166 100644
--- content/browser/renderer_host/render_widget_host_view_aura.cc
+++ content/browser/renderer_host/render_widget_host_view_aura.cc
@@ -776,6 +776,13 @@ void RenderWidgetHostViewAura::SetKeyboardFocus() {
@@ -778,6 +778,13 @@ void RenderWidgetHostViewAura::SetKeyboardFocus() {
}
}
#endif
@ -13,22 +13,22 @@ index d06fde4..329432e 100644
+ host->Show();
+ }
+#endif
// TODO(wjmaclean): can host_ ever be null?
if (host_ && set_focus_on_mouse_down_or_key_event_) {
set_focus_on_mouse_down_or_key_event_ = false;
host_->Focus();
diff --git content/browser/renderer_host/render_widget_host_view_base.cc content/browser/renderer_host/render_widget_host_view_base.cc
index 780ced5..9409858 100644
index 9cdceb5..250911d0 100644
--- content/browser/renderer_host/render_widget_host_view_base.cc
+++ content/browser/renderer_host/render_widget_host_view_base.cc
@@ -376,6 +376,7 @@ RenderWidgetHostViewBase::RenderWidgetHostViewBase()
@@ -378,6 +378,7 @@ RenderWidgetHostViewBase::RenderWidgetHostViewBase()
current_device_scale_factor_(0),
current_display_rotation_(gfx::Display::ROTATE_0),
pinch_zoom_enabled_(content::IsPinchToZoomEnabled()),
+ has_external_parent_(false),
renderer_frame_number_(0),
weak_factory_(this) {
}
@@ -569,6 +570,10 @@ void RenderWidgetHostViewBase::EndFrameSubscription() {
weak_factory_(this) {}
@@ -588,6 +589,10 @@ void RenderWidgetHostViewBase::EndFrameSubscription() {
NOTREACHED();
}
@ -40,10 +40,10 @@ index 780ced5..9409858 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 9a2e25b..dd753a5 100644
index 1cace30..d5ca100 100644
--- content/browser/renderer_host/render_widget_host_view_base.h
+++ content/browser/renderer_host/render_widget_host_view_base.h
@@ -95,6 +95,7 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView,
@@ -98,6 +98,7 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView,
void BeginFrameSubscription(
scoped_ptr<RenderWidgetHostViewFrameSubscriber> subscriber) override;
void EndFrameSubscription() override;
@ -51,7 +51,7 @@ index 9a2e25b..dd753a5 100644
// This only needs to be overridden by RenderWidgetHostViewBase subclasses
// that handle content embedded within other RenderWidgetHostViews.
@@ -445,6 +446,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView,
@@ -461,6 +462,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView,
// renderer.
bool pinch_zoom_enabled_;
@ -91,7 +91,7 @@ index a8e088c..838b6a0 100644
return host ? host->GetAcceleratedWidget() : NULL;
}
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 f79b3c4..f585bea 100644
index 92cc44e..949b160 100644
--- ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc
@@ -84,6 +84,7 @@ DesktopWindowTreeHostWin::DesktopWindowTreeHostWin(
@ -116,7 +116,7 @@ index f79b3c4..f585bea 100644
message_handler_->set_remove_standard_frame(params.remove_standard_frame);
@@ -800,11 +805,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
@@ -801,11 +806,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() {
}
void DesktopWindowTreeHostWin::HandleNativeFocus(HWND last_focused_window) {
@ -135,7 +135,7 @@ index f79b3c4..f585bea 100644
bool DesktopWindowTreeHostWin::HandleMouseEvent(const 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 963658a..36c8d63 100644
index dee68df..08a96e1 100644
--- ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.h
@@ -244,6 +244,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin
@ -150,7 +150,7 @@ index 963658a..36c8d63 100644
// 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 e2eaf14..0652daa 100644
index cecae1e..b9e80b6 100644
--- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc
@@ -167,6 +167,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11(
@ -237,10 +237,10 @@ index e2eaf14..0652daa 100644
if (xev->xfocus.mode != NotifyGrab) {
ReleaseCapture();
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 759194f..13af979 100644
index 7e842fe..bc5376f 100644
--- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
+++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h
@@ -87,6 +87,12 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
@@ -86,6 +86,12 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
// internal list of open windows.
static void CleanUpWindowList(void (*func)(aura::Window* window));
@ -253,7 +253,7 @@ index 759194f..13af979 100644
protected:
// Overridden from DesktopWindowTreeHost:
void Init(aura::Window* content_window,
@@ -263,6 +269,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
@@ -262,6 +268,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
// The bounds of |xwindow_|.
gfx::Rect bounds_in_pixels_;
@ -263,7 +263,7 @@ index 759194f..13af979 100644
// Whenever the bounds are set, we keep the previous set of bounds around so
// we can have a better chance of getting the real
// |restored_bounds_in_pixels_|. Window managers tend to send a Configure
@@ -299,6 +308,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
@@ -298,6 +307,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
// Whether we used an ARGB visual for our window.
bool use_argb_visual_;
@ -274,7 +274,7 @@ index 759194f..13af979 100644
DesktopDragDropClientAuraX11* drag_drop_client_;
scoped_ptr<ui::EventHandler> x11_non_client_event_filter_;
@@ -351,6 +364,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
@@ -350,6 +363,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11
base::WeakPtrFactory<DesktopWindowTreeHostX11> close_widget_factory_;
@ -346,10 +346,10 @@ index 5ab84f9..c4095fa 100644
x_active_window_ = None;
}
diff --git ui/views/widget/widget.cc ui/views/widget/widget.cc
index 88a68da..faf4da6 100644
index 4c44b65..64f5833 100644
--- ui/views/widget/widget.cc
+++ ui/views/widget/widget.cc
@@ -128,6 +128,7 @@ Widget::InitParams::InitParams(Type type)
@@ -129,6 +129,7 @@ Widget::InitParams::InitParams(Type type)
use_system_default_icon(false),
show_state(ui::SHOW_STATE_DEFAULT),
parent(nullptr),
@ -357,7 +357,7 @@ index 88a68da..faf4da6 100644
native_widget(nullptr),
desktop_window_tree_host(nullptr),
layer_type(ui::LAYER_TEXTURED),
@@ -303,7 +304,7 @@ void Widget::Init(const InitParams& in_params) {
@@ -307,7 +308,7 @@ void Widget::Init(const InitParams& in_params) {
InitParams params = in_params;
params.child |= (params.type == InitParams::TYPE_CONTROL);
@ -366,7 +366,7 @@ index 88a68da..faf4da6 100644
if (params.opacity == views::Widget::InitParams::INFER_OPACITY &&
params.type != views::Widget::InitParams::TYPE_WINDOW &&
@@ -365,7 +366,12 @@ void Widget::Init(const InitParams& in_params) {
@@ -369,7 +370,12 @@ void Widget::Init(const InitParams& in_params) {
Minimize();
} else if (params.delegate) {
SetContentsView(params.delegate->GetContentsView());
@ -381,10 +381,10 @@ index 88a68da..faf4da6 100644
// This must come after SetContentsView() or it might not be able to find
// the correct NativeTheme (on Linux). See http://crbug.com/384492
diff --git ui/views/widget/widget.h ui/views/widget/widget.h
index 8c92b90..869a7b8 100644
index 3512453..af4f311 100644
--- ui/views/widget/widget.h
+++ ui/views/widget/widget.h
@@ -233,6 +233,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
@@ -234,6 +234,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate,
// Whether the widget should be maximized or minimized.
ui::WindowShowState show_state;
gfx::NativeView parent;

View File

@ -1,8 +1,8 @@
diff --git Source/web/ChromeClientImpl.cpp Source/web/ChromeClientImpl.cpp
index 02bb02e..eca142e 100644
index 59079de..819fb66 100644
--- Source/web/ChromeClientImpl.cpp
+++ Source/web/ChromeClientImpl.cpp
@@ -834,7 +834,7 @@ bool ChromeClientImpl::hasOpenedPopup() const
@@ -873,7 +873,7 @@ bool ChromeClientImpl::hasOpenedPopup() const
PassRefPtrWillBeRawPtr<PopupMenu> ChromeClientImpl::openPopupMenu(LocalFrame& frame, HTMLSelectElement& select)
{
notifyPopupOpeningObservers();
@ -12,10 +12,10 @@ index 02bb02e..eca142e 100644
ASSERT(RuntimeEnabledFeatures::pagePopupEnabled());
diff --git Source/web/WebViewImpl.cpp Source/web/WebViewImpl.cpp
index 25425db..26aac0f 100644
index c95ff4c..e17f16b 100644
--- Source/web/WebViewImpl.cpp
+++ Source/web/WebViewImpl.cpp
@@ -476,6 +476,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client)
@@ -417,6 +417,7 @@ WebViewImpl::WebViewImpl(WebViewClient* client)
, m_enableFakePageScaleAnimationForTesting(false)
, m_fakePageScaleAnimationPageScaleFactor(0)
, m_fakePageScaleAnimationUseAnchor(false)
@ -23,7 +23,7 @@ index 25425db..26aac0f 100644
, m_doingDragAndDrop(false)
, m_ignoreInputEvents(false)
, m_compositorDeviceScaleFactorOverride(0)
@@ -4148,9 +4149,14 @@ void WebViewImpl::pageScaleFactorChanged()
@@ -4090,9 +4091,14 @@ void WebViewImpl::pageScaleFactorChanged()
m_client->pageScaleFactorChanged();
}
@ -40,10 +40,10 @@ index 25425db..26aac0f 100644
void WebViewImpl::startDragging(LocalFrame* frame,
diff --git Source/web/WebViewImpl.h Source/web/WebViewImpl.h
index 9ee6613..74e5494 100644
index c250a64..5daba9d 100644
--- Source/web/WebViewImpl.h
+++ Source/web/WebViewImpl.h
@@ -395,7 +395,8 @@ public:
@@ -390,7 +390,8 @@ public:
// Returns true if popup menus should be rendered by the browser, false if
// they should be rendered by WebKit (which is the default).
@ -53,7 +53,7 @@ index 9ee6613..74e5494 100644
bool shouldAutoResize() const
{
@@ -691,6 +692,8 @@ private:
@@ -687,6 +688,8 @@ private:
float m_fakePageScaleAnimationPageScaleFactor;
bool m_fakePageScaleAnimationUseAnchor;
@ -63,10 +63,10 @@ index 9ee6613..74e5494 100644
bool m_ignoreInputEvents;
diff --git public/web/WebView.h public/web/WebView.h
index 18b2e9d..8b0b784 100644
index a04be6d..258e331 100644
--- public/web/WebView.h
+++ public/web/WebView.h
@@ -408,6 +408,7 @@ public:
@@ -394,6 +394,7 @@ public:
// Sets whether select popup menus should be rendered by the browser.
BLINK_EXPORT static void setUseExternalPopupMenus(bool);