Commit graph

50 commits

Author SHA1 Message Date
Tetsuharu OHZEKI
628191e372 Make Document.idmap key to Atom. 2014-09-21 22:38:39 +09: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
Cameron Zwarich
176b3f7698 Remove uses of &mut JSRef
Since everything with JSRef happens with interior mutability, it doesn't
make any sense to use an &mut JSRef.
2014-09-18 15:30:38 -07:00
Chris Paris
92638a6fe6 Implement TreeWalker 2014-09-18 11:13:33 -10:00
Josh Matthews
fae7ce3c1d Retrieve some basic layout properties for nodes to make the box model somewhat useful. 2014-09-18 15:07:11 -04:00
Josh Matthews
fa57fe890b Enable real DOM inspector support. 2014-09-18 15:06:40 -04:00
Josh Matthews
9607b468bc Revert "script: Use atom comparison in more places, especially for attributes." for persistent test failures.
This reverts commit 874db26104.
2014-09-18 09:20:19 -04:00
Josh Matthews
75caade828 Merge pull request #3358 from jdm/thespicemustnotreflow
Delay initiating layout operations for as long as possible.
2014-09-17 19:09:31 -04:00
Patrick Walton
874db26104 script: Use atom comparison in more places, especially for attributes.
75% improvement in style recalc for Guardians of the Galaxy.
2014-09-17 13:17:12 -07:00
Josh Matthews
61642d64b5 Merge pull request #3387 from prasoon2211/base64_methods_for_worker
Implement atob and btoa methods for worker
2014-09-17 11:46:20 -04:00
Manish Goregaokar
11ba79894a Merge pull request #3374 from Manishearth/lint_unrooted_jsmanaged
Add lint for ensuring proper rooting of JS<T>; r=jdm
2014-09-17 18:17:19 +05:30
Prasoon Shukla
e0f2c9edc1 Fix for issue #3238
Moved the Atob and Btoa methods ouside the impl for WorkerMethod trait
and made them publicly accessible from WorkerGlobalScopeMethods via
proxy methods.
2014-09-17 12:27:01 +05:30
Jack Moffitt
1544db8bb9 Merge pull request #3373 from ProgramFOX/issue3366
Removed unused BlobMethods and CommentMethods traits, fixes #3366
2014-09-16 18:39:06 -06:00
Manish Goregaokar
f5087e1490 Use #[must_root] for HTMLElements 2014-09-17 01:02:44 +05:30
Manish Goregaokar
30014c3919 Make Reflector #[must_root], propagate to non-HTMLElements 2014-09-17 01:02:41 +05:30
Manish Goregaokar
d241826987 Unwrap pointers and miscellany for unrooted_must_root check 2014-09-16 23:31:40 +05:30
Manish Goregaokar
bded5c3703 Add unrooted_must_root lint for usages of JS<T> in let/for bindings 2014-09-16 22:54:24 +05:30
ProgramFOX
457f1876b9 Removed unused BlobMethods and CommentMethods traits, fixes #3366 2014-09-16 19:03:04 +02:00
Manish Goregaokar
12dc54d238 Add unrooted_must_root lint for enums and structs containing JS<T>, as well as functions with JS<T> in their parameter list
For safe wrappers over JS<T> (eg Temporary<T>) use #[allow(unrooted_must_root)].
For all other types containing a #[must_root] value, annotate the type with #[must_root] to ensure that it is never used unrooted
2014-09-16 22:11:27 +05:30
Matt Brubeck
0e2cdc5cca Merge pull request #3352 from mbrubeck/link-style
Move link rel=stylesheet fetching to layout task. r=jdm
2014-09-16 08:16:29 -07:00
Josh Matthews
dd35ea223e Merge pull request #3357 from glennw/empty-iframe-src
Handle src='' in an iframe element. Without this, infinitely creates iframes with the same url.
2014-09-16 10:16:35 -04:00
Matt Brubeck
1ae3bda172 Move link rel=stylesheet fetching to layout task
Fixes #3346.
2014-09-16 07:12:01 -07:00
Jack Moffitt
ad02534c10 Merge pull request #3212 from cgaebel/style-resolution-bloom-filter
Added a bloom filter to CSS selector matching.
2014-09-15 22:27:24 -06:00
Glenn Watson
111de569ac Handle src='' in an iframe element. Without this, infinitely creates iframes with the same url. 2014-09-16 13:47:41 +10:00
Josh Matthews
2bd93ed070 Delay initiating layout operations for as long as possible. 2014-09-15 23:16:45 -04:00
Jack Moffitt
8a02fe0fc6 Merge pull request #3347 from jdm/blankiframe
Make all iframes attached to a document default to about:blank.
2014-09-15 19:37:29 -06:00
Clark Gaebel
acd83ff47b Added a bloom filter to CSS selector matching. 2014-09-15 16:29:45 -07:00
Josh Matthews
151cbf07a6 Make all iframes attached to a document default to about:blank. 2014-09-15 14:15:44 -04:00
Jack Moffitt
b605929134 Handle iframe.src with a javascript protocol URL.
This change prevents us from crashing on Amazon and other pages with
iframe.src="javascript:foo".
2014-09-15 10:02:02 -06:00
Ms2ger
aa3ca283d4 Remove obsolete FIXME comment. 2014-09-14 10:27:42 +02:00
Ms2ger
d0e095a3e5 Stop messing with the case of the attribute name in AttributeHandlers::get_attribute.
This fixes a bug where GetAttributeNS would incorrectly match lower-case
attributes when called with an upper-case argument.
2014-09-13 21:01:54 +02:00
Gilles Leblanc
81a0d065f1 Make use of the list of Atoms in ClassSelector
Make use of the list of Atoms in the class attribute selector
(ClassSelector) in selector_matching.

Fixes #3111
2014-09-11 23:19:26 -04:00
Tetsuharu OHZEKI
a4ec892dbc Move Attr::local_name() to AttrHelpers/AttrHelpersForLayout. 2014-09-11 04:54:38 +09:00
Tetsuharu OHZEKI
b73b06b9a8 Move Attr helper methods to AttrHelpers trait to avoid to touch them from layout task. 2014-09-11 04:54:38 +09:00
Jack Moffitt
c6ab60dbfc Cargoify servo 2014-09-08 20:21:42 -06:00