| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "content/browser/frame_host/interstitial_page_impl.h" | 5 #include "content/browser/frame_host/interstitial_page_impl.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 228 base::WrapUnique(new NavigationEntryImpl); | 228 base::WrapUnique(new NavigationEntryImpl); |
| 229 entry->SetURL(url_); | 229 entry->SetURL(url_); |
| 230 entry->SetVirtualURL(url_); | 230 entry->SetVirtualURL(url_); |
| 231 entry->set_page_type(PAGE_TYPE_INTERSTITIAL); | 231 entry->set_page_type(PAGE_TYPE_INTERSTITIAL); |
| 232 | 232 |
| 233 // Give delegates a chance to set some states on the navigation entry. | 233 // Give delegates a chance to set some states on the navigation entry. |
| 234 delegate_->OverrideEntry(entry.get()); | 234 delegate_->OverrideEntry(entry.get()); |
| 235 | 235 |
| 236 controller_->SetTransientEntry(std::move(entry)); | 236 controller_->SetTransientEntry(std::move(entry)); |
| 237 | 237 |
| 238 static_cast<WebContentsImpl*>(web_contents_)->DidChangeVisibleSSLState(); | 238 static_cast<WebContentsImpl*>(web_contents_) |
| 239 ->DidChangeVisibleSecurityState(); |
| 239 } | 240 } |
| 240 | 241 |
| 241 DCHECK(!render_view_host_); | 242 DCHECK(!render_view_host_); |
| 242 render_view_host_ = CreateRenderViewHost(); | 243 render_view_host_ = CreateRenderViewHost(); |
| 243 CreateWebContentsView(); | 244 CreateWebContentsView(); |
| 244 | 245 |
| 245 GURL data_url = GURL("data:text/html;charset=utf-8," + | 246 GURL data_url = GURL("data:text/html;charset=utf-8," + |
| 246 net::EscapePath(delegate_->GetHTMLContents())); | 247 net::EscapePath(delegate_->GetHTMLContents())); |
| 247 frame_tree_.root()->current_frame_host()->NavigateToInterstitialURL(data_url); | 248 frame_tree_.root()->current_frame_host()->NavigateToInterstitialURL(data_url); |
| 248 frame_tree_.root()->current_frame_host()->SetAccessibilityMode( | 249 frame_tree_.root()->current_frame_host()->SetAccessibilityMode( |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 294 FROM_HERE, base::Bind(&InterstitialPageImpl::Shutdown, | 295 FROM_HERE, base::Bind(&InterstitialPageImpl::Shutdown, |
| 295 weak_ptr_factory_.GetWeakPtr())); | 296 weak_ptr_factory_.GetWeakPtr())); |
| 296 render_view_host_ = NULL; | 297 render_view_host_ = NULL; |
| 297 frame_tree_.root()->ResetForNewProcess(); | 298 frame_tree_.root()->ResetForNewProcess(); |
| 298 controller_->delegate()->DetachInterstitialPage(); | 299 controller_->delegate()->DetachInterstitialPage(); |
| 299 // Let's revert to the original title if necessary. | 300 // Let's revert to the original title if necessary. |
| 300 NavigationEntry* entry = controller_->GetVisibleEntry(); | 301 NavigationEntry* entry = controller_->GetVisibleEntry(); |
| 301 if (entry && !new_navigation_ && should_revert_web_contents_title_) | 302 if (entry && !new_navigation_ && should_revert_web_contents_title_) |
| 302 web_contents_->UpdateTitleForEntry(entry, original_web_contents_title_); | 303 web_contents_->UpdateTitleForEntry(entry, original_web_contents_title_); |
| 303 | 304 |
| 304 static_cast<WebContentsImpl*>(web_contents_)->DidChangeVisibleSSLState(); | 305 static_cast<WebContentsImpl*>(web_contents_)->DidChangeVisibleSecurityState(); |
| 305 | 306 |
| 306 InterstitialPageMap::iterator iter = | 307 InterstitialPageMap::iterator iter = |
| 307 g_web_contents_to_interstitial_page->find(web_contents_); | 308 g_web_contents_to_interstitial_page->find(web_contents_); |
| 308 DCHECK(iter != g_web_contents_to_interstitial_page->end()); | 309 DCHECK(iter != g_web_contents_to_interstitial_page->end()); |
| 309 if (iter != g_web_contents_to_interstitial_page->end()) | 310 if (iter != g_web_contents_to_interstitial_page->end()) |
| 310 g_web_contents_to_interstitial_page->erase(iter); | 311 g_web_contents_to_interstitial_page->erase(iter); |
| 311 | 312 |
| 312 // Clear the WebContents pointer, because it may now be deleted. | 313 // Clear the WebContents pointer, because it may now be deleted. |
| 313 // This signifies that we are in the process of shutting down. | 314 // This signifies that we are in the process of shutting down. |
| 314 web_contents_ = NULL; | 315 web_contents_ = NULL; |
| (...skipping 638 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 953 void InterstitialPageImpl::UpdateDeviceScaleFactor(double device_scale_factor) { | 954 void InterstitialPageImpl::UpdateDeviceScaleFactor(double device_scale_factor) { |
| 954 WebContentsImpl* web_contents_impl = | 955 WebContentsImpl* web_contents_impl = |
| 955 static_cast<WebContentsImpl*>(web_contents_); | 956 static_cast<WebContentsImpl*>(web_contents_); |
| 956 if (!web_contents_impl) | 957 if (!web_contents_impl) |
| 957 return; | 958 return; |
| 958 | 959 |
| 959 web_contents_impl->UpdateDeviceScaleFactor(device_scale_factor); | 960 web_contents_impl->UpdateDeviceScaleFactor(device_scale_factor); |
| 960 } | 961 } |
| 961 | 962 |
| 962 } // namespace content | 963 } // namespace content |
| OLD | NEW |