Commit graph

737 commits

Author SHA1 Message Date
Anthony Ramine
38a79e4506 Update Rust to 1.11.0-nightly (ad7fe6521 2016-06-23)
I also properly bump any dependency related to the serde_macros removal
from webrender_traits
2016-06-27 14:13:44 +02:00
Anthony Ramine
abfd52a721 Reorder dependencies 2016-06-26 17:11:27 +02:00
Ms2ger
7d1421bd83 Move ChromeToPaintMsg to gfx_traits.
This allows compositing not to depend on gfx.
2016-06-24 14:57:10 +02:00
Simon Sapin
ea73c8efac Make it possible to build the style_traits crate with a stable compiler.
Testing this on CI to make sure we don’t regress it is blocked on #11806
2016-06-22 15:40:53 +02:00
Ms2ger
e5cab36671 Move ByteIndex to gfx_traits. 2016-06-20 19:02:35 +02:00
Keith Yeung
d66a04ea6c Update string_cache to v0.2.20 2016-06-20 12:17:28 +08:00
Patrick Walton
041cfe6d0a script: When using WebRender, keep the DOM-side scroll positions for
elements with `overflow: scroll` up to date, and take them into account
when doing hit testing.

Closes #11648.
2016-06-10 18:43:04 -07:00
Anthony Ramine
b97c7a8c4d Don't load all font faces sources
We stop at the first one we manage to load.
2016-06-10 21:51:06 +02:00
Ms2ger
c2e8916168 Move LowercaseString near its only consumer. 2016-06-06 08:54:35 +02:00
Ms2ger
db5ddb561c Reduce the scope of the allowed unsafe code in gfx::text. 2016-06-05 12:31:55 +02:00
Ms2ger
75ea39c709 Remove an obsolete comment in gfx::text. 2016-06-05 12:31:54 +02:00
Ms2ger
50e1e8bf02 Make the gfx::platform module private. 2016-06-05 12:31:53 +02:00
Ms2ger
2767133ff3 Move c_str_to_string to its only consumer. 2016-06-05 12:31:52 +02:00
Ms2ger
24546b4da2 Use snake case in freetype. 2016-06-05 11:47:12 +02:00
Ms2ger
32842d5c42 Remove the paint shutdown channel.
Nobody is listening.
2016-06-04 13:24:44 +02:00
bors-servo
6581e3504a Auto merge of #11585 - asajeffrey:constellation-avoid-deadlock-during-pipeline-closure, r=larsbergstrom
Avoid deadlock when closing a pipeline.

<!-- Please describe your changes on the following line: -->
At the moment, the constellation blocks on a pipeline during closure. This PR makes pipeline closure asynchronous.

---
<!-- 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 #11546.
- [X] These changes do not require tests because testing for absence of deadlock is difficult.

<!-- 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="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11585)
<!-- Reviewable:end -->
2016-06-03 22:22:49 -05:00
Alan Jeffrey
2416072dc2 Avoid deadlock when shutting down. 2016-06-03 20:05:37 -05:00
Ms2ger
400e1b8428 Remove support for gpu painting.
Fixes #3614.
Fixes #4683.
Fixes #7366.
2016-06-03 14:58:49 +02:00
Patrick Walton
a86f77e36d script: Keep the DOM-side viewport up to date when scrolling happens in
WebRender.

This happens asynchronously, just as it does in non-WebRender mode.

This functionality is a prerequisite for doing proper display-list-based
hit testing in WebRender, since it moves the scroll offsets into Servo
(and, specifically, into the script thread, enabling iframe event
forwarding) instead of keeping them private to WebRender.

Requires servo/webrender_traits#55 and servo/webrender#277.

Partially addresses #11108.
2016-05-31 14:12:51 -07:00
Josh Matthews
3cb8af20c2 Remove empty lines following braces. 2016-05-27 13:32:05 -04:00
Cullen Rhodes
40acd24e8f Report use statements that use {} with only one entry 2016-05-27 10:18:44 +01:00
bors-servo
2acb257a82 Auto merge of #11394 - mbrubeck:stacking-context-id, r=pcwalton
Reduce the size of StackingContextId

r? @pcwalton

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11394)
<!-- Reviewable:end -->
2016-05-26 07:25:58 -05:00
Rahul Sharma
6a0dde6485 Bump string-cache to 0.2.18 2016-05-25 14:35:36 +05:30
Matt Brubeck
f967d5a645 Reduce the size of StackingContextId 2016-05-24 15:50:38 -07:00
bors-servo
aa9f50a1d4 Auto merge of #11303 - mbrubeck:last-resort, r=pcwalton
Always include the last-resort font

This is used as a fallback for any characters that don't have glyphs in the specified font.  Without this, per-glyph font fallback doesn't work because the FontGroup always contains only one font.  Fixes missing glyphs on many pages on my Linux box.

