Граф коммитов

5062 Коммитов

Автор SHA1 Сообщение Дата
Eli Friedman 7cf10cb041 servo: Merge #8026 - Fix uses of JS<T> as a type on the stack (from eefriedman:js-rooting); r=nox
`JS<T>` belongs on the heap, and only on the heap.  This is a collection of fixes so that code uses either `Root<T>` or `&T` to pass around garbage-collected pointers.

Ideally, we could completely ban constructing a `JS<T>` outside of constructor functions, but we aren't quite there yet.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7c7dbde0f4372037aac3635b8d81531ca9cdced3
2015-10-16 08:05:59 -06:00
Ms2ger 9025a0ca23 servo: Merge #8049 - Enable some warnings for generated code (from Ms2ger:warnings); r=nox
None of those warnings currently occur.

Source-Repo: https://github.com/servo/servo
Source-Revision: 67e8ec997faf6882e906229811dc64340eff2dd7
2015-10-16 04:09:42 -06:00
Gilles Leblanc b420fbc10c servo: Merge #8044 - Adds a tidy check for single-page HTML specification links (from gilles-leblanc:issue-7998); r=Manishearth
Flags links to the single-page WHATWG specification and suggests the URL
for the multi page one.

Fixes #7998

Source-Repo: https://github.com/servo/servo
Source-Revision: 36998cd5b1ab8da63b6ec82c7d45b5dc08b5d42a
2015-10-15 19:25:53 -06:00
Manish Goregaokar 64fbfa46fb servo: Merge #8030 - Fix unrooted_must_root lint to handle arguments/return types properly (from Manishearth:fix-lint-fn); r=frewsxcv
r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 9d5f09e09c64d878e6c2bb273195c3c6ca9fe82c
2015-10-15 15:00:00 -06:00
Anthony Ramine 06fd534a1b servo: Merge #8020 - Generate all Derived implementations in codegen (from nox:codegen-derived); r=Ms2ger
Follow-up of #7873.

@Ms2ger r? :)

Source-Repo: https://github.com/servo/servo
Source-Revision: 417cf5738e4609f4b2e34e9e0c4f7ef68f087432
2015-10-15 12:53:08 -06:00
Anthony Ramine 9be943ec1a servo: Merge #7972 - Introduce DOMClass::heap_size_of (from nox:codegen-heapsize); r=Ms2ger
It holds a function pointer to the HeapSizeOf::heap_size_of_children()
implementation corresponding to that IDL interface.

This removes the need for a clumsly TypeId-based match expression in the
former heap_size_of_eventtarget() function.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5a0a91eba794af027723051c7f039cb22088aa65
2015-10-15 07:13:55 -06:00
Tareq A Khandaker d1b2d8eabb servo: Merge #8024 - Add clarity to warning message about OS X notifications (from tareqak:warning_message_about_os_x_notifications_is_unclear); r=frewsxcv
I made this change with respect to this issue: https://github.com/servo/servo/issues/7840

Source-Repo: https://github.com/servo/servo
Source-Revision: f8ada66919c8fda836b8e33375e82c1ef9059999
2015-10-14 19:29:54 -06:00
Glenn Watson c019e2993c servo: Merge #8009 - Remove webdriver use of SubpageId (from glennw:webdriver-subpage); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: ac733746094c2ab1c3e5a3326095032206e5fb86
2015-10-14 18:05:17 -06:00
David Rajchenbach-Teller ce3eeb7bf0 servo: Merge #7894 - Rework image_cache_task to avoid using `url` as key during the loadin… (from Yoric:image-url); r=glennw
…g of an image.

A `url` can be very large, in particular if it is a data: url, so using it as a key for lookups whenever we load a few bytes is not a very good idea. This patch introduces an intermediate `LoadKey` (internally, an u64) that makes hashmap lookups faster. Somewhere along the way, we also get rid of a few calls to `url.clone()`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4f767430a4460760fb1307fa577048308f3a7610
2015-10-14 17:26:48 -06:00
Connor Imes 68c5af28a5 servo: Merge #7993 - Update energymon-sys and energymon-default-sys versions (from connorimes:energymon-arm-updates); r=larsbergstrom
Includes build script updates to support Rust linking to static libs on ARM systems as well as some changes to ODROID Smart Power and RAPL energymon implementations.

Source-Repo: https://github.com/servo/servo
Source-Revision: 35d1b13b724a751dbbc795e8b25570306c019f06
2015-10-14 15:26:51 -06:00
Michael Wu e4dfd5fc9a servo: Merge #7727 - Support the updated spidermonkey bindings (from michaelwu:update-bindings); r=jdm
Still need to finish the rust-mozjs update and make cargo use it, but it's close enough that I don't expect much to change on the servo side.

Some changes here
- bools are properly translated now
- char16_t is handled as u16 now
- JS_GlobalObjectTraceHook isn't mangled now
- JSJitInfo has been adjusted
- A const fn is used to generate bitfields in JSJitInfo
- Manually generating handles now requires calling an unsafe function. It's not actually required, but it's too much of a hassle to generate them manually now due to bindgen++ adding base classes now.

Source-Repo: https://github.com/servo/servo
Source-Revision: b34fd5bd7e55be1d577df5cf70b41af8a6cc716b
2015-10-14 14:48:44 -06:00
Eli Friedman fe0f123219 servo: Merge #7984 - Refactor resource loaders to use send_error utility (from eefriedman:net-send-error); r=jdm
No substantial functional change.

Source-Repo: https://github.com/servo/servo
Source-Revision: f35f809938792fbad61fd517187e46c1e009cd16
2015-10-14 13:28:14 -06:00
Anthony Ramine d5038d123e servo: Merge #7873 - Generate the various TypeId enums in codegen (from nox:codegen-typeid); r=Ms2ger
This frees us forever from caring about maintaining these enums. The last commit removes their use from the initialisation of interface objects derived from Node.

Source-Repo: https://github.com/servo/servo
Source-Revision: 32daa17d5cbcad02db0713e21e52410cdc60480e
2015-10-14 12:47:48 -06:00
meh cee450a1e9 servo: Merge #7552 - Add viewport configuration support to the compositor (from meh:viewport); r=glennw
This allows me to do stuff like this.

