Platform/Layout/ReleaseNotes/69

From MozillaWiki
Jump to: navigation, search

Firefox 69 Platform Layout Release Notes

Noteworthy Changes

Features

Webcompat

All Bugs Fixed

CSS Parsing and Computation

bug 1383229 Intermittent /css/CSS2/selectors/universal-selector-005.xht | Testing selectors/universal-selector-005.xht == universal-selector-005-ref.xht

bug 1429299 Implement offset-distance for motion path

bug 1429301 Implement offset-rotate for motion path

bug 1470695 Implement overflow-block and overflow-inline properties

bug 1473859 Intermittent css-valuesandunits/unit-vh-vw-overflow-auto.html != css-valuesandunits/unit-vh-vw-overflow-scroll.html | image comparison, max difference: 1, number of differing pixels: 4

bug 1492739 Consider unprefixing -moz-user-select

bug 1493420 10 seconds spent in Stylo on page

bug 1505489 Implement CSS Shadow Parts (and enable it for chrome callers)

bug 1513643 Enable @supports selector() by default.

bug 1532937 Enable ESLint for dom/flex and dom/grid

bug 1541233 Stop loading userContent.css or userChrome.css by default unless a preference is set

bug 1546255 Hit MOZ_CRASH(We should be able to map a raw rule to a rule

bug 1547633 ::selection style not invalidated properly (was: toggle background on pseudo-element ::selection is not resetting to default value)

bug 1548342 Fix nested pseudo-elements matching author rules better.

bug 1550432 Don't report CSS errors when valid aliases have already been parsed in the same declaration block

bug 1552578 Restrict the properties that apply to ::marker for now.

bug 1552636 Remove eStyleImageType_URL.

bug 1552708 Use cbindgen for URIs

bug 1552878 Use cbindgen for filters.

bug 1552919 fix nightly rust warnings in geckolib glue

bug 1553245 Use cbindgen for border-image-width.

bug 1553252 Use cbindgen for text-overflow.

bug 1554150 Remove -webkit-appearance keywords that are removed in Chromium 75

bug 1554347 Sync servo stuff.

bug 1554405 Pass old style to StartImageLoads again.

bug 1554433 Move system colors outside of mako

bug 1554716 Remove nsStyleColor moving the color property to nsStyleText.

bug 1555150 adding support for text-underline-offset to the style system

bug 1555165 Parse backdrop-filter CSS property

bug 1555823 Remove bug 1323652 annotations from crashtest.lists

bug 1555863 adding support for text-decoration-width (longhands) to the style system

bug 1555867 Measure how common single children in the rule tree are, and consider not using a hashmap in that case.

bug 1556041 add test cases for patch that added support for text-underline-offset to the style system

bug 1556202 Permafailing Android Tier 2 No tests run or test summary not found following layout/style/crashtests/439184-1.html

bug 1556388 Sync servo stuff.

bug 1556602 --enable-warnings-as-errors fails due to -D bare-trait-objects with Rust 1.37

bug 1556628 Permafail Tier 2 Android /css/css-ui/appearance-cssom-001.html | -webkit-appearance: listitem (invalid) - assert_equals: style.WebkitAppearance (uppercase W) expected "button" but got "none"

bug 1557110 Remove support for complex -moz- gradient parsing.

bug 1557212 Use cbindgen for gradients.

bug 1557430 Memory for SVG mapped attributes is not reported

bug 1557481 Intermittent /css/css-position/fixed-z-index-blend.html | Testing http://web-platform.test:8000/css/css-position/fixed-z-index-blend.html == http://web-platform.test:8000/css/css-position/fixed-z-index-blend-ref.html

bug 1557563 filter function factors should clamp values over 1.0 during animation

bug 1557819 Crash in [@ geckoservo::glue::set_property]

bug 1558357 Original display changes don't trigger reflow, even though they affect the hypothetical position of an element.

bug 1558442 Use a weaker change hint for auto <-> non-auto offset changes.

bug 1558894 Intermittent bugs/315920-11.html == bugs/315920-11-ref.html | image comparison, max difference: 1, number of differing pixels: 2

bug 1559545 Start using the rust representation for grid-related things.

bug 1559546 Use atoms for grid line names.

bug 1559796 Should not serialize default radius of circle

bug 1559814 Use cbindgen for grid line properties.

bug 1559851 Intermittent TEST-UNEXPECTED-PASS | w3c-css/submitted/variables/variable-external-font-face-01.html == w3c-css/submitted/variables/variable-external-font-face-01-ref.html | image comparison, max difference: 0, number of differing pixels: 0

bug 1560198 "background-size:0px" serializes as "0px auto" in getComputedStyle (causing WPT failure in background-size-001.html )

bug 1560205 Fix WPT background-image-first-line.html to specify a line-height

bug 1560268 Perma [Tier 2] /css/css-contain/contain-size-flexbox-002.html | Testing http://web-platform.test:8000/css/css-contain/contain-size-flexbox-002.html == http://web-platform.test:8000/css/css-contain/reference/contain-size-flexbox-002-ref.html

bug 1560494 list-style-type serializes with symbolic

bug 1560705 DOMMatrix uses float when parsing CSS

bug 1560777 Sync servo stuff.

bug 1560828 paint-order parsing has off-by-one error

bug 1561131 add parsing support for text-decoration-skip-ink

bug 1561283 [css-grid] Grandchild of grid container doesn't immediately become grid item when its parent gets "display:contents"

bug 1561351 import WPT changes for "Load Ahem as a webfont everywhere"

bug 1561355 Update bindgen so as to not build clap.

bug 1561738 Remove nsStyleCoord.

bug 1561773 turn on anonymous content style caching pref

bug 1562269 Serialize grid-auto-rows grid-auto-columns with Servo

bug 1562787 Improve style struct size assertions.

bug 1563315 Use cbindgen for fill / stroke, and remove nsStyleSVGPaint.

CSS Transitions and Animations

bug 1429303 Make offset-rotate animatable

bug 1552352 [CSS Animations] Firefox only web platform test failures

bug 1555548 Incorrect results of individual transforms when some transform-like properties are running animations but others not

DOM: CSS Object Model

bug 1536871 Return the keyword value for line-height: normal in getComputedStyle.

bug 1554022 Intermittent /css/cssom-view/elementScroll.html | Element scrollBy test (one argument) - assert_equals: increment of scrollTop should be 15 expected 90 but got 89

bug 1558863 Perma Tier 2 TEST-UNEXPECTED-PASS | /css/cssom-view/elementScroll.html | Element scrollBy test (one argument) - expected FAIL

bug 1559325 Intermittent Tier 2 /css/cssom-view/scroll-behavior-subframe-root.html | Subframe with auto scroll-behavior ; scroll() with smooth behavior - assert_equals: Final value of scrollLeft expected x but got y

bug 1560465 Intermittent TEST-UNEXPECTED-PASS | /css/cssom-view/scroll-behavior-subframe-root.html | Subframe with auto scroll-behavior ; scroll() with smooth behavior - expected FAIL

bug 1561802 Perma [Tier 2] /css/cssom-view/position-sticky-root-scroller-with-scroll-behavior.html | Sticky elements work with the root (document) scroller - assert_equals: expected 750 but got 749

Layout

bug 1418472 abs-pos placeholder may end up on the wrong side of a line-break [was: Wrong position of github issue name on hover]

bug 1465296 [css-grid-2] Implement subgrid item placement

bug 1466358 [css-grid-2] Implement subgrid support in track sizing

bug 1471758 [css-grid-2][css-contain] contain:paint and contain:layout on a subgrid need to *prevent* it from being a subgrid

bug 1474771 Experiment propagating NS_FRAME_IS_DIRTY once in PresShell::FrameNeedsReflow instead of in ReflowInput::Init

bug 1488871 AsyncScrollPortEvent as an WillPaintObserver causes extra layout flushes during page load

bug 1543839 Let Resize Observer ride the trains (i.e. set pref 'layout.css.resizeobserver.enabled = true' without a NIGHTLY_BUILD guard)

bug 1544242 Assertion failure: !IsLazilyCascadedPseudoElement() (Lazy pseudos can't inherit lazy pseudos) with ::marker { display: list-item }

bug 1549267 Some thoughts on the usage of the constants in LayoutConstants.h

bug 1550105 Negative values in meta viewport result in different initial viewports on Firefox and Chrome

bug 1550535 Mark <svg> elements (nsSVGOuterSVGFrame) as reflow roots

bug 1550813 Revise viewport-resize-event-on-load-overflowing-page.html to avoid bug 1547827

bug 1552287 [css-contain] contain:layout on various frames doesn't fully suppress baseline

bug 1553227 Remove old scroll-snap implementation

bug 1553378 devirtualize calls to GetText() / TextLength() when we know we have a Text node

bug 1553673 IntersectionObserver internal rounding error with certain negative percentage rootMargins

bug 1553731 avoid reading from the "frame class to frame type" map when we can

bug 1554224 Enable some ESLint rules for more of layout/

bug 1554461 use an array instead of an nsTHashtable for nsContinuationStates

bug 1554571 cache ComputedStyles for anonymous content we know is always styled the same

bug 1554755 The optimization introduced by bug 1367906 is not really sound.

bug 1554832 nsPresContext::IsRootContentDocument returns true for OOP iframes

bug 1555543 APZ-related scrollbar UA style sheet rule doesn't apply in shadow trees

bug 1555757 Assertion failure: cbri (no containing block), at /builds/worker/workspace/build/src/layout/generic/ReflowInput.cpp:2251

bug 1556569 Remove display:contents from IsInline[Inside|Outside]Style()

bug 1556855 Remove the layout.css.prefixes.webkit pref

bug 1556857 Return true in AttributeChangeRequiresSubtreeRestyle whenever lwtheme attrs change in any chrome doc, not just those with XUL document elements

bug 1557518 Intermittent TEST-UNEXPECTED-PASS | /css/css-backgrounds/background-attachment-local/attachment-scroll-positioning-1.html | Testing http://web-platform.test:8000/css/css-backgrounds/background-attachment-local/attachment-scroll-positioning-1.html

bug 1557962 re-enable OMT font sanitization

bug 1558352 Ensure canvas anonymous content is always created before constructing the document element frame's children.

bug 1558607 Intermittent TEST-UNEXPECTED-PASS | scrolling/frame-scrolling-attr-2.html == scrolling/frame-scrolling-attr-ref.html | image comparison, max difference: 1, number of differing pixels: 2

bug 1558660 Intermittent bugs/391994-1.html == bugs/391994-1-ref.html | image comparison, max difference: 4, number of differing pixels: 1

bug 1558712 Intermittent TEST-UNEXPECTED-PASS | scrolling/frame-scrolling-attr-2.html == scrolling/frame-scrolling-attr-ref.html | image comparison, max difference: 0, number of differing pixels: 0

bug 1558834 Intermittent bugs/315920-7a.html == bugs/315920-7-ref.html | image comparison, max difference: 1, number of differing pixels: 14

bug 1558899 create web-platform reftests for text-decoration-width

bug 1559001 Intermittent bugs/395107-3.html == bugs/395107-3-ref.html | image comparison, max difference: 4, number of differing pixels: 2

bug 1559032 Intermittent bugs/395107-5.html == bugs/395107-5-ref.html | image comparison, max difference: 4, number of differing pixels: 1

bug 1559493 text-underline-offset has wrong baseline for vertical text when set to 0

bug 1562312 implement contain:size for `<select multiple>` elements

bug 1562757 Use |aFrameAsScrollable|'s pres shell to call ScrollToVisual in ScrollToShowRect in PresShell.cpp

bug 1563061 Add/update bug links for all css-contain layout/size/paint known test failures

bug 1563370 Eliminate GetPrevInFlowVirtual() and GetNextInFlowVirtual()

bug 1563691 Perma [tier2] TEST-UNEXPECTED-PASS | bugs/1562733-rotated-nastaliq-1.html == bugs/1562733-rotated-nastaliq-1-ref.html | image comparison, max difference: 253, number of differing pixels: 1397

Layout: Block and Inline

bug 1552357 Incorrect intrinsic size calculation on wrapper for inline-level elements with padding and `box-decoration-break: clone`

bug 1562122 Refactor and cleanup nsBlockFrame::ComputeFinalSize() when the block size is constrained

Layout: Columns

bug 1348839 Column-fill: auto doesn't fill as expected, content ends up in one column

bug 1523595 The height of columns in a column container split by a column-span are too large

bug 1524411 crash near null [@ nsLayoutUtils::GetFirstLinePosition]

Layout: Form Controls

bug 1476127 Implement contain:size for select objects.

bug 1539469 Make <input> elements display: inline-block by default (was: Fix WPT: testing/web-platform/tests/html/semantics/forms/the-input-element/input-width.html)

bug 1558645 Intermittent forms/input/selector-read-write-type-change-001.html == forms/input/selector-read-write-type-change-001-ref.html | image comparison, max difference: 1, number of differing pixels: 2

bug 1559023 Intermittent css-invalid/form/form-valid-and-barred-remove-barred.html == css-invalid/form/form-valid-ref.html | image comparison, max difference: 4, number of differing pixels: 2

bug 1561717 Add reftests for contain:size on select elements

Layout: Generated Content, Lists, and Counters

bug 1560460 outside list-item ::marker box is painted on top of child content

Layout: Grid

bug 1496502 [css-grid-2] Enable subgrid by default in Nightly (and early beta?)

bug 1547560 [css-grid-2] Unable to override column-gap value from parent when in a subgrid.

bug 1548421 [css-grid-2] Subgrids should never be reflow roots

bug 1553824 Crash in [@ InvalidArrayIndex_CRASH | nsGridContainerFrame::GridReflowInput::PercentageBasisFor]

bug 1558705 [css-grid] subgrid margin/border/padding isn't accounted for when doing content measurements to determine row size

Layout: Images, Video, and HTML Frames

bug 1547231 Map the width and height attribute of images to aspect-ratio

Layout: Scrolling and Overflow

bug 1544995 Missing border on quizlet.com (or rather: box-shadow not showing up, with 3D transforms)

bug 1546219 Rename mScrollSnapType{X,Y} to mScrollSnapStrictness{X,Y} to match what it is

bug 1553022 Make nested-scrollIntoView-snaps.html in wpt pass

bug 1559627 Scrolling is jumpy / hesitant on some webpages

bug 1560237 position: sticky does not work with scroll-behavior and overflow

bug 1562105 crash near null in [@ IsSmoothScroll]

Layout: Tables

bug 1409114 Figure out a better way to create display items for column backgrounds

bug 1553548 CSS `contain` needs to inherit from table to table-wrapper-box

Layout: Text and Fonts

bug 1011369 Implement line-break property of CSS3 Text

bug 1351432 Implement the break-spaces value of the white-space property

bug 1440014 [css-text-decor-4] Implement text-decoration-width for controlling underline thickness

bug 1490792 140ms of FontFace::DoLoad when loading Google Doc

bug 1509423 Use harfbuzz for AAT layout instead of CoreText

bug 1524431 Teach nsBidiPresUtils to only manipulate continuations created by bidi resolution

bug 1531715 Implement line-break: anywhere

bug 1544460 osx Mojave (10.14) - many reftests seem to fail

bug 1552062 [css-text-decor-4] Implement text-underline-offset

bug 1552121 Suppress auto-hyphenation of words that contain any internal capital letters

bug 1552781 Font inflation on einthusan.tv

bug 1554753 Emoji do not respect 0% opacity when combined with drop shadow

bug 1554998 CSS word-break: break-all is ignored with numeric string

bug 1555436 Fix `readability-braces-around-statements` static analysis warnings for nsTextFrameUtils.* and nsTextRunTransformations.*

bug 1555903 Add WPT testcase for text-indent not affecting tab-stop positions [was: Collapsing tab spaces in text with negative indentation]

bug 1556991 Remove the runtime pref controlling WOFF2 support

bug 1557044 Don't eagerly call ReadCMAP from gfxMacPlatformFontList::MakePlatformFont

bug 1557291 Control of capitalized-word hyphenation is not reliable, depending on form of lang tag used

bug 1561600 The macOS Japanese monospace font Osaka-Mono is not available when shared font-list is enabled

Printing: Setup

bug 1552711 Use 'DocShell' instead of 'Container' in nsPrintJob

bug 1552880 Start clearing up some of nsPrintJob's non-obvious distinction between original, source and preview documents

bug 1552969 Pass the document to print through to nsPrintJob::Print

bug 1553080 Have nsPrintJob record modality and mozPrintCallback presence during initialization

bug 1553081 Set nsPrintJob::mDisallowSelectionPrint during Initialize()

bug 1553318 Remove nsIPrintSettings.kRangeFocusFrame

bug 1553324 Remove nsIPrintSettings.printFrameTypeUsage

bug 1557033 Stop using nsIDocShellTreeItem in nsPrintJob

bug 1557104 Merge nsIPageSequenceFrame and nsSimplePageSequenceFrame

bug 1557434 Split nsPrintObject::Init into separate root-object and nested-object init methods

bug 1557681 Rename nsPrintJob::Cancelled() to Cancel()

bug 1557687 Remove nsPrintData::mDocWasToBeDestroyed

bug 1557878 Replace nsIWebBrowserPrint::enumerateDocumentNames with a getter for the top document's name

bug 1558057 Remove nsPrintJob::CleanupDocTitleArray

bug 1558067 Prevent mozPrintCallback being invoked with the wrong <canvas> element

bug 1558071 Rename nsIWebBrowserPrint.printPreviewNavigate to printPreviewScrollToPage

bug 1558072 Inline the nsDocumentViewer::ReturnToGalleyPresentation code to its single caller

bug 1558079 Add a comment to the mozPrintCallback invoking code warning about its non-obvious behavior

bug 1558180 Comment the mysterious OnPageHide() call in nsPrintJob and move it somewhere that makes sense

bug 1558210 Make various nsPrintJob methods private

bug 1558349 Stop calling SetIsPrintPreview in nsDocumentViewer::PrepareToStartLoad

SVG

bug 1032124 Cloned object (using nested use element) not updated when manipulated through JavaScript

bug 1295404 remove requiredFeatures from SVGTests

bug 1325319 Implement isPointInFill() and isPointInStroke() methods of SVGGeometryElement

bug 1383650 Implement SVG geometry properties in CSS

bug 1529571 [SVG Styling] Firefox only web platform test failures

bug 1529572 [SVG Types] Firefox only web platform test failures

bug 1544432 Font Rendering for "Josefin Sans" Broken

bug 1551030 Merge all SVGRect classes

bug 1552345 Perma [tier2] Android mochitest dom/smil/test/test_smilConditionalProcessing.html | b is in effect with passing conditional processing test on a - got +0, expected 100

bug 1554457 Obtain style from frame rather than GetComputedStyleNoFlush

bug 1554488 Add WPT test for baseVal behavior inside symbol/display:none

bug 1554568 font-size resolved incorrectly for things inside inner <svg>

bug 1555030 Assertion failure: !aNonSVGFrame->IsFrameOfType(nsIFrame::eSVG) || aNonSVGFrame->IsSVGOuterSVGFrame(), at /builds/worker/workspace/build/src/layout/svg/nsSVGIntegrationUtils.cpp:231

bug 1555758 Assertion failure: GetPrimaryFrame(), at /builds/worker/workspace/build/src/dom/svg/SVGCircleElement.cpp:130

bug 1555795 stack-overflow in SVG

bug 1555949 SVG <script>s don't run in shadow trees, since their BindToTree implementation uses the uncomposed doc.

bug 1556147 SVGImageElement::BuildPath is dead code

bug 1556511 initial render of a Coinbase svg graph is wrong in Firefox Nightly

bug 1557245 overflow text inside <foreignObject> no longer visible when "overflow:visible" is specified

bug 1557637 Correct resolve <image> size when specified size is auto and intrinsic size is missing

bug 1558356 add a WPT test for xml:space="preserve" inheriting

bug 1559096 Fix some SVGObserverUtils related misnaming

bug 1559344 Initial concourse pipeline rendering at top left

bug 1559626 convert getCharNumAtPosition to take a DOMPointInit

bug 1560179 AddressSanitizer: SEGV /builds/worker/workspace/build/src/dom/svg/SVGImageElement.cpp:270:3 in mozilla::dom::SVGImageElement::BuildPath(mozilla::gfx::PathBuilder*)

bug 1561352 viewBox-scaling-text-001.html needs changes to correctly reference Ahem font in other browsers