Commit Graph

3026 Commits

Author SHA1 Message Date
Ms2ger
b3f23959cf servo: Merge #4305 - Cleanup ScriptTask::load some more (from Ms2ger:script_task); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 3a70a9fa6bdbfda405ff7b027a09596a2a2747f5
2014-12-09 12:16:07 -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
Emanuel Rylke
6014c50b8d servo: Merge #4304 - Don't include the root element when calling Element#getElementsByTagName (from ema-fox:bytag); r=Ms2ger
Fixes #4249

Source-Repo: https://github.com/servo/servo
Source-Revision: ef81fb13e73d8d8bbda80fbe52ee9d5a539bc519
2014-12-09 06:33:59 -07:00
Ms2ger
972e593419 servo: Merge #4303 - Update typeable to pick up a warning fix (from Ms2ger:docs-warning); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 25e5d312892421008133cb6c099644cf46a7b2bc
2014-12-09 05:33:57 -07:00
Ms2ger
6383ed9edb servo: Merge #4293 - Cleanup ScriptTask::load some more (from Ms2ger:script_task); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 02955d39ccf7fcd8a76279e49c44715b62730c6d
2014-12-09 04:57:56 -07:00
Simon Sapin
d405298981 servo: Merge #4302 - Add a ./mach clean-snapshots command to remove old Cargo and Rust (from SimonSapin:clean-snapshots); r=Manishearth
Bootstrapping automatically downloads new Rust and Cargo snapshots as needed into versioned directories, but do not remove now-unused versions. This is the desired behavior for `git bisect` to be usable.

However, this means that old version keep accumulating, taking up disk space. This adds a mach command to remove snapshots other than the ones currently being used. It is never run automatically.

To be safe, the command defaults to only printing what would be removed, and only removes stuff when run with a `-f` argument.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 00298221a6238c4fe4909f68a6616a718908ccf5
2014-12-09 04:01:19 -07:00
Zirak
5893fa94ce servo: Merge #4298 - Bound several link properties (from Manishearth:zirak-link-attrs); r=Manishearth
Carried over from #4248

Critic review: https://critic.hoppipolla.co.uk/r/3392

Source-Repo: https://github.com/servo/servo
Source-Revision: 7d4ec333750fd7d57226c1d915f3227a2998e02f
2014-12-08 23:30:59 -07:00
Manish Goregaokar
de7ade69d5 servo: Merge #4160 - Add unit test to freeze sizes of DOM structs (from Manishearth:a-test-size-dom); r=cgaebel
Source-Repo: https://github.com/servo/servo
Source-Revision: 2f80a3bac66ae3d0a84b5f4317ebfb537c5c6e2c
2014-12-08 23:01:05 -07:00
Glenn Watson
d6ad689dd4 servo: Merge #4292 - Use mach to build openssl on android instead of glut makefile (from glennw:android-ssl); r=mbrubeck
The glut makefile will be removed shortly after glutin lands
for android, so we need to build openssl for android elsewhere
in the build process.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2741fd2e139b9cb8e9f14857877f567ecae3bced

--HG--
rename : servo/ports/android/openssl.sh => servo/support/android/openssl.sh
2014-12-08 17:54:57 -07:00
Matthew Rasmus
f99063b40e servo: Merge #4288 - Updates ./mach update-cargo for new path changes (from mttr:mach_update_cargo_fix); r=jdm
Also fixed a bug if run with no arguments.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1458bb439701274527308a29f2e5e65c3306f78a
2014-12-08 17:03:59 -07:00
Andreas Tolfsen
9ef84d5ed2 servo: Merge #4286 - Fix concatentation error on no args to ./mach rustc (from andreastt:ato/concat_error_on_system_rust); r=metajack
Since default argument to params is None, concatenating it with a
list will raise an error.  This behaviour prevents `./mach rustc`
to be called when system-rust is defined in .servobuild.

Currently it will only work when followed by an argument, i.e.
`./mach rustc -arg`.

Testing this patch: `./mach rustc` should not raise an error.

Source-Repo: https://github.com/servo/servo
Source-Revision: 35c13f07bfd6a8973399e75404fa61a6d9aeda00
2014-12-08 15:28:03 -07:00
Patrick Walton
c02b013483 servo: Merge #4272 - gfx: Update Azure and Skia, and rewrite broken clipping logic (from pcwalton:upgrade-azure); r=mrobinson
This exposed some problems in our clipping logic, which was never
properly rewritten for the stacking context reform. The clipping code
worked in terms of a stack of clips, but the new stacking context code
has no concept of a stack of clip regions. Fixing that in turn exposed
some flaky/incorrect tests:

* `borders` had an incorrect reference image, as far as I can tell.

* `negative_margins` had some stray pixels, fixed by changing the text.

r? @mrobinson

Source-Repo: https://github.com/servo/servo
Source-Revision: 40c706b42d9d29ef58913f22da49159796e1b81b
2014-12-08 14:52:02 -07:00
Emanuel Rylke
40deabd7f7 servo: Merge #4284 - Implement selection ranges and deletion of \n for TextInput (from ema-fox:textinput_selection); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: b64bb47e9d7eea0402493abd12b9ea645cc8e083
2014-12-08 14:25:07 -07:00
Ms2ger
13af9a6af8 servo: Merge #4280 - Cleanup some code in node.rs (from Ms2ger:cleanup-node); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 368d6dc6bfd1b69b9082a6b773f79f1371602b70
2014-12-08 13:55:08 -07:00
ProgramFOX
a271e21d79 servo: Merge #4270 - Implemented Document#inputEncoding (from ProgramFOX:issue-4252); r=saneyuki
Resolves #4252

