Commit graph

39751 commits

Author SHA1 Message Date
Anthony Ramine
b2f6cc7144 Introduce BlockLevelJob 2019-12-13 17:51:06 +01:00
Anthony Ramine
fb1891f436 Add NodeExt::as_opaque 2019-12-13 17:51:06 +01:00
Anthony Ramine
22ea33cb37 Enable cursor and pointer-events in 2020 2019-12-13 17:51:06 +01:00
bors-servo
762e67f486
Auto merge of #25273 - servo:fixedpos, r=nox
Layout `position: fixed` in the initial containing block
2019-12-13 10:50:58 -05:00
Simon Sapin
6f3c5ce773 Rename BlockLevelKind to NonReplacedContents 2019-12-13 13:59:15 +01:00
Simon Sapin
58b7005a9b Make for_maybe_position_relative take care of relative adjustment. 2019-12-13 13:13:50 +01:00
Simon Sapin
b218957461 Rename CollectedAbsolutelyPositionedBox to HoistedAbsolutelyPositionedBox 2019-12-13 12:44:05 +01:00
Simon Sapin
04b701b9e0 Move call to for_maybe_position_relative out of layout_in_flow_non_replaced_block_level 2019-12-13 12:41:58 +01:00
Simon Sapin
672d971d58 Regroup branches specific to SameFormattingContextBlock 2019-12-13 12:33:07 +01:00
Simon Sapin
c0962aa3fc Replace the closure in layout_in_flow_non_replaced_block_level with an enum 2019-12-13 12:09:51 +01:00
bors-servo
0954871992
Auto merge of #25271 - asajeffrey:gstplugin-glthread, r=Manishearth
Run GL commands on the GStreamer GL thread

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

GStreamer has thread affinity for GL contexts.

---
<!-- 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 #25268
- [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. -->
2019-12-13 00:06:11 -05:00
bors-servo
e8d6ed09c4
Auto merge of #25272 - pshaughn:domexception_inherits_tostring, r=Manishearth
DOMException now inherits its Javascript toString from Error

<!-- Please describe your changes on the following line: -->
stringifier is out of the DOMException IDL, and Stringifier(&self) is moved into the main body of DOMException where it can continue to be called internally.

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

<!-- 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-12-12 22:50:26 -05:00
bors-servo
068a210da0
Auto merge of #25267 - jdm:devtools-module-script-warning, r=Manishearth
Issue warning to devtools when module scripts in use.

This makes it easier to identify why content isn't working in environments which don't have access to the RUST_LOG output.
2019-12-12 22:17:06 -05:00
Patrick Shaughnessy
981d13dcfc Stringifier is sno longer exposed 2019-12-12 20:20:31 -05:00
Simon Sapin
6fce97c65c Parse background: <color> 2019-12-13 00:42:18 +01:00
bors-servo
748edb2cd9
Auto merge of #25259 - Manishearth:wpt-fixes, r=asajeffrey
Various webxr WPT fixes

Needs https://github.com/servo/webxr/pull/108

r? @asajeffrey

Went through most of the failing tests and fixed them. Many of the remaining ones fail due to unsupported features that I can slowly whittle away.
2019-12-12 18:13:15 -05:00
Simon Sapin
53a8a609d2 Fix a width v.s. height confusion bug in abspos layout 2019-12-13 00:09:43 +01:00
Simon Sapin
5ebddf19e6 Layout position: fixed in the initial containing block 2019-12-12 22:50:11 +01:00
Simon Sapin
c44ee516a1 Give PositioningContext more responsibilities
Iits details are now private to the module.

It has a couple methods that take closures to make sure that "before" and "after" steps are done together:

* In an absolutely positioned box, take care of nested abspos (establish a new containing block, etc.)
* For a box that *might* be `position: relative`, optionally take care of the same.
2019-12-12 22:50:11 +01:00
bors-servo
a5c368fd01
Auto merge of #25248 - MeFisto94:fix-linux-crash-libbacktrack, r=jdm
Workaround for #24984 - Solve crashes when panicking / Hang Monitoring by using cargo's patch mechanism to work around a bug in libbacktrace

Temporarly patch backtrace-rs

---
libbacktrace contains an error leading to invalid pointers when trying to backtrace a stacktrace.
These invalid pointers led to a crash, whenever a panic or Hang Monitoring happened (which is where the stack is captured).
Since fixing the issue properly at gcc will require some time, I've created a small and patched version of backtrace-rs, which will be used as patch here.

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #24984
- [X] These changes do not require tests because they fix a native crash which is a) really obvious and b) shouldn't be a regular case.
2019-12-12 16:23:40 -05:00
Josh Matthews
55eb34b8a9 Issue warning to devtools when module scripts in use. 2019-12-12 15:42:37 -05:00
Alan Jeffrey
16122be83e Run GL commands on the GStreamer GL thread 2019-12-12 13:43:52 -06:00
bors-servo
9f1d469490
Auto merge of #25164 - servo:linux-processes, r=jdm
Increase parallelism on Linux WPT testing

