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

Unified Diff: chrome/browser/ui/gtk/extensions/extension_view_gtk.cc

Issue 8587001: Have ExtensionHost use TabContents instead of RenderViewHost. Try #3. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 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
Index: chrome/browser/ui/gtk/extensions/extension_view_gtk.cc
diff --git a/chrome/browser/ui/gtk/extensions/extension_view_gtk.cc b/chrome/browser/ui/gtk/extensions/extension_view_gtk.cc
index 6f2689c3a97afd6756cdc35c6456f449a20bc824..baa6a63a4d1615da29e289bd7586c2003e549325 100644
--- a/chrome/browser/ui/gtk/extensions/extension_view_gtk.cc
+++ b/chrome/browser/ui/gtk/extensions/extension_view_gtk.cc
@@ -7,13 +7,14 @@
#include "chrome/browser/extensions/extension_host.h"
#include "chrome/browser/ui/gtk/extensions/extension_popup_gtk.h"
#include "content/browser/renderer_host/render_view_host.h"
-#include "content/browser/renderer_host/render_widget_host_view_gtk.h"
+#include "content/browser/renderer_host/render_widget_host_view.h"
+#include "content/browser/tab_contents/tab_contents.h"
+#include "content/browser/tab_contents/tab_contents_view.h"
ExtensionViewGtk::ExtensionViewGtk(ExtensionHost* extension_host,
Browser* browser)
: browser_(browser),
extension_host_(extension_host),
- render_widget_host_view_(NULL),
container_(NULL) {
}
@@ -22,7 +23,7 @@ void ExtensionViewGtk::Init() {
}
gfx::NativeView ExtensionViewGtk::native_view() {
- return render_widget_host_view_->native_view();
+ return extension_host_->host_contents()->view()->GetNativeView();
}
RenderViewHost* ExtensionViewGtk::render_view_host() const {
@@ -30,8 +31,8 @@ RenderViewHost* ExtensionViewGtk::render_view_host() const {
}
void ExtensionViewGtk::SetBackground(const SkBitmap& background) {
- if (render_view_host()->IsRenderViewLive()) {
- render_widget_host_view_->SetBackground(background);
+ if (render_view_host()->IsRenderViewLive() && render_view_host()->view()) {
+ render_view_host()->view()->SetBackground(background);
} else {
pending_background_ = background;
}
@@ -43,16 +44,12 @@ void ExtensionViewGtk::UpdatePreferredSize(const gfx::Size& new_size) {
}
void ExtensionViewGtk::CreateWidgetHostView() {
- DCHECK(!render_widget_host_view_);
- render_widget_host_view_ = new RenderWidgetHostViewGtk(render_view_host());
- render_widget_host_view_->InitAsChild();
-
- extension_host_->CreateRenderViewSoon(render_widget_host_view_);
+ extension_host_->CreateRenderViewSoon();
}
void ExtensionViewGtk::RenderViewCreated() {
if (!pending_background_.empty() && render_view_host()->view()) {
- render_widget_host_view_->SetBackground(pending_background_);
+ render_view_host()->view()->SetBackground(pending_background_);
pending_background_.reset();
}

Powered by Google App Engine
This is Rietveld 408576698