aboutsummaryrefslogtreecommitdiffstats
path: root/components/script
Commit message (Collapse)AuthorAgeFilesLines
...
| * | Error handling for promise returning operationsKunal Mohan2020-08-024-40/+62
| | |
| * | Report errors from void returning operationsKunal Mohan2020-08-018-24/+82
| | |
* | | Implement the changes to updating the render state from the WebXR Layers specAlan Jeffrey2020-08-031-17/+56
| | |
* | | Update WebXR Layer IDL, and matching changes to the Rust code.Alan Jeffrey2020-08-0313-325/+235
|/ /
* | Auto merge of #27413 - utsavoza:ugo/issue-26958/26-07-2020, r=noxbors-servo2020-07-313-69/+139
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fire mouseenter and mouseleave events The PR primarily consists of changes for: - Fixing the order in which `mousemove` events are fired. - Firing `mouseenter` and `mouseleave` events. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #26958 - [ ] There are tests for these changes
| * | Do not panic on navigating across documentsUtsav Oza2020-07-303-8/+12
| | |
| * | Fix comments for handle_mouse_move_event methodUtsav Oza2020-07-301-46/+41
| | |
| * | Fire mouseenter and mouseleave eventsUtsav Oza2020-07-301-6/+81
| | |
| * | Fix ordering of mousemove eventUtsav Oza2020-07-301-75/+71
| | |
* | | Auto merge of #26607 - nosark:master, r=gterzianbors-servo2020-07-313-8/+27
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use ExtendableMessageEvent for messageerror in service workers #25241 <!-- Please describe your changes on the following line: --> added function dispatch_error to the ExtendableMessageEvent implmentation and replaced the MessageEvent dispatch error call with the ExtendableMessageEvent dispatch error call in serviceworkerglobalscope.rs --- <!-- 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 #25241 (GitHub issue number if applicable) <!-- Either: --> - [x] There are tests for these changes OR - [x] 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. -->
| * | | Use ExtendableMessageEvent for messageerror in service workersKyle Nosar2020-07-303-8/+27
| |/ /
* | | Auto merge of #27447 - kunalmohan:gpu-error, r=kvarkbors-servo2020-07-307-105/+130
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor and improve GPUErrorScopes - Remove use of equivalent BGLs - Capture errors from more `Createxxx` operations - Address crashes on macOS in #27402 Improved ErrorScope model attempts to- 1. Identify and report `OutOfMemoryError` separately. 1. Match `GPUErrorFilter` and pass on uncaptured errors to parent scope. r?@kvark <!-- 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 - [ ] 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. -->
| * | Refactor and improve GPUErrorScopesKunal Mohan2020-07-307-105/+130
| | | | | | | | | | | | Remove use of equivalent BGLs
* | | Auto merge of #27448 - asajeffrey:script-webgl-texture-ownership, r=jdmbors-servo2020-07-292-4/+38
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't delete GL textures created by WebXR <!-- Please describe your changes on the following line: --> Currently WebGL assumes it owns any WebGLTexture, and deletes the backing GL texture when the object is GC'd. This isn't valid for textures created by a webxr layer manager, which can result in textures being used after they're deleted. --- <!-- 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 #27427 - [x] These changes do not require tests because we don't reftest webxr <!-- 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. -->
| * | | Don't delete GL textures created by WebXRAlan Jeffrey2020-07-292-4/+38
| | | |
* | | | Auto merge of #27429 - asajeffrey:webxr-user-intent-pref, r=Manishearthbors-servo2020-07-291-2/+6
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a pref to indicate user intent to enter webxr <!-- Please describe your changes on the following line: --> Add a pref to indicate that the user has indicated intent to enter webxr. --- <!-- 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 require tests because it's a command-line pref <!-- 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 a pref to indicate user intent to enter webxrAlan Jeffrey2020-07-291-2/+7
| |/ / /
* | | | Console.Clear implementedmustafapc192020-07-292-0/+7
| | | |
* | | | Auto merge of #27420 - avr1254:master, r=jdmbors-servo2020-07-282-13/+8
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removed unnecessary conversion from UTF-8 to UTF-16 <!-- Please describe your changes on the following line: --> Changed Spidermonkey API calls to remove need for UTF-16 conversion. --- <!-- 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 #27331 (GitHub issue number if applicable) <!-- Either: --> - [ ] There are tests for these changes OR - [X] These changes do not require tests because they simply optimize existing code for speed. <!-- 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. -->
| * | | | Removed unnecessary conversion from UTF-8 to UTF-16Arjun Ramachandrula2020-07-272-13/+8
| | |/ / | |/| |
* / | | Move secondary view support into a prefManish Goregaokar2020-07-271-0/+2
|/ / /
* | | Auto merge of #27299 - avr1254:master, r=jdmbors-servo2020-07-242-22/+78
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implemented get element target algorithm Added check for area and anchor element Finished issue: Implemented get target and no opener algorithm Implemented get element target and get element noopener algorithms. <!-- Please describe your changes on the following line: --> Used the algorithms in html spec to implement target and no opener algorithms. --- <!-- 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 #27253 (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. -->
| * | | Implemented get element target and get element noopener algorithmsArjun Ramachandrula2020-07-242-22/+78
| | | | | | | | | | | | | | | | and refactored into functions.
* | | | Auto merge of #27389 - kunalmohan:update-wgpu, r=kvarkbors-servo2020-07-2429-293/+837
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement GPURenderBundles <!-- Please describe your changes on the following line: --> 1. Implement `GPURenderBundleEncoder` and `GPURenderBundle`. 2. Update wgpu to use serializable descriptors. 3. Set user-defined labels on object creation. r?@kvark --- <!-- 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 <!-- 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. -->
| * | | Implement GPURenderBundleEncoder and GPURenderBundleKunal Mohan2020-07-2429-95/+624
| | | |
| * | | update wgpu, use serializable descriptorsKunal Mohan2020-07-222-199/+214
| | | |
* | | | Ensure scripts compiled off-thread can import modules.Josh Matthews2020-07-221-42/+40
| | | |
* | | | Pass C string pointer to CompileOptionsWrapper.Josh Matthews2020-07-221-2/+3
|/ / /
* | | Auto merge of #26710 - AbhishekSharma102:issue_26571, r=jdm,gterzianbors-servo2020-07-215-88/+311
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Compile external scripts off the main thread <!-- 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 - [ ] These changes fix #26571 (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. -->
| * | | Added off thread compilationAbhishekSharma1022020-07-215-88/+311
| | | | | | | | | | | | | | | | | | | | Co-authored-by: Gregory Terzian <2792687+gterzian@users.noreply.github.com> Co-authored-by: Abhishek Sharma <20724848+AbhishekSharma102@users.noreply.github.com>
* | | | Auto merge of #27348 - kunalmohan:gpu-copy, r=kvarkbors-servo2020-07-215-102/+232
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement GPUCommandEncoder.copy commands <!-- Please describe your changes on the following line: --> r?@kvark --- <!-- 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 - [ ] 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. -->
| * | | | Implement GPUCommandEncoder.copy commandsKunal Mohan2020-07-215-102/+232
| | | | |
* | | | | Auto merge of #27313 - jdm:layer-idl, r=asajeffreybors-servo2020-07-213-34/+18
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update XRWebGLLayer to match specification. This unbreaks most of the webxr WPT tests. --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #27312 - [x] There are tests for these changes
| * | | | Update XRWebGLLayer to match specification.Josh Matthews2020-07-203-34/+18
| | | | |
* | | | | Auto merge of #27329 - kunalmohan:gpu-label, r=kvarkbors-servo2020-07-2018-231/+146
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update GPUObjectBase webidl and cleanup valid flags <!-- Please describe your changes on the following line: --> Update labels to be `USVString` Remove `valid` flags in WebGPU resources. The only place where we still have that is `GPUCommandEncoder` (Only to validate the GPUCommandEncoder state. Not sure how errors would be handled/reported by server for copy commands). r?@kvark --- <!-- 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 - [ ] 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 GPUObjectBase webidl and cleanup valid flagsKunal Mohan2020-07-2018-231/+146
| | |/ / / | |/| | |
* | | | | Auto merge of #27316 - asajeffrey:webxr-save-restore-gl-state, r=Manishearthbors-servo2020-07-201-2/+29
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Save / restore state when updating opaque framebuffer bindings <!-- Please describe your changes on the following line: --> This saves and restores the WebGL bindings for texture and framebuffer when beginning a webxr frame. --- <!-- 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 #27286 - [x] These changes do not require tests because we don't reftest hololens (it would be nice if we did!) <!-- 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. -->
| * | | | Save / restore state when updating opaque framebuffer bindingsAlan Jeffrey2020-07-201-2/+29
| | | | |
* | | | | Auto merge of #27026 - CYBAI:dynamic-module, r=jdmbors-servo2020-07-1915-162/+811
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce dynamic module --- - [x] `./mach build -d` does not report any errors - [x] `./mach test-tidy` does not report any errors - [x] These changes fix #25439 - [x] There are tests for these changes
| * | | | | Use JS_GetScriptPrivate to get a mutated return valueCYBAI2020-07-191-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Because MSVC uses a different calling conventions for functions that return non-POD values, we need to use the new exposed wrapper function so that `GetScriptPrivate` can be handled correctly on Windows.
| * | | | | Handle script private reference hooks properlyCYBAI2020-07-182-5/+23
| | | | | |
| * | | | | Set private reference for classic scriptCYBAI2020-07-1810-71/+204
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Web developers can use `Dynamic Import` in a classic script; thus, we need to save the script's private reference so that we can reuse it when we're going to fetch a dynamic import module for a classic script. Besides, because it's possible to use different executing context for a dynamic import module (like `dynamic-import/string-compilation-other-document.html` WPT test), we can't initialize a module owner at the timing of `SetScriptPrivate`; thus, if the private module script doesn't hold an owner, we'll use a DynamicImport owner for it.
| * | | | | Move from direct `Evaluate` to `compile then execute` for classic scriptCYBAI2020-07-181-6/+14
| | | | | |
| * | | | | checkpoint - dynamic load inside of a module and classic script works.Josh Matthews2020-07-185-110/+525
| | | | | |
| * | | | | Introduce DynamicModuleOwner dom structCYBAI2020-07-184-0/+72
| | | | | |
* | | | | | Auto merge of #27303 - camelid:async-to-asynch, r=jdmbors-servo2020-07-173-15/+15
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use `asynch` instead of `r#async` <!-- Please describe your changes on the following line: --> This is a vestige of the transition from 2015 to 2018 edition Rust. `async` was added as a keyword in 2018 edition Rust, so `cargo fix` changed the variable name here to `r#async`. --- <!-- 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 - [x] These changes do not require tests because this is just an internal name change <!-- 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. -->
| * | | | | Use `asynch` instead of `r#async`Camelid2020-07-163-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a vestige of the transition from 2015 to 2018 edition Rust. `async` was added as a keyword in 2018 edition Rust, so `cargo fix` changed the variable name here to `r#async`.
* | | | | | Auto merge of #27285 - kunalmohan:async-error, r=kvarkbors-servo2020-07-1714-20/+417
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement WebGPU ErrorScopes <!-- Please describe your changes on the following line: --> This PR covers the following- 1. update wgpu-core (Rustify `RenderPipelineDescriptor`) 2. Add initial implementation of `pushErrorScope` and `popErrorScope`. 3. Use existing `BGL` if an equivalent already exists. A brief explanation of the ErrorScope Implementation- 1. We store `HashMap<u64, ErrorScopeInfo>` in `GPUDevice`. `ErrorScopeInfo` is a new struct used to store all necessary info for an ErrorScope. 2. We simultaneously store `Vec<u64>` to keep track of the ErrorScope hierarchy. `next_scope_id` is used to get the `scope_id` for a new Scope. 3. We send the `scope_id` of top-level scope to the server in the message for an operation. The server performs the operation and sends back the scope_id with the result message (only if a scope_id was sent from the client. Otherwise no message is sent.). 4. We store a `HashMap<WebGPUDevice, Dom<GPUDevice>>` in `GlobalScope` to access them from `ScriptThread`. 5. While creating a `GPUDevice` we send the `PipelineId` of the pipeline it was created in so that when the server send the response, we can access the device from the GlobalScope of that Pipeline. 6. We generate the relevant `GPUError` in `GlobalScope`(if required) can call the necessary fn in `GPUDevice`. This implementation is pretty rough and not complete at all. Broadly the following cases aren't handled at the moment- 1. ErrorFilter is not checked when an error is captured. 2. We don't propagate an error to enclosing scope if a scope did not capture it. 3. `UncapturedErrorEvents` is not implemented. As for Equivalent BGLs we now store `Vec<(Vec<wgt::BindGroupLayoutEntry>, Dom<GPUBindGroupLayout>)>` in `GPUDevice` and compare `Vec<wgt::BindGroupLayoutEntry>` for new BGL with the existing ones and return one if it is found. Otherwise a new one is created and an entry added to the `Vec`. r?@kvark --- <!-- 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 <!-- 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. -->
| * | | | | Ensure GPUDevice cleanup in GlobalScopeKunal Mohan2020-07-172-0/+11
| | | | | |
| * | | | | address review commentsKunal Mohan2020-07-171-106/+97
| | | | | |