Commit graph

16155 commits

Author SHA1 Message Date
bors-servo
e6c4ca4960 Auto merge of #6220 - metajack:task-info-build-cleanup, r=nox
This is the first bit of build cleanup on my quest to make Cargo faster.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6220)
<!-- Reviewable:end -->
2015-06-01 11:04:23 -05:00
ecoal95
eff2bb4310 WebGLRenderingContext getters and getParameter
This implements the `canvas`, `drawingBufferHeight` and
`drawingBufferWidth` getters to `WebGLRenderingContext`, and an initial
version of `getParameter`.
2015-06-01 16:34:51 +02:00
bors-servo
0de09b936e Auto merge of #6183 - ecoal95:webglcontextattributes, r=nox
r? @jdm

I couldn't add the `getContextAttributes` method since `CodegenRust`
doesn't know how to return a dictionary value, I'll take a look at it ASAP.

I think the helper functions can return directly the renderer, since they're used just for that, but I wanted to hear your opinions about this.

By the way I'm interested in adding more serious tests for WebGL, and I think the [khronos conformance suit](https://github.com/KhronosGroup/WebGL/tree/master/conformance-suites/1.0.3) should be the best option.

Should I try to integrate it in wpt, or making a `tests/webgl` directory (or similar) inside the servo tree? (Maybe this question should be for @Ms2ger)

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6183)
<!-- Reviewable:end -->
2015-06-01 08:37:48 -05:00
ecoal95
b3ac346749 Add WebGLContextAttributes support
This commit also:
* Allows to return non-rootable dictionaries from
Codegen.
* Merges the two context types in an enum type.
2015-06-01 15:29:38 +02:00
Hyowon Kim
a512e9e507 Correct the calculation of rects for drawimage. 2015-06-01 15:58:38 +09:00
Tony Baker
262e0efbe1 Update libfontconfig 2015-05-31 17:02:07 -04:00
Philipp Hartwig
2779e0a7ed Restrict output of getElementsByName to HTML elements
https://html.spec.whatwg.org/#dom-document-getelementsbyname
2015-05-31 20:26:47 +02:00
Jack Moffitt
29fcdce5e0 Switch task_info to use modern Cargo tools. 2015-05-29 17:40:15 -06:00
Tony Baker
2ab1051bd9 Update dependencies for js, fontconfig-sys and mozjs_sys 2015-05-29 17:44:00 -04:00
bors-servo
bf4fc6f388 Auto merge of #5972 - pgonda:remove-children-from-doc, r=jdm
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5972)
<!-- Reviewable:end -->
2015-05-29 12:03:28 -05:00
bors-servo
10127d6b5a Auto merge of #6199 - nnethercote:instrument-paint-task-buffer-map, r=pcwalton
Example output from the memory profiler:

```
|       1.04 MiB -- url(http://en.wikipedia.org/wiki/Main_Page)
|          0.26 MiB -- display-list
|          0.78 MiB -- paint-task       # new output line
|             0.78 MiB -- buffer-map    # new output line
```

The buffer maps aren't huge, but they're worth measuring, and it's good
to get the memory profiler plumbing into PaintTask.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6199)
<!-- Reviewable:end -->
2015-05-28 22:45:34 -05:00
Glenn Watson
f47ba6fd33 First step towards 3d transforms.
* Add parser support for 3d transforms.
 * Change ComputedMatrix to a representation that suits interpolation.
 * Switch stacking contexts to use 4x4 matrices.

The transforms themselves are still converted to 2d and handled by azure for now, but this is a small standalone part that can be landed now to make it easier to review.
2015-05-29 09:47:38 +10:00
bors-servo
c97c0a9f94 Auto merge of #6065 - mmatyas:canvas_antialias, r=jdm
This patch turns on antialiasing for the canvas, and updates the painting code to use the updated Azure DrawOptions defined in servo/rust-azure#158.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6065)
<!-- Reviewable:end -->
2015-05-28 14:59:36 -05:00
Mátyás Mustoha
f4c0bd3b80 Turn off default antialiasing for most DrawOptions. 2015-05-28 18:42:16 +02:00
bors-servo
1d9b5ced38 Auto merge of #6200 - nnethercote:sort-memory-sub-trees, r=pcwalton
This puts the larger sub-trees first. E.g. this:
```
|       1.04 MiB -- url(http://en.wikipedia.org/wiki/Main_Page)
|          0.26 MiB -- display-list
|          0.78 MiB -- paint-task
|             0.78 MiB -- buffer-map
```
becomes this:
```
|       1.04 MiB -- url(http://en.wikipedia.org/wiki/Main_Page)
|          0.78 MiB -- paint-task
|             0.78 MiB -- buffer-map
|          0.26 MiB -- display-list
```
This matches how Firefox's about:memory works.

