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

Side by Side Diff: chrome/browser/prerender/prerender_contents.cc

Issue 2833553002: Revert of [Prerender] Restore request priorities when swapped in (Closed)
Patch Set: Created 3 years, 8 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 (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 <stddef.h> 7 #include <stddef.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <functional> 10 #include <functional>
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
63 const char* const kValidHttpMethods[] = { 63 const char* const kValidHttpMethods[] = {
64 "GET", "HEAD", 64 "GET", "HEAD",
65 }; 65 };
66 66
67 // Additional valid HTTP methods for prerendering. 67 // Additional valid HTTP methods for prerendering.
68 const char* const kValidHttpMethodsForPrerendering[] = { 68 const char* const kValidHttpMethodsForPrerendering[] = {
69 "OPTIONS", "POST", "TRACE", 69 "OPTIONS", "POST", "TRACE",
70 }; 70 };
71 71
72 void ResumeThrottles( 72 void ResumeThrottles(
73 std::vector<base::WeakPtr<PrerenderResourceThrottle>> throttles, 73 std::vector<base::WeakPtr<PrerenderResourceThrottle> > throttles) {
74 std::vector<base::WeakPtr<PrerenderResourceThrottle>> idle_resources) {
75 for (auto resource : idle_resources) {
76 if (resource)
77 resource->ResetResourcePriority();
78 }
79 for (size_t i = 0; i < throttles.size(); i++) { 74 for (size_t i = 0; i < throttles.size(); i++) {
80 if (throttles[i]) 75 if (throttles[i])
81 throttles[i]->ResumeHandler(); 76 throttles[i]->ResumeHandler();
82 } 77 }
83 } 78 }
84 79
85 } // namespace 80 } // namespace
86 81
87 class PrerenderContentsFactoryImpl : public PrerenderContents::Factory { 82 class PrerenderContentsFactoryImpl : public PrerenderContents::Factory {
88 public: 83 public:
(...skipping 666 matching lines...) Expand 10 before | Expand all | Expand 10 after
755 SetFinalStatus(FINAL_STATUS_USED); 750 SetFinalStatus(FINAL_STATUS_USED);
756 751
757 if (prerender_contents_.get()) { 752 if (prerender_contents_.get()) {
758 prerender_contents_->SendToAllFrames( 753 prerender_contents_->SendToAllFrames(
759 new PrerenderMsg_SetIsPrerendering(MSG_ROUTING_NONE, NO_PRERENDER)); 754 new PrerenderMsg_SetIsPrerendering(MSG_ROUTING_NONE, NO_PRERENDER));
760 } 755 }
761 756
762 NotifyPrerenderStop(); 757 NotifyPrerenderStop();
763 758
764 BrowserThread::PostTask( 759 BrowserThread::PostTask(
765 BrowserThread::IO, FROM_HERE, 760 BrowserThread::IO,
766 base::Bind(&ResumeThrottles, resource_throttles_, idle_resources_)); 761 FROM_HERE,
762 base::Bind(&ResumeThrottles, resource_throttles_));
767 resource_throttles_.clear(); 763 resource_throttles_.clear();
768 idle_resources_.clear();
769 } 764 }
770 765
771 void PrerenderContents::CancelPrerenderForPrinting() { 766 void PrerenderContents::CancelPrerenderForPrinting() {
772 Destroy(FINAL_STATUS_WINDOW_PRINT); 767 Destroy(FINAL_STATUS_WINDOW_PRINT);
773 } 768 }
774 769
775 void PrerenderContents::OnPrerenderCancelerRequest( 770 void PrerenderContents::OnPrerenderCancelerRequest(
776 chrome::mojom::PrerenderCancelerRequest request) { 771 chrome::mojom::PrerenderCancelerRequest request) {
777 if (!prerender_canceler_binding_.is_bound()) 772 if (!prerender_canceler_binding_.is_bound())
778 prerender_canceler_binding_.Bind(std::move(request)); 773 prerender_canceler_binding_.Bind(std::move(request));
779 } 774 }
780 775
781 void PrerenderContents::AddResourceThrottle( 776 void PrerenderContents::AddResourceThrottle(
782 const base::WeakPtr<PrerenderResourceThrottle>& throttle) { 777 const base::WeakPtr<PrerenderResourceThrottle>& throttle) {
783 resource_throttles_.push_back(throttle); 778 resource_throttles_.push_back(throttle);
784 } 779 }
785 780
786 void PrerenderContents::AddIdleResource(
787 const base::WeakPtr<PrerenderResourceThrottle>& throttle) {
788 idle_resources_.push_back(throttle);
789 }
790
791 void PrerenderContents::AddNetworkBytes(int64_t bytes) { 781 void PrerenderContents::AddNetworkBytes(int64_t bytes) {
792 network_bytes_ += bytes; 782 network_bytes_ += bytes;
793 for (Observer& observer : observer_list_) 783 for (Observer& observer : observer_list_)
794 observer.OnPrerenderNetworkBytesChanged(this); 784 observer.OnPrerenderNetworkBytesChanged(this);
795 } 785 }
796 786
797 } // namespace prerender 787 } // namespace prerender
OLDNEW
« no previous file with comments | « chrome/browser/prerender/prerender_contents.h ('k') | chrome/browser/prerender/prerender_nostate_prefetch_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698