This led to me wasting a lot of time trying to figure out why my column-count implementation in gecko didn't work.
We might eventually want to hook into the Gecko prefs, but the mechanism would probably be different
r? @emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: 960d884fd4dd2ad5dabfb4dd9d52e50f9d5c292c
<!-- Please describe your changes on the following line: -->
r? @Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 48f75bf2f68914a11eed83cbd23776f7e0b9c2bd
<!-- 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: -->
- [X] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
These new functions are derived from the existing uniform*fv
functions. They get used in a lot of demo code, so it should greatly
improve our compatibility.
This regresses uniformMatrixBadArgs.html, which gets at an existing
problem in our uniform matrix support (failure to validate
that the uniform is a matrix before calling down) but previously just
failed because it only called the 'fv' variants and never the existing
'f' variants.
Source-Repo: https://github.com/servo/servo
Source-Revision: aab9d61025fe72bdcb37f13c9cc53b787a636036
<!-- Please describe your changes on the following line: -->
Changed `set_value()` to `set()` in gecko.mako.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#13657 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because just the `set_value()` call was changed to `set()`
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: b110eb394ebeb6528240ac3d01e17b0577a9dfbd
<!-- Please describe your changes on the following line: -->
Implementation of all gradients.
r? @Manishearth
---
<!-- 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#13549 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: fe6fac4ee2af33c0fc61381c86c351982d4b73fd
<!-- 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
<!-- Either: -->
- [x] These changes do not require tests because it's generated code
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
r? @Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: b091ada480cfdb381d8f07eb98c1fb9bdebd3f89
<!-- 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: -->
- [x] There are tests for these changes
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
This is a change set with multiple intentions:
* Be correct.
* Unlock tests that are blocking @anholt.
* Ease the transition to typed arrays once the changes by @Ms2ger start rolling
in, since I expect the amount of test expectations to update to be
non-trivial.
I expect having it to run on try a few times, but... r? @nox or @KiChjang
Source-Repo: https://github.com/servo/servo
Source-Revision: ddff5ce2eb635ff1c51ed7fee2d33e890c541221
Fixes#12992
Needs #13617
Not very happy with this solution (and perhaps it should be done in pure Rust, though that can be split out as another easy bug).
But it works. The bindings changes are from running a regen on [bug 1308234](https://bugzilla.mozilla.org/show_bug.cgi?id=1308234)
r? @emilio
Source-Repo: https://github.com/servo/servo
Source-Revision: a0e404c79e100917d5c7512f500b488fe87c12dc
We don't need this for Gecko, and it's hard to implement in that case because
there's nowhere obvious to put it (we don't plan to create TSDs for non-dirty
nodes, and non-dirty nodes can have dirty children which require the
children_to_process atomic). There are various solutions here, but punting is
the easiest.
We'll need to rethink this if/when we need to do a bottom-up traversal for
Gecko.
Source-Repo: https://github.com/servo/servo
Source-Revision: 70dbfd28fa44b0cd89a0ea39a6bd1180611c5e66
I made this branch months ago and forgot about it. Instead of just throwing the changes away, I rebased off origin/master and opened this pull request. If these changes aren't desired, no feelings hurt, just close this. If they are desired, let me know if there are any changes you want me to make and I'll also need to rewrite/squash the commits.
Source-Repo: https://github.com/servo/servo
Source-Revision: b1d8eff467d3c324e0cc729b06983931000c2680
Instead of letting the compositor try to find the correct scroll
layer for a touch event, switch touch events to work the same way
that mouse events do.
Touch events are now dispatched to the root pipeline, and then
forwarded to child iframes as required.
Source-Repo: https://github.com/servo/servo
Source-Revision: 9d3fc76463cb226ffeb9a6aca7239bbe36543802
<!-- Please describe your changes on the following line: -->
minimal SVG element implementation
---
<!-- 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#12974 (github issue number if applicable).
<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: dad3b4785a73aa6ddea5ed50ee4ef01bd4049c8d
<!-- 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-geckolib` does not report any errors
- [x] `./mach test-tidy` does not report any errors
<!-- Either: -->
- [x] These changes have been tested manually
![screenshot](https://cloud.githubusercontent.com/assets/6691262/19195866/eb46ffce-8cd0-11e6-8642-a9525da8bf38.png)
r? @Manishearth
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: a25e0670b39df0efcc4c6642775c0de414461a3d
<!-- Please describe your changes on the following line: -->
This PR stores the FrameId as well as the PipelineId in an html iframe. The iframes are now responsible for creating frame ids, not the constellation.
This is the first step in fixing #633, because it means we know the frame id of each script thread when it is created. It also means we can share the frame id, for example using it in the debugger.
cc @jdm, @ConnorGBrewster and @ejpbruel.
---
<!-- 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 refactoring.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: d01a8662154924a551c8d7a2f12b22bcaf998a7c
<!-- Please describe your changes on the following line: -->
The error message was:
```
error: unknown character escape: d
--> C:\projects\servo\target\debug\build\style-9b556a6c7bb4f044\out/properties.rs:44:55
|
44 | #[path="C:/projects/servo/components/style/properties\declaration_block.rs"]
|
```
Use `repr()` to get a Python string literal (whose character escaping is compatible enough with Rust’s) and `[1:-1]` to remove the single quotes.
---
<!-- 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#13626 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 86f31d0dc7d94f5c836380e22f2cdf0411dcb2a1
Globals in that PR are now represented by the fake IDL interface `GlobalScope`.
Source-Repo: https://github.com/servo/servo
Source-Revision: a6e4b5bb86ad707a0863acff87344ca4239cfd2c
--HG--
rename : servo/components/script/dom/webidls/ServoXMLParser.webidl => servo/components/script/dom/webidls/GlobalScope.webidl
All changes done in https://github.com/servo/servo/pull/13603, but this time I understand why I should have created a branch instead of doing everything on master.
---
<!-- 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#13598 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because `they are tests`.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 03cd936639905e4c980ee706f4ee8f0f35de5180
<!-- Please describe your changes on the following line: -->
Adding instructions to build using the MSVC toolchain.
r? @vvuk
---
<!-- 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#13206 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: a90d207c468a9a8a99cfafa301fed3f48eee5ba3
<!-- 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
- [x] These changes are part of https://github.com/servo/saltfs/issues/316
<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because they just copy the steps configuration
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Now that our Buildbot configuration is successfully able to read the
steps configuration from the main servo repo and run builds, sync the
steps in the servo tree to match the latest steps.yml from the saltfs
repo.
Source-Repo: https://github.com/servo/servo
Source-Revision: ff04558ce26203cc3eb63edc9a15a6e6622b814a
Instead of dispatching to a specific layer, call the dispatch
functions for mouse (move) events that handle whether webrender
is enabled or not.
Source-Repo: https://github.com/servo/servo
Source-Revision: 1161d17f674e44d39bdbd948fe6e814954890672
<!-- Please describe your changes on the following line: -->
`properties.mako.rs` (its previous location) is a fairly big file.
---
<!-- 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
- [x] These changes do not require new tests because refactor
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 3b853e57bfbd9df89aa3737080f28cdc42372c19
<!-- Please describe your changes on the following line: -->
The session history is stored in the constellation and accessed via the `History` object, so `BrowsingContext` doesn't need to track it.
cc @jdm @ConnorGBrewster @Ms2ger
---
<!-- 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 refactoring.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 896be066dd34e4d5f5f2c6425c093f5fa091401b
<!-- Please describe your changes on the following line: -->
Cleans up code as described in #13586 by returning early instead of nesting everything in an `if` statement.
---
<!-- 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#13586
<!-- Either: -->
- [x] These changes do not require tests because the change is a cleanup of code and the author of the issue stated that new tests were not required.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
…istener
Source-Repo: https://github.com/servo/servo
Source-Revision: 596fdf2fef0c2e0a3d02ce9f7ed3cd5a1c0480a6
r? @nox
Fixes#13591
This fixes the problem with rebuilding all of CEF on the linux-rel builders by ensuring it gets the same `RUSTFLAGS`. Proof:
```
[larsberg@larsberg servo2]$ ./mach build-cef -r
Compiling embedding v0.0.1 (file:///Users/larsberg/servo2/ports/cef)
Finished release [optimized] target(s) in 35.42 secs
[Warning] Could not generate notification! Optional Python module 'pyobjc' is not installed.
CEF build completed in 0:00:38
[larsberg@larsberg servo2]$
```
Source-Repo: https://github.com/servo/servo
Source-Revision: 9c2610146ae3a61e1da917a9fd5e3902bd267d4a
<!-- Please describe your changes on the following line: -->
Removed duplicate ` #![feature(plugin)]` from two files.
---
<!-- 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#13581 (github issue number if applicable).
<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because it's removing a few lines.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 30cf58eae8ff9a20fef630998311be3e49a479c7
This is step one of a series of changes planned to make the ownership sugar easier to use. This was blocked on #13038
*very* unsure about second commit. Don't like the thought of accepting types with destructors over FFI. Probably will revert it. Leaving it in for now in case you have some insight.
Eventually at least for the borrowed stuff I want to use T directly (because the crates are merged now), instead of the fake void types. Perhaps for the others too. I might include those changes in this PR -- was originally planning to but I realized that these steps could be split out.
Tentative plan for `Owned` (assuming it's not removed) is to have `Owned<T> <-> Box<T>` (same `T`, no "FFI type") conversions. We will only use ownership wrapper types for things with destructors, and try to keep the conversion simple. I'm envisioning a couple methods for arc/strong and a few more for box/owned. We may need to introduce new wrapper types for gecko-side managed objects (`RefPtr<T>`, `UniquePtr<T>`) but that should be all the wrapper types we have in the ownership sugar.
This PR relies on the guarantee that `Option<&T>` and `Option<Box<T>>` are pointer-sized via the `NonZero` optimization. I am now less unconvinced that this is a good idea 😉.
r? @emilio
cc @mystor
Source-Repo: https://github.com/servo/servo
Source-Revision: cbc857bb78fdc5e9221ecdec25c82be7172bab36
Add to_css_single_value for serializing a single PropertyDeclarationBlock
(fixes#13423)
r? @birtles
This needs to take the name of the property in question as input so that it can figure out which shorthand to serialize to (if any), since some props are part of multiple shorthands (and you need a way to distinguish between the lone value and the shorthand). I can tweak this to accept an `Option<Shorthand>` in case you only want to pass in the property name for shorthands.
In case you don't want to handle shorthands at all, we probably don't need this method at all, since you can just assert that there's a single field and serialize that.
Also, is `!important` involved here?
Source-Repo: https://github.com/servo/servo
Source-Revision: 34a23b343c6f60ec060d7ac00cde552246e4af8f
This uses a (very simple) Win32 API call to enumerate font
families available, and load them as byte buffers.
The font rasterization itself is done by freetype.
This gets Servo + WR + Windows working, but should be improved
by adding a proper implementation that matches fonts correctly
and also uses DirectWrite (or GDI) to handle font rasterization.
Source-Repo: https://github.com/servo/servo
Source-Revision: eb3333eb2f6dbac75ecf23e84cbb12149b3dc969
<!-- Please describe your changes on the following line: -->
Moved assertion that we are the lock owner to after the lock release. The problem is that Servo uses a reentrant lock for logging, so logging in the middle of mutating the lock is A Bad Idea.
While I was at it, I tidied up the reentrant lock code.
cc @jdm
---
<!-- 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#13463.
- [X] These changes do not require tests because they fix an existing intermittent.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 318b23ed0047cc39625ca2f33a55d647b5886019
<!-- Please describe your changes on the following line: -->
As part of #13127.
cc @aneeshusa
---
<!-- 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
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: 19a5a30113c3b58d69b6010c79db35b9bd8978c9
<!-- Please describe your changes on the following line: -->
As discussed in https://bugzilla.mozilla.org/show_bug.cgi?id=1305141Closes#13176
---
Original PR title: Stop relying on `impl<T: HeapSizeOf> HeapSizeOf for Arc<T>`
https://github.com/servo/heapsize/issues/37#issuecomment-249861171
This builds on top of that.
---
<!-- 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
- [x] These changes do not require tests because refactor
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: aea9545e16fd6ea4a6b1234d1b969457313a5fa7
--HG--
rename : servo/components/style/domrefcell.rs => servo/components/script/dom/bindings/cell.rs
<!-- 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-geckolib` does not report any errors
- [x] `./mach test-tidy` does not report any errors
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
r? @Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: b772f4335ee82007afe26fa58dd94d097d6135ba
<!-- 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#13481 (github issue number if applicable).
<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
Source-Repo: https://github.com/servo/servo
Source-Revision: d42235ee905acf6bea7f5983c77124b8be9656fc