Commit graph

6381 commits

Author SHA1 Message Date
Simon Sapin
f766e94259 Remove unused fixed_descendants: AbsoluteDescendants
… in `construct.rs` for multicol and table wrappers.
2016-01-28 09:43:14 +01:00
Simon Sapin
5498b54347 Add Multicolumn support block fragmentation. 2016-01-28 09:43:14 +01:00
Simon Sapin
359b984348 Multicol: compute the width of columns based on column-width and column-count. 2016-01-28 09:43:14 +01:00
Simon Sapin
48270b58bf Move part of BlockFlow::assign_inline_sizes to separate function. 2016-01-28 09:43:14 +01:00
Simon Sapin
9abbd1b5d1 Sequentialize assign_block_size for flows that can be fragmented.
Fragmentation will be intertwined with block size calculation.
2016-01-28 09:42:17 +01:00
bors-servo
bc44ae679f Auto merge of #9401 - glennw:raf-timing, r=jdm
Fixes additional calls to rAF.

Often, a rAF callback will request another rAF from the callback itself.

Previously, the constellation would quickly receive two messages saying
that there were no animations, and then there are animations again in the
situation above. This would make the compositor tick the new animation straight
away, causing strange fluctuations and timings in rAF callbacks.

Instead, only send the NoAnimationCallbacks message if the animation
callback queue is still empty after invoking the callbacks.

This fixes rAF timing, which now runs at the correct (vsync) framerate.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9401)
<!-- Reviewable:end -->
2016-01-28 11:18:24 +05:30
Glenn Watson
183c3f5389 Fix panic when perspective property is zero. 2016-01-28 14:28:38 +10:00
Corey Farwell
d2166cd5d5 Upgrade ipc-channel dependency.
dfd8513d80...4cc8773bfb

Attempt to fix https://github.com/servo/servo/issues/8815
2016-01-27 22:24:20 -05:00
Glenn Watson
6a85102a5a Ensure that when outputting screenshots, animations are ticked as required.
Fixes timeout in transition_calc.html.
2016-01-28 11:49:47 +10:00
bors-servo
0fa9d32c69 Auto merge of #9421 - jdm:iframe-painting-after-navigation-redux, r=jdm
compositing: Fix a couple of bugs that prevented iframes from painting after navigation.

The first bug was that iframes were not reflowed in their parent DOM when the child page navigated. This is fixed by simply having the constellation notify the appropriate script thread when navigation occurs.

The second bug was that the compositor was unable to adjust the pipeline for existing iframe layers, only new ones. This patch adds logic to do that.

The third bug was that we have ad-hoc reflow calls throughout script/, and we didn't trigger any reflow from the code that dispatches the `load` event for the iframe so the test for the first two issues would always time out. The second commit adds another reflow call to do that, and also bites the bullet and adds a catch-all reflow (which does nothing if there's no dirty nodes in the document) at the return to the event loop.

Closes #8081.

Extension of #9285.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9421)
<!-- Reviewable:end -->
2016-01-28 04:55:04 +05:30
Josh Matthews
c79231f9c6 Ignore navigation requests from pages that are not active. 2016-01-27 18:17:03 -05:00
Florian Strübe
e65d7251f7 Improved .find().map() 2016-01-27 23:24:32 +01:00
Matt Brubeck
84915ed23b Upgrade to latest xml5ever 2016-01-27 09:26:41 -08:00
Simon Sapin
da2b4ab381 Disable incremental reflow for multicol and their descendants.
Fragmentation with dynamic updates is hard.
2016-01-27 17:33:12 +01:00
Simon Sapin
357463864b Avoid a transmute that relied on undefined struct layout. 2016-01-27 16:37:08 +01:00
bors-servo
4f3ed209bc Auto merge of #9434 - servo:h5eup, r=nox
Update html5ever and xml5ever for API changes.

@nox r?

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.svg" height="40" alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9434)
<!-- Reviewable:end -->
2016-01-27 17:29:56 +05:30
Simon Sapin
c7b51e7aa1 Update html5ever and xml5ever for API changes. 2016-01-27 12:25:16 +01:00
bors-servo
8c0736211b Auto merge of #9378 - paulrouget:removeProperty, r=KiChjang
Invalidate node style after style property removed