The time taken by each chunk is uneven, with WPT-1 the longest before this change at 30 ~ 45 minutes. This reduces it to 15 ~ 20 minutes.

Surprisingly, increasing the number of processes seems to also make `test_element_in_collection` in `/webdriver/tests/execute_script/cyclic.py` **unexpectedly pass**. This happened reliably in three different runs:

https://community-tc.services.mozilla.com/tasks/S9O27WJvSa6j2PSjcRcbBA/runs/2
2019-12-12 14:26:37 -05:00
Simon Sapin
1c8d14ac0d Upgrade rayon_croissant to 0.2.0 2019-12-12 18:57:18 +01:00
bors-servo
a03a413c15
Auto merge of #25255 - marmeladema:fix-25251, r=jdm
Use filename instead of opened file descriptor when calling ZipFile

This should fix #25251

<!-- 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. -->
2019-12-12 11:50:41 -05:00
bors-servo
c54d09afaf
Auto merge of #25246 - asajeffrey:gstplugin-framerates, r=Manishearth
Block the gstreamer plugin waiting for the next frame

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

Get the GStreamer plugin to produce frames at the requested rate rather than relying on downstream elements to perform throttling.

---
<!-- 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 #24833
- [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. -->
2019-12-12 09:44:12 -05:00
Simon Sapin
9edda952c9 Make adjust_static_positions a method of PositioningContext 2019-12-12 15:43:50 +01:00
Simon Sapin
b43a3de51d Introduce PositioningContext 2019-12-12 15:37:01 +01:00
MeFisto94
c27b4e259a Workaround for #24984 - Solve crashes when panicking / Hang Monitoring by using cargo's patch mechanism to work around a bug in libbacktrace 2019-12-12 14:54:26 +01:00
bors-servo
0e4c4b85c7
Auto merge of #25261 - servo-wpt-sync:wpt_update_12-12-2019, r=servo-wpt-sync
Sync WPT with upstream (12-12-2019)

Automated downstream sync of changes from upstream as of 12-12-2019.
[no-wpt-sync]
r? @servo-wpt-sync
2019-12-12 08:31:12 -05:00
WPT Sync Bot
5e74467d68 Update web-platform-tests to revision 548818eee08f7a6e31b9706b352b5d44b2f6d024 2019-12-12 10:59:51 +00:00
bors-servo
06e3d13795
Auto merge of #25247 - pshaughn:clean_virtualenv2.7, r=jdm
mach clean now finds the right virtualenv to remove

<!-- Please describe your changes on the following line: -->
mach clean now knows about the 00cf7452ef change and will remove _virtualenv2.7 appropriately

---
<!-- 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 problems discussed today with SimonSapin in IRC

<!-- Either: -->
- [X] These changes do not require tests because the functionality being changed uninstalls some of the test framework

<!-- 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-12-12 05:21:16 -05:00
Manish Goregaokar
d12f8e31a3 Allow spawning inline sessions without interaction 2019-12-11 23:34:25 -08:00
bors-servo
82fd8d1daf
Auto merge of #25159 - garasubo:fix-composition-event, r=jdm
implement composition event creation in Document.createEvent

Solved the problem mentioned in https://github.com/servo/servo/issues/24724#issuecomment-562326328

Add logic to create composition event for Document.createEvent. This resolved some WPT test failure, so updated the metadata as well

Ref: https://developer.mozilla.org/en-US/docs/Web/API/Document/createEvent

---
<!-- 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. -->
2019-12-12 01:33:04 -05:00
Manish Goregaokar
fe7cbd7843 Construct viewports for inline sessions 2019-12-11 22:12:07 -08:00
Manish Goregaokar
3414c8d22d Correctly clamp ivfov and depth values 2019-12-11 22:12:07 -08:00
Manish Goregaokar
f52a6f0e8f Set inlineVerticalFieldOfView to null for immersive sessions 2019-12-11 22:12:07 -08:00
Manish Goregaokar
326902220c Fix xrDevice_requestSession_no_mode to test for a throw, not a rejection 2019-12-11 22:12:07 -08:00
Manish Goregaokar
5b3132ebb7 Clean up mock view code, support mono views 2019-12-11 22:12:07 -08:00
Manish Goregaokar
c2d3c646ef Handle FOV values in mock API 2019-12-11 22:12:07 -08:00
Manish Goregaokar
bc1bd22d47 Use actual floor origin for local-floor 2019-12-11 22:12:07 -08:00
Manish Goregaokar
322463450d Support nullable origins and floors 2019-12-11 22:12:06 -08:00
Manish Goregaokar
0bace66f70 Update webxr timestamp test to not compare against window.rAF()
The exact desired behavior is unclear, see https://github.com/immersive-web/webxr/issues/943 and https://github.com/immersive-web/webxr/issues/225
2019-12-11 22:11:24 -08:00
Manish Goregaokar
e27687497b Use correct timestamps 2019-12-11 22:11:23 -08:00
bors-servo
f9b97fd366
Auto merge of #25250 - jdm:surfmanup, r=Manishearth
Update surfman for UWP fix.

This removes the use of a forbidden UWP API in the ANGLE backend when appropriate.
2019-12-11 23:22:26 -05:00
Alan Jeffrey
24678da9c9 Block the gstreamer plugin waiting for the next frame 2019-12-11 20:06:39 -06:00
bors-servo
073194a618
Auto merge of #25144 - Manishearth:inline, r=asajeffrey
Support inline sessions (with spatial tracking!)

This assumes that your WebXR backend can tolerate being spawned multiple times in inline mode. Currently there is only one backend that allows inline mode (headless), and it works there. This can be improved with https://github.com/servo/webxr/issues/30 .

Todo:

 - [ ] Add a default inline device to webxr so that there is always a tracking-free inline session available (followup: https://github.com/servo/webxr/issues/101)
 - [x] WPT update
 - [ ] Make inline with spatial tracking a feature request (followup: https://github.com/servo/servo/issues/24270)

fixes https://github.com/servo/servo/issues/24186

Depends on https://github.com/servo/webxr/pull/100
2019-12-11 21:04:47 -05:00
takumi
de939eb96d implement composition event creation in Document.createEvent 2019-12-12 10:45:22 +09:00
marmeladema
e6a3a9774a Use filename instead of already opened file descriptor when calling ZipFile
This should fix #25251
2019-12-12 00:14:32 +00:00
bors-servo
904c23fed0
Auto merge of #25243 - asajeffrey:gstplugin-name-unclash-no-really-i-mean-it-this-time, r=Manishearth
Rename servosrc to servowebsrc

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

Really fixes a name clash with servo-media. Really.

---
<!-- 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 #25051
- [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. -->
2019-12-11 17:51:39 -05:00