aboutsummaryrefslogtreecommitdiffstats
path: root/components
Commit message (Collapse)AuthorAgeFilesLines
...
* Implement WebXR Gamepads Module (#32860)Daniel Adams2024-08-035-24/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Expose gamepad attribute on XRInputSource Signed-off-by: Daniel Adams <msub2official@gmail.com> * Tidy, add spec links Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update WPT test expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update gamepad state on InputChanged event Signed-off-by: Daniel Adams <msub2official@gmail.com> * Pin webxr commit Signed-off-by: Daniel Adams <msub2official@gmail.com> * Apply gamepad updates during frame updates Signed-off-by: Daniel Adams <msub2official@gmail.com> * Drain input frame map Signed-off-by: Daniel Adams <msub2official@gmail.com> * Don't store gamepad as option Signed-off-by: Daniel Adams <msub2official@gmail.com> --------- Signed-off-by: Daniel Adams <msub2official@gmail.com>
* script: Fix two build warnings about unused imports (#32910)Martin Robinson2024-08-022-2/+1
| | | Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* layout: Compute intrinsic sizes for flex items and flex containers (#32854)Delan Azabani2024-08-027-109/+620
| | | | | Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* fix: Memory leak from CreateProxyWindowHandler (#32773)Erik Hennig2024-08-014-40/+101
| | | | | | | | | | | | | | | | | * fix: Memory leak from CreateProxyWindowHandler Signed-off-by: ede1998 <online@erik-hennig.me> * fix: memory leak in WindowProxy Signed-off-by: ede1998 <online@erik-hennig.me> * fix: Memory leak in WindowProxyHandler through static Signed-off-by: ede1998 <online@erik-hennig.me> --------- Signed-off-by: ede1998 <online@erik-hennig.me>
* enhance: Add support for `unsafe-eval` and `wasm-unsafe-eval` (#32893)Chocolate Pie2024-08-0122-15/+608
| | | Signed-off-by: Chocolate Pie <106949016+chocolate-pie@users.noreply.github.com>
* Implement gaps in flexbox layout (#32891)Oriol Brufau2024-07-311-18/+42
| | | | | | As per https://drafts.csswg.org/css-align/#gaps Signed-off-by: Oriol Brufau <obrufau@igalia.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* layout: Fix display of new text in `textarea` elements (#32886)Martin Robinson2024-07-301-18/+29
| | | | | | | Previously `<textarea>` was just displaying node contents, which is the original text content, not the one updated by later typing. This change fixes that issue. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* DevTools: Inline text and clean whitespace (#32884)eri2024-07-304-5/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat: inline text contents Signed-off-by: eri <eri@inventati.org> * feat: filter whitespace only nodes Signed-off-by: eri <eri@inventati.org> * chore: cleanup Signed-off-by: eri <eri@inventati.org> * fix: url fix Signed-off-by: eri <eri@inventati.org> * fix: review fixes Signed-off-by: eri <eri@inventati.org> Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com> --------- Signed-off-by: eri <eri@inventati.org> Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* layout: Port `border-image` support for legacy layout (#32874)Martin Robinson2024-07-303-55/+271
| | | Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* Fix debugmozjs compilation (#32875)Samson2024-07-291-3/+4
| | | Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* Update mozjs (SpiderMonkey) to 128.0 (#32769)Samson2024-07-298-52/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update mozjs Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Fix changed readTransfer callback https://bugzilla.mozilla.org/show_bug.cgi?id=1842713 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Use NewExternalArrayBuffer from glue https://github.com/servo/mozjs/pull/474/commits/d33454be74ec5b8d8faf51fab3ed477b8913898b Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Fix columnorigin and filename being in latin1 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * fixup newexternalarray Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Float16 (this might require more work for codegen support) https://bugzilla.mozilla.org/show_bug.cgi?id=1833647 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * js.strict is removed https://bugzilla.mozilla.org/show_bug.cgi?id=1621603 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * asm options are now somewhere else https://hg.mozilla.org/mozilla-central/rev/26045c88e3972957087d535e7f259e08857bd2a2 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Comment out offthread compilation Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Set NDK to 26 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Fix 1-origin handling Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Expect `FinalizationRegistry` interface Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Good expectations Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * more expectations Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Add `WeakRef` to interfaces expectation Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * mozjs upgrade: fixes for Android Android NDK's layout has changed in r26 and 'lib64' no longer exists under `toolchain/llvm/prebuilt/linux-x86_64`. The libraries that used to be it are now present in `lib` folder itself. This patch updates the build configuration to use the `lib` folder instead when configuring the LIBCLANG_PATH environment variable. This patch also updates to a newer mozjs version that includes fixes for linker errors faced on Android (see #32769). Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * Patch libz-sys & update mozjs Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * update NDK version in README Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * Use servo/mozjs Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Update mozjs again Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Add the type IDL attribute to htmlfieldsetelement (#32869)shanehandley2024-07-282-1/+6
| | | | | | | | | | | | | * Add the type IDL attribute to htmlfieldsetelement Signed-off-by: Shane Handley <shanehandley@fastmail.com> * Fix missing idlharness test expectations Signed-off-by: Shane Handley <shanehandley@fastmail.com> --------- Signed-off-by: Shane Handley <shanehandley@fastmail.com>
* Remove treatment of whitespace in the construction of a for data entry list, ↵shanehandley2024-07-281-49/+42
| | | | | move it to the encoding stage (#32868) Signed-off-by: Shane Handley <shanehandley@fastmail.com>
* dependencies: Upgrade `cookie` and rename Servo's `Cookie` to `ServoCookie` ↵Martin Robinson2024-07-2612-188/+187
| | | | | | | | | | | | | | (#32861) This changes updates to the new version of the `cookie` crate in Servo which no longer uses the old `time@0.1` data types. This requires using a new version of `time` while we transition off of the old one. This is the first step in that process. In addition, the overloading of the `cookie::Cookie` name was causing a great deal of confusion, so I've renamed the Servo wrapper to `ServoCookie` like we do with `ServoUrl`. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* Partially implement dialog.show() (#32681)Luke Warlow2024-07-262-3/+28
| | | Signed-off-by: Luke Warlow <lwarlow@igalia.com>
* DevTools: Show HTML tree (#32655)eri2024-07-2623-831/+1485
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat: watch root node Signed-off-by: eri <eri@inventati.org> * reafactor: divide inspector in components Signed-off-by: eri <eri@inventati.org> * feat: add css properties actor Signed-off-by: eri <eri@inventati.org> * feat: accesibility actor Signed-off-by: eri <eri@inventati.org> * feat: layout actor Signed-off-by: eri <eri@inventati.org> * feat: network parent and refactor Signed-off-by: eri <eri@inventati.org> * feat: progress on the inspector messages Signed-off-by: eri <eri@inventati.org> * feat: more progress on inspector Signed-off-by: eri <eri@inventati.org> * feat: try to fix nodes showing Signed-off-by: eri <eri@inventati.org> * feat: initial dom tree Signed-off-by: eri <eri@inventati.org> * feat: some more messages Signed-off-by: eri <eri@inventati.org> * feat: clean and add documentation Signed-off-by: eri <eri@inventati.org> * refactor: add more docs and clean Signed-off-by: eri <eri@inventati.org> * fix: restore deleted node attributes field Signed-off-by: eri <eri@inventati.org> * Apply suggestions from code review Fix a few nits in comments Signed-off-by: Martin Robinson <mrobinson@igalia.com> --------- Signed-off-by: eri <eri@inventati.org> Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Remove the WebXR dependency on ancient `time@0.1` crate (#32862)Martin Robinson2024-07-267-50/+5
| | | | | | | | | | | `webxr` depends on a very old verison of `time`, which allowed serializing monotonic clock output. This isn't possible on all platforms, so newer versions of `time` do not allow this. In order to stop using the old 0.1 versions of `time` we have to stop relying on times passed from `webxr` to Servo. This change does that, at the cost of removing the XR profiling feature. It has to be rewritten in another way in the `webxr` crate. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
* clippy: components/script/realms (#32859)Rémy SAISSY2024-07-264-4/+4
| | | Signed-off-by: Rémy Saissy <remy.saissy@gmail.com>
* webgpu: Update wgpu to 22.0 (#32827)Samson2024-07-254-29/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update wgpu to https://github.com/gfx-rs/wgpu/commit/c0e7c1ef945a7dd61c81fb951ea554213811aee0 This is few commits ahead of wgpu 22.0 Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Make it compile Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Move usage checking to device timeline as per spec Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Add logging (trace) of WEBGPU messages This is very useful when debugging Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * update wgpu again Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * set good Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * skip `webgpu:api,operation,memory_sync,texture,same_subresource` for flakyness Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * rm r.json Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* clippy: components/canvas/canvas_data.rs (#32843)Rémy SAISSY2024-07-241-3/+3
| | | Signed-off-by: Rémy Saissy <remy.saissy@gmail.com>
* layout: Add support for propagating baselines from flexbox (#32841)Martin Robinson2024-07-241-32/+86
| | | | | | | | Some tests are still broken due to missing preferred widths calculation for flexbox and also for missing column layout. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com> Co-authored-by: Delan Azabani <dazabani@igalia.com>
* Upgrade stylo to 2024-07-16 (#32812)Martin Robinson2024-07-2420-33/+31
| | | | | | | | | | | | | | * Upgrade stylo to 2024-07-16 Signed-off-by: Martin Robinson <mrobinson@igalia.com> * Use the new `dom` crate from stylo Signed-off-by: Martin Robinson <mrobinson@igalia.com> --------- Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Oriol Brufau <obrufau@igalia.com>
* Implement the `aspect-ratio` property for replaced elements (#32800)valadaptive2024-07-242-26/+150
| | | | | | | | | | | | | | | | | * Add WPT tests for box-sizing with aspect-ratio Signed-off-by: valadaptive <valadaptive@protonmail.com> * Implement `aspect-ratio` for replaced elements There are two regressions because we don't implement `object-fit`, and one because we don't properly represent non-available <img>s with `alt` attributes. Signed-off-by: valadaptive <valadaptive@protonmail.com> --------- Signed-off-by: valadaptive <valadaptive@protonmail.com>
* Remove googlevr feature (#32840)Daniel Adams2024-07-241-1/+0
| | | | | | | | | | | | | | | | | * Remove googlevr feature Signed-off-by: Daniel Adams <msub2official@gmail.com> * Remove googlevr and oculusvr from python scripts Signed-off-by: Daniel Adams <msub2official@gmail.com> * Remove vr checks entirely Signed-off-by: Daniel Adams <msub2official@gmail.com> --------- Signed-off-by: Daniel Adams <msub2official@gmail.com>
* ohos: Detect installed fonts (#32731)Jonathan Schwender2024-07-222-34/+471
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ohos: Add `ohos_mock` cfg. This allows using the Linux build together with the `ohos` font code, using the fonts ship in the `previewer` directory of the OH SDK. Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * ohos: Detect installed fonts Scan the systems font folder to detect installed fonts, derive their associated font names and generate the font list based on that. Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * Use hardcoded filepaths for HMOS Color emojis Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * Also support parsing OH 4.x Noto fonts Currently we don't have an easy way to test the OH version from the fonts module, so the parsing code has to be extended. Once the OH 5.0 beta has a reliable fontconfig.json filemap, then we can probably get rid of most of the parsing code, and hardcode the OH 4.x Note fonts as a fallback. Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> --------- Signed-off-by: Jonathan Schwender <schwenderjonathan@gmail.com> Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
* compositor: propagate scroll events across pipelines (#32829)Mukilan Thiyagarajan2024-07-221-13/+25
| | | | | | | | | | | | | | | Currently we don't propagate the scroll events across pipeline and scroll only nodes contained within the nearest pipeline that passes hit test at a gived point. This causes iframes to "capture" the scroll and halt the scrolling process once the iframe has been scrolled all the way. The expected behaviour is that the parent page begins to scroll once the iframe has been scrolled fully. The issue is present in both desktop and mobile, but was more noticeable on mobile, especially on the default servo.org page, because of the relative sizes of the YouTube video's iframe wrt to the parent. Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Implement URL::parse() (#32819)shanehandley2024-07-222-1/+25
| | | | | | | | | | | | | * Implement URL::parse() Signed-off-by: Shane Handley <shanehandley@fastmail.com> * fix: Make handling more idiomatic Signed-off-by: Shane Handley <shanehandley@fastmail.com> --------- Signed-off-by: Shane Handley <shanehandley@fastmail.com>
* deps: switch to `tikv-jemallocator` crates in Cargo.toml (#32828)Mukilan Thiyagarajan2024-07-224-7/+7
| | | | | | | | | | | | | | | | `jemallocator` and `jemallocator-sys` crates are same as the `tikv-*` versions and these aliases were maintained for historical reasons, based on crates.io documentation. For newer projects, it is recommended to use the `tikv-` versions of the crate. Even though Servo is not a new project, it makes sense to switch to the newer version for the sake of clarity. Also, more importantly, `tikv-jemallocator` has new release (0.6.0) which includes a fix for #32720. There doesn't seem to be a corresponding version publised for the `jemallocator` crate. Fixes #32720 Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Remove a comment related to a TODO which has already been done. (#32822)shanehandley2024-07-211-2/+0
| | | Signed-off-by: Shane Handley <shanehandley@fastmail.com>
* Remove failure breaks from webgpu thread (#32814)Samson2024-07-201-5/+1
| | | | | | | | | | | | | | | | | * Remove breaks from webgpu requests Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * expect Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * limit,out_of_range TIMEOUT->FAIL Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* Gamepad: Implement GamepadHapticActuator (#32046)Daniel Adams2024-07-2011-7/+519
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Implement Servo side of GamepadHapticActuator Signed-off-by: Daniel Adams <msub2official@gmail.com> * Get build working Signed-off-by: Daniel Adams <msub2official@gmail.com> * Create effect handling on embedder side Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update tracing for GamepadHapticEffect Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update gilrs to point to commit with effect complete event Signed-off-by: Daniel Adams <msub2official@gmail.com> * Implement playing and preempting haptic effects Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update IDL to add trigger rumble Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update WPT expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Handle stopping haptic effects from reset() Signed-off-by: Daniel Adams <msub2official@gmail.com> * ./mach fmt, fix test-tidy issues Signed-off-by: Daniel Adams <msub2official@gmail.com> * Add extra validity checks for trigger rumble Signed-off-by: Daniel Adams <msub2official@gmail.com> * Retrieve supported haptic effects from embedder Signed-off-by: Daniel Adams <msub2official@gmail.com> * Fix test expectations Signed-off-by: Daniel Adams <msub2official@gmail.com> * Add missing spec link, pin gilrs commit Signed-off-by: Daniel Adams <msub2official@gmail.com> * servoshell cargo formatting Signed-off-by: Daniel Adams <msub2official@gmail.com> * Fix Cargo.toml Signed-off-by: Daniel Adams <msub2official@gmail.com> * Additional comments, realm proof, naming Signed-off-by: Daniel Adams <msub2official@gmail.com> * ./mach fmt Signed-off-by: Daniel Adams <msub2official@gmail.com> * Update gilrs rev to gilrs-core 0.5.12 release Signed-off-by: Daniel Adams <msub2official@gmail.com> * Implement sequence ids for gamepad haptic promises Signed-off-by: Daniel Adams <msub2official@gmail.com> * Take playing effect promise instead of cloning Signed-off-by: Daniel Adams <msub2official@gmail.com> * Implement listener for reset function Signed-off-by: Daniel Adams <msub2official@gmail.com> * Fix Cargo.lock Signed-off-by: Daniel Adams <msub2official@gmail.com> * Restructure IPC listeners, add comments, handle visibility change Signed-off-by: Daniel Adams <msub2official@gmail.com> * Check that haptic effect still exists before handling ff completion event Signed-off-by: Daniel Adams <msub2official@gmail.com> * Visibility steps, add InRealm bindings for promises Signed-off-by: Daniel Adams <msub2official@gmail.com> * Add Gamepad EmbedderMsg arms to egl servo_glue Signed-off-by: Daniel Adams <msub2official@gmail.com> --------- Signed-off-by: Daniel Adams <msub2official@gmail.com>
* Enable OpenXR backend from the WebXR crate (#32817)Daniel Adams2024-07-201-0/+3
| | | | | | | | | | | | | | | | | * Enable OpenXR backend from the WebXR crate Signed-off-by: Daniel Adams <msub2official@gmail.com> * Ensure openxr feature is only included on windows Signed-off-by: Daniel Adams <msub2official@gmail.com> * Add cfgs for OpenXR usages Signed-off-by: Daniel Adams <msub2official@gmail.com> --------- Signed-off-by: Daniel Adams <msub2official@gmail.com>
* fix a couple of simple clipy warnings (#32813)Rodion Borovyk2024-07-195-13/+9
| | | Signed-off-by: Rodion Borovyk <rodion.borovyk@gmail.com>
* layout: Reduce the complexity of `FlexLine::layout` (#32810)Martin Robinson2024-07-192-151/+120
| | | | | | | | Instead of a complex combination of iterators, use a flatter iteration design when laying out a flex line. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com> Co-authored-by: Delan Azabani <dazabani@igalia.com>
* Fix 5 clippy warnings (#32808)rachaelspooky2024-07-193-6/+5
| | | Signed-off-by: Rachael Gentry <rachael.l.gentry@gmail.com>
* Fix sizing of replaced elements with min/max sizes (#32777)valadaptive2024-07-181-171/+228
| | | | | | | | If a (min/max)-(height/width) property is set, we still need to respect the intrinsic ratio of the element if it exists. The previous code was simply clamping the element size after doing the sizing calculations once, but this leads to an incorrect aspect ratio. Signed-off-by: valadaptive <valadaptive@protonmail.com>
* flex: handle ‘align-self: [ first | last ]? && baseline’ (#32787)Delan Azabani2024-07-182-14/+118
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * flex: handle ‘align-self: baseline’ Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * FIXME: css/css-flexbox/align-items-baseline-overflow-non-visible.html Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * Fix baseline selection Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * Fix baseline calculation with padding/border/margin Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * Fix compile errors and warnings Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * Implement ‘align-self: last baseline’ Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * Fix bug where non-baseline-aligned items affected max baseline Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * Update expectations Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> * Rename method Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com> --------- Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Less nesting in webgpu response (#32799)Samson2024-07-1711-214/+196
| | | | | | | | | | | | | * Remove Option wrap of WebGPUResponse Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> * Replace WebGPUResponseResult with WebGPUResponse Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com> --------- Signed-off-by: sagudev <16504129+sagudev@users.noreply.github.com>
* enhance: Implement `CanvasRenderingContext2D.measureText` (#32704)Chocolate Pie2024-07-1711-42/+325
| | | | Signed-off-by: Chocolate Pie <106949016+chocolate-pie@users.noreply.github.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* [clippy] Rename enum FormSubmitter and its elements (#32791)Danila Matveev2024-07-173-44/+44
| | | | | | | | | | | | | * [clippy] Renames enum FormSubmitter and its elements Signed-off-by: Danila Matveev <usurname.r@gmail.com> * fmt Signed-off-by: Danila Matveev <usurname.r@gmail.com> --------- Signed-off-by: Danila Matveev <usurname.r@gmail.com>
* Convert layout to use Gecko's alignment style representation (#32790)Martin Robinson2024-07-172-102/+164
| | | | Signed-off-by: Nico Burns <nico@nicoburns.com> Co-authored-by: Nico Burns <nico@nicoburns.com>
* clippy: Fix four warnings (#32789)Danila Matveev2024-07-173-3/+6
| | | | | | | | | | | | | | | | | * Fixes 4 clippy rules Signed-off-by: Danila Matveev <usurname.r@gmail.com> * Rollbacks changes in range.rs and silences clippy::neg_cmp_op_on_partial_ord Signed-off-by: Danila Matveev <usurname.r@gmail.com> * Fixes a fmt issue Signed-off-by: Danila Matveev <usurname.r@gmail.com> --------- Signed-off-by: Danila Matveev <usurname.r@gmail.com>
* layout: Properly handle min/max cross container size (#32785)Delan Azabani2024-07-162-20/+41
| | | | | Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* Fixes typo in clippy::enum_variant_names (#32784)Danila Matveev2024-07-161-1/+1
| | | | Signed-off-by: Danila Matveev <optician_owl@fastmail.com> Signed-off-by: Danila Matveev <usurname.r@gmail.com>
* Use mallinfo only on target_env=gnu (#32772)Patrycja2024-07-141-5/+5
| | | | | | mallinfo isn't available on musl, causing linking issues on build; make sure related functions are built only for GNU Libc Signed-off-by: Patrycja Rosa <git@ptrcnull.me>
* Bump duplicated nix to 0.29 (#32764)Jonathan Schwender2024-07-131-1/+1
| | | Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com>
* webgpu: Divide message code into separate files (#32700)Samson2024-07-125-73/+93
| | | | | | | * Spilt webgpu ipc messages even more * Add license to mod.rs * file docs
* script: `document.visibilityState` and `document.hidden` (#32635)Ngo Iok Ui (Wu Yu Wei)2024-07-125-8/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Squashed commit of the following: commit 5e0ea9996cb0d8137c3e1cd04487a1065b61289d Author: Wu Yu Wei <yuweiwu@pm.me> Date: Thu Jul 11 13:37:51 2024 +0900 Move lint to new_inherited Signed-off-by: Wu Yu Wei <yuweiwu@pm.me> commit a8cbfb1eef2650d153ef41c232d9e80e1118fc37 Merge: b819968f3e 7a33f8f008 Author: Wu Yu Wei <yuweiwu@pm.me> Date: Thu Jul 11 13:32:18 2024 +0900 Merge branch 'main' into visibility commit b819968f3eaa361c8a2cf3af679943ae2065ab32 Merge: eda2ec4c22 1c6b74e1f1 Author: Wu Wayne <yuweiwu@pm.me> Date: Tue Jul 9 14:26:43 2024 +0900 Merge branch 'main' into visibility commit eda2ec4c225c63236d6851ea525455cad8874ce5 Author: Wu Wayne <yuweiwu@pm.me> Date: Thu Jul 4 14:25:05 2024 +0900 Include page-visibility tests to wpt commit 9da7b4ee39b141e59e4a21a64445c4b08499463f Author: Wu Yu Wei <yuweiwu@pm.me> Date: Thu Jul 4 12:50:40 2024 +0900 Add TODO comment for future update commit 11f55fea3ead0c8fa07f16557a63cc6a77c15c3f Author: Wu Yu Wei <yuweiwu@pm.me> Date: Wed Jul 3 11:01:51 2024 +0900 Add spaces between steps commit 408c3e51f25867e85f894cd77a6355bc32f2aa00 Author: Wu Wayne <yuweiwu@pm.me> Date: Tue Jul 2 18:33:53 2024 +0900 Update MANIFEST.json commit 679fe4ffdd28554b11b4018395fac22a08ccbc34 Author: Wu Wayne <yuweiwu@pm.me> Date: Tue Jul 2 18:27:02 2024 +0900 Add VisibilityStateEntry to mozilla/interfaces.html commit 4a456a2b4a473fa795274edf56ecf660616f90eb Author: Wu Wayne <yuweiwu@pm.me> Date: Tue Jul 2 14:28:11 2024 +0900 Update meta results commit cd191447ff61de392526e00c13f765c2df7a269e Merge: 7ff480a698 ad01342f00 Author: Ngo Iok Ui (Wu Yu Wei) <yuweiwu@pm.me> Date: Tue Jul 2 13:47:49 2024 +0900 Merge branch 'main' into visibility commit 7ff480a698413ac5526edfb1b8731373bb9d04ae Author: Wu Yu Wei <yuweiwu@pm.me> Date: Tue Jul 2 13:12:44 2024 +0900 Update description text of update_visibility_state commit 0e496b7bce4fd5476a1919737b00e8f0c9e2fdc8 Author: Wu Yu Wei <yuweiwu@pm.me> Date: Tue Jul 2 12:59:40 2024 +0900 Add specification link to VisibilityStateEntry methods commit 3e4a061450621bd17f19ff81099dd4daaeaea478 Author: Wu Yu Wei <yuweiwu@pm.me> Date: Tue Jul 2 12:31:53 2024 +0900 Add descriptive text to each step commit 8bbdfcae97db5002b09e5f5ecec6ae80d080dc95 Author: Wu Wayne <yuweiwu@pm.me> Date: Fri Jun 28 19:15:34 2024 +0900 mach fmt commit dc1c7a4aec6aba56af7afcfee6feadbee242a643 Author: Wu Wayne <yuweiwu@pm.me> Date: Fri Jun 28 19:01:00 2024 +0900 Add update_visibility_state commit 6aa18143319044dc084a9585ab064cd853bccc21 Author: Wu Wayne <yuweiwu@pm.me> Date: Fri Jun 28 16:06:25 2024 +0900 Add VisibilityStateEntry.webidl commit 638ae3cd563004334d35cc3fbdc1f918d29833d0 Author: Wu Yu Wei <yuweiwu@pm.me> Date: Fri Jun 28 13:39:29 2024 +0900 Add visibilityState and hidden in Document.webidl Signed-off-by: Wu Yu Wei <yuweiwu@pm.me> * Move creation into reflect call Signed-off-by: Wu Yu Wei <yuweiwu@pm.me> --------- Signed-off-by: Wu Yu Wei <yuweiwu@pm.me>
* Move legacy layout behind a feature flag (#32759)Jonathan Schwender2024-07-112-15/+27
| | | | | | | | | | | | | | | | | | | | | | | * Move legacy layout behind a feature flag For now the new feature flag would still be enabled by default, but disabling the `layout_2013` feature, gives the following binary size improvements for servoshell on Linux: - in debug mode from 1278MB -> 1201 MB - in release mode from 144MB -> 140MB - in production mode from 108MB -> 106MB Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> * Update components/servo/lib.rs Co-authored-by: Martin Robinson <mrobinson@igalia.com> Signed-off-by: Jonathan Schwender <55576758+jschwe@users.noreply.github.com> --------- Signed-off-by: Jonathan Schwender <jonathan.schwender@huawei.com> Signed-off-by: Jonathan Schwender <55576758+jschwe@users.noreply.github.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* canvas: Remove as much usage of `font-kit` as possible (#32758)Martin Robinson2024-07-115-198/+246
| | | | | | | | | | | | | Do font selection using Servo's font backend, which is shared with the rest of layout. In addition, delay the creation of the `font-kit` font until just before rendering with `raqote`. The idea is that when `raqote` is no longer used, we can drop the `font-kit` dependency. This change has the side-effect of fixing text rendering in canvas, adding support for font fallback in canvas, and also correcting a bug in font selection with size overrides. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>