aboutsummaryrefslogtreecommitdiffstats
path: root/tests/wpt
Commit message (Collapse)AuthorAgeFilesLines
* Update web-platform-tests to revision ↵Servo WPT Sync2024-04-21626-5649/+18345
| | | | b'015f19c5b653f51f2e38ebe97ec0ff62523f57de' (#32121)
* layout: Have `current_block_direction_position` in `PlacementState` use `Au` ↵Ekta Siwach2024-04-191-0/+2
| | | | (#31948)
* layout: Add support for `clear` on `<br>` elements (#32094)Martin Robinson2024-04-174-8/+0
| | | | | | | | `<br>` elements are a bit "special" in the sense that they defer a linebreak, but can also have `clear` applied to them. The `clear` that they supply should be applie *after* the linebreak is processed. This change adds special processing for this situation. Fixes #15402.
* Upgrade Stylo to 2024-03-01 (#32089)Oriol Brufau2024-04-1618-169/+0
| | | | | | | * Upgrade Stylo to 2024-03-01 * Fixup for https://bugzil.la/1882754 * Update test expectations
* layout: Add support for `background-attachment: fixed` (#32068)Martin Robinson2024-04-159-18/+0
| | | Co-authored-by: Oriol Brufau <obrufau@igalia.com>
* layout: Add support for `<object>` with image data URLs (#32069)Martin Robinson2024-04-152-2/+3
| | | | | This is enough support for `<object>` to get Acid2 working. Co-authored-by: Oriol Brufau <obrufau@igalia.com>
* Keep 1st collapsible space after a preserved one (#32037)Oriol Brufau2024-04-151-2/+0
| | | | | | | | The logic was to remove any collapsible white space preceded by other white space. However, this should only happen if the preceding space is also collapsible. Also fixing the logic in ContentSizesComputation, which was wrong but previously it didn't matter.
* Update web-platform-tests to revision ↵Servo WPT Sync2024-04-14966-10377/+24921
| | | | b'daa07cf3c47652ed67e637f2a39bbc34f91cfe10' (#32071)
* Upgrade Stylo to 2024-01-16 (#32066)Oriol Brufau2024-04-1359-9321/+44
| | | | | | | | | | | | | | | * Upgrade Stylo to 2024-01-16 * Fixup for https://phabricator.services.mozilla.com/D187736 * Fixup for https://phabricator.services.mozilla.com/D196415 * Fixup for https://phabricator.services.mozilla.com/D197147 * Fixup for https://phabricator.services.mozilla.com/D196194 * Fixup for https://phabricator.services.mozilla.com/D196195 * Update test expectations
* Element collapsing thru should collapse with its children (#32060)Oriol Brufau2024-04-123-0/+51
| | | | | | | If the top and bottom margins of an element collapse through, then this patch treats the bottom margin as collapsing with its children, even if `height` doesn't compute to zero. Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Treat indefinite percentages as auto for margin collapse (#32059)Oriol Brufau2024-04-121-2/+0
| | | | | | | The top and bottom margins of an element can collapse through if its height is auto or zero. Indefinite percentages behave as auto, so they shouldn't prevent the margins from collapsing. Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Obey min-height and max-height on floated elements (#32057)Oriol Brufau2024-04-122-4/+0
| | | Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Implement form-associated custom elements and their ElementInternals (#31980)cathiechen2024-04-1153-472/+519
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * FACEs work, setFormValue test is awful so now has _mozilla backup * 1. Impl Validatable in ElementInternals instead of HTMLElement. 2. Reuse the code in Validatable trait. 3. The form associated custom element is not a customized built-in element. * add some comments * support readonly attribute and complete barred from constraint validation * Addressed the code review comments * Updated the legacy-layout results * Fixed the WPT failures in ElementInternals-validation.html * Addressed the code review comments * Review suggestions * Fixed silly mistakes and update the test result outside elementinternals * update the test results --------- Co-authored-by: Patrick Shaughnessy <pshaughn@comcast.net> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Upgrade Stylo to 2023-12-01 (#32032)Oriol Brufau2024-04-1011-234/+23
| | | | | | | | | | | | | | | | | | | * Upgrade Stylo to 2023-12-01 * Fixup for https://phabricator.services.mozilla.com/D191362 * Fixup for https://phabricator.services.mozilla.com/D191522 * Fixup for https://phabricator.services.mozilla.com/D191613 * Fixup for https://phabricator.services.mozilla.com/D191161 * Fixup for https://phabricator.services.mozilla.com/D191615 * Fixup for https://phabricator.services.mozilla.com/D193048 * Fixup for https://phabricator.services.mozilla.com/D193547 * Update test expectations
* fix: Handle table.deleteRow with no rows (#32009)shanehandley2024-04-072-8/+0
| | | | | * fix: Handle table.deleteRow with no rows * Respond to review, update legacy layout expectations
* Update web-platform-tests to revision ↵Servo WPT Sync2024-04-07765-3131/+19188
| | | | b'b73a0a32890ff293961eb55bb90ba57a5a711f48' (#32010)
* layout: Add a `FontMetricsProvider` for resolving font-relative units (#31966)Martin Robinson2024-04-0486-167/+6
| | | | | | | | | | | | | | | | | | | The only font relative unit that Servo knows how to resolve currently is `rem` (relative to the root font size). This is because Stylo cannot do any font queries. This adds a mechanism to allow this, exposing the ability to properly render `ex` units in Servo. This change only allows resolving some font size relative units thoug, as Servo doesn't collect all the FontMetrics it needs to resolve them all. This capability will be added in followup changes. Some new tests fail: - ex-unit-001.html: This test fails because Servo does not yet have support for setting the weight using @font-face rules on web fonts. - ex-unit-004.html: This test fails because Servo does not yet have support for setting the Unicode range of a web font using @font-face rules. - first-available-font-001.html: This test fails because the above two feature are missing.
* webgpu: Implement onSubmittedWorkDone (#31772)Samson2024-04-043-3105/+1382
| | | | | | | | | | | | | | | | | | | | | | | * Implement onSubmittedWorkDone * Use rust closures for callback & actually remove entries from hashmap. * Remove hashmap * Fix warnings * Update expectations * clean flaky crashes * re * Update components/script/dom/gpuqueue.rs Co-authored-by: Martin Robinson <mrobinson@igalia.com> --------- Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* compositing: Send entire scene's scroll offsets when sending WebRender ↵Martin Robinson2024-04-034-0/+101
| | | | | | | | | | | display lists (#31892) WebRender does not preserve spatial tree offsets when updating the spatial tree. Updating the spatial tree of a pipeline can also update the spatial tree of child pipelines. This change ensures that WebRender always gets the scroll offsets of the entire scene when modifying display lists in a way that may rebuild the spatial tree. Fixes #31807.
* Implementation of baseline-source (#31904)Munish Mummadi2024-04-028-225/+0
| | | Updating Stylo and test expectations.
* Update webidl and implement setter for the files property of a file input ↵shanehandley2024-04-014-12/+0
| | | | | | | (#31934) The files attribute was previously readonly, but was later updated to allow mutation via input.files = ... see https://github.com/whatwg/html/issues/2861
* Override timeout in WebGPU CTS to always be "long" (#31952)Samson2024-04-013-2506/+6496
| | | | | | | | | | | | | * Long webgpu timeout * Update expectations * reupdate expectations 2 * re * update-webgpu * Update testing_commands.py with better comment
* Update web-platform-tests to revision ↵Servo WPT Sync2024-03-311165-6815/+42906
| | | | b'16f18d8135a80e89f2e910ca7548999fa2f7937e' (#31951)
* Update Stylo to 2023-10-16 (#31932)Oriol Brufau2024-03-3018-96/+0
| | | | | | | | | | | | | | | | | | | | | | | * Update Stylo to 2023-10-16 * Fixup for https://phabricator.services.mozilla.com/D185154 * Fixup for https://phabricator.services.mozilla.com/D188216 * Fixup for https://phabricator.services.mozilla.com/D185677 * Fixup for https://phabricator.services.mozilla.com/D188566 * Fixup for https://phabricator.services.mozilla.com/D188727 * Fixup for https://phabricator.services.mozilla.com/D189475 * Fixup for https://phabricator.services.mozilla.com/D189521 * Fixup for https://phabricator.services.mozilla.com/D188812 * Fixup for https://phabricator.services.mozilla.com/D189484 * Update test expectations
* Obey `white-space: pre-wrap` when intrinsically sizing an IFC (#31930)Oriol Brufau2024-03-294-8/+0
| | | It was being treated like `pre`, but it allows wrapping lines.
* wpt: Enable tests in `/css/css-inline/baseline-source/` (#31913)Munish Mummadi2024-03-2933-0/+1265
| | | | | * updated-baseline-source * updated-for-tests-with-fmt
* Update servo's testharnessreport (#31920)Samson2024-03-282-2/+7
| | | | | * Update testharnessreport-servo.js with new props * Update manifest
* Ignore spaces before atomic inline for the min-content size (#31896)Oriol Brufau2024-03-273-6/+0
| | | | | | | | | | | | | | | * Ignore spaces before atomic inline for the min-content size For the min-content size we should wrap lines wherever is possible, so wrappable spaces shouldn't increase the length of the line, they will just be removed or hang at the end of the line. * Add a clarifying comment Co-authored-by: Martin Robinson <mrobinson@igalia.com> --------- Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* layout: Allow transforming inline replaced elements (#31833)Martin Robinson2024-03-274-2/+51
| | | | | | | | | | This requires passing through information about whether or not the element in question is replaced when checking to see if it's transformable and transitively all functions that make decisions about containing blocks. A new FragmentFlag is added to help track this -- it will be set on both the replaced items BoxFragment container as well as the Fragment for the replaced item itself. Fixes #31806.
* fonts: Add support for WOFF2 and properly load web fonts from @imports (#31879)Martin Robinson2024-03-2693-143/+44
| | | | | | | | | | | | This change also makes two fixes that are necessary to get WOFF2 fonts working: 1. It adds support for loading web fonts from stylesheets included via @import rules. 2. It ensure that when web fonts are loaded synchronusly they invalidate the font cache. This led to incorrect font rendering when running tests before. Fixes #31598.
* layout: More conservatively replace Stylist's Device (#31857)Martin Robinson2024-03-265-13/+0
| | | | | | | | | Instead of replacing Stylist's device on every reflow, only replace it when the viewport changes. In addition, preserve the root font size from the previous reflow fixing an issue where `rem` units were not properly computed between reflows. This fixes a bug where fonts that are sized using `rem` units change size on reload.
* Fix table with rows but no column (#31862)Oriol Brufau2024-03-265-36/+105
| | | | | | | | | | | | | * Fix table with rows but no column We weren't generating any fragment for the rows, which meant that JS APIs like clientWidth would be 0, and also outlines weren't painted. This aligns Servo with Blink and WebKit. Gecko is broken, it distributes twice the table height among the rows. * Feedback * Avoid conflict with #31874
* tidy: Make sure to run WPT lints when `--all` is passed to tidy (#31874)Martin Robinson2024-03-261-1/+1
| | | This also fixes the checked in WPT manifest.
* Pick the first or last baseline as appropriate (#31705)Oriol Brufau2024-03-253-0/+44
| | | | | | | The old logic was always picking the last baseline, but this should only happen for inline-blocks. Since replaced elements and flex containers aren't currently setting their baselines, this is only an improvement for inline-tables.
* script: Add pre element obsolete width attribute support (#31792)Bastiaan van der Plaat2024-03-254-540/+0
|
* Don't update row baseline if cell is empty (#31831)Oriol Brufau2024-03-256-6/+40
| | | | | | | | Gecko, Blink and WebKit agree that the if a row only has empty cells, its baseline should be at the bottom, not at the top. There isn't interoperability when the cells are just empty-ish, so this patch takes the simplest approach, aligning with Blink: any out-of-flow or in-flow content other than collapsed whitespace counts as not empty.
* Implement StaticRange (#31809)cathiechen2024-03-226-218/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | * Add DOM interface for AbstractRange * Add DOM interface for StaticRange * Update WPT tests for StaticRange-constructor.html * Fix formatting * Add AbstractRange & StaticRange in interfaces.html * rebased the code and fixed the failures Signed-off-by: Cathie Chen <cathiechen@igalia.com> * update the expected result in idlharness.window.js.ini file * Addressed the code review comments * updae the test result of legacy layout --------- Signed-off-by: Cathie Chen <cathiechen@igalia.com> Co-authored-by: Nipun Garg <nipung271@gmail.com>
* Fix WPT reference no_red_3x3_monospace_table-ref.xht (#31802)Richard Dushime2024-03-2186-169/+2
| | | | | * Fix WPT reference no_red_3x3_monospace_table-ref.xht * wpt Update manifest.json
* layout: Take into account `text-indent` for justification (#31777)Martin Robinson2024-03-216-0/+136
| | | | | | This change makes it so that when calculating the space added between words for justification, text-indent is taken into account. Fixes #31775.
* Don't trim leading whitespace of anonymous table cells (#31803)Oriol Brufau2024-03-2110-21/+0
| | | | | | A sequence of whitespace shouldn't generate an anonymous table row/cell, but we can't just throw away the leading whitespace, because afterwards we may encounter some other content, and then the leading whitespace should appear in the cell (noticeable with e.g. `white-space: pre`).
* layout: Enable `text-shadow` (#31734)Martin Robinson2024-03-1920-467/+2
| | | | `text-shadow` is enabled for legacy layout, so this just extends support to the modern layout system.
* Add pseudo async Create*PipelineAsync methods (#31695)Samson2024-03-19165-36733/+104745
| | | | | | | * Create fake CreatePipelineAsync * Update WebGPU CTS * Update expectations and disable some webgpu tests
* Update Stylo to 2023-09-01 (#31609)Oriol Brufau2024-03-1842-320/+0
| | | | | | | | | | | | | | | | | | | | | * Update Stylo to 2023-09-01 * Fixup for https://phabricator.services.mozilla.com/D184929 * Fixup for https://phabricator.services.mozilla.com/D184526 * Fixup for https://phabricator.services.mozilla.com/D184525 * Fixup for https://phabricator.services.mozilla.com/D185154 * Fixup for https://phabricator.services.mozilla.com/D184685 * Fixup for https://phabricator.services.mozilla.com/D185916 * Fixup for https://phabricator.services.mozilla.com/D185492 * Fixup for https://phabricator.services.mozilla.com/D186626 * Update test expectations
* Sync WPT with upstream (17-03-2024) (#31715)Servo WPT Sync2024-03-17490-3246/+11128
| | | | | | | | | | | * Update raw lags path for WPT import I forgot to do this in #31616 * Update web-platform-tests to revision b'298d1599dbf6255aea63506daaa1702ff0c4fdc5' --------- Co-authored-by: Samson <16504129+sagudev@users.noreply.github.com>
* Implement console.count/countReset (#31635)Smitty2024-03-174-72/+0
| | | | | | | | | | | * Implement console.count/countReset * Address review comment Signed-off-by: syvb <me@iter.ca> --------- Signed-off-by: syvb <me@iter.ca>
* Don't null out the baselines of anonymous tables (#31704)Oriol Brufau2024-03-1529-58/+0
|
* layout: Add basic support for `getClientRects()` queries (#31696)Martin Robinson2024-03-1511-44/+3
| | | | | | This adds basic support for `getClientRects()` by sharing code with the implementation of `getBoundingClientRect()`. In addition to sharing code, it also shares all of the bugs. Primarily, scrolilng positions are not taken into account when return boundary rectangles.
* Allow pre-wrap whitespace to hang at the end of the line (#31681)Oriol Brufau2024-03-1523-46/+0
| | | | | * Allow pre-wrap whitespace to hang at the end of the line * Use bitflags
* Obey white-space when intrinsically sizing an IFC (#31660)Oriol Brufau2024-03-1521-28/+14
| | | | | | | | | | | | | | | | | The old logic was assuming that all whitespace was a break opportunity, and that no newlines would be preserved. Note that text shaping considers the advance of a newline to be the same as a space. This was problematic because if we have a segment with a preserved space and newline, only the advance of the space should contrinute to the size of the block container. Therefore, I'm changing the breaker logic in other to have newline characters in their own segment. Then glyph_run_is_whitespace_ending_with_preserved_newline can just be renamed to glyph_run_is_preserved_newline. This patch is still not perfect because it doesn't check allow_wrap(), so `nowrap` is treated like `normal`, and `pre-wrap` like `pre`.
* Implement HTMLStyleElement.disabled attribute (#31682)Oriol Brufau2024-03-148-30/+0
| | | https://html.spec.whatwg.org/multipage/#dom-style-disabled