| Index: content/browser/tab_contents/tab_contents.cc
|
| ===================================================================
|
| --- content/browser/tab_contents/tab_contents.cc (revision 126521)
|
| +++ content/browser/tab_contents/tab_contents.cc (working copy)
|
| @@ -65,9 +65,16 @@
|
| #include "webkit/glue/web_intent_data.h"
|
| #include "webkit/glue/webpreferences.h"
|
|
|
| -#if defined(OS_MACOSX)
|
| +#if defined(OS_WIN) && !defined(USE_AURA)
|
| +#include "content/browser/tab_contents/tab_contents_view_win.h"
|
| +#elif defined(TOOLKIT_GTK)
|
| +#include "content/browser/tab_contents/tab_contents_view_gtk.h"
|
| +#elif defined(OS_MACOSX)
|
| +#include "content/browser/tab_contents/web_contents_view_mac.h"
|
| #include "ui/gfx/surface/io_surface_support_mac.h"
|
| -#endif // defined(OS_MACOSX)
|
| +#elif defined(OS_ANDROID)
|
| +#include "content/browser/tab_contents/web_contents_view_android.h"
|
| +#endif
|
|
|
| // Cross-Site Navigations
|
| //
|
| @@ -239,8 +246,6 @@
|
| : delegate_(NULL),
|
| ALLOW_THIS_IN_INITIALIZER_LIST(controller_(
|
| this, browser_context, session_storage_namespace)),
|
| - ALLOW_THIS_IN_INITIALIZER_LIST(view_(
|
| - content::GetContentClient()->browser()->CreateWebContentsView(this))),
|
| ALLOW_THIS_IN_INITIALIZER_LIST(render_manager_(this, this)),
|
| is_loading_(false),
|
| crashed_status_(base::TERMINATION_STATUS_STILL_RUNNING),
|
| @@ -270,6 +275,24 @@
|
| has_opener_(false) {
|
| render_manager_.Init(browser_context, site_instance, routing_id);
|
|
|
| + view_.reset(content::GetContentClient()->browser()->
|
| + OverrideCreateWebContentsView(this));
|
| + if (!view_.get()) {
|
| + content::WebContentsViewDelegate* delegate =
|
| + content::GetContentClient()->browser()->GetWebContentsViewDelegate(
|
| + this);
|
| +#if defined(OS_WIN) && !defined(USE_AURA)
|
| + view_.reset(new TabContentsViewWin(this, delegate));
|
| +#elif defined(TOOLKIT_GTK)
|
| + view_.reset(new content::TabContentsViewGtk(this, delegate));
|
| +#elif defined(OS_MACOSX)
|
| + view_.reset(web_contents_view_mac::CreateWebContentsView(this, delegate));
|
| +#elif defined(OS_ANDROID)
|
| + view_.reset(new WebContentsViewAndroid(this));
|
| +#endif
|
| + }
|
| + CHECK(view_.get());
|
| +
|
| // We have the initial size of the view be based on the size of the passed in
|
| // tab contents (normally a tab from the same window).
|
| view_->CreateView(base_tab_contents ?
|
|
|