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 435 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 446 void DOMWindow::documentWasClosed() | 446 void DOMWindow::documentWasClosed() |
| 447 { | 447 { |
| 448 dispatchWindowLoadEvent(); | 448 dispatchWindowLoadEvent(); |
| 449 enqueuePageshowEvent(PageshowEventNotPersisted); | 449 enqueuePageshowEvent(PageshowEventNotPersisted); |
| 450 if (m_pendingStateObject) | 450 if (m_pendingStateObject) |
| 451 enqueuePopstateEvent(m_pendingStateObject.release()); | 451 enqueuePopstateEvent(m_pendingStateObject.release()); |
| 452 } | 452 } |
| 453 | 453 |
| 454 void DOMWindow::enqueuePageshowEvent(PageshowEventPersistence persisted) | 454 void DOMWindow::enqueuePageshowEvent(PageshowEventPersistence persisted) |
| 455 { | 455 { |
| 456 // FIXME: https://bugs.webkit.org/show_bug.cgi?id=36334 Pageshow event needs to fire asynchronously. | 456 // As per spec pageshow must be triggered asyncronously. |
|
tkent
2014/05/30 01:05:50
IMO we should not remove the FIXME. We should add
|
Inactive
2014/05/29 21:19:39
asynchronously
|
| 457 // However to be compatible with other browsers blink fires pageshow syncron ously. | |
| 457 dispatchEvent(PageTransitionEvent::create(EventTypeNames::pageshow, persiste d), m_document.get()); | 458 dispatchEvent(PageTransitionEvent::create(EventTypeNames::pageshow, persiste d), m_document.get()); |
| 458 } | 459 } |
| 459 | 460 |
| 460 void DOMWindow::enqueueHashchangeEvent(const String& oldURL, const String& newUR L) | 461 void DOMWindow::enqueueHashchangeEvent(const String& oldURL, const String& newUR L) |
| 461 { | 462 { |
| 462 enqueueWindowEvent(HashChangeEvent::create(oldURL, newURL)); | 463 enqueueWindowEvent(HashChangeEvent::create(oldURL, newURL)); |
| 463 } | 464 } |
| 464 | 465 |
| 465 void DOMWindow::enqueuePopstateEvent(PassRefPtr<SerializedScriptValue> stateObje ct) | 466 void DOMWindow::enqueuePopstateEvent(PassRefPtr<SerializedScriptValue> stateObje ct) |
| 466 { | 467 { |
| (...skipping 1436 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1903 visitor->trace(m_sessionStorage); | 1904 visitor->trace(m_sessionStorage); |
| 1904 visitor->trace(m_localStorage); | 1905 visitor->trace(m_localStorage); |
| 1905 visitor->trace(m_applicationCache); | 1906 visitor->trace(m_applicationCache); |
| 1906 visitor->trace(m_performance); | 1907 visitor->trace(m_performance); |
| 1907 visitor->trace(m_css); | 1908 visitor->trace(m_css); |
| 1908 WillBeHeapSupplementable<DOMWindow>::trace(visitor); | 1909 WillBeHeapSupplementable<DOMWindow>::trace(visitor); |
| 1909 EventTargetWithInlineData::trace(visitor); | 1910 EventTargetWithInlineData::trace(visitor); |
| 1910 } | 1911 } |
| 1911 | 1912 |
| 1912 } // namespace WebCore | 1913 } // namespace WebCore |
| OLD | NEW |