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 #import "ios/web/navigation/navigation_manager_impl.h" | 5 #import "ios/web/navigation/navigation_manager_impl.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
353 NavigationItem* item = GetVisibleItem(); | 353 NavigationItem* item = GetVisibleItem(); |
354 GURL url = item ? item->GetURL() : GURL(url::kAboutBlankURL); | 354 GURL url = item ? item->GetURL() : GURL(url::kAboutBlankURL); |
355 web::Referrer referrer = item ? item->GetReferrer() : web::Referrer(); | 355 web::Referrer referrer = item ? item->GetReferrer() : web::Referrer(); |
356 | 356 |
357 WebState::OpenURLParams params(url, referrer, | 357 WebState::OpenURLParams params(url, referrer, |
358 WindowOpenDisposition::CURRENT_TAB, | 358 WindowOpenDisposition::CURRENT_TAB, |
359 ui::PAGE_TRANSITION_RELOAD, NO); | 359 ui::PAGE_TRANSITION_RELOAD, NO); |
360 delegate_->GetWebState()->OpenURL(params); | 360 delegate_->GetWebState()->OpenURL(params); |
361 } | 361 } |
362 | 362 |
| 363 void NavigationManagerImpl::CopyStateFromAndPrune( |
| 364 const NavigationManager* manager) { |
| 365 DCHECK(manager); |
| 366 CRWSessionController* other_session = |
| 367 static_cast<const NavigationManagerImpl*>(manager)->session_controller_; |
| 368 [session_controller_ copyStateFromSessionControllerAndPrune:other_session]; |
| 369 } |
| 370 |
| 371 bool NavigationManagerImpl::CanPruneAllButLastCommittedItem() const { |
| 372 return [session_controller_ canPruneAllButLastCommittedItem]; |
| 373 } |
| 374 |
363 std::unique_ptr<std::vector<BrowserURLRewriter::URLRewriter>> | 375 std::unique_ptr<std::vector<BrowserURLRewriter::URLRewriter>> |
364 NavigationManagerImpl::GetTransientURLRewriters() { | 376 NavigationManagerImpl::GetTransientURLRewriters() { |
365 return std::move(transient_url_rewriters_); | 377 return std::move(transient_url_rewriters_); |
366 } | 378 } |
367 | 379 |
368 void NavigationManagerImpl::RemoveTransientURLRewriters() { | 380 void NavigationManagerImpl::RemoveTransientURLRewriters() { |
369 transient_url_rewriters_.reset(); | 381 transient_url_rewriters_.reset(); |
370 } | 382 } |
371 | 383 |
372 int NavigationManagerImpl::GetIndexForOffset(int offset) const { | 384 int NavigationManagerImpl::GetIndexForOffset(int offset) const { |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
455 const ScopedNavigationItemImplList& items = [session_controller_ items]; | 467 const ScopedNavigationItemImplList& items = [session_controller_ items]; |
456 while (index >= 0) { | 468 while (index >= 0) { |
457 NavigationItem* item = items[index--].get(); | 469 NavigationItem* item = items[index--].get(); |
458 if (!client->IsAppSpecificURL(item->GetVirtualURL())) | 470 if (!client->IsAppSpecificURL(item->GetVirtualURL())) |
459 return item; | 471 return item; |
460 } | 472 } |
461 return nullptr; | 473 return nullptr; |
462 } | 474 } |
463 | 475 |
464 } // namespace web | 476 } // namespace web |
OLD | NEW |