Fix #9377

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9378)
<!-- Reviewable:end -->
2016-01-27 16:43:30 +05:30
Paul Rouget
6d7dc0b905 Invalidate node style after style property removed 2016-01-27 07:43:23 +01:00
Glenn Watson
8dd9159bb4 Update gleam 2016-01-27 14:27:53 +10:00
Glenn Watson
de81d88324 Add comment to explain callback ordering 2016-01-27 09:25:20 +10:00
Josh Matthews
7eca462c5a Make iframe's load event trigger a reflow of the enclosing window. Add a catch-all reflow for all same-origin pages sharing an event loop.a 2016-01-26 16:37:23 -05:00
Patrick Walton
e5a1af5b7a compositing: Fix a couple of bugs that prevented iframes from painting
after navigation.

The first bug was that iframes were not reflowed in their parent DOM
when the child page navigated. This is fixed by simply having the
constellation notify the appropriate script thread when navigation
occurs.

The second bug was that the compositor was unable to adjust the pipeline
for existing iframe layers, only new ones. This patch adds logic to do
that.

Closes #8081.
2016-01-26 16:37:23 -05:00
Florian Strübe
6fef891ab8 Use .find().map() instead of .filter_map().next() in URLSearchParams::Get 2016-01-26 21:50:31 +01:00
bors-servo
a75f2cecda Auto merge of #9419 - psdh:includeTypedef, r=nox
generate typedefs in CodegenRust.

fixes #9384

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9419)
<!-- Reviewable:end -->
2016-01-26 22:10:57 +05:30
Prabhjyot Singh Sodhi
d6df844ae5 generate typedefs in CodegenRust 2016-01-26 21:56:44 +05:30
Michael Rosenberg
1f45eaf8a1 For WebIDL interfaces without constant members, do not generate a 'Constant' module 2016-01-26 02:50:53 -05:00
bors-servo
b66a001451 Auto merge of #9429 - pcwalton:iframe-scroll-stacking, r=mbrubeck
Dispatch scroll events to layers above others.

Closes #9416.

r? @mbrubeck

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.svg" height="40" alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9429)
<!-- Reviewable:end -->
2016-01-26 07:28:23 +05:30
Patrick Walton
e4db0715e1 Dispatch scroll events to layers above others.
Closes #9416.
2016-01-25 16:42:37 -08:00
Patrick Walton
32a68a43ec Make hit tests against box shadows always fail.
Closes #9268.
2016-01-25 16:30:04 -08:00
Connor Imes
3a375090a8 Update energy-monitor to 0.1.1 for change to dual license 2016-01-25 15:24:18 -06:00
Joshua Holmer
f0765890fe Implement console#time and console#timeEnd methods
Fixes #9325
2016-01-25 14:21:32 -05:00
Patrick Walton
9c7b9fa32d layout: Remove some bogus code that tried to handle
absolutely-positioned flows separately when storing overflow.

This code dates back to the time when absolutely positioned flows were
ignored by all of their ancestors up to the containing block. This
hasn't been true for at least a year.

Closes #9306.
Closes #9309.
Is a partial fix for #9308.
2016-01-25 10:52:07 -08:00
bors-servo
842ec7c415 Auto merge of #9418 - paulrouget:iframeCrash, r=jdm
Check if root page exist before handling DOM events

Fix #9417

For the test, I'm not sure how to simulate a mouse event or a key event in a way that it would be forwarded to the iframe.

Any idea?

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9418)
<!-- Reviewable:end -->
2016-01-25 21:06:22 +05:30
Paul Rouget
a2c931e4df Check if root page exist before handling DOM events 2016-01-25 16:31:59 +01:00
bors-servo
e74021baaa Auto merge of #9400 - jmr0:websocket, r=nox
Fixing websocket subprotocol header validation

