From a3242995e37bca19e5ab41a39e633215dc74076d Mon Sep 17 00:00:00 2001 From: Simon Pieters Date: Mon, 8 Jun 2026 15:34:47 +0200 Subject: [PATCH 1/2] HTML: Add tests for resource selection and moving nodes See https://github.com/whatwg/html/pull/12511 --- ...-pointer-move-non-source-into-pointer.html | 43 +++++++++++++++++++ ...ter-move-non-source-pointer-after-out.html | 37 ++++++++++++++++ ...ter-move-pointer-after-before-pointer.html | 34 +++++++++++++++ ...ection-pointer-move-pointer-after-out.html | 29 +++++++++++++ ...ction-pointer-move-pointer-before-out.html | 27 ++++++++++++ ...on-pointer-move-pointer-before-within.html | 42 ++++++++++++++++++ ...-pointer-move-processed-source-to-end.html | 35 +++++++++++++++ ...-pointer-move-source-into-empty-video.html | 35 +++++++++++++++ ...tion-pointer-move-source-into-pointer.html | 35 +++++++++++++++ ...on-pointer-move-source-within-pointer.html | 32 ++++++++++++++ 10 files changed, 349 insertions(+) create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-into-pointer.html create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-pointer-after-out.html create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-after-before-pointer.html create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-after-out.html create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-before-out.html create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-before-within.html create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-processed-source-to-end.html create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-into-empty-video.html create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-into-pointer.html create mode 100644 html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-within-pointer.html diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-into-pointer.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-into-pointer.html new file mode 100644 index 00000000000000..2aa9013d028211 --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-into-pointer.html @@ -0,0 +1,43 @@ + +pointer updates (moving non-source nodes into the pointer) + + +
+
+ + + + diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-pointer-after-out.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-pointer-after-out.html new file mode 100644 index 00000000000000..fb975413209e1d --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-pointer-after-out.html @@ -0,0 +1,37 @@ + +pointer updates (moving non-source pointerAfter out of the media element) + + +
+
+ + + diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-after-before-pointer.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-after-before-pointer.html new file mode 100644 index 00000000000000..dfd385950d4e71 --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-after-before-pointer.html @@ -0,0 +1,34 @@ + +pointer updates (moving pointerAfter before the pointer) + + +
+ + + diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-after-out.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-after-out.html new file mode 100644 index 00000000000000..49777a5390f36a --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-after-out.html @@ -0,0 +1,29 @@ + +pointer updates (moving pointerAfter out of the media element) + + +
+
+ + + diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-before-out.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-before-out.html new file mode 100644 index 00000000000000..5354e7a8e10bcd --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-before-out.html @@ -0,0 +1,27 @@ + +pointer updates (moving pointerBefore out of the media element) + + +
+
+ + + diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-before-within.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-before-within.html new file mode 100644 index 00000000000000..4dfb1039b72526 --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-pointer-before-within.html @@ -0,0 +1,42 @@ + +pointer updates (moving pointerBefore within the media element) + + +
+ + + diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-processed-source-to-end.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-processed-source-to-end.html new file mode 100644 index 00000000000000..35e265aa4fa72b --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-processed-source-to-end.html @@ -0,0 +1,35 @@ + +pointer updates (moving a processed source element to the end) + + +
+ + + diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-into-empty-video.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-into-empty-video.html new file mode 100644 index 00000000000000..c7c109ecf387fe --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-into-empty-video.html @@ -0,0 +1,35 @@ + +pointer updates (moving a source element into an empty media element) + + +
+
+ + + diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-into-pointer.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-into-pointer.html new file mode 100644 index 00000000000000..303c4826af3138 --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-into-pointer.html @@ -0,0 +1,35 @@ + +pointer updates (moving a source element into the pointer) + + +
+
+ + + diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-within-pointer.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-within-pointer.html new file mode 100644 index 00000000000000..0c7b29a30e68ad --- /dev/null +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-source-within-pointer.html @@ -0,0 +1,32 @@ + +pointer updates (moving a source element within the pointer) + + +
+ + + From 0a93557761f0d8ec80d1eba5c40c43f6d0baf88a Mon Sep 17 00:00:00 2001 From: Simon Pieters Date: Mon, 8 Jun 2026 16:05:50 +0200 Subject: [PATCH 2/2] Use moveBefore() --- ...on-pointer-move-non-source-into-pointer.html | 17 ++++++++--------- ...inter-move-non-source-pointer-after-out.html | 6 ++++-- ...inter-move-pointer-after-before-pointer.html | 10 ++++++---- ...election-pointer-move-pointer-after-out.html | 7 +++++-- ...lection-pointer-move-pointer-before-out.html | 7 +++++-- ...tion-pointer-move-pointer-before-within.html | 14 +++++++++----- ...on-pointer-move-processed-source-to-end.html | 6 ++++-- ...on-pointer-move-source-into-empty-video.html | 16 ++++++++-------- ...ection-pointer-move-source-into-pointer.html | 14 +++++++------- ...tion-pointer-move-source-within-pointer.html | 5 +++-- 10 files changed, 59 insertions(+), 43 deletions(-) diff --git a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-into-pointer.html b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-into-pointer.html index 2aa9013d028211..46d3f2eaa88638 100644 --- a/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-into-pointer.html +++ b/html/semantics/embedded-content/media-elements/loading-the-media-resource/resource-selection-pointer-move-non-source-into-pointer.html @@ -1,9 +1,9 @@ -pointer updates (moving non-source nodes into the pointer) +pointer updates (moveBefore non-source nodes into the pointer)
-
+

x
@@ -14,6 +14,8 @@
+
@@ -14,8 +14,11 @@
@@ -13,8 +13,11 @@
+
@@ -19,12 +19,14 @@ var video = document.getElementById('v'); var source1 = document.getElementById('source-s1'); source1.src = 'resources/delayed-broken-video.py?move-processed-source-to-end'; - video.appendChild(source1); + video.moveBefore(source1, null); }
-
+
-
+
@@ -15,9 +15,10 @@