aboutsummaryrefslogtreecommitdiffstats
path: root/components
Commit message (Collapse)AuthorAgeFilesLines
* Demonstrate using dictionary as callback this object.dictionary-callbackJosh Matthews2024-07-154-6/+31
|
* use dom in pull promise handlersgterzian2024-07-151-4/+7
|
* add queue with sizes conceptgterzian2024-07-154-18/+82
|
* clean-up js conversions in read req handlersgterzian2024-07-121-7/+2
|
* tidygterzian2024-07-122-10/+18
|
* fix read request promise resolvinggterzian2024-07-122-9/+51
|
* remove prototype setting on underlying source containergterzian2024-07-121-12/+3
|
* turn off SM streamsgterzian2024-07-122-2/+1
|
* clean-up docs, dispatch of controller in pull algo callgterzian2024-07-123-23/+35
|
* setup source container with prototype of source dictgterzian2024-07-122-25/+9
|
* add default controller init in stream constructorgterzian2024-07-111-4/+16
|
* remove rc around source typegterzian2024-07-111-6/+4
|
* add underlying source dom struct containergterzian2024-07-117-69/+179
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add todo for should pullgterzian2024-07-111-1/+11
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* allow for more than one non-native underlying source typegterzian2024-07-111-1/+7
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* read request and reader typinggterzian2024-07-113-50/+124
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add fulfill read request, clean-up warningsgterzian2024-07-114-47/+83
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* more details on chunk enqueuinggterzian2024-07-111-0/+8
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* add calling into pull algogterzian2024-07-112-13/+94
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* re-implement native controller methodsgterzian2024-07-116-363/+142
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* enum for controllergterzian2024-07-111-9/+40
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* implement basic internal slots, with todosgterzian2024-07-113-65/+198
| | | | Signed-off-by: gterzian <2792687+gterzian@users.noreply.github.com>
* Create safe wrapper for JSFunctions (#32620)Taym Haddadi2024-07-104-83/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Create safe wrapper for JSFunctions Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Add assert to check if the name ends in a null character Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Create macro to wrap unsafe extern "C" function calls Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Remove WRAPPER_FN Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Add macro example documentation Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Use C-string literals Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Ensure name is Cstr type Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Scope #[allow(unsafe_code)] Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> --------- Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* Add remaining WebIDLs of ReadableStream (#32605)Ngo Iok Ui (Wu Yu Wei)2024-06-278-6/+288
| | | | | | * Add Reader's WebIDL files * Add necessary methods in ReadableStream.webidl
* Add QueuingStrategy and UnderlyingSource (#32572)Ngo Iok Ui (Wu Yu Wei)2024-06-2414-7/+607
| | | | | --------- Co-authored-by: Jason Tsai <jason@pews.dev>
* Rename `gfx` to `fonts` (#32556)Martin Robinson2024-06-19154-173/+131
| | | | | | | | | This crate only takes care of fonts now as graphics related things are split into other crates. In addition, this exposes data structures at the top of the crate, hiding the implementation details and making it simpler to import them. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* layout: Flatten inline box storage in InlineFormattingContexts (#32539)Martin Robinson2024-06-195-252/+224
| | | | | | | | | | | This accomplishes two things: 1. Makes it easier to iterate through all inline formatting context items. 2. Will make it possible to easily move back and forth through the tree of inline boxes, in order to enable reordering and splitting inline boxes on lines -- necessary for BiDi. Co-authored-by: Rakhi Sharma <atbrakhi@igalia.com>
* layout: Allocate inline box start space on segment (#32486)Martin Robinson2024-06-181-12/+12
| | | | | | Instead of allocating the inline padding and border space on the line, allocate it on the segment -- which where the inline box start goes. Co-authored-by: Rakhi Sharma <atbrakhi@igalia.com>
* fix: codegen on callback (#32537)Ngo Iok Ui (Wu Yu Wei)2024-06-183-8/+24
| | | | | * Fix codegen on callback * Add test callbacks to testbinding.rs
* fonts: Clean up WebRender web fonts when they are no longer used (#32545)Martin Robinson2024-06-186-7/+181
| | | | | | | | | | | This is the first part of cleaning up unused WebRender resources. Currently this only cleans up web font resources, but a more full-featured implementation in the future could also clean up unused system fonts. Fixes #32345. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* servoshell: Reset link status when loading a new document (#32518)webbeef2024-06-182-0/+5
| | | | | * Reset link status when loading a new document * Reset hover link when navigating back or forward
* Use workspace definitions for all crates and update to the 2021 edition (#32544)Martin Robinson2024-06-1848-226/+228
|
* fonts: Respect emoji variation selector when selecting fonts (#32493)Martin Robinson2024-06-186-24/+85
| | | | | | | | | | | | | | This uses a pretty simple heuristic to select a font likely to contain color emoji. In the future Servo should actually check if the font also contains a color representation of the character in question. For now the code assumes that when a font supports color glyphs of some kind and supports the character in question at all, it supports the color version. This fixes support for rendering keycap emoji clusters such as 1️⃣ . Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Rakhi Sharma <atbrakhi@igalia.com> Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
* implement basic infra for ResizeObserver (#31108)Gregory Terzian2024-06-1713-4/+617
|
* webgpu: Implement device lost (#32354)Samson2024-06-178-61/+133
| | | | | | | | | | | | | * device lost promise should be init at creation of device object * device lost impl * lock for device poll workaround for wgpu deadlocks * expect * Less lost reason reasoning in script
* fonts: Fix loading SFNT tables on Windows (#32499)Martin Robinson2024-06-171-12/+11
| | | | | | | DirectWrite APIs expect the bytes of table tags to be reversed when reading them. Servo was doing this when loading font tables, but not all of them. This led to shaping being broken on Windows. This fixes that issue in a more comprehensive way and adds a comment to avoid this failing in the future.
* deps: Switch from `winapi` to `windows_sys` in Servo code (#32516)Martin Robinson2024-06-173-9/+10
| | | | | This is part of the switch from `winapi` to `windows-sys`. `windows-sys` is maintained by Microsoft, so is more "official." More and more crates are switching to it.
* build: Fix build warnings on Windows (#32500)Martin Robinson2024-06-154-0/+10
| | | | | Disable some code for Windows, which is causing build warnings. When it cannot be easily disabled (mainly for the incomplete BHM and sandbox feature), allow dead code.
* htmlmetaelement: improve parsing of meta http-equiv (#32508)shanehandley2024-06-151-1/+8
|
* Update WebIDL.py (#32495)Ngo Iok Ui (Wu Yu Wei)2024-06-154-14/+13
| | | | | | | | | | | | | | | | | * Update WebIDL.py * Update WebIDL.py * Add builtin-array.patch * Fix CodegenRust.py and Configuration.py * Fix missing downcasts * mach fmt * Update check and comment to explain why we need this check * Update Global of DissimilarOriginWindow.webidl
* layout: Linebreak the entire InlineFormattingContext at once (#32483)Martin Robinson2024-06-135-165/+321
| | | | | | | | | | | | | Instead of linebreaking inside each single-font text segment, linebreak the entire inline formatting context at once. This has several benefits: 1. It allows us to use `icu_segmenter` (already in use from style), which is written against a newer version of the Unicode spec -- preventing breaking emoji clusters. 2. Opens up the possibility of changing the way that linebreaking and shaping work -- eventually allowing shaping across inline box boundaries and line breaking *after* shaping. Co-authored-by: Rakhi Sharma <atbrakhi@igalia.com>
* fonts: Merge Noto fallback lists (#32463)Martin Robinson2024-06-133-327/+247
| | | | | On platforms that ship Noto, the list of fallback fonts can be shared. This reduces code duplcation and makes it easier to keep up to date with changes in Noto.
* Implement HTMLImageElement decode (#31269)Taym Haddadi2024-06-133-1/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Implement HTMLImageElement decode Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Fix Decode doc link Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Temp * Decode HTML Image Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Fix doc link Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Move image decode to process_image_response_for_environment_change Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Update some wpt test result Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Handle multiple image decode promises Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Remove unnecessary promise calls Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Update more wpt test result Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Undo body-size-cross-origin.https.html.ini changes Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Reject decode when src and srcset are missing Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Revert "Reject decode when src and srcset are missing" This reverts commit 1b57ab978f9fc24facafc8af97ee8851d5142533. * Drain promises vec and run update_the_image_data when element is created Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * resolve decode promise in abort_request when request is CompletelyAvailable Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Update wpt test Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Move storing promise in decode task Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Remove the resolve logic from decode task Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Revert "Remove the resolve logic from decode task" This reverts commit eee6096d50dbe46a22a5bbfd7f15c03988ed2f4b. * reject or reject current promise before storing it Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> * Add comment to explain why resolve promise when state is CompletelyAvailable Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com> --------- Signed-off-by: Bentaimia Haddadi <haddadi.taym@gmail.com>
* clippy fixes regarding clone_from (#32482)Peter Mikola2024-06-1212-19/+35
|
* DevTools: Display tabs and processes (#32475)eri2024-06-122-42/+104
| | | | | | | | | | | | | | | | | | | | * feat: show tabs and processes on devtools Co-authored-by: fabricedesre <fabrice@desre.org> * chore: clean for pr * fix: use serde renaming to avoid camel case Co-authored-by: Martin Robinson <mrobinson@igalia.com> * fix: serde rename all to camel case * refactor: reduce getTab nesting level --------- Co-authored-by: fabricedesre <fabrice@desre.org> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
* Fix table track offsets when there is `visibility: collapse` (#32469)Oriol Brufau2024-06-111-16/+20
| | | | | | | | | | | | | Each non-collapsed track used to increase the offset by the subsequent border spacing. Now they will take care of their preceding spacing instead. This way, if a cell spans two rows, and the second is collapsed, the cell won't be forced to be at least as tall as the border spacing. This matches Gecko and Blink (WebKit lacks `visibility: collapse`). This makes visibility-collapse-border-spacing-001.html fail because we generate outlines in a different way than Blink. Gecko also fails it in a similar (but different) way.
* clippy: fix some leftover warnings in components/net (#32476)Peter Mikola2024-06-113-9/+20
|
* layout: Take into account `display: table` etc in offset* queries (#32448)Martin Robinson2024-06-106-31/+60
| | | | | | | | | | | | | | | * layout: Take into account `display: table` etc in offset* queries The specification says that for deciding whether an element should be used for offset* queries, a browser should take into account whether the element is a table cell or table. This change makes that happen. Co-authored-by: Oriol Brufau <obrufau@igalia.com> * Only tag HTML elements if they are in the HTML namespace --------- Co-authored-by: Oriol Brufau <obrufau@igalia.com>
* script: Remove explicit reflow for web font loads (#32455)Martin Robinson2024-06-102-5/+8
| | | | | | Instead of using an explicit reflow when a web font laods, queue a pending reflow. This should be able to eliminate multiple reflows some situations. A followup should ensure that only nodes that have pending fonts loading are reflows, but this change is the first step.
* Fix and unify 'span' attribute for table columns (#32467)Oriol Brufau2024-06-101-34/+41
| | | | | | | | The attribute was only taken into account on columns that are immediate children of tables, and on column groups. It was ignored on columns within column groups. This patch moves the logic into a helper function that is then called from the three consumers.