Commit Graph

63 Commits

Author SHA1 Message Date
Patrick Walton
c36f083a85 servo: Merge #4524 - gfx: Implement font-stretch per CSS3-FONTS § 3.3 in the Core Text font backend (from pcwalton:font-stretch); r=glennw
r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 3736396c63ad3f84349132ea9c0bb0f5fc045f01
2015-01-28 13:57:58 -07:00
Josh Matthews
78741af324 servo: Merge #4719 - Update rustc to 00b112c45a604fa6f4b59af2a40c9deeadfdb7c6/rustc-1.0.0-dev (from servo:rustup_20150109); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 3f9012864a2cd927cf17a8e11dfa6922add1b7df
2015-01-27 18:15:50 -07:00
Glenn Watson
2d715b49a9 servo: Merge #4707 - Change glutin headless mode to be a build config, as it breaks some Linux distros linking to both (from glennw:split-headless); r=larsbergstrom
The majority of this change is simply re-arranging the code in the glutin port so that the windowed/headless code is configured at build time rather than runtime. There shouldn't be any functional difference as a result of this change.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1b496d80dec4f202e0f318ee60ac156ad74256ff
2015-01-22 14:48:48 -07:00
Glenn Watson
229b2a2c16 servo: Merge #4672 - Switch the default windowing system to glutin. See below for details (from glennw:make-glutin-default); r=larsbergstrom
This change makes glutin the default windowing system on mac/linux.

If you run into any issues with the glutin system, you can temporarily
build the GLFW system with the following command:

cd components/servo
../../mach cargo build --no-default-features --features=glfw

Once any glutin related issues have been sorted out, the GLFW
port will be removed.

Source-Repo: https://github.com/servo/servo
Source-Revision: ccf5f96fa91540ca73cfb24dd130d5124975fc6e
2015-01-19 16:30:47 -07:00
Tom Schuster
7f57a4451b servo: Merge #4594 - Implement most of the important WindowProxy traps (from evilpie:window-proxy); r=jdm
After this patch somebody just needs to implement the new IndexedGetter (and probably frames/length) on window to fix #4589.

Source-Repo: https://github.com/servo/servo
Source-Revision: a227faa41610cdc826da4ec8d25839c2ec3061db
2015-01-12 09:45:47 -07:00
Patrick Walton
3618f28049 servo: Merge #4523 - layout: Implement text-rendering per SVG 1.1 § 11.7.4 (from pcwalton:text-rendering); r=mbrubeck
Like Gecko, we treat `geometricprecision` the same as
`optimizelegibility` for now.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 1a021f66354d9b6c14f76178d803185e50ad87d3
2015-01-08 13:48:53 -07:00
Patrick Walton
349c217b6b servo: Merge #4530 - layout: Implement pointer-events: none per SVG 1.1 § 16.6 (from pcwalton:pointer-events); r=mbrubeck
SVG-only values are not yet supported.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: a88e668091842dc77169b235a03b5264e65ebdc6
2015-01-08 10:48:55 -07:00
Ms2ger
e5578c14fd servo: Merge #4554 - Update rustc to revision 2cfb5acb5a2751c759627377e602bac4f88f2d19 (from servo:rustup_20141221); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1d7148c79f9124779a910fd5291c5fa0543b2dae
2015-01-08 08:00:57 -07:00
Patrick Walton
707d7cd93e servo: Merge #4460 - layout: Paint stacking contexts' overflow areas properly (from pcwalton:stacking-context-overflow); r=glennw
This was making `box-shadow` not show up in many cases, in particular,
but the effects were not limited to that.

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 499d17f564d699e5e290e8a3859f64e7536827a7
2015-01-04 18:51:48 -07:00
Jim Hoskins
6d9c6fe290 servo: Merge #4539 - Implement Document.defaultView - fixes #4518 (from jimrhoskins:default-view); r=jdm
Fixes: https://github.com/servo/servo/issues/4518
Source-Repo: https://github.com/servo/servo
Source-Revision: dd84ae6bfb46872dfb0f0a8dca680452dadce3f0
2015-01-03 15:51:45 -07:00
Ms2ger
62056757ed servo: Merge #4535 - Stop using some obsolete features (from servo:pre-rustup_20141221); r=jdm
This prepares for the rust upgrade currently being conducted.

