Commit graph

1626 commits

Author SHA1 Message Date
nithin murali
c5e101b6e5 Implement child reparenting and node removal during parsing. 2015-04-22 13:47:28 -04:00
bors-servo
c4b7979450 Auto merge of #5773 - mmatyas:canvas_clip, r=jdm
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5773)
<!-- Reviewable:end -->
2015-04-22 10:40:10 -05:00
Mátyás Mustoha
6fd6eefb35 Canvas: add clipping path support. 2015-04-22 16:25:02 +02:00
Ms2ger
04b532e1fb Store a Runtime object in ScriptTask. 2015-04-22 11:17:09 +02:00
bors-servo
9974ebb2f9 Auto merge of #5547 - aweinstock314:x11-clipboard, r=jdm
Manual re-opening of #5479 (since it seems that GitHub disables re-opening with the same number after a rebase).

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5547)
<!-- Reviewable:end -->
2015-04-21 14:41:32 -05:00
Avi Weinstock
cf6aef5d51 Make the channel argument to TextInput::new be optional, to support the signature expected by the unit tests. 2015-04-21 15:18:23 -04:00
Anthony Ramine
b636481ca3 Implement CSSStyleDeclaration.float (fixes #5101)
It just needs to be prefixed by an underscore.
2015-04-21 19:34:52 +02:00
bors-servo
a3dafe4999 Auto merge of #5594 - mskrzypkows:get_attribute_by_name, r=Ms2ger
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5594)
<!-- Reviewable:end -->
2015-04-21 10:23:03 -05:00
Maciej Skrzypkowski
6a31a75bc6 Refactoring, added conversion to lowercase for get_attribute_by_name method. (fixes #5561) 2015-04-21 16:08:15 +02:00
Avi Weinstock
503cc9e6d6 Moved clipboard integration from textinput to constellation, to facilitate sandboxing. 2015-04-21 09:31:20 -04:00
Mátyás Mustoha
5287cb7fba Canvas: implement rectangle drawing. 2015-04-21 15:21:30 +02:00
Avi Weinstock
ba4c455438 Implement X11 clipboard integration (Issue #5376). 2015-04-21 08:36:15 -04:00
bors-servo
e4b620ea54 Auto merge of #5652 - dmarcos:webgl, r=jdm
@jdm @ecoal95 I'm working on making VR happen in the Browser and I want to bring to Servo the [webVR APIs](https://github.com/MozVR/webvr-spec/blob/master/webvr.idl) we already have in Gecko. Before anything happens we need a working implementation of WebGL (and also the [fullscreen API](https://fullscreen.spec.whatwg.org/)). My implementation is very basic and probably naive (I just recently started to contribute to Servo). My patch is just a starting point: 

- It only implements ```clearColor``` and ```clear``` methods of the [WebGL spec](https://www.khronos.org/registry/webgl/specs/latest/).
- It uses the readback strategy that ```canvasRenderingContext2D``` is using (The webgl task paints stuff independently on it's own buffer and the compositor task request the pixels back to the webgl task when it needs them) I'm sure there are much better ways to handle this. Latency and FPS are critical in VR so we have to figure out the fastest way to push pixels to the screen. I've read something about layerizing the canvas but I'm still not sure what that even means :)
- There's an included test you can try ```./mach run tests/ref/webgl-context/clearcolor.html``` 

@ecoal95 I know you'll be working on this for the next three months. With a foundation in place we will be able to make quick progress in parallel. This is exciting!

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5652)
<!-- Reviewable:end -->
2015-04-20 19:29:02 -05:00
Diego Marcos
c82485874d Kicks off a WebGL implementation 2015-04-20 14:29:39 -07:00
Ms2ger
cd7ec9912e Make ScriptTask::js_context immutable.
Since we drop the ScriptTask almost immediately after clearing the field,
there's little reason to do it manually.
2015-04-20 20:16:55 +02:00
Ms2ger
dd9351d722 Parse attributes according to the specification in AttrValue::from_u32.
This exposes another bug: "-0" failed to parse with str.parse(), and is now
successfully parsed into 0. However, input.size and textarea.{rows, cols} are
supposed to be "limited to only non-negative numbers greater than zero", so 0
is not actually supposed to be accepted.
2015-04-20 10:51:44 +02:00
bors-servo
8b8daa24b8 Auto merge of #5559 - glennw:iframe-focus, r=jdm
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5559)
<!-- Reviewable:end -->
2015-04-19 18:13:59 -05:00
bors-servo
9c7c289aca Auto merge of #5731 - mmatyas:canvas_saverestore, r=jdm
This patch enables the use of `save()` and `restore()` for the canvas context, which is used by *a lot* of sites and scripts.

Depends on servo/rust-azure#153.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5731)
<!-- Reviewable:end -->
2015-04-19 17:40:33 -05:00
Glenn Watson
18d465bcd2 Support focus management and keyboard events for iframes. 2015-04-20 07:52:22 +10:00
Mátyás Mustoha
5b8416a2b6 Canvas: implement context state save/restore. 2015-04-19 21:12:13 +02:00
Dhananjay Nakrani
7cdfc76ea9 Change parse_progress() take JSRef by value. [Issue#5738] 2015-04-19 11:24:45 -07:00
bors-servo
e5ec55f0d8 Auto merge of #5741 - Ms2ger:attr-for-layout, r=jdm
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5741)
<!-- Reviewable:end -->
2015-04-19 09:37:29 -05:00
Ms2ger
0042f78aa7 Use get_attr_for_layout in get_classes_for_layout.
This fixes a bug with elements with multiple class attributes. In this case,
the class attribute in the null namespace would only be considered if it was
the first class attribute in the list.
2015-04-18 17:51:03 +02:00
Ms2ger
bdb8657cf6 Use get_attr_for_layout in ghas_class_for_layout.
This fixes a panic if this code was ever called on an element with a class
attribute in a non-null namespace. In this case, the attribute would not have
been parsed into a list of tokens, so value_tokens_forever() would have
returned None.

However, this function is, as far as I can tell, never called, because of the
way selectors are evaluated in layout. ('Return the selectors that match this
node' rather than 'return the nodes that match this selector'; the latter
uses only each_class.)
2015-04-18 16:56:54 +02:00
Ms2ger
39e3ace817 Use get_attr_for_layout in get_attr_atom_for_layout.
The code is equivalent.
2015-04-18 16:53:05 +02:00
Ms2ger
d67d6bfa3a Give get_attr_for_layout a more useful signature. 2015-04-18 16:51:57 +02:00
Bogdan Cuza
e0724ec9a9 Make mouse_over_targets a RootedVec 2015-04-18 15:54:25 +03:00
bors-servo
d90fe2b088 Auto merge of #5729 - frewsxcv:whatwg-multipage-redirects, r=Manishearth
"Links to the multipage version of the specification are unfortunately
likely to break over time."
-- https://html.spec.whatwg.org/multipage/asefij.html

This commit removes all references to the specific pages when viewing
WHATWG using multipage mode. I went through all these links and they
redirect fine.

Regex used to generate this commit:

`s_whatwg.org/multipage/.*#_whatwg.org/multipage/#_g`

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5729)
<!-- Reviewable:end -->
2015-04-17 08:57:33 -05:00
Marcus Klaas
5bcf2e0a6c Remove unnecessary clone in Document constructor 2015-04-17 14:43:45 +02:00
Corey Farwell
8b08c6f43f Don't link to specific WHATWG multipage page
"Links to the multipage version of the specification are unfortunately
likely to break over time."
-- https://html.spec.whatwg.org/multipage/asefij.html

