Commit graph

10083 commits

Author SHA1 Message Date
Rohan Prinja
e50e704f5a trace keys as well 2014-09-28 09:44:43 +05:30
bors-servo
c9c8d63727 Merge pull request #3501 from zwarich/telement-lifetimes
Remove the 'static lifetime parameters from TElement methods

Reviewed-by: jdm
2014-09-27 17:09:28 -06:00
bors-servo
c10948736f Merge pull request #3497 from zwarich/extended-deref
Add an extended_deref method to JSRef

Reviewed-by: Manishearth
2014-09-27 12:48:30 -06:00
Cameron Zwarich
b2a3519011 Remove the 'static lifetime parameters from TElement methods
This improves the static correctness of layout's use of DOM nodes.

Fixes #2595.
2014-09-27 11:14:10 -07:00
Cameron Zwarich
61ae80e186 Add an extra lifetime parameter to TElement / TNode
This isn't used for anything yet, but it's easier to propagate this
change in a separate commit.
2014-09-27 11:14:10 -07:00
bors-servo
a35212410a Merge pull request #3496 from zwarich/disabled-state-helpers-jsref
Convert &JSRef -> JSRef in DisabledStateHelpers

Reviewed-by: jdm
2014-09-26 20:24:33 -06:00
bors-servo
86eec63a02 Merge pull request #3493 from zwarich/root-lifetimes
Improve the correctness of Root lifetimes

Reviewed-by: jdm
2014-09-26 19:57:33 -06:00
Cameron Zwarich
bad7915914 Make the DocumentHelpers trait use extended_deref 2014-09-26 18:38:58 -07:00
Cameron Zwarich
2789750f66 Make the AttrHelpers trait use extended_deref 2014-09-26 18:38:36 -07:00
Cameron Zwarich
8334942d0c Add an extended_deref method to JSRef
The extended_deref method will take a JSRef<'a, T> and produce an &'a T,
in contrast to the standard deref method that takes an &'b JSRef<'a, T>
and produces an &'a T. This is useful when avoiding passing a JSRef by
reference.
2014-09-26 18:37:26 -07:00
bors-servo
39b6bd9b95 Merge pull request #3489 from ProgramFOX/issue2242-2
Made some DOM fields private.

Reviewed-by: jdm
2014-09-26 19:30:33 -06:00
bors-servo
1e5770a138 Merge pull request #3432 from gilles-leblanc/issue-3361
Handle dynamic addition of attributes

Reviewed-by: jdm
2014-09-26 19:00:35 -06:00
Gilles Leblanc
8e77422d8e Handle dynamic addition of attributes
Handles dynamic addition of attributes to <link rel=stylesheet>
elements.

Fixes #3361
2014-09-26 19:04:32 -04:00
Cameron Zwarich
4bf2a88ae2 Convert &JSRef -> JSRef in DisabledStateHelpers 2014-09-26 15:58:36 -07:00
Cameron Zwarich
4f32d54fd8 Convert &JSRef -> JSRef for the PrivateNodeHelpers trait 2014-09-26 15:46:37 -07:00
Cameron Zwarich
78f061ee54 Improve the correctness of Root lifetimes
Use the new lifetime bounds feature of Rust to enforce that the
RootCollection field of Root outlives the jsref field. This still
doesn't enforce that the Root itself outlives the jsref field, and
doing this would require some sort of init dance.
2014-09-26 14:25:43 -07:00
ProgramFOX
71a05a9c39 Made some DOM fields private.
Relevant to #2242.
2014-09-26 20:35:01 +02:00
bors-servo
c2d6d8084c Merge pull request #3480 from zwarich/trailing-whitespace
Fix trailing whitespace tidy errors

