Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1744)

Unified Diff: content/renderer/render_widget.cc

Issue 2493293002: RenderWidget: make routing_id be a parameter of the ctor (Closed)
Patch Set: Add a release for asan bots. Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/renderer/render_widget.h ('k') | content/renderer/render_widget_fullscreen.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_widget.cc
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index b540e2bbd859026f04474b46060faac615b1f868..eca7a8df67b494ebb7f26e1ab50cd4765d7bd91f 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -209,13 +209,14 @@ namespace content {
// RenderWidget ---------------------------------------------------------------
-RenderWidget::RenderWidget(CompositorDependencies* compositor_deps,
+RenderWidget::RenderWidget(int32_t widget_routing_id,
+ CompositorDependencies* compositor_deps,
blink::WebPopupType popup_type,
const ScreenInfo& screen_info,
bool swapped_out,
bool hidden,
bool never_visible)
- : routing_id_(MSG_ROUTING_NONE),
+ : routing_id_(widget_routing_id),
compositor_deps_(compositor_deps),
webwidget_internal_(nullptr),
owner_delegate_(nullptr),
@@ -255,6 +256,7 @@ RenderWidget::RenderWidget(CompositorDependencies* compositor_deps,
text_input_client_observer_(new TextInputClientObserver(this)),
#endif
focused_pepper_plugin_(nullptr) {
+ DCHECK_NE(routing_id_, MSG_ROUTING_NONE);
if (!swapped_out)
RenderProcess::current()->AddRefProcess();
DCHECK(RenderThread::Get());
@@ -303,9 +305,9 @@ RenderWidget* RenderWidget::Create(int32_t opener_id,
return nullptr;
}
- scoped_refptr<RenderWidget> widget(new RenderWidget(
- compositor_deps, popup_type, screen_info, false, false, false));
- widget->InitRoutingID(routing_id);
+ scoped_refptr<RenderWidget> widget(
+ new RenderWidget(routing_id, compositor_deps, popup_type, screen_info,
+ false, false, false));
widget->Init(opener_id, RenderWidget::CreateWebWidget(widget.get()));
DCHECK(!widget->HasOneRef()); // RenderWidget::Init() adds a reference.
return widget.get();
@@ -330,14 +332,15 @@ RenderWidget* RenderWidget::CreateForFrame(
}
scoped_refptr<RenderWidget> widget(
g_create_render_widget
- ? g_create_render_widget(compositor_deps, blink::WebPopupTypeNone,
- screen_info, false, hidden, false)
- : new RenderWidget(compositor_deps, blink::WebPopupTypeNone,
- screen_info, false, hidden, false));
+ ? g_create_render_widget(widget_routing_id, compositor_deps,
+ blink::WebPopupTypeNone, screen_info, false,
+ hidden, false)
+ : new RenderWidget(widget_routing_id, compositor_deps,
+ blink::WebPopupTypeNone, screen_info, false,
+ hidden, false));
widget->for_oopif_ = true;
// Init increments the reference count on |widget|, keeping it alive after
// this function returns.
- widget->InitRoutingID(widget_routing_id);
widget->Init(MSG_ROUTING_NONE,
RenderWidget::CreateWebFrameWidget(widget.get(), frame));
@@ -389,17 +392,13 @@ void RenderWidget::SetSwappedOut(bool is_swapped_out) {
RenderProcess::current()->AddRefProcess();
}
-void RenderWidget::InitRoutingID(int32_t routing_id) {
- DCHECK_EQ(routing_id_, MSG_ROUTING_NONE);
- routing_id_ = routing_id;
- input_handler_.reset(new RenderWidgetInputHandler(
- GetRenderWidgetInputHandlerDelegate(this), this));
-}
-
void RenderWidget::Init(int32_t opener_id, WebWidget* web_widget) {
DCHECK(!webwidget_internal_);
DCHECK_NE(routing_id_, MSG_ROUTING_NONE);
+ input_handler_.reset(new RenderWidgetInputHandler(
+ GetRenderWidgetInputHandlerDelegate(this), this));
+
if (opener_id != MSG_ROUTING_NONE)
opener_id_ = opener_id;
« no previous file with comments | « content/renderer/render_widget.h ('k') | content/renderer/render_widget_fullscreen.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698