OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 module content.mojom; | 5 module content.mojom; |
6 | 6 |
7 import "content/public/common/window_container_type.mojom"; | 7 import "content/public/common/window_container_type.mojom"; |
8 import "services/service_manager/public/interfaces/interface_provider.mojom"; | 8 import "services/service_manager/public/interfaces/interface_provider.mojom"; |
9 import "third_party/WebKit/public/platform/referrer.mojom"; | 9 import "third_party/WebKit/public/platform/referrer.mojom"; |
10 import "third_party/WebKit/public/web/window_features.mojom"; | 10 import "third_party/WebKit/public/web/window_features.mojom"; |
(...skipping 23 matching lines...) Expand all Loading... |
34 interface FrameHostInterfaceBroker { | 34 interface FrameHostInterfaceBroker { |
35 GetInterfaceProvider(service_manager.mojom.InterfaceProvider& interfaces); | 35 GetInterfaceProvider(service_manager.mojom.InterfaceProvider& interfaces); |
36 }; | 36 }; |
37 | 37 |
38 // Implemented by a service that provides implementations of the Frame | 38 // Implemented by a service that provides implementations of the Frame |
39 // interface. (e.g. renderer processes). | 39 // interface. (e.g. renderer processes). |
40 interface FrameFactory { | 40 interface FrameFactory { |
41 CreateFrame(int32 frame_routing_id, Frame& frame, FrameHostInterfaceBroker hos
t); | 41 CreateFrame(int32 frame_routing_id, Frame& frame, FrameHostInterfaceBroker hos
t); |
42 }; | 42 }; |
43 | 43 |
44 // TODO(csharrison): Clean up this struct. Some of the entries (like | |
45 // opener_top_level_frame_url) are better suited to be computed in the browser | |
46 // process. See http://crbug.com/674307. | |
47 struct CreateNewWindowParams { | 44 struct CreateNewWindowParams { |
48 // True if this open request came in the context of a user gesture. | 45 // True if this open request came in the context of a user gesture. |
49 bool user_gesture; | 46 bool user_gesture; |
50 | 47 |
51 // Type of window requested. | 48 // Type of window requested. |
52 WindowContainerType window_container_type; | 49 WindowContainerType window_container_type; |
53 | 50 |
54 // The session storage namespace ID this window should use. | 51 // The session storage namespace ID this window should use. |
55 int64 session_storage_namespace_id; | 52 int64 session_storage_namespace_id; |
56 | 53 |
57 // The name of the resulting frame that should be created (empty if none | 54 // The name of the resulting frame that should be created (empty if none |
58 // has been specified). UTF8 encoded string. | 55 // has been specified). UTF8 encoded string. |
59 string frame_name; | 56 string frame_name; |
60 | 57 |
61 // The URL of the frame initiating the open. | |
62 url.mojom.Url opener_url; | |
63 | |
64 // The URL of the top frame containing the opener. | |
65 url.mojom.Url opener_top_level_frame_url; | |
66 | |
67 // The security origin of the frame initiating the open. | |
68 url.mojom.Url opener_security_origin; | |
69 | |
70 // Whether the opener will be suppressed in the new window, in which case | 58 // Whether the opener will be suppressed in the new window, in which case |
71 // scripting the new window is not allowed. | 59 // scripting the new window is not allowed. |
72 bool opener_suppressed; | 60 bool opener_suppressed; |
73 | 61 |
74 // Whether the window should be opened in the foreground, background, etc. | 62 // Whether the window should be opened in the foreground, background, etc. |
75 ui.mojom.WindowOpenDisposition disposition; | 63 ui.mojom.WindowOpenDisposition disposition; |
76 | 64 |
77 // The URL that will be loaded in the new window (empty if none has been | 65 // The URL that will be loaded in the new window (empty if none has been |
78 // specified). | 66 // specified). |
79 url.mojom.Url target_url; | 67 url.mojom.Url target_url; |
(...skipping 26 matching lines...) Expand all Loading... |
106 | 94 |
107 // Implemented by the frame server (i.e. the browser process). For messages that | 95 // Implemented by the frame server (i.e. the browser process). For messages that |
108 // must be associated with the IPC channel. | 96 // must be associated with the IPC channel. |
109 interface FrameHost { | 97 interface FrameHost { |
110 // Sent by the renderer when it is creating a new window. The browser creates | 98 // Sent by the renderer when it is creating a new window. The browser creates |
111 // a tab for it. If |reply.route_id| is MSG_ROUTING_NONE, the window couldn't | 99 // a tab for it. If |reply.route_id| is MSG_ROUTING_NONE, the window couldn't |
112 // be created. | 100 // be created. |
113 [Sync] CreateNewWindow(CreateNewWindowParams params) | 101 [Sync] CreateNewWindow(CreateNewWindowParams params) |
114 => (CreateNewWindowReply reply); | 102 => (CreateNewWindowReply reply); |
115 }; | 103 }; |
OLD | NEW |