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

Side by Side Diff: content/common/frame.mojom

Issue 2837683002: Remove opener URLs from CreateNewWindowParams. (Closed)
Patch Set: Fix browsertest. Created 3 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
« no previous file with comments | « content/browser/web_contents/web_contents_impl.cc ('k') | content/renderer/render_view_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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 };
OLDNEW
« no previous file with comments | « content/browser/web_contents/web_contents_impl.cc ('k') | content/renderer/render_view_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698