Now that this is done for all sub-trees, the ad hoc sorting done for
Linux segments is no longer necessary, and has been removed.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6200)
<!-- Reviewable:end -->
2015-05-28 11:11:27 -05:00
bors-servo
dddd222d29 Auto merge of #6202 - nnethercote:freetype-fixes, r=jack
Because #6198 wasn't quite right.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6202)
<!-- Reviewable:end -->
2015-05-28 09:04:08 -05:00
bors-servo
df74ed136c Auto merge of #6206 - nox:typeerror-for-unions, r=Manishearth
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6206)
<!-- Reviewable:end -->
2015-05-28 06:24:00 -05:00
Anthony Ramine
2c6d2d3abe Make throw_not_in_union() throw a TypeError (fixes #6194) 2015-05-28 13:03:28 +02:00
bors-servo
2b52006b1c Auto merge of #5981 - Jinwoo-Song:nodeiterator, r=Manishearth
Implement NodeIterator's basic functionality. (Fixes #1235)  But the cases for node removals are not implemented yet. 

r? @jdm 
cc @yichoi

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5981)
<!-- Reviewable:end -->
2015-05-28 05:14:08 -05:00
Jinwoo Song
db25be7bf6 Update NodeIterator code to apply review comments. 2015-05-28 18:37:27 +09:00
Mátyás Mustoha
322fd5ad9d Add disable-canvas-aa option to test runner. 2015-05-28 11:10:58 +02:00
Mátyás Mustoha
adef44183d Enable antialiasing for the canvas. 2015-05-28 11:10:57 +02:00
Nicholas Nethercote
e8fc406520 Reduce unsafe-ness in FontContextHandle::new().
Because `box + boxed::into_raw() + boxed::from_raw` is nicer than
`libc::malloc() + mem::transmute() + ptr::write() + libc::free()`.
2015-05-27 21:50:09 -07:00
Nicholas Nethercote
16ba32521b Don't leak the struct_FT_MemoryRec_.
We libc::malloc() a struct_FT_MemoryRec_ and pass it to FreeType. We
need to libc::free() it as well when FreeType is done with it.
2015-05-27 21:22:11 -07:00
bors-servo
af81db5479 Auto merge of #6198 - Jinwoo-Song:freetype, r=metajack
It is recommended to use FT_Done_Library with FT_New_Library
from freetype document.

Fixes #6191.

r? @jdm @nnethercote 
cc @yichoi

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6198)
<!-- Reviewable:end -->
2015-05-27 21:06:12 -05:00
Nicholas Nethercote
640e68bbbd Recursively sort memory report sub-trees.
This puts the larger sub-trees first. E.g. this:
```
|       1.04 MiB -- url(http://en.wikipedia.org/wiki/Main_Page)
|          0.26 MiB -- display-list
|          0.78 MiB -- paint-task       # new output line
|             0.78 MiB -- buffer-map    # new output line
```
becomes this:
```
|       1.04 MiB -- url(http://en.wikipedia.org/wiki/Main_Page)
|          0.78 MiB -- paint-task       # new output line
|             0.78 MiB -- buffer-map    # new output line
|          0.26 MiB -- display-list
```
This matches how Firefox's about:memory works.

Now that this is done for all sub-trees, the ad hoc sorting done for
Linux segments is no longer necessary, and has been removed.
2015-05-27 18:57:13 -07:00
Nicholas Nethercote
a21f6c407c Measure paint task buffer maps in the memory profiler.
Example output from the memory profiler:

```
|       1.04 MiB -- url(http://en.wikipedia.org/wiki/Main_Page)
|          0.26 MiB -- display-list
|          0.78 MiB -- paint-task       # new output line
|             0.78 MiB -- buffer-map    # new output line
```

The buffer maps aren't huge, but they're worth measuring, and it's good
to get the memory profiler plumbing into PaintTask.
2015-05-27 18:27:18 -07:00
Jinwoo Song
557bb11bde Use FT_Done_Library instead of FT_Done_Freetype
It is recommended to use FT_Done_Library with FT_New_Library
from freetype document.

