Commit graph

7681 commits

Author SHA1 Message Date
jaymodi98
bf69b6fea7 Implement srcdoc support for iframes. 2019-11-12 13:57:54 -05:00
Ridhim Rastogi
563961826f Add consume stream callback 2019-11-11 16:48:52 -05:00
bors-servo
905f714bb4
Auto merge of #24524 - bblanke:consolidate-size-helpers, r=jdm
Make offscreen canvas rendering context use offscreen canvas' size; Consolidate size helpers

<!-- Please describe your changes on the following line: -->

Addresses issues raised in the review of PR #24518 and includes changes to 17 tests' metadata for those that now PASS.

Contains fixes in PR #24518:

Updated the offscreen canvas rendering context to use the offscreen canvas' size. This involved upgrading several methods to accept u64 sizes.

Additionally, the code in OffscreenCanvas::SetWidth() and OffscreenCanvas::SetHeight() was updated to send CanvasMsg::Recreate to the canvas paint thread.

---
<!-- 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 #24465 and fix #24536

<!-- Either: -->
- [X] There are tests for these changes – 17 were updated to PASS
2019-11-11 14:47:56 -05:00
Josh Matthews
44245eaead
Remove intermittent failure. 2019-11-11 09:41:00 -05:00
WPT Sync Bot
62c1fc904a Update web-platform-tests to revision eaf583ff9cfe4ce36b517ae3519e114948ba10c3 2019-11-11 13:36:10 +00:00
Bailey Blankenship
ec2961920b Addresses issues raised in #24465; removes redundancy in set_bitmap_dimensions
Removed passing test .ini files and moved euclid extensions to euclidext.rs to factor out redundant code
2019-11-10 18:37:14 -05:00
WPT Sync Bot
bea56037ef Update web-platform-tests to revision 70fdd27f4cecb8a5cae3dafa76ba05265531c9e2 2019-11-10 14:14:47 +00:00
bors-servo
970f7163e9
Auto merge of #24514 - imiklos:webgl_transform_feedback, r=jdm
Add WebGL Transformfeedback support

Reference: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.15
cc @mmatyas @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

<!-- 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. -->
2019-11-08 13:26:29 -05:00
Istvan Miklos
4f112b1705 Add Support for WebGL Transormfeedback
Reference: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.15
2019-11-08 15:22:52 +01:00
bors-servo
9a518cf797
Auto merge of #24677 - jdm:iframe-sizing-cleanup, r=asajeffrey
Ensure all iframes are sized correctly at creation

Following in the path of #22395, these commits serve several purposes:
* prevent layout instability early during iframe loads caused by a succession of resize events
* reduce the complexity of determining what actual DPI and initial window size values are being used at startup
* ensure that all documents have a correct initial viewport size at creation

These changes fix problems that were exposed by the changes in #24462 but are independent of that PR.

