Commit graph

16155 commits

Author SHA1 Message Date
Glenn Watson
6d9fccbae7 Add a simple method to emulate a platform UA (e.g. pretend a desktop build is an android UA). 2015-08-18 14:42:28 +10:00
Patrick Walton
6567c269cf script: Update rust-selectors to get :active support.
I couldn't find the place in the spec where the precise behavior of
`:active` is described, so I don't set it. However, all the machinery to
keep track of its status is in place.

Improves YouTube.
2015-08-17 17:52:21 -07:00
João Oliveira
067a22a868 Replace uses of for foo in bar.iter(),
and `for foo in bar.iter_mut(), and for foo in bar.into_iter()
(continuation of #7197)
2015-08-18 01:46:11 +01:00
Patrick Walton
69e5bd2e3d layout: Use the value of the max-width property when speculating what
the inline sizes of block formatting contexts are likely to be.

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.
2015-08-17 17:01:20 -07:00
bors-servo
f4b526cfb4 Auto merge of #7222 - pcwalton:dashed-border-radius, r=glennw
gfx: Paint dashed borders with nonzero radii the same way Gecko does.

It's not ideal, but it was easy to implement and will do for now.

Closes #7157.

r? @glennw

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7222)
<!-- Reviewable:end -->
2015-08-17 16:53:58 -06:00
bors-servo
d654841288 Auto merge of #7177 - pcwalton:intervening-inline-block, r=mbrubeck
layout: Improve our handling of inline absolute containing blocks.

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

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7177)
<!-- Reviewable:end -->
2015-08-17 13:56:53 -06:00
Patrick Walton
a30379975a layout: Improve our handling of inline absolute containing blocks.
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.)
2015-08-17 12:43:12 -07:00
Nicholas Nethercote
97e3b24aa6 Fix panics in the script_task memory reporter.
These are caused by page_root being empty.
2015-08-17 04:37:43 -07:00
bors-servo
d90907cb5f Auto merge of #7245 - jxs:master, r=Ms2ger
replace len() !=0 with !is_empty()



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7245)
<!-- Reviewable:end -->
2015-08-17 02:33:28 -06:00
bors-servo
71ae18bae4 Auto merge of #7219 - vectorijk:issue#7042, r=Ms2ger
remove unused static collection type in htmlcollection.rs

ref #7042 
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7219)
<!-- Reviewable:end -->
2015-08-17 02:03:23 -06:00
João Oliveira
1e20447746 replace len() !=0 with !is_empty() 2015-08-17 02:56:07 +01:00
wartman4404
8d665008f8 Remove the DOMRefCell wrapper around Window::compositor. 2015-08-16 17:28:21 -05:00
vectorijk
59d704b53f turn enum into struct
pub enum CollectionTypeId -> pub struct Collection
2015-08-16 12:01:51 -07:00
vectorijk
d853aaba65 remove unused static collection 2015-08-16 11:38:22 -07:00
Josh Matthews
a147cbe0c1 Tighten up checks for spaces around colons to deal with trait inheritance syntax. 2015-08-16 10:31:36 -04:00
Josh Matthews
8bb853f643 Fix existing syntactics nits. 2015-08-16 10:30:43 -04:00
bors-servo
a2978f2add Auto merge of #7236 - nox:dictionary-failure-code, r=Ms2ger
Fix dictionary member conversion failure (fixes #7231)



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7236)
<!-- Reviewable:end -->
2015-08-16 06:39:56 -06:00
Anthony Ramine
47e76ff4ab Fix dictionary member conversion failure (fixes #7231) 2015-08-16 14:32:54 +02:00
Anthony Ramine
44aabbe64d Support required dictionary members (fixes #7216) 2015-08-16 14:16:32 +02:00
Anthony Ramine
efe982392e Update WebIDL parser 2015-08-16 14:16:31 +02:00
vectorijk
270df6bac8 without the explicit dereferencing 2015-08-16 01:34:58 -07:00
vectorijk
7758f81ffd dereference via * instead of RefMut 2015-08-16 01:34:57 -07:00
vectorijk
14ac1ef75a remove ScriptListener
ref #7175
2015-08-16 01:34:55 -07:00
bors-servo
7c63c7d7c1 Auto merge of #7214 - tomjakubowski:websocket-binaryType, r=Ms2ger
Implement WebSocket#binaryType

Closes #7098

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7214)
<!-- Reviewable:end -->
2015-08-15 19:57:58 -06:00
Tom Jakubowski
e92f4629db WebSocket: Implement WebSocket#binaryType 2015-08-15 12:44:22 -07:00
bors-servo
55e755e35a Auto merge of #7233 - nox:default-float-value, r=Ms2ger
Support default values for restricted float members (fixes #7217)



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7233)
<!-- Reviewable:end -->
2015-08-15 10:59:44 -06:00
bors-servo
31413f4313 Auto merge of #7188 - servo:set_inline_style_property_priority, r=nox
Fix Element::set_inline_style_property_priority’s handling of priority

Thanks to @michaelwu for pointing out a copy-paste error.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7188)
<!-- Reviewable:end -->
2015-08-15 09:17:31 -06:00
Anthony Ramine
ec2a6b24b1 Support default values for restricted float members (fixes #7217) 2015-08-15 14:45:26 +02:00
Ms2ger
238beec038 Implement a PerformanceActor.
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"'.)
2015-08-15 14:21:25 +02:00
bors-servo
6a52ec9484 Auto merge of #7006 - Wafflespeanut:script_cleanup, r=jdm
Splitting ScriptMsg into various enums...

... for #3734, which is also one of the oldest issues. (/cc @jdm)

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7006)
<!-- Reviewable:end -->
2015-08-15 03:48:47 -06:00
João Oliveira
0038580abf Replace uses of for foo in bar.iter() and for foo in bar.iter_mut()
closes #7197
2015-08-15 02:27:39 +01:00
Patrick Walton
3f4487d81d gfx: Paint dashed borders with nonzero radii the same way Gecko does.
It's not ideal, but it was easy to implement and will do for now.

Closes #7157.
2015-08-14 16:42:47 -07:00
Ravi Shankar
89153116fb Splitting ScriptMsg into various enums; r=jdm 2015-08-15 02:00:48 +05:30
bors-servo
13e7de482c Auto merge of #7195 - servo:rustup_20150814, r=Ms2ger
Upgrade Rust to nightly 2015-08-10

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

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7195)
<!-- Reviewable:end -->
2015-08-14 12:53:54 -06:00
Manish Goregaokar
91bc14711d Upgrade Rust to nightly 2015-08-10 2015-08-15 00:21:33 +05:30
bors-servo
d4d18f51f2 Auto merge of #7215 - Ms2ger:ticks, r=jdm
Use external mutability for FramerateActor::ticks.



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7215)
<!-- Reviewable:end -->
2015-08-14 07:16:19 -06:00
Ms2ger
2126301c2d Use external mutability for FramerateActor::ticks. 2015-08-14 14:45:46 +02:00
bors-servo
38c5fb80d3 Auto merge of #7213 - nnethercote:tweak-system-heap-allocated, r=Ms2ger
Tweak how the "system-heap-allocated" memory report is gathered.

To handle potential overflow because mallinfo() is ancient.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7213)
<!-- Reviewable:end -->
2015-08-14 06:41:58 -06:00
Nicholas Nethercote
77fadb7054 Tweak how the "system-heap-allocated" memory report is gathered. 2015-08-14 00:05:17 -07:00
bors-servo
85022a4c34 Auto merge of #7208 - jxs:master, r=Ms2ger
replace .len() == 0 with is_empty()

closes #7198

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7208)
<!-- Reviewable:end -->
2015-08-14 00:51:59 -06:00
Corey Farwell
447fbdcb49 Cleanup/refactor build scripts for DOM codegen
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.
2015-08-14 00:30:40 -04:00
Corey Farwell
ad02092b12 Add missing parameter to usageString in GlobalGen.py 2015-08-14 00:24:15 -04:00
bors-servo
a35360aa31 Auto merge of #7119 - fabricedesre:devtools, r=jdm
Tentative fix for  issue #7110



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7119)
<!-- Reviewable:end -->
2015-08-13 21:05:34 -06:00
João Oliveira
9c11781880 replace .len() == 0 with is_empty()
closes #7198
2015-08-14 04:00:33 +01:00
bors-servo
7a9458e530 Auto merge of #7206 - glennw:fix-debug-panic, r=pcwalton
Fix "'PaintWorker' panicked at 'index 0 and/or 4 in `*` do not lie on…

… character boundary" when printing display list.

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

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7206)
<!-- Reviewable:end -->
2015-08-13 20:07:56 -06:00
Glenn Watson
8218ead707 Fix "'PaintWorker' panicked at 'index 0 and/or 4 in * do not lie on character boundary" when printing display list.
This whole piece of code seems a bit fragile, but it fixes the immediate problem for now.
2015-08-14 11:48:36 +10:00
Fabrice Desré
c7b48240b0 Actor::handle_message should return an enum instad of a boolean #7110 r=jdm 2015-08-13 18:14:34 -07:00
bors-servo
f5e97ef1b5 Auto merge of #7165 - g-k:refactor-debug-options, r=ms2ger
Fail on unrecognized debug option

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?

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7165)
<!-- Reviewable:end -->
2015-08-13 18:11:57 -06:00
Jack Moffitt
c04c413d5a Update skia to get NEON fixes
The other lockfile changes are bustage from previous PRs that didn't
update the other Cargo.locks.
2015-08-13 16:59:31 -06:00
bors-servo
2e1ca10eea Auto merge of #7199 - frewsxcv:codegen-if-let, r=Manishearth
Prefer if..let over if..is_some..unwrap in codegen



<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7199)
<!-- Reviewable:end -->
2015-08-13 15:35:21 -06:00