As a follow-up, we should probably have a smarter strategy for finding fallback fonts, possibly varying by script.  (Currently we just have a few hard-coded family names.)

r? @glennw

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11303)
<!-- Reviewable:end -->
2016-05-24 10:39:44 -07:00
Matt Brubeck
e588943b4f Always include the last-resort font
This is used as a fallback for any characters that don't have glyphs in the
specified font.
2016-05-24 08:30:44 -07:00
Matt Brubeck
43e12f7eba Don't create HarfBuzz shaper if it isn't used
Move the fast shaping code out of the HarfBuzz shaper, and initialize the
shaper lazily to avoid creating any HarfBuzz objects.
2016-05-23 11:46:16 -07:00
Matt Brubeck
7bf6a41553 Remove unused FontShapingOptions field from Shaper 2016-05-23 11:26:39 -07:00
Keith Yeung
b2ae32917b Update string_cache to 0.2.17 2016-05-23 09:19:14 -04:00
bors-servo
1a34137ac4 Auto merge of #10961 - creativcoder:custom_response_iface, r=jdm
adding interface for custom responses

Fixes #10960

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10961)
<!-- Reviewable:end -->
2016-05-21 01:12:54 -07:00
bors-servo
c0c70ef094 Auto merge of #11273 - mbrubeck:fast-shape, r=pcwalton
Add a fast path for shaping ASCII text

On both my Linux laptop and iMac, this is about twice as fast as Harfbuzz text shaping on https://en.wikipedia.org/wiki/Barack_Obama.

I haven't tested this on any high-DPI (retina) displays, and I'm not 100% certain that the font unit scaling is correct there.

Depends on servo/core-text-rs#50.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11273)
<!-- Reviewable:end -->
2016-05-20 17:58:23 -07:00
Matt Brubeck
5991afafa4 Add a fast path for shaping ASCII text 2016-05-20 16:47:01 -07:00
Ms2ger
36b6f397d4 Simplify PaintThread::create(). 2016-05-20 11:03:39 +02:00
Rahul Sharma
3766cd1673 adding interface for custom responses 2016-05-20 12:11:56 +05:30
Zhen Zhang
a51db4cfa8 Implement trait-based ResourceThreads and clean up related naming issues
Changes include:

- Introduce an IpcSend trait to abstract over a collection of IpcSenders
- Implement ResourceThreads collection to abstract the resource-related
  sub threads across the component
- Rename original ResourceThread and ControlMsg into an unifed CoreResource__
  to accommodate above changes and avoid confusions
2016-05-20 08:00:16 +08:00
Matt Brubeck
477258f11b Simplify FontHandle::new_from_template 2016-05-19 09:44:56 -07:00
Matt Brubeck
1a61273e1e Make FontHandle fields private 2016-05-19 09:44:56 -07:00
Matt Brubeck
7f6b1da85c Allow creation of unboxed FontTables 2016-05-19 09:44:56 -07:00
Matt Brubeck
0010b448b8 Move hb_tag! macro and KERN into font module 2016-05-19 09:44:56 -07:00
Matt Brubeck
1eab6fbb2e Simplify FontTableMethods::with_buffer 2016-05-19 09:44:56 -07:00
Ms2ger
cc2b2b50a7 Remove ConstellationChan.
It's a pointless abstraction that propagates the obsolete chan terminology,
swaps the order in which the sender and receiver are returned, and hides a
source of panics.
2016-05-19 17:13:44 +02:00
Bobby Holley
b521c293dc Add string_cache override for geckolib based on gecko atoms.
The work in these patches is based on Ms2ger's gecko-atom crate.
2016-05-18 11:33:38 -07:00
Anthony Ramine
b9cda99ca5 Update internal crates to bitflags 0.7 2016-05-17 23:34:04 +02:00
Anthony Ramine
d580226a9c Reorder dependencies in many Cargo.toml files 2016-05-17 23:34:02 +02:00
Ms2ger
a732c3ff76 Simplify FontContext::create_layout_font. 2016-05-17 14:08:43 +02:00
Matt Brubeck
07f213cb87 Fix unused item warning on 32-bit platforms 2016-05-16 11:45:27 -07:00
Per Lundberg
2f7ed1d73e Removed unused imports
This fixes #11185.
2016-05-15 22:24:26 +03:00
Matt Brubeck
d2717c4475 Eliminate unneeded clones in find_or_create
...and use it to eliminate duplicate hash lookups and string copies in shape_text.
2016-05-13 18:20:25 -07:00
Matt Brubeck
1c5ec6f3ec Make some Font fields private 2016-05-13 16:33:20 -07:00
Matt Brubeck
4361f92067 Remove unnecessary ServoFont type alias 2016-05-13 16:20:59 -07:00