Source-Repo: https://github.com/servo/servo
Source-Revision: e8fac3681b690adb0796b2a807ac95bd9c13597a
2015-01-03 14:39:46 -07:00
Shing Lyu
7ddf0392f6 servo: Merge #4470 - Add "type" to Blob (from shinglyu:contentType); r=jdm
A follow-up for issue #1820, adds the optional "type" support.

Source-Repo: https://github.com/servo/servo
Source-Revision: 111a196e9d300164391d12ab292c1d4c0ef2b44a
2015-01-01 08:33:40 -07:00
Adam Sunderland
8d4f1a4c72 servo: Merge #4463 - Add GetPropertyPriority to CSSStyleDeclaration (from iterion:get-property-priority); r=jdm
Implementation of #4432 adding `getPropertyPriority` to CSSStyleDeclaration. This is my first attempt at a Servo PR so I'm sure I've done something wrong. Let me know, and I'll fix it up.

As stated in #4432 tests for this are in #4085. If there are additional tests I can write now I would love to do that, I'm just not sure where or what those would be.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7b7fe964d328362126a8a56ff463d48f3285391f
2014-12-23 11:06:49 -07:00
Josh Matthews
fa63e17acb servo: Merge #4342 - Implement basic HTMLElement.style support (from jdm:cssom); r=jdm,metajack
This does not implement any notion of CSSStyleDeclaration objects that do not have an owning element; there's no actual CSS object model in play here. This does support setting and getting properties of the style attribute for HTMLElement, and tries to implement the ambiguous CSS value serialization spec.

Source-Repo: https://github.com/servo/servo
Source-Revision: 824788649cd338c044d9396166af5b0f378d6685
2014-12-18 11:54:52 -07:00
Glenn Watson
b185394a0f servo: Merge #4405 - Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d (from servo:rustup_20141124); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: fbf42c951b2f53d91e2f32f8035484a07ea83493
2014-12-17 18:45:49 -07:00
Matthew Rasmus
4f922915fe servo: Merge #4133 - Implements basic form resetting (from mttr:form_resetting); r=jdm
We can reset `<input type=text>` fields! I wish I could've done something with checkboxes, but unfortunately, that's it for now.

In addition to that, this PR implements `HTMLInputAttribute.defaultValue`, updates wpt-test to expect passing tests as a result of that implementation, and fixes an index error crash with text inputs.

edit: also includes an html example where one may lazily watch form resets in action: ` tests/html/form_reset_handsfree.html`

Source-Repo: https://github.com/servo/servo
Source-Revision: 5951056973fc0e08e70224214740a274ca8ef20f
2014-12-16 15:03:49 -07:00
Patrick Walton
ee36da2b11 servo: Merge #3844 - script: Improve dirty propagation and fix script-layout synchronization (from pcwalton:script-layout-synchronization); r=jdm
This fixes race conditions whereby layout and script could be running
simultaneously.

r? @jdm
cc @cgaebel

Source-Repo: https://github.com/servo/servo
Source-Revision: 5f2684d2f81046abd7548fb22d996d1e506a104a
2014-12-15 15:31:21 -07:00
Jack Moffitt
20992ec5c2 servo: Merge #4300 - Update PowerMeasure.py post-cargoify (from servo:fix-power); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 25a251e6abf50fe818b9836505b09be8191a86fa
2014-12-12 15:06:55 -07:00
Joseph Crail
928a39ceb6 servo: Merge #4171 - Fix spelling mistakes in comments (from jbcrail:fix-spelling); r=jdm
I only updated comments, not strings.