Source-Repo: https://github.com/servo/servo
Source-Revision: feabaf34acfc41c0976acdff5e4df15a135d1b09
2014-12-08 13:28:12 -07:00
Ben Hsu
d4b3238f9d servo: Merge #4233 - Fixes #4232 (from driftersprt:BUG-4232); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: f11089cda0564a826ed53949a4b39d519944e28a
2014-12-08 12:58:09 -07:00
Clark Gaebel
36ba47438d servo: Merge #4194 - Fixed #4170 - Incremental reflow wasn't being aggressive enough when nodes get reparented (from cgaebel:incremental-reflow-fix); r=pcwalton
When inserting a node that was already dirtied, the dirtying logic
would short circuit: "This node is already dirty? Great! Then its
parents must be HAS_DIRTY_DESCENDANTS, too! Let's skip that step."

This isn't appropriate when nodes move around the tree. In that case,
the node may be marked HAS_CHANGED, but ancestors may not yet have
the HAS_DIRTY_DESCENDANTS flag set.

This patch adds a `content_and_heritage_changed` hook in the document,
to deal with these cases appropriately.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5c506f7a98368020c7936517f1d8e243c9556937
2014-12-08 12:28:14 -07:00
Matthew Rasmus
0c6c8fc464 servo: Merge #4190 - Implements the :checked pseudo-class for inputs (from mttr:checked_pseudo_class); r=Manishearth
Relevant spec:
https://html.spec.whatwg.org/multipage/scripting.html#selector-checked

Also modifies HTMLInputElement::SetChecked to no longer modify its
checked content value, instead making use of its internal checkedness
state now that we can match `:checked` properly.

Source-Repo: https://github.com/servo/servo
Source-Revision: f18c18371d2bb5edde9d64e46b74bf01411afab3
2014-12-08 12:01:51 -07:00
Tetsuharu OHZEKI
d9885c4396 servo: Merge #4279 - Rename "render"/"rendering" to "paint"/"painting" (from saneyuki:rename); r=jdm
#4275

* This changeset rename "render"/"rendering" to "paint"/"painting" under `components/`.
* This does not rename words which are used as general browser's working.
  * So this doesn't change `reftest.rs`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0b486b12109ab765ecee4cbcc684e5d99e8ad5ad

--HG--
rename : servo/components/canvas/canvas_render_task.rs => servo/components/canvas/canvas_paint_task.rs
rename : servo/components/gfx/render_context.rs => servo/components/gfx/paint_context.rs
rename : servo/components/gfx/render_task.rs => servo/components/gfx/paint_task.rs
2014-12-08 10:28:10 -07:00
Ms2ger
8222c91fa8 servo: Merge #4268 - Cleanup ScriptTask::load and parse_html (from Ms2ger:script_task); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 3f60bcf2c2de856da9f7b86cc8793e75c99d46d9
2014-12-08 09:43:11 -07:00
Emanuel Rylke
7dd64bc9f1 servo: Merge #4267 - Implement Page(Up|Down) functionality for TextInput and bugfix (from ema-fox:textinput); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 9ac817523c463f2e64a73fef069316f7976063e8
2014-12-08 09:04:14 -07:00
Ms2ger
a35fe37703 servo: Merge #4266 - Create the root frame before evaluating the javascript URL (from Ms2ger:js-document-crash); r=Manishearth
This prevents a crash when the script in the javascript URL accesses the
document attribute.

Source-Repo: https://github.com/servo/servo
Source-Revision: ea907c1311051506bc3e7ef6fef8857968c71387
2014-12-08 02:49:06 -07:00
Jonathan Hao
989f5da014 servo: Merge #4257 - Implement the "messageevent" argument to Document#createEvent. #4008 (from johnathan79717:4008); r=jdm
This is a fix for issue #4008.

Source-Repo: https://github.com/servo/servo
Source-Revision: bdb3a2538b9f10aad4c911cc0118257d8311cd26
2014-12-08 01:55:08 -07:00
Matthew Rasmus
0f1fe27243 servo: Merge #4277 - servo.css: Style <button> like <input type=button> (from mttr:style_button_element); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: 673dc339712ea58bc6a4d4c90d556e5c9e84a65a
2014-12-07 22:22:07 -07:00
Glenn Watson
c20f134e76 servo: Merge #4207 - Fix path for CEF build (from glennw:fix-cef); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: ccef72385131f923edd63ffc586165aae786adf2
2014-12-07 15:25:07 -07:00
Matthew Rasmus
fd67e29914 servo: Merge #4269 - Fix breakage of ./mach test (from mttr:mach_test_fix); r=mbrubeck
When running commands through Registrar.dispatch, mach does not behave
in the same way it would as if it were running through the command line.
Defaults normally provided through a combination of @CommandArgument and
argparse magic are ignored.

I have some ideas as to how to fix this, but until then, this will allow
`./mach test` to run through test-unit properly.

