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

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

Issue 1548133002: Switch to standard integer types in chrome/browser/, part 3 of 4. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 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 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_LINK_MANAGER_H_ 5 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_LINK_MANAGER_H_
6 #define CHROME_BROWSER_PRERENDER_PRERENDER_LINK_MANAGER_H_ 6 #define CHROME_BROWSER_PRERENDER_PRERENDER_LINK_MANAGER_H_
7 7
8 #include <stddef.h>
9 #include <stdint.h>
10
8 #include <list> 11 #include <list>
9 12
10 #include "base/basictypes.h"
11 #include "base/gtest_prod_util.h" 13 #include "base/gtest_prod_util.h"
14 #include "base/macros.h"
12 #include "base/time/time.h" 15 #include "base/time/time.h"
13 #include "chrome/browser/prerender/prerender_handle.h" 16 #include "chrome/browser/prerender/prerender_handle.h"
14 #include "components/keyed_service/core/keyed_service.h" 17 #include "components/keyed_service/core/keyed_service.h"
15 #include "url/gurl.h" 18 #include "url/gurl.h"
16 19
17 class Profile; 20 class Profile;
18 21
19 namespace content { 22 namespace content {
20 struct Referrer; 23 struct Referrer;
21 } 24 }
(...skipping 18 matching lines...) Expand all
40 public: 43 public:
41 explicit PrerenderLinkManager(PrerenderManager* manager); 44 explicit PrerenderLinkManager(PrerenderManager* manager);
42 ~PrerenderLinkManager() override; 45 ~PrerenderLinkManager() override;
43 46
44 // A <link rel=prerender ...> element has been inserted into the document. 47 // A <link rel=prerender ...> element has been inserted into the document.
45 // The |prerender_id| must be unique per |child_id|, and is assigned by the 48 // The |prerender_id| must be unique per |child_id|, and is assigned by the
46 // WebPrerendererClient. 49 // WebPrerendererClient.
47 void OnAddPrerender(int child_id, 50 void OnAddPrerender(int child_id,
48 int prerender_id, 51 int prerender_id,
49 const GURL& url, 52 const GURL& url,
50 uint32 rel_types, 53 uint32_t rel_types,
51 const content::Referrer& referrer, 54 const content::Referrer& referrer,
52 const gfx::Size& size, 55 const gfx::Size& size,
53 int render_view_route_id); 56 int render_view_route_id);
54 57
55 // A <link rel=prerender ...> element has been explicitly removed from a 58 // A <link rel=prerender ...> element has been explicitly removed from a
56 // document. 59 // document.
57 void OnCancelPrerender(int child_id, int prerender_id); 60 void OnCancelPrerender(int child_id, int prerender_id);
58 61
59 // A renderer launching <link rel=prerender ...> has navigated away from the 62 // A renderer launching <link rel=prerender ...> has navigated away from the
60 // launching page, the launching renderer process has crashed, or perhaps the 63 // launching page, the launching renderer process has crashed, or perhaps the
61 // renderer process was fast-closed when the last render view in it was 64 // renderer process was fast-closed when the last render view in it was
62 // closed. 65 // closed.
63 void OnAbandonPrerender(int child_id, int prerender_id); 66 void OnAbandonPrerender(int child_id, int prerender_id);
64 67
65 // If a renderer channel closes (crash, fast exit, etc...), that's effectively 68 // If a renderer channel closes (crash, fast exit, etc...), that's effectively
66 // an abandon of any prerenders launched by that child. 69 // an abandon of any prerenders launched by that child.
67 void OnChannelClosing(int child_id); 70 void OnChannelClosing(int child_id);
68 71
69 private: 72 private:
70 friend class PrerenderBrowserTest; 73 friend class PrerenderBrowserTest;
71 friend class PrerenderTest; 74 friend class PrerenderTest;
72 // WebViewTest.NoPrerenderer needs to access the private IsEmpty() method. 75 // WebViewTest.NoPrerenderer needs to access the private IsEmpty() method.
73 FRIEND_TEST_ALL_PREFIXES(::WebViewTest, NoPrerenderer); 76 FRIEND_TEST_ALL_PREFIXES(::WebViewTest, NoPrerenderer);
74 77
75 struct LinkPrerender { 78 struct LinkPrerender {
76 LinkPrerender(int launcher_child_id, 79 LinkPrerender(int launcher_child_id,
77 int prerender_id, 80 int prerender_id,
78 const GURL& url, 81 const GURL& url,
79 uint32 rel_types, 82 uint32_t rel_types,
80 const content::Referrer& referrer, 83 const content::Referrer& referrer,
81 const gfx::Size& size, 84 const gfx::Size& size,
82 int render_view_route_id, 85 int render_view_route_id,
83 base::TimeTicks creation_time, 86 base::TimeTicks creation_time,
84 PrerenderContents* deferred_launcher); 87 PrerenderContents* deferred_launcher);
85 ~LinkPrerender(); 88 ~LinkPrerender();
86 89
87 // Parameters from PrerenderLinkManager::OnAddPrerender(): 90 // Parameters from PrerenderLinkManager::OnAddPrerender():
88 int launcher_child_id; 91 int launcher_child_id;
89 int prerender_id; 92 int prerender_id;
90 GURL url; 93 GURL url;
91 uint32 rel_types; 94 uint32_t rel_types;
92 content::Referrer referrer; 95 content::Referrer referrer;
93 gfx::Size size; 96 gfx::Size size;
94 int render_view_route_id; 97 int render_view_route_id;
95 98
96 // The time at which this Prerender was added to PrerenderLinkManager. 99 // The time at which this Prerender was added to PrerenderLinkManager.
97 base::TimeTicks creation_time; 100 base::TimeTicks creation_time;
98 101
99 // If non-NULL, this link prerender was launched by an unswapped prerender, 102 // If non-NULL, this link prerender was launched by an unswapped prerender,
100 // |deferred_launcher|. When |deferred_launcher| is swapped in, the field is 103 // |deferred_launcher|. When |deferred_launcher| is swapped in, the field is
101 // set to NULL. 104 // set to NULL.
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 // Helper object to manage prerenders which are launched by other prerenders 169 // Helper object to manage prerenders which are launched by other prerenders
167 // and must be deferred until the launcher is swapped in. 170 // and must be deferred until the launcher is swapped in.
168 scoped_ptr<PendingPrerenderManager> pending_prerender_manager_; 171 scoped_ptr<PendingPrerenderManager> pending_prerender_manager_;
169 172
170 DISALLOW_COPY_AND_ASSIGN(PrerenderLinkManager); 173 DISALLOW_COPY_AND_ASSIGN(PrerenderLinkManager);
171 }; 174 };
172 175
173 } // namespace prerender 176 } // namespace prerender
174 177
175 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_LINK_MANAGER_H_ 178 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_LINK_MANAGER_H_
OLDNEW
« no previous file with comments | « chrome/browser/prerender/prerender_history_unittest.cc ('k') | chrome/browser/prerender/prerender_link_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698