Commit Graph

1320 Commits

Author SHA1 Message Date
Hyowon Kim
4d07935b58 servo: Merge #6239 - Correct the calculation of rects for drawimage (from hyowon:drawimage_rects); r=jdm
https://html.spec.whatwg.org/multipage/#dom-context-2d-drawimage
The source and destination rectangles have four points (x, y), (x+w, y), (x+w, y+h), (x, y+h), which doesn't mean rect(x, y, w, h).
cc @yichoi

Source-Repo: https://github.com/servo/servo
Source-Revision: 2a8d5952892e050a3d604741dd1007e3bd563315
2015-06-01 07:36:42 -05:00
Tony Baker
0262edfc35 servo: Merge #6218 - Update dependencies for js, fontconfig-sys and mozjs_sys (from asbaker:update-dependencies-for-6088); r=SimonSapin
Fixes servo/servo#6088

Source-Repo: https://github.com/servo/servo
Source-Revision: 591614347f9ca5568974861e82c0c918e51e2974
2015-05-31 16:04:22 -05:00
Peter
3b1880b545 servo: Merge #5972 - Makes Node::remove recursively remove all descendants of removed node from the doc (from pgonda:remove-children-from-doc); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: bf4fc6f388676cdc31cebc742a52e9d8896575f5
2015-05-29 12:03:28 -05:00
Nicholas Nethercote
e3af81914c servo: Merge #6199 - Measure paint task buffer maps in the memory profiler (from 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.

Source-Repo: https://github.com/servo/servo
Source-Revision: 10127d6b5a71ee8927413ab746300e32a54b079d
2015-05-28 22:45:34 -05:00
Mátyás Mustoha
5c241b2fac servo: Merge #6065 - Enable antialiasing for the canvas (from 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.

Source-Repo: https://github.com/servo/servo
Source-Revision: c97c0a9f94208828c617cbd99efd8e3e410c69ee
2015-05-28 14:59:36 -05:00
Nicholas Nethercote
c725a8d0ab servo: Merge #6200 - Recursively sort memory report sub-trees (from 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.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1d9b5ced38a9b3f161795f16daf28fc449edb187
2015-05-28 11:11:27 -05:00
Nicholas Nethercote
0d778482e9 servo: Merge #6202 - Freetype fixes (from nnethercote:freetype-fixes); r=jack
Because #6198 wasn't quite right.

Source-Repo: https://github.com/servo/servo
Source-Revision: dddd222d2967bcf29dbb29856ddd7265c83e4d08
2015-05-28 09:04:08 -05:00
Anthony Ramine
fb46ed9229 servo: Merge #6206 - Make throw_not_in_union() throw a TypeError (fixes #6194) (from nox:typeerror-for-unions); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: df74ed136cd7de07fd1563129b9828f5425a8dbf
2015-05-28 06:24:00 -05:00
Jinwoo Song
7393cce934 servo: Merge #5981 - Implement NodeIterator (from 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

Source-Repo: https://github.com/servo/servo
Source-Revision: 2b52006b1c503a24d5e832934d3265d45e425f40
2015-05-28 05:14:08 -05:00
Jinwoo Song
3ce8900015 servo: Merge #6198 - Use FT_Done_Library instead of FT_Done_Freetype (from 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

Source-Repo: https://github.com/servo/servo
Source-Revision: af81db54790efbeb86ee03e6ca63fb9046c6111a
2015-05-27 21:06:12 -05:00
Matt Brubeck
e1c931f14e servo: Merge #6196 - Update azure and its dependencies (from mbrubeck:metadata); r=SimonSapin
#6088. r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: b1a773a15bd2e022aa45c3672e51467e994badfe
2015-05-27 14:57:41 -05:00
Mike Blumenkrantz
4be5a1ae35 servo: Merge #6175 - Embedding: revenge of cargo (from zmike:embedding-REVENGE_OF_CARGO); r=larsbergstrom
Adds a bunch more embedding interfaces/callbacks/functionality

@larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: 94ebfe81e454ca6dd68210b4475b4091e836dd1a
2015-05-27 14:17:32 -05:00
Anthony Ramine
a652bb60d3 servo: Merge #6192 - Cleanup URLSearchParams (from nox:cleanup-urlsearchparams); r=Manishearth
It now uses rust-url for its serializer.

Source-Repo: https://github.com/servo/servo
Source-Revision: d87af8ac52b16a3763420fb7ad8fb45af785a23b
2015-05-27 05:21:05 -05:00
Tamir Duberstein
107815204d servo: Merge #6187 - Avoid extra O(n) scan in validate_and_extract (from tamird:cleanup-validate-and-extract); r=mbrubeck
Also `debug_assert!`s that `splitn` was called with the
correct `count` argument.

Adaptation of #5778.

Source-Repo: https://github.com/servo/servo
Source-Revision: df2f8d0636922a7e89895fa61fdba30099cec9ea
2015-05-26 16:29:42 -05:00
Simon Sapin
f841dd7146 servo: Merge #6186 - Use harfbuzz bindings from crates.io (from 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

Source-Repo: https://github.com/servo/servo
Source-Revision: 54afa01dd665b8facbbba7d49974ac5532e3b83f
2015-05-26 15:16:40 -05:00
Patrick Walton
9f1d8dd0dd servo: Merge #6028 - script: Reflow 200 milliseconds after the <body> is parsed, like Gecko does (from pcwalton:reflow-timer); r=jdm
It would be nice if HTML parsing didn't have to hog the event loop, so I didn't have to do this polling in `content_changed()`, but maybe the way we do it is unavoidable.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: e604b663f4e664b9a94d61569082b2b62de2151d
2015-05-26 13:18:26 -05:00
Tamir Duberstein
0c2bb56905 servo: Merge #6168 - Implemented GetCachedMessages (from tamird:get-cached-messages); r=jdm
Rebase of #4175, closes #4175. r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 8759d42559bc5c10f8d90903f33f75bddf44d9fe
2015-05-26 10:34:03 -05:00
Anthony Ramine
080248bb6b servo: Merge #6140 - Cleanup some gratuitous or inefficient uses of RootedVec (from nox:cleanup-rootedvec); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 7d0409b8421e1b0c055507acc7d784cac890f47e
2015-05-26 08:36:29 -05:00
Alexander Putilin
e98e691b67 servo: Merge #6171 - fixes 4184: no-sniff and check-for-apache-bug for mime sniffing (from eleweek:fix-4184-ok); r=Manishearth
I tried fixing #4184 , here is the code I have right now.

I haven't tested it, because I don't know what is the best way to test this part of code. Would like some help with testing this. Should I write an autotest or should I just test manually?

Source-Repo: https://github.com/servo/servo
Source-Revision: be6c251e4c01be61400786e25442f6df36f135f6
2015-05-25 23:10:18 -05:00
Philipp Hartwig
ee5f27dd93 servo: Merge #6179 - Use byte string instead of handcrafted byte array (from aopicier:byte_strings); r=jdm
Fixes #3257
In eventtarget.rs I'm not sure whether ARG_NAMES actually needs to be static!?

Source-Repo: https://github.com/servo/servo
Source-Revision: 999325460ecc71b02160e8c79e71a694987d9acd
2015-05-25 17:13:27 -05:00
r0e
73b4ed40f9 servo: Merge #6162 - Pending load guard does not assert if thread is panicking (from r0e:testing); r=jdm
Fixes issue #6148

@jdm After mulling over this for a little while, i'm not sure if this approach is correct. Any comments?