Source-Repo: https://github.com/servo/servo
Source-Revision: a6768b62446d599b23906eae08845dcb8bbe8853
2014-12-06 13:49:03 -07:00
Ms2ger
08aaf009b2 servo: Merge #4263 - Use or_init where appropriate (from Ms2ger:or_init); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: c68e2af0a756280a687511614e44652906c0d7a1
2014-12-06 08:01:06 -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
Matthew Rasmus
ef99ea6b43 servo: Merge #4229 - Adds a --component argument to test-unit (from mttr:mach_unit_test_select_component); r=Manishearth
Example usage:

`./mach test-unit -c style`

Source-Repo: https://github.com/servo/servo
Source-Revision: 2d0e96e1331668fea7313efd688fe7dba6d7ebed
2014-12-06 04:49:00 -07:00
Tamir Duberstein
8f3cedce7a servo: Merge #4262 - should_move_clip_rect is a bare function (from tamird:4261); r=jdm
`self` is never used, so there's no need for this to be a method.
Fixes #4261. @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 3eec780c0050d034c06c3b7b2128401a8b3b1a37
2014-12-06 04:28: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
Ms2ger
b07144a5b9 servo: Merge #4264 - Clarify the panic in get_uint_attribute (from Ms2ger:panic); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 507fdbeb6d7c7d2e37adf8313dc3970289dbb900
2014-12-06 02:37:04 -07:00
Med0paW
902c5e9d61 servo: Merge #4254 - Issue 4253 - Setting timeout on a sync XHR should throw InvalidAccessErr (from medopaw:settimeout-on-sync-error); r=Manishearth
fix #4253

Source-Repo: https://github.com/servo/servo
Source-Revision: 33836715a8703299b931f9f891ec6524cca160a7
2014-12-05 20:13:02 -07:00
Timothy B. Terriberry
658bba4ee7 servo: Merge #4234 - Change time::profile's meta booleans to enums (from tterribe:issue4158); r=metajack
This makes these parameters self-documenting.
This patch does not attempt to push those enums into the data
structures that feed calls to this function.

Fixes #4158.

Source-Repo: https://github.com/servo/servo
Source-Revision: bc7b5b35b44e82dadb35242e39b190b3d1fcba10
2014-12-05 17:34:03 -07:00
Emanuel Rylke
5fd40c621b servo: Merge #4256 - Make the password input element show the correct number of dots for multibyte chars (from ema-fox:password_input); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d5c62ac2c426f55a88c767e0e48cb58712870639
2014-12-05 17:13:05 -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
Emanuel Rylke
a62c09aa62 servo: Merge #4255 - Make TextInput correctly handle multibyte chars (from ema-fox:textinput); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 58f9b4ad9601f2e6b641ba660247a01d5068c158
2014-12-05 13:16:12 -07:00
Rohan Prinja
aa333c94a9 servo: Merge #4247 - allow deleting last char (from ajnirp:delete-one-char); r=jdm
fix #4243

Source-Repo: https://github.com/servo/servo
Source-Revision: c6aadc5bcc8fccf8a6d4bc41d2b48279fa47c4e5
2014-12-05 08:43:12 -07:00
Manish Goregaokar
3984c9b43a servo: Merge #4198 - Hyper+OpenSSL on Android (from Manishearth:hyper-droid); r=Manishearth
This is the Hyper pull request, plus the set up for OpenSSL on Android to make it merge.

Sean's commits have been reviewed in #4065 (My Android changes were reviewed by Glenn)

Source-Repo: https://github.com/servo/servo
Source-Revision: 6bd9bf979bcfa96ea14e666b59eab01a6d6c373e
2014-12-05 04:16:11 -07:00
Ms2ger
7b333b9954 servo: Merge #4245 - Introduce MutNullableJS::or_init (from Ms2ger:lazy-getters); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 66d4acef8d591b5516d99cb4c7dd9e379242b928
2014-12-05 03:46:07 -07:00
Matthew Rasmus
72fc3c24c0 servo: Merge #4231 - Mach test inference fix (from mttr:mach_test_fix); r=jdm
Somehow didn't catch this when renaming a variable.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1046839e8cbf049f13d465cf7137e501a83119b9
2014-12-05 03:13:09 -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
Manish Goregaokar
1dfea0559f servo: Merge #4240 - Make tidy ingore new target dir (from Manishearth:tidy); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: a451a3bdb5bd37dc671dcb24b80f869ad6a82010
2014-12-05 00:49:10 -07:00
Nathan Froyd
ecec1d1aa1 servo: Merge #4238 - remove bindings codegen h/cpp files from .gitignore (from froydnj:remove-cpp-files-from-gitignore); r=Manishearth
These files don't exist in the tree, and the codegen doesn't create them, so we shouldn't have them sitting around in .gitignore.

There are h/cpp files sitting around in the bindings codegen directory; I suppose one could make the argument that they're useful for examples, so we should keep them around, too?

