Commit graph

260 commits

Author SHA1 Message Date
Simon Sapin
ef8edd4e87 Upgrade to rustc 551a74dddd84cf01440ee84148ebd18bc68bd7c8. 2015-05-05 10:07:34 -04:00
Anthony Ramine
1a30925cad Remove Temporary::new()
Temporary::from_rooted() now takes an Assignable value.
2015-04-28 09:22:46 +02:00
Anthony Ramine
7197052c0d Uniformise root() methods
They now live in traits Rootable, OptionalOptionalRootable, OptionalRootable
and ResultRootable.
2015-04-28 09:22:45 +02:00
Ms2ger
a862479ca8 Remove as_slice() calls from script. 2015-04-26 10:52:55 +02:00
Glenn Watson
d8aef7208e Refactored image cache task - details below.
* Simpler image cache API for clients to use.
 * Significantly fewer threads.
   * One thread for image cache task (multiplexes commands, decoder threads and async resource requests).
   * 4 threads for decoder worker tasks.
 * Removed ReflowEvent hacks in script and layout tasks.
   * Image elements pass a Trusted<T> to image cache, which is used to dirty nodes via script task. Previous use of Untrusted addresses was unsafe.
   * Image requests such as background-image on layout / paint threads trigger repaint only rather than full reflow.
 * Add reflow batching for when multiple images load quickly.
   * Reduces the number of paints loading wikipedia from ~95 to ~35.
 * Reasonably simple to add proper prefetch support in a follow up PR.
 * Async loaded images always construct Image fragments now, instead of generic.
   * Image fragments support the image not being present.
 * Simpler implementation of synchronous image loading for reftests.
 * Removed image holder.
 * image.onload support.
 * image NaturalWidth and NaturalHeight support.
 * Updated WPT expectations.
2015-04-23 09:40:24 +10:00
Mátyás Mustoha
a8343a0750 Canvas: implement global composition and blending. 2015-04-22 20:54:27 +02:00
Mátyás Mustoha
6fd6eefb35 Canvas: add clipping path support. 2015-04-22 16:25:02 +02:00
Mátyás Mustoha
5287cb7fba Canvas: implement rectangle drawing. 2015-04-21 15:21:30 +02:00
Diego Marcos
c82485874d Kicks off a WebGL implementation 2015-04-20 14:29:39 -07:00
Mátyás Mustoha
5b8416a2b6 Canvas: implement context state save/restore. 2015-04-19 21:12:13 +02:00
Mátyás Mustoha
350b060189 Add specification links to canvas line cap and line join 2015-04-15 17:40:23 +02:00
Corey Farwell
cc4a64e1fe Add/update comments with links to spec
Extracted out of #5649

* add more hyperlinks to associated specification for structs/methods
* follow redirects and update links
* replace broken links
* removal of WHATWG multipage page name since the page name is not
  guaranteed to be stable
2015-04-14 18:03:13 -04:00
Mátyás Mustoha
ccfff159e7 Canvas: added lineCap and lineJoin support. 2015-04-14 18:26:41 +02: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
bors-servo
325899bfad Auto merge of #5613 - mmatyas:canvas_miterlimit, r=jdm
This exposes some other canvas tests which were marked as PASS before. Two strokeRect related tests are fixed by #5612, and lineCap/lineJoin will have an implementation soon.
2015-04-09 09:37:44 -05:00
Mátyás Mustoha
93fa9e607a Canvas: added miterLimit support. 2015-04-09 13:00:05 +02:00
Mátyás Mustoha
b9244ec1c2 Canvas: moved Rect validation to a common function. 2015-04-09 11:50:31 +02:00
Mátyás Mustoha
5c560397eb Canvas: added support for the globalAlpha attribute. 2015-04-08 11:49:22 +02:00
bors-servo
f57b487e4d Auto merge of #5562 - mmatyas:canvas_linewidth, r=jdm
Rebase of #5488
2015-04-08 00:56:37 -05:00
Diego Marcos
88954e3e18 Implements drawImage for html image as ImageSource 2015-04-07 11:02:50 -07:00
Mátyás Mustoha
6da2ce9b1b Canvas: added lineWidth support. 2015-04-07 16:10:29 +02:00
Eric Hegnes
e398725242 Consistently name enum members in dom::bindings::error::Error
Fixes #5521
2015-04-05 00:09:40 -04:00
Mátyás Mustoha
56303e21cc Canvas: added arcTo() support. 2015-04-01 21:20:05 +02:00
Mátyás Mustoha
0a3b4f2f65 Canvas: arc throws IndexSizeError on negative radius. 2015-03-30 11:05:33 +02:00
Corey Farwell
d838fcce30 Remove some unnecessary uses of as_slice
For the majority of these cases, `as_slice` can be removed due to
`Deref`. In particular, `Deref` for:

