Commit Graph

455 Commits

Author SHA1 Message Date
Josh Matthews
afbb20ae1d servo: Merge #4710 - Make UntrustedNodeAddress a newtype (from servo:untrusted); r=Manishearth
This will allow us to make it Send after the Rust upgrade.

Source-Repo: https://github.com/servo/servo
Source-Revision: d9c2bfae8764d9f7813a6b6e9267102625e3d7b8
2015-01-24 04:57:48 -07:00
Ms2ger
97751da42e servo: Merge #4708 - Prepare for the rust upgrade (from Ms2ger:rustup-prepare); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 55fbf1f2b6924c50cff6e4ddf359289654f4858a
2015-01-22 08:06:50 -07:00
Simon Sapin
e407980ca5 servo: Merge #4689 - Port to the new cssparser (from servo:newnewnewcss); r=larsbergstrom
https://github.com/servo/rust-cssparser/pull/68

r? @larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: 59bca2962c19f653eec835fc54caf1a3eadcb906
2015-01-21 14:27:48 -07:00
Ms2ger
dfc91abf3f servo: Merge #4682 - Move to to_owned rather than into_string (from servo:to_owned); r=jdm
into_string has been removed from Rust.

Source-Repo: https://github.com/servo/servo
Source-Revision: 94ebc7c32d5ce58ada3f9d8ffdb60cc025eb5997
2015-01-20 07:54:46 -07:00
Ms2ger
390fe40cc5 servo: Merge #4664 - Stop using Vec::from_elem (from Ms2ger:from_elem); r=larsbergstrom
It is obsolete on Rust master.

Source-Repo: https://github.com/servo/servo
Source-Revision: d747a33df9c167a3defbbdcfe356ee25eeb672ad
2015-01-19 09:12:46 -07:00
Ms2ger
f59ae9c05a servo: Merge #4662 - Disallow lines that span more than 160 columns (from Ms2ger:overlong); r=larsbergstrom
The Rust style guide suggests 100, but we have too many violations in the
tree already. This check can be tightened over time.

Source-Repo: https://github.com/servo/servo
Source-Revision: ee94b3e8bf659c847bda967700272f8f98fdb0cc
2015-01-19 08:33:48 -07:00
Edit Balint
cf755fd968 servo: Merge #4637 - Use DrawTarget::new instead of DrawTarget::new_with_data in CanvasPaintTask (from ebalint:canvas); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d9d7fdf75989cad5b57e0e1522953a574b814de6
2015-01-15 08:39:45 -07:00
Matthew Rasmus
58a0d9aad6 servo: Merge #4598 - table_wrapper.rs: Fix for percentage widths (from mttr:table_percentage); r=pcwalton
Fixes #4421

Source-Repo: https://github.com/servo/servo
Source-Revision: 62d1761d2a93368893d4c1cb242b511b3ceda48f
2015-01-13 13:24:48 -07:00
Matt Brubeck
60b6cef09a servo: Merge #4619 - Remove unused Flow method (from mbrubeck:dead-top-margin); r=Ms2ger
Added in #1988 but never used. r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 8103bba19bca3b85f2d8afa435fbb650b15d704f
2015-01-12 16:12:46 -07:00
Patrick Walton
7c1c14ca0b servo: Merge #4582 - layout: Implement mix-blend-mode per COMPOSITING § 3.4.1 (from pcwalton:blend-modes); r=glennw
`background-blend-mode` is not yet supported because we don't support
multiple backgrounds yet.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: e6fe9f14092251b0d1a8c97473dda9b5d73679cd
2015-01-12 09:03:48 -07:00
Ashish Sharma
4681e0bbd3 servo: Merge #4615 - remove unused function with_layout_node #4572 (from kartaa:master); r=jdm
Update wrapper.rs for Issue #4572 in servo/servo.

Source-Repo: https://github.com/servo/servo
Source-Revision: b020a015d91a0e67f1a526927b91bb07da0f5140
2015-01-12 08:24:47 -07:00
Martin Robinson
a7032c0b1a servo: Merge #4314 - More work on iframes updated via script (from mrobinson:iframes-2); r=jdm
iframes added or loaded via script are not reflected visibly in the content of a page. The next step in making this happen is to have compositor layers accurately reflect newly recreated or loaded iframes. This change allows iframes to appear, but there are still some further changes necessary to make the output correct and reliable.

Source-Repo: https://github.com/servo/servo
Source-Revision: 16c2025a4e30121baebde348e3c3f0e6ed197667
2015-01-09 17:51:44 -07:00
Edit Balint
43cd366dda servo: Merge #4137 - CanvasRenderTask connected to Layout (from ebalint:canvas); r=jdm
Content of the canvas is drawn, tests/html/test_canvas.html now works.

Source-Repo: https://github.com/servo/servo
Source-Revision: da400a7a453eacf6f3089cc07e5dc61f385a0909
2015-01-09 12:06:47 -07:00
Ms2ger
65d344e329 servo: Merge #4588 - Some cleanup in layout (from Ms2ger:layout-cleanup); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 43e34d6d1050227eecc8fa293f9faec066f173a1
2015-01-09 09:42:48 -07:00
Patrick Walton
084ac081fc servo: Merge #4557 - layout: Implement filter per CSS-FILTERS § 5 (from pcwalton:filter); r=mbrubeck
`blur` and `drop-shadow` are not yet supported, because the
`text-shadow` PR makes some fundamental changes to blur rendering that
are needed first.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: ffdbf29db28ba334e8baf8d35141b5e8ad289459
2015-01-09 09:03:48 -07:00
Matthew Rasmus
8a04144529 servo: Merge #4575 - Post-rustup warning fixes (from mttr:warnings); r=jdm
Notes:

* This adds `#![allow(missing_copy_implementations)]` to components/*/lib.rs. I'm not sure how to approach the missing Copy warnings (are there things for which Copy should NOT be implemented, and how can I tell?) so I stuck this in to make life easier when looking through the warnings. I can easily remove this if necessary.
* This leaves the following type of warnings, which I couldn't figure out how to approach (I'll investigate it later if no one else wants to).
```
css/matching.rs:72:23: 72:35 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:72         this_as_query.equiv(other)
                                         ^~~~~~~~~~~~
css/matching.rs:95:10: 95:49 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:95 impl<'a> Equiv<ApplicableDeclarationsCacheEntry> for ApplicableDeclarationsCacheQuery<'a> {
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 0793137631cbe4ebbff8fb85639206ce8e41bbb7
2015-01-08 16:03:55 -07:00
Ms2ger
924a818c1c servo: Merge #4574 - Remove if_let feature gates (from Ms2ger:if_let); r=Manishearth
This feature is now supported unconditionally.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4cd9eb1253a764e8794f004a96112f4127687708
2015-01-08 14:42:53 -07:00
Patrick Walton
ec0209cd30 servo: Merge #4523 - layout: Implement text-rendering per SVG 1.1 § 11.7.4 (from pcwalton:text-rendering); r=mbrubeck
Like Gecko, we treat `geometricprecision` the same as
`optimizelegibility` for now.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 1a021f66354d9b6c14f76178d803185e50ad87d3
2015-01-08 13:48:53 -07:00
Patrick Walton
c93585da15 servo: Merge #4525 - layout: Implement outline-offset per CSS-UI-3 § 5.5 (from pcwalton:outline-offset); r=mbrubeck
r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 112ab49706a525ab0b93ca37bd41e9d929218736
2015-01-08 12:03:53 -07:00
Patrick Walton
851088e982 servo: Merge #4530 - layout: Implement pointer-events: none per SVG 1.1 § 16.6 (from pcwalton:pointer-events); r=mbrubeck
SVG-only values are not yet supported.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: a88e668091842dc77169b235a03b5264e65ebdc6
2015-01-08 10:48:55 -07:00
Patrick Walton
76e5fce61f servo: Merge #4529 - layout: Implement word-break: break-all per CSS3-TEXT § 5.2 (from pcwalton:word-break); r=mbrubeck
r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 3d9200e4066c8147d82de38c071bc945c233c049
2015-01-08 10:09:55 -07:00
Ms2ger
b3c7f9d2ca servo: Merge #4554 - Update rustc to revision 2cfb5acb5a2751c759627377e602bac4f88f2d19 (from servo:rustup_20141221); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1d7148c79f9124779a910fd5291c5fa0543b2dae
2015-01-08 08:00:57 -07:00
Ms2ger
843040ab81 servo: Merge #4548 - Various cleanup (from Ms2ger:cleanup); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 65ee8166bd64e911502e29a050258b70d9f263aa
2015-01-05 01:27:48 -07:00
Patrick Walton
fe1e6fa761 servo: Merge #4460 - layout: Paint stacking contexts' overflow areas properly (from pcwalton:stacking-context-overflow); r=glennw
This was making `box-shadow` not show up in many cases, in particular,
but the effects were not limited to that.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 499d17f564d699e5e290e8a3859f64e7536827a7
2015-01-04 18:51:48 -07:00
Ms2ger
2979891740 servo: Merge #4542 - Prepare for the rust upgrade (from servo:pre-rustup_20141221); r=saneyuki
In particular, this contains changes to qualify enums where rust will require it, and to stop using some features that will be removed.

Source-Repo: https://github.com/servo/servo
Source-Revision: ba8cf6b0e6145265f9472d4855f078d8b5943fe7
2015-01-04 12:39:47 -07:00
Megha Gupta
49ad060695 servo: Merge #4495 - Add HTMLElementTypeId enum (fixes #3625) (from MeghaGupta:typeid); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 2e17cae5d080db72d5f89733d19e0304857cfd34
2015-01-04 12:12:48 -07:00
Ms2ger
03365eb590 servo: Merge #4535 - Stop using some obsolete features (from servo:pre-rustup_20141221); r=jdm
This prepares for the rust upgrade currently being conducted.

Source-Repo: https://github.com/servo/servo
Source-Revision: e8fac3681b690adb0796b2a807ac95bd9c13597a
2015-01-03 14:39:46 -07:00
Ms2ger
9695007fe1 servo: Merge #4538 - Remove obsolete attributes (from Ms2ger:attributes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d8b6cec722e67f1fd39f154f4f0a298f2227501f
2015-01-03 10:39:48 -07:00
Martin Robinson
6c0ac241fb servo: Merge #4536 - Stall PaintTask exit until it can release all buffers (from mrobinson:pixmap); r=pcwalton
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.

Source-Repo: https://github.com/servo/servo
Source-Revision: a31acffb0405b2c38b39c39c6d552f2ba79b6326
2015-01-02 20:21:47 -07:00
Ms2ger
68127ba40c servo: Merge #4490 - Remove some transmute calls (from Ms2ger:transmutes); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: dbb10747828b08f5dc9bcaea251e1f2d16f554fd
2014-12-27 12:27:46 -07:00
Manish Goregaokar
8e0ed407b9 servo: Merge #4485 - Replace most to_string calls by into_string calls (from servo:into_string); r=Ms2ger
`str::to_string()` goes through a `Formatter`, `str::into_string()` is a direct copy and is apparently 5× faster.

This is a rebase of the boring and bitrot-prone parts of #4366.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9857ea26cb9ee262654bee97322dbbf373486bff
2014-12-27 06:51:44 -07:00
Patrick Walton
25ca4de050 servo: Merge #4459 - gfx: Clip the background properly when border-radius is used, and clean up some painting stuff (from pcwalton:border-radius-clipping); r=glennw
Together these improve a large number of sites: GitHub, Reddit, Wikipedia, etc.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 63a7742d834e9ed44421baa3ce218a5eabce58bf
2014-12-22 15:51:48 -07:00
Tetsuharu OHZEKI
d32b4e13f5 servo: Merge #4434 - script: Remove glob imports added in #4405 (from saneyuki:glob_script); r=jdm
#4406

Source-Repo: https://github.com/servo/servo
Source-Revision: 803e5ef7904f2843d8e44184f9154af079eea9fa
2014-12-18 15:57:48 -07:00
Simon Sapin
5a3cd41bb2 servo: Merge #4425 - Fix some writing mode mismatch assertions errors (from SimonSapin:mixed-writing-modes); r=mbrubeck
The rendering is still wrong beause of #2795, but at least we get a rendering.

(This test change is just for readability, it should be equivalent to before.)

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 3cc87165a1279005fa2c12413f33487dee31df96
2014-12-18 15:31:28 -07:00
Patrick Walton
d062ae2387 servo: Merge #4394 - layout: Implement clip per CSS 2.1 § 11.1.2 (from pcwalton:clip); r=SimonSapin
Only the recommended, comma-separated syntax is supported.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: a80d88897d176630c79f929e8b1fd661b2e1a17c
2014-12-18 14:12:51 -07:00
Tetsuharu OHZEKI
ab160d6216 servo: Merge #4418 - gfx: Remove glob imports added in #4405 (from saneyuki:glob_gfx); r=jdm
#4406

Source-Repo: https://github.com/servo/servo
Source-Revision: a425bb528957fd77cf8300b17e153f8fc3777483
2014-12-18 12:52:01 -07:00
Tetsuharu OHZEKI
6b6833bc4b servo: Merge #4424 - style: Remove glob imports added in #4405 (from saneyuki:glob_style); r=SimonSapin
#4406

Source-Repo: https://github.com/servo/servo
Source-Revision: 1f342638c46d6b43bca4cfbd405aceedc0465a85
2014-12-18 11:03:55 -07:00
Simon Sapin
66d7332a20 servo: Merge #4420 - Fix warnings (from servo:fix-warnings); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: eea49ee1d986c306a8eec32b64be9b10cb2278fc
2014-12-18 04:42:50 -07:00
Patrick Walton
53a1509c58 servo: Merge #4358 - compositing: Implement cursor per CSS3-UI § 8.1.1 in the CEF/Mac port (from pcwalton:cursor); r=mbrubeck
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).

If you test this in the wild you will probably hit #4357 until that PR lands.

Source-Repo: https://github.com/servo/servo
Source-Revision: e2267e0a0749e27046ee8a26ba514cc6865e0345
2014-12-18 00:24:49 -07:00
Patrick Walton
da7904adda servo: Merge #4404 - layout: Implement caption-side per CSS 2.1 § 17.4.1 (from pcwalton:caption-side); r=mbrubeck
`caption-side` is used by 4% of pages by number of loads.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 6eb9ae1eff2d26c52ad2ac59eec703bd7e8ae867
2014-12-17 23:57:52 -07:00
Patrick Walton
bd7ccaf413 servo: Merge #4400 - layout: Implement empty-cells per CSS 2.1 § 17.6.1.1 (from pcwalton:empty-cells); r=SimonSapin
r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 636641f90533c941a3580b5caee1ae1fef953841
2014-12-17 22:33:51 -07:00
Glenn Watson
636d338cf6 servo: Merge #4405 - Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d (from servo:rustup_20141124); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: fbf42c951b2f53d91e2f32f8035484a07ea83493
2014-12-17 18:45:49 -07:00
Matthew Rasmus
6ab3784311 servo: Merge #4133 - Implements basic form resetting (from mttr:form_resetting); r=jdm
We can reset `<input type=text>` fields! I wish I could've done something with checkboxes, but unfortunately, that's it for now.

In addition to that, this PR implements `HTMLInputAttribute.defaultValue`, updates wpt-test to expect passing tests as a result of that implementation, and fixes an index error crash with text inputs.

edit: also includes an html example where one may lazily watch form resets in action: ` tests/html/form_reset_handsfree.html`

Source-Repo: https://github.com/servo/servo
Source-Revision: 5951056973fc0e08e70224214740a274ca8ef20f
2014-12-16 15:03:49 -07:00
Ms2ger
7f0692ab5b servo: Merge #4390 - Remove some manual deref() / deref_mut() calls (from Ms2ger:derefs); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 905c30d69739fcacfe67cb2605eb9f669ae9a82f
2014-12-16 09:22:02 -07:00
Ms2ger
c38a900fd3 servo: Merge #4389 - Fix bogus transmute (from Ms2ger:transmute); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 508924771e8f0f60700931ebd88aebf8c8889e44
2014-12-16 08:54:51 -07:00
Patrick Walton
2a3b044e37 servo: Merge #4289 - style: Implement basic column spans, quirks mode, and the legacy bgcolor and border attributes (from pcwalton:hacker-news); r=SimonSapin
This patch provides some of the groundwork for column spans greater than
1. It implements the column-span CSS property as well as the
corresponding colspan attribute; although the former is not
well-specified outside of CSS multi-column layout, INTRINSIC refers to
it. Although width is distributed to spanning columns, they do not yet
contribute minimum and preferred widths; this will be implemented in a
follow-up.

The parsing for the legacy bgcolor and border attributes is
implemented according to the WHATWG HTML specification.

Additionally, this patch cleans up some miscellaneous formatting issues,
refactors layout/css somewhat to eliminate needless levels of
indirection, and cleans up the handling of table rowgroups.

New Hacker News screenshot: http://i.imgur.com/hnl2a7E.png

Source-Repo: https://github.com/servo/servo
Source-Revision: 8e31e5f98747e4b42dafcc4b076fac46aeb09310
2014-12-15 19:33:46 -07:00
Patrick Walton
97d6970f8c servo: Merge #4371 - layout: Make line breaking able to restart from any position (from pcwalton:line-breaking-improvements); r=mbrubeck
This commit removes the "merge-fragments" pass from inline reflow,
instead merging "on the fly". This ended up being simpler, as well as
more fine grained. Additionally, this patch makes the line breaker no
longer clone every fragment (!)

This functionality will be used in the implementation of
`text-overflow`.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 88ec52dd617bafe384553ef38325c552fb4f1e23
2014-12-15 19:09:49 -07:00
Patrick Walton
1ed77c8245 servo: Merge #4310 - layout: Implement basic lists and the CSS1 list properties (from pcwalton:lists); r=SimonSapin
The exact rendering is ill-spec'd. Some things are ugly (especially the
width and height of list style images) but they are infrequently used
and I believe this implementation matches the spec. Numeric lists are
not supported yet, since they will require a separate layout pass.

The implementation is a subclass of `BlockFlow`, on advice from Robert
O'Callahan.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 112ef5c484e821aa4869aeaf12a12146f2424fe0
2014-12-15 17:42:48 -07:00
Patrick Walton
ea8fffc9f3 servo: Merge #4318 - gfx: Implement box-shadow per CSS-BACKGROUNDS (from pcwalton:box-shadow-redux); r=SimonSapin
r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 7805fe19edf5353711f49a8ef1c988dc9f932bb7
2014-12-15 16:31:14 -07:00
Patrick Walton
a25bac63a9 servo: Merge #3844 - script: Improve dirty propagation and fix script-layout synchronization (from pcwalton:script-layout-synchronization); r=jdm
This fixes race conditions whereby layout and script could be running
simultaneously.

r? @jdm
cc @cgaebel

Source-Repo: https://github.com/servo/servo
Source-Revision: 5f2684d2f81046abd7548fb22d996d1e506a104a
2014-12-15 15:31:21 -07:00