Commit graph

12161 commits

Author SHA1 Message Date
Patrick Walton
d6b9e3bdfd gfx: Fix Core Text font instantiation for Web fonts on Mac.
Fixes GitHub Octicons. A reftest has been added for this.
2015-08-04 17:07:44 -07:00
Patrick Walton
2880aa2b02 layout: Take borders into account when positioning inline fragments on
their baselines.

Improves the Rust GitHub page.
2015-08-04 16:20:15 -07:00
Matt Brubeck
35ba731123 Fix handling of negative numbers in list counters.
Fixes #6818.
2015-08-04 16:18:09 -07:00
bors-servo
eecd975209 Auto merge of #6954 - dzbarsky:stroke_rect, r=glennw
Implement strokeRect with zero-width or zero-height rects



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6954)
<!-- Reviewable:end -->
2015-08-04 16:38:57 -06:00
Patrick Walton
a746fa0ac1 layout: Place list item markers correctly in the block direction. 2015-08-04 14:44:54 -07:00
David Zbarsky
9fbe33b6f2 Implement strokeRect with zero-width or zero-height rects 2015-08-04 17:44:18 -04:00
bors-servo
b7e592443f Auto merge of #6945 - Manishearth:fixedme, r=jdm
If let is not an issue for lints

r? @Ms2ger

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6945)
<!-- Reviewable:end -->
2015-08-04 14:38:31 -06:00
David Zbarsky
2fb5fda5d0 Fix createImageData with sizes < 1 pixel 2015-08-04 15:45:38 -04:00
David Zbarsky
75e444c3b2 Make createRadialGradient throw for negative radii 2015-08-04 15:08:37 -04:00
bors-servo
56d3426431 Auto merge of #6940 - pcwalton:inline-pseudo-repair-jumpiness, r=mbrubeck
layout: When repairing styles for incremental reflow, only repair styles of nodes that represent the dirty node, *including its pseudo-element*.

r? @mbrubeck

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6940)
<!-- Reviewable:end -->
2015-08-04 12:53:26 -06:00
bors-servo
2205570083 Auto merge of #6947 - pcwalton:table-center, r=glennw
layout: Don't use the block container inline size as the initial computed table inline size.

Makes google.com fully centered.

r? @glennw 
cc @SimonSapin

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6947)
<!-- Reviewable:end -->
2015-08-04 11:36:09 -06:00
Patrick Walton
be5b6ff8c2 Update CSS tests expected data 2015-08-04 09:54:31 -07:00
Patrick Walton
04928bf1e3 layout: Don't use the block container inline size as the initial
computed table inline size.

Makes google.com fully centered.
2015-08-04 09:40:35 -07:00
Ms2ger
95763a87b0 Move the worker script evaluation into a method on WorkerGlobalScope. 2015-08-04 18:16:07 +02:00
Ms2ger
11ea299105 Remove the parent_sender_for_reporter local from DedicatedWorkerGlobalScope::run_worker_scope. 2015-08-04 18:16:06 +02:00
Ms2ger
bc97b421d2 Register the worker memory reporter outside the _ar scope.
The comment that claims it needs to be in that scope appears to be incorrect.
2015-08-04 18:15:58 +02:00
Patrick Walton
0a589d413d layout: When repairing styles for incremental reflow, only repair
styles of nodes that represent the dirty node, *including its
pseudo-element*.

Fixes lots more jumpiness.

A manual test, `inline-pseudo-repair-jumpiness.html`, has been added. I
was unable to automate it, so I will file a followup issue on that.
2015-08-04 09:02:41 -07:00
Ms2ger
d19ddfe6f3 Use a while let loop for the DedicatedWorkerGlobalScope event loop. 2015-08-04 16:44:18 +02:00
Ms2ger
5e1be29743 Move the event processing in the DedicatedWorkerGlobalScope event loop into its own function. 2015-08-04 16:41:20 +02:00
Ms2ger
4f8827321c Rename DedicatedWorkerGlobalScope::handle_event to handle_script_event. 2015-08-04 16:37:04 +02:00
Ms2ger
17985e5296 Split out a receive_event method from the DedicatedWorkerGlobalScope event loop. 2015-08-04 16:32:54 +02:00
Josh Matthews
039929da5c Warning police.
Closes #6949.
2015-08-04 15:16:15 +02:00
Manish Goregaokar
2d01e969f1 Remove fixme for if let in lints and replace with unreachable!() 2015-08-04 18:08:59 +05:30
bors-servo
0565df8596 Auto merge of #6950 - servo:struct-pattern, r=glennw
Add a comment to explain the struct pattern trick.

https://github.com/servo/servo/issues/6912#issuecomment-127429643

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6950)
<!-- Reviewable:end -->
2015-08-04 05:50:27 -06:00
bors-servo
672b38e83a Auto merge of #6946 - pcwalton:block-formatting-context-margins, r=mbrubeck
layout: If the container of a block formatting context has margins in the inline direction, subtract those from the inline size of preceding floats.

Makes the content area on http://reddit.com/r/rust visible.

r? @mbrubeck

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6946)
<!-- Reviewable:end -->
2015-08-04 02:41:40 -06:00
bors-servo
447c991ebb Auto merge of #6943 - dzbarsky:context, r=jdm
Clean up some methods in CanvasRendeingContext2D



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6943)
<!-- Reviewable:end -->
2015-08-04 00:46:09 -06:00
bors-servo
94cd76df61 Auto merge of #6938 - pcwalton:inline-repair-jumpiness, r=mbrubeck
construct: When repairing styles for incremental reflow, only repair styles of nodes that represent the dirty node.

Fixes jumpiness on many pages; e.g. the WPT results pages.

For some reason, this would not reproduce with an automated test.

r? @mbrubeck

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6938)
<!-- Reviewable:end -->
2015-08-03 23:37:47 -06:00
Simon Sapin
0f0de57936 Add a comment to explain the struct pattern trick.
https://github.com/servo/servo/issues/6912#issuecomment-127429643
2015-08-04 07:37:19 +02:00
bors-servo
d77f9415c5 Auto merge of #6937 - mbrubeck:hb_funcs, r=glennw
Store Harfbuzz callback functions in a static var

r? gw

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6937)
<!-- Reviewable:end -->
2015-08-03 22:40:35 -06:00
r0e
3e2e9b8715 Fix for issue #6768.
Merged common fields of BlobBody and ReadData into a new struct to
avoid passing redundant information
2015-08-03 21:13:10 -07:00
David Zbarsky
9e5c2e22d8 Clean up some methods in CanvasRendeingContext2D 2015-08-03 23:32:11 -04:00
bors-servo
84e25befdd Auto merge of #6874 - jdm:domreporting, r=njn
Start reporting memory usage for Window and all nodes in all DOM tree…

…s for frame treese in script tasks.

This underreports by a significant amount, since only Document, Window and CharacterData (ie. text) nodes are fully represented. That being said, every HTML element in the tree is measured, but only counted as a Node. It's easy to improve this, it just requires adding the appropriate HeapSizeOf derives and increasing the granularity of `measure_memory_for_eventtarget`. google.com shows a dom-tree value of 0.24 MB for me at the moment.

r? @nnethercote

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6874)
<!-- Reviewable:end -->
2015-08-03 21:24:41 -06:00
Josh Matthews
8620fe5995 Start reporting memory usage for Window and all nodes in all DOM trees for frame treese in script tasks. 2015-08-03 23:05:00 -04:00
Patrick Walton
3d9cc784d0 layout: If the container of a block formatting context has margins in
the inline direction, subtract those from the inline size of preceding
floats.

Makes the content area on http://reddit.com/r/rust visible.
2015-08-03 19:22:50 -07:00
bors-servo
c2497fcd49 Auto merge of #6932 - boghison:memrs, r=SimonSapin
Implement HeapSizeOf for Url. Fixes #6912

Fixes #6912
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6932)
<!-- Reviewable:end -->
2015-08-03 19:31:26 -06:00
bors-servo
d66c59a152 Auto merge of #6784 - glennw:offset-ext, r=pcwalton
Implement offsetParent/Top/Left/Width/Height.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6784)
<!-- Reviewable:end -->
2015-08-03 18:39:43 -06:00
bors-servo
3c5d24dbf4 Auto merge of #6926 - Ms2ger:dwgs-args, r=jdm
Implement a WorkerGlobalScopeInit struct to pass arguments to WorkerGlobalScope::new_inherited more easily.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6926)
<!-- Reviewable:end -->
2015-08-03 17:42:15 -06:00
Glenn Watson
39972a174e Fix panic when called on root node, and update test expectations.
The three tests that are marked as failures are because they use offsetWidth as a dummy to force a layout flush. Now that these exist, they expose an unrelated bug with reflow.
2015-08-04 08:59:27 +10:00
bors-servo
ae3aadd656 Auto merge of #6920 - Wafflespeanut:NIT, r=jdm
Removed an invalid FIXME and fixed some doc comments...

There are some bad module-level doc comments in `flow.rs` which has directly affected [Servo's docs](http://doc.servo.org/layout/flow/index.html) and so, this fixes that. Oh, and #6728 is having a hard time getting closed and so I've also removed the `FIXME` comment related to it.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6920)
<!-- Reviewable:end -->
2015-08-03 16:46:12 -06:00
Patrick Walton
ac5e7ec035 construct: When repairing styles for incremental reflow, only repair
styles of nodes that represent the dirty node.

Fixes jumpiness on many pages; e.g. the WPT results pages.

For some reason, this would not reproduce with an automated test.
2015-08-03 15:35:39 -07:00
Matt Brubeck
47a0d494ec Make Harfbuzz font_funcs static 2015-08-03 15:30:46 -07:00
Matt Brubeck
f1e268b1e8 Sort gfx crates.io dependencies and move to top 2015-08-03 15:30:46 -07:00
bors-servo
5922ac606c Auto merge of #6721 - mbrubeck:unicode-bidi, r=pcwalton
Implement the unicode-bidi CSS property

r? @pcwalton

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6721)
<!-- Reviewable:end -->
2015-08-03 15:37:12 -06:00
Matt Brubeck
f8e92b2b01 Implement the unicode-bidi property 2015-08-03 14:12:33 -07:00
bors-servo
86476804ca Auto merge of #6917 - Ms2ger:lock-alert, r=metajack
Lock and flush stdout in Window#alert.

We use alert() to communicate test results to wptrunner. Unfortunately,
sometimes the alert output is interleaved with other output on stdout,
causing wptrunner to classify the test result as a timeout. I hope this will
avoid that scenario.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6917)
<!-- Reviewable:end -->
2015-08-03 13:17:47 -06:00
Bogdan Cuza
46442d28fa Implement HeapSizeOf for Url. Fixes #6912 2015-08-03 22:02:56 +03:00
Ms2ger
6b61564f6d Pass WorkerGlobalScopeInit to DedicatedWorkerGlobalScope::run_worker_scope. 2015-08-03 19:54:04 +02:00
Ms2ger
0da0fcbe9b Implement a WorkerGlobalScopeInit struct to pass arguments to WorkerGlobalScope::new_inherited more easily. 2015-08-03 19:53:57 +02:00
bors-servo
028707f5cd Auto merge of #6903 - glennw:fix-height-again, r=pcwalton
Fix percentage height calculation, absolute containing block height calculations.

It's not possible to correctly determine during the css cascade whether the container height
is explicitly specified. Additionally, the spec https://drafts.csswg.org/css2/visudet.html#the-height-property says this should affect the *used* height, rather than the computed height.

This significantly improves the layout in #6643.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/6903)
<!-- Reviewable:end -->
2015-08-03 10:38:21 -06:00
Ms2ger
bd04cecceb Take WorkerGlobalScope's worker_id out of its Option.
Unsurprisingly, every worker has an id, so there is no need to wrap it in an
Option.
2015-08-03 18:28:48 +02:00