---
- [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
2019-11-07 07:40:29 -05:00
bors-servo
fb9157df3b
Auto merge of #24645 - servo-wpt-sync:wpt_update_04-11-2019, r=jdm
Sync WPT with upstream (04-11-2019)

Automated downstream sync of changes from upstream as of 04-11-2019.
[no-wpt-sync]
r? @servo-wpt-sync
2019-11-06 18:16:47 -05:00
Josh Matthews
4578ae834c Update a test that expected a resize event to trigger for an iframe that isn't resized. 2019-11-06 17:56:18 -05:00
Josh Matthews
3854934145 Remove intermittent failure. 2019-11-06 13:26:46 -05:00
bors-servo
afbcbf75ea
Auto merge of #24473 - mmatyas:webgl_fns_buffer, r=jdm
Implement the basic WebGL2 buffer data operations

Adds support for the WebGL2 calls `bufferData`, `bufferSubData`, `copyBufferSubData` and `getBufferSubData`.

Reference: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.3

---

<!-- Please describe your changes on the following line: -->

This patch depends on https://github.com/servo/sparkle/pull/8. Some tests cause a crash for me at the moment, as they depend on other, not yet implemented buffer calls and transform feedback objects.

As for the code, there are a few parts I'm not sure about:

- To get the element byte size of a TypedArray I've wrote a simple `match`, as the relevant field is not published in `rust-mozjs`. Is that okay or there's some other way to get this already?
- The WebGL1 BufferData implementations were copied into the WebGL2 code as a workaround, due to the difference in the available buffer slots (ie. `self.bound_buffer`). An alternative could be is to pass this function and self as parameters to an internal buffer data implementation function, but personally I found that code to be quite ugly.

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 (with the sparkle patch)
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #___ (GitHub issue number if applicable)

<!-- 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. -->
2019-11-05 16:52:51 -05:00
Mátyás Mustoha
4050b7f9ec Implement the basic WebGL2 buffer data operations
Adds support for `bufferData`, `bufferSubData`, `copyBufferSubData`
and `getBufferSubData`.

Reference: https://www.khronos.org/registry/webgl/specs/latest/2.0/#3.7.3
2019-11-05 11:33:13 +01:00
Micah Tigley
38b91c3501 Implement MouseEvent's x/y and offsetX/offsetY attributes 2019-11-04 18:28:08 -05:00
WPT Sync Bot
4aba25d880 Update web-platform-tests to revision 341891a7294014cb21b0a85cd0e024997aa21555 2019-11-04 13:46:42 +00:00
WPT Sync Bot
bca3835607 Update web-platform-tests to revision 424249088dd679888e07bd315dd8ebc98ccf323a 2019-11-03 13:38:54 +00:00
Patrick Walton
a358bca766 Use surfman for managing GL surfaces
Co-authored-by: Alan Jeffrey <ajeffrey@mozilla.com>
Co-authored-by: Zakor Gyula <gyula.zakor@h-lab.eu>
Co-authored-by: Josh Matthews <josh@joshmatthews.net>
2019-11-01 08:47:11 -05:00
bors-servo
a355f41c9f
Auto merge of #24584 - JoshMcguigan:perf-resource-timing-duration, r=jdm
implement PerformanceResourceTiming duration

<!-- Please describe your changes on the following line: -->
Implements #21255

I wanted to give this a shot, but I'm not sure this is the appropriate implementation. In particular, I'm not sure if adding duration to the webidl interface is correct, because that doesn't seem to align with the web version (linked above the interface)?

Also, I'd like to write a test for this method, but I'm not sure where that test should go.

My apologies if this is way off target.

---
<!-- 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 #21255 (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. -->
2019-10-31 22:49:27 -04:00
Josh Mcguigan
72702b7284 update test resource timing tests 2019-10-31 17:55:38 -07:00
Josh Matthews
e94725345b
Remove intermittent failure. 2019-10-31 17:42:44 -04:00
WPT Sync Bot
5a5512f805 Update web-platform-tests to revision 0abb411331f86f472103183c7ec1136ea21a7e1b 2019-10-31 14:12:13 +00:00
WPT Sync Bot
60b62482da Update web-platform-tests to revision 82cecba576456d05c09894749379df1013ab488f 2019-10-30 13:49:46 +00:00
Kagami Sascha Rosylight
691af0e98b Support stringifier attributes 2019-10-29 21:35:40 +09:00
bors-servo
f78ca5794a
Auto merge of #24564 - paulrouget:initButtons, r=jdm
Properly set MouseEvent buttons property

Properly set MouseEvent buttons property. Same behavior as Chrome and Firefox.

---
<!-- 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 #24363 (GitHub issue number if applicable)

<!-- 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. -->
2019-10-29 00:57:40 -04:00
Paul Rouget
3a8d306281 Properly set MouseEvent buttons property 2019-10-28 17:11:45 +01:00
WPT Sync Bot
9c6bf785bd Update web-platform-tests to revision cbd8c8ca929bc1aea71087be3b826cf1ee189a52 2019-10-28 14:07:02 +00:00
bors-servo
6a54d60043
Auto merge of #24555 - servo-wpt-sync:wpt_update_25-10-2019, r=servo-wpt-sync
Sync WPT with upstream (25-10-2019)

Automated downstream sync of changes from upstream as of 25-10-2019.
[no-wpt-sync]
r? @servo-wpt-sync
2019-10-25 20:10:30 -04:00
bors-servo
45113a6e41
Auto merge of #24551 - nox:i-am-very-smart, r=SimonSapin
Fix a ridiculous bug in layout-2020

Who needs CI anyway?
2019-10-25 17:57:31 -04:00
WPT Sync Bot
328d5a4231 Update web-platform-tests to revision 474923949524b5c05a9e6f28ec082fdca87078de 2019-10-25 13:27:26 +00:00
Anthony Ramine
327740d67a Fix a ridiculous bug in layout-2020
Who needs CI anyway?
2019-10-25 11:23:46 +02:00
bors-servo
273fe590db
Auto merge of #24539 - servo-wpt-sync:wpt_update_24-10-2019, r=servo-wpt-sync
Sync WPT with upstream (24-10-2019)

Automated downstream sync of changes from upstream as of 24-10-2019.
[no-wpt-sync]
r? @servo-wpt-sync
2019-10-24 22:46:50 -04:00
teapotd
c54df2b965 Limit referer header value length to 4096 2019-10-24 20:59:00 +02:00
WPT Sync Bot
145699ccd0 Update web-platform-tests to revision d2f5658cb7f7806b2c6adf81ecb7ded82fb85df5 2019-10-24 15:48:44 +00:00
bors-servo
dc8be8f282
Auto merge of #24527 - servo-wpt-sync:wpt_update_23-10-2019, r=servo-wpt-sync
Sync WPT with upstream (23-10-2019)

Automated downstream sync of changes from upstream as of 23-10-2019.
[no-wpt-sync]
r? @servo-wpt-sync
2019-10-23 17:18:10 -04:00
WPT Sync Bot
15e68ad3d3 Update web-platform-tests to revision a3dd2ad02c65588ad280ceac378d82e9250d1045 2019-10-23 14:17:29 +00:00
Anthony Ramine
785a344e32 Update rand to 0.7 (fixes #24448) 2019-10-23 15:34:48 +02:00
bors-servo
3e7a0bfc42
Auto merge of #24512 - marmeladema:issue-23607/compat, r=SimonSapin
More changes for Python3 compatibility

Following #24435 for #23607 here are even more changes to be compatible with Python3.
I managed to get `./mach build` properly work with Python3 but `test-tidy` does not work yet because of a lot of problems in `web-platform-tests` which i will have to deal with at some point.

Because flake8 appears to be incompatible with the distro package in some way, i had to change to way we call flake8 (which was deprecated anyway). With this change, we should be able to update flake8 to a recent version but subprocess can be surprising on Windows platform so i'd like someone to try out those changes.

---
<!-- 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. -->
2019-10-22 13:48:50 -04:00
bors-servo
bf587f22d7
Auto merge of #24508 - pajamapants3000:21254, r=jdm
Add start_time to resource timing.

<!-- Please describe your changes on the following line: -->
`start_time` property added to `ResourceFetchTiming`, which enables the setting of `start_time` in the `PerformanceEntry` member of `PerformanceResourceTiming`.

Following the specification at https://w3c.github.io/resource-timing/#dfn-starttime, `start_time` is set to the value of `redirect_start` if redirection occurs and the timing allow check passes. Otherwise it has the same value as `fetch_start`.

---
<!-- 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 #21254

<!-- 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. -->
2019-10-22 09:34:07 -04:00
marmeladema
7fdd0b94cf tests/wpt: use iterkeys, itervalues and iteritems from six package 2019-10-22 10:16:01 +01:00
marmeladema
f51ae46570 tests/wpt/update: Use input() from six instead of raw_input() 2019-10-22 10:16:01 +01:00
marmeladema
0ea1af8b34 tests/wpt/update: remove useless import statement 2019-10-22 10:16:00 +01:00
marmeladema
d8190a7933 tests/wpt/update: use urllib module from six package 2019-10-22 10:16:00 +01:00
marmeladema
179caed30f tests/wpt/update: Fix print statements to be compatible with Python3 2019-10-22 10:16:00 +01:00
WPT Sync Bot
e3a9df4e78 Update web-platform-tests to revision 670f3ef16f9b38e22e3b863dcdc2ea860348929a 2019-10-21 14:37:40 +00:00
bors-servo
5011e9c21c
Auto merge of #24471 - saschanaz:enum-default, r=ferjm
Support enum value as a union default value

<!-- Please describe your changes on the following line: -->

Didn't implement the actual latency thing because the relevant things are already marked as TODO.

---
<!-- 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 #21342

<!-- 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. -->
2019-10-21 03:27:18 -04:00
Tommy Lincoln
fcad88cddd Add start_time to resource timing. 2019-10-20 07:28:11 -07:00
bors-servo
882dcc8408
Auto merge of #24507 - servo-wpt-sync:wpt_update_19-10-2019, r=servo-wpt-sync
Sync WPT with upstream (19-10-2019)

Automated downstream sync of changes from upstream as of 19-10-2019.
[no-wpt-sync]
r? @servo-wpt-sync
2019-10-19 15:13:23 -04:00
bors-servo
a905916ede
Auto merge of #23637 - gterzian:continue-message-port, r=jdm
Continue message port

<!-- Please describe your changes on the following line: -->
Fixes #7457.
Fixes #12715.
Fixes #12717.
Fixes #16095.
Fixes #18969.

---
<!-- 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. -->

<!-- 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/23637)
<!-- Reviewable:end -->
2019-10-19 13:19:01 -04:00