Commit Graph

4942 Commits

Author SHA1 Message Date
Ali Sabil
a77bcca98e servo: Merge #7611 - Cache the id attribute on Element (from nox:cache-element-id); r=frewsxcv
Thanks to @asabil for the original work, I only rebased it.

Fixes #6359 and #7040.

Source-Repo: https://github.com/servo/servo
Source-Revision: d1269294e6c602c91012397c7584e3c2077e21ac
2015-09-20 09:23:20 -06:00
Michael Howell
fac5f2cebf servo: Merge #7653 - Add transitions for CSS calc() (from notriddle:calc-transition); r=dzbarsky
Closes #7284

Source-Repo: https://github.com/servo/servo
Source-Revision: 5667283d1f50ad4f6bf9291dcbc5b6f659c4acc8
2015-09-20 00:22:13 -06:00
Anthony Ramine
fd46e364d9 servo: Merge #7601 - Improve DOM interfaces' extended attributes (from nox:cleanup-dom-webidls); r=Ms2ger
Some should have been `[SameObject]` instead of `[Constant]`. The rest of the changes are additional `[Constant]` and `[Pure]` extended attributes on many operations.

Source-Repo: https://github.com/servo/servo
Source-Revision: 61267cde63ce6c0f6433f57b3f8054886577d767
2015-09-19 17:50:22 -06:00
Brandon Fairchild
f7fb1e4b4a servo: Merge #7662 - Check for multiple import blocks separated by whitespace (from nerith:import); r=frewsxcv
Fixes #7381.

Source-Repo: https://github.com/servo/servo
Source-Revision: a0d3c9223f09757124b1520c4f17e94fa8bbe249
2015-09-19 13:34:51 -06:00
Sam Gibson
cbd0551cde servo: Merge #7654 - Move HSTS/CookieStorage to Arc<RwLock> from Ipc (from samfoo:hsts-cookie-arc); r=jdm
servo/servo#7421

Source-Repo: https://github.com/servo/servo
Source-Revision: 7f2d81933a6158926ff6d03acbc05f191cd5adb3
2015-09-19 02:01:06 -06:00
Bryan Bell
20434e217e servo: Merge #7679 - Add css twitter fail whale html test & update ellipse_to_bezier comment (from bjwbell:reftest-twitter-fail-whale); r=pcwalton
cgaebel had a TODO for a css twitter fail whale reftest, which depended on elliptical border-radius support.
I didn't see any feasible way other than a reference image for border_twitter_fail_whale_b.html.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: c91c0188f279b9d7edf706fc7ad3111948156ed6
2015-09-18 22:54:44 -06:00
Hugo Thiessard
357588437d servo: Merge #7680 - fixes #7390 : tidy now check the order of mod declarations even whith attribute (from Mylainos:Issue-#7390); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: d1b85de762c0193276010a019f931526c34c04ce
2015-09-18 14:44:48 -06:00
Josh Matthews
528137b9d7 servo: Link to instructions that don't mention critic.
Source-Repo: https://github.com/servo/servo
Source-Revision: 9b939546a660fb24985e54aba1c2c47d1cf057a4
2015-09-18 11:48:21 -04:00
Mathieu Rheaume
3db547ce58 servo: Merge #7447 - Issue #7382 Use descriptive enums instead of booleans for MIMEClassifier::classifer (from ddrmanxbxfr:master); r=jdm
Hi guys i've done a small pass of refactor in the MIMEClassifier implementation. (See issue #7382 )
   - Moved the predicates to separate functions
   - Added a mimetype enum so we can compare them easily after calling MIMEClassifier::get_media_type

I hope it follows rust good pratices (care it's my first time doing rust).

Improvements and tips are welcome :).

Thanks for looking at it.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8a8204ffc8fa287dde2321c40d12b191b51960da
2015-09-18 07:22:59 -06:00
Matt Brubeck
1b09c3bfc2 servo: Merge #7669 - Set default limits on page zoom and pinch zoom (from mbrubeck:zoom); r=glennw
Currently these both clamp to 100% in one direction and are unbounded in the other direction.  This sets default zoom constraints of 10% to 800%.  r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: eae3eaf97474febb2c50a7a4d392594cbc8d2da2
2015-09-18 06:36:27 -06:00
Matt Brubeck
d460f99bca servo: Merge #7667 - Snap to screen pixels instead of px (from mbrubeck:oh-snap); r=glennw
Fixes #7665. r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 491d62c27cbd55ea5c4269bca11dc8584c77e170
2015-09-18 04:09:26 -06:00
Matt Brubeck
768cb5c26b servo: Merge #7656 - Reconstruct flows when text/font styles change (from mbrubeck:incremental-text-6501); r=pcwalton
These styles are used during text shaping.  When they change, we need to re-run shaping and construct new flows.

Fixes #6501. r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: acde10f005f9d4c2062fe5480be163b2c6dfe823
2015-09-18 01:32:40 -06:00
Matt Brubeck
20c49e9242 servo: Merge #7664 - Update glutin to latest upstream merge (from mbrubeck:glutinup); r=glennw
To pick up servo/glutin#47. r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 3030eff4c6af5aa4fefbc9f12fc011c6b2093834
2015-09-17 23:36:18 -06:00
Martin Robinson
a8570d696e servo: Merge #7587 - Ensure unique LayerIds for pseudo-elements (from mrobinson:layer-id); r=pcwalton
Currently pseudo-elements, like the fragments created for ::before and
::after, with layers will have the same LayerId as the body of their
owning fragments. Instead all LayerIds should be unique.

Fixes #2010.

Source-Repo: https://github.com/servo/servo
Source-Revision: cf13e806fe2f4cf5ad5f30efd16d7bd3f501f8b3
2015-09-17 08:53:39 -06:00
Simon Sapin
7e1ff1e8fe servo: Merge #7555 - Custom properties, take 2 (from SimonSapin:custom-properties++); r=mbrubeck
Support `var()` in shorthand properties, and fix various bugs.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 1b6d4daf85d672265824a014dba99c94c8c08814
2015-09-17 06:50:57 -06:00
Patrick Walton
12ae75107c servo: Merge #7644 - layout: Draw the insertion point in input elements (from pcwalton:carrot); r=mbrubeck
Known issues:

* The caret doesn't show up if there's no text present, because we don't create text runs in that case. This should be a followup.

* Text runs don't support decomposing ligatures into their constituent subglyphs for advance computation, so the caret won't appear inside a ligature. This is a text run bug.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 6cd098da302db85975d0967ddee836f04eae3bd5
2015-09-17 05:50:41 -06:00
Michael Howell
335a803aaa servo: Merge #7588 - Actually store the overflow for inline-block elements (from notriddle:master); r=pcwalton
Fixes #7571

Source-Repo: https://github.com/servo/servo
Source-Revision: 9e914ca0db2820b365c06deedb8b5325c63c007b
2015-09-17 00:53:04 -06:00
Josh Matthews
e1a4564680 servo: Merge #7655 - Remove shortcut that doesn't exist (from servo:jdm-patch-1); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: d3355e245e2562a33e6b7320786801b895b24f4a
2015-09-16 22:16:08 -06:00
Martin Robinson
4936135d02 servo: Merge #7648 - Improve printing of DisplayLists (from mrobinson:print-tree); r=glennw
Use box tree characters to make DisplayLists easier to scan when
printing them out.

This is what the output looked like before:
```
#### start printing display list.
"####" Stacking context at Rect(800px×608px at (0px,0px)) with overflow Rect(800px×608px at (0px,0px)):
#### SolidColor(0,0,0,0). Rect(800px×608px at (0px,0px))
#### SolidColor(0,0,0,0). Rect(784px×0px at (8px,0px))
#### SolidColor(0,0.5019608,0,1). Rect(100px×100px at (0px,0px))


#### Child layers list length: 1
"########" Stacking context at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
######## SolidColor(1,0,0,1). Rect(100px×100px at (0px,0px))


######## Child layers list length: 1
"############" Stacking context at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
```

This is what it looks like after this patch:
```
┌ DisplayList
│  ├─ Layered StackingContext at Rect(800px×608px at (0px,0px)) with overflow Rect(800px×608px at (0px,0px)):
│  │  ├─ Block Backgrounds and Borders
│  │  │  ├─ SolidColor rgba(0, 0, 0, 0) @ Rect(800px×608px at (0px,0px)) (7f926f46f1f0)
│  │  │  └─ SolidColor rgba(0, 0, 0, 0) @ Rect(784px×0px at (8px,0px)) (7f926f46f2e0)
│  │  ├─ Layered StackingContext at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
│  │  │  ├─ Backgrounds and Borders
│  │  │  │  └─ SolidColor rgba(1, 0, 0, 1) @ Rect(100px×100px at (0px,0px)) (7f926f46f310)
│  │  │  ├─ Layered StackingContext at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
│  │  ├─ Layered StackingContext at Rect(100px×100px at (0px,0px)) with overflow Rect(100px×100px at (0px,0px)):
│  │  │  ├─ Backgrounds and Borders
│  │  │  │  └─ SolidColor rgba(0, 0.5019608, 0, 1) @ Rect(100px×100px at (0px,0px)) (7f926f46f3a0)
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 4e9a888f1ac58866833418ee5e8253358918b741
2015-09-16 20:43:59 -06:00
Aidan Hobson Sayers
3e643d335d servo: Merge #7632 - Speedup mach startup (from aidanhs:aphs-speedup-mach-startup); r=metajack
...by using a 'marker file' to indicate whether we actually need to run pip.

Also a minor tweak for clarity.

Before (consistently):
```
$ time ./mach >/dev/null

real    0m0.666s
user    0m0.477s
sys     0m0.190s
```

After:
```
$ time ./mach >/dev/null # first run

real    0m0.665s
user    0m0.501s
sys     0m0.166s
$ time ./mach >/dev/null

