From 634c2d0574e1b4001f4627ce82ce24ddfac16596 Mon Sep 17 00:00:00 2001 From: Boris Zbarsky Date: Mon, 2 May 2016 15:09:36 -0400 Subject: [PATCH] Bug 1268953. The load events we fire on iframe/frame/object (in the document case) should not be cancelable. r=smaug --- dom/base/nsGlobalWindow.cpp | 1 + testing/web-platform/meta/MANIFEST.json | 6 +++ .../the-object-element/object-events.html.ini | 3 -- .../the-iframe-element/iframe-load-event.html | 48 +++++++++++++++++++ 4 files changed, 55 insertions(+), 3 deletions(-) create mode 100644 testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-load-event.html diff --git a/dom/base/nsGlobalWindow.cpp b/dom/base/nsGlobalWindow.cpp index 010f07c3c0f2..0b67f7680cce 100644 --- a/dom/base/nsGlobalWindow.cpp +++ b/dom/base/nsGlobalWindow.cpp @@ -3377,6 +3377,7 @@ nsGlobalWindow::PostHandleEvent(EventChainPostVisitor& aVisitor) nsEventStatus status = nsEventStatus_eIgnore; WidgetEvent event(aVisitor.mEvent->IsTrusted(), eLoad); event.mFlags.mBubbles = false; + event.mFlags.mCancelable = false; // Most of the time we could get a pres context to pass in here, // but not always (i.e. if this window is not shown there won't diff --git a/testing/web-platform/meta/MANIFEST.json b/testing/web-platform/meta/MANIFEST.json index bf106170658f..436bd4842b6f 100644 --- a/testing/web-platform/meta/MANIFEST.json +++ b/testing/web-platform/meta/MANIFEST.json @@ -35346,6 +35346,12 @@ "url": "/html/semantics/embedded-content/the-embed-element/embed-ignored-in-media-element.html" } ], + "html/semantics/embedded-content/the-iframe-element/iframe-load-event.html": [ + { + "path": "html/semantics/embedded-content/the-iframe-element/iframe-load-event.html", + "url": "/html/semantics/embedded-content/the-iframe-element/iframe-load-event.html" + } + ], "html/syntax/serializing-html-fragments/serializing.html": [ { "path": "html/syntax/serializing-html-fragments/serializing.html", diff --git a/testing/web-platform/meta/html/semantics/embedded-content/the-object-element/object-events.html.ini b/testing/web-platform/meta/html/semantics/embedded-content/the-object-element/object-events.html.ini index 4066fbd23dc5..3522bd106be2 100644 --- a/testing/web-platform/meta/html/semantics/embedded-content/the-object-element/object-events.html.ini +++ b/testing/web-platform/meta/html/semantics/embedded-content/the-object-element/object-events.html.ini @@ -4,6 +4,3 @@ [error event] expected: TIMEOUT - [load event of about:blank] - expected: FAIL - diff --git a/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-load-event.html b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-load-event.html new file mode 100644 index 000000000000..d245bf0b9645 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/embedded-content/the-iframe-element/iframe-load-event.html @@ -0,0 +1,48 @@ + + +Test some sanity behavior around iframe load/error events + + + + +