Source-Repo: https://github.com/servo/servo
Source-Revision: f451005f4fe075c849de2f3766f5bf84510b8465
2014-12-12 02:12:51 -07:00
Shing Lyu
8ddb629206 servo: Merge #4108 - Blob (from shinglyu:blob); r=jdm
Let's build this incrementally. I implemented a `Blob` that can hold a `DOMString`, and has `size` attribute and `slice(...)` method. I'll finish the rest in later PRs.

Source-Repo: https://github.com/servo/servo
Source-Revision: d2a67abea9f6acd7b0ea29a852bf5029aef3f405
2014-12-09 08:43:08 -07:00
ProgramFOX
7c84eba939 servo: Merge #4265 - Corrected case of Document#characterSet (from ProgramFOX:issue-4251); r=Ms2ger
Resolves #4251

Source-Repo: https://github.com/servo/servo
Source-Revision: b805e74fef57e5bec167b2dc6403f9f5e7fc92e7
2014-12-06 07:31:01 -07:00
Manish Goregaokar
895099501f servo: Merge #4002 - Implement framework for element activation (fixes #3999) (from Manishearth:activation); r=jdm
Still need to impl `Activatable` on all activatable elements. I'll probably push those changes to this PR, however they can be made separately as well.

Source-Repo: https://github.com/servo/servo
Source-Revision: 19c69b1625dda46d3c5501292e7e2d0328e400b4
2014-12-06 03:55:04 -07:00
Matthew Rasmus
a343b1461d servo: Merge #4152 - Implements multi line text input for TextArea (from mttr:textview); r=jdm
Fixes #3918

Can be tested in `tests/html/textarea.html`. Also implemented some content reflecting IDL attributes for HTMLTextAreaElement while I was in there.

There are some major problems with TextInput when Multiple is enabled that I haven't addressed here, but I'm prepared to open up a follow-up issue.

Source-Repo: https://github.com/servo/servo
Source-Revision: a369dcfa01f5ad7634469f3a3b652d7f650129a0
2014-12-05 16:25:07 -07:00
Ronak Nisher
ff636e0eda servo: Merge #4230 - added ErrorEvent WebIDL and errorevent.rs (from jdm:errorreporter); r=jdm
Rebased from #3822.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0065c230dad0e591d9a448ff00ef977074485dd5
2014-12-05 02:28:09 -07:00
Simon Sapin
2d8a1f7245 servo: Merge #4140 - Move the root Cargo.toml to components/servo, and warn when Cargo is run directly (from SimonSapin:no-root-cargo-toml); r=SimonSapin
This fixes #3957, and allow #4115 not to regress #4099.

Source-Repo: https://github.com/servo/servo
Source-Revision: 873ca6cadddc1a40bead1f5dd0128bb16cfaa11b

--HG--
rename : servo/Cargo.lock => servo/components/servo/Cargo.lock
rename : servo/src/lib.rs => servo/components/servo/lib.rs
rename : servo/src/main.rs => servo/components/servo/main.rs
2014-12-02 19:27:51 -07:00
Matthew Rasmus
9a64aacad4 servo: Merge #4155 - Verify that reftest passes valid servo args (from mttr:reftest_unknown_servo_args); r=jdm
Fixes #4101

Source-Repo: https://github.com/servo/servo
Source-Revision: c68269097e8b6dfd363a74dcf6c5d7de1f675cd9
2014-12-02 17:51:50 -07:00
Hinali Marfatia
fafec6e841 servo: Merge #4096 - Adding a new webidl and websocket.rs file (from servo:websocket); r=Ms2ger
Closes #3813.

Source-Repo: https://github.com/servo/servo
Source-Revision: 62edb842c7d89f2349c4c030139cbf5a927d1eb1
2014-11-25 07:45:42 -07:00
Matthew Rasmus
62e6e16cbb servo: Merge #4053 - Allow reftests to be run directly w/ relative path (from mttr:reftests_with_relative_dir); r=SimonSapin
Fixes #3521

