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

Side by Side Diff: content/browser/frame_host/interstitial_page_impl.cc

Issue 2086423005: Using WebContents::UpdateTitleForEntry() instead of NavigationEntry::SetTitle() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Improving comment and removing the NOTREACHED. Created 4 years, 5 months 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 unified diff | Download patch
OLDNEW
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 280 matching lines...) Expand 10 before | Expand all | Expand 10 after
291 // been called from a RVH delegate method, and we can't delete the RVH out 291 // been called from a RVH delegate method, and we can't delete the RVH out
292 // from under itself. 292 // from under itself.
293 base::ThreadTaskRunnerHandle::Get()->PostNonNestableTask( 293 base::ThreadTaskRunnerHandle::Get()->PostNonNestableTask(
294 FROM_HERE, base::Bind(&InterstitialPageImpl::Shutdown, 294 FROM_HERE, base::Bind(&InterstitialPageImpl::Shutdown,
295 weak_ptr_factory_.GetWeakPtr())); 295 weak_ptr_factory_.GetWeakPtr()));
296 render_view_host_ = NULL; 296 render_view_host_ = NULL;
297 frame_tree_.root()->ResetForNewProcess(); 297 frame_tree_.root()->ResetForNewProcess();
298 controller_->delegate()->DetachInterstitialPage(); 298 controller_->delegate()->DetachInterstitialPage();
299 // Let's revert to the original title if necessary. 299 // Let's revert to the original title if necessary.
300 NavigationEntry* entry = controller_->GetVisibleEntry(); 300 NavigationEntry* entry = controller_->GetVisibleEntry();
301 if (entry && !new_navigation_ && should_revert_web_contents_title_) { 301 if (entry && !new_navigation_ && should_revert_web_contents_title_)
302 entry->SetTitle(original_web_contents_title_); 302 web_contents_->UpdateTitleForEntry(entry, original_web_contents_title_);
303 controller_->delegate()->NotifyNavigationStateChanged(
304 INVALIDATE_TYPE_TITLE);
305 }
306 303
307 static_cast<WebContentsImpl*>(web_contents_)->DidChangeVisibleSSLState(); 304 static_cast<WebContentsImpl*>(web_contents_)->DidChangeVisibleSSLState();
308 305
309 InterstitialPageMap::iterator iter = 306 InterstitialPageMap::iterator iter =
310 g_web_contents_to_interstitial_page->find(web_contents_); 307 g_web_contents_to_interstitial_page->find(web_contents_);
311 DCHECK(iter != g_web_contents_to_interstitial_page->end()); 308 DCHECK(iter != g_web_contents_to_interstitial_page->end());
312 if (iter != g_web_contents_to_interstitial_page->end()) 309 if (iter != g_web_contents_to_interstitial_page->end())
313 g_web_contents_to_interstitial_page->erase(iter); 310 g_web_contents_to_interstitial_page->erase(iter);
314 311
315 // Clear the WebContents pointer, because it may now be deleted. 312 // Clear the WebContents pointer, because it may now be deleted.
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
404 } 401 }
405 402
406 // If this interstitial is shown on an existing navigation entry, we'll need 403 // If this interstitial is shown on an existing navigation entry, we'll need
407 // to remember its title so we can revert to it when hidden. 404 // to remember its title so we can revert to it when hidden.
408 if (!new_navigation_ && !should_revert_web_contents_title_) { 405 if (!new_navigation_ && !should_revert_web_contents_title_) {
409 original_web_contents_title_ = entry->GetTitle(); 406 original_web_contents_title_ = entry->GetTitle();
410 should_revert_web_contents_title_ = true; 407 should_revert_web_contents_title_ = true;
411 } 408 }
412 // TODO(evan): make use of title_direction. 409 // TODO(evan): make use of title_direction.
413 // http://code.google.com/p/chromium/issues/detail?id=27094 410 // http://code.google.com/p/chromium/issues/detail?id=27094
414 entry->SetTitle(title); 411 web_contents_->UpdateTitleForEntry(entry, title);
415 controller_->delegate()->NotifyNavigationStateChanged(INVALIDATE_TYPE_TITLE);
416 } 412 }
417 413
418 InterstitialPage* InterstitialPageImpl::GetAsInterstitialPage() { 414 InterstitialPage* InterstitialPageImpl::GetAsInterstitialPage() {
419 return this; 415 return this;
420 } 416 }
421 417
422 AccessibilityMode InterstitialPageImpl::GetAccessibilityMode() const { 418 AccessibilityMode InterstitialPageImpl::GetAccessibilityMode() const {
423 if (web_contents_) 419 if (web_contents_)
424 return static_cast<WebContentsImpl*>(web_contents_)->GetAccessibilityMode(); 420 return static_cast<WebContentsImpl*>(web_contents_)->GetAccessibilityMode();
425 else 421 else
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
662 // means the interstitial was shown as a result of a resource loading in the 658 // means the interstitial was shown as a result of a resource loading in the
663 // page and we won't return to the original page, so we cancel blocked 659 // page and we won't return to the original page, so we cancel blocked
664 // requests in that case. 660 // requests in that case.
665 if (new_navigation_) 661 if (new_navigation_)
666 TakeActionOnResourceDispatcher(RESUME); 662 TakeActionOnResourceDispatcher(RESUME);
667 else 663 else
668 TakeActionOnResourceDispatcher(CANCEL); 664 TakeActionOnResourceDispatcher(CANCEL);
669 665
670 if (should_discard_pending_nav_entry_) { 666 if (should_discard_pending_nav_entry_) {
671 // Since no navigation happens we have to discard the transient entry 667 // Since no navigation happens we have to discard the transient entry
672 // explicitely. Note that by calling DiscardNonCommittedEntries() we also 668 // explicitly. Note that by calling DiscardNonCommittedEntries() we also
673 // discard the pending entry, which is what we want, since the navigation is 669 // discard the pending entry, which is what we want, since the navigation is
674 // cancelled. 670 // cancelled.
675 controller_->DiscardNonCommittedEntries(); 671 controller_->DiscardNonCommittedEntries();
676 } 672 }
677 673
678 if (reload_on_dont_proceed_) 674 if (reload_on_dont_proceed_)
679 controller_->Reload(true); 675 controller_->Reload(true);
680 676
681 Hide(); 677 Hide();
682 delegate_->OnDontProceed(); 678 delegate_->OnDontProceed();
(...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after
941 void InterstitialPageImpl::UnderlyingContentObserver::WebContentsDestroyed() { 937 void InterstitialPageImpl::UnderlyingContentObserver::WebContentsDestroyed() {
942 interstitial_->OnNavigatingAwayOrTabClosing(); 938 interstitial_->OnNavigatingAwayOrTabClosing();
943 } 939 }
944 940
945 TextInputManager* InterstitialPageImpl::GetTextInputManager() { 941 TextInputManager* InterstitialPageImpl::GetTextInputManager() {
946 return !web_contents_ ? nullptr : static_cast<WebContentsImpl*>(web_contents_) 942 return !web_contents_ ? nullptr : static_cast<WebContentsImpl*>(web_contents_)
947 ->GetTextInputManager(); 943 ->GetTextInputManager();
948 } 944 }
949 945
950 } // namespace content 946 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698