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

Side by Side Diff: third_party/WebKit/Source/core/frame/DOMWindow.h

Issue 2670763009: Make External per-window rather than a static Persistent. (Closed)
Patch Set: Created 3 years, 10 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 | « no previous file | third_party/WebKit/Source/core/frame/DOMWindow.cpp » ('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 #ifndef DOMWindow_h 5 #ifndef DOMWindow_h
6 #define DOMWindow_h 6 #define DOMWindow_h
7 7
8 #include "bindings/core/v8/Transferables.h" 8 #include "bindings/core/v8/Transferables.h"
9 #include "core/CoreExport.h" 9 #include "core/CoreExport.h"
10 #include "core/events/EventTarget.h" 10 #include "core/events/EventTarget.h"
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 virtual int requestIdleCallback(IdleRequestCallback*, 200 virtual int requestIdleCallback(IdleRequestCallback*,
201 const IdleRequestOptions&) = 0; 201 const IdleRequestOptions&) = 0;
202 virtual void cancelIdleCallback(int id) = 0; 202 virtual void cancelIdleCallback(int id) = 0;
203 203
204 // Custom elements 204 // Custom elements
205 virtual CustomElementRegistry* customElements(ScriptState*) const = 0; 205 virtual CustomElementRegistry* customElements(ScriptState*) const = 0;
206 206
207 // Obsolete APIs 207 // Obsolete APIs
208 void captureEvents() {} 208 void captureEvents() {}
209 void releaseEvents() {} 209 void releaseEvents() {}
210 External* external() const; 210 External* external();
211 211
212 // FIXME: This handles both window[index] and window.frames[index]. However, 212 // FIXME: This handles both window[index] and window.frames[index]. However,
213 // the spec exposes window.frames[index] across origins but not 213 // the spec exposes window.frames[index] across origins but not
214 // window[index]... 214 // window[index]...
215 DOMWindow* anonymousIndexedGetter(uint32_t) const; 215 DOMWindow* anonymousIndexedGetter(uint32_t) const;
216 216
217 void postMessage(PassRefPtr<SerializedScriptValue> message, 217 void postMessage(PassRefPtr<SerializedScriptValue> message,
218 const MessagePortArray&, 218 const MessagePortArray&,
219 const String& targetOrigin, 219 const String& targetOrigin,
220 LocalDOMWindow* source, 220 LocalDOMWindow* source,
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 261
262 virtual void schedulePostMessage(MessageEvent*, 262 virtual void schedulePostMessage(MessageEvent*,
263 PassRefPtr<SecurityOrigin> target, 263 PassRefPtr<SecurityOrigin> target,
264 Document* source) = 0; 264 Document* source) = 0;
265 265
266 void disconnectFromFrame() { m_frame = nullptr; } 266 void disconnectFromFrame() { m_frame = nullptr; }
267 267
268 private: 268 private:
269 Member<Frame> m_frame; 269 Member<Frame> m_frame;
270 mutable Member<Location> m_location; 270 mutable Member<Location> m_location;
271 Member<External> m_external;
271 272
272 // Set to true when close() has been called. Needed for 273 // Set to true when close() has been called. Needed for
273 // |window.closed| determinism; having it return 'true' 274 // |window.closed| determinism; having it return 'true'
274 // only after the layout widget's deferred window close 275 // only after the layout widget's deferred window close
275 // operation has been performed, exposes (confusing) 276 // operation has been performed, exposes (confusing)
276 // implementation details to scripts. 277 // implementation details to scripts.
277 bool m_windowIsClosing; 278 bool m_windowIsClosing;
278 279
279 }; 280 };
280 281
281 } // namespace blink 282 } // namespace blink
282 283
283 #endif // DOMWindow_h 284 #endif // DOMWindow_h
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/Source/core/frame/DOMWindow.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698