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

Side by Side Diff: chrome/browser/prerender/prerender_handle.h

Issue 15027009: Broadcast prerender URLs to all render processes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More unit tests Created 7 years, 7 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 | Annotate | Revision Log
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 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_HANDLE_H_ 5 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_HANDLE_H_
6 #define CHROME_BROWSER_PRERENDER_PRERENDER_HANDLE_H_ 6 #define CHROME_BROWSER_PRERENDER_PRERENDER_HANDLE_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/memory/weak_ptr.h" 9 #include "base/memory/weak_ptr.h"
10 #include "base/threading/non_thread_safe.h" 10 #include "base/threading/non_thread_safe.h"
(...skipping 23 matching lines...) Expand all
34 public: 34 public:
35 // Signals that the prerender has started running. 35 // Signals that the prerender has started running.
36 virtual void OnPrerenderStart(PrerenderHandle* handle) = 0; 36 virtual void OnPrerenderStart(PrerenderHandle* handle) = 0;
37 37
38 // Signals that the prerender has had its load event. 38 // Signals that the prerender has had its load event.
39 virtual void OnPrerenderStopLoading(PrerenderHandle* handle) = 0; 39 virtual void OnPrerenderStopLoading(PrerenderHandle* handle) = 0;
40 40
41 // Signals that the prerender has stopped running. 41 // Signals that the prerender has stopped running.
42 virtual void OnPrerenderStop(PrerenderHandle* handle) = 0; 42 virtual void OnPrerenderStop(PrerenderHandle* handle) = 0;
43 43
44 // Signals the discovery, through redirects, of a new alias for this
45 // prerender.
46 virtual void OnPrerenderAddAlias(PrerenderHandle* handle,
47 const GURL& alias_url) = 0;
48
49 protected: 44 protected:
50 Observer(); 45 Observer();
51 virtual ~Observer(); 46 virtual ~Observer();
52 }; 47 };
53 48
54 // Before calling the destructor, the caller must invalidate the handle by 49 // Before calling the destructor, the caller must invalidate the handle by
55 // calling either OnNavigateAway or OnCancel. 50 // calling either OnNavigateAway or OnCancel.
56 virtual ~PrerenderHandle(); 51 virtual ~PrerenderHandle();
57 52
58 void SetObserver(Observer* observer); 53 void SetObserver(Observer* observer);
(...skipping 20 matching lines...) Expand all
79 74
80 explicit PrerenderHandle(PrerenderManager::PrerenderData* prerender_data); 75 explicit PrerenderHandle(PrerenderManager::PrerenderData* prerender_data);
81 76
82 void AdoptPrerenderDataFrom(PrerenderHandle* other_handle); 77 void AdoptPrerenderDataFrom(PrerenderHandle* other_handle);
83 78
84 // From PrerenderContents::Observer: 79 // From PrerenderContents::Observer:
85 virtual void OnPrerenderStart(PrerenderContents* prerender_contents) OVERRIDE; 80 virtual void OnPrerenderStart(PrerenderContents* prerender_contents) OVERRIDE;
86 virtual void OnPrerenderStopLoading(PrerenderContents* prerender_contents) 81 virtual void OnPrerenderStopLoading(PrerenderContents* prerender_contents)
87 OVERRIDE; 82 OVERRIDE;
88 virtual void OnPrerenderStop(PrerenderContents* prerender_contents) OVERRIDE; 83 virtual void OnPrerenderStop(PrerenderContents* prerender_contents) OVERRIDE;
89 virtual void OnPrerenderAddAlias(PrerenderContents* prerender_contents,
90 const GURL& alias_url) OVERRIDE;
91 virtual void OnPrerenderCreatedMatchCompleteReplacement( 84 virtual void OnPrerenderCreatedMatchCompleteReplacement(
92 PrerenderContents* contents, PrerenderContents* replacement) OVERRIDE; 85 PrerenderContents* contents, PrerenderContents* replacement) OVERRIDE;
93 86
94 Observer* observer_; 87 Observer* observer_;
95 88
96 base::WeakPtr<PrerenderManager::PrerenderData> prerender_data_; 89 base::WeakPtr<PrerenderManager::PrerenderData> prerender_data_;
97 base::WeakPtrFactory<PrerenderHandle> weak_ptr_factory_; 90 base::WeakPtrFactory<PrerenderHandle> weak_ptr_factory_;
98 91
99 DISALLOW_COPY_AND_ASSIGN(PrerenderHandle); 92 DISALLOW_COPY_AND_ASSIGN(PrerenderHandle);
100 }; 93 };
101 94
102 } // namespace prerender 95 } // namespace prerender
103 96
104 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_HANDLE_H_ 97 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_HANDLE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698