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_link_manager.h" | 5 #include "chrome/browser/prerender/prerender_link_manager.h" |
6 | 6 |
7 #include <functional> | 7 #include <functional> |
8 #include <limits> | 8 #include <limits> |
9 #include <set> | 9 #include <set> |
10 #include <string> | 10 #include <string> |
(...skipping 458 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
469 } | 469 } |
470 std::for_each(to_erase.begin(), to_erase.end(), | 470 std::for_each(to_erase.begin(), to_erase.end(), |
471 std::bind1st(std::mem_fun(&std::list<LinkPrerender>::erase), | 471 std::bind1st(std::mem_fun(&std::list<LinkPrerender>::erase), |
472 &prerenders_)); | 472 &prerenders_)); |
473 } | 473 } |
474 | 474 |
475 void PrerenderLinkManager::Shutdown() { | 475 void PrerenderLinkManager::Shutdown() { |
476 has_shutdown_ = true; | 476 has_shutdown_ = true; |
477 } | 477 } |
478 | 478 |
479 // In practice, this is always called from either | 479 // In practice, this is always called from PrerenderLinkManager::OnAddPrerender. |
480 // PrerenderLinkManager::OnAddPrerender in the regular case, or in the pending | |
481 // prerender case, from PrerenderHandle::AdoptPrerenderDataFrom. | |
482 void PrerenderLinkManager::OnPrerenderStart( | 480 void PrerenderLinkManager::OnPrerenderStart( |
483 PrerenderHandle* prerender_handle) { | 481 PrerenderHandle* prerender_handle) { |
484 LinkPrerender* prerender = FindByPrerenderHandle(prerender_handle); | 482 LinkPrerender* prerender = FindByPrerenderHandle(prerender_handle); |
485 if (!prerender) | 483 if (!prerender) |
486 return; | 484 return; |
487 Send(prerender->launcher_child_id, | 485 Send(prerender->launcher_child_id, |
488 new PrerenderMsg_OnPrerenderStart(prerender->prerender_id)); | 486 new PrerenderMsg_OnPrerenderStart(prerender->prerender_id)); |
489 } | 487 } |
490 | 488 |
491 void PrerenderLinkManager::OnPrerenderStopLoading( | 489 void PrerenderLinkManager::OnPrerenderStopLoading( |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
533 DCHECK(!prerender->is_match_complete_replacement); | 531 DCHECK(!prerender->is_match_complete_replacement); |
534 prerender->is_match_complete_replacement = true; | 532 prerender->is_match_complete_replacement = true; |
535 Send(prerender->launcher_child_id, | 533 Send(prerender->launcher_child_id, |
536 new PrerenderMsg_OnPrerenderStop(prerender->prerender_id)); | 534 new PrerenderMsg_OnPrerenderStop(prerender->prerender_id)); |
537 // Do not call RemovePrerender here. The replacement needs to stay connected | 535 // Do not call RemovePrerender here. The replacement needs to stay connected |
538 // to the HTMLLinkElement in the renderer so it notices renderer-triggered | 536 // to the HTMLLinkElement in the renderer so it notices renderer-triggered |
539 // cancelations. | 537 // cancelations. |
540 } | 538 } |
541 | 539 |
542 } // namespace prerender | 540 } // namespace prerender |
OLD | NEW |