Commit faa928c5 authored by Erik Chen's avatar Erik Chen Committed by Commit Bot

Update RenderViewImpl to handle null RenderWidget.

This CL has no intended behavior change. It updates RenderViewImpl::Send and
RenderViewImpl::PrintPage. Previously, Send() had a RenderWidget::is_closing().
This is unnecessary since destruction of RenderViewImpl is now synchronous, see
Destroy().

Bug: 912193
Change-Id: I828d58a458956ba2569f94d72b7f86d653519e4b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1815499Reviewed-by: default avatarDaniel Cheng <dcheng@chromium.org>
Commit-Queue: Erik Chen <erikchen@chromium.org>
Auto-Submit: Erik Chen <erikchen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#698678}
parent a18f4e3c
...@@ -1528,8 +1528,11 @@ base::StringPiece RenderViewImpl::GetSessionStorageNamespaceId() { ...@@ -1528,8 +1528,11 @@ base::StringPiece RenderViewImpl::GetSessionStorageNamespaceId() {
} }
void RenderViewImpl::PrintPage(WebLocalFrame* frame) { void RenderViewImpl::PrintPage(WebLocalFrame* frame) {
RenderFrameImpl::FromWebFrame(frame)->ScriptedPrint( RenderFrameImpl* render_frame = RenderFrameImpl::FromWebFrame(frame);
render_widget_->input_handler().handling_input_event()); RenderWidget* render_widget = render_frame->GetLocalRootRenderWidget();
render_frame->ScriptedPrint(
render_widget->input_handler().handling_input_event());
} }
void RenderViewImpl::AttachWebFrameWidget(blink::WebFrameWidget* frame_widget) { void RenderViewImpl::AttachWebFrameWidget(blink::WebFrameWidget* frame_widget) {
...@@ -1785,9 +1788,6 @@ bool RenderViewImpl::CanUpdateLayout() { ...@@ -1785,9 +1788,6 @@ bool RenderViewImpl::CanUpdateLayout() {
return true; return true;
} }
// blink::WebLocalFrameClient
// -----------------------------------------------------
void RenderViewImpl::SetEditCommandForNextKeyEvent(const std::string& name, void RenderViewImpl::SetEditCommandForNextKeyEvent(const std::string& name,
const std::string& value) { const std::string& value) {
render_widget_->SetEditCommandForNextKeyEvent(name, value); render_widget_->SetEditCommandForNextKeyEvent(name, value);
...@@ -1860,12 +1860,6 @@ bool RenderViewImpl::Send(IPC::Message* message) { ...@@ -1860,12 +1860,6 @@ bool RenderViewImpl::Send(IPC::Message* message) {
// No messages sent through RenderView come without a routing id, yay. Let's // No messages sent through RenderView come without a routing id, yay. Let's
// keep that up. // keep that up.
CHECK_NE(message->routing_id(), MSG_ROUTING_NONE); CHECK_NE(message->routing_id(), MSG_ROUTING_NONE);
// Don't send any messages after the browser has told us to close.
if (render_widget_->is_closing()) {
delete message;
return false;
}
return RenderThread::Get()->Send(message); return RenderThread::Get()->Send(message);
} }
......
...@@ -291,9 +291,13 @@ class CONTENT_EXPORT RenderViewImpl : public blink::WebViewClient, ...@@ -291,9 +291,13 @@ class CONTENT_EXPORT RenderViewImpl : public blink::WebViewClient,
void SetWebkitPreferences(const WebPreferences& preferences) override; void SetWebkitPreferences(const WebPreferences& preferences) override;
blink::WebView* GetWebView() override; blink::WebView* GetWebView() override;
bool GetContentStateImmediately() override; bool GetContentStateImmediately() override;
// Only used for testing.
void SetEditCommandForNextKeyEvent(const std::string& name, void SetEditCommandForNextKeyEvent(const std::string& name,
const std::string& value) override; const std::string& value) override;
// Only used for testing.
void ClearEditCommands() override; void ClearEditCommands() override;
const std::string& GetAcceptLanguages() override; const std::string& GetAcceptLanguages() override;
#if defined(OS_ANDROID) || defined(OS_CHROMEOS) #if defined(OS_ANDROID) || defined(OS_CHROMEOS)
virtual void didScrollWithKeyboard(const blink::WebSize& delta); virtual void didScrollWithKeyboard(const blink::WebSize& delta);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment