Commit graph

7219 commits

Author SHA1 Message Date
bors-servo
4e4a213c73 Auto merge of #9911 - magni-:dont_use_lookup_tables, r=michaelwu
Do not use lookup tables for put_image_data

Fixes #9599

"This is the first Rust code I have ever written" (and also my first time writing real browser code, it's been quite the learning experience).

Some questions:

> For really fast CPU results, use integer SIMD instructions to handle more than one pixel at a time.

This was out of the scope of #9599, right? I started looking into doing that, but it seems to be a lot more work than the `E-easy` label would suggest. [`std::simd`](https://doc.rust-lang.org/1.0.0/std/simd/index.html) is marked as "unstable", is that a blocker?

> 128 can be added before dividing to round more accurately.

@michaelwu, what did you mean by that?

Also, the #9599 is `Do not use lookup tables for {Get,Put}ImageData operations`, but we only use lookup tables for the `Put`, not the `Get`, right?

Sorry for all the noobish questions.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.svg" height="40" alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9911)
<!-- Reviewable:end -->
2016-04-01 23:57:19 +05:30
bors-servo
7d79df4a05 Auto merge of #10304 - Ms2ger:cookie-averse, r=nox
Implement Document::cookie correctly for cookie-averse documents.

<!-- 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/10304)
<!-- Reviewable:end -->
2016-04-01 22:51:51 +05:30
bors-servo
7f06b467a4 Auto merge of #10295 - asajeffrey:remove-constellation-misc-panic, r=nox
Miscellaneous fixes to harden the constellation.

<!-- 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/10295)
<!-- Reviewable:end -->
2016-04-01 19:14:48 +05:30
bors-servo
9f892edd87 Auto merge of #10272 - creativcoder:implement-data-url-fetch, r=jdm
implements data-url fetching

Fixes #10165
jdm mentioned of decoupling the, payload loading mechanism to data_loader.rs. So accordingly a `decoder` method has been added to data_loader.

<!-- 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/10272)
<!-- Reviewable:end -->
2016-04-01 15:12:30 +05:30
Paul Rouget
e51a6309bf Make it possible to use preferences to configure webrender and titlebar 2016-04-01 15:40:31 +08:00
Manish Goregaokar
1aa6d558ac Lock stderr in custom panic handler 2016-04-01 11:20:18 +05:30
Rahul Sharma
3e74164e5f implements data-url fetching 2016-04-01 09:49:08 +05:30
Corey Farwell
ef3c830e61 Add a spec links for <textarea> magic number constants. 2016-03-31 23:42:03 -04:00
Daniel Robertson
7946ebb36a Compute size of the axes of flex containers
Compute the available main and cross size of flex containers, and add a
helper for min/main constraints
2016-03-31 22:53:48 -04:00
Patrick Walton
22a1c112d5 gfx: Simplify complex clipping regions as we construct them.
This allows WebRender to correctly render complex clipping regions that
can be reduced to single rounded rectangles. WebRender still can't
render rounded rectangles with arbitrary intersections yet, but this
allows it to handle many more cases.

Closes servo/webrender#241.
2016-03-31 19:36:40 -07:00
Manish Goregaokar
ed3f7f5818 Skip printing the backtrace for RecvError/SendError
We currently get tons of useless backtraces clogging up the output when we have a panic cascade. This adds a handler that outputs a single line when a thread panics due to a sender or receiver hanging up, since this is almost always due to a panic cascade.
2016-04-01 07:48:07 +05:30
Corey Farwell
bf4db405e4 Remove get_* on getters as per RFC 0344.
https://github.com/rust-lang/rfcs/blob/master/text/0344-conventions-galore.md#gettersetter-apis

https://github.com/servo/servo/issues/6224
2016-03-31 21:12:38 -04:00
bors-servo
f335586ff5 Auto merge of #10292 - jdm:cssom, r=jdm
Initial steps for CSSOM

Squashed and rebased #10133.

<!-- 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/10292)
<!-- Reviewable:end -->
2016-04-01 04:29:08 +05:30
Mohamed Albashir
b7a57ef487 Initial steps for CSSOM API 2016-03-31 18:17:30 -04:00
bors-servo
7518c4de93 Auto merge of #10082 - asajeffrey:remove-constellation-panic, r=glennw
Removed panicking when frame or pipeline lookup fails.