This commit removes all references to the specific pages when viewing
WHATWG using multipage mode. I went through all these links and they
redirect fine.

Regex used to generate this commit:

`s_whatwg.org/multipage/.*#_whatwg.org/multipage/#_g`
2015-04-16 22:39:25 -04:00
bors-servo
4fd4370a96 Auto merge of #5721 - nox:nodeorstring, r=jdm
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5721)
<!-- Reviewable:end -->
2015-04-16 14:47:32 -05:00
bors-servo
e26219828b Auto merge of #5717 - Ms2ger:usp, r=jdm
<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5717)
<!-- Reviewable:end -->
2015-04-16 14:15:16 -05:00
bors-servo
653b40d3e5 Auto merge of #5704 - jseaton:jseaton/animation-props, r=pcwalton
Contributes towards servo/servo#5494 - includes all properties listed at http://dev.w3.org/csswg/css-transitions/#animatable-css .

Unforunately the most obvious way to support text-shadow meant making a few structures NoCopy.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5704)
<!-- Reviewable:end -->
2015-04-16 13:42:16 -05:00
Anthony Ramine
45e1b9628e Finish implementation of ChildNode and ParentNode 2015-04-16 20:31:34 +02:00
bors-servo
e3756f9e3f Auto merge of #5650 - ienzam:issue/1826, r=jdm
Tracking issue #1826 - implemented one of the three methods.

This is follow up of #5402. Rebased and squashed and made the method iterative.

<!-- Reviewable:start -->
[<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5650)
<!-- Reviewable:end -->
2015-04-16 13:07:20 -05:00
Ms2ger
9df501afd9 Fix URLSearchParams formatting. 2015-04-16 19:36:31 +02:00
Joseph Seaton
d843526cb8 Animate many more CSS properties 2015-04-16 17:42:57 +01:00
Josh Matthews
d0704d1797 Documentation. 2015-04-16 11:46:42 -04:00
Josh Matthews
1ca9ff56c8 Create easy common interface for off-thread network listeners, and remove the CORS-specific reimplementation of async networking. 2015-04-16 11:46:41 -04:00
Josh Matthews
f7ac1f1876 Remove old implementation of XHR's fetch. 2015-04-16 11:46:41 -04:00
Josh Matthews
01e66035ff Implement sync XHR by creating and spinning on-demand event loops. 2015-04-16 11:46:40 -04:00
Josh Matthews
2ee21ddbe7 Make the fetch method only handle sync XHRs. 2015-04-16 11:46:40 -04:00
Josh Matthews
17a88f1f81 Make timeouts for async XHR post a runnable. 2015-04-16 11:46:40 -04:00
Josh Matthews
5c7be5c9c3 Make async XMLHttpRequest requests use async network events. 2015-04-16 11:46:39 -04:00
Josh Matthews
1644436557 Start switching net/ to use abstractions over channels to allow introducing non-channel communication in the future. 2015-04-16 11:46:39 -04:00
Md. Enzam Hossain
4c5bebeb10 Implement node::LookupPrefix and add test.
Tracking issue #1826.
2015-04-16 11:38:07 +01:00
Mátyás Mustoha
350b060189 Add specification links to canvas line cap and line join 2015-04-15 17:40:23 +02:00
Corey Farwell
cc4a64e1fe Add/update comments with links to spec
Extracted out of #5649

* add more hyperlinks to associated specification for structs/methods
* follow redirects and update links
* replace broken links
* removal of WHATWG multipage page name since the page name is not
  guaranteed to be stable
2015-04-14 18:03:13 -04:00
Bogdan Cuza
19ffab82f1 Make Metadata use ContentType 2015-04-14 22:03:21 +03:00
Mátyás Mustoha
ccfff159e7 Canvas: added lineCap and lineJoin support. 2015-04-14 18:26:41 +02:00