Source-Repo: https://github.com/servo/servo
Source-Revision: 590c6e841bb39c6dd5fdfc8434b722f170bcb4a4
2014-12-05 00:16:11 -07:00
Matt Brubeck
13e1e99bbe servo: Merge #4227 - Implement the HTMLScriptElement.src setter (from mbrubeck:script-src); r=jdm
Fixes #1113.  r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: 9050a151613b78bd992d1c32f968cb0cf12dd720
2014-12-04 22:37:05 -07:00
Eduard Burtescu
149f986db8 servo: Merge #4220 - devtools: handle script task panics gracefully in ConsoleActor (from eddyb:devtools-panic); r=jdm
r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: b8444f96f82791d7bbac456dfe23b71b2b09fea3
2014-12-04 18:04:06 -07:00
Ms2ger
5ae1b287f9 servo: Merge #4219 - Cleanup some Document code (from Ms2ger:cleanup-document); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 92a8c7a80ccd5721884da96dbd28c6c40ba32b70
2014-12-04 08:46:02 -07:00
Corey Richardson
934ea851d8 servo: Merge #4217 - Don't categorize HTMLInputElement as a TableCellFragment (from cmr:issue/4196); r=jdm
Closes  #4196.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 90b0369cdfbd62b6c6fa745beffdfd206c825543
2014-12-04 00:06:55 -07:00
Sagar Muchhal
d5599de352 servo: Merge #4213 - Support for Separated Read Write (from jdm:sepreadwrite); r=jdm
Rebased from #4211.

Source-Repo: https://github.com/servo/servo
Source-Revision: 28a132a8f412faa4b15c98939839083836c67052
2014-12-03 22:48:59 -07:00
Glenn Watson
7c1de48e14 servo: Merge #4216 - Disable debugging, set wikipedia page for demo (from glennw:android-demo); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 0b909c2e9345786563ab0b4425b67a8e918549c5
2014-12-03 22:01:11 -07:00
Shanil Puri
cc7082126f servo: Merge #4214 - Implemeneted ModifyAttribute handler to update DOM elements (from jdm:modifyattr); r=jdm
Rebased from #4197.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0b5cc3f4aaf62478b097cba5b2676e7ca99b02a3
2014-12-03 20:28:00 -07:00
Glenn Watson
32a89127bf servo: Merge #4210 - Update skia submodule to get android build fix (from glennw:skia-android-update); r=metajack
Source-Repo: https://github.com/servo/servo
Source-Revision: ecf98bc6802cd8a2626fb6436be38830ebb9677d
2014-12-03 19:51:57 -07:00
Simon Sapin
eaa95d31a2 servo: Merge #4203 - Make 'mach doc' not fail when components/servo/target doesn’t exist (from SimonSapin:refactor-doc); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: ad9aedac77d094b8524b6170b857499bdc9cd762
2014-12-03 19:09:58 -07:00
Cameron Zwarich
26e36e8662 servo: Merge #4202 - Remove libgreen support (from zwarich:remove-libgreen); r=larsbergstrom
Source-Repo: https://github.com/servo/servo
Source-Revision: 92cc423709e96d8eb13b6a59f0ed95e64f3d1822
2014-12-03 18:27:57 -07:00
Clark Gaebel
3aaccb58cc servo: Merge #4187 - Fixed #4127: Added a fast path to border-radius (from cgaebel:issue-4127); r=SimonSapin
This will avoid drawing Arcs if there's no border-radius property set.

Fixes #4127

Source-Repo: https://github.com/servo/servo
Source-Revision: 736d542beb82218e4c4c6eeb8116bc95334d9115
2014-12-03 17:48:56 -07:00
nkdalmia
b5db4cdee6 servo: Merge #4157 - M1450: Implement Window.sessionStorage: Storage Task, Storage Methods (excluding Storage event, QuotaExceededError) (from nkdalmia:master); r=jdm
Changes
* Implemented Storage Task
* Used Storage Task in methods of storage.rs
* Updated webstorage test expectations

Pending Changes:
* Handle Storage Event
* Throw QuotaExceededError in case of failure for method setItem
* localStorage as alias of sessionStorage

Source-Repo: https://github.com/servo/servo
Source-Revision: 0d2251510fb9ad8f4974c99cadafbd1a9a81e30f
2014-12-03 16:54:57 -07:00
Simon Sapin
23afaf9d7d servo: Merge #4142 - Have mach doc copy Rust docs, add mach browse-doc (from SimonSapin:refactor-doc); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 6d1193547b3d6cb1f36edcd61ff0a2572a817bf8
2014-12-03 16:27:56 -07:00
Patrick Walton
e2566c42f2 servo: Merge #4036 - layout: Implement opacity per CSS-COLOR § 3.2 (from pcwalton:opacity); r=SimonSapin
This adds the infrastructure necessary to support stacking contexts that
are not containing blocks for absolutely-positioned elements. Our
infrastructure did not support that before. This minor revamp actually
ended up simplifying the logic around display list building and
stacking-relative position computation for absolutely-positioned flows,
which was nice.

This will need this PR: https://github.com/servo/rust-azure/pull/112 I have not updated the Cargo.lock file yet because I want the merge commit.

r? @glennw
f? @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 68c90e27970808bddcb8c8a4e782bd4405e67a5c
2014-12-03 15:22:00 -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
Matt Brubeck
fad6bfb506 servo: Merge #4186 - Fix error in layout trace viewer (from mbrubeck:layout-viewer); r=glennw
d1b433a3b3bab353f320b2f39fa953ce326d2d55 changed the encoding format for Flows.  The root is no longer wrapped inside a `data` field, but instead includes BaseFlow fields directly.  This broke the layout trace viewer, which threw an uncaught exception when the `data` property was missing.  This fixes the exception, though some functionality may still be partly broken.

