aboutsummaryrefslogtreecommitdiffstats
path: root/components
Commit message (Collapse)AuthorAgeFilesLines
* Ensure iframe load event occurs if initial about:blank is recreated with ↵Josh Matthews2024-10-026-48/+53
| | | | document.open.
* Update expectations.Josh Matthews2024-09-281-2/+5
|
* Synchronously mark iframes as having pending loads when navigating a window ↵Josh Matthews2024-09-2712-34/+69
| | | | proxy with a frame element.
* clear timers when replacing a window.Josh Matthews2024-09-273-0/+14
|
* Only discard documents when no window replacement has occurred.Josh Matthews2024-09-271-2/+4
|
* Only use window replacement when new document is same-origin.Josh Matthews2024-09-271-1/+5
|
* Enter a realm when dispatching DOMContentLoaded.Josh Matthews2024-09-251-4/+5
|
* Treat a missing replaced document as a non-replaced window.Josh Matthews2024-09-251-2/+2
|
* Store a pipeline that's being replaced in the load data.Josh Matthews2024-09-259-35/+34
|
* Reset document state notification when replacing a window.Josh Matthews2024-09-251-0/+1
|
* about:srcdoc loads are not synchronous.Josh Matthews2024-09-251-1/+1
|
* Don't suspend windows that have been replaced.Josh Matthews2024-09-251-1/+3
|
* Use existing window when navigating away from initial about:blank document.Josh Matthews2024-09-2515-94/+234
|
* Fix panic when about:blank iframe is removed from the document immediately ↵Josh Matthews2024-09-251-2/+4
| | | | after being added to it.
* Formatting.Josh Matthews2024-09-251-4/+11
|
* Sync load event for about:blank iframe elements.Josh Matthews2024-09-253-2/+39
|
* Only suppress load event dispatch.Josh Matthews2024-09-251-6/+8
|
* Formatting.Josh Matthews2024-09-251-3/+1
|
* Hack: normalize all about:blank load behaviour and prevent load/pageshow ↵Josh Matthews2024-09-259-3/+22
| | | | events on the content documents.
* fonts: Make fast shaping determination platform-independent (#33540)Martin Robinson2024-09-256-116/+129
| | | | | | | | | | | | | | This makes the determination of whether or not to use fast shaping platform independent. Previously it was less stringent for Windows, leading to using it in cases where a font had a GSUB or GPOS table -- which broke proper shaping. In addition, the test is made platform independent and expanded to be more complete. Finally, comments are added indicating that "fast shaping" will be removed. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* webgpu: destroy GPUTexture without erroring (#33534)Samson2024-09-253-24/+8
| | | | | | | | | | | | | * destroy GPUTexture without erroring (errors can be safely ignored) Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Update expectations Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* Use `ContentSizes::shrink_to_fit` when possible (#33527)Oriol Brufau2024-09-252-8/+11
| | | | | And ensure that the minimum wins for malformed ContentSizes. Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* fonts: Use `IpcSharedMemory` to send font data (#33530)Martin Robinson2024-09-2526-543/+600
| | | | | | | | | | | | | | | | | | | | | This changes modifes the way that font data is sent over IPC channels. Instead of serializing the data or sending it via IPC byte senders, font data is copied into shared memory and a copy of the handle is sent over the channel. There is also the idea of sending the file handle of the on disk data of system fonts. This could be implemented as a further followup once there is an abstraction in `ipc-channel` over file handles. To accomplish this, a `FontData` abstraction is added, which also allows caching an in-memory shared `Arc<Vec<u8>>` version of the data (neeeded by some APIs). This could also be a place for caching font tables in the future. Finally, the `FontCacheThread` is renamed to the `SystemFontService` while the proxy for this is now named `SystemFontServiceProxy`. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Layout: Implement innerText/outerText (#33312)Ben2024-09-249-67/+616
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Implement outerText on HtmlElement Signed-off-by: Shane Handley <shanehandley@fastmail.com> * Fixed some innerText/outerText bugs Signed-off-by: Benjamin Vincent Schulenburg <bennyschulenburg@gmx.de> * Unified innerText/outerText handling outside of Layout Before these 2 were treated separately and only within Layout would they end up calling the same method, now they are already unified within HTMLElement Signed-off-by: Benjamin Vincent Schulenburg <bennyschulenburg@gmx.de> * Address a few nits Signed-off-by: Martin Robinson <mrobinson@igalia.com> * Added innerText support for `inline-flex` Signed-off-by: Benjamin Vincent Schulenburg <bennyschulenburg@gmx.de> --------- Signed-off-by: Shane Handley <shanehandley@fastmail.com> Signed-off-by: Benjamin Vincent Schulenburg <bennyschulenburg@gmx.de> Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Shane Handley <shanehandley@fastmail.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Properly track `rel` keywords for `<a>`/`<area>`/`<form>` elements (#33462)Simon Wülker2024-09-237-300/+540
| | | | | | | | | | | | | | | | | | | | | | | | * Use linkrelations for all linkable elements Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> * Document LinkRelations Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> * Rename linkrelations.rs -> links.rs This module is supposed to include general-purpose link related stuff. Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> * Parse all "rel" keywords Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> --------- Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Stop sending EmbedderMsg::WebViewOpened from WindowProxy (#33514)webbeef2024-09-221-2/+0
| | | | | This is redundant since the constellation already sends this message. Signed-off-by: webbeef <me@webbeef.org>
* Add `HTMLCanvasDataSource::Empty` that represent transparent black instead ↵Samson2024-09-227-36/+41
| | | | | | | | | | | | | | | of `HTMLCanvasDataSource::Image(None)` (#33519) * `HTMLCanvasDataSource::Empty` that represent transparent black instead of Image(None) Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Fix warning from 3a0d27b2312c6396e85178615290ac2ec3592ce1 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* reuse ImageKey for gpucanvascontext (#33517)Samson2024-09-224-37/+22
| | | Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* webgl: Update IDL exposed members (#33509)Daniel Adams2024-09-2216-41/+101
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update IDLs to expose on Workers Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update usage of Canvas/OffscreenCanvas union, add label Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update WPT expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Fix match arm Signed-off-by: Daniel Adams <msub2official@gmail.com> * Add missing spec links Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update interfaces.worker.js Signed-off-by: Daniel Adams <msub2official@gmail.com> --------- Signed-off-by: Daniel Adams <msub2official@gmail.com>
* fix many clippy warnings (#33510)Gae242024-09-2113-34/+29
| | | Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* bindings: Allow Guard to take multiple conditions, check for SecureContext ↵Daniel Adams2024-09-212-18/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | in ConstructorEnabled (#33508) * Update condition handling for exposing values - Let Guard take a list of conditions - Check for secure context condition when exposing constructor Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update WPT expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Python tidy Signed-off-by: Daniel Adams <msub2official@gmail.com> * Make interfaces test run in secure context Signed-off-by: Daniel Adams <msub2official@gmail.com> --------- Signed-off-by: Daniel Adams <msub2official@gmail.com>
* chore: Update wgpu (#33506)Samson2024-09-2130-345/+191
| | | | | | | | | | | | | | | | | | | | | | | | | * Update wgpu Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * use all backends at runtime Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * clean up some adapter stuff Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Update expectations Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * flakes Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* Enable min-content, max-content, fit-content and stretch (#33492)Oriol Brufau2024-09-2013-124/+104
| | | | | | | | | For the sizing properties. We don't actually support them yet, just treating them as the initial value. Signed-off-by: Oriol Brufau <obrufau@igalia.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* webgpu: Support more `TextureFormat`s in `GPUCanvasContext.configure()` (#33504)Samson2024-09-201-16/+25
| | | | | | | | | | | | | * `descriptor` -> `configuration` to match spec Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Support more `TextureFormat`s in `GPUCanvasContext.configure()` Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* layout: Ensure that `<caption>`'s support `position: relative` (#33426)Martin Robinson2024-09-191-3/+13
| | | | | | | | | This change adds support for `position: relative` to table `<caption>`. In addition to adjusting their position according to inset values, table captions must also establish containing blocks for descendants that are absolutely positioned. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Oriol Brufau <obrufau@igalia.com>
* fetch: add an accept encoding header when the range header exists (#33496)shanehandley2024-09-191-13/+32
| | | Signed-off-by: Shane Handley <shanehandley@fastmail.com>
* Append the Sec-Purpose header for prefetch requests (#33490)shanehandley2024-09-181-23/+51
| | | Signed-off-by: Shane Handley <shanehandley@fastmail.com>
* dom: Append stream chunks in the correct order. (#33487)Josh Matthews2024-09-181-2/+1
| | | | | | | | | | | | | | | | | * Append stream chunks in the correct order. Signed-off-by: Josh Matthews <josh@joshmatthews.net> * Run mimesniff tests in CI. Signed-off-by: Josh Matthews <josh@joshmatthews.net> * Delete tests/wpt/meta/mimesniff/media/media-sniff.window.js.ini Signed-off-by: Josh Matthews <josh@joshmatthews.net> --------- Signed-off-by: Josh Matthews <josh@joshmatthews.net>
* layout: Add support for `object-fit` and `object-position` (#33479)Martin Robinson2024-09-1810-70/+155
| | | | | | | | | | This also makes a couple small improvements: - Rename `IntrinsicSizes` to `NaturalSizes` which reflects more modern spec language. - Move the conversion of Stylo's `ImageRendering` to WebRender's version to a `ToWebRender` trait implementation. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Oriol Brufau <obrufau@igalia.com>
* Add checks for BigInt/BigUint in getRandomValues (#33485)Daniel Adams2024-09-181-1/+3
| | | Signed-off-by: Daniel Adams <msub2official@gmail.com>
* Add `rust-version` to all `Cargo.toml` files (#33483)Martin Robinson2024-09-1744-0/+44
| | | | | | | This is another step preparing for building Servo without `mach`. Fixes #33430. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* Update CustomEvent webidl interface (#33481)Simon Wülker2024-09-173-8/+14
| | | | | | | | | | The [idl interface](https://dom.spec.whatwg.org/#interface-customevent) and servo's implementation had diverged. * Extra arguments to initCustomEvent are optional (fixes `dom/events/CustomEvent.html`) * The CustomEvent constructor is infallible * "[Exposed=*]" (and the same for the "Event" interface since it's CustomEvent's parent.) Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* webxr: Implement reference space reset events (#33460)Daniel Adams2024-09-179-5/+206
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Initial interface implementation Signed-off-by: Daniel Adams <msub2official@gmail.com> * Add event handler Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update FakeXRDevice interface Signed-off-by: Daniel Adams <msub2official@gmail.com> * Implement reset event Signed-off-by: Daniel Adams <msub2official@gmail.com> * Downcast bounded spaces Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update webxr commit Signed-off-by: Daniel Adams <msub2official@gmail.com> * fmt Signed-off-by: Daniel Adams <msub2official@gmail.com> * Adjust DomRoot usage Signed-off-by: Daniel Adams <msub2official@gmail.com> * fmt Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update manifest Signed-off-by: Daniel Adams <msub2official@gmail.com> --------- Signed-off-by: Daniel Adams <msub2official@gmail.com>
* webgpu: Use `PresentationBufferState` instead of bucketing buffer_ids per ↵Samson2024-09-161-39/+93
| | | | | | | | | | | | | | | state (#33457) * `PresentationBufferState` Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * fixups Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* Clear `self.pending_whitespace.max_content` in `forced_line_break()` (#33469)Oriol Brufau2024-09-161-8/+8
| | | | | | | | | | | | If we encountered a preserved line break after some whitespace, we were including the space in the max-content size of the following line. So just like `line_break_opportunity()` was already clearing `self.pending_whitespace.min_content`, `forced_line_break()` needs to clear `self.pending_whitespace.max_content` too. Also some cosmetic refactoring. Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* chore: update script to use phf 0.11 (#33434)Gae242024-09-161-1/+1
| | | Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
* Replace .map_or(false with Option::is_some_and (#33468)Simon Wülker2024-09-1651-171/+165
| | | Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
* Add perfetto tracing events to fonts (#33436)atbrakhi2024-09-163-1/+23
| | | | | | | | | | | | | | | | * trace fonts Co-authored-by: Delan Azabani <dazabani@igalia.com> Signed-off-by: atbrakhi <atbrakhi@igalia.com> * review fix Co-authored-by: Delan Azabani <dazabani@igalia.com> Signed-off-by: atbrakhi <atbrakhi@igalia.com> --------- Signed-off-by: atbrakhi <atbrakhi@igalia.com> Co-authored-by: Delan Azabani <dazabani@igalia.com>
* Small improvements for table border collapse (#33452)Oriol Brufau2024-09-162-15/+128
| | | | | | | | We were only collapsing the borders from adjacent cells. This patch also handles the borders from rows, row groups, columns, and column groups. Additionally, it takes the border style into account in order to decide which border wins. Signed-off-by: Oriol Brufau <obrufau@igalia.com>
* Do not remove extra columns at the end of the table (#33451)Oriol Brufau2024-09-162-23/+15
| | | | | | | | | | | <col> and <colgroup> elements can be used to create extra columns that have no cell. We were removing these columns and column groups, but in general we shouldn't do that. Now we will only remove them if the table has no row nor row group. matching WebKit and the expectations of some tests. But note that Gecko and Blink never remove them. Signed-off-by: Oriol Brufau <obrufau@igalia.com>