Source-Repo: https://github.com/servo/servo
Source-Revision: dfa9e1aa4ac2c10b338d17fbad78f93323f66242
2014-11-21 05:06:31 -07:00
Andrew Hobden
9088de48aa servo: Merge #3998 - Fix Table Caption infinite recursion (from Hoverbear:fix_table_caption); r=jdm
Fixed #3997.

Source-Repo: https://github.com/servo/servo
Source-Revision: 561fab57d6ac23758f0150e043be28adda12c772
2014-11-15 13:24:28 -07:00
Josh Matthews
6e29972f19 servo: Merge #3989 - Disable the iframe content test due to #3986 (from jdm:disableiframetest); r=mbrubeck
Source-Repo: https://github.com/servo/servo
Source-Revision: 483e84ca7b879a12764c529c3d389e28e7c46aaf

--HG--
rename : servo/tests/content/test_iframe_contentDocument.html => servo/tests/content/test_iframe_contentDocument.html.disabled
2014-11-15 10:03:33 -07:00
Tomasz Kołodziejski
ddd49dfd1c servo: Merge #3953 - Add contentDocument support for HTMLIFrameElement. Fixes #3808 (from neojski:implement-HTMLIFrameElement.contentDocument); r=jdm
Because of #2122 I cannot write test for this right now because it will be failing randomly due to that iframe issue. However, if it doesn't fail due to that issue a test like this:

```html
<html>
  <head>
    <meta charset="utf8" />
    <script src="harness.js"></script>
    <title>Iframe contentDocument test.</title>
  </head>
  <body>
    <iframe src="test_iframe_contentDocument_inner.html" id="iframe"></iframe>
    <script>
      waitForExplicitFinish();

      var timeout = 100;
      var iframe = document.getElementById('iframe');
      function test_contentWindow() {
        if (!iframe.contentWindow) {
          // Iframe not loaded yet, try again.
          // No load event for iframe, insert bug number here.
          setTimeout(test_contentWindow, timeout);
          return;
        }
        is(iframe.contentDocument.getElementById('test').textContent, 'value');
        finish();
      }
      test_contentWindow();
    </script>
  </body>
</html>
```
where inner is simply:
```html
<html><body><div id="test">value</div></body></html>
```
passes.

I have added `SameOrigin` method to the `UrlHelper`. I wanted to reuse it in [`constellation.rs` same_script check](f0184a2d01/components/compositing/constellation.rs (L625)) but I it didn't want to compile saying

```
error: unresolved import `dom::urlhelper::UrlHelper`. Maybe a missing `extern crate dom`?
```

So I didn't include it in this PR for now.

