Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006, 2007, 2008, 2010 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2008, 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 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 98 #include "platform/graphics/media/MediaPlayer.h" | 98 #include "platform/graphics/media/MediaPlayer.h" |
| 99 #include "platform/weborigin/KURL.h" | 99 #include "platform/weborigin/KURL.h" |
| 100 #include "platform/weborigin/SecurityOrigin.h" | 100 #include "platform/weborigin/SecurityOrigin.h" |
| 101 #include "platform/weborigin/SecurityPolicy.h" | 101 #include "platform/weborigin/SecurityPolicy.h" |
| 102 #include "public/platform/Platform.h" | 102 #include "public/platform/Platform.h" |
| 103 #include "wtf/MainThread.h" | 103 #include "wtf/MainThread.h" |
| 104 #include "wtf/MathExtras.h" | 104 #include "wtf/MathExtras.h" |
| 105 #include "wtf/text/WTFString.h" | 105 #include "wtf/text/WTFString.h" |
| 106 #include <algorithm> | 106 #include <algorithm> |
| 107 | 107 |
| 108 // FIXME: this is a layering vilation. | |
|
Inactive
2014/03/14 19:46:08
Yes, we don't want that :)
kbalazs
2014/03/14 23:51:27
Done.
| |
| 109 #include "modules/gamepad/NavigatorGamepad.h" | |
| 110 | |
| 108 using std::min; | 111 using std::min; |
| 109 using std::max; | 112 using std::max; |
| 110 | 113 |
| 111 namespace WebCore { | 114 namespace WebCore { |
| 112 | 115 |
| 113 class PostMessageTimer FINAL : public SuspendableTimer { | 116 class PostMessageTimer FINAL : public SuspendableTimer { |
| 114 public: | 117 public: |
| 115 PostMessageTimer(DOMWindow& window, PassRefPtr<SerializedScriptValue> messag e, const String& sourceOrigin, PassRefPtr<DOMWindow> source, PassOwnPtr<MessageP ortChannelArray> channels, SecurityOrigin* targetOrigin, PassRefPtr<ScriptCallSt ack> stackTrace) | 118 PostMessageTimer(DOMWindow& window, PassRefPtr<SerializedScriptValue> messag e, const String& sourceOrigin, PassRefPtr<DOMWindow> source, PassOwnPtr<MessageP ortChannelArray> channels, SecurityOrigin* targetOrigin, PassRefPtr<ScriptCallSt ack> stackTrace) |
| 116 : SuspendableTimer(window.document()) | 119 : SuspendableTimer(window.document()) |
| 117 , m_window(window) | 120 , m_window(window) |
| (...skipping 1393 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1511 UseCounter::count(document(), UseCounter::DocumentBeforeUnloadRegistered ); | 1514 UseCounter::count(document(), UseCounter::DocumentBeforeUnloadRegistered ); |
| 1512 if (allowsBeforeUnloadListeners(this)) { | 1515 if (allowsBeforeUnloadListeners(this)) { |
| 1513 // This is confusingly named. It doesn't actually add the listener. It just increments a count | 1516 // This is confusingly named. It doesn't actually add the listener. It just increments a count |
| 1514 // so that we know we have listeners registered for the purposes of determining if we can | 1517 // so that we know we have listeners registered for the purposes of determining if we can |
| 1515 // fast terminate the renderer process. | 1518 // fast terminate the renderer process. |
| 1516 addBeforeUnloadEventListener(this); | 1519 addBeforeUnloadEventListener(this); |
| 1517 } else { | 1520 } else { |
| 1518 // Subframes return false from allowsBeforeUnloadListeners. | 1521 // Subframes return false from allowsBeforeUnloadListeners. |
| 1519 UseCounter::count(document(), UseCounter::SubFrameBeforeUnloadRegist ered); | 1522 UseCounter::count(document(), UseCounter::SubFrameBeforeUnloadRegist ered); |
| 1520 } | 1523 } |
| 1524 } else if (eventType == EventTypeNames::gamepadconnected || eventType == Eve ntTypeNames::gamepaddisconnected) { | |
|
sof
2014/03/14 20:52:43
Just above these special cases, DOMWindow observer
kbalazs
2014/03/14 23:51:27
Wonderful, thanks. Together with FrameLoaderClient
| |
| 1525 // If an event listener is added for gamepad events sample the gamepads once to start monitoring gamepad state. | |
| 1526 // FIXME: we need to instantiate NavigatorGamepad here so that it can li sten to the events. | |
| 1527 // Otherwise it would only be created when js calls getGamepads() or web kitGetGamepads() and we cannot assume that | |
| 1528 // it will happen before a gamepad is connected. But this is a layering violation because NavigatorGamepad lives | |
| 1529 // in modules. | |
| 1530 NavigatorGamepad::getGamepads(navigator()); | |
|
Inactive
2014/03/14 19:46:08
You should probably take a look at FrameLoaderClie
kbalazs
2014/03/14 23:51:27
Done.
| |
| 1521 } | 1531 } |
| 1522 | 1532 |
| 1523 return true; | 1533 return true; |
| 1524 } | 1534 } |
| 1525 | 1535 |
| 1526 bool DOMWindow::removeEventListener(const AtomicString& eventType, EventListener * listener, bool useCapture) | 1536 bool DOMWindow::removeEventListener(const AtomicString& eventType, EventListener * listener, bool useCapture) |
| 1527 { | 1537 { |
| 1528 if (!EventTarget::removeEventListener(eventType, listener, useCapture)) | 1538 if (!EventTarget::removeEventListener(eventType, listener, useCapture)) |
| 1529 return false; | 1539 return false; |
| 1530 | 1540 |
| (...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1814 return static_cast<DOMWindowLifecycleNotifier&>(LifecycleContext<DOMWindow>: :lifecycleNotifier()); | 1824 return static_cast<DOMWindowLifecycleNotifier&>(LifecycleContext<DOMWindow>: :lifecycleNotifier()); |
| 1815 } | 1825 } |
| 1816 | 1826 |
| 1817 PassOwnPtr<LifecycleNotifier<DOMWindow> > DOMWindow::createLifecycleNotifier() | 1827 PassOwnPtr<LifecycleNotifier<DOMWindow> > DOMWindow::createLifecycleNotifier() |
| 1818 { | 1828 { |
| 1819 return DOMWindowLifecycleNotifier::create(this); | 1829 return DOMWindowLifecycleNotifier::create(this); |
| 1820 } | 1830 } |
| 1821 | 1831 |
| 1822 | 1832 |
| 1823 } // namespace WebCore | 1833 } // namespace WebCore |
| OLD | NEW |