Source-Repo: https://github.com/servo/servo
Source-Revision: 6595ebed0f50658b8f6d12f9c37017df5ea26efa
2015-05-25 16:33:43 -05:00
Tamir Duberstein
cf2fe28080 servo: Merge #6169 - Use a struct variant for clarity (from tamird:struct-variant); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 34a617aaa133b0bc0756dd7d904203c9d633e69a
2015-05-25 15:53:56 -05:00
Mike Blumenkrantz
3fe5c072a6 servo: Merge #6125 - Renderrenderrenderrender: Now for embedding! (from zmike:renderrenderrenderrender); r=larsbergstrom
A collection of commits which improves embedding integration and rendering.

@larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: 4a95bce9f260b183660dab44ef3044618be6840c
2015-05-24 19:26:00 -05:00
Corey Farwell
3d43073796 servo: Merge #6174 - Reduce max line length from 150 to 120 characters (from frewsxcv:cleanup-long-lines); r=SimonSapin
Part of https://github.com/servo/servo/issues/6041

Source-Repo: https://github.com/servo/servo
Source-Revision: 542519ebfd073662bc9421ac5fa0aa01ebc0d6fe
2015-05-24 18:27:26 -05:00
Alexander Putilin
5a2657c66e servo: Merge #6170 - fixes 6111: WebSocket close event shouldn't be Cancelable (from eleweek:fix-6111); r=Ms2ger
This fixes #6111 , @jdm said that I can work on this issue

Source-Repo: https://github.com/servo/servo
Source-Revision: 16f19b628fa630aab8cfd275a90128da7b59723b
2015-05-24 10:27:41 -05:00
Patrick Walton
fcee69b8ec servo: Merge #5607 - layout: Implement per-glyph font fallback (from pcwalton:per-glyph-font-fallback); r=mbrubeck
This improves numerous pages, for example Wikipedia and Ars Technica.

Built on #5493.

Closes #177.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7561f7b83f27811683c1e724d75a935573a72813
2015-05-22 19:16:54 -05:00
Simon Sapin
469c482ec7 servo: Merge #6159 - Remove usage of the mod_path compiler plugin (from SimonSapin:no_mod_path); r=Manishearth
https://github.com/rust-lang/rust/pull/20179 makes its use case much weaker.

r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: e04d9c32a98ff4673f413ed17f66e7466e2ff974
2015-05-22 03:13:13 -05:00
Manish Goregaokar
f0b127c902 servo: Merge #6156 - Fix deprecated plugin APIs (from Manishearth:warn_fix); r=larsbergstrom
r? @larsbergstrom


(The diff is borked here, but I only just added `if let`s and wrapped/unwrapped in `Annotatable`s)

Source-Repo: https://github.com/servo/servo
Source-Revision: ef7fa99bd2c4ff52be1c6361d9f1eca3775c88c5
2015-05-21 13:27:27 -05:00
Josh Matthews
c3f30a7985 servo: Merge #5727 - Make external script sources load asynchronously, yet still block furthe (from jdm:parserinterrupt2); r=mbrubeck
...r parsing. Hook up document loading to async networking events.

Relies on https://github.com/servo/html5ever/pull/107, so we'll likely need to backport it rather than wait for the next rustc upgrade.

Source-Repo: https://github.com/servo/servo
Source-Revision: dd319c1a998bbd3eeb84fdc4ca8a41ee7877ca37
2015-05-21 12:37:06 -05:00
Lars Bergstrom
cac2fc4d3c servo: Merge #6155 - Rustup to 1.2.0 (from servo:rustup_2015-05-21); r=Manishearth
r? @Manishearth

