* Implement the <summary> element
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Implement UA shadow root for <details>
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Invalidate style when display is opened or closed
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Fix /_mozilla/mozilla/duplicated_scroll_ids.html
This test previously assumed that <details> elements would
not be rendered.
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Implement implicit summary elements
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Update WPT expectations
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Remove test for duplicated scroll IDs
See https://github.com/servo/servo/pull/35261#discussion_r1969328725 for
reasoning.
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Use Iterator::find to find implicit summary element
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
PR #35628 bumped the rustc version to 1.85, but this broke nix-based
systems as these also require bumping the channel for the 'rust-overlay'
module to a commit that includes support for that version of rustc.
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
A recent change, #35538 added the ability to dump different output image
formats. Unfortunately, this necessitated adding a file extension to the
output image for WPT tests. This had two problems:
1. The original change never landed properly in WPT for unknown reasons.
2. It interfered with the way that temporary files were cleaned up
during WPT runs.
This change modifies the image dumping code to fall back to PNG format
when there is no valid file extension on the output image and reverts
the change made to the WPT runner.
Fixes#35635.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
This method was taking an `IndefiniteContainingBlock` parameter, and
then it would first take the size corresponding to the main axis, and
then the one for the cross axis.
But it's simpler to just let it take a `FlexRelativeVec2<AuOrAuto>`
parameter.
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* TouchSequenceInfo is added to store information about a touch sequence.
For details about TouchSequenceInfo, see the code comments.
The handling_touch_move attribute is added to the TouchHandler, indicating that the script is processing the touch move event.
When handling_touch_move is set to true, the touch move event does not need to be sent to the script thread.
Signed-off-by: kongbai1996 <1782765876@qq.com>
* move touch state, active_touch_point and handling_touch_move to TouchSequenceInfo form TouchHandler.
remove TouchSequenceInfo end_sequence property, add Finished state mark sequence end.
if preventDefault on touchup, do not prevent Fling.
Signed-off-by: kongbai1996 <1782765876@qq.com>
* Refactor Touchhandler
- Add a newtype wrapper for the TouchSequenceId
- Move more state back into the TouchSequenceState
- Rename TouchAction to TouchMoveAction,
since it only covers immediate actions now.
Everything else is handled via state, since
it needs to wait on the handler.
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* Fix test-tidy
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* Fix clippy missing-default lint
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* Fix remaining clippy lints
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* Remove accidental committed test file
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* Remove wrong todo comment
(move events that are sent to script are just raw touchpoints,
no merging needed)
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* Fix preventdefault after long touch_down handler
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
---------
Signed-off-by: kongbai1996 <1782765876@qq.com>
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
Co-authored-by: Jonathan Schwender <schwenderjonathan@gmail.com>
* Don't register stylesheets outside of a browsing context with stylo
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Update WPT expectations
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Update to rust 1.85
This is needed for cargo-deny
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Upgrade crown
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Clippy fixes
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Re-upgrade cargo-deny to 0.18
Keeping it locked to 0.18 just in case they
update their required rustc version again
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
---------
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
This is the first step toward moving the WebDriver implementation to
servoshell. This move will make it possible to start testing the
embedding API with WebDriver. See [this zulip thread][a] for more details.
While WebDriver will be able to use a lot of API commands to do what it
is doing now, there will still need to be some "cheat codes" for more
gnarly access to `ScriptThread` details. That's why we likely won't be
able to remove all WebDriver-specific messages from the API -- but maybe
they will be useful for embedders somehow.
A couple messages have to change as they depended on `script_traits`
types, particularly those that used `WindowSizeData` and `LoadData`. I
think this helps to encapsulate the WebDriver commands a bit more
though.
[a]: https://servo.zulipchat.com/#narrow/channel/437943-embedding/topic/webdriver.20as.20embedding.20api.20playgound
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
We were always treating an indefinite `stretch` as the automatic size.
This instead treats it as `0px` on min sizing properties, and as `none`
on max sizing properties, aligning with Blink and this recent CSSWG
resolution: https://github.com/w3c/csswg-drafts/issues/11006
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
Lint jobs were failing because they would try to install the latest
version of cargo-deny (0.18.0), which requries rustc 1.85.0 or newer,
while the currently active rustc version is 1.83.0.
Therefore this makes it install version 0.17 instead.
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
Switch the delay to be used between the end of a previous run and the next, instead of the start
of consecutive runs. That ensure that we don't enqueue messages when processing is slower than
the delay.
Signed-off-by: webbeef <me@webbeef.org>
* add CanGc to new_resolved and use it where possible
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* add CanGc to new_rejected
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
---------
Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* Use counter instead of time for HTMLFormElement.
Fixes#25455
Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
* Update components/script/dom/htmlformelement.rs to include suggestions
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
---------
Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>