Source-Repo: https://github.com/servo/servo
Source-Revision: b2b6d4d0d1e381d038dc5e45cbe74304704934e7
2014-12-02 18:39:50 -07:00
Nathan Climer
e822028e55 servo: Merge #4169 - Fixed test filter (from IdeaHat:fix-mach-unit-test-filter); r=jdm
Minor change, added unit test filter to components so that ./mach test-unit [test-filter] works in line with documentation.

I'd personally like to also make filters on the components as well as the tests. This would change the interface (probably to ./mach test-unit [component-filter] [test-filter]), but change is NOT in this pull request.

Source-Repo: https://github.com/servo/servo
Source-Revision: c91e949ed02dc299900ed2c50812d733e6740afb
2014-12-02 18:15: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
Matthew Rasmus
e495923e3f servo: Merge #4168 - infer_test_by_dir cleanup (from mttr:mach_inferred_test_cleanup); r=Manishearth
No actual change in functionality here. I was just unhappy with the way test-ref was singled out before, and realized an obvious fix.

Source-Repo: https://github.com/servo/servo
Source-Revision: 600da2af7e6c886f46d013008d2f933b99a2b92f
2014-12-02 15:42:53 -07:00
Patrick Walton
4b99bc08fd servo: Merge #4136 - ports/cef: Replace calls to malloc with calloc (from pcwalton:cef-calloc); r=metajack
r? @metajack

Source-Repo: https://github.com/servo/servo
Source-Revision: 791606bde79cf38ae8484882a7986a1f258957a4
2014-12-02 14:39:51 -07:00
Michael Booth
8b0b657cb0 servo: Merge #4156 - Updated reflect_dom_object to be passed by value fixes #4122 (from Michael03:master); r=Ms2ger
This fixes issue #4122

Source-Repo: https://github.com/servo/servo
Source-Revision: ed45aa9efd6cf238a83fcae6a772886df61771f7
2014-12-02 05:24:49 -07:00
Clark Gaebel
a6355c6142 servo: Merge #4020 - [gfx/style] Implement border-radius (from cgaebel:border-radius); r=SimonSapin
This patch is a first stab at implementing border-radius. It looks fine as long as
the border isn't an ellipse (that might not even parse yet), and the border-widths
around a border-radius are the same.

Here's a cool screenshot!