(there's just the one plugins-related change required)

Source-Repo: https://github.com/servo/servo
Source-Revision: a0fccea670124d5ccfef1c13fe1b5d2e58891236
2015-05-21 10:50:53 -05:00
Paul Faria
a7e7e11b55 servo: Merge #6154 - Adding in a missed algorithm step number in the comments (from Nashenas88:websocket-parse-url-typo); r=jdm
This is a really small typo fix for an issue I worked on recently.

Source-Repo: https://github.com/servo/servo
Source-Revision: b84aa41c229a18fa77f4ae815fc0166cb3fbb1b6
2015-05-21 06:59:06 -05:00
Glenn Watson
00df5fc0da servo: Merge #6152 - Fix document load event firing after pipeline is closed (from glennw:runnable-panic); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1060cfde68c8d355b54a271923c9682721c5ed19
2015-05-20 20:01:32 -05:00
Manish Goregaokar
7bc7669acc servo: Merge #6151 - Upgrade rust to 716f920b7e234b450f272346fea961832505c06e (from servo:rustup-2015_05_13); r=larsbergstrom
(Tue May 19 05:39:29 2015 +0000)

Source-Repo: https://github.com/servo/servo
Source-Revision: 7ae5d1129f9fd1227678db9ad26471727dc9fa27
2015-05-20 18:23:13 -05:00
Patrick Walton
5450290fbe servo: Merge #5586 - net: Don't load the placeholder image for background images, only for image fragments (from pcwalton:no-broken-background-image-redux); r=glennw
r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 77099b25d590fdaac76721e7f98f4e83672e64a6
2015-05-20 16:43:31 -05:00
ecoal95
0656a2b904 servo: Merge #6083 - First steps to layerize canvas (from emilio:layerize-canvas); r=pcwalton
I've done a bit of job to get this done. Right now readback is still used, but we have a `LayerId` -> `CanvasRenderer` map on the paint task, that we can use to get rid of that.

I'd want review, to see if this is a good approach (I know it's not the initial `CanvasId` -> renderer approach, but it's pretty similar, since a canvas involves a `PaintLayer`).

I had to do a bit of refactoring to avoid cyclic dependencies between canvas and gfx. I'd want you to review them too.

It's mergeable and doesn't break any tests :P

Some of my main concerns:
* Does the canvas render really need to be behind an `Arc<Mutex<T>>`?
* I can't clone a `NativeSurface` right now (that's why the `SendNativeSurface()` msg is unimplemented in the WebGL task). It should be easy to add that to rust-layers, supposing the caller is responsible to mark it as non-leaking, any reason to not do it?

cc @jdm @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: ad53e95080144485e74cd9b9d48ce75e20de4e36
2015-05-20 15:42:06 -05:00
Peter
43f66c0df3 servo: Merge #5858 - fixes #5603, added support for tabindex field (from pgonda:tabindex-focus-flag); r=jdm
Added support for the tabindex field, also added its correct defaults (-2 TODOs for things not supported in Servo yet).  Also added tabindex logic into Element::is_focusable_area.

Source-Repo: https://github.com/servo/servo
Source-Revision: fada39164cbaba3a9885f08fad6f10a2353a4838
2015-05-20 14:34:31 -05:00
Patrick Walton
44983ea106 servo: Merge #5577 - script: Implement the width and height attributes for iframes per HTML5 § 4.8.6 (from pcwalton:iframe-size-attributes); r=jdm
Improves Amazon and Ars Technica.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: ee147c164a8a13743dec2def60b13997145e7a55
2015-05-20 13:51:05 -05:00
Patrick Walton
d647fc4d06 servo: Merge #6077 - compositing: Support multiple events per frame (from pcwalton:multiple-events-per-frame); r=glennw
Improves scrolling performance significantly on Mac.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 071f89aa5f11075894e0702860d88f1353ecd95e
2015-05-20 13:06:52 -05:00
Peter
d2ed898573 servo: Merge #6074 - Allows the unrooted_must_root lint to deal with struct variant enums, #6069 (from pgonda:lint-fix-struct-enum-variants); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: d68730a0fc755149c1093021e34e7d34693429b7
2015-05-20 10:29:48 -05:00
Michael Wu
565bca1f47 servo: Merge #6143 - Avoid selecting bitmap fonts from fontconfig (from michaelwu:truetype-only); r=pcwalton
I have a number of pcf fonts installed. One of them is Adobe Helvetica, and it turns out many websites try to use Helvetica. This crashes servo.

