Commit Graph

1827 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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