Remove WebWidget::IsFrameWidget.

The WebWidget in a frame-based RenderWidget is always a WebFrameWidget
now.

The TextInputClientObserver checks if the WebWidget is a WebFrameWidget
when it is not null, but for a frame-based RenderWidget is always a
WebFrameWidget now when not null, and becomes null instead of a non-
WebFrameWidget when the main local frame is detached. So we can just
check (and return directly) the nullptr instead.

[email protected]

Bug: 419087
Change-Id: If0c3eea72a468d5d1b63cc8a5427c7a17880c59a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1783919
Reviewed-by: Daniel Cheng <[email protected]>
Reviewed-by: Avi Drissman <[email protected]>
Commit-Queue: danakj <[email protected]>
Cr-Commit-Position: refs/heads/master@{#693728}
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index be2a3f0..2a0b4676 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -571,6 +571,11 @@
 
   show_callback_ = std::move(show_callback);
 
+#if defined(OS_MACOSX)
+  text_input_client_observer_ =
+      std::make_unique<TextInputClientObserver>(for_frame() ? this : nullptr);
+#endif
+
   webwidget_internal_ = web_widget;
   webwidget_mouse_lock_target_.reset(new WebWidgetLockTarget(this));
   mouse_lock_dispatcher_.reset(new RenderWidgetMouseLockDispatcher(this));
@@ -3751,10 +3756,6 @@
   layer_tree_view_->ClearCachesOnNextCommit();
 }
 
-blink::WebWidget* RenderWidget::GetWebWidget() const {
-  return webwidget_internal_;
-}
-
 blink::WebInputMethodController* RenderWidget::GetInputMethodController()
     const {
   if (auto* frame_widget = GetFrameWidget())