Commit graph

1570 commits

Author SHA1 Message Date
Glenn Watson
1da9dc99b5 Update WR (render notifier API changes). 2017-10-24 09:22:21 +10:00
Josh Matthews
99b5eac393 Update webrender for latest RenderNotifier changes. 2017-10-23 11:03:57 +10:00
Glenn Watson
6ec5fad7cb Update WR (hit test relative point, query feature) 2017-10-17 13:42:35 +10:00
bors-servo
e8a6f2862c Auto merge of #18875 - servo:stable-js, r=nox,jdm
Remove the need for rust-mozjs to use unstable Rust features

<!-- 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/18875)
<!-- Reviewable:end -->
2017-10-16 17:07:50 -05:00
bors-servo
3209d22968 Auto merge of #18592 - MortimerGoro:dom_texture, r=jdm
Implement DOM to texture

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

This is a prototype of the WebGL DOMToTexture feature. The API should be fine as a privileged extension for now due to security concerns. The working group has been investigating the viability of unprivileged usage but the spec is not ready yet.

Demo video: https://www.youtube.com/watch?v=hpZqEM5hPao

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

<!-- 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/18592)
<!-- Reviewable:end -->
2017-10-16 15:36:42 -05:00
Imanol Fernandez
8ae0739bab Implement DOM to texture 2017-10-16 20:56:53 +02:00
Simon Sapin
bffec1c1a1 Make usage of unstable feature on_unimplemented optional. 2017-10-16 20:20:18 +02:00
Glenn Watson
4469f39f3f Update WR (details below):
* Add support for clip masks on text runs.
* Fix atomic ordering of items with multiple shadows.
* Update to bincode + ipc-channel with optimizations.
* Fix some plane splitting precision errors.
* Improve the anti-aliasing quality significantly.
* Add internal ClipChain support.
* Fix diacritic glyphs on Linux.
2017-10-16 16:33:24 +10:00
Simon Sapin
e13ae77daf Remove usage of unstable feature "raw" 2017-10-13 11:11:07 +02:00
Simon Sapin
4594b40238 Use wrappers in the nonzero crate so users don’t need unstable features 2017-10-13 11:11:05 +02:00
Simon Sapin
7ebedd02a9 Use NonZeroUsize in script_layout_interface 2017-10-13 11:11:02 +02:00
Simon Sapin
d6d772eba0 Make use of unstable alloc_jemalloc crate optional 2017-10-13 11:11:00 +02:00
Simon Sapin
d9a311963f Make usage of simd in gfx optional 2017-10-13 11:10:58 +02:00
Simon Sapin
5e72173e8c Use NonZeroU32 in canvas_traits 2017-10-13 11:10:57 +02:00
Simon Sapin
ecf3b05153 Use NonZeroUsize in remutex 2017-10-13 11:10:55 +02:00
Simon Sapin
57709dc0bf Use the new nonzero crate in the msg crate 2017-10-13 11:10:16 +02:00
Simon Sapin
faff7806b9 Remove default features in components/servo
They are covered by ports/servo’s defaults.
2017-10-12 17:19:04 +02:00
Simon Sapin
132b540518 Add an 'unstable' top-level cargo feature to control optional unstable stuff. 2017-10-12 17:19:03 +02:00
Paul Rouget
8f04b71f3b remove workaround 2017-10-04 05:34:06 +02:00
Imanol Fernandez
e93130026a Implement Gradle flavors 2017-09-30 14:31:22 +02:00
Imanol Fernandez
324e56b3d1 Improve Webrender<->WebGL synchronization 2017-09-20 11:48:11 +02:00
Glenn Watson
b015e93dc5 Update WR (font instance API).
WR now has a concept of font templates and font instances. This
makes the WR font interfaces closer to Cairo and Gecko, and also
makes some future performance optimizations possible.

A font template is the font family, and data backing the font.
A font instance is a reference to a font template and per-instance
options, such as font size, anti-aliasing settings etc.

To update Servo in a minimally invasive way, I added a new font
cache call, that creates a font instance. This means that when
a font is created, and doesn't exist in the cache there are now
two calls to the font cache thread. We could refactor the font
cache to make this work in one call, which we should do in the
future. However, refactoring the font cache is a large chunk of
work by itself. The extra call is only when a font doesn't already
exist in the font context cache, so it should have minimal
performance impact.
2017-08-31 16:10:30 +10:00
Gregory Terzian
6bca3402a6 implement clone for embedder and compositor proxies 2017-08-28 18:39:31 +08:00
Gregory Terzian
01c24e017d move embedder related messages, and window event handling, out of compositor 2017-08-28 18:39:10 +08:00
Glenn Watson
78f73b6d56 Update WR (debugger, renderer API changes). 2017-08-28 12:08:24 +10:00
Jonathan Jayet
1a447c6984 First step toward iOS Support 2017-08-23 17:16:30 +02:00
Glenn Watson
26083b1dca Update WR (new texture cache allocator, shader deinit path). 2017-08-17 20:03:28 +10:00
Imanol Fernandez
703962fe61 Improve WebGL architecture. 2017-08-15 22:14:32 +02:00
bors-servo
74558990b2 Auto merge of #17425 - paulrouget:attach-pipeline-2, r=asajeffrey
cleanup embedder/compositor/constellation/script messages

