summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-03-09 20:07:23 +0000
committerjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-03-09 20:07:23 +0000
commit76138b78caa7365ed9af0e2a76b1ceb75a8e40db (patch)
tree581a76004aa6203e046fbf350ef4c877b464e467 /chrome
parent7e602e99c301ccc8619047db4aa979e52ef3504e (diff)
downloadchromium_src-76138b78caa7365ed9af0e2a76b1ceb75a8e40db.zip
chromium_src-76138b78caa7365ed9af0e2a76b1ceb75a8e40db.tar.gz
chromium_src-76138b78caa7365ed9af0e2a76b1ceb75a8e40db.tar.bz2
Reverting 11277.
Reverting build bustage Review URL: http://codereview.chromium.org/40315 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11278 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/browser/tab_contents/interstitial_page.cc37
1 files changed, 33 insertions, 4 deletions
diff --git a/chrome/browser/tab_contents/interstitial_page.cc b/chrome/browser/tab_contents/interstitial_page.cc
index f49a4f0..adfe270 100644
--- a/chrome/browser/tab_contents/interstitial_page.cc
+++ b/chrome/browser/tab_contents/interstitial_page.cc
@@ -9,16 +9,23 @@
#include "chrome/browser/browser.h"
#include "chrome/browser/browser_list.h"
#include "chrome/browser/dom_operation_notification_details.h"
-#include "chrome/browser/renderer_host/render_widget_host_view.h"
#include "chrome/browser/tab_contents/navigation_controller.h"
#include "chrome/browser/tab_contents/navigation_entry.h"
#include "chrome/browser/tab_contents/web_contents.h"
-#include "chrome/browser/tab_contents/web_contents_view.h"
#include "chrome/common/notification_service.h"
#include "chrome/views/window_delegate.h"
#include "grit/browser_resources.h"
#include "net/base/escape.h"
+#if defined(OS_WIN)
+#include "chrome/browser/renderer_host/render_widget_host_view_win.h"
+#include "chrome/browser/tab_contents/web_contents_view_win.h"
+#include "chrome/views/window.h"
+#else
+#include "chrome/browser/renderer_host/render_widget_host_view.h"
+#include "chrome/browser/tab_contents/web_contents_view.h"
+#endif
+
namespace {
class ResourceRequestTask : public Task {
@@ -241,6 +248,29 @@ void InterstitialPage::Observe(NotificationType type,
}
RenderViewHost* InterstitialPage::CreateRenderViewHost() {
+#if defined(OS_WIN)
+ RenderViewHost* render_view_host = new RenderViewHost(
+ SiteInstance::CreateSiteInstance(tab()->profile()),
+ this, MSG_ROUTING_NONE, NULL);
+ RenderWidgetHostViewWin* view =
+ new RenderWidgetHostViewWin(render_view_host);
+ render_view_host->set_view(view);
+ view->Create(tab_->GetContentNativeView());
+ view->set_parent_hwnd(tab_->GetContentNativeView());
+ WebContentsViewWin* web_contents_view =
+ static_cast<WebContentsViewWin*>(tab_->view());
+ render_view_host->AllowDomAutomationBindings();
+ render_view_host->CreateRenderView();
+ // SetSize must be called after CreateRenderView or the HWND won't show.
+ view->SetSize(web_contents_view->GetContainerSize());
+
+ return render_view_host;
+#else
+ // It is untested, whether this code is sufficiently generic that it
+ // works with Windows, and thus obsoletes the special-cased code above.
+ // If it does work, don't forget to also clean up the include statements!
+ NOTIMPLEMENTED();
+
RenderViewHost* render_view_host = new RenderViewHost(
SiteInstance::CreateSiteInstance(tab()->profile()),
this, MSG_ROUTING_NONE, NULL);
@@ -251,9 +281,8 @@ RenderViewHost* InterstitialPage::CreateRenderViewHost() {
render_view_host->AllowDomAutomationBindings();
render_view_host->CreateRenderView();
view->SetSize(web_contents_view->GetContainerSize());
- // Don't show the interstitial until we have navigated to it.
- view->Hide();
return render_view_host;
+#endif
}
void InterstitialPage::Proceed() {