There is more discussion about the cross origin iframes in [another issue](https://github.com/servo/servo/issues/3939). In this PR I just added same origin check.

Source-Repo: https://github.com/servo/servo
Source-Revision: 85a2f0b66a32cfd6022b3e6cec6ec06f3b59baf1
2014-11-13 23:54:28 -07:00
Josh Matthews
4d3016e023 servo: Merge #3585 - Implement single-line text input (from jdm:input); r=gw
This attempts to implement a bunch of the DOM Level 3 Events spec by implementing the KeyboardEvent interface, the document focus context, and dispatching keyup/keydown/keypress events appropriately. There's also some support for multiline text input that's untested.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2ffa845cf463b14b19322d477a77ffd20efa89a9
2014-11-13 10:57:33 -07:00
Glenn Watson
22c4035692 servo: Merge #3948 - Rust upgrade to rustc hash b03a2755193cd756583bcf5831cf4545d75ecb8a (from servo:rustup-20141105_2); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: c5e1b0d32e17fad29799023c85e2e73ac89c3af7
2014-11-12 20:48:31 -07:00
Guillaume Bort
7ce46deae8 servo: Merge #3934 - Close #84 (from guillaumebort:fix/84); r=jdm
Actually `<img>` elements in `<noscript>` are not prefetched anymore.

Probably because html5ever already parses the `<noscript>` content as raw
text data if `scripting_enabled` is activated.

See https://github.com/servo/html5ever/blob/servo/src/tree_builder/rules.rs#L126

Also, added a test to the images cache.

Source-Repo: https://github.com/servo/servo
Source-Revision: b94f20c7c119302754c3e47ff8e69fe6edc94af1
2014-11-11 14:30:39 -07:00
Ms2ger
e3578e3f69 servo: Merge #3945 - Remove content tests that are already covered by wpt (from Ms2ger:rm-tests); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: d63a35012cda3439e767ecbe7dc83aaa0421fc7e
2014-11-09 16:21:31 -07:00
Ms2ger
57a1c01f31 servo: Merge #3943 - Call waitForExplicitFinish in test_img_width_height.html (from Ms2ger:img_width_height); r=jdm
This fixes an intermittent failure introduced in
<https://github.com/servo/servo/pull/3929>.

Source-Repo: https://github.com/servo/servo
Source-Revision: caba4b3e76b50018c4ee805532f7784c34cea92a
2014-11-09 07:51:31 -07:00
Josh Matthews
83e2e14c53 servo: Merge #3929 - Make content tests synchronous by default. Fixes #884 (from jdm:finish); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: bb7621f5dc33dd5068a3a4de7cdfe3af8b3d4130
2014-11-06 22:51:29 -07:00
Bruno de Oliveira Abinader
4e10132f16 servo: Merge #3884 - Implement DOMStringMap (from brunoabinader:dataset); r=jdm
This is a sub-task for #2974.

Source-Repo: https://github.com/servo/servo
Source-Revision: 46154fb7ace37e438bddb80bf1e12f4d1f0e00a1
2014-11-06 12:36:30 -07:00
nkdalmia
40995fc3f7 servo: Merge #3817 - M1450: Initial Step for Implement Window.sessionStorage and Window.localStorage (from nkdalmia:master); r=jdm
We have completed the initial step for "Implement Window.sessionStorage and Window.localStorage"
- Create and stub the Storage WebIDL interface

Source-Repo: https://github.com/servo/servo
Source-Revision: c828e8360416e61deaaf6870ebdf9ee2f0abc19b
2014-11-06 10:51:40 -07:00
Martin Robinson
65b0281012 servo: Merge #3879 - Corral debug command-line options into a --debug/-Z flag (from mrobinson:debug-options); r=cgaebel
This should make help output a lot cleaner and simplify the way that
uncommon debug options are passed.

Source-Repo: https://github.com/servo/servo
Source-Revision: e483a189a3c24d0fe475cf2a8dedb11821f7ee21
2014-11-04 11:36:30 -07:00
Matt Brubeck
eb3242aca9 servo: Merge #3721 - Synchronous script loading during HTML parsing (from mbrubeck:script-sync); r=Ms2ger
Fixes #3356.  This makes script elements fetch their source synchronously and execute immediately by default.  It also lays some groundwork for future deferred or async script loading.

(Depends on #3716 to fix a content test failure caused by running script during parsing.)

Source-Repo: https://github.com/servo/servo
Source-Revision: 272ae0cc1beb83c839d5fbd746e67f4ae746db99
2014-10-29 15:51:41 -06:00
Mukilan Thiyagarajan
00508772bc servo: Merge #3812 - Implement [LenientThis] support and enable it in Document.webidl (from mukilan:lenient-this); r=Ms2ger
Closes issue #3760

Source-Repo: https://github.com/servo/servo
Source-Revision: 7ba02bb11d2d9275949cb7522c5fcbc4ebcd23d1
2014-10-25 11:42:38 -06:00
Josh Matthews
288014ca5f servo: Merge #3791 - Really fix #3738 by only processing iframe src attributes during parsing (from jdm:moreiframe); r=Ms2ger
....

Source-Repo: https://github.com/servo/servo
Source-Revision: 39d5f09350e3ec251b9f16cb55a12febeeeda4f8
2014-10-23 18:00:36 -06:00
Josh Matthews
9d02aff643 servo: Merge #3759 - Implement Document.readyState. Prevent iframes from notifying the compos (from jdm:readystate); r=Ms2ger
...itor after the initial parse. Fixes #1720. Fixes #3738.

r? @Ms2ger or @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 2df236376a443d8d031ee7a72379f336f2cd8cc4
2014-10-23 09:18:37 -06:00
Patrick Walton
43b02049e1 servo: Merge #3752 - gfx: Switch the default to CPU painting (from pcwalton:default-cpu); r=larsbergstrom
We've discussed this some and I think there's consensus to do it as a
pragmatic decision for now. CPU painting is more stable, especially with
buggy drivers, and faster (because we aren't caching the necessary
OpenGL objects yet and possibly for other reasons), so it provides a
better "out of the box" experience for newcomers to Servo who don't know
to pass the `-c` option. This patch continues to reftest both Skia and
Skia-GL out of a desire to keep options open. Skia-GL remains a
first-class citizen.

r? @metajack

Source-Repo: https://github.com/servo/servo
Source-Revision: 1fd7650de504611016d1ce10a5af2c1a4e0f6b9c
2014-10-21 21:18:33 -06:00
Gilles Leblanc
877d606ece servo: Merge #3720 - Edits dom/bindings/DESIGN.md (from gilles-leblanc:fix-grammatical-errors); r=jdm
This corrects and improves the dom/bindings/DESIGN.md document and also
corrects a grammatical error in a tests/reftest.rs message.

Source-Repo: https://github.com/servo/servo
Source-Revision: 65856dd00a7da07ece8d3e1e63bc495943266a24
2014-10-18 00:24:25 -06:00
Keegan McAllister
fb40898c55 servo: Merge #3670 - Use html5ever for HTML parsing (from kmcallister:h5e-take2); r=jdm
r? @Ms2ger, @jdm

The parser is now a JS-managed object and we use hooks in html5ever to trace its internal state.  This should be memory-safe even if arbitrary JavaScript can run during a parse.  Please let me know if you think of a reason it wouldn't be!

I think the likely outcome of a garbage collection during parsing is a dynamic `RefCell` borrow failure, but I'm going to look into that after this lands.  It should be safe to trace the parser while it's mutably borrowed, as long as it's not shared between threads, so we can probably switch to `UnsafeCell`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8d3b107568ab965b518b8003b702a5db993fa7d0

--HG--
rename : servo/tests/content/test_document_characterSet_long.html => servo/tests/content/test_document_characterSet_long.html.disabled
rename : servo/tests/content/test_document_characterSet_short.html => servo/tests/content/test_document_characterSet_short.html.disabled
2014-10-16 14:15:21 -06:00
Clark Gaebel
3443a24780 servo: Merge #3640 - Try to reset flows which need reflow, since reflow isn't yet idempotent (from cgaebel:incremental-flow-construction); r=pcwalton
This also hides the not-yet-working parts of incremental reflow behind a runtime
flag. As I get the failing reftests passing, I'll send pull requests for them one
by one.

Source-Repo: https://github.com/servo/servo
Source-Revision: 56989b8dec4aa95a3b484d45f15b23f9b3daaf13
2014-10-14 16:51:30 -06:00
Gilles Leblanc
0a959c2f05 servo: Merge #3645 - Make sure reftests aren't passing because nothing == nothing (from gilles-leblanc:issue-3481); r=kmcallister
In the test harness, assert that the two images aren't all white.

Fixes #3481

Source-Repo: https://github.com/servo/servo
Source-Revision: c9ce56a85d6c0591f71e28c9596c19fef13b91c0
2014-10-14 14:42:33 -06:00
Manish Goregaokar
747e39cf7d servo: Merge #3652 - Implement form submission for <input type=submit> (from Manishearth:form-button); r=jdm
Partially fixes #3647

Source-Repo: https://github.com/servo/servo
Source-Revision: d1685015559562a42cc440f4e3b7a97d38cc642c
2014-10-14 10:00:38 -06:00