![](https://www.dropbox.com/s/gdtmgjrlnf82gzz/Screenshot%202014-11-12%2018.03.29.png?dl=0)

r? @pcwalton @SimonSapin

Source-Repo: https://github.com/servo/servo
Source-Revision: 3775e686e10f1cbabd01217af1b0ea197b96ca06
2014-12-02 05:01:08 -07:00
Patrick Walton
3688c86021 servo: Merge #4162 - layout: Stop having text alignment stomp on layerization flags (from pcwalton:text-align-flags); r=kmcallister
Fixes the blank spaces showing up in Wikipedia.

r? @kmcallister

Source-Repo: https://github.com/servo/servo
Source-Revision: 9afdce4405f0f5998c81eae83bbb527d0e95ec8e
2014-12-01 12:12:55 -07:00
aakashjain
2bd749d2a8 servo: Merge #4149 - Fixes #4123 (from aakashjain:MovingElementGetters); r=Manishearth
Moved all getters from Element to ElementHelpers. Existing ElementHelpers getters `get_namespace` and `get_local_name` were replaced by `namespace` and `local_name`. Callers were updated accordingly. Also the getters are no longer inlined.
3 of the getters needed to be added to RawLayoutElementHelpers as well, to accomodate existing calls directly from Element objects.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9541dcdee271d83834af12c756932697ab0ef5dc
2014-11-29 04:42:41 -07:00
Matthew Rasmus
780be60cfc servo: Merge #4093 - Adds explicit --name argument to test-ref (from mttr:mach_reftest_by_file); r=jdm
`./mach test-ref` no longer eats the first "-" prefixed argument for test name filtering, instead using an explicit "--name" argument. This should avoid any potential confusion when passing down arguments to servo.

Also allows for ./tests/ref to be included (and trimmed away) for tab completion convenience (`./mach test` has also been updated to take advantage of this when inferring tests from file paths).

(fixes #4091)

Source-Repo: https://github.com/servo/servo
Source-Revision: b87d98e468d6c405dd02625e3e223e2412db8610
2014-11-29 01:12:42 -07:00
Simon Sapin
ce568031b9 servo: Merge #4141 - libstyle cleanup (from SimonSapin:style-cleanup); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e9aec8b9a730e41d87a2796a5bc2b0bbd90bd3cc
2014-11-29 00:51:43 -07:00
Josh Matthews
90ed12b81a servo: Merge #4147 - Fix the panic on runnig with --devtools due to a change in how type_id g (from jdm:devtoolspanic); r=Manishearth
...ets resolved since the last rustc upgrade.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9c3b2ae8a58f5e3fa91a6dc164c136291765a86f
2014-11-29 00:00:48 -07:00
Josh Matthews
06b8120b23 servo: Merge #4148 - Don't abort the sniffer task whenever an error occurs. Also, switch to b (from jdm:sniffix); r=glennw
...locking recv_opt vs. non-blocking try_recv.

Source-Repo: https://github.com/servo/servo
Source-Revision: ac4d2cbb78c594cc3a18d000ee4a88478df2db6d
2014-11-28 23:27:45 -07:00
Kshitij Parajuli
91ff1edfd9 servo: Merge #4000 - M1456: Shared SnifferTask (from t29:mime-sniffing); r=jdm
Issue: #3144

This PR addresses the second step of the ticket. i.e. move from a 1:1 sniffer:request task model to a shared sniffer task.

Source-Repo: https://github.com/servo/servo
Source-Revision: 1ac79c64da4b14f83fed6ca123a81417b9c0fc87
2014-11-28 10:51:44 -07:00
Jesse Tuchsen
55c230f212 servo: Merge #4132 - Fixes #4131 (from jtuchsen:issue-4131); r=jdm
A slight refactor.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2d904f70801bdd709ac845520dbe1035dd6fd5db
2014-11-28 10:27:43 -07:00
Tetsuharu OHZEKI
f34203dda8 servo: Merge #4130 - Make callers of ${Derived}::${base}() use casts instead (from saneyuki:cast); r=Manishearth
Fix #4124

This also introduce `BarCast::from_actual()` which is used for up-cast for dom's actual data types (non JS pointer values).

Source-Repo: https://github.com/servo/servo
Source-Revision: 82050d1e535681ea993e4290d02bcf4b9f4ee5a2
2014-11-28 09:24:44 -07:00
Matt Murphy
fd1b8dc8c7 servo: Merge #4135 - Fix error when executing "mach doc" (from murphm8:mach_doc); r=SimonSapin
This should fix  #4134

Source-Repo: https://github.com/servo/servo
Source-Revision: fafd3fd8ba6d2e43ad8cc34ac0f4cc9e835e6867
2014-11-28 08:54:45 -07:00
aakashjain
3cd7953171 servo: Merge #4129 - Fixes issue #4120 (from aakashjain:HTMLElement#hidden); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 12ae5413021f4e439cd067fbacd913261905e18a
2014-11-28 05:33:48 -07:00
Patrick Walton
860ec5ac31 servo: Merge #4102 - ports/cef: Use the CEF translator tool to generate the full set of CEF bindings (from pcwalton:cef-autogeneration); r=larsbergstrom
This replaces hand-implemented CEF bindings with proper Rust wrappers
automatically generated from the C++ headers. This means that, whenever
CEF's C++ headers change, we can easily generate both the appropriate C
API and the appropriate Rust API. It eliminates much of the hand-written
unsafe code within the CEF port, because the CEF translator tool now
knows how to generate Rust smart pointer wrappers for each class that
corrently perform reference counting.

Additionally, this commit adds utility macros (located in `macros.rs`)
that make it easier to correctly expose Rust objects as CEF objects.
They handle the marshaling of objects between Rust and CEF properly.
The net result of this is that you can write mostly-natural-looking Rust
in the CEF port and interact with it with a natural-looking C++ API on
the embedding side.

This setup relies on the branch of CEF located here:

    https://github.com/pcwalton/chromium-embedded-framework

To regenerate, follow the instructions in `ports/cef/README.md`. For
convenience, and because I don't anticipate the API to change much, I
have vendored in all of the appropriate interfaces.

r? @zmike or @larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: 02c2f53ccd8b75ff0b87edfce4f2f9315a6417bd
2014-11-27 23:18:44 -07:00
Jesse Tuchsen
5234e4a7a9 servo: Merge #4128 - Fixes #3962 (from jtuchsen:issue-3962); r=jdm
Bad HTTP responses now have a 0 status code instead of 200 OK.

Source-Repo: https://github.com/servo/servo
Source-Revision: b56bab4e407b38fa1e58d8be247ecd5f156c89bc
2014-11-27 13:42:41 -07:00
Glenn Watson
13d56c2822 servo: Merge #4114 - Fix layout on google search results (from glennw:table-layout-fix); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: 431644bfc8208b613bf69a89826376ffb143cb58
2014-11-26 18:39:38 -07:00
Gilbert Röhrbein
16bf33605a servo: Merge #4113 - fixes #4110, can input text without 'value' attribute present (from payload:issue-4110); r=jdm
The attribute `value` and the underlying model `TextInput` are not connected to each other, so I just pulled the value out of `TextInput`.

Source-Repo: https://github.com/servo/servo
Source-Revision: 184a3346ab2fb2a4dfd267681af02711cfb6bc44
2014-11-26 16:15:38 -07:00
Simon Sapin
8a29e80eaf servo: Merge #4099 - Add .cargo/config to .gitignore, move content to ports/android (from SimonSapin:cargo-config); r=mbrubeck
This allows using `.cargo/config` at the root of the repository for local path override, without risk of accidentally committing it.

However I don’t have the environment to test the Android build. Would this break it?

Source-Repo: https://github.com/servo/servo
Source-Revision: b5d6864de1000d6d54c2d5ebfd90ea9f6a596c54

--HG--
rename : servo/.cargo/config => servo/ports/android/.cargo/config
2014-11-25 10:01:32 -07:00
Paul DiPietro
e6a195db94 servo: Merge #4097 - Fix deprecation in selector matching test (from pauldipietro:fix_deprecation); r=SimonSapin
selector_matching.rs:1263:44: 1263:63 warning: use of deprecated item: Renamed to `get`, #[warn(deprecated)] on by default
    selector_matching.rs:1263         assert_eq!(1, selector_map.id_hash.find(&atom!("top")).unwrap()[0].declarations.source_order);
                                                                         ^~~~~~~~~~~~~~~~~~~
    selector_matching.rs:1265:47: 1265:79 warning: use of deprecated item: Renamed to `get`, #[warn(deprecated)] on by default
    selector_matching.rs:1265         assert_eq!(0, selector_map.class_hash.find(&Atom::from_slice("intro")).unwrap()[0].declarations.source_order);
                                                                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    selector_matching.rs:1266:41: 1266:71 warning: use of deprecated item: Renamed to `get`, #[warn(deprecated)] on by default
    selector_matching.rs:1266         assert!(selector_map.class_hash.find(&Atom::from_slice("foo")).is_none());
                                                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The 'find' function was changed to 'get'. Updated to remove this warning given when running the tests.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7b72ffcbafe6c526f6bf27aee71842b94f62a858
2014-11-25 08:15:49 -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
873b4aa8c7 servo: Merge #4090 - Lets ./mach test infer testsuite from file/directory path (from mttr:mach_infer_test); r=jdm
Fixes #4086

Lets `./mach test` take a file or directory as an argument, and infers `test-content`, `test-wpt`, or `test-ref` from the file's path.

Usage Example:
```
$ ./mach test tests/wpt/web-platform-tests/dom/interfaces.html
 0:00.27 LOG: MainThread INFO Using 1 client processes
 ...
```
Note that while there is no functionality for `test-ref` to accept individual files, `./mach test tests/ref` will still trigger `test-ref`.

Passing arguments properly through python would have been ugly (though maybe there are some mach internals I could have taken advantage of), so this instead runs a new mach process and lets the individual test suites manage their arguments like normal.

Source-Repo: https://github.com/servo/servo
Source-Revision: 10f8fe00677c756bd69adcf90b96a7e36bae8f56
2014-11-24 13:42:39 -07:00
Ms2ger
6bda040d13 servo: Merge #4084 - Panic if DOMTokenList#contains is called for an unparsed attribute (from Ms2ger:tokenlist-robust); r=jdm
Previously, if the attribute was not parsed into a token list, and the
tokens() method returned None, DOMTokenList#contains would silently return
false. This issue was encountered in
<https://github.com/servo/servo/pull/4076> and took quite some time to
figure out.

Source-Repo: https://github.com/servo/servo
Source-Revision: 51aa2fde10daa8c98f5407e35b8abf01bd364788
2014-11-24 10:39:35 -07:00
Matthew Rasmus
7ae32f7f97 servo: Merge #4083 - Mach debugger flag (from mttr:mach_debugger_flag); r=mbrubeck
Borrows two python modules from mozilla-central to give mach the ability to detect and pass arguments to a system's preferred debugger, and adds `--debug` and `--debugger` flags to `./mach run`. This works almost like the functionality described [here](https://developer.mozilla.org/en-US/docs/Debugging_Mozilla_with_gdb), but at the moment it lacks a `--debugparams`  argument.

Links to borrowed files:
http://hg.mozilla.org/mozilla-central/file/c9cfa9b91dea/testing/mozbase/mozinfo/mozinfo/mozinfo.py
http://hg.mozilla.org/mozilla-central/file/c9cfa9b91dea/testing/mozbase/mozdebug/mozdebug/mozdebug.py

Source-Repo: https://github.com/servo/servo
Source-Revision: 989efd5a2820a152c5d5a2d42c9be3c30d79f469
2014-11-24 10:15:46 -07:00
Achal Shah
196129611e servo: Merge #4081 - Implement HTML{Anchor,Area,Link}Element.relList (from achals:master); r=jdm
https://github.com/servo/servo/issues/3994

Source-Repo: https://github.com/servo/servo
Source-Revision: 6e19955129ef77aaa5371e4953fbd80fb523815e
2014-11-24 02:03:34 -07:00
Matthew Rasmus
361a2f04e2 servo: Merge #4080 - Update mach to latest changes from mozilla-central (from mttr:mach_update); r=jdm
Updates the way mach mixes unrecognized arguments and predefined arguments (see [mozilla bug 1076649](https://bugzilla.mozilla.org/show_bug.cgi?id=1076649) for details on this change), and also adds support for argument groupings (see [1077272](https://bugzilla.mozilla.org/show_bug.cgi?id=1077272)).

I was running into some annoyances when trying to implement a change that would allow a `--debug` flag to be used in `./mach run` for running Servo through a debugger (basically, the same behavior described under "How do I run Mozilla under gdb?" [here](https://developer.mozilla.org/en-US/docs/Debugging_Mozilla_with_gdb)). This change should make those annoyances go away, and as far as I can tell, it doesn't have an impact on the way any of the existing commands are used.

Source-Repo: https://github.com/servo/servo
Source-Revision: 4a257bc27152bef98068cfdc1433549aab05c5de
2014-11-23 22:48:32 -07:00
Kshitij Parajuli
a60d53dbbf servo: Merge #4070 - Fix SnifferManager Panic (from kparaju:master-mime-sniffer-failing-4046); r=jdm
Fixes #4046

I tested it by:

    ./mach test-wpt --include=XMLHttpRequest > old.log
    # make code changes
    ./mach test-wpt --include=XMLHttpRequest > new.log
    grep panic old.log # SnifferManager panics
    grep panic new.log # No SnifferManager panics

Source-Repo: https://github.com/servo/servo
Source-Revision: 65350bb2258d999e4fedb13438946d0e770d69c8
2014-11-23 22:24:34 -07:00
Manish Goregaokar
fdb73109be servo: Merge #4068 - Use atom! in place of Atom::from_slice where necessary (from Manishearth:atomify); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 60dfb65ab2278f8700bd698b2a9cc01e510e5b10
2014-11-23 22:00:40 -07:00
Trevor Riles
c8bc2efde0 servo: Merge #4064 - Make set_timeout_or_interval's is_interval an enumerated value instead of a boolean (from trevorriles:isintervalenum); r=jdm
Created an `IsInterval` enum to improve readability and remove the need for `true // is_interval`

I'm still fairly new to rust. I briefly looked for a way to implement boolean comparisons of the enum but didn't figure out a way.

Also I'm not attached to any of the names. Let me know what I can fix :)

Source-Repo: https://github.com/servo/servo
Source-Revision: 90007ee781e53f65344a24a0bdbeb86d5c0fe065
2014-11-23 21:36:37 -07:00
Matthew Rasmus
e873e5dfca servo: Merge #4077 - Adds --release flag to ./mach build-cef (from mttr:mach_build_cef_release); r=kmcallister
Requested by kmc in IRC.

```
11:36 < kmc> while you're mach-ing about, can you modify build-cef to
accept --release like build does?
```

Source-Repo: https://github.com/servo/servo
Source-Revision: a1a268ce1d00c865f14ae76c1d767f905cfc3a92
2014-11-23 12:57:36 -07:00
Corey Farwell
ac17250d03 servo: Merge #4072 - Make sure directories aren't getting tested (from frewsxcv:test-files); r=jdm
Fixes #3910

Source-Repo: https://github.com/servo/servo
Source-Revision: af42f1afc1dd2bcad50690c694c52b6b4f2d121a
2014-11-23 11:57:36 -07:00
nwin
ac5a93188a servo: Merge #4075 - Fixes 4037. Enable backtrace on run cmd (from nwin:fix-4037); r=Ms2ger
Fixes #4037

Source-Repo: https://github.com/servo/servo
Source-Revision: 593e3bc40c8c135f4fa1f0c6e59c6159edd76d74
2014-11-23 09:33:36 -07:00
Martin Robinson
05cadfd2fd servo: Merge #4074 - Update rust-layers to fix empty BufferRequest failures (from mrobinson:empty-tiles); r=jdm
rust-layers will now avoid sending empty buffer requests which can
cause failures when Servo tries to create empty platform surfaces.

Fixes #4060.

Source-Repo: https://github.com/servo/servo
Source-Revision: b33c31b5748ddfe4f1aec5f0813b47dc74adf604
2014-11-23 09:09:36 -07:00
Rohan Prinja
d05c466f44 servo: Merge #4067 - implement Document#createAttribute (from ajnirp:document-create-attribute); r=Manishearth
fixes #4054

Source-Repo: https://github.com/servo/servo
Source-Revision: d215ff786756bc38042b7f41ed93c14efa3b8fca
2014-11-23 08:21:37 -07:00
Patrick Walton
0dce6bf8e6 servo: Merge #4066 - layout: Fix De Morgan's Law error in incremental reflow, allowing float/absolute layout to be idempotent again (from pcwalton:float-incremental-layout-fix); r=cgaebel,cgaebel,cgaebel
Fixes the maze solver.

r? @larsbergstrom (or anyone)

Source-Repo: https://github.com/servo/servo
Source-Revision: e38e20da6500184df19654abe34322dd3c2fd99b
2014-11-22 11:12:35 -07:00
Matthew Rasmus
b58e3709f8 servo: Merge #4063 - Run a single WPT test from a relative path (from mttr:test_wpt_from_relpath); r=mbrubeck
Fixes #4055

This PR allows `./mach test-wpt` to be run  (from /path/to/servo) with a single relative path to some wpt test.

For example:
```
./mach test-wpt tests/wpt/web-platform-tests/dom/sometest.html
```
The argument `tests/wpt/web-platform-tests/dom/sometest.html` is passed on as `--include dom/sometest.html`.

Source-Repo: https://github.com/servo/servo
Source-Revision: e6e73b8da70a6acaeabc1abf13071d044996f103
2014-11-21 20:24:30 -07:00
Mike Blumenkrantz
a236341106 servo: Merge #4049 - Embedding callbacks (from zmike:embedding-callbacks); r=jdm
begin implementing CEF COM, add more types (stupid rust-bindgen taking forever to figure out...)

@jdm @larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: 2bba42ad19a792565b653cdd5551933ab2d41c2b
2014-11-21 20:00:36 -07:00