Removed the methods `pipeline(id)`, `pipeline_mut(id)`, `frame(id)` and `frame_mut(id)` from constellation, which panicked when the table lookup failed.

The panics were causing race conditions, e.g. visiting google.com and resizing the page would cause a panic, most likely due to an iframe being added and removed, with the `DOMLoad` event arriving after the iframe had been removed, causing a panic.

This patch fixes #10017 and #8769 (although in non-webrender builds there's now a different panic, see https://github.com/servo/servo/issues/10017#issuecomment-198160200).

There are a few `TODO` items in the initial commit, for cases where it's not completely obvious what to do in the case of failure.

<!-- 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/10082)
<!-- Reviewable:end -->
2016-04-01 03:30:57 +05:30
Alan Jeffrey
df82a5b24f Removed panicking when frame or pipeline lookup fails. 2016-03-31 16:18:36 -05:00
bors-servo
524a004e77 Auto merge of #10291 - jfhumann:10211, r=emilio
<!-- 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/10291)
<!-- Reviewable:end -->
2016-04-01 01:57:20 +05:30
bors-servo
acaac52be7 Auto merge of #10288 - jdm:dictseq, r=nox
Enable dictionaries in WebIDL sequences. Fixes #10282.

r? @nox

<!-- 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/10288)
<!-- Reviewable:end -->
2016-04-01 00:28:13 +05:30
Patrick Walton
c95dbf7776 compositing: Send only one mouse move event if WebRender is in use.
In WebRender mode, we were sending two mouse move events: one with the
proper coordinates and one with the wrong coordinates, because of
incorrect fall-through. The script task would usually (but not always,
depending on timing) ignore the first event in favor of the second
event, resulting in incorrect mouse move event coordinates in most
cases.

Closes servo/webrender#238.
Closes #10298.
2016-03-31 11:26:08 -07:00
bors-servo
84a3dee67e Auto merge of #10302 - emilio:webrender-up, r=nox
Update webrender to master

I'll rebase #10224 against it.

Sorry for the blocking of #10224, I expected it to be reviewed way sooner, my fault for landing breaking changes.

r? @nox or @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/10302)
<!-- Reviewable:end -->
2016-03-31 21:51:06 +05:30
Josh Matthews
2cfedc7288 Report errors from ScriptPort trait methods. 2016-03-31 17:14:23 +02:00
Connor Brewster
f727444a14 Added a mapping between nodes and stylesheets
Changed stylesheets into_iter to iter
2016-03-31 08:22:00 -06:00
Emilio Cobos Álvarez
97f4ef28d4 Update webrender to master
I'll rebase #10224 against it.
2016-03-31 15:49:22 +02:00
bors-servo
3c00aff546 Auto merge of #10285 - nox:devtools-serde, r=Ms2ger
Use serde in devtools

<!-- 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/10285)
<!-- Reviewable:end -->
2016-03-31 18:36:13 +05:30
Anthony Ramine
406273c641 Use serde in devtools 2016-03-31 11:07:18 +02:00
Ms2ger
3c6cc642ee Implement Document::cookie correctly for cookie-averse documents. 2016-03-31 10:40:10 +02:00
Paul Padier
86dcef1455 Clean up spacing 2016-03-31 14:20:36 +09:00
Paul Padier
1e8e5d61d2 Don't use premultiply table for put_image_data 2016-03-31 14:20:36 +09:00
bors-servo
436f7316d9 Auto merge of #10297 - servo:the-offscreens, r=pcwalton
Update webrender with crates.io's offscreen_gl_context (fixes #10296)

Crate webrender is bumped to the first commit in https://github.com/servo/webrender/pull/248.
Crate webrender_traits is bumped to the merge of https://github.com/servo/webrender_traits/pull/21.

<!-- 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/10297)
<!-- Reviewable:end -->
2016-03-31 06:42:31 +05:30
bors-servo
af06d32628 Auto merge of #10287 - Ms2ger:domain, r=jdm
Include square brackets for IPv6 addresses in Document::domain.

The specification changed out from under us.

It's unfortunately impossible to write a test for this right now.

