1. The `shared` directory is for the "_traits" crates, which will likely
be moved out of this directly at some point and renamed "_api". These
crates expose the API of crates to avoid circular dependencies.
`Snapshot` isn't really this.
2. `Snapshot` is essentially a specialied kind of `Image` so it makes
sense that it is grouped with other image-related things in `pixels`.
Testing: This should not change any behavior so is covered by existing
tests.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
The compositor always does the same thing with these events regardless
of the phase, so I think it is completely unecessary.
Testing: This shouldn't change behavior at all, so is covered by
existing tests.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Also renamed all "CSS" selector variants of `WebDriverScriptCommand` to
avoid confusion.
Testing: Mostly `./mach test-wpt -r
tests\wpt\tests\webdriver\tests\classic\find_*_from_shadow_root\find.py
--product servodriver`
But many other test also relies on finding element(s) from shadow root,
so I ran the entire test.
All deleted lines are from test expectations.
---------
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
This is finishing some incomplete cleanup from #33044. Kitchen sink enum
types like IndexedDBThreadReturnType make code harder to read and
require ignoring variants that will never be sent in many cases.
Testing: No behaviour change; existing WPT tests suffice.
Fixes: part of #6963
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
No longer store scroll offsets for elements in the DOM. Instead
consistently get and set these in layout's `ScrollTree`. This more
consistently requires layout to run when querying scroll offsets, which
ensures that they are up-to-date and properly bounded by scrollable
overflow area.
Testing: This causes several WPT tests to start passing, and one to
start
failing. In the case of
`/shadow-dom/scroll-to-the-fragment-in-shadow-tree.html`, I believe the
issue
is that we don't properly handle scrolling and shadow DOM elements.
Before, the
faulty scrolling was hiding this issue.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
IDBVersionChangeEvent is already used internally from non-Window
globals, but the constructor wasn't set up to expose the interface
object in worker globals.
Testing: The effort involved in adding a test for this does not seem
worthwhile—we get this for free once we enable the indexeddb preference
while our interfaces.worker.js test is running.
Fixes: part of #6963
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Add debug option `dump-scroll-tree` to print the scroll tree that had
been stored after each reflow, or log that the scoll tree is not
initialized yet..
To reduce the coupling, the debug print operation will process the
scroll tree node list that have been constructed in the stacking context
tree. It will generate a adjacency list and do preorder traversal. The
order of the tree then will depends on the order of the node in the node
list that has been constructed. Which, in turn, correspond to the
declaration order of the nodes.
This would help with the analysis and development of post composite
queries and its caching.
cc: @xiaochengh
Signed-off-by: stevennovaryo <steven.novaryo@gmail.com>
Global scopes have two creation URLs: one for itself and one for the
"top-level" scope. It's not immediately obvious what is considered
top-level here (it is not strictly defined in the specification).
In any case, reports need the creation URL of the scope itself, not the
top-level version. Therefore, propagate this information from all
scopes, where the worker and worklets remain to pass in `None` for their
top-level scope.
Part of #37328
---------
Signed-off-by: Tim van der Lippe <tvanderlippe@gmail.com>
Follow to the HTML specification and support of Blob as
ImageBitmapSource
to able use it as intermediate instance in "fetch() -> Blob ->
ImageBitmap" execution sequence.
https://html.spec.whatwg.org/multipage/#imagebitmapsource
The specification says what these steps must run in parallel
(outside the createImageBitmap task), but currently loading bytes from
Blob
and later image decoding happen in synchronous order while
promise is fullfilled or rejected on bitmap task source.
https://html.spec.whatwg.org/multipage/#the-imagebitmap-interface:blob-4
Testing: Improvements in the following WPT tests
- html/canvas/element/compositing/2d.composite*
- html/canvas/element/drawing-images-to-the-canvas/2d.drawImage*
- html/canvas/element/manual/imagebitmap/createImageBitmap*
- html/canvas/offscreen/compositing/2d.composite
- html/canvas/offscreen/drawing-images-to-the-canvas/2d.drawImage
- webgl/tests/conformance/textures/image_bitmap_from_blob/*
Fixes (partially): #34112
Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
While this introduces many new crashes in the test results, that's
actually progress. Previously a huge number of tests were failing early
because we never persisted the load-bearing `result` value for
upgradeneeded events, so now we get to see much more interesting
failures in our IndexedDB implementation.
Testing: Existing WPT testsuite for IndexedDB.
Fixes: part of #6963
Depends on #37567.
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
There were a lot of crashing IndexedDB tests caused by code in
DOMStringList that required a Window object despite being exposed to
non-Window globals.
Testing: Lots of existing tests no longer crash.
Fixes: part of #6963
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
1. Correctly Serialize the ShadowRoot. Previously, it contains a nested
element identifier "element-6066-11e4-a52e-4f735466cecf"
2. Improve coding style with what I learnt from Josh today
Testing: Passing way more "Find Elements from Shadow Root" test locally
now
Fixes: #37559
---------
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Preserve user set TARGET_CFLAGS and co.
This allows users to pass additional CFLAGS, when compiling code for the
target, e.g. to optimize for a specific CPU.
Testing: The default behavior if the environment variables are not set
is unchanged and covered by existing CI tests.
Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com>
- Add `ResourceArrayType` with `Available` and `Updated` variants
- Rename `resources-available` and `resource-available` to
`resources-array` ,`resource-array`
- Add `ResourceArrayType` as an argument to decide the type of resources
- Add `Option<ResponseContentMsg>`,`Option<ResponseStartMsg>`,
`Option<ResponseCookiesMsg>`,
`Option<ResponseHeadersMsg>`,`Option<RequestCookiesMsg>`,
`Option<RequestHeadersMsg>`, `total_time`, `security_state` to
`NetworkEventActor` struct , and serialize the data in each to
`resource_updates` , flattening the nested arrays into a single JSON
- Refactor the following methods `request_headers`,`response_start` ,
`response_content`,`response_cookies`,`response_headers`,
`request_cookies`,`total_time` to associated functions passing
`HttpRequest` and `HttpResponse` as parameters .
Testing: Ran servo with devtools flag to see the logs corresponding to
the changes
Fixes: https://github.com/servo/servo/issues/37479
This PR Builds on https://github.com/servo/servo/pull/37517 and was
opened due to merge conflicts and branch issues
---------
Signed-off-by: Uthman Yahaya Baba <uthmanyahayababa@gmail.com>
Instead of printing a Rust compilation warning, simply print a message
before every build (when using `mach`) that shows the build
configuration and whether or not `crown` is enabled.
Fixes#32597.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Testing: Observing the parsed poster URL is not possible by javascript
and would require the server to somehow tell the client which URL was
requested. I don't know how to do that in WPT and I don't think the
effort is worth it.
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
When the path is created with an uninvertible transform, don't do any
path-based operations. Now `ensure_path()` returns a `Path` object and
this change adds early returns which prevent trying to use it.
Testing: This change adds a WPT crash test.
Fixes#36995.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Exclude CDATASection nodes from Node::normalize. I made it under the
assumption that CDATAs can't have children so we don't need to go into
the `else node.Normalize()` branch on line 3485 with them, hope this is
correct.
Testing: covered by `dom/nodes/Node-normalize.html`
Fixes: https://github.com/servo/servo/issues/37006
---------
Signed-off-by: Rodion Borovyk <rodion.borovyk@gmail.com>
According to HTML specification the poster attribute determines the
element's poster frame
(regardless of the value of the element's show poster flag).
https://html.spec.whatwg.org/multipage/#poster-frame
So the poster frame and the show poster flag is orthogonal to each
other, the latest one only controls
when browser should display the poster frame and should do not block
accepting video frames
from media pipeline (e.g. on new_preroll callback from video sink).
During layout the video element should select the current frame which
will be presented
based on first matching condition from the list:
https://html.spec.whatwg.org/multipage/#the-video-element:the-video-element-7
Testing: Improvements in the following WPT tests
- html/canvas/element/manual/imagebitmap/createImageBitmap*
- html/semantics/embedded-content/the-canvas-element/*
Fixes: #37165
---------
Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
Moving `webdriver` to `servoshell`:
- Let `servoshell` manage lifecycle of `webdriver`
- One by one, move the handling of webdriver commands from
`constellation` to `embedder`
Partially fix: https://github.com/servo/servo/issues/37370
Partially fix webdriver test timeout with `no_top_browsing_context`
cc: @xiaochengh
---------
Signed-off-by: batu_hoang <longvatrong111@gmail.com>
Resident Segments was not being correctly parsed because the regexp
changed.
Testing: I do not think memory reporting has testcases. We keep the old
output intact (i.e., resident) while adding the new output
`resident-according-to-smaps` which was previously evaluated to an empty
vector on linux. Other targets always return the empty vector.
Signed-off-by: Narfinger <Narfinger@users.noreply.github.com>
`mach test-devtools` was previously hard-coded to using the release
build, which is confusing and different from how the rest of mach works
(e.g. `mach build`, `mach run`). This patch makes `mach test-devtools`
run with the debug build by default, or the other builds with
`--release` or `--profile`.
Testing: this patch directly affects our devtools tests
Fixes: many hours of head scratching
Signed-off-by: Delan Azabani <dazabani@igalia.com>
Co-authored-by: atbrakhi <atbrakhi@igalia.com>
Fix wheel event, either dispatched from window or webdriver:
- Positive deltaY means scrolling down, negative deltaY means scrolling
up
- Positive deltaX means scrolling right, negative deltaX means scrolling
left
Tests: Many scrolling interaction test will depend on this.
Signed-off-by: PotatoCP <kenzieradityatirtarahardja18@gmail.com>
Implement "get a known shadow root" and reduce some duplication
This is still a preparation PR to ["find element(s) from shadow
root"](https://w3c.github.io/webdriver/#find-element-from-shadow-root)
Testing: No Behaviour change.
---------
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
Adds indexeddb support to servo. At the moment heed is being used as the
backend, although this can be swapped out by implementing `KvsEngine`.
This PR adds a thread + a thread pool for Indexeddb related operations.
Also `database_access_task_source` is added for Indexeddb related
operations.
This is a partial rewrite of #25214. (Reopened due to branching issue)
Fixes#6963
---------
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>
Signed-off-by: Josh Matthews <josh@joshmatthews.net>
Co-authored-by: Rasmus Viitanen <rasviitanen@gmail.com>
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
Bumps [autocfg](https://github.com/cuviper/autocfg) from 1.4.0 to 1.5.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d912169ed6"><code>d912169</code></a>
Merge pull request <a
href="https://redirect.github.com/cuviper/autocfg/issues/78">#78</a>
from cuviper/release-1.5.0</li>
<li><a
href="57c8793dfc"><code>57c8793</code></a>
Release 1.5.0</li>
<li><a
href="feb385b286"><code>feb385b</code></a>
Merge pull request <a
href="https://redirect.github.com/cuviper/autocfg/issues/77">#77</a>
from cuviper/edition</li>
<li><a
href="f332b4df50"><code>f332b4d</code></a>
Add methods to get/set the edition</li>
<li><a
href="706fa58c2e"><code>706fa58</code></a>
Merge pull request <a
href="https://redirect.github.com/cuviper/autocfg/issues/76">#76</a>
from cuviper/clippy</li>
<li><a
href="4ec911c0d5"><code>4ec911c</code></a>
Fix clippy::nonminimal_bool</li>
<li><a
href="3d217f79cc"><code>3d217f7</code></a>
Merge pull request <a
href="https://redirect.github.com/cuviper/autocfg/issues/75">#75</a>
from cuviper/probe_cleanup</li>
<li><a
href="b1928bac4c"><code>b1928ba</code></a>
Remove probe output files</li>
<li>See full diff in <a
href="https://github.com/cuviper/autocfg/compare/1.4.0...1.5.0">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.173 to 0.2.174.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/libc/releases">libc's
releases</a>.</em></p>
<blockquote>
<h2>0.2.174</h2>
<h3>Added</h3>
<ul>
<li>Linux: Make <code>pidfd_info</code> fields pub (<a
href="https://redirect.github.com/rust-lang/libc/pull/4487">#4487</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Gnu x32: Add missing <code>timespec.tv_nsec</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4497">#4497</a>)</li>
<li>NuttX: Use <code>nlink_t</code> type for <code>st_nlink</code> in
<code>struct stat</code> definition (<a
href="https://redirect.github.com/rust-lang/libc/pull/4483">#4483</a>)</li>
</ul>
<h3>Other</h3>
<ul>
<li>Allow new <code>unpredictable_function_pointer_comparisons</code>
lints (<a
href="https://redirect.github.com/rust-lang/libc/pull/4489">#4489</a>)</li>
<li>OpenBSD: Fix some clippy warnings to use <code>pointer::cast</code>.
(<a
href="https://redirect.github.com/rust-lang/libc/pull/4490">#4490</a>)</li>
<li>Remove unessecary semicolons from definitions of
<code>CMSG_NXTHDR</code>. (<a
href="https://redirect.github.com/rust-lang/libc/pull/4492">#4492</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/rust-lang/libc/blob/0.2.174/CHANGELOG.md">libc's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/rust-lang/libc/compare/0.2.173...0.2.174">0.2.174</a>
- 2025-06-17</h2>
<h3>Added</h3>
<ul>
<li>Linux: Make <code>pidfd_info</code> fields pub (<a
href="https://redirect.github.com/rust-lang/libc/pull/4487">#4487</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li>Gnu x32: Add missing <code>timespec.tv_nsec</code> (<a
href="https://redirect.github.com/rust-lang/libc/pull/4497">#4497</a>)</li>
<li>NuttX: Use <code>nlink_t</code> type for <code>st_nlink</code> in
<code>struct stat</code> definition (<a
href="https://redirect.github.com/rust-lang/libc/pull/4483">#4483</a>)</li>
</ul>
<h3>Other</h3>
<ul>
<li>Allow new <code>unpredictable_function_pointer_comparisons</code>
lints (<a
href="https://redirect.github.com/rust-lang/libc/pull/4489">#4489</a>)</li>
<li>OpenBSD: Fix some clippy warnings to use <code>pointer::cast</code>.
(<a
href="https://redirect.github.com/rust-lang/libc/pull/4490">#4490</a>)</li>
<li>Remove unessecary semicolons from definitions of
<code>CMSG_NXTHDR</code>. (<a
href="https://redirect.github.com/rust-lang/libc/pull/4492">#4492</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ea6f07f982"><code>ea6f07f</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/libc/issues/4500">#4500</a>
from tgross35/release</li>
<li><a
href="ce31fdaf1c"><code>ce31fda</code></a>
chore: release libc 0.2.174</li>
<li><a
href="296b5801e9"><code>296b580</code></a>
Merge pull request <a
href="https://redirect.github.com/rust-lang/libc/issues/4499">#4499</a>
from tgross35/backport-hungarian-wax</li>
<li><a
href="264a5399ab"><code>264a539</code></a>
Add missing timespec.tv_nsec for gnux32</li>
<li><a
href="7d92568ed6"><code>7d92568</code></a>
fix: use nlink_t type for st_nlink in struct stat definition for
NuttX</li>
<li><a
href="790180ba16"><code>790180b</code></a>
Remove unessecary semicolons from definitions of
<code>CMSG_NXTHDR</code>.</li>
<li><a
href="1e99d50bc9"><code>1e99d50</code></a>
make pidfd_info fields pub</li>
<li><a
href="c08c5073ef"><code>c08c507</code></a>
openbsd: Fix some clippy warnings to use
<code>pointer::cast</code>.</li>
<li><a
href="513405844c"><code>5134058</code></a>
Allow new <code>unpredictable_function_pointer_comparisons</code>
lints</li>
<li>See full diff in <a
href="https://github.com/rust-lang/libc/compare/0.2.173...0.2.174">compare
view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
</details>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Zero-sized gradient border images cause WebRender to panic, so simply
don't add them to the display list.
Testing: This change adds a WPT crash test.
Fixes: #37432
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
using abort signal and abortcontroller in
Writablestreamdefaultcontroller
Part of https://github.com/servo/servo/issues/34866
---------
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
1. `get_known_element`: Refactor to follow same step of spec (which
reduces unnecessary search) and implement previously missing step 4.2:
If node is stale return error with error code stale element reference.
An element is stale if its node document is not the active document or
if it is not connected.
2. Refactor `find_node_by_unique_id_in_document` to make it not check
error and really return a `Option<DomRoot<Node>>` as the name suggests.
This will greatly reduce duplication when implement [get a known shadow
root](https://w3c.github.io/webdriver/#dfn-get-a-known-shadow-root) soon
Testing: All WebDriver Conformance test after removing two problematic
commits in #37520
Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
Currently, the hover state will stay when the mouse moves out of the
webview, this PR fixes it
Testing: Hover on the `About` on servo.org, and then move the mouse up
to the browser UI, see the hover state resets
Signed-off-by: Tony <legendmastertony@gmail.com>
We currently store the source contents in both the SourceActor and the
ThreadActor’s SourceManager, which is redundant. We also currently send
the source contents in thread `sources` responses and watcher
`resources-available-array` messages, but in both cases this is
unnecessary (and ignored by the client).
This patch merges SourceData into SourceActor, making the latter the
single source of truth for source-related state. We also create a
SourceForm type, which represents the subset of source-related state
that gets sent in thread `sources` responses (and for now, watcher
`resources-available-array` messages).
Finally we rename `source_urls` → `source_actor_names` and `new_source`
→ `new_registered` for clarity.
Testing: no changes to client-facing behaviour, and this is covered by
tests
Signed-off-by: Delan Azabani <dazabani@igalia.com>
Co-authored-by: atbrakhi <atbrakhi@igalia.com>
- Register import map when preparing HTML script element
- Added `import_map` to `GlobalScope`
Testing: should pass existing WPT
Fixes: part of https://github.com/servo/servo/issues/37316
---------
Signed-off-by: Jason Tsai <git@pews.dev>
The retry in previous implementation doesn't have a good reason, it
seems like webdriver just want to try its luck.
If get focused webview return None, better just return it.
There is a case webdriver still runs when all webview are closed.
cc: @xiaochengh
Signed-off-by: batu_hoang <longvatrong111@gmail.com>
This PR fixes some mistakes introduced in
https://github.com/servo/servo/pull/37332. Where Binding.conf and
WeakReferenceable trait were used badly
Testing: No test introduces
Fixes: It fixes mistake introduced in the incrementally implementation
of #26488
Signed-off-by: Domenico Rizzo <domenico.rizzo@gmail.com>