Changeset 287878 in webkit
- Timestamp:
- Jan 11, 2022 7:18:25 AM (6 months ago)
- Location:
- trunk
- Files:
-
- 5 edited
- 1 copied
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/imported/w3c/ChangeLog (modified) (1 diff)
-
LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-receives-element-events-expected.txt (modified) (1 diff)
-
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-receives-element-events-expected.txt (copied) (copied from trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-receives-element-events-expected.txt) (1 diff)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r287875 r287878 1 2022-01-11 Tim Nguyen <ntim@apple.com> 2 3 ::backdrop pseudo element should react to associated element event listeners 4 https://bugs.webkit.org/show_bug.cgi?id=233072 5 6 Reviewed by Alan Bujtas. 7 8 iOS failure is due to WPT test_driver actions being unsupported. 9 10 * platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-receives-element-events-expected.txt: Added. 11 1 12 2022-01-11 Martin Robinson <mrobinson@webkit.org> 2 13 -
trunk/LayoutTests/imported/w3c/ChangeLog
r287846 r287878 1 2022-01-11 Tim Nguyen <ntim@apple.com> 2 3 ::backdrop pseudo element should react to associated element event listeners 4 https://bugs.webkit.org/show_bug.cgi?id=233072 5 6 Reviewed by Alan Bujtas. 7 8 Update test expectations. 9 10 * web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-receives-element-events-expected.txt: 11 1 12 2022-01-10 Chris Dumez <cdumez@apple.com> 2 13 -
trunk/LayoutTests/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-receives-element-events-expected.txt
r287266 r287878 1 1 2 Harness Error (TIMEOUT), message = null 2 PASS Test that ::backdrop receives events for the associated element 3 3 4 NOTRUN Test that ::backdrop receives events for the associated element5 -
trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-receives-element-events-expected.txt
r287877 r287878 3 3 4 4 NOTRUN Test that ::backdrop receives events for the associated element 5 -
trunk/Source/WebCore/ChangeLog
r287877 r287878 1 2022-01-11 Tim Nguyen <ntim@apple.com> 2 3 ::backdrop pseudo element should react to associated element event listeners 4 https://bugs.webkit.org/show_bug.cgi?id=233072 5 6 Reviewed by Alan Bujtas. 7 8 Test: imported/w3c/web-platform-tests/html/semantics/interactive-elements/the-dialog-element/backdrop-receives-element-events.html 9 10 We now append the ::backdrop renderer as a child of the top layer element, rather than a sibling of the 11 top layer element. This gets hit testing working properly for free. 12 13 We used to append the ::backdrop renderer as a sibling to get the proper layout, but this is no longer 14 necessary after r287683 and r287845. 15 16 * rendering/updating/RenderTreeUpdaterGeneratedContent.cpp: 17 (WebCore::RenderTreeUpdater::GeneratedContent::updateBackdropRenderer): 18 1 19 2022-01-11 Adrian Perez de Castro <aperez@igalia.com> 2 20 -
trunk/Source/WebCore/rendering/updating/RenderTreeUpdaterGeneratedContent.cpp
r284093 r287878 186 186 187 187 auto newStyle = RenderStyle::clone(*style); 188 RenderPtr<RenderBlockFlow> newBackdropRenderer; 189 auto backdropRenderer = renderer.backdropRenderer(); 190 if (backdropRenderer) 188 if (auto backdropRenderer = renderer.backdropRenderer()) 191 189 backdropRenderer->setStyle(WTFMove(newStyle)); 192 190 else { 193 newBackdropRenderer = WebCore::createRenderer<RenderBlockFlow>(renderer.document(), WTFMove(newStyle));191 auto newBackdropRenderer = WebCore::createRenderer<RenderBlockFlow>(renderer.document(), WTFMove(newStyle)); 194 192 newBackdropRenderer->initializeStyle(); 195 backdropRenderer = newBackdropRenderer.get(); 196 renderer.setBackdropRenderer(*backdropRenderer); 197 } 198 199 // Update or attach to renderer parent 200 WeakPtr currentParent = backdropRenderer->parent(); 201 WeakPtr newParent = renderer.parent(); 202 203 ASSERT(newParent, "Should have new parent"); 204 205 if (newParent == currentParent) 206 return; 207 208 if (currentParent) 209 m_updater.m_builder.attach(*newParent, m_updater.m_builder.detach(*currentParent, *backdropRenderer, RenderTreeBuilder::CanCollapseAnonymousBlock::No), &renderer); 210 else 211 m_updater.m_builder.attach(*newParent, WTFMove(newBackdropRenderer), &renderer); 193 renderer.setBackdropRenderer(*newBackdropRenderer.get()); 194 m_updater.m_builder.attach(renderer, WTFMove(newBackdropRenderer), renderer.firstChild()); 195 } 212 196 } 213 197
Note: See TracChangeset
for help on using the changeset viewer.