<!-- 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/10287)
<!-- Reviewable:end -->
2016-03-31 05:44:10 +05:30
Anthony Ramine
48b5d1d6be Update webrender with crates.io's offscreen_gl_context (fixes #10296)
Crate webrender is bumped to the first commit in https://github.com/servo/webrender/pull/248.
Crate webrender_traits is bumped to the merge of https://github.com/servo/webrender_traits/pull/21.
2016-03-31 02:02:02 +02:00
Anthony Ramine
a81793c908 Reorder dependencies in components/canvas/Cargo.toml 2016-03-31 01:36:50 +02:00
bors-servo
ed9c64e827 Auto merge of #10275 - bholley:style_struct_templates, r=SimonSapin
Use more mako machinery in geckolib (and make a few small changes to style/properties.mako.rs)

<!-- 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/10275)
<!-- Reviewable:end -->
2016-03-31 04:46:11 +05:30
Alan Jeffrey
f9f15876cd Miscellaneous fixes to harden the constellation. 2016-03-30 18:01:28 -05:00
bors-servo
e5e559d414 Auto merge of #10268 - Ms2ger:rc-runtime, r=Manishearth
Stop reference-counting Runtime for workers.

<!-- 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/10268)
<!-- Reviewable:end -->
2016-03-31 03:41:19 +05:30
Alan Jeffrey
6dab59f8ce Added comment explaining why the constellation still panics in the case of recv failure. 2016-03-30 16:10:09 -05:00
bors-servo
723989b9dd Auto merge of #10252 - emilio:selection, r=mbrubeck
Implement ::selection pseudo-element

It only supports `color` and `background`, for now, but it shouldn't be hard to add more properties (like text-shadow).

r? @mbrubeck

<!-- 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/10252)
<!-- Reviewable:end -->
2016-03-31 00:47:07 +05:30
Jan-Fabian Humann
d778562844 #10211: Stop re-exporting webrender_traits WebGL types from canvas_traits 2016-03-30 20:05:16 +02:00
Bobby Holley
d52299b17c Move handling of additional-methods into the data structures. 2016-03-30 10:42:26 -07:00
Bobby Holley
0bdbf815f9 Take an initial pass of putting binding-generated gecko style structs inside GeckoComputedValues. 2016-03-30 10:33:57 -07:00
Bobby Holley
a7447aaf74 Don't require style structs to implement PartialEq.
It turns out this isn't necessary, and requiring it for gecko style structs
would be a pain.
2016-03-30 10:33:57 -07:00
Bobby Holley
4d2cf9e277 Remove unenforced trait bound that generates a warning.
Fixes #10239.
2016-03-30 10:33:57 -07:00
Josh Matthews
042883eac2 Enable dictionaries in WebIDL sequences. Fixes #10282. 2016-03-30 11:07:37 -04:00
Ms2ger
231208a522 Include square brackets for IPv6 addresses in Document::domain.
The specification changed out from under us.

It's unfortunately impossible to write a test for this right now.
2016-03-30 16:45:13 +02:00
bors-servo
e148571812 Auto merge of #10238 - jdm:winunit, r=larsbergstrom
Run unit tests on appveyor

<!-- 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/10238)
<!-- Reviewable:end -->
2016-03-30 19:58:30 +05:30
bors-servo
821afa071e Auto merge of #10242 - asajeffrey:remove-constellation-send-panic, r=metajack
Replace any uses of .send().unwrap() by .send().unwrap_or_else().

This is part of the effort to harden the constellation (#10124), in this case against panics caused by channel send.

<!-- 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/10242)
<!-- Reviewable:end -->
2016-03-30 19:06:38 +05:30
Emilio Cobos Álvarez
4460712a8f layout: Propagate selected_style to InlineFragmentNodeInfo 2016-03-30 14:28:13 +02:00
Emilio Cobos Álvarez
359f7b7953 layout: Fix whitespace selected style 2016-03-30 14:28:12 +02:00
Emilio Cobos Álvarez
5303048c06 layout: prevent an extra arc clone for selected_style 2016-03-30 14:28:11 +02:00
Emilio Cobos Álvarez
92f39ea5cf Implement ::selection pseudo-element 2016-03-30 14:28:11 +02:00