Source-Repo: https://github.com/servo/servo
Source-Revision: 165bfd6d5f901ef2e2619dbcc010166106cebd0b
2015-05-20 02:36:43 -05:00
Michael Wu
ccf24af538 servo: Merge #6139 - Rustup fixes (from michaelwu:rustup-fixes); r=SimonSapin
Mutable transmutes and wrong transmutes fixed.

Source-Repo: https://github.com/servo/servo
Source-Revision: 64810583093dadfacbda942562853af1ae82e34e
2015-05-20 01:55:43 -05:00
Paul Faria
5b46999925 servo: Merge #6127 - Throw a SyntaxError if the WebSocket URL can't be parsed. Fix #6061 (from Nashenas88:websockets-invalid-urls); r=Ms2ger
Fix #6061.

Source-Repo: https://github.com/servo/servo
Source-Revision: d869a3c7a8378a77a9a5e86c118115f969ade193
2015-05-20 01:13:57 -05:00
Paul Faria
b5a2222e90 servo: Merge #6094 - Fixed definition of Close and Send in WebSocket.webidl and updated im… (from Nashenas88:websockets-USVString); r=Ms2ger
Fix #6063
Fix #6062
Fixed definition of Close and Send in WebSocket.webidl and updated implementation in websocket.rs.

Source-Repo: https://github.com/servo/servo
Source-Revision: fe8760cce206ede76b71ccf3cc94fa37addddfc9
2015-05-20 00:20:06 -05:00
Keith Yeung
61c2e05a7c servo: Merge #6129 - Implement fetch (partial #4576) (from KiChjang:fetch-spec); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 79ed6250f0535d62a12b1d7e47e48926d6e3925a
2015-05-19 23:08:41 -05:00
Matt Brubeck
8868c02bf2 servo: Merge #6138 - Enable 'direction' without --experimental (from mbrubeck:enable-rtl); r=pcwalton
r? @pcwalton or @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: fed48ca59b122f733c74957b6be39b067d792d17
2015-05-19 22:27:17 -05:00
Glenn Watson
17e3775b23 servo: Merge #6131 - Fix several hangs / panics during pipeline cleanup of in progress loads (from glennw:jquery-exit-fix); r=jdm
This fixes a hang found while testing the jQuery test suite.

Source-Repo: https://github.com/servo/servo
Source-Revision: c51e9f04559f04f1e820b792261e1653c6869ee5
2015-05-19 21:44:45 -05:00
WriterOfAlicrow
eb27bed3a8 servo: Merge #6084 - Fix for Issue #6073 (from WriterOfAlicrow:radiobutton-fix); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e2b0922d42e18362ec9ae79feaffed601142e586
2015-05-19 20:49:32 -05:00
Patrick Walton
cf0b11ec43 servo: Merge #6053 - compositing: Implement display ports and avoid creating display lists for items outside it (from pcwalton:displayports); r=glennw
This improves Servo's performance on large pages.

Please double-check the logic when it comes to nested layers—I'm sure I've messed up some of the geometry calculations :)

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 0880e54f987bac7c34c934ef6ee36f46475b06e3
2015-05-19 19:40:36 -05:00
Patrick Walton
36e1de85b6 servo: Merge #5989 - script: Implement the color attribute of the <font> element (from pcwalton:font-color); r=jdm
Improves Hacker News.

r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: ba340ec71bcfca8ab7b8ae04a22005e4fb860a23
2015-05-19 18:33:03 -05:00
Patrick Walton
203fb9aae6 servo: Merge #5993 - layout: Support percentage widths in inline-blocks (from pcwalton:inline-block-percentage-widths); r=mbrubeck
Improves Twitter.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: acb9824229bf9e02eaabdb9d924f7db242a1ac85
2015-05-19 16:03:15 -05:00