Fixes #6191.
2015-05-28 10:17:06 +09:00
bors-servo
b1a773a15b Auto merge of #6196 - mbrubeck:metadata, r=SimonSapin
#6088. r? @SimonSapin

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6196)
<!-- Reviewable:end -->
2015-05-27 14:57:41 -05:00
Mike Blumenkrantz
b1ae5e7523 make Opts.url an Option<> type, only emit initial url load if url exists
this is a necessary change for embedded apps to prevent an initial about:blank
page load from overwriting whatever the app was actually trying to load
2015-05-27 14:45:57 -04:00
Mike Blumenkrantz
fcf449517d handle case of deleted pipeline when preparing to send load_end constellation msg 2015-05-27 14:45:56 -04:00
Mike Blumenkrantz
64ff2c4a54 handle early LoadURL messages without panicking by sending initial url load
fixes #6126
2015-05-27 14:45:54 -04:00
Mike Blumenkrantz
68fc51205f add error enum for chromium net errors, create window method for error propagation 2015-05-27 14:45:50 -04:00
Mike Blumenkrantz
0d46a3b89a add navigation state data to LoadComplete messages, finish cef load state cbs 2015-05-27 14:45:48 -04:00
Mike Blumenkrantz
3481c752cd add CompositorMsg::LoadStart, implement cef_load_handler::on_loading_state_change()
only adds the loading:true callback this time...
2015-05-27 14:45:47 -04:00
Mike Blumenkrantz
92d44fb36e send ChangeUrl message from constellation on init 2015-05-27 14:45:41 -04:00
Mike Blumenkrantz
cf388cd909 call compositor.window.set_page_url() on WindowEvent::LoadUrl 2015-05-27 14:45:41 -04:00
Matt Brubeck
0fd9953802 Update azure and its dependencies
Part of #6088
2015-05-27 11:22:45 -07:00
bors-servo
d87af8ac52 Auto merge of #6192 - nox:cleanup-urlsearchparams, r=Manishearth
It now uses rust-url for its serializer.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6192)
<!-- Reviewable:end -->
2015-05-27 05:21:05 -05:00
Anthony Ramine
6802bafc39 Cleanup URLSearchParams
It now uses rust-url for its serializer.
2015-05-27 12:19:16 +02:00
Jinwoo Song
cb2bdf1977 Implement nextNode(), previousNode() and detach() in NodeIterator
First patch to resolve #1235. We need more implementation for handling node removals,
and I'll implement in next patch.
2015-05-27 16:37:30 +09:00
Jinwoo Song
4e8005cd5b Implement Document.createNodeIterator and rebase patch 2015-05-27 16:37:30 +09:00
Jinwoo Song
0e4c792dc5 Implement more NodeIterator attribute and methods
Just implement the skelectons
 - referenceNode attribute
 - nextNode() and previousNode()
2015-05-27 16:37:30 +09:00
Jinwoo Song
2701c264ab Implement NodeIterator's attributes
- root, whatToShow, and filter
2015-05-27 16:37:29 +09:00
bors-servo
df2f8d0636 Auto merge of #6187 - tamird:cleanup-validate-and-extract, r=mbrubeck
Also `debug_assert!`s that `splitn` was called with the
correct `count` argument.

Adaptation of #5778.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6187)
<!-- Reviewable:end -->
2015-05-26 16:29:42 -05:00
bors-servo
54afa01dd6 Auto merge of #6186 - SimonSapin:harfbuzz-crates.io, r=Manishearth
https://github.com/servo/rust-harfbuzz/issues/39
https://www.mail-archive.com/dev-servo@lists.mozilla.org/msg01289.html

r? @Manishearth

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6186)
<!-- Reviewable:end -->
2015-05-26 15:16:40 -05:00
Patrick Walton
05bf2ffd02 script: Address review comments 2015-05-26 11:03:47 -07:00
Patrick Walton
9e34e82aec script: Reflow 200 milliseconds after the <body> is parsed, like Gecko
does.
2015-05-26 10:38:47 -07:00
Tamir Duberstein
a3d463093e Avoid extra O(n) scan in validate_and_extract
Also `debug_assert!`s that `splitn` was called with the
correct `count` argument.
2015-05-26 13:26:26 -04:00
bors-servo
8759d42559 Auto merge of #6168 - tamird:get-cached-messages, r=jdm
Rebase of #4175, closes #4175. r? @jdm

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6168)
<!-- Reviewable:end -->
2015-05-26 10:34:03 -05:00