![this](https://cloud.githubusercontent.com/assets/40204/9701150/58d593ae-541d-11e5-9f57-8d379f5c9ceb.png)

Those are two compositors rendered on the same OpenGL context, I need this so I can split windows and render them without getting mad with textures and framebuffers, it will also allow me to render the proper parts of the chrome as different web pages without involving dozens of framebuffers and textures.

If I recall correctly I did talk to @glennw about this on IRC some time ago.

This pull request requires https://github.com/servo/gleam/pull/39 to be merged first tho.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8db8a86ab1e943b5102a05d6d31800579fdb7875
2015-10-14 10:29:45 -06:00
Eli Friedman 136cdea614 servo: Merge #7967 - MIMEClassifier::classify always succeeds; fix the type to reflect this (from eefriedman:mime-handling); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 7308d0dd0d2f41e140434d5f992c5aa7ecc0ef71
2015-10-14 08:46:32 -06:00
Corey Farwell 8c8b2c6aab servo: Merge #7829 - Implement HTMLTableCellElement::CellIndex (from frewsxcv:htmltablecellelement-cellindex); r=Ms2ger
Extracted from #6936

Source-Repo: https://github.com/servo/servo
Source-Revision: 55769b2fbf24ed84ee0f8ea5fe856e5fd29d8e60
2015-10-14 07:39:24 -06:00
Glenn Watson 0e52e5830d servo: Merge #7989 - Update gleam 0.1.9 -> 0.1.13 (from glennw:update-gleam); r=frewsxcv
Update gleam 0.1.9 -> 0.1.11

Source-Repo: https://github.com/servo/servo
Source-Revision: dd2f8b6891f963a6c0cf42be9212e85a86a77df7
2015-10-13 19:15:39 -06:00
Prabhjyot Singh Sodhi 13eee003f0 servo: Merge #7871 - Send reason in the Websocket close handshake (from psdh:sendReason); r=jdm
Fixes #7862

Source-Repo: https://github.com/servo/servo
Source-Revision: 26902a9a9b9266d7ffe13e9e1eb2c70fb0b70ae9
2015-10-13 17:25:27 -06:00
David Raifaizen 02564b326f servo: Merge #8004 - Removed user agent parameter from being unnecessarily passed (from craftytrickster:user-agent/#7968); r=jdm
https://github.com/servo/servo/issues/7968

Source-Repo: https://github.com/servo/servo
Source-Revision: bc58cd2de05b371f641051eb1038cd29e36bbb01
2015-10-13 16:20:22 -06:00
Eli Friedman 9485a11014 servo: Merge #7997 - Link to the HTML multipage spec, not the single-page one (from eefriedman:html-spec-multipage); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 9fca41c7a7498cb6e27b914c45290dc4639d6f8b
2015-10-13 12:54:10 -06:00
Ms2ger d28c6e55d4 servo: Merge #7991 - Update cssparser (from Ms2ger:update-selectors); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 8cb3c5f6287146f8a5c351b72fb135de5b283b33
2015-10-13 11:39:43 -06:00
Connor Imes 5010e2b275 servo: Merge #7992 - Set a reasonable max count on open files and don't panic if set fails (from connorimes:platform-rlimit-nofailing); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 7babf4a3adb07823c49c25cf9b82bf18973a93d6
2015-10-13 08:49:56 -06:00
Dongie Agnir a1c7fb0be8 servo: Merge #7990 - Add newline so code sample is parsed correctly (from dagnir:formatting-fix); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: efdaf5e7e5923d1078ed7b12b96325e2411cc3d2
2015-10-13 02:12:28 -06:00
Corey Farwell 7ef53c6ece servo: Merge #7987 - Fix issues found by rust-clippy (from frewsxcv:clippy); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: eb7039d04d4c83800ba9d92dc251222f79b83040
2015-10-12 18:33:30 -06:00
Matt Brubeck fd3bcc3b9b servo: Merge #7933 - Replace libpng and stb_image with PistonDevelopers/image (from mbrubeck:piston-image); r=glennw
Fixes #3368. r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 0f597d389052500d9b76b9f9f89e873e6f809ab1
2015-10-12 15:06:31 -06:00
Simon Martin 3873b7794f servo: Merge #7957 - Issue #7905: Restore "headless" build on not Linux platforms (from simartin:ticket_7905); r=mbrubeck
Fix https://github.com/servo/servo/issues/7905 by implementing WindowMethods' native_display  in headless mode on "not Linux" platforms.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6303126e0c48e9c83aa7edd813079a6a360837b2
2015-10-12 12:02:43 -06:00
Glenn Watson 4bbac71ac7 servo: Merge #7921 - Update RemoveIFrame to use pipeline id rather than subpage (from glennw:subpage-fixes-2); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 5ffeb3b95bfc90079622fa65fa7f6dc4fff25350
2015-10-12 07:49:26 -06:00
Corey Farwell bdb575df39 servo: Merge #7976 - Cleanup code that was warned by rust-clippy (from frewsxcv:clippy); r=jdm
[whitespace agnostic diff](https://github.com/servo/servo/pull/7976/files?w=1)

Source-Repo: https://github.com/servo/servo
Source-Revision: ac1b595609a08c30d6c13dfe6e7705f061bbc010
2015-10-12 04:37:42 -06:00
Rahul Sharma c2f189a984 servo: Merge #7973 - convert match to if let for location header check #7969 (from creativcoder:fix_issue_7969); r=jdm
@jdm Hi, very eager for my first pull request to Servo. Please review the changes.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8dff3be956e7c4d8bc129491e1dfb5295c0027f1
2015-10-12 03:13:28 -06:00
Connor Imes 1145c446b0 servo: Merge #7961 - Update dependencies with fixes for native ARM builds (from connorimes:arm-crate-updates); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 71c5587856048708906cf3adb6952116f224d40e
2015-10-12 01:42:25 -06:00
Corey Farwell 6a9c0443a4 servo: Merge #7854 - Implement deleteRow and insertRow for table section elements (from frewsxcv:htmltablesectionelement-insertrow-deleterow); r=nox
Implement deleteRow and insertRow for <table> element

Continued from #6936

Source-Repo: https://github.com/servo/servo
Source-Revision: 292dbfe809ddf048065f790071ea2022406536d7
2015-10-11 16:44:13 -06:00
Corey Farwell 4eac942022 servo: Merge #7974 - Use Travis container-based infra for test-tidy (from frewsxcv:travis); r=jdm
I wasn't aware one could specify options like `sudo` and `services` on a per build-environment basis. Since the container-based builds are faster than normal builds, we should utilize it for test-tidy

Source-Repo: https://github.com/servo/servo
Source-Revision: 9c1cb9f61e3d7a34fa49355d28d9edc236c0690f
2015-10-11 09:17:25 -06:00
Gökberk Yaltıraklı 7afd007050 servo: Merge #7971 - Use typed header API instead of set_raw in set_default_accept_encoding (from gkbrk:fix_7970); r=nox
Fixes #7970

Source-Repo: https://github.com/servo/servo
Source-Revision: 7b904ef6fb2147841366b4adf07327bc1cdbb1be
2015-10-11 03:20:14 -06:00
Corey Farwell 41ad1c9129 servo: Merge #7958 - Consolidate magic number representing max unsigned long (from frewsxcv:consolidate-magic-number); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 02d889494580d2b387a42d3a94360e40dce96282
2015-10-10 15:00:39 -06:00
Corey Farwell f5858ccd06 servo: Merge #7953 - Implement 'align' attribute for <div> elements (from frewsxcv:htmldivelement-align); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: babeed998d297d2d7badc06ba9c8f90e42239b4f
2015-10-10 14:11:33 -06:00
David Raifaizen 086a51ceaf servo: Merge #7949 - Making map+clone more succinct with cloned (from craftytrickster:map-clone-to-cloned); r=nox
https://github.com/servo/servo/issues/7906

Source-Repo: https://github.com/servo/servo
Source-Revision: 04266f237a807ed3abbb678cbda0f5a8439171c7
2015-10-10 13:18:56 -06:00
Anthony Ramine eafe1e3613 servo: Merge #7918 - Derive PartialEq on the style Font structure (from nox:partialeq-font); r=mbrubeck
We check the hash first.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0f8493a5669d8c6c29d07881534e144bfc87b511
2015-10-10 12:26:07 -06:00
Corey Farwell 9db4f66ca0 servo: Merge #7955 - Add 'listing' alias for <pre> elements (from frewsxcv:listing-pre); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: b34b82537acfb7cd9bd8bcecd5eb49528020b1ab
2015-10-10 11:08:14 -06:00
Corey Farwell 795e875ef6 servo: Merge #7960 - Replace usage of old-style WHATWG spec links (from frewsxcv:update-spec-links); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 4052a22a1c6826cb18f03de9d2f6aed82d809e71
2015-10-10 10:17:52 -06:00
Andriy Kunitsin d8ffd6e1db servo: Merge #7948 - Changed dom_class type to Option<&'static DOMClass> to fix #7942 (from kunitsyn:master); r=Manishearth
I have a feeling that converting `Option<&T>` to `*const libc::c_void` could be less explicit.
Was there any way to do it shorter?

Source-Repo: https://github.com/servo/servo
Source-Revision: 9cccd98254191b1663dcaee9010eee63fa8074a3
2015-10-09 23:22:59 -06:00
Pierre Chevalier eeac1823f4 servo: Merge #7945 - Refactor away unnecessary use of regex (from pierrechevalier83:fix_issue_7914); r=jdm
We don't need regex matching since ": &Vec<" doesn't
contain any special character.

New code reads better.

Fixes #7914.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1192efed505ca19a395f22cd5e5733e8c57a6e82
2015-10-09 21:22:06 -06:00
Avi Weinstock 5dcd1c9576 servo: Merge #7952 - Update clipboard to a version with chdir("/") removed (from aweinstock314:update-clipboard-20151009); r=mbrubeck
Relevant links:
http://logs.glob.uno/?c=mozilla%23servo&s=9+Oct+2015&e=10+Oct+2015#c279844
ef4cf77c9c

Source-Repo: https://github.com/servo/servo
Source-Revision: 28969f1f33cd0144fbdb9dc3cbd68dbb4b79352f
2015-10-09 19:52:13 -06:00
Martin Robinson eb37118a1e servo: Merge #7891 - Properly size synthesized layers (from mrobinson:display-list-paint-layer); r=pcwalton
Layers that are composed of several stacking contexts that need to be
rendered on top of other layered content need synthesized layers.
Previously, these layers were placed into a stacking context that was
the same size as their parent. This patch creates a new type of
PaintLayer which simply holds a display list. The layer is sized to the
bounds of the DisplayList and its children are positioned relative to
the parent stacking context.

This will also be useful in the future, when items outside of
StackingContexts are given their own layer for render order purposes.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6d52bdf4ffd5479780df4a3fb0ff07bd7378720e
2015-10-09 17:00:21 -06:00
Louis Chan 87d5049829 servo: Merge #7939 - Use typed headers API instead of set_raw (from iawaknahc:issue-7924); r=Manishearth
fix https://github.com/servo/servo/issues/7924

Source-Repo: https://github.com/servo/servo
Source-Revision: 48887acff194047677f03d2be6cf151ecab3e2e3
2015-10-09 15:01:22 -06:00
Paul Rouget f320ac97d4 servo: Merge #7909 - Snap to screen pixels instead of px (from paulrouget:subpixelPos); r=mbrubeck
Fixes #7904

Source-Repo: https://github.com/servo/servo
Source-Revision: 8ef8c53d2a3e8a54a2bfc98e7e1d71d609098f62
2015-10-09 14:10:44 -06:00
Alex Crichton 28e8a526a8 servo: Merge #7936 - Fix spurious rebuilds of the script crate (from alexcrichton:script-rebuild); r=jdm
The script crate currently has a build script, and Cargo will consider all files
in the script crate as inputs to the build script as it otherwise doesn't know
[what the input files are][cargo-1162]. This means that if any file in the
source tree of the script crate changes (or is created) then Cargo will think it
needs to re-run the build script and rebuild the crate.

[cargo-1162]: https://github.com/rust-lang/cargo/issues/1162

The build script of the script crate is invoking python, and consequently Python
is generating some bytecode files in the source tree. On the second build of
Servo, Cargo will see these new files, think that something has changed, and
will re-run the build script of the script crate.

This change passes the `-B` flag to python to avoid generating these bytecode
files, which should avoid tampering with the source tree and appease Cargo by
ensuring that it doesn't get rebuilt.

---

As a helpful tip to if this comes up again, this was discovered by using the
changes in rust-lang/cargo@c447e9d plus the change in rust-lang/cargo#2044. Once
`RUST_LOG` was set to `cargo::ops::cargo_rustc::fingerprint=info`, the second
run of `./mach build` printed out:

```
precalculated components have changed:
  1444364448.000000000s (/build/servo/components/script/dom/bindings/codegen/parser/WebIDL.pyc) !=
  1444364235.000000000s (/build/servo/components/script/document_loader.rs)
```

Which should help easily diagnose these kinds of problems in the future!

Source-Repo: https://github.com/servo/servo
Source-Revision: bc5444067f7614ab7e3c83d8e131800d0db817b2
2015-10-09 13:23:41 -06:00
Louis Chan fd2d776494 servo: Merge #7835 - Implement a quota of 5MB per origin for localstorage and sessionstorage (from iawaknahc:webstorage-quota); r=jdm
PR for https://github.com/servo/servo/issues/6739

Source-Repo: https://github.com/servo/servo
Source-Revision: 06e0447e8289d723918a71e1ab39712c3af210d3
2015-10-09 12:36:47 -06:00
Antonio de Luna d53caeab1e servo: Merge #7938 - removed clone from respond_with_headers fixes #7922 (from A-deLuna:remove-clone-from-respond_with_headers-fixes-#7922); r=Ms2ger
fixes #7922

Source-Repo: https://github.com/servo/servo
Source-Revision: ec10b1708ee4579886006b3248fdff7b21df4d0b
2015-10-09 11:40:33 -06:00
Ms2ger 1c3725c38e servo: Merge #7925 - Implement HTMLIFrameElement::pipeline_id on LayoutJS<HTMLIFrameElement> (from Ms2ger:iframe-pipeline-layout); r=glennw
Source-Repo: https://github.com/servo/servo
Source-Revision: 12139f73ef0be864bac00dc106832a9f45634cb2
2015-10-09 09:49:08 -06:00
Jim Berlage f76cf699aa servo: Merge #7885 - Creates empty string when passed null (from jimberlage:7858/null-message); r=Ms2ger
This should fix #7858.  An empty `USVString` is now used when `data` is `None`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8c81d9ab28132cff1d792b5c99e98bea6f7870bd
2015-10-09 09:02:45 -06:00
Corey Farwell 2157cac781 servo: Merge #7841 - Implement <body>'s "text" attribute (from frewsxcv:htmlbodyelement-text); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 1029feb55d004e4417dd6cfdcb864d18871ae74a
2015-10-09 06:11:46 -06:00
Pierre Chevalier abc6fc4ff8 servo: Merge #7932 - Refactor away duplication of get_rooted functionality (from pierrechevalier83:fix_issue_7929); r=jdm
Refactor .get().map(Root::from_rooted)
and .get().map(|foo| foo.root())
to .get_rooted() on MutNullableHeap objects.

First part done mechanically with the following comand:
sed -i s/"get().map(Root::from_rooted)"/"get_rooted()"/g *.rs

Second part done manually after finding them with
git grep ".get().map("

Fixes #7929.

Source-Repo: https://github.com/servo/servo
Source-Revision: 96356a4b339af07831dec79e0084079328b43b53
2015-10-09 05:23:25 -06:00
Eli Friedman 115d4c54e5 servo: Merge #7825 - Fully implement the "align descendants" rule for div (from eefriedman:div-align); r=mbrubeck
This adds -servo-left and -servo-right to complement -servo-center.

~~This intentionally doesn't try to address issue #7301.~~  Commit added to address #7301.

Source-Repo: https://github.com/servo/servo
Source-Revision: ab42ca42967354cba08d1dca83aa99a637bd7a6b
2015-10-08 12:20:55 -06:00
Martin Robinson 1ba26da0e3 servo: Merge #7928 - Add the dump-layer-tree option to the -Z help text (from mrobinson:layer-tree-fix); r=pcwalton
I accidentally omitted this when I added the dump-layer-tree option
initially.

Fixes #7926.

Source-Repo: https://github.com/servo/servo
Source-Revision: a8ad990c6d619bc199ee25edd5bfd12e9846eb33
2015-10-08 11:23:18 -06:00
Martin Robinson 33363637c0 servo: Merge #7917 - Record reference test stdout and stderr (from mrobinson:test-stderr); r=larsbergstrom
When reference tests crash it is difficult to debug the issue, because
the stacktrace and any other output is discarded by the test harness.
Instead of discarding it, write the output to text files in the test
results directory which will make it easier to debug crashing tests.

Source-Repo: https://github.com/servo/servo
Source-Revision: d15ea83938059a5ba754796545834930a9c0df1a
2015-10-08 10:36:09 -06:00
Corey Farwell c17a75ed5f servo: Merge #7915 - Build Servo on Travis (from frewsxcv:travis); r=larsbergstrom
Closes #6962

Source-Repo: https://github.com/servo/servo
Source-Revision: e5b46eb919461531b8bf5a79fc0c5e6e1ec94c75
2015-10-08 09:00:28 -06:00
Martin Robinson 2bdc604c66 servo: Merge #7913 - Simplify and unify compositor shutdown code paths (from mrobinson:compositor-shutdown); r=pcwalton
Unify all compositor shutdown code paths into two methods, one which
starts the shutdown and the other that finishes it. This simplifies the
way the compositor shuts down and prevents "leaking" pixmaps when
exiting in uncommon ways.

Source-Repo: https://github.com/servo/servo
Source-Revision: 26dd1233103eb75c2e94fcc2ba34c18fa4432afc
2015-10-07 21:28:39 -06:00
Glenn Watson 9a3c41dbd9 servo: Merge #7916 - Don't check for equal image size and all white pixels for flaky tests (from glennw:flaky-mac); r=jdm
Workaround for #7730.

Source-Repo: https://github.com/servo/servo
Source-Revision: b34e8b86b83ce4404ce180d634b88d8a7aaa7348
2015-10-07 19:59:04 -06:00
Glenn Watson 9272f395c5 servo: Merge #7899 - Remove constellation round trip for subpage mapping in compositor (from glennw:subpage-fixes-1); r=pcwalton
This makes use of the new functionality that allows iframes to generate their own pipeline IDs in order to remove any knowledge of subpage ids from the compositor.

(This is the first of several commits removing subpage from parts of servo).

Source-Repo: https://github.com/servo/servo
Source-Revision: 1d617f332edd0036ca4cbc3890f1f44f57597906
2015-10-07 18:36:35 -06:00
James Graham 6148e472ce servo: Merge #7875 - Move code to exit servo after writing a screenshot out of composite_specific_target (from jgraham:composite_no_exit); r=glennw
The structure of this function was confusing, so move some parts out into the
caller where they seem like a more natural fit and add documentation of the
functions

Source-Repo: https://github.com/servo/servo
Source-Revision: e7f73fdfd822fc2f0d3c239a428c739232bdfd12
2015-10-07 17:50:23 -06:00
Emilio Cobos Álvarez 8ff28f34dd servo: Merge #7843 - webgl: Implement WebGLContextEvent and use it on context creation error (from emilio:webgl-context-event); r=jdm
spec: https://www.khronos.org/registry/webgl/specs/latest/1.0/#5.15
Source-Repo: https://github.com/servo/servo
Source-Revision: 0b6cb92d786a438cf7d9b2ca5b199172052e29bd
2015-10-07 17:04:10 -06:00
Qeole 145fd662de servo: Merge #7911 - Fixes #7907: rendering for unescaped string "<iframe>" in doc (from Qeole:7907); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 3e5b491a502af3158d77a1426fc585df43353ae9
2015-10-07 13:59:24 -06:00
Eli Friedman 78c1c7ac6e servo: Merge #7912 - Make sure to correctly destroy old layers in collect_old_layers_for_pipeline (from eefriedman:compositor-layer); r=mrobinson
The previous code would skip calling clear_all_tiles(), which led to a
panic in rust-layers. ("You should have disposed of the pixmap properly
with destroy()! This pixmap will leak!")

Ran into this messing around with pdf.js; no minimized testcase.
Maybe related to #7895.

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 217c7da41304142ffaf7c02a3eb888b0f150c59d
2015-10-07 12:56:13 -06:00
Prabhjyot Singh Sodhi 11dabd9912 servo: Merge #7773 - renaming AssertRequstMustHaveHeaders to AssertRequestMustIncludeHeaders (from psdh:assertReq7647); r=jdm
Fixes #7647

Source-Repo: https://github.com/servo/servo
Source-Revision: 04f42271f88a2730ae9ecfe17952580c5885978b
2015-10-07 11:35:51 -06:00
Anthony Urena d38f437e11 servo: Merge #7892 - Refactor html form dataset collection (from anthgur:form-data-refactor); r=jdm
Factor out FormDatum collection for `<input>`
Improve early return logic for getting the FormDatum from an `<input>`
Condense element type patterns

Proposed to close #7851

Source-Repo: https://github.com/servo/servo
Source-Revision: 94dc98717b79c12cdac6b1eba72227199850ac31
2015-10-07 08:32:44 -06:00
Corey Farwell d0ae734b10 servo: Merge #7898 - Use the correct IDL setter for <font>.size (from frewsxcv:htmlfontelement-size-attribute-setter); r=nox
Previously, the IDL attribute would incorrectly set the `size` attribute
for `<font>` elements as `AttrValue::String`. Now it correctly sets it
as `AttrValue::Length`. Also included is a regression test.

Source-Repo: https://github.com/servo/servo
Source-Revision: 60a77defe5f3ed9420b818db1875bc726b6b6a4c
2015-10-07 07:04:28 -06:00
Ms2ger 2127faec58 servo: Merge #7903 - Add support for documenting CGAbstractMethods (from Ms2ger:codegen-docs); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 745635a706223df3d0f6db927cf1f547d948be87
2015-10-07 06:20:20 -06:00
Maciej Skrzypkowski c939d50d97 servo: Merge #7902 - Removed unneeded pub annotations in HTMLInputElement #7897 (from mskrzypkows:HTMLInputElement_pub_refactor); r=nox
get_size method appeared to be never used so I removed it.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9a12c2c06199bc0a11982949b0cb43ee8500c001
2015-10-07 05:35:14 -06:00
Ms2ger 7aa06b4cee servo: Merge #7901 - Cleanup the HTMLOptionElement#text implementation (from Ms2ger:option-text); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 84d8f65d229e748bcd0c75e998adb8432575044a
2015-10-07 04:51:14 -06:00
Michael Howell 37bfbc973f servo: Merge #7883 - Draw shadows after the background (from notriddle:master); r=pcwalton
Fixes #7872

Source-Repo: https://github.com/servo/servo
Source-Revision: 409fbafe9cdd16a2b5a25f64eae0bc11d6fc9aa1
2015-10-06 22:03:48 -06:00
Martin Robinson 5c7ac8e940 servo: Merge #7879 - Improve layer tree debugging output (from mrobinson:layer-tree-dump); r=glennw
Add an option to dump the layer tree, which activates the previously
unused layer tree debugging code. Also improve the output using the
PrintTree struct.

Previous output:
```
Layer tree:
Layer 7f63b45b2010: RefCell { value: CompositorData { pipeline_id: PipelineId(0), id: 0-FragmentBody, wants_scroll_events: WantsScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(4), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: None } } @ Rect(Length(800, PhantomData)×Length(600, PhantomData) at (Length(0, PhantomData),Length(0, PhantomData))) masks to bounds: true establishes 3D context: true
  Layer 7f63b45b2290: RefCell { value: CompositorData { pipeline_id: PipelineId(0), id: 140065919922672-FragmentBody, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(5), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: None } } @ Rect(Length(800, PhantomData)×Length(650, PhantomData) at (Length(0, PhantomData),Length(0, PhantomData))) masks to bounds: false establishes 3D context: true
    Layer 7f63b45b3410: RefCell { value: CompositorData { pipeline_id: PipelineId(0), id: 140065919923248-FragmentBody, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: FixedPosition, requested_epoch: Epoch(5), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: None } } @ Rect(Length(50, PhantomData)×Length(50, PhantomData) at (Length(18, PhantomData),Length(10, PhantomData))) masks to bounds: false establishes 3D context: false
    Layer 7f63b45b3190: RefCell { value: CompositorData { pipeline_id: PipelineId(0), id: 140065919923872-FragmentBody, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: FixedPosition, requested_epoch: Epoch(5), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: None } } @ Rect(Length(50, PhantomData)×Length(50, PhantomData) at (Length(93, PhantomData),Length(10, PhantomData))) masks to bounds: false establishes 3D context: false
    Layer 7f63b45b2f10: RefCell { value: CompositorData { pipeline_id: PipelineId(0), id: 140065919924496-FragmentBody, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(5), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: Some((PipelineId(0), SubpageId(0))) } } @ Rect(Length(50, PhantomData)×Length(50, PhantomData) at (Length(168, PhantomData),Length(10, PhantomData))) masks to bounds: false establishes 3D context: false
      Layer 7f63b45b3b90: RefCell { value: CompositorData { pipeline_id: PipelineId(1), id: 0-FragmentBody, wants_scroll_events: WantsScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(3), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: Some((PipelineId(0), SubpageId(0))) } } @ Rect(Length(50, PhantomData)×Length(50, PhantomData) at (Length(0, PhantomData),Length(0, PhantomData))) masks to bounds: true establishes 3D context: true
        Layer 7f63b45b3e10: RefCell { value: CompositorData { pipeline_id: PipelineId(1), id: 140065901048256-FragmentBody, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(4), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: None } } @ Rect(Length(50, PhantomData)×Length(58, PhantomData) at (Length(0, PhantomData),Length(0, PhantomData))) masks to bounds: false establishes 3D context: true
    Layer 7f63b45b2c90: RefCell { value: CompositorData { pipeline_id: PipelineId(0), id: 140065919925168-FragmentBody, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(5), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: Some((PipelineId(0), SubpageId(1))) } } @ Rect(Length(50, PhantomData)×Length(50, PhantomData) at (Length(243, PhantomData),Length(10, PhantomData))) masks to bounds: false establishes 3D context: false
      Layer 7f63b45b2790: RefCell { value: CompositorData { pipeline_id: PipelineId(2), id: 0-FragmentBody, wants_scroll_events: WantsScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(3), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: Some((PipelineId(0), SubpageId(1))) } } @ Rect(Length(50, PhantomData)×Length(50, PhantomData) at (Length(0, PhantomData),Length(0, PhantomData))) masks to bounds: true establishes 3D context: true
        Layer 7f63b45b2510: RefCell { value: CompositorData { pipeline_id: PipelineId(2), id: 140065880076736-FragmentBody, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(5), painted_epoch: Epoch(4), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: None } } @ Rect(Length(50, PhantomData)×Length(58, PhantomData) at (Length(0, PhantomData),Length(0, PhantomData))) masks to bounds: false establishes 3D context: true
    Layer 7f63b45b3910: RefCell { value: CompositorData { pipeline_id: PipelineId(0), id: 140065919925168-FragmentBody-companion, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(5), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: None } } @ Rect(Length(800, PhantomData)×Length(650, PhantomData) at (Length(0, PhantomData),Length(0, PhantomData))) masks to bounds: false establishes 3D context: false
    Layer 7f63b45b2a10: RefCell { value: CompositorData { pipeline_id: PipelineId(0), id: 140065919924064-FragmentBody, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(5), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: None } } @ Rect(Length(50, PhantomData)×Length(50, PhantomData) at (Length(103, PhantomData),Length(30, PhantomData))) masks to bounds: false establishes 3D context: false
    Layer 7f63b45b3690: RefCell { value: CompositorData { pipeline_id: PipelineId(0), id: 140065919924064-FragmentBody-companion, wants_scroll_events: DoesntWantScrollEvents, scroll_policy: Scrollable, requested_epoch: Epoch(5), painted_epoch: Epoch(0), scroll_offset: (Length(0, PhantomData),Length(0, PhantomData)), subpage_info: None } } @ Rect(Length(800, PhantomData)×Length(650, PhantomData) at (Length(0, PhantomData),Length(0, PhantomData))) masks to bounds: false establishes 3D context: false
```

New output:
```
┌ Layer tree
│  ├─ Root Layer (pipeline=0) (0-FragmentBody) (800,600 at 0,0) (masks children) (3D context)
│  │  ├─ Layer (140279059771888-FragmentBody) (800,650 at 0,0) (3D context)
│  │  │  ├─ Layer (140279059772464-FragmentBody) (50,50 at 18,10) (fixed)
│  │  │  ├─ Layer (140279059773088-FragmentBody) (50,50 at 93,10) (fixed)
│  │  │  ├─ Layer (140279059773712-FragmentBody) (50,50 at 168,10)
│  │  │  │  ├─ Root Layer (pipeline=1) (0-FragmentBody) (50,50 at 0,0) (masks children) (3D context)
│  │  │  │  │  └─ Layer (140278833279472-FragmentBody) (50,58 at 0,0) (3D context)
│  │  │  ├─ Layer (140279059774384-FragmentBody) (50,50 at 243,10)
│  │  │  │  ├─ Root Layer (pipeline=2) (0-FragmentBody) (50,50 at 0,0) (masks children) (3D context)
│  │  │  │  │  └─ Layer (140279013634496-FragmentBody) (50,58 at 0,0) (3D context)
│  │  │  ├─ Layer (140279059774384-FragmentBody-companion) (800,650 at 0,0)
│  │  │  ├─ Layer (140279059773280-FragmentBody) (50,50 at 103,30)
│  │  │  └─ Layer (140279059773280-FragmentBody-companion) (800,650 at 0,0)
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 507beda4c71bd6769c912eff14bb479be3dec005
2015-10-06 17:20:50 -06:00
Patrick Walton 791f7a5b16 servo: Merge #7896 - layout: Add a field in the display list for simple border radii on box shadows (from pcwalton:box-shadow-border-radii); r=mbrubeck
Only supported in WebRender (with my upcoming PR) for now.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 5eb1c04e7854d932c0d63f9e5ed4d54ee43deb9b
2015-10-06 15:46:56 -06:00
vectorijk 35670c2eb3 servo: Merge #7889 - Fix #7855 Implement port blocking For WebSocket connection algorithm (from vectorijk:port-blocking-7855); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e4b02cc981ed095c2cf3816d26ad32353357e64e
2015-10-06 14:07:08 -06:00
Ms2ger 68146bd034 servo: Merge #7893 - Cleanup handle_take_screenshot (from Ms2ger:img-webdriver); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e64ed839b68504a659378637ff34ca118e6dc3a8
2015-10-06 12:41:05 -06:00
Manish Goregaokar 484e56a8a6 servo: Merge #7884 - Update openssl and re-enable the resource task tests (from Manishearth:fx-openssl); r=Ms2ger
https://github.com/sfackler/rust-openssl/issues/281 landed

r? @larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: 5730a8bdd137006bbbf8f33bcc3b8828c70d3a73
2015-10-06 10:43:41 -06:00
Ms2ger 8c45f9d5c5 servo: Merge #7827 - Check for font_variant equality in LayoutFontGroupCacheKey::eq (from Ms2ger:jumpy-variant); r=pcwalton
This fixes an issue whereby normal text would intermittently be rendered as
small-caps and vice versa.

Source-Repo: https://github.com/servo/servo
Source-Revision: c0b397db77b87f02d1742efd71f526ba6e89197b
2015-10-06 10:03:24 -06:00
Anthony Urena 1481b17cee servo: Merge #7882 - Refactor Error enum usage to consistently be qualified (from anthgur:consistent-enum-use); r=Ms2ger
Closes #7869

Source-Repo: https://github.com/servo/servo
Source-Revision: f5cd90805ec67fb52f73ec4cef9cef881a67522d
2015-10-06 04:58:17 -06:00
Ms2ger 184530c297 servo: Merge #7874 - Define the parsed attribute getters for HTMLTableCellElement on LayoutJS (from Ms2ger:layoutjs-tdth); r=jdm
This documents their intended usage and prevents script callers from using
them.

Source-Repo: https://github.com/servo/servo
Source-Revision: 50db64a20ec8a5dac6e98c4ab654ab0ceb5f8e82
2015-10-06 01:57:05 -06:00
Glenn Watson 5130b51a6c servo: Merge #7807 - Make it possible for iframes to create their own pipeline ID (from glennw:pid); r=jdm
This doesn't change any functionality, but it's the first step towards removing SubpageId.

Adding this change now will allow us to gradually change over code referencing subpage id rather than in one massive PR.

Introduces a namespace for pipeline ID generation - there is a namespace for the constellation thread, and one per script thread.

Source-Repo: https://github.com/servo/servo
Source-Revision: 098bdb5f22500a6e856b085a1140090f63ef8645
2015-10-06 01:08:32 -06:00
Martin Robinson 7845aaf33f servo: Merge #7822 - Rework how StackingContexts are dynamically added to layers (from mrobinson:layer-info); r=pcwalton
StackingContexts are added to layers when it is necessary to maintain
their ordering on top of other layered StackingContexts. Instead of
tracking the information about a layer scattered around into different
structs, combine it all into LayerInfo. LayerInfo will be used in the
future to hold layer information for DisplayItems that are layerized
independently of StackingContexts.

Source-Repo: https://github.com/servo/servo
Source-Revision: 27d468b6674b81c396aa0a13d8fe9eb410c12d6e
2015-10-05 23:05:21 -06:00
Roman Klauke 78f3bda91c servo: Merge #7880 - remove data field from websockets (from romankl:websockets-data-field); r=jdm
The data field is currently not used (no reads/ writes). This commit
removes this temp. field.

Ref.-Issue: #7859

Source-Repo: https://github.com/servo/servo
Source-Revision: 94816bb3b42e50127db56e64086843b14614ca88
2015-10-05 13:26:30 -06:00
Michael Howell 9ee62de46d servo: Merge #7834 - Create a pseudo-stacking context for positioned floats (from notriddle:float-stacking); r=pcwalton
Fixes #7828

That was surprisingly easy...

Source-Repo: https://github.com/servo/servo
Source-Revision: 297184c6e06631a753432d9709845ec8e99b59fd
2015-10-05 12:30:10 -06:00
Lars Bergstrom 8f1cc7b90f servo: Merge #7837 - Rust upgrade to nightly 20151002 (from larsbergstrom:rustup_20151002); r=Manishearth
r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 375382a2e813ee28405f6cec439330e238c4d2e5
2015-10-05 10:23:44 -06:00
Ms2ger 756d938c9f servo: Merge #7866 - Update caseless (from Ms2ger:caseless); r=nox
This picks up a fix for a warning that will become an error in the future.

Source-Repo: https://github.com/servo/servo
Source-Revision: c775068be477a2ee58ac61b5e405f0b9089c5f74
2015-10-05 09:35:44 -06:00
Ms2ger 5fe9597452 servo: Merge #7867 - Move some methods from RawLayoutElementHelpers to LayoutElementHelpers (from Ms2ger:layoutjs); r=nox
This is part of a long-term plan to ensure layout never has access to
unwrapped pointers to DOM objects. The remaining methods on the
RawLayoutElementHelpers trait are harder to move, because of the lifetimes in
their signatures.

Source-Repo: https://github.com/servo/servo
Source-Revision: a350b215cc3e943985a66f1485c7eac7f4b9832e
2015-10-05 08:19:21 -06:00
Anthony Ramine c2667cecbc servo: Merge #7735 - Don't generate useless InheritTypes interfaces (from nox:rm-useless-casts); r=Ms2ger
Interfaces with no descendant need neither a Base trait nor upcast functions, and interfaces with no ancestors neither a Derived trait nor downcast functions.

Source-Repo: https://github.com/servo/servo
Source-Revision: 243647d15a48b2b7008657d321dead9912347d03
2015-10-05 06:09:56 -06:00
Matt Brubeck 90a8e44bac servo: Merge #7817 - Remove unused PostorderDomTraversal::should_prune (from mbrubeck:prune); r=nox
r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: e616f4a74c0475cc0f8b33f46b724eb0e6b41b5a
2015-10-05 05:23:20 -06:00
Corey Farwell 46012933bf servo: Merge #7683 - Implement `size` attribute for <font> element (from frewsxcv:html-font-element-size-attr); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 7debfd1f4c30a018f46caa1e6bffa165e1ef7515
2015-10-05 02:33:02 -06:00
Josh Matthews 19cffaa15a servo: Merge #7847 - Style <select multiple> appropriately (from jdm:selectstyling); r=Manishearth
<img width="216" alt="screen shot 2015-10-04 at 2 33 36 pm" src="https://cloud.githubusercontent.com/assets/27658/10269411/ec1b5bce-6aa4-11e5-8ce8-0f22425ea3d4.png">

Source-Repo: https://github.com/servo/servo
Source-Revision: 460f067b9da42cf7663f22428547b81f43ea60c1
2015-10-04 12:49:26 -06:00
Corey Farwell 1b6a5c0fb8 servo: Merge #7750 - HTMLTableSectionElement improvements (from frewsxcv:html-table-section-element-rows); r=nox
'thead' and 'tfoot' now create instances of HTMLTableSectionElement

HTMLTableSectionElement.rows has been implemented

Source-Repo: https://github.com/servo/servo
Source-Revision: 9eb0effaf674da0f24eb5e0ae8e290c9648598de
2015-10-04 11:57:10 -06:00
Mathieu Rheaume dca8c1e942 servo: Merge #7693 - Implement Storage::SupportedPropertyNames (from ddrmanxbxfr:StorageSupportedAttributes); r=jdm
Hi guys,

This is a rough draft for issue #7670 .

It includes :
   - SupportedPropertyNames implementation
   - WPT with Object.supportedpropertynames with Local Storage and Session Storage.

The following link help me understood the issue :
http://www.w3.org/TR/webstorage/#the-storage-interface
https://html.spec.whatwg.org/multipage/infrastructure.html#supported-property-names

Thanks for looking into it.

Source-Repo: https://github.com/servo/servo
Source-Revision: 02da3a1e34b14a895e2f05d25d40edea171aff99
2015-10-04 11:12:37 -06:00
minimus 6cbdf9ce34 servo: Merge #7836 - interpret empty data URI as plain text (from 6112:master); r=mbrubeck
Fixes #7803. As @eefriedman pointed out, RFC 2397 says:

> If &lt;mediatype&gt; is omitted, it defaults to text/plain;charset=US-ASCII.  As a shorthand, "text/plain" can be omitted but the charset parameter supplied.

Source-Repo: https://github.com/servo/servo
Source-Revision: f30f40b12d2910f52e2274659e3762d9cd991649
2015-10-03 12:23:57 -06:00
Matt Brubeck 6563c5cbc2 servo: Merge #7838 - Upgrade to latest mach from mozilla-central (from mbrubeck:mach-up); r=mbrubeck
r? @jgraham

Source-Repo: https://github.com/servo/servo
Source-Revision: e40dd3843f9abb9a8a0908159edfa0c69b90b1ab
2015-10-02 17:01:04 -06:00
Zetok Zalbavar 302e4a055d servo: Merge #7819 - Add Gentoo to README.md (from zetok:readme); r=jdm
I didn't include some dependencies that come "by default" (e.g. bzip2).
Not sure whether there might be some additional deps that I have on my system, but aren't listed.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8f4f172ef66a9804ed26f9361e3c90b2c9c28970
2015-10-02 15:56:31 -06:00
Keith Yeung 4b48d7845e servo: Merge #7777 - Add support for caseless group name matching in HTML input elements (from KiChjang:caseless-group-name-match); r=jdm
Fixes #7749

Source-Repo: https://github.com/servo/servo
Source-Revision: e9842b7db2243ea72d9607c18753025e946788bd
2015-10-02 13:26:05 -06:00
David Zbarsky 9a218a0467 servo: Merge #7823 - Implement HTMLTableRowElement::Cells (from frewsxcv:htmltablerowelement-cells); r=Ms2ger
Extracted from #6936

Source-Repo: https://github.com/servo/servo
Source-Revision: 8865410ffc7998b1c74b5acda24507a07289fd1a
2015-10-02 02:54:55 -06:00
Matt Brubeck 5eef9ab963 servo: Merge #7821 - Incremental layout: Don't try to repair text fragment styles (from mbrubeck:class-damage); r=pcwalton
Fixes #7814. r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: 69db83476d02d06658ad084a834abc94f7f008d0
2015-10-02 02:27:31 -06:00
Martin Robinson 5cbcd47d72 servo: Merge #7824 - Make Linux build notifications transient (from mrobinson:transient-notifications); r=glennw
Continuous non-transient notifications, common in workflows involving
many syntax errors, can completely take over the message tray. Making
Linux build notifications transient prevents them from stacking up in
Gnome Shell without having to click them individually.

Source-Repo: https://github.com/servo/servo
Source-Revision: 03f6415eb49656fd1ce8b4de8c8b083e97a4f9d7
2015-10-02 01:51:39 -06:00
Simon Sapin 69153ee9a8 servo: Merge #7813 - Run all unit tests with just one Cargo command (from servo:parallel-unit-tests); r=mbrubeck
Upgrade Cargo to get https://github.com/rust-lang/cargo/pull/1828, and use it for unit tests. This allows Cargo to get some more parallelism when compiling the test crates’ dependencies.

`touch components/util/lib.rs && mach test-unit` on my machine goes from 149 seconds to 124.

Source-Repo: https://github.com/servo/servo
Source-Revision: ba2714f4f607da77bd7200f88cfa16c1d10da9cd
2015-10-01 12:39:10 -06:00
Matt Brubeck b77ed41e82 servo: Merge #7815 - Fixes for reftest command-line handling (from mbrubeck:test-ref-include); r=SimonSapin
r? @SimonSapin

* Allow reftest harness to take 0 or more testname arguments.
* Change `mach test-ref` parameter from `--name` to `--include`. This is consistent with other test suites, and also fixes a bug in `mach test` caused by a conflicting keyword parameter in `Registrar.dispatch`.
* Allow `mach test-ref` to take any number of `include` arguments.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9488013b59e54f9a39cc89362ee6b84f89cc8ed0
2015-10-01 11:29:27 -06:00
Paul Rouget ed09d5da65 servo: Merge #7812 - enable vsync on osx (from paulrouget:vsyncOsx); r=glennw
fixes https://github.com/servo/servo/issues/7783

Source-Repo: https://github.com/servo/servo
Source-Revision: fd66620602474e2070dc6fd6429e64cc6145b01c
2015-10-01 02:08:34 -06:00
Patrick Walton 82da2292ff servo: Merge #7802 - Handle zero-sized source surfaces properly, and upgrade `ipc-channel` to incorporate the fix for zero-sized shmem on Mac (from pcwalton:zero-size-source-surfaces); r=mbrubeck
Depends on servo/rust-azure#201 and pcwalton/ipc-channel#10.

Closes #7422.

r? @mbrubeck (don't r+ until the upstream dependencies have landed)

cc @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: e2048d57c4c0602c5a6b82db8cb76e6c3e5467fa
2015-10-01 00:08:34 -06:00
James Gilbertson 1cfb1baefb servo: Merge #6185 - Implement <meta name=viewport> handling (from luniv:viewport-meta); r=mbrubeck
Translate <meta name=viewport> as according to [CSS Device Adaption § 9](http://dev.w3.org/csswg/css-device-adapt/#viewport-meta)

Note: as the PR currently stands, handling `<meta name=viewport>` elements always occurs. This is probably not desired for some contexts (e.g. desktop), but I'm unsure of how to conditionally handle elements based on that.

Source-Repo: https://github.com/servo/servo
Source-Revision: a7743052cad0387733c90940fa91733ede32772c
2015-09-30 22:49:41 -06:00
Glenn Watson ad94e13b24 servo: Merge #7811 - Update servo to use published app units crate (from glennw:use-crates-au); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 0860be4c28ebaee36a0df4de3510d917b0e08cb7
2015-09-30 22:21:36 -06:00
Glenn Watson e380e3693c servo: Merge #7810 - Prepare app_units crate for publishing (from glennw:publish-au); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 99880bf9570d8a42692a44abefb3767e9bbbf223
2015-09-30 21:53:42 -06:00
Matt Brubeck cb9647d82e servo: Merge #7808 - Start the constellation with the correct pixel ratio (from mbrubeck:headless-dpr); r=mrobinson
This may mitigate race conditions like #7730. r? @mrobinson

Source-Repo: https://github.com/servo/servo
Source-Revision: 9b37de965c9e7b2b906685e2f0ee915f1c901fb5
2015-09-30 20:58:10 -06:00
Nicolas 7124588039 servo: Merge #7809 - Make `./mach test` work with unit tests (from 6112:master); r=frewsxcv
Fixes #7618.

Allows running a specific Rust test with one of:

```
./mach test tests/unit/net/http_loader.rs

./mach test-unit tests/unit/net/http_loader.rs
./mach test-unit tests/unit/net/http_loader
./mach test-unit net/http_loader
```

Allows running a whole package's tests with one of:

```
./mach test tests/unit/net

./mach test-unit tests/unit/net
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 5d04f8dc8e59fea8ef49beb89af26089421ef748
2015-09-30 20:30:26 -06:00
Corey Farwell d70fcd88f5 servo: Merge #7806 - Make util::str::str_join consistent with SliceConcatExt::join (from frewsxcv:consistent-str-join); r=mbrubeck
Prior to this commit, `str_join` would skip empty items at the start of
the `Iterator` until it found a non-empty item. This contradicts
`SliceConcatExt::join` which doesn't skip anything.

Brought up in:

https://github.com/servo/servo/pull/7776#issuecomment-144317281

Source-Repo: https://github.com/servo/servo
Source-Revision: 520c907742afbb94085c6b5e62156a5457530010
2015-09-30 19:34:44 -06:00
Philipp Hartwig 96d1fb1610 servo: Merge #7801 - Refactor FormControl trait (from aopicier:refactor_formcontrol); r=Manishearth
The trait is now implemented for HTMLFooElement instead of
&HTMLFooElement and does no longer require an impl body.

Suggested by @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 94e85a5226fe5b18bde40a2d5f6727b717bd148f
2015-09-30 19:06:18 -06:00
Martin Robinson 9ebb706414 servo: Merge #7804 - Simplify stacking context creation (from mrobinson:cleanup-stacking-context-creation); r=pcwalton
Have Fragment::create_stacking_context understand which stacking
contexts need layers and which do not. This simplifies the way it is
called and eliminates a bunch of code.

Source-Repo: https://github.com/servo/servo
Source-Revision: bb7742eecf00dd4cb5bfcbafcae36d928a5b8b89
2015-09-30 18:11:29 -06:00
Matt Brubeck 784ada3fce servo: Merge #7799 - Misc. code cleanup in gfx::text::glyph (from mbrubeck:glyph-cleanup); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: ac448cacbaa194ba7a41abffeac83e95217d5d81
2015-09-30 17:44:02 -06:00
Matt Brubeck c168e582ca servo: Merge #7805 - Use same default window size in headless and non-headless compositor (from mbrubeck:headless-dpr); r=mrobinson
Attempts to fix #7730. r? @mrobinson

Source-Repo: https://github.com/servo/servo
Source-Revision: 7be4fdb57745a3cc42da6650b8b7b234bf8c93b6
2015-09-30 17:08:18 -06:00
Glenn Watson 40d2827806 servo: Merge #7795 - Split Au type into separate crate, with minimal dependencies (from glennw:app-units-crate); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 35888e5a1d48511ec54ddf8c58f1c7b0c47c5d3c
2015-09-30 15:19:33 -06:00
Matt Brubeck 7c86fa25db servo: Merge #7794 - Dirty text nodes when their content changes (from mbrubeck:setdata); r=pcwalton
Fixes #7793. r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: fb6d0946cb3bac713bc20794f17a40fa7a12bc00
2015-09-30 11:49:52 -06:00
Matt Brubeck e56720dd4c servo: Merge #7800 - Remove unused import in net_traits (from mbrubeck:unused); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 3e377bb24e53fde8f7a786cb73caf3aefdcd3699
2015-09-30 11:03:01 -06:00
Ms2ger 7c0e147d1d servo: Merge #7798 - Remove dead code from net_traits (from Ms2ger:dead); r=jdm
It was added in commit ecf02a3656d60d4197e7cfc53beaedbc5e1019c0.

Source-Repo: https://github.com/servo/servo
Source-Revision: 61be58a87ff78be6278173d65e8933413041bd00
2015-09-30 08:14:05 -06:00
Martin Robinson 4e10279230 servo: Merge #7751 - Make DisplayList hit testing a method on DisplayList (from mrobinson:refactor-hit-testing); r=pcwalton
This will allow us to hit test into DisplayLists that are not directly
contained in StackingContexts, but instead are children of PaintLayers.
It also makes things slightly simpler.

Source-Repo: https://github.com/servo/servo
Source-Revision: b1d9f438b79743e03cb5b81a0e36f336943e940e
2015-09-30 03:04:16 -06:00
Corey Farwell 2f8b68120b servo: Merge #7790 - Expand list of Python executable names to search in PATH (from frewsxcv:expand-python-executable-names); r=mbrubeck
Fixes #7784

Source-Repo: https://github.com/servo/servo
Source-Revision: 4e749eb714e6a3bf9c297d2a7692662e0bf6c9bb
2015-09-29 20:26:14 -06:00
Nicolas accefa4a75 servo: Merge #7789 - allow `./mach test` to run tests in tests/wpt/mozilla/ (from 6112:master); r=mbrubeck
Allows running WPT tests in the tests/wpt/mozilla/ directory by using commands such as:

```
./mach test tests/wpt/mozilla/tests/mozilla/union.html
```

Fixes #7772.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9a4eb565c4a423ed1278a5e28ad06775695861da
2015-09-29 19:58:28 -06:00
Patrick Walton 0f5d421cf7 servo: Merge #7423 - layout: Make the compositor rather than layout determine the position of each iframe (from pcwalton:iframe-stacking-context-position); r=glennw
The old code that attempted to do this during layout wasn't able to work
for multiple reasons: it couldn't know where the iframe was going to be
on the page (because of nested iframes), and at the time it was building
the display list for a fragment it couldn't know where that fragment was
going to be in page coordinates.

This patch rewrites that code so that only the size of an iframe is
determined during layout, and the position is determined by the
compositor. Layout layerizes iframes and marks the iframe layers with
the appropriate subpage ID so that the compositor can place them
correctly.

Closes #7377.

Source-Repo: https://github.com/servo/servo
Source-Revision: a0cb657fe80859dd8862361631268479d1045432
2015-09-29 19:26:49 -06:00
Jaydeep 6df0607429 servo: Merge #7759 - Add a tool for comparing Dromaeo outputs (from jdramani:cmp_dromaeo_output_tool); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 2049357d1453a43bb8ee31a4ba70d2610b93ff20
2015-09-29 18:58:28 -06:00
Corey Farwell 3dbd001c70 servo: Merge #7776 - Avoid allocations when joining strings (from frewsxcv:str-join); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 4823ec947ef43fd685b69d42ff11c8b0aba72d69
2015-09-29 16:59:14 -06:00
Matt Brubeck c0299bc195 servo: Merge #7786 - Use Harfbuzz 1.0 and unicode-script for text shaping (from mbrubeck:harfbuzz-sys); r=pcwalton
Depends on servo/rust-harfbuzz#53 and introduces a dependency on the new servo/unicode-script crate.  r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: a144d086d911375f8d5674ac90ff55a9dcaf0cda
2015-09-29 15:37:11 -06:00
Jacob Parker df1c899822 servo: Merge #7764 - Only display text carets in text inputs (from j3parker:input-caret-only-for-text); r=pcwalton
For #7756

Source-Repo: https://github.com/servo/servo
Source-Revision: 0c64e4a2c98cbf5e7b95dbea31c2e6993b70472c
2015-09-29 14:13:32 -06:00
Paul Rouget 7dc81d1480 servo: Merge #7778 - Add a command line option to disable native titlebar (from paulrouget:decorationLessOption); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d92e781a87b5a998f06580fa959c3ccb5cf14dcf
2015-09-29 13:45:57 -06:00
Paul Rouget e71647c7c2 servo: Merge #7582 - implement navigator.platform (from paulrouget:navigator.platform); r=jdm
Fix #7573

I used this as a reference: http://stackoverflow.com/questions/19877924/what-is-the-list-of-possible-values-for-navigator-platform-as-of-today

Source-Repo: https://github.com/servo/servo
Source-Revision: c356593fd316d989060ccab6df4f2bc757cd55e2
2015-09-29 11:42:45 -06:00
Corey Farwell 803162b7a6 servo: Merge #7775 - Link to 'ask for a reset' tracking issue (from frewsxcv:tracking-issue); r=jdm
FIXME added in  https://github.com/servo/servo/pull/7745

Source-Repo: https://github.com/servo/servo
Source-Revision: ed0d70e2347648f7a0e7166fed8fb42b99b99fbc
2015-09-28 21:34:19 -06:00
Matt Brubeck 96964b7093 servo: Merge #7771 - Use the correct container size in compute_overflow (from mbrubeck:rtl-stacking-context); r=pcwalton
Fixes #7768 - positioning of RTL stacking contexts. r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: e68bd8d4ffc7f2cd9511999760c7a67418a853e1
2015-09-28 18:57:08 -06:00
Corey Farwell 64fbdb7d1c servo: Merge #7745 - Implement <option> 'defaultSelected' and 'selected' attributes (from frewsxcv:html-option-element-selected); r=nox
Continued from #7743

Source-Repo: https://github.com/servo/servo
Source-Revision: 8547d132f9a6f5499c437572ea5648c6baf2f621
2015-09-28 15:46:48 -06:00
Keith Yeung 25b8b342bc servo: Merge #7275 - Initial fetch refactor (from KiChjang:fetch-refactor); r=jdm
Partial #4576
I am really unsure of how things would look like, so would really appreciate some feedback on this.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0fc9410f10c1122a05cd36bdf8b7faff12c39555
2015-09-28 13:59:08 -06:00
Philipp Hartwig 2bfabff31c servo: Merge #7760 - Add form getters for additional elements; update test expectations (from aopicier:form_getter); r=Manishearth
This adds form getters for fieldset, label, object, output, select and
textarea elements.

Source-Repo: https://github.com/servo/servo
Source-Revision: a72d7a4f5222d029a34b2b4a7da21ebe095fde53
2015-09-28 13:23:18 -06:00
Matt Brubeck 3bd02a6984 servo: Merge #7769 - Fix build notifications in Python 2.x on Linux (from mbrubeck:notify-linux2); r=frewsxcv
In Python 2.x on Linux, `sys.platform == 'linux2'`.

https://docs.python.org/2/library/sys.html#sys.platform

r? @frewsxcv

Source-Repo: https://github.com/servo/servo
Source-Revision: 076f44a02d033bb5d0bb2e18065acdf18d98cce5
2015-09-28 12:47:29 -06:00
Patrick Walton da504ba30c servo: Merge #7596 - layout: Load Web fonts asynchronously (from pcwalton:async-web-font-loading); r=mbrubeck
Improves page load times significantly.

Closes #7343.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7933b484300131d3de79edbcf399288b22010616
2015-09-28 12:11:50 -06:00
Glenn Watson 5f3d6b85ab servo: Merge #7766 - A few clean ups for Au type (from glennw:au-tidy); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: 007c22737df0f002203ca4e42b56afff7d4e1661
2015-09-28 11:35:04 -06:00
Patrick Walton 5f957acf6c servo: Merge #7765 - script: Stop reallocating so much when converting DOM strings to JS values (from pcwalton:less-ambitious-low-hanging-dromaeo-fruit); r=jdm
This is split out from #6900.

`size_hint()` in `utf16_units()` seems busted, so we do it ourselves.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 7a3d2c8cb405f776117044986ab9fb93a6b7776e
2015-09-27 17:47:38 -06:00
Philipp Hartwig 210eb0770f servo: Merge #7711 - Use computed `display` property for hypothetical box of root element (from aopicier:root_layout); r=pcwalton
Closes #7558.

Source-Repo: https://github.com/servo/servo
Source-Revision: 45a0c48efdfc327f6f2d1a2a3b60d6590bb19984
2015-09-27 17:03:58 -06:00
Jaydeep 212fb34293 servo: Merge #7643 - Check for Extra pointer dereferencing (from jdramani:extra_ptr_dref); r=jdm
Solves issue #7640

Source-Repo: https://github.com/servo/servo
Source-Revision: 9523283c14f417014ca6d4fa8179c873bbb8f21f
2015-09-27 08:19:30 -06:00
Tamir Duberstein d81e0107b7 servo: Merge #7752 - mach: fix OS X notifications (from tamird:fix-osx-notifications); r=nox
Since mach now puts everything into a virtualenv, we need to set the bundle identifier to allow sending notifications.

Source-Repo: https://github.com/servo/servo
Source-Revision: a1fb8cfbb0be8d0a73bc1e3b63eb704f48098b8f
2015-09-27 07:35:50 -06:00
Jayflux d2c2d55b86 servo: Merge #7754 - changing test_union.html to union.html fixes #7744 (from Jayflux:#7744); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 599fd0094b1a5c43992092ae1ff20a2fa02db559
2015-09-27 06:25:42 -06:00
Anthony Ramine d80fcc3c14 servo: Merge #7733 - Properly consider radio button groups (from nox:checked); r=Manishearth
Radio button groups with missing or empty names are always the only element of their respective radio button group.

Source-Repo: https://github.com/servo/servo
Source-Revision: 37ce248f316ba3cb5a2cfb0b4bb95918c1c45828
2015-09-26 11:21:11 -06:00
Eli Friedman 2910439f5d servo: Merge #7746 - Delete dead code (from eefriedman:debug-dead-code); r=nox
(#[cfg(debug)] is false in every normal servo configuration, and the
code in question doesn't compile.)

Source-Repo: https://github.com/servo/servo
Source-Revision: d4f5948294545860a88d6a266acaa4cf9b9ea1c6
2015-09-26 10:45:51 -06:00
Corey Farwell 57231e3b9a servo: Merge #7747 - Imlement 'bgcolor' IDL attrs for table elements (from frewsxcv:bgcolor); r=Ms2ger
The content attributes and presentational hints were implemented in
the #4289 pull request. This just implements the relevant IDL
attributes.

Source-Repo: https://github.com/servo/servo
Source-Revision: 500d5098655032465bdca5c6167f681078df0fc3
2015-09-26 10:02:43 -06:00
Matt Brubeck 0839cfd14e servo: Merge #7742 - Update unicode-bidi to 0.2.2 (from mbrubeck:update-bidi); r=Manishearth
Fixes #7701 via servo/unicode-bidi#17.

Source-Repo: https://github.com/servo/servo
Source-Revision: d39c8546b6bf03c69b1cde925c72722dfd61e588
2015-09-25 14:23:50 -06:00
Ravi Shankar 2af24572c9 servo: Merge #7741 - fixed the deprecated `as_slice` warning (from Wafflespeanut:warning_fix); r=jdm
I've put its original implementation from [`core/option.rs`](http://doc.servo.org/src/core/option.rs.html#692) instead of the dear departed `as_slice`

Source-Repo: https://github.com/servo/servo
Source-Revision: b7c003f1584375ba37006fedd773141a3d32d99c
2015-09-25 13:47:37 -06:00
Prabhjyot Singh Sodhi a6dad05d64 servo: Merge #7497 - tests for devtools integration with network requests/responses (from psdh:devtest7473); r=jdm
Fixes #7473

Source-Repo: https://github.com/servo/servo
Source-Revision: 8027777e2409705b1d45cdd4c781e499fd5a7f0d
2015-09-25 11:35:57 -06:00
Emilio Cobos Álvarez c4b09b9cb7 servo: Merge #7682 - webgl: Support texImage2D with a canvas as an argument (from emilio:webgl-texture2d); r=jdm
This involved some refactoring of the 2d context code, which lead to some more test passed there.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0f8c1b460100f226df954a3924598434f3dda9b2
2015-09-25 10:52:52 -06:00
James Graham c18b23949d servo: Merge #7651 - Implement resettable and String-valued prefs (from jgraham:prefs_reset); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: e04c2c78ee43ad81f2794d908a13744b6b976443
2015-09-25 08:18:06 -06:00
Bryan Bell d2f7e5b8c7 servo: Merge #7685 - Replace twitter fail whale with redirect to archive.org version (from bjwbell:add-twitter-fail-whale-attribution); r=pcwalton
Sorry @pcwalton should have gotten the attribution approved first (https://twitter.com/subcide/status/645149674546966528)

r? @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: b26fac3f783f9f67089875a697cc2bf835babbfa
2015-09-24 20:40:49 -06:00
Patrick Walton 79d75f2737 servo: Merge #7736 - Less ambitious optimize set property (from pcwalton:less-ambitious-optimize-set-property); r=Ms2ger
Splitting the parts that have r+ out of #6823.

Source-Repo: https://github.com/servo/servo
Source-Revision: d7b875170956f3a26b46e49d3d5c990fa4acc974
2015-09-24 19:57:40 -06:00
Bryan Bell 4bde6430b3 servo: Merge #7703 - gfx: Fix border-radius panic when a corner has 0px and >0px borders (from bjwbell:bugfix-0px-and-non-0px-border-widths); r=pcwalton
When one border is 0px and the other is >0px then the border corner
drawing code panics when computing the values to use in drawing the
border corner arcs.

This fixes that bug and makes the `draw_corner` function more robust
by explicitly passing an enum, `BorderCorner`, naming which corner is
being drawn e.g. `BorderCorner::TL`.

Add a ref test,
`border_radius_zero_sizes_a.html/border_radius_zero_sizes_ref.html`.

Fixes https://github.com/servo/servo/issues/7700.

r? @pcwalton or @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 4d1be2f56cd7a37c4c803ba12733fca55b57d4de
2015-09-24 18:18:07 -06:00
Ms2ger fd768ef508 servo: Merge #7729 - Remove the now-stable append and result_expect feature gates from reftest (from Ms2ger:reftest-gates); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d811f2d1baac6dcb501f3588eb509086bd1b2a66
2015-09-24 12:33:46 -06:00
James Graham 9c0f257d81 servo: Merge #7675 - Prevent crash trying to freeze script task with no page (from jgraham:freeze_crash); r=metajack
This fixes a crash resulting from a race between loading an initial
document and navigating to a subsequent document. If the navigation
happens before the initial document has had a chance to create its
root page, we crash trying to unwrap a None. Note that the are likely
further similar timing issues with more complex sequences of navigation
and history manipulation.

Source-Repo: https://github.com/servo/servo
Source-Revision: 30ffd09eb3daf4b0bc55627c281016f8f246fd6f
2015-09-24 11:05:28 -06:00
Ms2ger 4ccbcec8e1 servo: Merge #7728 - Remove the now-stable box_raw feature gate from cef (from Ms2ger:box-raw); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 2d253cbf835df522595575fdd371e2068606271a
2015-09-24 10:37:40 -06:00
Manish Goregaokar e487982661 servo: Merge #7719 - Various fixes to make github less error-prone (from Manishearth:ghfix); r=Ms2ger
r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: 2623f58a4b2b302c354257632e3ff67d1dfa72d9
2015-09-24 03:55:29 -06:00
Glenn Watson 9f372bf1d6 servo: Merge #7724 - Ensure that animations expire correctly and stop compositing occurring after they finish (from glennw:expire-anims); r=pcwalton
There were two problems here:

(1) The animation state update function was only called when nodes were dirty or there were new animations.
(2) When all animations for a node expired, the entry from the hash table was not removed.

The result was that once an animation began, the compositor would be running as fast as it can forever.

Fixes #7721.

Source-Repo: https://github.com/servo/servo
Source-Revision: b4b3cedc10cec47d95880bfbe55f2dbc37cd910e
2015-09-23 18:46:29 -06:00
Martin Robinson 2addce6653 servo: Merge #7710 - A few small bits of refactoring to prepare for more advanced DisplayList layerization (from mrobinson:small-dl-refactor); r=pcwalton
This will be useful when PaintLayers that contain DisplayLists instead
of StackingContexts need to draw themselves. This is a simple
preparatory refactoring and doesn't change any behavior.

Source-Repo: https://github.com/servo/servo
Source-Revision: 09b970af4aeba749146a9a9215e346653016672b
2015-09-23 17:22:31 -06:00
Ravi Shankar 7d512d50d1 servo: Merge #7698 - sorted the declarations in various files (from Wafflespeanut:sorting); r=frewsxcv
This is a direct extract from my abandoned PR for a lint (#7546), along with some rather clumsy modifications (only on `components/script/dom/mod.rs` and `components/style/lib.rs`), because I had to sort some of the files again to make peace with tidy, which hasn't been educated about sorting yet!

Source-Repo: https://github.com/servo/servo
Source-Revision: a7208869f2903e36f9b2f540b55b50283d7df466
2015-09-23 15:02:56 -06:00
Ms2ger 5afeb71b23 servo: Merge #7717 - Update dependencies (from servo:depup); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: 705ad72aee58b4fc636bca3a2784c7643048336d
2015-09-23 10:57:55 -06:00
Ms2ger 0f8343ce37 servo: Merge #7716 - Fix a comparison that should be an assignment in host_triple() (from servo:host-triple-assign); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 83435d77650382d5901603170f028f5888ea82c1
2015-09-23 07:39:50 -06:00
Manish Goregaokar a0f53e1f0e servo: Merge #7697 - Rust upgrade to rustc 1.5.0-dev (6217b002b 2015-09-21) (from servo:rustup_20150921); r=Ms2ger
Snapshot doesn't exist yet. Rust master+ should work.

Also https://github.com/serde-rs/aster/pull/33 hasn't merged yet.

r? @Ms2ger @larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: f7f16870bebdc9359661544054259b37780f1331
2015-09-23 06:45:18 -06:00
Mathieu Rheaume 71039e1d1b servo: Merge #7692 - Raise max length error over 120 chars not at 120 chars. python/tidy.py (from ddrmanxbxfr:TidyMaxLineOver120); r=nox
This is a follow up of issue : Tidy has an off-by-one error #7686

It allows to raise the max length error when line is over than 120 not at 120 specifically.

Thanks for looking into it.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8f1469eb08a437bcc6cfb510334be2b6430b4a8f
2015-09-23 04:17:16 -06:00
Lars Bergstrom 8c59634c70 servo: Merge #7713 - Update Cargo.lock files with linker updates for cleaner static linking (from larsbergstrom:update_linker_locks); r=glennw
r? @metajack @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: eca448363de576cf0108ac4d37fbbe1aeb659598
2015-09-22 19:37:22 -06:00
Corey Farwell b53eb06d72 servo: Merge #7712 - Prefer element casting over mem::transmute (from frewsxcv:no-mem-transmute); r=saneyuki
None

Source-Repo: https://github.com/servo/servo
Source-Revision: b66dd621775f2277b2cd2424de8f4cb7d8efc9b6
2015-09-22 16:48:22 -06:00
Maciej Skrzypkowski 20c67c2367 servo: Merge #7707 - Add plugins for compositing and net crates #7699 (from mskrzypkows:compositing_net_plugins); r=jdm
Changed to_string calls to to_owned calls
where was a need.

Source-Repo: https://github.com/servo/servo
Source-Revision: d588ce8d8503bf0b340abfb13e2bd6a228cab900
2015-09-22 07:58:55 -06:00
Anthony Broad-Crawford 6c86215e3e servo: Merge #7678 - #7630 Adding better error messaging in mach bootstrap for missing virtualenv/pip dependencies (from AnthonyBroadCrawford:improved-error-messaging-mach-bootstrap); r=frewsxcv
This PR is in reference to #7630

I've added a simple try catch around our use of subprocess.check_all when trying to invoke and use python's

- virtualenv
- pip

Upon failure, I use sys.exit with an error message for the user.  Exit seemed appropriate as anything beneath those dependencies will fail to execute and result in a non friendly error message

Source-Repo: https://github.com/servo/servo
Source-Revision: 44de9173cc968957e4441c14f57014111a2b847e
2015-09-21 18:13:35 -06:00
Corey Farwell 9d1c1d282d servo: Merge #7702 - Remove unnecessary `allow(dead_code)` function attributes (from frewsxcv:no-dead-code); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 434e1fa07475000ed7bc0eeae6d0b0bb1339c4b8
2015-09-21 17:31:04 -06:00
Paul Rouget aebe4430e8 servo: Merge #7064 - Implement location.reload() (from paulrouget:reload); r=Ms2ger
This is a naive implementation of `window.location.reload()`.
I'd appreciate any feedback.

I was wondering if it'd be better to implement `ConstellationMsg::Reload` instead of using  `load_url`.

Also, what kind of test should I write?

Source-Repo: https://github.com/servo/servo
Source-Revision: 4dc986bca35f986e2f15f1591f120e1cef2810da
2015-09-21 09:03:42 -06:00
Corey Farwell 91eafe9f20 servo: Merge #7691 - Remove deprecated 'creator' WebIDL attribute (from frewsxcv:rm-creator-webidl-attribute); r=nox
According to @Ms2ger, the 'creator' attribute was merged into 'setter'

Source-Repo: https://github.com/servo/servo
Source-Revision: 291fa888326e743a1e59aa7c06d5288a0643cbb7
2015-09-21 05:45:30 -06:00
Corey Farwell 7eef01d9ec servo: Merge #7690 - Minor DOM codegen cleanup (from frewsxcv:codegen-cleanup); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: ec9aa9ace024470363ff227b97fb442a400fe496
2015-09-21 01:53:56 -06:00
Corey Farwell 43dad6ecf9 servo: Merge #7689 - Add/update spec links for SupportedPropertyNames methods (from frewsxcv:supported-property-names-links); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 566f1eb6f6886ab87c2c1813ec13a34074cced8e
2015-09-20 10:21:22 -06:00
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