This takes care of https://github.com/servo/servo/issues/9034

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9400)
<!-- Reviewable:end -->
2016-01-25 17:01:39 +05:30
jmr0
3846cf52f2 fix websocket header validation, ensure it meets token requirements, add
testing
2016-01-24 18:31:21 -05:00
Keith Yeung
9e3af70941 Implement RadioNodeList 2016-01-24 13:05:47 -05:00
nxnfufunezn
e54929b4d7 Move ConstantSpec, NonNullJSNative and define_constants from utils to interface 2016-01-24 20:37:30 +05:30
bors-servo
525e77f64f Auto merge of #9385 - larsbergstrom:win32, r=frewsxcv,pcwalton,jdm,ecoal95
Win32 support

r? @frewsxcv for python stuff
r? @pcwalton for the "remove usage of Gaol" stuff for Win32
r? anybody else for misc cargo.lock updates, etc.

This replaces #7878.

This works best with https://github.com/servo/mozjs/pull/71, too, to enable static linking, but can be run without (via some PATH hackery).

The instructions are here, and will be added to a .md file in the repo once the mozjs changes also land:
https://hackpad.com/Servo-on-Windows-C1LPcI2bP25

I'd like to get these changes landed because I've been rebasing them for months, they're otherwise quite stable, and don't affect our other platforms and targets.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9385)
<!-- Reviewable:end -->
2016-01-23 07:27:27 +05:30
Lars Bergstrom
e9d9d1d9e9 Cargo.lock updates 2016-01-22 19:28:46 -06:00
Lars Bergstrom
721693c43e Remove usage of Gaol in the Windows configuration, since sandboxing is not supported there yet. 2016-01-22 19:28:38 -06:00
Jason Williams
13d98f153a adding check for windows then using Scripts instead of bin 2016-01-22 19:27:29 -06:00
Joshua Holmer
75d258f866 Update HTMLFormElement.length to be of type unsigned long
Fixes #9402
2016-01-22 12:09:12 -05:00
Glenn Watson
dfaf28d5cd Fixes additional calls to rAF.
Often, a rAF callback will request another rAF from the callback itself.

Previously, the constellation would quickly receive two messages saying
that there were no animations, and then there are animations again in the
situation above. This would make the compositor tick the new animation straight
away, causing strange fluctuations and timings in rAF callbacks.

Instead, only send the NoAnimationCallbacks message if the animation
callback queue is still empty after invoking the callbacks.

This fixes rAF timing, which now runs at the correct (vsync) framerate.
2016-01-22 16:08:28 +10:00
bors-servo
1c6fb0f04e Auto merge of #9367 - Chandler:url_origin, r=jdm
Add origin to Location and Url API.

The origin field is part of location and url spec but hasn't been implemented in servo yet.
https://html.spec.whatwg.org/multipage/browsers.html#dom-location-origin
https://url.spec.whatwg.org/#dom-url-origin

All of the logic to calculate the url origin exists in https://github.com/servo/rust-url

This review threads through rust-url origin implementation into the servo location and url API.

This fixes one websockets test:
servo/tests/wpt/web-platform-tests/websockets/opening-handshake/003.html

testing done:
./mach test-wpt tests/wpt/web-platform-tests/websockets/

I'm brand new to rust so feedback is appreciated, thanks!

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9367)
<!-- Reviewable:end -->
2016-01-22 04:25:49 +05:30
Chandler Abraham
1ee9ccba21 add origin to location and url api 2016-01-21 11:06:41 -08:00
bors-servo
52da517a14 Auto merge of #9393 - Ms2ger:renumber-prepare, r=jdm
Update HTMLScriptElement::prepare to match the changed specification.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9393)
<!-- Reviewable:end -->
2016-01-21 23:31:18 +05:30
bors-servo
1ba1fb0b7f Auto merge of #9380 - servo:cssparserup, r=SimonSapin
Update cssparser.

https://github.com/servo/rust-cssparser/pull/91

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/9380)
<!-- Reviewable:end -->
2016-01-21 22:45:51 +05:30
Simon Sapin
6fd46b5e6a Update cssparser.
https://github.com/servo/rust-cssparser/pull/91
2016-01-21 17:58:03 +01:00