[wpt-sync] Sync PR 21254 - [css-pseudo] Move marker code to LayoutNGListMarkerInterface
Categories
(Core :: Layout: Generated Content, Lists, and Counters, task, P4)
Tracking
()
People
(Reporter: wpt-sync, Unassigned)
References
()
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 21254 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/21254
Details from upstream follow.
Oriol Brufau <obrufau@igalia.com> wrote:
[css-pseudo] Move marker code to LayoutNGListMarkerInterface
The LayoutNGListItem used to hold some information about the marker:
the kind of marker, whether the marker text was up-to-date, etc.With the addition of the ::marker pseudo-element, markers have become
independent and are no longer created and destroyed by LayoutNGListItem.
However, this made it more difficult to keep the information in sync.For example, dynamically applying 'content: none' to a symbol marker
destroys it, but LayoutNGListItem didn't notice that marker_type_ was
supposed to change from kSymbolValue to kStatic. This caused a DCHECK
failure and a null deref in SymbolMarkerLayoutText().To avoid these problems, this patch moves all the code regarding markers
from LayoutNGListItem to LayoutNGListMarkerInterface. This is a new
abstract interface from which the LayoutNG markers (LayoutNGListMarker
and LayoutNGInsideListMarker) inherit.BUG=1043478, 457718
TEST=external/wpt/css/css-pseudo/marker-content-020.html
The test fails in legacy since 'content' is not properly supported yet.
Change-Id: I2d7b424bbaf2487a8fbc49303d5114187d8c1fb6
Reviewed-on: https://chromium-review.googlesource.com/2007754
WPT-Export-Revision: 068e4e44aa4508ba9469e5bf88b19c0aeb7c911a
| Assignee | ||
Updated•6 years ago
|
| Assignee | ||
Updated•6 years ago
|
Description
•