bors-servo
1a021f6635
auto merge of #4523 : pcwalton/servo/text-rendering, r=mbrubeck
...
Like Gecko, we treat `geometricprecision` the same as
`optimizelegibility` for now.
r? @mbrubeck
2015-01-08 13:48:53 -07:00
Patrick Walton
53b74ae853
layout: Implement text-rendering
per SVG 1.1 § 11.7.4.
...
Like Gecko, we treat `geometricprecision` the same as
`optimizelegibility` for now.
2015-01-08 12:32:58 -08:00
bors-servo
1458709247
auto merge of #4558 : mrobinson/servo/compositor-message-renames, r=zwarich
...
These names no longer reflect what the messages do, so rename them to
SetFrameTree, AssignPaintedBuffers, and CreateOrUpdateBaseLayer.
2015-01-08 12:36:53 -07:00
Matthew Rasmus
a3fc3a1581
Allow missing_copy_implementations
2015-01-08 08:51:11 -08:00
Matthew Rasmus
c9325c9711
Fix use {f32,f64}::consts
warning
2015-01-08 08:51:10 -08:00
Matthew Rasmus
9881ecf8e2
Fix string::raw::from_buf
deprecation warning
2015-01-08 08:51:10 -08:00
Patrick Walton
899c9429d0
layout: Implement pointer-events: none
per SVG 1.1 § 16.6.
...
SVG-only values are not yet supported.
2015-01-08 08:32:26 -08:00
Ms2ger
5f31da82bd
Remove if_let feature gates.
...
This feature is now supported unconditionally.
2015-01-08 17:26:06 +01:00
Ms2ger
16c7060bc8
Update rustc to revision 2cfb5acb5a2751c759627377e602bac4f88f2d19.
2015-01-08 09:58:46 -05:00
Martin Robinson
ad751e4926
Rename Compositor messages SetIds and Paint
...
These names no longer reflect what the messages do, so rename them to
SetFrameTree and AssignPaintedBuffers.
2015-01-06 07:23:26 -08:00
Martin Robinson
0d164712b7
Make initialize_layers a PaintTask method
...
This simplifies calling it substantially. Also avoid unnecessarily
changing the PaintTask epoch when we don't have paint permission.
2015-01-05 13:35:15 -08:00
Ms2ger
c4e44b568a
Remove the unused native argument from spawn_named_with_send_on_failure.
2015-01-05 08:58:00 +01:00
Patrick Walton
bf540d590a
layout: Explicitly thread border box dimensions and relative offsets
...
through display list building.
The old `flow_origin` concept was ill-defined (sometimes the border box
plus the flow origin, sometimes including horizontal margins and
sometimes not, sometimes including relative position and sometimes not),
leading to brittleness and test failures. This commit reworks the logic
to always pass border box origins in during display list building.
2015-01-04 17:43:05 -08:00
Patrick Walton
5ea2c6dcfd
layout: Paint stacking contexts' overflow areas properly.
...
This was making `box-shadow` not show up in many cases, in particular,
but the effects were not limited to that.
2015-01-04 17:41:59 -08:00
Ms2ger
04eb923da9
Remove dependencies on the native crate.
2015-01-04 16:28:02 +01:00
Ms2ger
1130c1dced
Qualify PixelsByColorType.
2015-01-04 15:18:19 +01:00
Ms2ger
d759b07299
Qualify libstyle enums.
2015-01-04 15:04:35 +01:00
Ms2ger
9068e62f2a
Qualify Azure enums.
2015-01-04 15:04:26 +01:00
Ms2ger
be5e9b4278
Remove some obsolete formatting traits.
2015-01-04 11:59:51 +01:00
Ms2ger
121904dd89
Slice some fixed-size arrays.
2015-01-04 11:59:50 +01:00
Ms2ger
138081ba25
Rename the PaintState variants.
2015-01-04 11:59:49 +01:00
Ms2ger
4d47817bae
Rename TimeProfilerCategory variants.
2015-01-04 11:59:23 +01:00
Ms2ger
de0caf8761
Rename constellation_msg::Msg variants.
2015-01-04 11:59:21 +01:00
Ms2ger
d5cc791d31
Rename paint_task::Msg variants.
2015-01-04 11:06:07 +01:00
bors-servo
e8fac3681b
auto merge of #4535 : servo/servo/pre-rustup_20141221, r=jdm
...
This prepares for the rust upgrade currently being conducted.
2015-01-03 14:39:46 -07:00
Martin Robinson
c0b397322f
Stall PaintTask exit until it can release all buffers
...
It is possible for a PaintTask to start exiting soon after sending new
buffers to the compositor. In that case, the compositor should return
the now unnecessary buffers to the PaintTask so that it can properly
free them.
To accomplish this, the compositor now keeps a hash map of paint task
channels per pipeline id. When a PaintTask exists, the constellation
informs the compositor that it can forget about it. Additionally, the
PaintTask should not wait for any buffers when the engine is doing a
complete shutdown. In that case, the compositor is already halted and
has simply let all buffers leak. We pipe through the shutdown type when
destroying the pipeline to make this decision.
Fixes #2641 .
2015-01-02 15:20:32 -08:00
Ms2ger
b51e83819d
Fix obsolete format traits.
...
They are to be removed from the language in the next rust upgrade.
2015-01-02 19:04:18 +01:00
bors-servo
5d8ec54959
auto merge of #4487 : Ms2ger/servo/gfx-test, r=jdm
...
Note that I had to change some expectations to make them pass.
2014-12-30 09:03:45 -07:00
Ms2ger
67eafea8ef
Reformat the transform_text tests.
2014-12-30 10:11:40 +01:00
Benjamin Peterson
28fa83e36b
use geom::num::Zero rather than the deprecated num::Zero trait in std
...
This fixes the following warning:
display_list/mod.rs:735:20: 735:30 warning: use of deprecated item: Use `Int::zero()` or `Float::zero()`., #[warn(deprecated)] on by default
display_list/mod.rs:735 let zero = Zero::zero();
^~~~~~~~~~
2014-12-29 18:30:16 -06:00
Ms2ger
767d0e11bf
Cleanup the transform_text tests.
2014-12-28 12:03:25 +01:00
Ms2ger
aa18c84f0c
Re-enable two transform_text unit tests.
...
Note that I had to change some expectations to make them pass.
2014-12-27 16:14:32 +01:00
Manish Goregaokar
e973213606
gfx: to_string() -> into_string()
2014-12-27 14:48:35 +01:00
Patrick Walton
cc7cacfd5f
gfx: Clip the background properly when border-radius
is used.
...
Improves Reddit, GitHub, etc.
2014-12-22 14:48:55 -08:00
Patrick Walton
b22b29533a
gfx: Fix a nasty bug whereby the transient clip was not always removed,
...
causing elements to be randomly clipped out.
Improves Wikipedia, Reddit, etc.
2014-12-22 14:48:55 -08:00
Patrick Walton
dea8375613
gfx: Refactor the border drawing code and split out fragment display
...
list building into multiple functions.
This should have no functional changes; it's just code cleanup.
2014-12-22 14:48:55 -08:00
Adenilson Cavalcanti
4bfe134c84
Similar to groove/ridge case, inset/outset would scale the color to
...
decorate the border. Scale fails when the color is black (i.e. zero),
thus this patch will fix this issue by using a fixed color.
2014-12-18 13:54:32 -08:00
Tetsuharu OHZEKI
a590012322
gfx: Remove glob imports added in #4405
2014-12-19 00:54:50 +09:00
Simon Sapin
bf4480bb79
Simplify util::range::RangeIndex to always require std::num::Int,
...
and fix remaining warnings.
2014-12-18 11:34:23 +00:00
Simon Sapin
084a63df45
Remove usage of the deprecated std::num::Zero trait.
2014-12-18 11:16:47 +00:00
Patrick Walton
7371e0b8e3
compositing: Implement cursor
per CSS3-UI § 8.1.1 in the CEF/Mac port.
...
I'm not sure how we want to handle Linux cursors, and GLFW has no
ability to set cursors (short of disabling it and managing it yourself).
2014-12-17 22:58:52 -08:00
Ms2ger
466faac2a5
Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d.
2014-12-17 15:19:45 -05:00
Adenilson Cavalcanti
0e24194d81
Inset and outset border coloring is incorrect on left side border.
...
This patch will fix this issue.
2014-12-16 12:01:43 -08:00
Patrick Walton
3ba0abd8ff
gfx: Implement box-shadow
per CSS-BACKGROUNDS.
2014-12-15 13:39:06 -08:00
Patrick Walton
6943ddb93e
layout: Implement overflow-wrap
/word-wrap
per CSS-TEXT § 6.2.
...
This property is used by approximately 55% of page loads.
To implement the line breaking behavior, the "breaking strategy" has
been cleaned up and abstracted. This should allow us to easily support
other similar properties in the future, such as `text-overflow` and
`word-break`.
2014-12-13 13:05:05 -08:00
Patrick Walton
106fdb1d32
layout: Implement word-spacing
per CSS 2.1 § 16.4.
...
This assumes that there are no ligatures that span across multiple
words. Since we have a per-word shape cache, this is a safe assumption
as of now. I have left comments to ensure that, if and when this is
revisted, we make sure to handle it properly.
2014-12-12 17:55:11 -08:00
Adenilson Cavalcanti
00f1ae0a1d
Restored older behavior for lighter color, should fix
...
the regression.
2014-12-12 13:51:25 -08:00
Adenilson Cavalcanti
fcc0229d5e
Groove and Ridge rendering shows a solid border when color is black,
...
that is broken and the current patch will implement a similar behavior
as Firefox.
2014-12-12 13:50:40 -08:00
Patrick Walton
07bc97e3e2
gfx: Implement letter-spacing
per CSS 2.1 § 16.4.
...
The ligature disabling code has been manually verified, but I was unable
to reftest it. (The only way I could think of would be to create an
Ahem-like font with a ligature table, but that would be an awful lot of
work.)
Near as I can tell, the method used to apply the spacing (manually
inserting extra advance post-shaping) matches Gecko.
2014-12-12 11:43:43 -08:00
Joseph Crail
c254d195ad
Fix spelling mistakes in comments.
2014-12-11 23:56:29 -05:00