Commit Graph

1488 Commits

Author SHA1 Message Date
benshu
0a1e8fbee6 servo: Merge #8591 - Correct undisciplined rebase. (Closes #8583.) (from benschulz:im-a-toddler); r=jdm
I screwed up the rebase on top of #8175; sorry to waste your time with this, @jdm. :(

Source-Repo: https://github.com/servo/servo
Source-Revision: d11442bdcccf4002cdb84e85fe726130047a2b07
2015-11-19 01:28:30 +05:00
Ms2ger
49d6b5042b servo: Merge #8569 - Rustfmt some of script (from Ms2ger:fmt-script); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: 7a87312121a69b590b364f9b5095f3145554e24b
2015-11-18 15:14:30 +05:00
Brandon Fairchild
3dc5830ca5 servo: Merge #8572 - Make Node::is_parent_of and Stylesheet::is_effective_for_device more idiomatic (from nerith:idiomatic); r=frewsxcv
Fixes #8555.

Source-Repo: https://github.com/servo/servo
Source-Revision: 247f586284ff3938430fd2be8de2ba2ac82eadc2
2015-11-18 04:23:17 +05:00
Corey Farwell
2dee8beb62 servo: Merge #8567 - Add tracking issue for HTMLFormControlsCollection (from frewsxcv:tracking-issue-HTMLFormControlsCollection); r=eefriedman
Source-Repo: https://github.com/servo/servo
Source-Revision: 71dbf99e4e4cb9e43554b9a00f76d2c61995888b
2015-11-18 02:12:56 +05:00
James Graham
8bd4d04d48 servo: Merge #8151 - Implement support for WebDriver send keys command (from jgraham:webdriver_sendkeys); r=jgraham
Supports sending keys to an element. The specification here is still
rather unfinished so the error handling and so on in this code will
need iteration as it becomes clearer what the expected behaviour is.

Source-Repo: https://github.com/servo/servo
Source-Revision: afe03870ce1a5a65b4c22f2e64155259da8b4609
2015-11-17 10:32:50 +05:00
Ms2ger
2bb9da787f servo: Merge #8548 - Remove the unused arguments to hit_test and mouse_over (from Ms2ger:unused-tna); r=pcwalton
I don't think this code is called when there is no document element, but I
added assertions to make sure we notice in case I was wrong.

Source-Repo: https://github.com/servo/servo
Source-Revision: 20d26853e145e275695463662b6cee334cd27085
2015-11-17 01:35:52 +05:00
Ms2ger
1be8cd53a2 servo: Merge #8545 - Remove AutoJoinScriptTask (from Ms2ger:AutoJoinScriptTask); r=pcwalton
I don't believe there is a case where it would make sense to drop the
ScriptReflow struct without joining the script thread. This approach should
be somewhat more robust, and avoids the code smell of a RAII guard in an
otherwise unused variable.

Source-Repo: https://github.com/servo/servo
Source-Revision: db94fda10e3351c96a0df61099d2fdfa481cc62b
2015-11-17 00:48:45 +05:00
Michael Howell
f4fab444d3 servo: Merge #8538 - Ignore <meta name=viewport> if @viewport is ignored (from notriddle:github_resize); r=mbrubeck
Fixes #8373

Source-Repo: https://github.com/servo/servo
Source-Revision: c1e6bc0714a11518afc608981ece954ac70bec93
2015-11-17 00:01:49 +05:00
Ms2ger
1535f2b370 servo: Merge #8533 - Remove the legacy module (from Ms2ger:legacy); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: b6f519cd0a9bdec909dcc5498f36f33e05f1115a
2015-11-15 18:43:13 +05:00
Roman Klauke
5022efc1ce servo: Merge #8527 - Replace Atom::from_slice("sizes") with atom!("sizes") (from romankl:atom-slices); r=Ms2ger
This PR replaces all occurrences of Atom::from_slice("sizes") with atom!("sizes"). It also updates string_cache to v0.1.17 from 0.1.16.

Right now I've split the crate update and the replace in different commits - should I squash them?

Fixes #8488.

