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

Side by Side Diff: Source/core/frame/LocalDOMWindow.h

Issue 552733003: Oilpan: make DOMWindowProperty a GC mixin. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Pacify GC plugin wrt LocalDOMWindow::trace() Created 6 years, 3 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 /* 1 /*
2 * Copyright (C) 2006, 2007, 2009, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2009, 2010 Apple Inc. All rights reserved.
3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after
336 336
337 private: 337 private:
338 explicit LocalDOMWindow(LocalFrame&); 338 explicit LocalDOMWindow(LocalFrame&);
339 339
340 Page* page(); 340 Page* page();
341 341
342 virtual void frameDestroyed() OVERRIDE; 342 virtual void frameDestroyed() OVERRIDE;
343 virtual void willDetachFrameHost() OVERRIDE; 343 virtual void willDetachFrameHost() OVERRIDE;
344 344
345 void clearDocument(); 345 void clearDocument();
346 void resetDOMWindowProperties();
347 void willDestroyDocumentInFrame(); 346 void willDestroyDocumentInFrame();
348 347
349 // FIXME: Oilpan: the need for this internal method will fall 348 // FIXME: Oilpan: the need for this internal method will fall
350 // away when EventTargets are no longer using refcounts and 349 // away when EventTargets are no longer using refcounts and
351 // window properties are also on the heap. Inline the minimal 350 // window properties are also on the heap. Inline the minimal
352 // do-not-broadcast handling then and remove the enum + 351 // do-not-broadcast handling then and remove the enum +
353 // removeAllEventListenersInternal(). 352 // removeAllEventListenersInternal().
354 enum BroadcastListenerRemoval { 353 enum BroadcastListenerRemoval {
355 DoNotBroadcastListenerRemoval, 354 DoNotBroadcastListenerRemoval,
356 DoBroadcastListenerRemoval 355 DoBroadcastListenerRemoval
357 }; 356 };
358 357
359 void removeAllEventListenersInternal(BroadcastListenerRemoval); 358 void removeAllEventListenersInternal(BroadcastListenerRemoval);
360 359
361 RefPtrWillBeMember<Document> m_document; 360 RefPtrWillBeMember<Document> m_document;
362 361
363 bool m_shouldPrintWhenFinishedLoading; 362 bool m_shouldPrintWhenFinishedLoading;
364 #if ENABLE(ASSERT) 363 #if ENABLE(ASSERT)
365 bool m_hasBeenReset; 364 bool m_hasBeenReset;
366 #endif 365 #endif
367 366
368 HashSet<DOMWindowProperty*> m_properties; 367 WillBeHeapHashSet<RawPtrWillBeMember<DOMWindowProperty> > m_properties;
haraken 2014/09/10 02:49:36 Now I understand that this should be strong member
369 368
370 mutable RefPtrWillBeMember<Screen> m_screen; 369 mutable RefPtrWillBeMember<Screen> m_screen;
371 mutable RefPtrWillBeMember<History> m_history; 370 mutable RefPtrWillBeMember<History> m_history;
372 mutable RefPtrWillBeMember<BarProp> m_locationbar; 371 mutable RefPtrWillBeMember<BarProp> m_locationbar;
373 mutable RefPtrWillBeMember<BarProp> m_menubar; 372 mutable RefPtrWillBeMember<BarProp> m_menubar;
374 mutable RefPtrWillBeMember<BarProp> m_personalbar; 373 mutable RefPtrWillBeMember<BarProp> m_personalbar;
375 mutable RefPtrWillBeMember<BarProp> m_scrollbars; 374 mutable RefPtrWillBeMember<BarProp> m_scrollbars;
376 mutable RefPtrWillBeMember<BarProp> m_statusbar; 375 mutable RefPtrWillBeMember<BarProp> m_statusbar;
377 mutable RefPtrWillBeMember<BarProp> m_toolbar; 376 mutable RefPtrWillBeMember<BarProp> m_toolbar;
378 mutable RefPtrWillBeMember<Console> m_console; 377 mutable RefPtrWillBeMember<Console> m_console;
(...skipping 24 matching lines...) Expand all
403 } 402 }
404 403
405 inline String LocalDOMWindow::defaultStatus() const 404 inline String LocalDOMWindow::defaultStatus() const
406 { 405 {
407 return m_defaultStatus; 406 return m_defaultStatus;
408 } 407 }
409 408
410 } // namespace blink 409 } // namespace blink
411 410
412 #endif // LocalDOMWindow_h 411 #endif // LocalDOMWindow_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698