• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
3 // found in the LICENSE file.
4 
5 // Multiply-included message file, no traditional include guard.
6 #include "content/public/common/common_param_traits.h"
7 #include "content/public/common/referrer.h"
8 #include "ipc/ipc_message.h"
9 #include "ipc/ipc_message_macros.h"
10 #include "ipc/ipc_param_traits.h"
11 #include "ui/gfx/size.h"
12 #include "url/gurl.h"
13 
14 #define IPC_MESSAGE_START PrerenderMsgStart
15 
16 // PrerenderLinkManager Messages
17 // These are messages sent from the renderer to the browser in
18 // relation to <link rel=prerender> elements.
19 
20 IPC_STRUCT_BEGIN(PrerenderAttributes)
21   IPC_STRUCT_MEMBER(GURL, url)
22   IPC_STRUCT_MEMBER(uint32, rel_types)
23 IPC_STRUCT_END()
24 
25 // Notifies of the insertion of a <link rel=prerender> element in the
26 // document.
27 IPC_MESSAGE_CONTROL5(PrerenderHostMsg_AddLinkRelPrerender,
28                      int /* prerender_id, assigned by WebPrerendererClient */,
29                      PrerenderAttributes,
30                      content::Referrer,
31                      gfx::Size,
32                      int /* render_view_route_id of launcher */)
33 
34 // Notifies on removal of a <link rel=prerender> element from the document.
35 IPC_MESSAGE_CONTROL1(PrerenderHostMsg_CancelLinkRelPrerender,
36                      int /* prerender_id, assigned by WebPrerendererClient */)
37 
38 // Notifies on unloading a <link rel=prerender> element from a frame.
39 IPC_MESSAGE_CONTROL1(PrerenderHostMsg_AbandonLinkRelPrerender,
40                      int /* prerender_id, assigned by WebPrerendererClient */)
41 
42 // PrerenderDispatcher Messages
43 // These are messages sent from the browser to the renderer in relation to
44 // running prerenders.
45 
46 // Tells a renderer if it's currently being prerendered.  Must only be set
47 // to true before any navigation occurs, and only set to false at most once
48 // after that.
49 IPC_MESSAGE_ROUTED1(PrerenderMsg_SetIsPrerendering,
50                     bool /* whether the RenderView is prerendering */)
51 
52 // Signals to launcher that a prerender is running.
53 IPC_MESSAGE_CONTROL1(PrerenderMsg_OnPrerenderStart,
54                      int /* prerender_id */)
55 
56 // Signals to launcher that a prerender is running.
57 IPC_MESSAGE_CONTROL1(PrerenderMsg_OnPrerenderStopLoading,
58                      int /* prerender_id */)
59 
60 // Signals to launcher that a prerender has had it's 'domcontentloaded' event.
61 IPC_MESSAGE_CONTROL1(PrerenderMsg_OnPrerenderDomContentLoaded,
62                      int /* prerender_id */)
63 
64 // Signals to a launcher that a new alias has been added to a prerender.
65 IPC_MESSAGE_CONTROL1(PrerenderMsg_OnPrerenderAddAlias,
66                      GURL /* url */)
67 
68 // Signals to a launcher that a new alias has been added to a prerender.
69 IPC_MESSAGE_CONTROL1(PrerenderMsg_OnPrerenderRemoveAliases,
70                      std::vector<GURL> /* urls */)
71 
72 // Signals to a launcher that a prerender is no longer running.
73 IPC_MESSAGE_CONTROL1(PrerenderMsg_OnPrerenderStop,
74                      int /* prerender_id */)
75