Bryan Bell
d539b9b2e6
gfx: Border radius support for asymmetric borders
...
This change adds support for calculating the correct angle in the border
corner arc when switching from one border to another e.g. the left border
to the top border.
When the border-top/right/bottom/left-widths are not the same, the angle on
the border corner arc separating the borders isn't pi/4.
For example, if the top border width is much larger than the left border
width then most of the border corner should be drawn using the top
border color.
Elliptical border radii are supported for when elliptical border radii are
added.
The common case where borders have the same width sets the angle to
pi/4 directly.
A ref test is also included.
2015-08-31 13:02:05 -07:00
Johann Tuffe
ec07178b6f
sort all uses
2015-08-20 20:47:12 +08:00
bors-servo
f4b526cfb4
Auto merge of #7222 - pcwalton:dashed-border-radius, r=glennw
...
gfx: Paint dashed borders with nonzero radii the same way Gecko does.
It's not ideal, but it was easy to implement and will do for now.
Closes #7157 .
r? @glennw
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7222 )
<!-- Reviewable:end -->
2015-08-17 16:53:58 -06:00
Josh Matthews
8bb853f643
Fix existing syntactics nits.
2015-08-16 10:30:43 -04:00
João Oliveira
0038580abf
Replace uses of for foo in bar.iter()
and for foo in bar.iter_mut()
...
closes #7197
2015-08-15 02:27:39 +01:00
Patrick Walton
3f4487d81d
gfx: Paint dashed borders with nonzero radii the same way Gecko does.
...
It's not ideal, but it was easy to implement and will do for now.
Closes #7157 .
2015-08-14 16:42:47 -07:00
Matt Brubeck
3b6dc09e47
Snap rectangles to nearest pixels consistently.
...
Snapping the top-left and bottom-right corners separately can cause a
rectangle to change size when offset by a subpixel amount. Instead, this
patch snaps the top-left corner, then rounds the size to a whole pixel amount,
so any rectangle of a given size will always have the same snapped size.
Fixes #7152 .
2015-08-11 10:30:32 -07:00
Matt Brubeck
8a09f738d4
Replace Arc<Box<TextRun>> with Arc<TextRun>
2015-08-05 18:28:20 -07:00
David Zbarsky
9fbe33b6f2
Implement strokeRect with zero-width or zero-height rects
2015-08-04 17:44:18 -04:00
Matt Brubeck
dfac8ce4a1
Basic support for bidirectional text
2015-07-23 20:05:55 -07:00
Michael Tremel
ff915ae86e
Remove unused mut.
2015-07-14 22:16:44 -07:00
Patrick Walton
352ad53775
gfx: Round out when snapping rects to the nearest pixel.
...
Fixes `insert-inline-in-blocks-n-inlines-end-001` in the WPT tests.
2015-07-07 15:01:17 -07:00
bors-servo
ae01e97efa
Auto merge of #6487 - pcwalton:background-tiling, r=glennw
...
gfx: Use a pattern instead of tiling images manually.
r? @SimonSapin
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6487 )
<!-- Reviewable:end -->
2015-07-07 05:42:07 -06:00
Patrick Walton
3500af37d0
gfx: Use a pattern instead of tiling images manually.
2015-07-07 10:41:47 -07:00
Glenn Watson
83301ebb75
Add servo Image type. Remove rust-png dependency from script, gfx, layout.
2015-07-07 08:45:01 +10:00
Ms2ger
d4888dbd4d
Fix build warnings.
2015-07-04 14:33:18 +02:00
Glenn Watson
39ddbbb0e1
Implement enough of 3d transforms spec to run the CSS FPS demo.
2015-06-23 14:10:44 +10:00
ecoal95
8cbfb3482c
Use euclid from crates.io
2015-06-19 00:04:24 +02:00
Hyowon Kim
2e230bdb93
Implement fill and stroke functions for all pattern types and check the zero size gradient.
2015-06-17 09:46:38 +09:00
Corey Farwell
5c408d2be9
rust-geom API changes
...
https://github.com/servo/rust-geom/pull/81
2015-06-13 12:28:21 -07:00
Corey Farwell
435e551753
Remove get_
prefix on getters
...
Part of #6224
I certainly didn't remove all of them; I avoided `unsafe` areas and also `components/script`
2015-06-02 08:54:44 -04:00
Mátyás Mustoha
f4c0bd3b80
Turn off default antialiasing for most DrawOptions.
2015-05-28 18:42:16 +02:00
Mátyás Mustoha
adef44183d
Enable antialiasing for the canvas.
2015-05-28 11:10:57 +02:00
Corey Farwell
8e3f4bba85
Reduce max line length from 150 to 120 characters
...
Part of https://github.com/servo/servo/issues/6041
2015-05-24 00:01:49 -04:00
ecoal95
3350522306
Layerize canvas
...
Note that this keeps using readback right now, `NativeSurface` painting
will be implemented soon.
Also see https://github.com/servo/servo/issues/6142
2015-05-20 19:10:50 +02:00
Simon Sapin
908be6abc2
Rename some to_azure* methods according to what they do.
2015-05-05 20:13:30 +02:00
Simon Sapin
6bf830f663
Remove some unnecessary casts.
2015-05-05 20:11:26 +02:00
Simon Sapin
8b522f2e7d
Rename Au methods with f32/f64 instead of frac32/frac/subpx
2015-05-05 18:23:29 +02:00
Simon Sapin
ef8edd4e87
Upgrade to rustc 551a74dddd84cf01440ee84148ebd18bc68bd7c8.
2015-05-05 10:07:34 -04:00
Ms2ger
903305416a
Implement Clone for Copy types.
2015-04-28 23:31:10 +02:00
Patrick Walton
48299a53cb
layout: Implement most of border-collapse
per CSS 2.1 § 17.6.2.
...
Known issues:
* Collapsed borders do not correctly affect the border-box of the table
itself.
* The content widths of all cells in a column and the content height of
all cells in a row is the same in this patch, but not in Gecko and
WebKit.
* Corners are not painted well. The spec does not say what to do here.
* Column spans are not handled well. The spec does not say what to do
here either.
2015-04-27 17:12:07 +02:00
Ms2ger
6a55ae06d7
Remove some as_slice calls.
2015-04-24 17:44:47 +02:00
Adenilson Cavalcanti
2c7edeb2bf
Renaming the color function to just *transparent*,
...
as suggested on review.
2015-04-22 14:51:39 -07:00
bors-servo
1fd6a48cca
Auto merge of #5546 - Adenilson:blurFilter01, r=pcwalton
...
See discussion on #5190 and #5496 .
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png " height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5546 )
<!-- Reviewable:end -->
2015-04-15 18:56:49 -05:00
Adenilson Cavalcanti
05dd176186
Implementing Blur filter.
2015-04-15 16:15:21 -07:00
Aneesh Agrawal
5b593a3d32
Switch Arc<Box<Image>> to Arc<Image> for perf boost.
...
Image used to be a trait, but no longer is, so boxing it is no longer
necessary.
2015-04-10 18:59:02 -04:00
Josh Matthews
a68fa74f4b
Remove int_uint feature from gfx.
2015-04-07 11:58:28 -04:00
Gilles Leblanc
ba36a108c1
Split out shared networking code into net_traits crate
...
Fixes #4476
2015-04-03 13:38:10 -04:00
Ms2ger
43ed033eff
Use isize/usize in range.
2015-03-28 15:36:36 +01:00
Ms2ger
5f15eb5fbf
Upgrade rustc to d3c49d2140fc65e8bb7d7cf25bfe74dda6ce5ecf/rustc-1.0.0-dev.
2015-03-18 13:18:31 -04:00
Patrick Walton
09c53f461d
layout: Implement image-rendering
per CSS-IMAGES-3 § 5.3 and
...
`background-size` per CSS-BACKGROUNDS § 3.9.
Nearest neighbor interpolation is used for `crisp-edges`, like Firefox.
A note has been added that we could do better if we wanted to.
Multiple backgrounds are not yet supported.
2015-03-03 17:54:12 +01:00
Patrick Walton
09358b908d
layout: Implement text-shadow
per CSS-TEXT-DECORATION-3 § 4.
2015-03-02 13:28:51 -08:00
Andreas Gal
ad5671bc14
Use cleaner StrokeOptions interface introduced by https://github.com/servo/rust-azure/pull/145 .
2015-02-20 14:56:23 -08:00
Adenilson Cavalcanti
ffa62c9688
Companion single Color patch.
...
This will also update the rust-azure dependency
to point to the hash where we have a single Color type.
Just executed ref-tests and no regressions found.
2015-02-13 14:49:28 -08:00
Ms2ger
a09a912178
Import net as net rather than servo_net.
2015-02-10 12:55:24 +01:00
Adenilson Cavalcanti
7a36634963
Using the equality operator in PaintContext. Pay attention this
...
is a change on behavior as we previously didn't test for alpha
channel.
2015-02-03 18:51:50 -08:00
Adenilson Cavalcanti
ffa23088ff
Using the new transparent_black() in the proper places.
2015-02-03 18:08:30 -08:00
Martin Robinson
8855a25780
Revert "Using Color equality operators to streamline code"
2015-02-03 15:07:30 -08:00
Adenilson Cavalcanti
cc404aba1a
Using Color equality operators to streamline code in
...
PaintContext and LayoutTask.
2015-02-03 11:03:09 -08:00
Adenilson Cavalcanti
10418a0ea1
Using color helpers in Compositor and PaintContext
...
(plus added TODO related to equality operators).
2015-02-02 14:49:26 -08:00