real    0m0.121s
user    0m0.083s
sys     0m0.039s
```

Source-Repo: https://github.com/servo/servo
Source-Revision: b511004a616862394318381d7ef5ac3c59c7babe
2015-09-16 14:34:17 -06:00
Anthony Ramine
4310c0b4aa servo: Merge #7645 - Introduce structs for compositing and script task constructors' arguments (from nox:omtc-types); r=Ms2ger
Extracted from @pcwalton's #4271.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2879da54f943c9379b0c86461a87e20911bc0a0f
2015-09-16 10:41:10 -06:00
Bryan Bell
fe06c8a99f servo: Merge #7642 - gfx: Add elliptical border-radius shorthand parsing (from bjwbell:shorthand-parse-elliptical-border-radius); r=jdm
Adds support for parsing shorthand border-radius values such as:

    /* The syntax of the second radius allows one to four values */
    /* (first radius values) / radius */
    border-radius: 10px 5% / 20px;

    /* (first radius values) / top-left-and-bottom-right | top-right-and-bottom-left */
    border-radius: 10px 5% / 20px 30px;

    /* (first radius values) / top-left | top-right-and-bottom-left | bottom-right */
    border-radius: 10px 5px 2em / 20px 25px 30%;

    /* (first radius values) / top-left | top-right | bottom-right | bottom-left */
    border-radius: 10px 5% / 20px 25em 30px 35em;

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 8f0b702018e1e907d474d91caad76b0b1fe411e7
2015-09-16 10:13:52 -06:00
Josh Matthews
a98efee391 servo: Merge #7641 - Add pip as a requirement (from servo:jdm-patch-1); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 6678eece2757e1dbe9eca4cc7b8336fe84a221dc
2015-09-16 09:39:10 -06:00
Ms2ger
7b02289360 servo: Merge #7628 - Emit markers for all events, not just UI events (from Ms2ger:events-markers); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: df083ccb528f2997fbea4724fcd463104bf8d87d
2015-09-16 08:34:32 -06:00
Jinwoo Song
2a438e5141 servo: Merge #7605 - Implement "transform: skew()" (from nox:skew); r=mbrubeck
Thanks to @Jinwoo-Song for the original commit, which I just rebased and cleaned up. Fixes #6237.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6a12f00d6d392651bae10365b4c806f36d704b21
2015-09-16 06:31:48 -06:00
Aidan Hobson Sayers
1d8adc7a88 servo: Merge #7623 - Match forwarded events as atoms, fixes #7495 (from aidanhs:aphs-atomise-forwarded-events); r=nox
Hopefully I understood the issue correctly...

Source-Repo: https://github.com/servo/servo
Source-Revision: 4935323ebf29218321c6f566719e3a2113b91bda
2015-09-15 12:11:11 -06:00
James Graham
ee9e4cd83d servo: Merge #7548 - Add get/set pref extensions to webdriver server (from jgraham:webdriver_prefs); r=metajack
This can be used by the test framework to ensure that the correct prefs are
set for a test without restarting the browser

Source-Repo: https://github.com/servo/servo
Source-Revision: 67cf241acdeb58d05cf2150224ee7ea9e43f0669
2015-09-14 22:08:28 -06:00
João Oliveira
2cd22c245e servo: Merge #7631 - rewrite uses of map as if let (from jxs:rewrite_uses_of_map); r=jdm
in the end only found this case as re-writable, am i missing some?

Source-Repo: https://github.com/servo/servo
Source-Revision: e3d36bfceb21bc96bb6f791c295a7e18da6e3dc4
2015-09-14 21:31:53 -06:00
Corey Farwell
5803851be8 servo: Merge #7619 - Implement <font> 'face' attribute (from frewsxcv:font-face); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 25abe646f860edc542169fdd1b53a4fd7fb615f6
2015-09-14 18:32:17 -06:00
Aidan Hobson Sayers
288627acdc servo: Merge #7633 - Remove SslProvider, fixes #7627 (from aidanhs:aphs-remove-sslprovider); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e107f112d87a4cac66e8aa1d5b2daf1e4bcdebc7
2015-09-14 14:57:55 -06:00
zmike
e9f92267ef servo: Merge #7629 - sync cef interfaces with upstream (from zmike:THE_RETURN_OF_EMBEDDING); r=larsbergstrom
@larsbergstrom I guess

Source-Repo: https://github.com/servo/servo
Source-Revision: 3d420abe405275e673de8f3b8a6f33ca94fb7612
2015-09-14 14:24:18 -06:00
João Oliveira
d054140b6d servo: Merge #7549 - Move setting UserAgent header into http_loader::load, (from jxs:master); r=jdm
closes #7541

Source-Repo: https://github.com/servo/servo
Source-Revision: 35c30ab70df6821992769ff7a2b057cfe2f2673c
2015-09-14 08:57:42 -06:00
Ms2ger
ff563dd32f servo: Merge #7622 - Use static atoms in some places (from Ms2ger:atoms); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 97710f0739410e7b464591f482c2dc117e528bbe
2015-09-14 02:38:02 -06:00
Anthony Ramine
6953aa403a servo: Merge #7606 - Move the type_id fields to DOMClass (from nox:move-typeid); r=jdm
Cc @michaelwu.

Source-Repo: https://github.com/servo/servo
Source-Revision: d5ee58caf269779e86b2efc50ddf37d3e4eba9b9
2015-09-13 11:53:42 -06:00
Corey Farwell
48e3536edb servo: Merge #7615 - Add obsolete reflecting attributes on <a> and <link> (from frewsxcv:obsolete-link-anchor); r=nox
From my understanding, setting any of these will not affect any
presentational hints for the elements

Source-Repo: https://github.com/servo/servo
Source-Revision: 6a21bcd9c561d728bab5220bb5b9d5058c34e8c8
2015-09-13 10:47:32 -06:00
Ms2ger
788c16881b servo: Merge #7616 - Stop implementing Reflectable for JS<T> (from Ms2ger:js-reflector); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e10c5c74cc48a203aaeb7da3fd51b062c1311eac
2015-09-13 09:20:25 -06:00
Corey Farwell
e074261c2a servo: Merge #7614 - Fix a few incorrect Element interfaces (from frewsxcv:incorrect-element-interfaces); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: dbd614045b415640c0d466a68ea26cd94ece356c
2015-09-13 06:23:42 -06:00
Mathieu Rheaume
fe567c36c0 servo: Merge #7559 - Remove 'get_*' on getters as per RFC 0344 on canevas, compositing, devtools, gfx, layout, net, profile, servo and webdriver_server (from ddrmanxbxfr:RFC-0344-Work); r=nox
Hi guys,

I just gave a big pass of RFC-0344 as per issue #6224 .

Pretty much renamed all the get_* fn that were used to fetch values.

I hope I didn't rename too much.

As said in the issue discussion, I didn't touch at the scripts folder so we keep the unsafe ones pretty explicit.

I've ran the whole pass of test, everything seems to be still working right :).

Please give feedback on this PR.

Thanks for looking into it.

Source-Repo: https://github.com/servo/servo
Source-Revision: b05f4aa3aa3085e65cb75433ae37bf272216d033
2015-09-12 18:29:56 -06:00
Simon Sapin
4aaf262e20 servo: Merge #7610 - Replace reftest with a problematic file name with a unit test (from servo:filename-parsing); r=saneyuki
Fix #7609, "error: unable to create file tests/ref/hello_a?foo#bar.html (Invalid argument)" during git checkout on Windows.

Behavior change: passing an nonexistent file name on the command line now shows a blank page (like network errors) rather than exit with an error message.

Source-Repo: https://github.com/servo/servo
Source-Revision: 815e981c69f6fe09bcbf3c1937ed817f2cd38813
2015-09-12 09:10:37 -06:00
Corey Farwell
503d9bf6ec servo: Merge #7613 - Minor script::dom:🪟:Window cleanup (from frewsxcv:minor-window-cleanup); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: a63e2935ed7847442aae995237396da117a2c53b
2015-09-12 08:05:18 -06:00
Patrick Walton
3574beaa4c servo: Merge #7600 - layout: Allow the overflow area of the <body> to be scrolled (from pcwalton:body-overflow-scroll); r=mbrubeck
Fixes scrolling on Twitter.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 8d7ba12f28a873880c1f51b122d4fc185294c849

--HG--
rename : servo/tests/html/lipsum.html => servo/tests/html/percentage-body-height.html
2015-09-11 11:20:13 -06:00
Patrick Walton
2aaea3a168 servo: Merge #7550 - layout: Defend the block formatting context speculation against going wrong in the presence of blocks that overflow in the inline direction (from pcwalton:block-formatting-context-overflow); r=mbrubeck
Makes the Google search result links appear.

Closes #7298.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: c3f9e1813ac93d0e143397ea5df9d4e5bc452d73
2015-09-11 10:03:39 -06:00
João Oliveira
f684debdbb servo: Merge #7570 - ignore length on .lock files on tidy.py, (from jxs:ignore_length_tidy_script); r=Ms2ger
closes #7569

Source-Repo: https://github.com/servo/servo
Source-Revision: 3a97455a65a8eafab313bd583a6b1f811605168f
2015-09-11 03:07:34 -06:00
Bryan Bell
79253e9dd2 servo: Merge #7602 - Improve err msg when failing to output png (from bjwbell:improve_err_msg_when_writing_png); r=pcwalton
Before on at least Linux the following failure is hard to root cause:

    [~/servo] ./target/debug/servo -o tmp.png ./tests/html/lipsum.html
    thread '<main>' panicked at 'assertion failed: res.is_ok()', .../compositor.rs:1508
    thread '<main>' panicked at 'You should have disposed of the
    pixmap...', .../rust-layers/.../surface.rs:166

Now:

    [~/servo] ./target/debug/servo -o tmp.png ./tests/html/lipsum.html
    thread '<main>' panicked at 'Error writing png: Permission
    denied (os error 13)', .../compositor.rs:1508
    thread '<main>' panicked at 'You should have disposed of the pixmap
    properly with destroy()! This pixmap will leak!', .../rust-layers/.../surface.rs:166

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: eb556c1ce6ed52e2a71743a088860ac0e0df3e89
2015-09-10 23:55:41 -06:00
Connor Imes
0214babbfa servo: Merge #7595 - Refresh cef and gonk lock files; update heartbeats dependencies (from connorimes:update-hbs); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: f190ba360e41465d43972826b6715eb39e7b9822
2015-09-10 13:31:57 -06:00
Connor Imes
3a97e2f13e servo: Merge #7593 - Add documentation to profile crate on Heartbeats and energy-profiling (from connorimes:energy-profiling-doc); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 4e69f301e19e6f1d9a1b4f231e5a445888b03370
2015-09-10 11:29:29 -06:00
Jack Moffitt
ded3151517 servo: Merge #7594 - Fix compiler warnings (from metajack:embedding-warnings); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: e6ed6250b795682c41a65a5cf536321fa1621315
2015-09-10 09:42:33 -06:00
Anthony Ramine
6d6557091f servo: Merge #7592 - Introduce NonElementParentNode (from nox:nonelementparentnode); r=jdm
This is the interface where Document.getElementById() belong.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4c64c870c63bc41728ccd371e19fc4246427aa2c
2015-09-10 07:29:47 -06:00
Corey Farwell
54e55fc66f servo: Merge #7591 - Link to Servo issue instead of Gecko bug (from frewsxcv:servo-issue); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: d64331b7d27189e6620d7df61e82cf59e776a2ff
2015-09-10 02:56:11 -06:00
David Zbarsky
484d93a674 servo: Merge #7426 - Implement Range#surroundContents (from dzbarsky:surroundcontents); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: c349b7b3a1f335a9b57e4f41998c28656cd1e5ef
2015-09-09 21:54:06 -06:00
Bryan Bell
6a96bf0eb9 servo: Merge #7527 - Use SIMD in fast path for advance_for_char_range (from bjwbell:simd_advance_for_char_range); r=metajack
In advance_for_char_range add a fast SIMD code path for the the common
case where there are no detailed glyphs.


r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: c83825938346f794790bcd1343b7375e9e34f443
2015-09-09 16:55:16 -06:00
Connor Imes
a7948af624 servo: Merge #7581 - Add energy monitoring and characterization scripts (from connorimes:power-profiling); r=larsbergstrom
Add the energy-profiling feature.  Users can compile the proper (or their own) version of energymon libraries to capture power/energy data at runtime.  The results are accessed through heartbeats.

Additionally, there are a couple of python scripts to enable heartbeats for profiler categories and process the results into some visualizations to help understand how time and energy is being spent in Servo.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7b6c341900a66d1177fdc3f46705e9fb07a5b1dc
2015-09-09 15:24:48 -06:00
Bryan Bell
754f4baf13 servo: Merge #7577 - gfx: Fix bug with 1px width borders disappearing (from bjwbell:borders_pixel_rounding_bug); r=mbrubeck
In to_nearest_azure_rect when rounding to pixel coordinates, maintain
the invariant of rect non-overlap (if before rounding two rects don't overlap).

The previous code rounded the rect top left corner to the nearest pixel with
the size rounded to the nearest pixel multiple which can violate the
non-overlap condition, e.g.
10px×9.60px at (0px,6.6px) & 10px×9.60px at (0px,16.2px)
would round to
10px×10.0px at (0px,7.0px) & 10px×10.0px at (0px,16.0px), which overlap.

Instead round each corner to the nearest pixel.

For rects that dont need to satify the non-overlap condition and with
width or height between 0.5px and 1px, rounding each rect corner to the
nearest pixel can yield an empty rect e.g.
10px×0.6px at 0px,28.56px -> 10px×0px at 0px,29px.

For this scenario a new function to_nearest_non_empty_azure_rect
rounds the rect top left corner to the nearest pixel and the rect size
to the nearest pixel multiple. It's possible for non-overlapping rects
after this rounding to overlap.

This should fix https://github.com/servo/servo/issues/7184 "rounding ...borders not to be visible", without breaking https://github.com/servo/servo/issues/7152 "Underlines less than 1px high sometimes invisible".

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: f29ddb4b5d5eed595df37fa989511d2cb3aa8dfd
2015-09-09 13:30:41 -06:00
Jack Moffitt
b137d4f8c3 servo: Merge #7583 - Fix some build warnings (from metajack:warning-police); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 50f5ae1d358cd5472ad3f7f72d05568e44ec8932
2015-09-09 12:53:21 -06:00
Martin Robinson
9546305f71 servo: Merge #7563 - Layerize StackingContexts that are on top of layers (from mrobinson:layerize-stacking-contexts); r=pcwalton
StackingContexts that should be painted on top of StackingContexts that
are already layerized should automatically get their own layer. This
will ensure proper painting order.

Source-Repo: https://github.com/servo/servo
Source-Revision: c0381c732569b9abe6282c6c750533bc271a2019
2015-09-09 10:52:56 -06:00
Akos Kiss
c05804b21a servo: Merge #7576 - Bump up skia and js packages to follow recent fixes (from akosthekiss:bump-skia-js); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 0d37e8f96b7f40d14bf4fbb0b66e42a01302a336
2015-09-09 04:37:08 -06:00
Eli Friedman
4875f833cb servo: Merge #7523 - Fix up some unnecessary uses of unsafe (from eefriedman:unnecessary-unsafe); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: be9a9ffda10fa2c50b13f79dabd49255f29f12f6
2015-09-09 00:05:17 -06:00
Corey Farwell
22eaaf37cf servo: Merge #7568 - Use OS-agnostic filesystem paths in Python (from frewsxcv:os-agnostic-paths); r=jdm
This will eventually need to be done for #1908

Source-Repo: https://github.com/servo/servo
Source-Revision: 83972196600f04e817ddb53fda18142778905307
2015-09-08 22:29:04 -06:00
Connor Imes
e0cb1601d6 servo: Merge #7567 - Add heartbeats for new script profiler categories (from connorimes:script-heartbeats); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 2c77776428105b68c1b7c86f4d6b4e0223db3185
2015-09-08 21:59:54 -06:00
Glenn Watson
05adb33d2b servo: Merge #7557 - Handle cases where the layout root is None. Fixes #6375 (from glennw:fix-layout-panic); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: 4221b354cfc05e4857ba4c1a160298965e243330
2015-09-08 20:39:09 -06:00
Akos Kiss
6924f44968 servo: Merge #7565 - Make the use of gold linker configurable (from akosthekiss:config-gold); r=SimonSapin
Currently, ld.gold is always used for linking if found on the
system. There are some cases however when one may want to opt out
from using it. This patch adds the boolean field `rustc-with-gold`
to the `[tools]` section of `.servobuild`, which if set false,
disables the use of ld.gold.

Source-Repo: https://github.com/servo/servo
Source-Revision: 273306056428e0378ebf27a1573a783aad866b5f
2015-09-08 13:57:13 -06:00
Connor Imes
2ef2604ce5 servo: Merge #7547 - Combine script profiling with profile crates. Fixes #7514 (from connorimes:move_script_profiling); r=jdm
The script crate had its own built-in profiling which was basically doing the same thing as the profile crate.  This wraps the internal profiling around the main profile functionality.  Script-related tasks are now added to the ProfilerCategory enum.

Source-Repo: https://github.com/servo/servo
Source-Revision: ca36779a7e8298918b21ae243a43a71b1520119b
2015-09-08 09:32:56 -06:00
wilmoz
094717dc16 servo: Merge #7494 - Add a mach command to upgrade wptrunner (from wilcus:upgradeWptRunner); r=jdm
https://github.com/servo/servo/issues/7491

Source-Repo: https://github.com/servo/servo
Source-Revision: c44213219668d054ed267ac29a2513309b342e5f
2015-09-08 08:41:05 -06:00
Anthony Ramine
d078f1011a servo: Merge #7531 - Implement <template> (from nox:template); r=Ms2ger
All tests using iframes can't currently pass, same for innerHTML-related tests with <template> elements. The latter contradicts the spec, see the links below.

Apart from this, they work, AFAICT.

https://github.com/servo/html5ever/issues/164
https://www.w3.org/Bugs/Public/show_bug.cgi?id=27314

Source-Repo: https://github.com/servo/servo
Source-Revision: 5a0be12e43f92fc64b1d8f5d35f9dadaa4b53521
2015-09-08 02:29:00 -06:00
Mathieu Rheaume
ba172810f7 servo: Merge #7556 - Remove unnecessary mut on variables declared in components/layout/block.rs (from ddrmanxbxfr:MutabilityCleanup); r=Ms2ger
Small cleanup over mutable variables in components/layout/block.rs.

Thanks for looking into it!

Source-Repo: https://github.com/servo/servo
Source-Revision: 282f9ade931342e9cd1ae72fde9dd9f88cb5b34a
2015-09-08 00:28:42 -06:00
Michael Howell
baaf4b8258 servo: Merge #7560 - Include the overflow of the inline block itself (from notriddle:master); r=pcwalton
Closes #7372.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3fa5c9185cd699a5cad000923cd1ac8826dc819a
2015-09-07 21:40:03 -06:00
Patrick Walton
f6a4b6cc8c servo: Merge #7533 - layout: Use a special path that treats margin: auto as zero for inline-block inline size computation (from pcwalton:inline-block-margin-auto); r=mbrubeck
Places the search icon in the right place on the Google SERPs.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 0bc7ad9b08d3ae978be4a95687025f00cfcff312
2015-09-04 21:53:17 -06:00
wilmoz
b05007f610 servo: Merge #7337 - Documentation of inheritance in type ids (from wilcus:InheritanceDocumentation); r=mbrubeck
Aditional documentation about this issue https://github.com/servo/servo/issues/7205

Source-Repo: https://github.com/servo/servo
Source-Revision: da0b9d7c0185f0898fd47f5326e8e084d08a2fc0
2015-09-04 21:18:52 -06:00
Patrick Walton
710921416c servo: Merge #7534 - layout: Lay absolutely-positioned blocks with inline containing blocks out of flow (from pcwalton:inline-absolute-out-of-flow); r=mbrubeck
Removes the long space before the site-specific drop-down in the Google SERPs.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: aeb8dce2d914808e4cdb8589d19ee9968897ed94
2015-09-04 19:59:11 -06:00
Bryan Bell
26e99fe98c servo: Merge #7502 - gfx: Add elliptical border radius support (from bjwbell:elliptical-borders); r=pcwalton
TODO: Add code for parsing shorthand border-radius e.g. "border-radius: 10px 5% / 20px".

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 5bad6b1b6e149246e8949fd42059e777d1cbd9e3
2015-09-04 18:46:24 -06:00
Martin Robinson
f2bbff72b6 servo: Merge #7487 - Have PaintLayers own StackingContexts instead of the opposite (from mrobinson:paint-layer-upgrade); r=pcwalton
Previously, StackingContexts might have a PaintLayer. We switch the
ownership, for several reasons:

   * We want PaintLayers to potentially contain something other
     than a StackingContext soon.
   * We want to delay the creation of PaintLayers until the last
     minute, so that we can synthesize new layers for sandwiched
     content.

This commit also implements the second goal. Instead of creating
PaintLayers during layout itself, wait until we are sorting and
layerizing a completed DisplayList.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8e0b010117889550effa3ad793e7ee8f9b692b40
2015-09-04 17:31:54 -06:00
Patrick Walton
be44947a8d servo: Merge #7544 - layout: Stop double-counting position: relative offsets for stacking contexts (from pcwalton:stacking-context-relative-offset); r=mbrubeck
Fixes the location of the gear menu on the Google SERPs.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 7df4ff7572bf131aca3643d078dfe7823b3fc347
2015-09-04 12:55:04 -06:00
James Graham
fbe716c4c1 servo: Merge #7545 - Update prefs API to return an Option<bool> (from jgraham:get_pref_option); r=jdm
This allows for situations where there is no reasonable default
to apply for the pref value e.g. when we are just listing values

Source-Repo: https://github.com/servo/servo
Source-Revision: 9d4217990060b3d2c93a4b39fe391985f01a5979
2015-09-04 11:02:12 -06:00
Matt Brubeck
e9926732de servo: Merge #7543 - Update glutin (from mbrubeck:glutin-up); r=pcwalton
To servo/glutin#46

Source-Repo: https://github.com/servo/servo
Source-Revision: f8ba9a81116e11249845189c6af8978df1693c4b
2015-09-04 10:23:58 -06:00
Manish Goregaokar
cf0446c9f9 servo: Merge #7536 - More clippy fixes (from Manishearth:clippyfix); r=Ms2ger
Elided almost all the lifetimes and removed needless returns. Mostly done by sed + manual fixes.

r? @nox

Source-Repo: https://github.com/servo/servo
Source-Revision: c2c2646d37614ece5869af861993c3d619f6e003
2015-09-04 07:59:04 -06:00
João Oliveira
360ac1d5bf servo: Merge #7508 - Add style_traits crate to improve crate separation, (from jxs:master); r=SimonSapin
closes #7353

Source-Repo: https://github.com/servo/servo
Source-Revision: cc1eb3f741554b3f1711cd1938d1c16b6b7d2879
2015-09-04 06:46:11 -06:00
Tetsuharu OHZEKI
7a67b445e9 servo: Merge #7538 - script: change requestAnimationFrame returns the unsigned long type (from saneyuki:requestAnimationFrame); r=Ms2ger
By https://github.com/whatwg/html/pull/97, the returned type of`requestAnimationFrame()` and the argument type of `cancelAnimationFrame()` are changed to `unsigned long` WebIDL type.

Source-Repo: https://github.com/servo/servo
Source-Revision: 43e7cd5faed53802a9c2ffcac2c171f29f460cff
2015-09-04 02:49:16 -06:00
Simon Sapin
5d9da13fa8 servo: Merge #7539 - Fix or silence some warnings (from servo:warnings); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 8d21a7924676454d954a3e649bb649d46968b5d3
2015-09-04 02:15:10 -06:00
Simon Sapin
1b93452113 servo: Merge #7518 - Initial support for CSS Custom Properties (from servo:custom-properties); r=pcwalton
https://drafts.csswg.org/css-variables/

Missing:

* `var()` in shorthand property declarations.
* Correct handling of EOF in custom property declarations.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 05deb3dcc8be9a0a623536467628aa68ae754918
2015-09-03 16:09:02 -06:00
Matt Brubeck
2393e84084 servo: Merge #7443 - Implement get_table_for_tag on FreeType (from mbrubeck:get_table); r=pcwalton
Updates freetype to pick up servo/rust-freetype#37

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 0ad284766b3f12097dce1e5858b5d07e870478eb
2015-09-03 14:37:38 -06:00
Thiago Pontes
cfdc5c2426 servo: Merge #7522 - Make use of FromStr and Default traits in lib canvas (from thiagopnts:from-str-canvas); r=Manishearth
fixes #7517

Source-Repo: https://github.com/servo/servo
Source-Revision: d3efcb707c6dc26b171ffada2e1ca48d5abbb4b6
2015-09-03 12:36:23 -06:00
Patrick Walton
0238af05da servo: Merge #7207 - layout: Fix several bugs relating to inline borders, padding, and margins (from pcwalton:surround-whitespace-stripping); r=mbrubeck
* The code that attempted to strip out borders that span multiple
  fragments in the same element could go wrong if fragments were
  stripped out due to text clumping or whitespace stripping. This patch
  rewrites that code to maintain flags in the inline fragment context
  specifying whether the node is the beginning or end of the element.
  Not only is this easier to maintain, it's closer in spirit to what roc
  originally suggested two years ago: it's isomorphic to "begin element,
  end element" markers for inline layout.

* Padding and margins for spans containing inline-blocks are now
  properly handled via a division of labor between the `InlineBlock`
  fragment and the `BlockFlow` that represents the inline-block.

* Unscanned text fragments may not be joined together into a text run if
  borders, padding, or margins separate them.

Because Servo now matches the rendering of Gecko and WebKit on the
`input_button_margins_a` reftest, I had to modify it to add some
vertical alignment.

The combined effect of all of these fixes places "Advertising" on the
right place on google.com.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 8bbace7815b489e1b87df2ec496e65e78721d929
2015-09-03 11:55:03 -06:00
Josh Matthews
63971b3b27 servo: Merge #7528 - Remove obsolete method call that breaks ./mach update-css (from jdm:updatecssfix); r=frewsxcv
r? @frewsxcv

Source-Repo: https://github.com/servo/servo
Source-Revision: 33063fd887d8f663f11ce08bea50e446c8d50f44
2015-09-02 23:29:03 -06:00
Corey Farwell
08effb93a3 servo: Merge #7526 - Upgrade rust-block to silence warning (from frewsxcv:bump-no-warnings); r=jdm
https://github.com/SSheldon/rust-block/pull/1

Relevant to https://github.com/servo/servo/pull/7513

Source-Repo: https://github.com/servo/servo
Source-Revision: 3a09c027e2f19b3b0fdf0b55730532b942103411
2015-09-02 22:57:13 -06:00
Eli Friedman
dc0d48fb63 servo: Merge #7525 - Cut required desktop OpenGL version from 3.0 to 2.1 (from eefriedman:ogl-version-requirement); r=glennw
Mesa software rendering on Ubuntu 14.04 only claims to support OpenGL 2.1,
so servo crashes on startup.  It seems to work fine if an OpenGL 2.1 context
is requested.

Source-Repo: https://github.com/servo/servo
Source-Revision: 625b4938efbaf45cb4a9802796bd3e29bb9be376
2015-09-02 21:12:34 -06:00
Eli Friedman
5a8f5125e3 servo: Merge #7521 - Remove unnecessary uses of DOMRefCell (from eefriedman:unnecessary-refcell); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 0f596cdb55ed5123ad5f9b095e22214fab8c82b7
2015-09-02 17:28:37 -06:00
Manish Goregaokar
f3aaf0f5c3 servo: Merge #7519 - Make style clippy-free (from Manishearth:clippyfix); r=SimonSapin
(except for properties.rs)

I might add more fixes to this PR later.

r? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: d01ab617341891bf0c91f1fba0ebcf13df9150a6
2015-09-02 16:11:30 -06:00
Prabhjyot Singh Sodhi
3406659245 servo: Merge #7511 - make AttrVal tokens() and atom() return or panic (from psdh:attrtokato); r=Ms2ger
Fixes #7479

Source-Repo: https://github.com/servo/servo
Source-Revision: da02dba9793f373c6c9cdc1e0bd1c3411cfcc4ba
2015-09-02 15:03:10 -06:00
Corey Farwell
116fee3cab servo: Merge #7516 - Allow 'script' component to enter a 'built' state (from frewsxcv:dirty-script-dir); r=metajack
After this pull request merged:

https://github.com/servo/servo/pull/7209

the 'script' component would never enter a 'built' state. In other
words, if one calls `mach build`, lets it complete, then calls `mach
build` again, the 'script' component would rebuild even though we
supposedly just built it. This was due to the `ParserResults.pkl`
getting placed in the `components/script` directory instead of the
output directory, causing cargo to think that there were unbuilt files.

Source-Repo: https://github.com/servo/servo
Source-Revision: ded6159d48901fc814d4b4395102fdbe0d9e5817
2015-09-02 14:29:21 -06:00
Ms2ger
5fc94f81ad servo: Merge #7515 - Lint devtools (from Ms2ger:devtools-lint); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: b1b8258a87cf4db69039057124057b0906186d43
2015-09-02 12:32:44 -06:00
Brandon Fairchild
506a0fb2e2 servo: Merge #7499 - Improve style nit check for space after a comma (from nerith:style); r=metajack
Fixes #7345.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3424e234c8c86e787edfce6dc63ed155617e0e85
2015-09-02 12:05:58 -06:00
Sean McArthur
0316cdde51 servo: Merge #7418 - Enable HTTP connection pooling (from jdm:httppool); r=jdm
Rebased and adjusted version of #6948. Closes #6948.

Source-Repo: https://github.com/servo/servo
Source-Revision: 366d4a83f1448e115cf998cc6c4e8c564773da65
2015-09-02 10:48:07 -06:00
Corey Farwell
0b7018a49c servo: Merge #7513 - Upgrade some dependencies to silence warnings (from frewsxcv:bump-no-warnings); r=Ms2ger
In order to pick up these changes:

* servo/euclid#101
* netvl/xml-rs#102
* jgraham/webdriver-rust#17
* ecoal95/rust-offscreen-rendering-context#27

Source-Repo: https://github.com/servo/servo
Source-Revision: b7c88dd547c01d99c77c90329cc09f13a90a53b7
2015-09-02 09:42:29 -06:00
Martin Tomasi
c318b0ac00 servo: Merge #7429 - Fixed serialize_list to no longer append an additional space at the e… (from GyrosOfWar:serialize_list_space_fix); r=jdm
…nd of the string.

Fixes #7404

Source-Repo: https://github.com/servo/servo
Source-Revision: e1ede2074d2ceb74c0d9f38b23697f17dc3a8fc9
2015-09-02 09:15:16 -06:00
Corey Farwell
89cf6e9dfe servo: Merge #7117 - Reenable "Use one Python virtual environment for all mach commands" (from frewsxcv:python-venv); r=jdm
Address the issues brought up by https://github.com/servo/servo/pull/7103

The revert requires an upgrade to wptrunner (for the mozlog 3.0 compatibility) because the latest wptrunner depends on [this](https://github.com/w3c/wpt-tools/pull/27))

/cc @Ms2ger @metajack

Source-Repo: https://github.com/servo/servo
Source-Revision: 4e6bbe227299b3b8a08cba7e613952806ada4402
2015-09-02 08:44:27 -06:00
Anthony Ramine
719d3d7bcc servo: Merge #7452 - Introduce VirtualMethods::attribute_mutated() (from nox:cleanup-attributes); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: eaf90c0b1c14717fb580bb0bdb8f6c4db363ace6
2015-09-02 08:14:33 -06:00
Simon Sapin
2c2c527fd4 servo: Merge #7496 - Implement CSS3 Calc (from servo:calc_); r=SimonSapin
This is #7185 with one commit added to make it build merged with master, which got support for the `ch` unit in the meantime.

Source-Repo: https://github.com/servo/servo
Source-Revision: a547ae6826cf171c42b090408a4c20d58d1829d9
2015-09-02 02:33:18 -06:00
Simon Sapin
ea7357b400 servo: Merge #7509 - Upgrade to rustc 1.4.0-dev (cb9323ec0 2015-09-01) (from servo:rustup_2015-09-01); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: f49615ca7b5d98ee603cf42f705073fbe4d414fb
2015-09-02 01:31:23 -06:00
Xiao Chuan Yu
721367b664 servo: Merge #7506 - Add note on Ubuntu 14.04 dependencies error (from xiaochuanyu:patch-2); r=metajack
Update README with note about possible problem installing dependencies on Ubuntu 14.04.
See #6158 for details.

Source-Repo: https://github.com/servo/servo
Source-Revision: dbf549ea32d23cf96b7f49e3333c068aaf050bc3
2015-09-01 23:31:34 -06:00
Martin Robinson
401bdcb59c servo: Merge #7503 - Upgrade to the latest rust-layers (from mrobinson:iframe-issue); r=glennw
This should fix a bug where hidden iframes are not properly clipped
away from the compositor scene. This commit adds a test for this
behavior.

Fixes #6849.

Source-Repo: https://github.com/servo/servo
Source-Revision: ba2cb77c26006dc378553d757e88de8ab86c4d5b
2015-09-01 22:18:52 -06:00
farodin91
d45cce0ef0 servo: Merge #7500 - Implement viewport functions for window #1718 (from farodin91:viewport); r=jdm
@jdm r?
closes #6875

Source-Repo: https://github.com/servo/servo
Source-Revision: a844c0b0e8ca26e3bd76a42616e406fad8f7e5a5
2015-09-01 21:31:25 -06:00
Mathieu Rheaume
d6113b8219 servo: Merge #7504 - Issue #7501 emove unused time function in time module of profile (from ddrmanxbxfr:RemoveUnusedTimeFunction); r=jdm
Title sums it up. Time function in the time module of profile crate was unused.

Unless we plan to use it soon, we should clean it up

See issue #7501 related to it.

Thanks.

Source-Repo: https://github.com/servo/servo
Source-Revision: a58f71c38eb64a723cfa6f69c75c03e0d46c805e
2015-09-01 19:57:42 -06:00
Patrick Walton
4837343cde servo: Merge #7498 - layout: Implement partial support for inline absolute containing blocks (from pcwalton:inline-absolute-containing-blocks); r=mbrubeck
Improves the position of the down arrows on google.com SERPs.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: e46499a5dfd9189fc439c228d9a5fe23dfec0d7d
2015-09-01 16:36:58 -06:00
Ravi Shankar
4b0b52be5d servo: Merge #7438 - Tidy can now check for version conflicts (from Wafflespeanut:cargo-tidy); r=jdm
fixes #7133

Source-Repo: https://github.com/servo/servo
Source-Revision: 8b5418f58f5b80e3485ec9eff24d14dc0fbea9f9
2015-09-01 14:38:48 -06:00
Corey Farwell
52d08c3cd3 servo: Merge #7209 - Cleanup/refactor build scripts for DOM codegen (from frewsxcv:codegen-build-cleanup); r=metajack
Prior to this commit, the script codegen makefile relied on an
intermediary pythonpath.py file that handled python dependencies and
incorporated a couple hacks to get the codegen building working. This
commit removes that intermediary file and attempts to make the script
codegen build process cleaner.

Source-Repo: https://github.com/servo/servo
Source-Revision: 493da96cae7cc0e3b533fc1f01cc0c5e38a27e02
2015-09-01 13:53:49 -06:00
Patrick Walton
1c17f3c07c servo: Merge #7313 - layout: Make overflow calculation take relative percentages into account (from pcwalton:position-relative-percentage-overflow); r=mbrubeck
This necessitated changing overflow to be calculated by the parent flow
if relatively positioned children are present. That is because the
overflow regions cannot be calculated without knowing relative offsets,
which themselves cannot be calculated without knowing the parent size
(because of percentages). To accomplish this without sacrificing
parallelism in the non-relative case, this patch splits overflow into
"early" and "late" computation. Late overflow computation cannot be
parallelized across children, while early overflow computation can.

Makes the "Apple Music" text show up over the full-bleed promotional
background on apple.com.

r? @SimonSapin -- would appreciate a look over the iframe test case that was changed.

Source-Repo: https://github.com/servo/servo
Source-Revision: dcaf66397a06246b9b4fdca3a10af1508a11f1e8
2015-09-01 12:33:07 -06:00
Simon Martin
b1a37d6095 servo: Merge #7449 - Issue #7393: Properly sniff mislabeled feeds (from simartin:issue_7393); r=metajack
Hi,

This patch is an attempt to fix https://github.com/servo/servo/issues/7393, where the code detecting mislabeled feeds (see https://mimesniff.spec.whatwg.org/#sniffing-a-mislabeled-feed) had spurious space in the URLs we need to match.

Note that my testing (in particular rdf_rss_ko_2.xml) highlighted a flaw in "matches", that failed to check that there were more bytes in the string being checked than in the string we're checking against, which completely broke the whole step 5.2.7.

Thanks in advance for your review.

Cheers,
  Simon

Source-Repo: https://github.com/servo/servo
Source-Revision: 9f85370885c84ebb58cd7f4a72a6e78948f468dc
2015-09-01 11:22:52 -06:00
Hugo Thiessard
9d89ba65ed servo: Merge #7459 - Issue #7365 : test cursor position after clearing selection (from Mylainos:Issue-#7365); r=jdm
In textinput test if the cursor is at the correct position when clearing a selection by press an arrow key.

edit_point is always at the end of the selection, should I test when it's at the beginning ?

Source-Repo: https://github.com/servo/servo
Source-Revision: 4404809e6d591ca7903e43deb693745300560d13
2015-09-01 09:23:12 -06:00
erneyja
c4747f6c7e servo: Merge #7468 - Making test-tidy check that = have space after them (from JoshTheGoldfish:Issue7460); r=jdm
For issue #7460. Need to ensure compatibility with #7390.

Source-Repo: https://github.com/servo/servo
Source-Revision: 15de679f115f06a8ce33625d77e820b049730d4b
2015-09-01 08:33:02 -06:00
Josh Matthews
4d7a58a23d servo: Merge #7486 - Remove hack for android builders now that build is successful once more (from jdm:bad-android); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: 8a15f941ed5e4b0697556bfafcfbb02be96a4569
2015-09-01 07:50:56 -06:00
Prabhjyot Singh Sodhi
74ca083aa3 servo: Merge #7489 - removing unnecessary clones (from psdh:clearClone); r=jdm
Fixes #7485

Source-Repo: https://github.com/servo/servo
Source-Revision: 696ccf67943772c6eb496db729e3c22d5176c4a3
2015-09-01 07:02:56 -06:00
Eli Friedman
6924c95bcf servo: Merge #7488 - Simplify reflection usage in Actor code (from eefriedman:reflect-gate); r=jdm
The fixed version is shorter, and doesn't use unstable features.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7e8b8293b051ba787e7717b6bf42655f4ee26f1a
2015-08-31 22:24:08 -06:00
Corey Farwell
de4ce06ffa servo: Merge #7483 - Enforce linking to spec for method implementations via macros (from frewsxcv:macro-spec-links); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 4984aaf8bfca0698a132e10e9f48cef42d1b8302
2015-08-31 21:17:54 -06:00
Michael Howell
0989ae0e2b servo: Merge #7474 - Inline constraint resolver for absolutely positioned tables (from notriddle:master); r=pcwalton
Fixes #7425.

Source-Repo: https://github.com/servo/servo
Source-Revision: dee6283483a79b034565a6f9ad979f87c2765f78
2015-08-31 20:35:06 -06:00
meh
b4a671f320 servo: Merge #7448 - Re-export crates needed to use the Servo Rust API (from meh:servo-reexport); r=jdm
This helps out on using the Servo API from a Rust project.

Right now I have to explicitly declare all the crates contained in `components` to use them.

Unsure about re-exporting `euclid`, `url` and `layers`, but they are required to use the API and it helps out avoiding version-collisions if you happen to use the wrong version in your own project.

Source-Repo: https://github.com/servo/servo
Source-Revision: a4d5c8ce4ade329ec61b4d211c5bc7499d1df095
2015-08-31 19:45:20 -06:00
Prabhjyot Singh Sodhi
7f352ddb9a servo: Merge #7470 - implemented a pass-through mark_as_root for FlexFlow (from psdh:flexflow); r=pcwalton
Fixes #7467

Source-Repo: https://github.com/servo/servo
Source-Revision: 23d1416cc23d1fb11741a17de17cf79e7591de2b
2015-08-31 18:28:14 -06:00
Glenn Watson
fef23dea81 servo: Merge #7482 - Update glutin to get android build fix (from glennw:glutin-update); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: dbf8c9d2bca87b3e9f656b72f2ac05f8688417ba
2015-08-31 16:58:07 -06:00
Corey Farwell
2186c6c262 servo: Merge #7478 - Update spec link pattern to reflect impl signature changes (from frewsxcv:spec-link-tidy-fix); r=jdm
Relevant to #7416

Source-Repo: https://github.com/servo/servo
Source-Revision: 7474b295104e75c013849e104704019dc4801c91
2015-08-31 15:48:24 -06:00
Bryan Bell
c95fdd3382 servo: Merge #7370 - gfx: Border radius support for asymmetric sized borders (from bjwbell:bugfix-unequal-borders); r=pcwalton
When the border-top/right/bottom/left-widths are not equal, the angle on the border corner arc separating the borders isn't PI/4.

For instance if the top border width is much larger than the left border width then most of the border corner should be drawn using the top border color.

This change adds support for calculating the correct angle in the border
corner arc for switching from one border to another e.g. the left border
to the top border.

It supports elliptical border radii for when elliptical border radii are
added.

A ref test is also included.

r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: afc2c381db9c85eba3c10e87966351f77678dc6e
2015-08-31 14:58:33 -06:00
wilmoz
29f74a2734 servo: Merge #7475 - Make test-tidy check that braces have spaces before or after them (from wilcus:checkBracesSpaces); r=jdm
https://github.com/servo/servo/issues/7413
Posible future/past bug fixed in components/script/timers.rs

Source-Repo: https://github.com/servo/servo
Source-Revision: 60c72f601c4dd7cfbc8a4a983099a4b323f1516a
2015-08-31 13:18:23 -06:00
Matt Brubeck
b58fd6468e servo: Merge #7434 - Remove unused font shaping code and flags (from mbrubeck:drop-table); r=pcwalton
r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 108251bece897b96a8b205df22e7d3e790979331
2015-08-31 12:20:49 -06:00
Avi Weinstock
d73f17c92b servo: Merge #7471 - Prevent ClipboardContext::new from panicing on OSX if NSPasteboard#ge… (from aweinstock314:update-clipboard-20150831); r=Manishearth
…neralPasteboard fails (https://github.com/servo/servo/issues/7380).

8c4c31e73a

Source-Repo: https://github.com/servo/servo
Source-Revision: aee011a524c096d7535bb95a1e76a1586784aeb8
2015-08-31 07:22:06 -06:00
Anthony Ramine
a6ba5f48c0 servo: Merge #7466 - Implement FromIterator<Root<A>> for RootedVec<JS<A>> (fixes #5117) (from nox:rootedvec-from-iter); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: fea36ceb9a2d5114e41ce9067911b01f8e4fa5fd
2015-08-31 03:02:05 -06:00
Anthony Ramine
29a0490c0d servo: Merge #7463 - Implement the ch unit as 0.5em (from nox:css-ch); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 1093f6bdcf501bec37dc3d422b24c05eea8e1c23
2015-08-31 02:19:55 -06:00
Sam Gibson
b05493adbc servo: Merge #7139 - Testable net load (from samfoo:testable-net-load); r=jdm
*The goal of this PR is to get early feedback on this before I go too far down the rabbit hole. This new code path is working, and there's several tests I've written as a proof of concept. There are still some regressions that I'll be fixing in the coming days.*

I've abstracted out the request/response cycle so that it's no longer dependent on the Hyper request/response structs. Since request/response @ hyper are structs, not traits, it made mocking them for tests impossible.

Current issues/concerns:

* This relies on boxing the `HttpResponse` that gets returned from the `HttpRequester` because `HttpResponse` is unsized. I don't know if there's a more idiomatic rust-y way of doing this?
* This relies on boxing the `Read` that is now returned from `load` for the same reason.
* The devtools and resource manager channels are still passed into `load`. It might be easier to inject these as trait dependencies instead of chans as well?
* Needs more tests.

🎩

#6727

Source-Repo: https://github.com/servo/servo
Source-Revision: 7dda183022f9bee8b4bdffe8b4cf31e09b885d94
2015-08-30 20:07:40 -06:00
Anthony Ramine
33554ce78f servo: Merge #7407 - Optimise most basic case of .replaceChild() when updating childNodes (from nox:childnodes-replace); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 86da67bb1e229f16b13892c42bd2a444b1b97644
2015-08-30 13:22:41 -06:00
Anthony Ramine
45e79cf82c servo: Merge #7228 - Implement setters in URLUtils (from nox:urlutils-setters); r=jdm
This fixes #6145 and takes care of most of #4250.

Source-Repo: https://github.com/servo/servo
Source-Revision: 347e9b6ef45fb8b0e5a824944e4b1c7338d15554
2015-08-30 12:40:53 -06:00
Anthony Ramine
43d95e4258 servo: Merge #7455 - Do not allow some warnings in codegen anymore (from nox:rm-unused-warnings); r=jdm
This fixes #395.

Source-Repo: https://github.com/servo/servo
Source-Revision: a855669d4ff3ff635cfb84c072ba68650525f275
2015-08-30 11:37:04 -06:00
erneyja
acced968c3 servo: Merge #7445 - Issue #6934 - Implement onerror event handler for AbstractWorker (from JoshTheGoldfish:Issue6934); r=Manishearth
Please review.

Source-Repo: https://github.com/servo/servo
Source-Revision: 3062e0c7b11196e478a7e530e5b969adcce8bf4b
2015-08-30 10:19:15 -06:00
ecoal95
96038bef64 servo: Merge #7442 - Add WebGL shader validation and translation (from emilio:shader-validation); r=jdm
r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 79328c11e320ad10a19d64d280df2e292eaf2e03
2015-08-30 09:29:42 -06:00
Josh Matthews
e97b25662a servo: Merge #7432 - Add dashed CSS properties in CSSStyleDeclaration (from jdm:dashedprops); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 940bcadc134d1cf123518bebd84635b0053d6858
2015-08-30 08:20:57 -06:00
Corey Farwell
ad213d5384 servo: Merge #7433 - Cleanup, refactor FormDataMethods::Get (from frewsxcv:formdata-get); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 89a5e2b3d098fc2afdb95ebcebeb8d7beeebc96a
2015-08-30 07:00:33 -06:00
Corey Farwell
2d6351b526 servo: Merge #7439 - Prefer JSTrue/JSFalse to 1/0 (from frewsxcv:jsfalse-jstrue); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 67cbda4be35a63222553ca806d475581030bea4e
2015-08-28 22:15:21 -06:00
Ms2ger
87fd899fef servo: Merge #7435 - Send the start and end half of a TimelineMarker to the devtools … (from Ms2ger:markers); r=jdm
…PullTimelineMarkers thread together.

Source-Repo: https://github.com/servo/servo
Source-Revision: b68b31a062c245684c3b41132c568fd3836fb30c
2015-08-28 13:51:32 -06:00
Josh Matthews
930db63368 servo: Merge #7436 - Improve debuggability of http_loader panics (from jdm:netthreadname); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 645dd7ba03ea56f01f2e162c590ea047516320ac
2015-08-28 13:14:28 -06:00
Glenn Watson
f52d5f3651 servo: Merge #7417 - Fix requestAnimationFrame in headless mode. Fixes #7296 (from glennw:headless-raf); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: 064b72ac97197e7d1c6cbfd14a4546822c662332
2015-08-28 11:26:09 -06:00
Josh Matthews
b308b8b05e servo: Merge #7391 - Replace catch-all experimental flag with fine-grained boolean prefere… (from jdm:prefs); r=Ms2ger
…nces initialized from a JSON document.

Source-Repo: https://github.com/servo/servo
Source-Revision: 72125f070d7faa0f3a927cf8150fabfb382648e7
2015-08-28 10:08:32 -06:00
Johann Tuffe
d9be999626 servo: Merge #7227 - rewrite of mime_classifier.rs to use more iterators (from tafia:tafia-mime_classifier); r=jdm
Rewrite few parts of the file to use more iterators.

Note that I have **no idea** what the code is actually doing functionally, I just tried to mimic exactly what was being done. All tests are ok

Source-Repo: https://github.com/servo/servo
Source-Revision: 9708c63b9c7ae03d65c7add358a98f7213322a3d
2015-08-28 09:35:47 -06:00
Corey Farwell
bd3049eecd servo: Merge #7431 - Merge adjacent identical impl sections (from frewsxcv:dom-methods-cleanup); r=Ms2ger
Prior to #7416 and #7401, many of these `impl` sections were not
identical

Source-Repo: https://github.com/servo/servo
Source-Revision: 2f227a034a12158e2592b645c061d92c87c8eba6
2015-08-28 08:49:00 -06:00
Simon Sapin
7352f8e6d0 servo: Merge #6854 - Remove usage of slice_chars in script (from servo:slice_chars); r=jdm+Ms2ger
It’s deprecated in the #6850 rustup.

The first commit changes some behavior which was previously incorrect: the spec says indices in DOM strings are UTF-16 code units, not `char` code points.

The second commit should not change behavior, unless I made a mistake.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 2ca48ca4047e83e69abf1fad6978de46ef11c3a7
2015-08-28 05:16:03 -06:00
Ravi Shankar
b22431f8c2 servo: Merge #7428 - tidy will now show its expectation of uses! (from Wafflespeanut:tidy); r=Ms2ger
closes #7427

(pretty errors "inherited" from rust's type checker) :P

![screenshot](https://cloud.githubusercontent.com/assets/6691262/9543298/8cabfdaa-4d95-11e5-9101-14e62781e74e.png)

Source-Repo: https://github.com/servo/servo
Source-Revision: 18de1f2357144d86ea83cd0cb66922e8a2157597
2015-08-28 03:35:53 -06:00
benshu
0d2fab2fb7 servo: Merge #7341 - Add profiling to the script event loop (#5331) (from benschulz:script-profiling); r=Manishearth
I fear the category names are unimaginative; in some cases they may even be misleading or downright incorrect. Requests to rename categories as well as any other feedback are highly appreciated.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6431e8da43817e8a6b1e4757afbcf45c1a629707
2015-08-27 17:00:15 -06:00
Anthony Ramine
c327bc7867 servo: Merge #7416 - Make the traits for the IDL interfaces take &self (from nox:methods-ref); r=frewsxcv
Source-Repo: https://github.com/servo/servo
Source-Revision: 71b277d5675556e61a82ae9dbf3105449c3a8275
2015-08-27 15:08:41 -06:00
Corey Farwell
9cfa971047 servo: Merge #7389 - Implement 'do nothing' methods on Window and Document (from frewsxcv:implement-nihilistic-methods); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 8c301c291a210fb75b1b5c4eba928a146578e3e4
2015-08-27 12:30:28 -06:00
Dhananjay Nakrani
9c0ef7bd59 servo: Merge #7394 - Exclude minified js files and tests/jquery from 'mach grep' (from dhananjay92:Issue#6670); r=Manishearth
Solves Issue #6670.
Now `./mach grep` will not grep from minified js files or from `tests/jquery` directory.

Works only with git >= 1.9.0.

Source-Repo: https://github.com/servo/servo
Source-Revision: ae55b31a7f99633d0fad0cb78cb2043ae18ae437
2015-08-27 10:51:15 -06:00
Anthony Ramine
d2ee701ee9 servo: Merge #7401 - Remove helper traits (from nox:rm-helpers); r=Manishearth
Now that `JSRef<T>` is gone, there is no need to have helper traits.

Source-Repo: https://github.com/servo/servo
Source-Revision: 909429702972d53bf02dfe9a4aa93ea0cb588cf4
2015-08-27 09:38:48 -06:00
João Oliveira
d39bd47b08 servo: Merge #7361 - make dom_struct derive HeapSizeOf (from jxs:master); r=Ms2ger
closes #7357

Source-Repo: https://github.com/servo/servo
Source-Revision: 532fd19d69fd11d06bca7539c722a46fab2c4419
2015-08-27 02:35:45 -06:00
David Rajchenbach-Teller
d56115cce8 servo: Merge #7387 - Fixes #2240 - NamedGetter and NamedSetter do not assume that the arg is named name (from Yoric:2240-2); r=Ms2ger
I'm not totally sure about how to test this.

Source-Repo: https://github.com/servo/servo
Source-Revision: a897795dabf8d84c2da2935c54346a75987bcec5
2015-08-27 00:38:46 -06:00
Manish Goregaokar
672b1a1667 servo: Merge #7395 - Document InheritTypes (from Manishearth:doc-inherit); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 98728a6c751a8959459f80286833152e21fa6cfc
2015-08-26 20:56:02 -06:00
João Oliveira
d5f3a6c35b servo: Merge #7403 - Remove get_unsound_ref_forever function (from jxs:delete_get_unsound_ref_forever); r=nox
closes #7383

Source-Repo: https://github.com/servo/servo
Source-Revision: 7a6d8a30d316fb65c2c846d3d6d0d5e33b29bc5c
2015-08-26 18:37:58 -06:00
Corey Farwell
729a408da3 servo: Merge #7399 - Mention tracking issue for implementing document.all (from frewsxcv:document.all-tracking-issue); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: af4c3901d88b12eba89201f5ff1eb99a80b81061
2015-08-26 16:43:18 -06:00
Manish Goregaokar
8c0333b4f1 servo: Merge #7397 - Remove doublepointer in VirtualMethods, and from_borrowed_ref (from Manishearth:doublepointer-meet-fire); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 48945b0fc1b1f1bee77f6cb30ac10e17614ef283
2015-08-26 15:01:12 -06:00
Martin Robinson
f531c59492 servo: Merge #7392 - Split out layered child stacking contexts in display lists (from mrobinson:layered-separate); r=pcwalton
This patch is in preparation for more dynamic layerization of the
pieces of display lists. It also prevents having to sort the children
by z-index multiple times.

Source-Repo: https://github.com/servo/servo
Source-Revision: fa5ad1c6b4faa2c43ff79e77962b94034a4f2bd0
2015-08-26 11:38:34 -06:00
David Rajchenbach-Teller
d82b2d3407 servo: Merge #7032 - Issue 7031 (from Yoric:issue-7031); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 98d9203d1c768fb5b6cda436d760c97cae35840f
2015-08-26 09:34:42 -06:00
Ms2ger
966df6e301 servo: Merge #7386 - Remove Emitter::markers (from Ms2ger:emitter); r=jdm
The vector is filled in and immediately emptied again. It is clearer to
keep the vector in the caller instead.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0e78815242440dee9bcf84e60c0a1d1fb68d67ad
2015-08-26 08:52:16 -06:00
David Zbarsky
44b7abeb51 servo: Merge #6880 - Don't try to unwrap the result of requestAnimationFrame callback (from dzbarsky:rAF); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 186c1d14d5b5fd8e9fcd5147d47ebe998dfe45cd
2015-08-26 08:13:11 -06:00
Ms2ger
76c624c13b servo: Merge #7378 - Update url (from Ms2ger:url); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 9e52dd8ceee6a1af05f3d167e690b6e80c50fab5
2015-08-26 07:18:34 -06:00
Matt Brubeck
6d588bec56 servo: Merge #7368 - Quit when the glutin window closes (from mbrubeck:closed); r=jdm
Fixes a regression from #7096.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5f9097c0b409c51cb8bc7e2d603747ba716a8d9d
2015-08-26 06:32:27 -06:00
Sara Tang
41aeeb280f servo: Merge #7352 - BinaryOrPlaintextClassifier::classify_impl does not need to return Option (from saratang:issue_7347); r=Ms2ger
Fixes for Issue #7347, though I wasn't sure how to test my code afterwards.

Source-Repo: https://github.com/servo/servo
Source-Revision: 78d72f6a9bfa6c2f4828a6e8c83265526b666f1a
2015-08-26 05:53:38 -06:00
wilmoz
f245e43238 servo: Merge #7360 - Make handle_potential_webgl_error more ergonomic (from wilcus:ErgonomicSignature); r=Ms2ger
https://github.com/servo/servo/issues/7358

Source-Repo: https://github.com/servo/servo
Source-Revision: 06ba2167ba3a247c1e7473a208ee4e692f6fa30e
2015-08-26 05:21:42 -06:00
Patrick Walton
f9b32545e1 servo: Merge #7369 - layout: Fix calculation of overflow for stacking contexts that contain position: relative fragments (from pcwalton:relative-layer-overflow); r=glennw
Fixes placement of the header on espn.go.com.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: a1cd27e6a3b961129fd4710513cc29e4f7c9cc67
2015-08-25 17:16:34 -06:00
Avi Weinstock
d32a3e191d servo: Merge #7364 - Update rust-clipboard to a version that works on Windows and Mac (from aweinstock314:update-clipboard-20140825); r=jdm
Possibly completes #5376.

Source-Repo: https://github.com/servo/servo
Source-Revision: ab55e3ec1012bf6032803c2036059297b19e3b94
2015-08-25 13:59:45 -06:00
wilmoz
bdec4f07d0 servo: Merge #7362 - Forbid multiline imports (from wilcus:ForbidMultilineImports); r=jdm
https://github.com/servo/servo/issues/7356

Source-Repo: https://github.com/servo/servo
Source-Revision: 121110a52a549b44e65aa4ba0669bd75702588ea
2015-08-25 11:29:56 -06:00
ecoal95
d21c34c8ad servo: Merge #6770 - Add multiple WebGL calls and improve error detection (from emilio:webgl-again); r=jdm
Since it probably won't merge until multiprocess lands, I plan to use this PR to keep improving WebGL support until it can land.

Main TODOs are integration of tests, since it seems https://github.com/KhronosGroup/WebGL/issues/1105 is going nowhere, adding missing calls and proper painting via native surfaces instead of readback.

I can't resolve conflicts right now because of time but I will do it soon.

Source-Repo: https://github.com/servo/servo
Source-Revision: a109a333f1f95d4fc677b29e3613b2615514c080
2015-08-25 09:23:00 -06:00
Ms2ger
1ada2ef029 servo: Merge #7359 - Fix the build (from servo:build); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 4d0b4a7b8cda681d1cd6b6cd8e690c0793532d0b
2015-08-25 08:34:13 -06:00
Corey Farwell
3f6ea9b40e servo: Merge #7350 - Make tidy search for files recursively again (from frewsxcv:fix-tidy); r=mbrubeck
In #7348 `os.walk` was replaced with `os.listdir`. The latter is not
recursive, which results in only the root directory files getting linted

The changes to `ignored_files` are needed because calling `os.walk(".")`
results in `./` getting prefixed before each path

Source-Repo: https://github.com/servo/servo
Source-Revision: 842112c0f39542a4fb120ade4afad302221609d8
2015-08-24 18:39:22 -06:00
Patrick Walton
98c6b7ca1c servo: Merge #7340 - layout: Don't crash if quotes: none is specified and generated content uses quotes (from pcwalton:quotes-none-crash); r=mbrubeck
Avoids a crash on The Verge.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: e97d8bd25cad5204e0b129884e5c032ddba92e83
2015-08-24 18:01:39 -06:00
João Oliveira
66d506636b servo: Merge #7348 - update tidy.py remove collect_file_names: (from jxs:master); r=jdm
call python os functions inline

Source-Repo: https://github.com/servo/servo
Source-Revision: c790c4d4cd7f6a1babb7f257cfa52e3cd31730fc
2015-08-24 17:19:02 -06:00
Greg Guthe
54214c2b9a servo: Merge #7118 - Add tidy check for unused reftest html files (from g-k:tidy-check-unused-html-files); r=jdm
Refs: https://github.com/servo/servo/issues/7078

Sample output:

```
$ time ./mach test-tidy
tests/ref/background_image_a.html not used or commented out in basic.list
tests/ref/background_image_ref.html not used or commented out in basic.list
tests/ref/canvas_linear_gradient_a.html not used or commented out in basic.list
tests/ref/canvas_linear_gradient_ref.html not used or commented out in basic.list
tests/ref/canvas_radial_gradient_a.html not used or commented out in basic.list
tests/ref/canvas_radial_gradient_ref.html not used or commented out in basic.list
tests/ref/inline_border_a.html not used or commented out in basic.list
tests/ref/inline_border_b.html not used or commented out in basic.list
tests/ref/inline_text_align_a.html not used or commented out in basic.list
tests/ref/inline_text_align_b.html not used or commented out in basic.list
tests/ref/link_style_dynamic_addition.html not used or commented out in basic.list
tests/ref/link_style_dynamic_addition_ref.html not used or commented out in basic.list
tests/ref/overflow_position_abs_inside_normal_a.html not used or commented out in basic.list
tests/ref/overflow_position_abs_inside_normal_b.html not used or commented out in basic.list
tests/ref/overflow_position_abs_simple_a.html not used or commented out in basic.list
tests/ref/overflow_position_abs_simple_b.html not used or commented out in basic.list
tests/ref/position_fixed_a.html not used or commented out in basic.list
tests/ref/position_fixed_b.html not used or commented out in basic.list
tests/ref/position_fixed_simple_a.html not used or commented out in basic.list
tests/ref/position_fixed_simple_b.html not used or commented out in basic.list
tests/ref/position_fixed_static_y_a.html not used or commented out in basic.list
tests/ref/position_fixed_static_y_b.html not used or commented out in basic.list
tests/ref/style_is_in_doc.html not used or commented out in basic.list
tests/ref/style_is_in_doc_ref.html not used or commented out in basic.list
tests/ref/table_specified_width_a.html not used or commented out in basic.list
tests/ref/table_specified_width_ref.html not used or commented out in basic.list
tests/ref/text_decoration_propagation_a.html not used or commented out in basic.list
tests/ref/text_decoration_propagation_b.html not used or commented out in basic.list
tests/ref/text_shadow_multiple_shadows_a.html not used or commented out in basic.list
tests/ref/text_shadow_multiple_shadows_ref.html not used or commented out in basic.list
tests/ref/viewport_percentage_vmin_vmax_b.html not used or commented out in basic.list
tests/ref/viewport_percentage_vw_vh_b.html not used or commented out in basic.list
tests/ref/white_space_intrinsic_sizes_a.html not used or commented out in basic.list
tests/ref/white_space_intrinsic_sizes_ref.html not used or commented out in basic.list
tests/ref/fonts/takao-p-gothic/COPYING.html not used or commented out in basic.list
tests/ref/iframe/multiple_external_child.html not used or commented out in basic.list
...
```

I thought it might be helpful to say which files aren't used in `basic.list`.

`./mach test-tidy` is a second or two slower on my laptop.
Not sure if this counts as a warning or an error that should return 1.
Not sure whether unused file output should go before or after the line specific errors.

Source-Repo: https://github.com/servo/servo
Source-Revision: b1f0357fcee0b05bee79399bc96ea327b8b8dac8
2015-08-24 16:03:05 -06:00
Connor Imes
346f5ffed7 servo: Merge #7342 - Fix heartbeats build with new -sys version. Fixes #7328 (from connorimes:fix-heartbeats-build); r=larsbergstrom
Updated -sys packages to build from a local copy of the native library source rather than using git submodules.

Source-Repo: https://github.com/servo/servo
Source-Revision: abb57c357997cfdfe7349cdb8efb682e9487170a
2015-08-24 15:05:56 -06:00
João Oliveira
0a67e8131d servo: Merge #7338 - Move RegisterBindings::RegisterProxyHandlers call into script::init (from jxs:master); r=Ms2ger
closes #7336

Source-Repo: https://github.com/servo/servo
Source-Revision: 9bb97319a241af27991705e3385fef6a8093735d
2015-08-24 11:52:03 -06:00
Paul Rouget
3704020fc8 servo: Merge #7331 - prevent division by 0 (from paulrouget:issue-7316); r=SimonSapin
Fix #7316

Source-Repo: https://github.com/servo/servo
Source-Revision: 524b02dbf7c2d8ef0d3a453124075f7718f7e458
2015-08-24 05:08:41 -06:00
Simon Sapin
358afcbc30 servo: Merge #7334 - Parse :active pseudo-class selector (from servo:active); r=SimonSapin
This is #7258 with a spec link added in doc-comment.

The pseudo-class is never matched, but this can still help with stylesheets like `a:hover, a:active { color: something }` where failing to parse one pseudo-class makes the entire selector list invalid.

I filed #7333 about actually making it match.

Source-Repo: https://github.com/servo/servo
Source-Revision: fa06a96f8a880a051ad4cad2489042547dd7f455
2015-08-24 04:23:13 -06:00
João Oliveira
819097c27c servo: Merge #7330 - remove PrivateCSSStyleDeclarationHelpers trait from Element, (from jxs:master); r=nox
call get_inline_style_declaration and
get_important_inline_style_declaration inline
closes #7319

Source-Repo: https://github.com/servo/servo
Source-Revision: f63d35662e03ce6fe9097833fa90d0e97aec16ec
2015-08-23 17:39:12 -06:00
dvberkel
e6ac72d2d6 servo: Merge #7325 - Remove unused support/time from ORGANIZATION.md (from dvberkel:remove-time-from-ORGANIZATION); r=Ms2ger
As detailed in the explanation of `support/time`, it should be temporarily. In this case the documentation lags behind the reality. `support/time` was removed in commit e2912a855275bb468f71212b3da15f64237332de so it seems appropriate to remove it from `ORGANIZATION.md` as well.

Source-Repo: https://github.com/servo/servo
Source-Revision: 46069561208f96e7be1fc55c4256863b853c843b
2015-08-23 02:45:21 -06:00
Kinder Sung
7c51ed12af servo: Merge #7321 - Fix typos in servobuild.example (from kindersung:fix_typos); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 35bbe51daf00f2440bfcc6b34433a917c903ad66
2015-08-22 23:03:53 -06:00
Mahdi Dibaiee
8b97bb22af servo: Merge #7288 - Fix #7268 - getComputedStyle should take Element, not HTMLElement (from mdibaiee:computedstyle-element); r=Ms2ger
This is my first patch, I hope I'm doing it right.

About the test, do you think this is enough and reliable?

Source-Repo: https://github.com/servo/servo
Source-Revision: 6e06cae44a151e252e9df5368c2a9e770fb4d3d5
2015-08-22 20:43:45 -06:00
Connor Imes
c9ec6dcab0 servo: Merge #7179 - Integrate with simple Heartbeats (from connorimes:add-heartbeats); r=larsbergstrom
This PR adds Heartbeats capability to servo.  Heartbeats are used for detailed performance and power/energy profiling.  We will add the power/energy readings in the future.

New dependencies are introduced which need in-depth reviews.  I'm the only one who has had eyes on any of this, and I have limited resources for testing cross-platform compatibility.
* https://github.com/libheartbeats/heartbeats-simple - provides native C libraries from a shared code base:
 * hbs[-static] - performance monitoring
 * hbs-acc[-static] - performance with accuracy monitoring
 * hbs-pow[-static] - performance with power/energy monitoring (the one we're using)
 * hbs-acc-pow[-static] - performance with accuracy and power/energy monitoring
* https://github.com/connorimes/heartbeats-simple-sys provides rust wrappers for the native C libraries above - one crate for each + a common crate.  These link with the *-static versions of the heartbeats libraries.
* https://github.com/connorimes/heartbeats-simple-rust provides rust abstractions over the -sys crates above - one crate for each.

The new `heartbeats` module in the `profile` crate looks for environment variables telling it to use heartbeats for each ProfilerCategory and where to put log files.  (Of course, if somebody knows how to iterate over the enum instead of hardcoding each one, that would be fantastic.)  If the environment variables aren't set for particular categories, heartbeats aren't created or used.

An interface change is made in the `profile_traits` crate to pass both the start and end time in a `ProfilerMsg` instead of just the elapsed time.  Later we will add energy readings as well.

Source-Repo: https://github.com/servo/servo
Source-Revision: d89e4f7991a4e43f16ea57587004e3616addcc09
2015-08-22 17:23:50 -06:00
Patrick Walton
2f40c05ace servo: Merge #7291 - layout: Centralize the logic that determines whether fragments get layers in the fragment (from pcwalton:has-layer-flag); r=mbrubeck
…so that it can be activated when we're forcing
the creation of extra layers due to positioned descendants that
themselves have layers.

The newly failing tests were tests that accidentally passed due to
incorrect stacking order.

Closes #7281.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 7945c174a6f90f3809a6d60f392a94e0ce10f021
2015-08-22 15:56:05 -06:00
Patrick Walton
2952eb86ae servo: Merge #7277 - layout: Make position: relative with non-auto z-index create a stacking context (from pcwalton:position-relative-stacking-context); r=glennw
Improves imgur.com and Fast Company articles.

This change made `min-height-106.htm.ini` fail because the thing it was testing
for never worked: we were relying on the incorrect stacking order of `position:
relative` to get the green square to show up.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 23657484adcbd93ee4fc5b274e2b5500a09107a6
2015-08-22 14:04:07 -06:00
Patrick Walton
e5b20e7609 servo: Merge #7314 - resources: Improve the look of form widgets a bit (from pcwalton:minor-form-beautification); r=mbrubeck
* Don't display unselected `<option>` elements inside `<select>`
  dropdowns.

* Use CSS triangles to give `<select>` dropdowns a down arrow in order
  to make them look as intended.

* Use borders instead of `( )` and `[ ]` for radio buttons and check
  boxes, respectively.

Improves facebook.com and IMDB.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: d78527feb626b72427392fac0f54d8669bc6e00f
2015-08-22 13:20:11 -06:00
dvberkel
711b58d735 servo: Merge #7318 - Link organisation reference to source tree (from dvberkel:link-to-components); r=Manishearth
I was going over the `ORGANIZATION.md` to learn about the servo project and I found myself looking up the directories that are mentioned. In order to facilitate this mode of exploration, I linked the various components to their corresponding directories.

Source-Repo: https://github.com/servo/servo
Source-Revision: d48f6ffbad181bbb778fab57e9229914121b3adb
2015-08-22 11:42:38 -06:00
Corey Farwell
815476c7cf servo: Merge #7315 - Don't use is operatory to compare Python strings (from frewsxcv:python-is); r=SimonSapin
`is` checks identity. `==` checks value. I can't think of a reason why
we would want the former in these scenarios.

More info:

* http://stackoverflow.com/a/1504742
* https://docs.python.org/2/reference/expressions.html#is

Source-Repo: https://github.com/servo/servo
Source-Revision: 60140ad2942ae5d73c22963775b8f7529965fdb4
2015-08-22 09:26:34 -06:00
Paul Rouget
b3f5099d69 servo: Merge #7096 - Glutin update (from paulrouget:glutin-update); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: 12c44d69f69e723b86fa7539a1238e0c883816a5
2015-08-22 05:20:09 -06:00
Patrick Walton
1b8a556422 servo: Merge #7312 - Initial (very rudimentary) flexbox implementation (from servo:flex-experimental); r=SimonSapin
This is #7154 with two additional commits (that I did rather than ask @zentner-kyle to do it because it was a bit tricky.)

r? @pcwalton for the last two commit

r=me+pcwalton in #7154 for earlier commits.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5e83a3f0a3bab226cca849ab33fa3322ef71813d
2015-08-21 17:19:20 -06:00
Simon Sapin
a0656c9a6b servo: Merge #7237 - Replace FlowRef with Arc<Flow>, now that Arc supports DST (from servo:arc-flow); r=pcwalton
… and `WeakFlowRef` with `Weak<Flow>`.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 1f9778fad90e41ec70e8f54d61e168172635d925
2015-08-21 15:29:35 -06:00
OneKorg
a937f2797c servo: Merge #7310 - Mention max length in tidy check_length. Fixes #7309 (from A-deLuna:bug-7309); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: a8c62f0f282321b4e2047c5143c7cbfc3282a09a
2015-08-21 13:01:05 -06:00
Corey Farwell
38ac5971e8 servo: Merge #7305 - Utilize Python context managers for opening/closing files (from frewsxcv:python-context-managers); r=Ms2ger
In some of these cases, files were not being closed

Source-Repo: https://github.com/servo/servo
Source-Revision: 3a48e04caffa4ba25854a4190883d1985845a359
2015-08-21 09:30:06 -06:00
Corey Farwell
d25aa93818 servo: Merge #7299 - Cleanup Element iteration in dom/htmlcollection.rs (from frewsxcv:cleanup-htmlcollection-iteration); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 7c45ff8e05a6ebd21f9aa5c360e997a01d48b1fc
2015-08-21 04:43:57 -06:00
Corey Farwell
6b87689ed8 servo: Merge #7297 - Work around uses of #[allow(unrooted_must_root)] (from frewsxcv:avoid-disable-root-lint); r=Manishearth
Using this directive could cause rooting errors to be silently ignored,
so we should avoid it as much as possible

Source-Repo: https://github.com/servo/servo
Source-Revision: c84b25cc992dfc2d3b1c182d71c55159fefc4dce
2015-08-20 11:19:21 -06:00
Corey Farwell
7fb2f8eb04 servo: Merge #7254 - Initial implementation of ownPropertyKeys proxy handler (from frewsxcv:own-property-keys); r=Ms2ger
Generates `SupportedPropertyNames` on DOM structs that should implement
it. Most of them are unimplemented now (which can be implemented in
later PRs), with the exception of `HTMLCollection`. Also added a couple
relevant WPT tests.

Closes #6390

Closes #2215

Source-Repo: https://github.com/servo/servo
Source-Revision: d2a8c278eaa159ceacffee767523d4ad0cf83da2
2015-08-20 10:00:44 -06:00
Simon Sapin
2e6bf909e8 servo: Merge #7049 - Upgrade cargo to 0.5.0-nightly (657e363 2015-08-19) (from servo:cargoup); r=SimonSapin
Pick up https://github.com/rust-lang/cargo/pull/1830

Source-Repo: https://github.com/servo/servo
Source-Revision: 5bab439ab6c58a5b78a6c2f69d6e93ad80da560f
2015-08-20 08:46:04 -06:00
Ravi Shankar
7b88c6fa56 servo: Merge #7238 - Improved field names for devtools-related channels (from Wafflespeanut:workerglobal); r=Ms2ger
(for #6924) - I took this because the confusion was actually caused by me while working on #6829

Source-Repo: https://github.com/servo/servo
Source-Revision: 0466766b2c946a781d917b3dac8f87714719369c
2015-08-20 08:17:30 -06:00
Johann Tuffe
5c3a5a67f5 servo: Merge #7265 - Add alphabetical order check for use statements (from tafia:tidy-use); r=Ms2ger
close #7112

Source-Repo: https://github.com/servo/servo
Source-Revision: a5fbb2f2a6fa79755f975feff2435abb6a5dd0e9
2015-08-20 07:43:56 -06:00
Theodore Kokkoris
f3df0713ca servo: Merge #7289 - Combine transform-origin, perspective-origin code (from tgkokk:perspective-transform-origin-combine); r=dzbarsky
First PR, please tell me if anything is wrong/could use improvement.

Fixes #7194.

Source-Repo: https://github.com/servo/servo
Source-Revision: c98c1651a329d152b436d017e15546f9b922fe93
2015-08-20 07:10:14 -06:00
Anthony Ramine
04c0eb66fb servo: Merge #7251 - Correctly handle length-changing mappings in text-transform (from nox:text-transform-length-change); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 39b7508aa2b1f7d9b97d69ce3396d24c92c30efe
2015-08-20 06:40:33 -06:00
Ms2ger
1fec45b810 servo: Merge #7271 - Remove the unused XMLHttpRequestEventTarget::eventtarget method (from Ms2ger:xhret); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: d3c7e31722fb194f1a266eec9ae57d2f2557e7a6
2015-08-20 06:01:39 -06:00
Patrick Walton
abacdaff46 servo: Merge #7294 - layout: Don't panic if requestAnimationFrame() is called before first layout (from servo:tick-animations-with-no-layout-root); r=glennw+Ms2ger
Closes #7115.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8f05447a7b1977f91fab753166fa428164a9307b
2015-08-20 05:17:47 -06:00
Corey Farwell
63925e9f98 servo: Merge #7285 - Bump js (rust-mozjs) to the latest commit (from frewsxcv:bump-mozjs); r=Ms2ger
I need the constants added in
https://github.com/servo/rust-mozjs/pull/191 for
https://github.com/servo/servo/pull/7254

Source-Repo: https://github.com/servo/servo
Source-Revision: 14b921ee29b1b5e46e8773836b5a31e85faabfd5
2015-08-20 02:52:40 -06:00
Patrick Walton
e9541341ea servo: Merge #7292 - gfx: Sort layers according to their Z-index value before handing them off to the compositor (from pcwalton:layer-sorting); r=glennw
Closes #7166.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: c328b76459f34dfe33570d686452e08b7718b4bd
2015-08-19 18:34:58 -06:00
Patrick Walton
d86ac43345 servo: Merge #7287 - layout: Put iframes that form stacking contexts in the right place (from pcwalton:iframe-stacking-context); r=glennw
Improves eBay.

Closes #7282.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: ac4ca053376fe061a324d3b860892719aa3a32ad
2015-08-19 13:33:08 -06:00
Patrick Walton
945d59cb16 servo: Merge #7280 - layout: Take the style-specified width into account when computing the intrinsic inline sizes of images (from pcwalton:style-specified-img-intrinsic-width); r=mbrubeck
Improves Facebook Timeline.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 5c284a546a539ddcc546fc5c00ab06568f352f11
2015-08-19 11:39:33 -06:00
Ms2ger
74c684e0c3 servo: Merge #7283 - Cleanup ActorRegistry::create_shareable (from Ms2ger:create_shareable); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 1fd5418f432e3c456cdd557c536db4c349775248
2015-08-19 07:30:57 -06:00
Patrick Walton
67cdb31ad3 servo: Merge #7279 - layout: Avoid a division by zero in tile_image() (from pcwalton:tile-image-divide-by-zero); r=mbrubeck
Fixes a crash on Facebook Timeline.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 0234bbe44469218b70746b2f450d0df8a4db1585
2015-08-19 04:41:54 -06:00
Patrick Walton
4c157f9324 servo: Merge #7276 - layout: Make inline absolute hypothetical boxes not clip their contents (from pcwalton:inline-absolute-hypothetical-clip); r=mbrubeck
Improves the logo on ebay.com.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 195d267e2311d1723f9a70ba9d40db04c557606a
2015-08-19 03:54:10 -06:00
Patrick Walton
ca5205d308 servo: Merge #7274 - layout: Make table cells' minimum inline sizes override explicitly specified widths if the latter are too small (from pcwalton:table-minimum-width); r=mbrubeck
Improves ebay.com.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 30a1339ed1f57819bcd6b3e0d9e5d5d9d097d6e2
2015-08-19 03:20:37 -06:00
wilmoz
080689d7ca servo: Merge #7272 - Make EventTypeId reflect DOM inheritance hierarchy (from wilcus:EventType); r=Ms2ger
https://github.com/servo/servo/issues/7205#issuecomment-132285499

Source-Repo: https://github.com/servo/servo
Source-Revision: 15b09fc0afc26f39fc96b8b4b84df4f4aec1ee21
2015-08-19 02:47:22 -06:00
Michael Howell
1c55a7a5be servo: Merge #7260 - Navigate to a new page even when there's a fragment (from notriddle:issue_7169); r=Ms2ger
Closes #7169

Source-Repo: https://github.com/servo/servo
Source-Revision: 70b9922eb021a41ebdd9f54a4db0e9ddfb17786a
2015-08-19 01:40:28 -06:00
Patrick Walton
467ea4b992 servo: Merge #7256 - layout: Use the value of the max-width property when speculating what the inline sizes of block formatting contexts are likely to be (from pcwalton:block-formatting-contexts-max-width); r=mbrubeck
Usually, Web developers set this property on block formatting contexts
in order to avoid running into floats, and we can use this as a
speculation hint.

Fixes the width of the search box on the Google SERPs.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 19d466b06250f10169e88fc7f0b447c7f2f8209e
2015-08-18 13:38:05 -06:00
Anthony Ramine
3c5a2d72f0 servo: Merge #7230 - Support required dictionary members (fixes #7216) (from nox:required-dictionary-member); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: ef98e574297ed738f3b117c128bc578f623a35d5
2015-08-18 12:58:09 -06:00
Manish Goregaokar
d4e45231ec servo: Merge #7224 - Integrate clippy into Servo; cleanup some of script (from Manishearth:clippy); r=Ms2ger
The integration is off by default for now. You can try it out with `./mach build --features "script/plugins/clippy"`.

We're using a branch of clippy with some of the lints changed to Allow, either because they don't apply to us, or because they're noisy and dwarf other warnings (but still should be fixed)

After going through the rest of Servo's warnings I'll figure out which lints we should be keeping.

There's a cargo bug with optional deps that makes it hard for this to work with Cargo.lock -- so this PR contains no changes to lockfiles (and running the build with clippy on may dirty the lockfile, though it gets fixed later)

Source-Repo: https://github.com/servo/servo
Source-Revision: 50e1c967e4299c1515575f73d407f5f6b977d818
2015-08-18 08:15:51 -06:00
Corey Farwell
871003a8b5 servo: Merge #7178 - flow::Flow should follow *_mut naming conventions (from frewsxcv:flow-api-mut); r=nox
Fixes #7148

Source-Repo: https://github.com/servo/servo
Source-Revision: 014608f60c45574e6a347f39a96aa33b8eab02e1
2015-08-18 07:31:57 -06:00
Ravi Shankar
01268171af servo: Merge #7241 - Matching over event listeners and handlers; r=Ms2ger (from Wafflespeanut:event_handler); r=Ms2ger
... for #7065

Source-Repo: https://github.com/servo/servo
Source-Revision: ff6a70fad3545a04a9646121bd1b0725254bebeb
2015-08-18 06:49:26 -06:00
Anthony Ramine
ed46775cc1 servo: Merge #7243 - Avoid a panic when handling collapsing borders (fixes #7144) (from nox:border-collapse-panic); r=pcwalton
There is no need to compute next_collapsed_borders_in_block_direction for all kind of flows when it's used only in the table row case. That also avoids a panic when the next child is a table colgroup (this should not happen when iterating over a table row).

Source-Repo: https://github.com/servo/servo
Source-Revision: 3d0951cf256ec07b427eaa2305b85da7a7645359
2015-08-18 05:15:12 -06:00
Ms2ger
b664c7e546 servo: Merge #7263 - Update js (from servo:update-js); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 5b3d3514c1b6fa010a4a5905e01cd2913538a07e
2015-08-18 04:40:54 -06:00
João Oliveira
3436fe7092 servo: Merge #7257 - Replace uses of for foo in bar.iter(), (from jxs:master); r=Ms2ger
and `for foo in bar.iter_mut(), and for foo in bar.into_iter()
(continuation of #7197)

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d6d6a05009606dfbbfc9765d7dc2c745c18f6a5
2015-08-18 02:46:46 -06:00
Glenn Watson
d58f2c501d servo: Merge #7246 - Add a simple method to emulate a platform UA (e.g. pretend a desktop build is an android UA) (from glennw:platform-ua); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: f340900c38768122ee8647eb3dc3f7cd0e2a6254
2015-08-17 22:44:38 -06:00
Patrick Walton
098b50f43d servo: Merge #7222 - gfx: Paint dashed borders with nonzero radii the same way Gecko does (from pcwalton:dashed-border-radius); r=glennw
It's not ideal, but it was easy to implement and will do for now.

Closes #7157.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: f4b526cfb4ea1ef263ff029650c74ff50a74d5db
2015-08-17 16:53:58 -06:00
Patrick Walton
11e563caec servo: Merge #7177 - layout: Improve our handling of inline absolute containing blocks (from pcwalton:intervening-inline-block); r=mbrubeck
Several issues are addressed in this commit:

* Inline flows now bubble up their absolute descendants instead of
  making the inline flow the containing block for them. (In the future,
  we will need to make the inline flow *sometimes* be the containing
  block for them, but for now it improves sites to unconditionally
  bubble up.)

* Fragments now look at their inline fragment context to determine
  whether they are positioned.

* Inline flows now push the stacking-relative position of the absolute
  containing block down to their inline-block fragments.

* Inline absolute hypothetical fragments can be containing blocks.

* Fixes the logic in
  `containing_block_range_for_flow_surrounding_fragment_at_index`. The
  condition to determine whether fragments are positioned was inverted!

* `Descendants`/`AbsDescendants` has been refactored in order to become
  more friendly to inline absolute containing blocks in the future.

Improves the inline position of the green drop-down arrow in the Google
SERPs. (The block position is still wrong.)

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: d654841288ad6c7d4f8d7da3c68d04ef7df2c241
2015-08-17 13:56:53 -06:00
Nicholas Nethercote
791cbb1cb4 servo: Merge #7252 - Fix panics in the script_task memory reporter (from nnethercote:fix-reporter-panics); r=Ms2ger
These are caused by page_root being empty.

@jdm, I think it was #6874 that introduced these. I'm seeing them all the time when starting Servo on Reddit with memory profiling enabled. With this patch applied they go away.

Source-Repo: https://github.com/servo/servo
Source-Revision: 72fa45155b93a9763967cf215e3a9e60e3883cd9
2015-08-17 08:56:29 -06:00
João Oliveira
ee51120556 servo: Merge #7245 - replace len() !=0 with !is_empty() (from jxs:master); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: d90907cb5f7399196b76b3117e19ff4d1b775a96
2015-08-17 02:33:28 -06:00
vectorijk
a8ec5efe9a servo: Merge #7219 - remove unused static collection type in htmlcollection.rs (from vectorijk:issue#7042); r=Ms2ger
ref #7042

Source-Repo: https://github.com/servo/servo
Source-Revision: 71ae18bae4fe72a57ba1f8984891b2523f97b807
2015-08-17 02:03:23 -06:00
Simon Sapin
1469585622 servo: Merge #7249 - Only use a rustc wrapper script when ld.gold is available (from servo:gold); r=paulrouget
Fixes #7247.

Source-Repo: https://github.com/servo/servo
Source-Revision: 95c6301cf4572c0ea552868107514a2261c43022
2015-08-17 01:26:26 -06:00
wartman4404
32b9ffffdb servo: Merge #7244 - Remove the DOMRefCell wrapper around Window::compositor (from wartman4404:master); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 3bb930661d06c864e17374bfd1f0b0f4d06d7253
2015-08-16 16:52:01 -06:00
Josh Matthews
6a81d499fc servo: Merge #7203 - Add automated style nit checks to test-tidy (from jdm:style); r=Ms2ger
Expands on the work by @wilmoz and cleans up the existing errors. Closes #7180. Closes #7111.

Source-Repo: https://github.com/servo/servo
Source-Revision: e74825f9fde8e222f4ba9bb24b2c2a3864c73e5f
2015-08-16 08:37:40 -06:00
Ms2ger
42e2e6ee91 servo: Merge #7240 - Stop using [T]::tail (from Ms2ger:slice_extras); r=nox
It has been removed upstream (rust-lang/rust#27684).

Source-Repo: https://github.com/servo/servo
Source-Revision: 4d7dd66ec9f0a5229a52b3301ac1a38848ebfb4b
2015-08-16 07:13:57 -06:00
Anthony Ramine
f79b4bd4b2 servo: Merge #7236 - Fix dictionary member conversion failure (fixes #7231) (from nox:dictionary-failure-code); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: a2978f2add3a9c828b7bb701cb2d04318e5c0b45
2015-08-16 06:39:56 -06:00
vectorijk
e1dc101282 servo: Merge #7191 - remove ScriptListener (from vectorijk:removeScriptListener); r=Ms2ger
Fix issue #7175 and for code review

Source-Repo: https://github.com/servo/servo
Source-Revision: 5ab9aa5013801a8ac2b9527a6079c62cc56ff81b
2015-08-16 03:23:27 -06:00
Tom Jakubowski
b5d4709aa6 servo: Merge #7214 - Implement WebSocket#binaryType (from tomjakubowski:websocket-binaryType); r=Ms2ger
Closes #7098

Source-Repo: https://github.com/servo/servo
Source-Revision: 7c63c7d7c109165b9584da5b31658ff89af21ef9
2015-08-15 19:57:58 -06:00
Anthony Ramine
ea3b1cdfb8 servo: Merge #7233 - Support default values for restricted float members (fixes #7217) (from nox:default-float-value); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 55e755e35ac8622a80cbebe3395aae44a0239b4f
2015-08-15 10:59:44 -06:00
Simon Sapin
302093ef6a servo: Merge #7229 - Use the gold linker when available (from servo:gold); r=metajack
This shaves 50 seconds off the build time on my machine.

Source-Repo: https://github.com/servo/servo
Source-Revision: a1aed50b5a2686015bc3a17ec891a56eef8c1fc9
2015-08-15 10:25:26 -06:00
Vinzent Steinberg
2789940cb0 servo: Merge #7232 - mach: Print commands if '--verbose' is set (from vks:print-commands); r=jdm
Fixes #6363.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7f69a2994d2bb5af06ecafe369be7f232dc6922a
2015-08-15 09:47:13 -06:00
Simon Sapin
1923ca73f1 servo: Merge #7188 - Fix Element::set_inline_style_property_priority’s handling of priority (from servo:set_inline_style_property_priority); r=nox
Thanks to @michaelwu for pointing out a copy-paste error.

Source-Repo: https://github.com/servo/servo
Source-Revision: 31413f4313fb96f9d17e54157d404c7633e59fc2
2015-08-15 09:17:31 -06:00
Ms2ger
a6395ea93a servo: Merge #7234 - Implement a PerformanceActor (from Ms2ger:PerformanceActor); r=metajack
This is necessary for the devtools "Start Recording Performance" button to
send a message.

(This message is not yet supported, so it leads to
'unexpected message type "startRecording" found for actor "performance4"'.)

Source-Repo: https://github.com/servo/servo
Source-Revision: 0080d0de0e0ae95f2d98d81bef9f02ff995e5dd3
2015-08-15 08:16:55 -06:00
Ravi Shankar
35668fd5a5 servo: Merge #7006 - Splitting ScriptMsg into various enums (from Wafflespeanut:script_cleanup); r=jdm
... for #3734, which is also one of the oldest issues. (/cc @jdm)

Source-Repo: https://github.com/servo/servo
Source-Revision: 6a52ec94840fbaf43a29d76879e2b59542a9963d
2015-08-15 03:48:47 -06:00
João Oliveira
8410286b02 servo: Merge #7225 - Replace uses of for foo in bar.iter() and for foo in bar.iter_mut() (from jxs:master); r=nox
closes #7197

Source-Repo: https://github.com/servo/servo
Source-Revision: a1b3f477aa541fda4d1b6ccb02c3e56143f4d217
2015-08-15 03:03:21 -06:00
Manish Goregaokar
a6c142a4fc servo: Merge #7195 - Upgrade Rust to nightly 2015-08-10 (from servo:rustup_20150814); r=Ms2ger
Still needs snapshot.

Snapshot probably could also work as today's nightly (I wasn't able to download the latest one due to choppy internet), there isn't any plugins churn I know of

r? @larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: 13e7de482c0f58ca5af30dbca5d94e6b9cedd1cd
2015-08-14 12:53:54 -06:00
Ms2ger
4028bce156 servo: Merge #7215 - Use external mutability for FramerateActor::ticks (from Ms2ger:ticks); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d4d18f51f2ac46191d94bfe322a2c0164fb98f17
2015-08-14 07:16:19 -06:00
Nicholas Nethercote
3fb8a39e76 servo: Merge #7213 - Tweak how the "system-heap-allocated" memory report is gathered (from nnethercote:tweak-system-heap-allocated); r=Ms2ger
To handle potential overflow because mallinfo() is ancient.

Source-Repo: https://github.com/servo/servo
Source-Revision: 38c5fb80d3c6c0e08732f5bdb3f0e9f9bf192def
2015-08-14 06:41:58 -06:00
João Oliveira
f0a3f70810 servo: Merge #7208 - replace .len() == 0 with is_empty() (from jxs:master); r=Ms2ger
closes #7198

Source-Repo: https://github.com/servo/servo
Source-Revision: 85022a4c347dca3f5d28cec3010f7e9410217df4
2015-08-14 00:51:59 -06:00
Fabrice Desré
d30b593743 servo: Merge #7119 - Tentative fix for issue #7110 (from fabricedesre:devtools); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: a35360aa31983aad45bdae634c80a24682cb8318
2015-08-13 21:05:34 -06:00
Glenn Watson
d78464281a servo: Merge #7206 - Fix "'PaintWorker' panicked at 'index 0 and/or 4 in * do not lie on… (from glennw:fix-debug-panic); r=pcwalton
… character boundary" when printing display list.

This whole piece of code seems a bit fragile, but it fixes the immediate problem for now.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7a9458e530a3bd7a679cb21dec8586710cf4a416
2015-08-13 20:07:56 -06:00
Greg Guthe
78696365f9 servo: Merge #7165 - Fail on unrecognized debug option (from g-k:refactor-debug-options); r=ms2ger
Refs: https://github.com/servo/servo/issues/7142

Ran some basic functional tests:

```
 $ ./mach run -d -Z bubble-widths,disable-canvas-aa,trace-layout tests/ref/blur_ref.html
 $ ./mach run -d -Z help
Usage: /Users/greg/servo/target/debug/servo debug option,[options,...]
	where options include

Options:
	bubble-widths                       Bubble intrinsic widths separately like other engines.
	disable-text-aa                     Disable antialiasing of rendered text.
	disable-canvas-aa                   Disable antialiasing on the HTML canvas element.
	dump-flow-tree                      Print the flow tree after each layout.
	dump-display-list                   Print the display list after each layout.
	dump-display-list-json              Print the display list in JSON form.
	dump-display-list-optimized         Print optimized display list (at paint time).
	relayout-event                      Print notifications when there is a relayout.
	profile-tasks                       Instrument each task, writing the output to a file.
	show-compositor-borders             Paint borders along layer and tile boundaries.
	show-fragment-borders               Paint borders along fragment boundaries.
	show-parallel-paint                 Overlay tiles with colors showing which thread painted them.
	show-parallel-layout                Mark which thread laid each flow out with colors.
	paint-flashing                      Overlay repainted areas with a random color.
	trace-layout                        Write layout trace to an external file for debugging.
	validate-display-list-geometry      Display an error when display list geometry escapes overflow region.
	disable-share-style-cache           Disable the style sharing cache.
	parallel-display-list-building      Build display lists in parallel.
	replace-surrogates                  Replace unpaires surrogates in DOM strings with U+FFFD. See https://github.com/servo/servo/issues/6564
	gc-profile                          Log GC passes and their durations.

$ ./mach run -d -Z blah
error: unrecognized debug option: blah
Servo exited with return value 1
```

Didn't check that setting debug flags actually did anything.
Haven't written much Rust so this feels more verbose than necessary.
Added `disable-canvas-aa` to debug options help.

Should DebugOptions struct derive Clone like Opts does?

Source-Repo: https://github.com/servo/servo
Source-Revision: f5e97ef1b54b7f85d9c5a55712e802dd70a89f8e
2015-08-13 18:11:57 -06:00
Jack Moffitt
8f00e4702c servo: Merge #7200 - Update skia to get NEON fixes (from metajack:neon-skia); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: 92496d32d3cae876d7162991cc9f727df1cb7991
2015-08-13 17:00:53 -06:00
Corey Farwell
1b3761b963 servo: Merge #7199 - Prefer if..let over if..is_some..unwrap in codegen (from frewsxcv:codegen-if-let); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 2e1ca10eeaf6a62326c1b864345f624ed2974a52
2015-08-13 15:35:21 -06:00
Corey Farwell
9ea1ff0919 servo: Merge #7196 - Avoid marking codegen method bodies as unsafe twice (from frewsxcv:double-unsafe); r=jdm
`CGAbstractMethod` takes a couple boolean parameters, among others:

* `extern`: will mark the method as `unsafe` and `extern`
* `unsafe`: will wrap the method body in an `unsafe` block

Passing both as `True` should not mark it as `unsafe` twice.

Example from a generated `HTMLCollectionBinding.rs`:

Before:

```
unsafe extern fn get_length(..) -> u8 {
    unsafe {
        // code here
    }
}
```

After

```
unsafe extern fn get_length(..) -> u8 {
    // code here
}
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 289decb064b44937f570fdc299de9af961296dd6
2015-08-13 15:00:37 -06:00
Ms2ger
5b81bb9928 servo: Merge #7192 - Implement a ProfilerActor struct (from Ms2ger:profiler); r=jdm
This is sufficient to make the profiler tab show up in Firefox's devtools.

Source-Repo: https://github.com/servo/servo
Source-Revision: 07716780fc805aea63285337ee15e9e56acb47c7
2015-08-13 14:25:38 -06:00
Ms2ger
708a504b24 servo: Merge #7190 - Correct the default value for Node#cloneNode's deep argument (from Ms2ger:node-clone); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 42d74324e22be0f105d2412938df8b05c20feff6
2015-08-13 13:51:06 -06:00
Bogdan Cuza
b3e4dcef5f servo: Merge #7097 - Measure heap memory usage for more types. Fixes #6951 (from boghison:memtypes); r=jdm
Also adds HeapSizeOf implementations/derive for some types. I've used "Cannot calculate Heap size" as a reason everywhere, because my imagination is rather limited. If you'd like me to change this message for specific types, please write something like this: "Trusted - Cannot calculate Heap size for Trusted" so that it would be easier for me to replace them through a script :)

Source-Repo: https://github.com/servo/servo
Source-Revision: a03616f379c255cc6c9b6e1d04dd7d98bd9926ce
2015-08-13 13:16:14 -06:00
Josh Matthews
359f94da09 servo: Merge #7132 - Document the use and meaning of the devtools control messages. Fixes … (from jdm:docenum); r=ms2ger
…#6922.

Source-Repo: https://github.com/servo/servo
Source-Revision: f3b7c5cb4b0fab20db51b7560c3b3bb2d115be69
2015-08-13 12:41:48 -06:00