0

Post RenderWidget removal cleanup.

Now that the WebLocalFrame solely owns (and closes) the
WebFrameWidgetImpl we can clear the pointer after closure as opposed
to doing it via a callback.

BUG=1097816

Change-Id: I605016b100189b9ccf7623989fbecbe860a6896a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2585827
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#835977}
This commit is contained in:
Dave Tapuska
2020-12-11 03:12:22 +00:00
committed by Chromium LUCI CQ
parent 46bfd098af
commit 8fc5b956eb
3 changed files with 3 additions and 8 deletions

@ -293,7 +293,6 @@ void WebFrameWidgetImpl::Close() {
}
mutator_dispatcher_ = nullptr;
local_root_->ClearFrameWidget();
local_root_ = nullptr;
widget_base_->Shutdown();
widget_base_.reset();

@ -706,8 +706,10 @@ WebRemoteFrame* WebLocalFrameImpl::ToWebRemoteFrame() {
void WebLocalFrameImpl::Close() {
WebLocalFrame::Close();
if (frame_widget_)
if (frame_widget_) {
frame_widget_->Close();
frame_widget_ = nullptr;
}
client_ = nullptr;
@ -2471,10 +2473,6 @@ void WebLocalFrameImpl::WillDetachParent() {
}
}
void WebLocalFrameImpl::ClearFrameWidget() {
frame_widget_ = nullptr;
}
void WebLocalFrameImpl::CreateFrameWidgetInternal(
base::PassKey<WebLocalFrame> pass_key,
CrossVariantMojoAssociatedRemote<mojom::blink::FrameWidgetHostInterfaceBase>

@ -459,8 +459,6 @@ class CORE_EXPORT WebLocalFrameImpl final
// Otherwise creates it and then returns.
TextFinder& EnsureTextFinder();
void ClearFrameWidget();
// TODO(dcheng): Remove this and make |FrameWidget()| always return something
// useful.
WebFrameWidgetImpl* LocalRootFrameWidget();