Reviewed-by: larsbergstrom
2014-09-25 17:00:34 -06:00
Cameron Zwarich
ce2484a7ce Fix trailing whitespace tidy errors 2014-09-25 13:48:07 -07:00
Ms2ger
c4d36b5721 Remove unused cx_for_dom_object function. 2014-09-25 22:35:38 +02:00
Ms2ger
1d00b28df0 Regroup uses of JS constants in utils.rs. 2014-09-25 22:35:38 +02:00
Ms2ger
47829a37a9 Move global_object_for_js_object to global.rs.
This appears to be a more sensible place for it (related to #433).
2014-09-25 22:35:37 +02:00
Manish Goregaokar
95a4731c0e Merge pull request #3468 from Manishearth/jstraceable
Replace our usage our Encodable with JSTraceable; r=jdm
2014-09-24 21:25:41 +05:30
Manish Goregaokar
6f6a62e967 Address review comments 2014-09-24 19:35:41 +05:30
Manish Goregaokar
5336dd9853 Update docs 2014-09-24 05:44:53 +05:30
Manish Goregaokar
cc44a3b064 Use JSTraceable everywhere 2014-09-24 05:44:49 +05:30
Manish Goregaokar
85f79290a6 Add untraceable! macro 2014-09-24 02:35:40 +05:30
Ms2ger
d3d7c1dabd Handle null strings in Namespace::new.
This also avoids a string copy in the rare case of an unrecognized namespace.
2014-09-23 22:22:45 +02:00
Ms2ger
fd5c6e8512 Merge pull request #3443 from Ms2ger/uniontypes
Remove the glob import for UnionTypes; r=jdm
2014-09-21 22:34:27 +02:00
Ms2ger
61e17656cd Merge pull request #3442 from saneyuki/atom
Make Document.idmap key to Atom; r=Ms2ger
2014-09-21 16:17:46 +02:00
Ms2ger
d6321230de Remove the glob import for UnionTypes. 2014-09-21 16:13:42 +02:00
Ms2ger
b40966981c Share code to compute the type of a union.
This does not change the generated code.
2014-09-21 16:13:42 +02:00
Tetsuharu OHZEKI
628191e372 Make Document.idmap key to Atom. 2014-09-21 22:38:39 +09:00
Ms2ger
2dd5f2357e Don't use a glob import for codegen::{PrototypeList, RegisterBindings}. 2014-09-21 14:21:51 +02:00
Keegan McAllister
af96e8e409 Fix upstream merge fallout 2014-09-20 13:26:25 -07:00
Keegan McAllister
dc86e83654 Eliminate warnings 2014-09-20 13:00:55 -07:00
Keegan McAllister
a640a7c5c3 Upgrade to rustc 0.12.0-pre (4d2af3861 2014-09-17 15:51:11 +0000) 2014-09-20 13:00:06 -07:00
Cameron Zwarich
d6ba37c68c Merge pull request #3433 from zwarich/jsref-self-helpers
More progress in the &JSRef -> JSRef conversion
2014-09-20 12:55:21 -07:00
Josh Matthews
545e9884a6 Merge pull request #3364 from jejuliekim/option-text
Implement HTMLOptionElement.text #3023
2014-09-20 15:03:11 -04:00
Cameron Zwarich
8aec08074c Remove some extraneous &* pairs 2014-09-20 11:54:11 -07:00
Cameron Zwarich
d768ee77ad Convert various helper traits from &JSRef to JSRef
I converted them all with a few exceptions:

- Methods that were used by trait objects, since trait objects don't
  work with `self` methods.
- Methods that take an &'b JSRef<'a, T> and return an &'b. In reality,
  many (all?) could return an &'a instead, but this isn't allowed by the
  Deref trait.
- Methods that internally rely on the same issue with Deref.
- I left out the traits involved in layout entirely, even though not all
  of their methods suffer from one of the above problems.

There will probably be solutions to all of these problems in the future.
2014-09-20 11:54:11 -07:00
Cameron Zwarich
2c8d51a37c More progress in the &JSRef -> JSRef conversion
Change all of the <Class>Methods traits to take `self` instead of
`&self`.
2014-09-20 11:54:10 -07:00
Adenilson Cavalcanti
7581335232 Move is_void() Element method together with the other struct methods,
it becomes part of ElementHelpers.
2014-09-20 10:24:57 -07:00
Jeongeun Kim
dad77f0d25 Implement HTMLOptionElement.text#3023
Signed-off-by: Jeongeun Kim <je00julie.kim@gmail.com>

Implement HTMLOptionElement.text#3023 (2nd trial)

Implement HTMLOptionElement.text#3023 (3rd trial)

delete metadata for skipping option tests

fix conflict
2014-09-20 23:49:20 +09:00
Gilles Leblanc
652d217961 Share code between Navigator and WorkerNavigator
Also shares code between Location and WorkerLocation. This has been done
by introducing NavigatorInfo and UrlHelper.

Fixes #3159
2014-09-20 08:51:35 -04:00
Tetsuharu OHZEKI
de0866ab42 Use Untraceable<T> to hold LayoutDataRef instead of manual Encodable implementation. 2014-09-20 15:19:01 +09:00
Tetsuharu OHZEKI
54d3a0b280 Reintroduce Untraceable<T>.deref_mut() to make mem::replace() possible to Untracebale<T> field.
Some compile errors caused by the compiler's misreading comes back again :(
We re-use `deref()`explicitly to hide these errors.
2014-09-20 15:19:00 +09:00
Cameron Zwarich
4fa8725111 First steps of &JSRef -> JSRef conversion
Replace &JSRef with JSRef in the bulk of the generated code. This will
remove a level of indirection throughout all DOM code.

This patch doesn't change methods implemented on JSRef<T> to take `self`
rather than `&self`, and it leaves a few other uses of &JSRef, but those
changes can be made incrementally.
2014-09-19 13:39:17 -07:00
Josh Matthews
6d6726178a Merge pull request #3253 from ChrisParis/TreeWalker
Implement TreeWalker
2014-09-19 10:54:26 -04:00
Josh Matthews
b82c0dced0 Merge pull request #3172 from jdm/devtools
Dump initial prototype of devtools server into the build. Expect lies if...
2014-09-19 09:15:03 -04:00