Fix: #17226 #17200 #17201

This is work in progress. Some tests still fail.
I'd like to get early feedback as it's a pretty large PR.

There is nothing fundamentally new. Basically, I added TopLevelBrowsingContrextId to the relevant messages between the embedder, the compositor and the constellation, and enforced the PipelineId to be attached to each ScriptMsg (see #17201).

I unaliased all the ScriptMsg. It was getting difficult to understand the nature of the message as ScriptMsg was used aliased CompositorMsg sometimes (CompositorMsg is an actually type of message already). I renamed constellation_chan to script_to_constellation_chan, again, for clarification.

This cleanup code is necessary for #15934 and for tabs support.

/cc @asajeffrey can I ask you to look at this? No need for a formal review, I need feedback at this stage.

<!-- 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/17425)
<!-- Reviewable:end -->
2017-08-15 02:20:10 -05:00
Paul Rouget
6876e42d66 rename Browser to Servo as we support multiple browsers 2017-08-15 08:22:11 +02:00
Paul Rouget
d241389129 make use of ScriptToConstellationChan 2017-08-15 08:22:09 +02:00
Paul Rouget
bb3ac8f266 Ability to create new TopLevelBrowsingContext 2017-08-12 09:07:28 +02:00
bors-servo
31582a4874 Auto merge of #18002 - glennw:update-wr-linux-subpx, r=emilio
Update WR (text optimizations, Linux subpixel positioning / rasterization).

<!-- 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/18002)
<!-- Reviewable:end -->
2017-08-08 16:05:54 -05:00
Glenn Watson
f6a9f15fed Update WR.
* CPU text run optimizations.
* Linux subpixel positioning / rasterization.
* Update debug flags API.
* Update to resource transactions API.
2017-08-09 07:05:05 +10:00
Manish Goregaokar
2ebce54d75 Remove testing feature from style crate 2017-08-07 14:30:31 -07:00
Dzmitry Malyshau
101c426eb7 WR multi-document update 2017-07-28 22:28:11 -04:00
Gecko Backout
3f1af3e62f Backed out changeset c424ad1c5f94 for build failures a=backout CLOSED TREE
Backs out https://github.com/servo/servo/pull/17892
2017-07-28 23:21:03 +00:00
Dzmitry Malyshau
8c588e8c36 WR multi-document update 2017-07-28 14:22:36 -04:00
Martin Robinson
e58e8ab42e Upgrade to the latest version of WebRender 2017-07-13 07:44:08 +10:00
bors-servo
ee47fe1925 Auto merge of #17686 - paulrouget:rm_Title, r=jdm
remove the ability to request for the title

If we offer the ability to request info like these, we need to expose a lot of other getters, like url, loading state, favicon, …

It's up to the embedder to keep track of the state of a browser. So let's keep that consistent.

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

<!-- 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/17686)
<!-- Reviewable:end -->
2017-07-12 09:50:45 -07:00
Paul Rouget
88686690e5 remove the ability to request for the title 2017-07-12 05:56:02 +02:00
Tremoneck
6309d516bd Remove set_webrenderer_profiler_enabled in compositing/compositor.rs and servo/lib.rs and inlining this function in compositing/compositor.rs 2017-07-11 09:51:58 +02:00
Bastien Orivel
76d8573393 Bump serde to 1.0 2017-06-16 13:31:18 +02:00
Nicolas Silva
8617320500 Bump euclid to 0.14. 2017-06-14 16:00:59 +02:00
Sadman Kazi
708c561ae6 Pass URL to Browser::new(), delegate url checking logic to third party
Use Option instead of ServoUrl for url in opts

Cleaner mapping from parse_url to url_opt

Add comment about url parsing error

Print reason for parsing error

Remove comment about warning

Add home url when openning new browser window in CEF

Fix merge error
2017-06-08 19:05:39 -07:00
bors-servo
7e273d6c9b Auto merge of #17068 - gterzian:remove_compositorproxy, r=asajeffrey
Separate waking the event loop, from communicating with Compositor

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

@paulrouget first step of #15934, Glutin only for now, please take a look...

If this makes sense, I will also update the code for ports other than Glutin...

One question: one do I add the `warn!` macro to `servolib`? Also perhaps we would also want to add `box`, since I had to switch to using `Box::new`...

---
<!-- 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/17068)
<!-- Reviewable:end -->
2017-06-07 05:52:35 -07:00
Gregory Terzian
3a693c7a23 separate waking the event loop, from communicating with a compositor 2017-06-06 15:46:25 +08:00
Bastien Orivel
0a254b0306 Bump euclid to 0.13 and heapsize to 0.4 2017-06-05 19:28:39 +02:00
Dzmitry Malyshau
b548e6aa1c -Z wr-no-batch option 2017-05-19 21:43:35 -04:00
Paul Rouget
56d645281f make gl context current on browser initialization 2017-05-17 09:25:51 +02:00