OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/prerender/prerender_contents.h" | 5 #include "chrome/browser/prerender/prerender_contents.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <functional> | 8 #include <functional> |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
317 | 317 |
318 // Everything after this point sets up the WebContents object and associated | 318 // Everything after this point sets up the WebContents object and associated |
319 // RenderView for the prerender page. Don't do this for members of the | 319 // RenderView for the prerender page. Don't do this for members of the |
320 // control group. | 320 // control group. |
321 if (is_control_group) | 321 if (is_control_group) |
322 return; | 322 return; |
323 | 323 |
324 prerendering_has_started_ = true; | 324 prerendering_has_started_ = true; |
325 | 325 |
326 WebContents* new_contents = CreateWebContents(session_storage_namespace); | 326 WebContents* new_contents = CreateWebContents(session_storage_namespace); |
327 prerender_contents_.reset(new TabContents(new_contents)); | 327 prerender_contents_.reset( |
| 328 TabContents::Factory::CreateTabContents(new_contents)); |
328 content::WebContentsObserver::Observe(new_contents); | 329 content::WebContentsObserver::Observe(new_contents); |
329 | 330 |
330 tab_contents_delegate_.reset(new TabContentsDelegateImpl(this)); | 331 tab_contents_delegate_.reset(new TabContentsDelegateImpl(this)); |
331 new_contents->SetDelegate(tab_contents_delegate_.get()); | 332 new_contents->SetDelegate(tab_contents_delegate_.get()); |
332 | 333 |
333 // Set the size of the prerender WebContents. | 334 // Set the size of the prerender WebContents. |
334 prerender_contents_->web_contents()->GetView()->SizeContents(size_); | 335 prerender_contents_->web_contents()->GetView()->SizeContents(size_); |
335 | 336 |
336 // Register as an observer of the RenderViewHost so we get messages. | 337 // Register as an observer of the RenderViewHost so we get messages. |
337 render_view_host_observer_.reset( | 338 render_view_host_observer_.reset( |
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
717 bool PrerenderContents::IsCrossSiteNavigationPending() const { | 718 bool PrerenderContents::IsCrossSiteNavigationPending() const { |
718 if (!prerender_contents_.get() || !prerender_contents_->web_contents()) | 719 if (!prerender_contents_.get() || !prerender_contents_->web_contents()) |
719 return false; | 720 return false; |
720 const WebContents* web_contents = prerender_contents_->web_contents(); | 721 const WebContents* web_contents = prerender_contents_->web_contents(); |
721 return (web_contents->GetSiteInstance() != | 722 return (web_contents->GetSiteInstance() != |
722 web_contents->GetPendingSiteInstance()); | 723 web_contents->GetPendingSiteInstance()); |
723 } | 724 } |
724 | 725 |
725 | 726 |
726 } // namespace prerender | 727 } // namespace prerender |
OLD | NEW |