* `String` -> `str`
* `Atom` -> `str`

The latter of those two requires, a bump of the locked `string-cache`
library
2015-03-29 14:42:19 -04:00
bors-servo
f29ea4e4ef auto merge of #5302 : mmatyas/servo/canvas_stroke, r=jdm
This is the servo side patch of servo/rust-azure#149.
2015-03-25 07:54:50 -06:00
Mátyás Mustoha
698b88f71d Canvas: added stroke() support. 2015-03-25 12:52:05 +01:00
Tetsuharu OHZEKI
bc06526610 Add guards to almost CanvasRenderingContext2D methods according to the spec.
http://www.w3.org/html/wg/drafts/2dcontext/html5_canvas_CR/ says

"Except where otherwise specified, for the 2D context interface,
 any method call with a numeric argument whose value is infinite or a
 NaN value must be ignored."

We might define the annotation to generate this behavior in glue code.
However, at now, I use this workaround way.
2015-03-25 15:13:34 +09:00
Tetsuharu OHZEKI
05c6d046dd Enable unrestricted types for CanvasRenderingContext2D. 2015-03-25 15:13:33 +09:00
Diego Marcos
e3f5a76baa Implementing canvas drawImage API for HTML Canvas elements as image source 2015-03-24 12:23:15 -07:00
Manish Goregaokar
3479d3fa7f Replace unsafe_blocks by unsafe_code. 2015-03-21 10:27:32 +01:00
bors-servo
2c85c1d312 auto merge of #5251 : mmatyas/servo/canvas_quadratic, r=jdm
Yet another small canvas patch.
2015-03-20 04:27:47 -06:00
Mátyás Mustoha
d3199aef74 Implement gradient fill styles for canvas. 2015-03-19 15:59:08 +01:00
Mátyás Mustoha
2817f2e066 Canvas: implement quadraticCurveTo(). 2015-03-17 16:05:36 +01:00
Mátyás Mustoha
c98bca6130 Canvas: added arc(). 2015-03-09 21:55:40 +01:00
Adenilson Cavalcanti
a2fea4c093 Cleanup compilation warning. 2015-03-02 17:03:06 -08:00
Mátyás Mustoha
774cc4a93a Canvas: added lineTo(). 2015-03-02 21:00:50 +01:00
Patrick Walton
55a0ee6ec7 script: Implement enough 2D canvas support to render basic SVGs such as the tiger. 2015-02-22 22:29:58 -05:00
Edit Balint
325400dce4 Implement Canvas pixel manipulation 2015-02-22 13:41:58 -05:00
Alexandru Cojocaru
685fee02a0 add unwrap to send/recv calls 2015-02-03 16:05:13 +01:00
Tetsuharu OHZEKI
e2bd9eadd8 LayoutJS<T> implements Layout*Helpers instead of JS<T>. 2015-02-01 01:54:37 +09:00
Josh Matthews
95fc29fa0d Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev. 2015-01-28 10:16:49 +10:00
Edit Balint
81f47344d6 CanvasRenderTask connected to Layout
Update rust-azure to f4a02f3f621b0a994a20d42e438371a87c62f898.
2015-01-09 18:53:10 +01:00
Matt McCoy
85df7f0d6f Fixes #4164 Make Constructor and new functions take GlobalRef by value 2015-01-07 18:52:41 -05:00
Ms2ger
986d2b822c Qualify CanvasMsg. 2015-01-04 16:03:55 +01:00
Manish Goregaokar
7d65673561 Remove extra spaces
Command: `find . -maxdepth 1 -type f -print0 | xargs -0 sed -z -i "s/}\\n\\n\\n/}\\n\\n/"`
2014-12-27 02:53:35 +05:30
Manish Goregaokar
552db382d6 Remove manual impls of Reflectors (autogen)
Obtained via:

 `find . -maxdepth 1 -type f -print0 | xargs -0 sed -z -i "s/\\nimpl Reflectable for[^{]*{[^}]*}[^}]*}\\n//"`
 `find . -maxdepth 1 -type f -print0 |xargs -0  grep -lZ dom_struct | xargs -0 grep -LZ  "reflector()\\|Reflector::new" |xargs -0 sed -z -i "s/use dom::bindings::utils::{Reflectable, Reflector, reflect_dom_object};/use dom::bindings::utils::reflect_dom_object;/"`

followed by semi-automated removal of leftover imports
2014-12-27 02:52:33 +05:30
Tetsuharu OHZEKI
71257e6604 Rename CanvasRenderTask -> CanvasPaintTask. 2014-12-08 14:01:07 +09:00
Tetsuharu OHZEKI
062854b164 Rename canvas_render_task -> canvas_paint_task 2014-12-08 11:46:43 +09:00
Michael Booth
2cbf5a3671 Updated reflect_dom_object to be passed by value 2014-11-30 19:47:52 +00:00