aboutsummaryrefslogtreecommitdiffstats
path: root/components
Commit message (Collapse)AuthorAgeFilesLines
* Auto merge of #24858 - saschanaz:handle-property, r=jdmbors-servo2019-11-271-22/+40
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Handle u32 property indices <!-- Please describe your changes on the following line: --> Tried porting from Gecko, not sure how to do void JSID check yet. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #14093 <!-- Either: --> - [x] There are tests for these changes <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * Handle u32 property indicesKagami Sascha Rosylight2019-11-271-22/+40
| |
* | Auto merge of #24871 - servo:2020-ci, r=nox,SimonSapinbors-servo2019-11-2712-195/+228
|\ \ | | | | | | | | | | | | | | | Run WPT with Layout 2020 on CI … and gate PRs on the result.
| * | Use the rayon pool when computing styles in layout 2020Anthony Ramine2019-11-271-1/+1
| | |
| * | Remove some stale servo-2020 gatesAnthony Ramine2019-11-271-3/+1
| | |
| * | Dump more stuff in the assertion in set_font_size_dependencyAnthony Ramine2019-11-271-1/+3
| | |
| * | Split FlowChildren in IndependentLayout and FlowLayoutAnthony Ramine2019-11-266-48/+61
| | | | | | | | | | | | | | | The result of doing the layout of an independent formatting context should be unconcerned with margin collapsing.
| * | Make NodeExt private in layout_2020Anthony Ramine2019-11-262-4/+8
| | |
| * | Rename Arc to ServoArc in layout_2020::dom_traversalAnthony Ramine2019-11-261-10/+10
| | |
| * | Use std::mem::take instead of defining itSimon Sapin2019-11-263-15/+5
| | |
| * | Make IndependentFormattingContext a struct that owns stylesSimon Sapin2019-11-269-123/+149
| | | | | | | | | | | | | | | | | | | | | | | | … and has a private enum for its contents. Privacy forces the rest of the code to go through methods rather than matching on the enum, reducing accidental layout-mode-specific behavior.
* | | Auto merge of #24870 - pshaughn:2909, r=jdmbors-servo2019-11-272-8/+7
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix #2909 (squashed version of PR #24865) <!-- Please describe your changes on the following line: --> Now using data-url::forgiving_base64 instead of base64, this fixes all the fetch/data-urls/base64.* tests. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes do not quite fix yet #2909 <!-- Either: --> - [X] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * | | Fix #2909 as far as WPT is concerned, not full data-url class integrationPatrick Shaughnessy2019-11-262-8/+7
| |/ /
* | | Auto merge of #24877 - atouchet:master, r=jdmbors-servo2019-11-271-2/+2
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update some URLs <!-- Please describe your changes on the following line: --> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [ ] `./mach build -d` does not report any errors - [ ] `./mach test-tidy` does not report any errors - [ ] These changes fix #___ (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * | Update some URLsAlex Touchet2019-11-261-2/+2
| | |
* | | Auto merge of #24862 - jdm:js-init-destroy-fit-the-second, r=asajeffreybors-servo2019-11-274-8/+44
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure SpiderMonkey shuts down cleanly This is the alternate solution that I described in #24845. Given how much simpler the resulting code is, I'm now much more in favour of this design. Depends on https://github.com/servo/rust-mozjs/pull/487. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #21696 and fix #22276 - [x] There are tests for these changes
| * | | Remove use of deprecated language construct.Josh Matthews2019-11-261-1/+1
| | | |
| * | | script: Ensure JS engine is initialized and deinitialized on the same thread.Josh Matthews2019-11-264-7/+43
| | | |
* | | | Auto merge of #24859 - jdm:surfman-fallible, r=Manishearthbors-servo2019-11-261-9/+24
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't panic if surfman initialization fails. Since WebGL is only one component of the web platform, there's no reason that failing to initialize surfman for webgl support should take down the entire browser. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #24642 (in that the browser will now start up) and fix #24627 - [x] These changes do not require tests because tests for graphics acceleration? don't make me laugh.
| * | | | Don't panic if surfman initialization fails.Josh Matthews2019-11-251-9/+24
| | | | |
* | | | | Auto merge of #24758 - gterzian:impl_timer_task_source, r=noxbors-servo2019-11-2613-204/+241
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement timer-task-source, time-out service worker <!-- Please describe your changes on the following line: --> Implements the timer task-source, and folds the IPC glue-code into a single route set by the globalscope. Also switches service worker to using a dedicated "time-out" mechanism, which previously relied on the timer mechanism(and I think didn't actually implement script timers). --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [ ] `./mach build -d` does not report any errors - [ ] `./mach test-tidy` does not report any errors - [ ] These changes fix #24747 (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * | | | | impl timer-task-source, dedicated time-out mechanism for service-workerGregory Terzian2019-11-1913-204/+241
| | | | | |
* | | | | | Auto merge of #24783 - mmatyas:webgl_fns_readpixels, r=noxbors-servo2019-11-266-14/+383
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for WebGL2 ReadPixels functions Adds support for the new ReadPixels functions introduced with WebGL2 and the relevant PixelStorei parameters.. Reference: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.10 <!-- Please describe your changes on the following line: --> --- This is a work in progress patch, but I think it might be ready for comments. There are a few issues left: - When the target is the pixel pack buffer, the GL function expects a byte offset as a pointer. In Sparkle the `read_pixels` functions return/work on top of arrays, so for now I've made a [workaround patch](https://github.com/mmatyas/sparkle/commit/45d8bb263d87edcf6c2608fe14d717430025fdc2). I wonder if that's okay or should we do it somehow differently? - When writing to the pixel pack buffer, padding bytes on the destination are properly ignored. When writing to client buffers, Sparkle `read_pixels` returns a buffer with 1 byte alignment, which I think is fine (less stuff to move between threads), but requires positioning the rows manually (see the bottom of `read_pixels_into` vs. `ReadPixels_`). - There are some duplicated code between the array buffer and pixel pack buffer variants, eg. the detection of intersection with the framebuffer. This could be refactored, but that results in a function with `Result<Option<Rect<u32>>, WebGLError>`, which I'm not sure is readable enough to help. - There is a duplication with the WebGL1 code. WebGL2 introduces row length, skip pixels and skip rows as pixel pack parameters which affect the ReadPixels operation. The helper functions could be moved to be usable in WebGL1, but then these new modifiers would also need to be passed as a function parameter, which is somewhat ugly (but would work). What's your opinion about this? cc @jdm @zakorgy --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] There are tests for these changes <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * | | | | | Add support for WebGL2 ReadPixels functionsMátyás Mustoha2019-11-266-14/+383
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds support for the new ReadPixels functions introduced with WebGL2 and the relevant PixelStorei parameters. Reference: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.10
* | | | | | | Auto merge of #24842 - servo:jdm-patch-34, r=noxbors-servo2019-11-261-4/+8
|\ \ \ \ \ \ \ | |_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make JS runnables for workers execute on correct event loop - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #24812
| * | | | | | Ensure JS runnables are dispatched to a worker's event loop instead of its ↵Josh Matthews2019-11-221-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | parent.
* | | | | | | Fix iterator invalidation in our forEach implementation.Manish Goregaokar2019-11-251-1/+12
| |_|_|_|/ / |/| | | | |
* | | | | | Support line_height better in layout 2020Anthony Ramine2019-11-251-4/+6
| | | | | |
* | | | | | Start implementing text in layout 2020Anthony Ramine2019-11-258-21/+206
| | | | | |
* | | | | | Make floats not parse on layout 2020Anthony Ramine2019-11-251-0/+1
| | | | | |
* | | | | | Introduce GlyphStore::total_advanceAnthony Ramine2019-11-251-0/+5
| | | | | |
* | | | | | Properly use STYLE_THREAD_POOL in layout 2020Anthony Ramine2019-11-251-11/+12
| | | | | |
* | | | | | Pass a LayoutContext to TextRun::layout in 2020Anthony Ramine2019-11-257-23/+94
| |/ / / / |/| | | |
* | | | | Auto merge of #24708 - szeged:webgpu-base, r=gterzian,kvarkbors-servo2019-11-2525-1/+529
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Initial implementation of WebGPU API <!-- Please describe your changes on the following line: --> - Added the WebIDL bindings for GPU and GPUadapter interfaces. - Created a background thread for WebGPU api calls. - Established the async communication between the background thread and the WebGPU interfaces. - Implemented the `requesAdapter` function of `navigator.gpu` `./mach test-tidy` reports an error due to the different `arrayvec` version used in `servo` and `webgpu`, so added it to the ignore list in `servo-tidy.toml` --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [ ] `./mach test-tidy` does not report any errors - [ ] These changes addresses a part of #https://github.com/servo/servo/issues/24706 <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> cc @jdm, cc @kvark <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24708) <!-- Reviewable:end -->
| * | | | | Initial implementation of WebGPU APIZakor Gyula2019-11-2125-1/+529
| | | | | |
* | | | | | Require FormDataEventInit dictionaryKagami Sascha Rosylight2019-11-242-13/+4
| |_|_|/ / |/| | | |
* | | | | Add support for squeeze eventsManish Goregaokar2019-11-223-7/+29
| | | | |
* | | | | Auto merge of #24668 - tuncer:configure-media-stack-v2, r=asajeffreybors-servo2019-11-222-9/+7
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow build to explicitly set the media stack <!-- Please describe your changes on the following line: --> _[This is based on @asajeffrey's work in #23423, and is a rebase and continuation of that branch]_ This allows `./mach build` to override the media stack, which is currently hard-wired based on the target. To skip gstreamer, run `./mach build -d --media-stack=dummy`. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #23050 (GitHub issue number if applicable) <!-- Either: --> - [x] These changes do not require tests because it's build infra <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * | | | Make gstreamer(-sys) optionalTuncer Ayaz2019-11-212-5/+5
| | | | |
| * | | | Allow mach build to explicitly set the media stackAlan Jeffrey2019-11-212-6/+4
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | You can select the media backend by building as follows: $ ./mach build -d --media-stack=dummy or $ ./mach build -d --media-stack=gstreamer
* | | | Auto merge of #24818 - gterzian:fix_panic_on_finish_load, r=jdmbors-servo2019-11-221-0/+8
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prevent panic on layout send in finish-load <!-- Please describe your changes on the following line: --> Do not run the finish load steps if the pipeline has been discarded by the time the parser finishes. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [ ] `./mach build -d` does not report any errors - [ ] `./mach test-tidy` does not report any errors - [ ] These changes fix #22955 (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * | | | abort parser before shutting down layout in exit pipelineGregory Terzian2019-11-221-6/+8
| | | | |
| * | | | abort parser, if any, when pipeline exitsGregory Terzian2019-11-211-0/+6
| | |/ / | |/| |
* | | | Auto merge of #24789 - gterzian:fix_unloading, r=jdmbors-servo2019-11-222-2/+14
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix unloading, active BC, and clearing js runtime <!-- Please describe your changes on the following line: --> Do not set the window to be the currently active one for the windowproxy as part of `load`, as it will be done later when the document activity is set. And doing it later means that when unload runs, it is with the unloaded pipeline as the active window. Only nullify the window proxy if it's not used by another (currently-active) window. --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [ ] `./mach build -d` does not report any errors - [ ] `./mach test-tidy` does not report any errors - [ ] These changes fix #24591 (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [ ] These changes do not require tests because ___ <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * | | | ensure unload run with old pipeline as currently-active, do not nullify ↵Gregory Terzian2019-11-212-2/+14
| |/ / / | | | | | | | | | | | | proxy unless currently-active
* | | | Auto merge of #24816 - saschanaz:promiserejection, r=jdmbors-servo2019-11-213-20/+12
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Require PromiseRejectionEventInit dictionary <!-- Please describe your changes on the following line: --> --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: --> - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #22670 <!-- Either: --> - [x] There are tests for these changes <!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.--> <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
| * | | | Require PromiseRejectionEventInit dictionaryKagami Sascha Rosylight2019-11-223-20/+12
| | |/ / | |/| |
* / | | dom: Unindent Document::set_activity.Josh Matthews2019-11-211-54/+61
|/ / /
* | | Auto merge of #24798 - tmiasko:jemalloc, r=jdmbors-servo2019-11-201-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update jemalloc-sys to 0.3.2 Update jemalloc-sys to 0.3.2 to avoid issue where jemalloc occasionally keeps spinning in `je_spin_adaptive`. - [X] `./mach build --release` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #24791
| * | | Update jemalloc-sys to 0.3.2Tomasz Miąsko2019-11-201-1/+1
| | | |