Source-Repo: https://github.com/servo/servo
Source-Revision: c722e0e6f4de9de1b22ca6a8fa58ec5f49caa729
2015-11-15 17:56:33 +05:00
Corey Farwell
ce9719cac4 servo: Merge #8526 - Fix parse_length 0 values, implement <hr> 'width' (from frewsxcv:parse-length); r=eefriedman
Follow-up to https://github.com/servo/servo/issues/8424

Source-Repo: https://github.com/servo/servo
Source-Revision: 3ef0a9a79dffcde41cdd6081ef79a0f0593b5104
2015-11-15 03:00:46 +05:00
Paul Rouget
0a62891bdd servo: Merge #8449 - mozbrowsericonchange event (Browser API) (from paulrouget:favicon); r=jdm
fixes #8347

Source-Repo: https://github.com/servo/servo
Source-Revision: 7f076c628bffa9d95dca61e003adb9ab3ab0a316
2015-11-14 19:24:03 +05:00
Greg Guthe
3b37407de6 servo: Merge #7242 - Perf timing dom props (from g-k:perf-timing-dom-props); r=jdm
I think this is closer to what https://github.com/servo/servo/issues/7045 describes, but it panics trying to load a page (trace: https://gist.github.com/g-k/a9911467889cdb6fdbf9) and all reftests fail.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7de8b0a7ff2038f9fb643141d8759f40fb6ef093
2015-11-14 10:56:23 +05:00
Corey Farwell
43a8a7f7fa servo: Merge #8505 - Implement 'bgcolor' IDL attribute for 'HTMLTableCellElement' (from frewsxcv:html-table-cell-element-bgcolor-idl-attribute); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: f078f8fdf4157b4e57cef35eba00419c9c15464d
2015-11-13 14:37:53 +05:00
Corey Farwell
ac2f1cc66a servo: Merge #8504 - Prefer atoms over strs for string comparisons (from frewsxcv:more-atoms); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1763a37e3be8be46dc86bf4bf76bcd7c892566da
2015-11-13 10:26:13 +05:00
Corey Farwell
af35417f73 servo: Merge #8500 - Consolidate 'subpage finding' script_task logic (from frewsxcv:subpage); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: ef74bf5d42e80f9420a197dbe3d7da609ba158b0
2015-11-13 08:22:18 +05:00
Alan Jeffrey
128ce4b968 servo: Merge #8477 - Opaque DOMString (from asajeffrey:opaque-domstring); r=asajeffrey
This patch makes DOMString an opaque wrapper round String (currently it's a transparent wrapper).

The changes are:

* Replacing DOMString(foo) by DOMString::from(foo).
* Replacing foo.0 by String::from(foo).
* Adding functions clear, push_str and extend for in-place mutation of DOMStrings.
* Replacing DOMString by String in other threads (devtools, storage and filereader).
* Making DOMString implement !Send.
* Removing the pub attribute from the contents of DOMString.

This enables experimenting with other string representations in the DOM.

Source-Repo: https://github.com/servo/servo
Source-Revision: 62acdd303b78951885c2c90747b31f318907d6c9
2015-11-13 06:47:30 +05:00
Anthony Ramine
aa95b1efa2 servo: Merge #8147 - Implement weak-referenceable JS-managed objects (from nox:weakref); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: e63b1e83d4acd272cdf293292f2a496455405098
2015-11-13 05:52:40 +05:00
Patrick Walton
b0cfd94d48 servo: Merge #8492 - script: Make timer events e10s-safe (from jdm:e10s-timer-events); r=jdm
Closes #8235.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9eaa8e7b1f2e462f62b73477c30183c836a18399
2015-11-13 04:49:48 +05:00
Corey Farwell
2a87f91a4c servo: Merge #8479 - Implement Default trait for DOMString (from frewsxcv:domstring-default); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 1720595a85ff0a593994fed1d086288746c56aa3
2015-11-13 04:21:32 +05:00
Anthony Ramine
de9439de24 servo: Merge #8498 - Properly handle variadic arguments preceded by default values (from nox:fix-variadic-and-default-arguments); r=jdm
I broke that in #8197.

Source-Repo: https://github.com/servo/servo
Source-Revision: c44c73aa00ced6235266bd692833e22018f31138
2015-11-13 03:52:11 +05:00
Josh Matthews
bd9c531662 servo: Merge #8430 - Invoke specialized callback behaviour for OnErrorEventHandler (from jdm:errorhandler); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: fafc280179ddafab878dd261121cee17ba3b921c
2015-11-13 03:24:00 +05:00
Ms2ger
30837e1d9b servo: Merge #8428 - Update js (from Ms2ger:conversions); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: b40882093a306032d38ad02e30f0095e0a49ec21
2015-11-13 00:43:52 +05:00
Ravi Shankar
b1d7525d43 servo: Merge #7844 - Cancelable network requests! (from Wafflespeanut:requests); r=jdm
fixes #4974

Source-Repo: https://github.com/servo/servo
Source-Revision: 4848e37e2e0da2f83b1d7f0d231d59047012ff95
2015-11-12 18:29:58 +05:00
Corey Farwell
e1a5400832 servo: Merge #8481 - Simplify IterablePage::find (from frewsxcv:iterablepage-iter); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 743ca24819490c24ab3cf713fc9fdcd0f58957e0
2015-11-12 17:59:12 +05:00
Corey Farwell
e845513dd3 servo: Merge #8482 - Remove unnecessary '*_mut' methods (from frewsxcv:no-mut); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 448c7fb2e6758ca069104820fd5ac6b94725a1d5
2015-11-12 16:14:09 +05:00
Corey Farwell
969fc79bf7 servo: Merge #8483 - Cleanup PageIterator::next (from frewsxcv:cleanup-pageiterator-nxt); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: de832efd5d46422394804a93979e4cae8b465698
2015-11-12 10:26:49 +05:00
Corey Farwell
cb2890914e servo: Merge #8476 - Remove unnecessary 'node changed' notification (from frewsxcv:unnecessary-document-notification); r=nox
This same notification already happens in `CharacterData::SetData`

Source-Repo: https://github.com/servo/servo
Source-Revision: 1b20bc90ee8321aaa95e1906321753549ad166e6
2015-11-12 05:03:19 +05:00
benshu
6bdbd3ac26 servo: Merge #8475 - Execute XHR timeout callbacks directly. (Fixes #8468.) (from benschulz:xhr-timeout-ordering2); r=jdm
This is a fix for #8468.

Currently XHR timeouts schedule themselves for execution via `CommonScriptMsg::RunnableMsg`s. This was necessary when these timeouts used a separate thread to schedule themselves. Now it's a potential race that should have been eliminated as part of #8168.

Source-Repo: https://github.com/servo/servo
Source-Revision: 49d48a8680003267f29ebf8cd47c244b07f4c4d2
2015-11-12 04:01:13 +05:00
Emilio Cobos Álvarez
bb37511847 servo: Merge #8412 - Add WebIDL sequence return values (from emilio:webidl-sequence-return); r=jdm
And use it for `WebGLRenderingContext::getSupportedExtensions`.
Part of #544

Source-Repo: https://github.com/servo/servo
Source-Revision: 12f6ba29a74029fa8c83cc7274181d441e1e52dd
2015-11-11 22:45:15 +05:00
Corey Farwell
2ed3924aea servo: Merge #8466 - Simplify script::dom::node NodeValue implementations (from frewsxcv:node-value); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 01ff78b438fe905b02735762d696408b4d073e90
2015-11-11 21:13:21 +05:00
Corey Farwell
d0db054547 servo: Merge #8459 - Simplify iterating over Element attributes (from frewsxcv:namednodemap-iter); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 5e6efd62c1f19408f2d0dd50c48345b4122c0269
2015-11-11 19:49:49 +05:00
Anthony Ramine
3ab3bf76c2 servo: Merge #8197 - Support variadic interface arguments (fixes #8159) (from nox:variadic-interface-argument); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: f03a8261c58f650eda789b1f9f5363af6e15f59c
2015-11-11 19:02:26 +05:00
Corey Farwell
1a4c362d74 servo: Merge #8453 - Prefer Atoms over strs for comparison (from frewsxcv:atoms); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: fd5540df626508a57f6698b71d4d8ac8e95fb12e
2015-11-11 06:25:39 +05:00
benshu
d6d60e2e22 servo: Merge #8168 - XHR timeouts use same abstraction as scripts timers. (fixes #3396) (from benschulz:xhr-timeout-ordering); r=jdm
Alright, this is it. Finally the fix for #3396. :D

I'll add two comments via reviewable in a second.

Source-Repo: https://github.com/servo/servo
Source-Revision: df81cd7ce9de4823ad966f873639ed06ca368e4c
2015-11-11 05:38:28 +05:00
Bobby Holley
7f2310076d servo: Merge #8381 - Implement attribute restyle hints (from bholley:attr_restyle_hints); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: 13226f847234cd0130820338d5a272277780d278
2015-11-11 00:57:45 +05:00
Corey Farwell
7a69d816ad servo: Merge #8447 - Implement 'width' IDL attribute on <table> (from frewsxcv:htmltableelement-width-idl-attribute); r=eefriedman
Source-Repo: https://github.com/servo/servo
Source-Revision: 81f094b129f4df5f8287eb6613108b673211a546
2015-11-10 12:24:30 +05:00
Rizky Luthfianto
d60a173be6 servo: Merge #8444 - refactor(htmlhrelement.rs): color setter now uses macro (from rilut:patch-2); r=frewsxcv
Changed the function in #L44-47 to a macro usage. Fixes #8433.

Source-Repo: https://github.com/servo/servo
Source-Revision: 32a91bc6566ab23318a902392ade7096ccbb9e36
2015-11-10 11:42:25 +05:00
Corey Farwell
086231106b servo: Merge #8434 - Add Dimension member to AttrValue (from frewsxcv:dimension-attrvalue); r=eefriedman
Fixes #8417

Source-Repo: https://github.com/servo/servo
Source-Revision: cd6813ea3930d0d98cace8bf730286e1802fd280
2015-11-10 07:45:37 +05:00
Eli Friedman
7d5ad1a7d8 servo: Merge #8431 - Move storage of bgcolor for <tr> and <tbody> (from eefriedman:table-bgcolor); r=frewsxcv
Source-Repo: https://github.com/servo/servo
Source-Revision: b386008623132deca21049f125ac761b20edc1dd
2015-11-10 06:28:16 +05:00
Alan Jeffrey
52586c44a1 servo: Merge #8227 - Versioned dom (from asajeffrey:versioned_dom); r=eefriedman
This PR adds versioning to the DOM. There are now node.get_version and node.get_descendent_version methods that return a counter that is bumped when the node is dirtied. This is used to implement cache invalidation for caching HTMLCollection state. Caching HTMCollections gets a 1000x speedup in the Dromaeo DOM query tests.

Addresses https://github.com/servo/servo/issues/6901, https://github.com/servo/servo/issues/3381 and https://github.com/servo/servo/issues/1916.

Replaces PR https://github.com/servo/servo/pull/6927.

Source-Repo: https://github.com/servo/servo
Source-Revision: f39faaf99471f5419710e1a3d434e5d5fab0d221
2015-11-10 00:41:23 +05:00
Eli Friedman
397a718894 servo: Merge #8404 - Misc cleanup for DOM attributes (from eefriedman:misc-attributes); r=nox
No functional change; just cleanups related to parsing attributes.

Source-Repo: https://github.com/servo/servo
Source-Revision: d8df028197505ca439363cdb05bed58fe9b4b726
2015-11-10 00:02:24 +05:00
benshu
45c38bd5fd servo: Merge #8175 - Fixed panic in ActiveTimers.set_timeout_or_interval (from benschulz:set-timeout-panic); r=jdm
`ActiveTimers.set_timeout_or_interval` asserts that the pipeline is not currently frozen. Apparently that is too strict. When pending network requests complete after a pipeline is frozen, scripts may be executed and a timer scheduled.

With these changes scheduling a timer while the pipeline is frozen behaves as if the timer was scheduled at the time the pipeline was frozen.

To reproduce the panic
 1. `./mach run -r http://google.com`,
 2. immediately click on any link and
 3. wait for the panic.

Source-Repo: https://github.com/servo/servo
Source-Revision: f74754f582fa8126eacb1fa423cd9db2325d8621
2015-11-09 19:48:38 +05:00
Corey Farwell
4dddf85b6a servo: Merge #8419 - Implement <hr> 'color' attribute (from frewsxcv:html-hr-element-color-attribute); r=eefriedman
Source-Repo: https://github.com/servo/servo
Source-Revision: 3780fb7fe02ed66bd391421a0c5506b5635279dd
2015-11-09 04:58:51 +05:00
Roman Klauke
ac15770619 servo: Merge #8408 - rename WebSocket::Send_Impl (from romankl:websocket-rename-impl); r=jdm
Previos: `Send_Impl`, now: `send_impl`.

Closes: #8345
Source-Repo: https://github.com/servo/servo
Source-Revision: 9bcae9a866b85a90b75b9cbfcb9058287c1c0871
2015-11-08 20:01:35 +05:00
Corey Farwell
44297d472d servo: Merge #8403 - Minor 'node_from_nodes_and_strings' cleanup (from frewsxcv:node-from-nodes-and-strings); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: fc98b8e126b9f14229d677ea49b3afa819aa6910
2015-11-08 17:03:46 +05:00
Eli Friedman
c9df516a33 servo: Merge #8286 - Remove unnecessary uses of #[no_move] (from eefriedman:no-move); r=nox
The patch makes RootCollection a bit safer by making the StackRootTLS hold
it in place.

RootedVec was doing an extremely delicate dance and just hoping nobody
messed it up; switch to a Box to be safe.

CodeGenRust seemed to be using no_move for no particularly good reason.

Source-Repo: https://github.com/servo/servo
Source-Revision: 92f9e58310f1b7c3925882979ae9352967866b66
2015-11-08 12:21:00 +05:00
Sylvester Willis
d0babaa281 servo: Merge #8400 - Added call to event.PreventDefault on html text inputs and textareas (from sylvesterwillis:arrow-key-scroll-on-input); r=jdm
This change should prevent page scrolling when up/down buttons are pressed within text inputs and textboxes which should resolve issue #8379.

Source-Repo: https://github.com/servo/servo
Source-Revision: f1565bdd82bdf9a7fc383d20fdb53d07adec55c1
2015-11-08 09:48:16 +05:00
Till Schneidereit
a281e7443b servo: Merge #8039 - Move Stylesheet loading and ownership from the layout task into HTML elements (from tschneidereit:script-owns-stylesheets); r=jdm
Stylesheets for `HTMLLinkElement`s are now loaded by the resource task, triggered by the element in question. Stylesheets are owned by the elements they're associated with, which can be `HTMLStyleElement`, `HTMLLinkElement`, and `HTMLMetaElement` (for `<meta name="viewport">).

Additionally, the quirks mode stylesheet (just as the user and user agent stylesheets a couple of commits ago), is implemented as a lazy static, loaded once per process and shared between all documents.

This all has various nice consequences:
 - Stylesheet loading becomes a non-blocking operation.
 - Stylesheets are removed when the element they're associated with is removed from the document.
 - It'll be possible to implement the CSSOM APIs that require direct access to the stylesheets (i.e., ~ all of them).
 - Various subtle correctness issues are fixed.

One piece of interesting follow-up work would be to move parsing of external stylesheets to the resource task, too. Right now, it happens in the link element once loading is complete, so blocks the script task. Moving it to the resource task would probably be fairly straight-forward as it doesn't require access to any external state.

Depends on #7979 because without that loading stylesheets asynchronously breaks lots of content.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7ff3a17524e0e703e3ac279441729c185444be24
2015-11-08 00:41:54 +05:00
Ms2ger
aa500ac691 servo: Merge #8355 - Cleanup exit messages and related code (from Ms2ger:Exit); r=nox
Source-Repo: https://github.com/servo/servo
Source-Revision: 9a465c58429547b59b8a6e1258eaaea46bf7e5a2
2015-11-07 22:04:45 +05:00