Commit graph

4497 commits

Author SHA1 Message Date
Emilio Cobos Álvarez
d7e2b40484
webgl: Honor ArrayBuffer or ArrayBufferView in bufferData and bufferSubData. 2016-10-09 13:23:39 +02:00
Emilio Cobos Álvarez
f985a73cae
webgl: Handle both sequences and typed arrays, managing the type error ourselves.
This is a step with multiple intentions:

 * Be correct.
 * Unlock tests that are blocking @anholt.
 * Ease the transition to typed arrays once the changes by @Ms2ger start rolling
   in, since I expect the amount of test expectations to update to be
   non-trivial.
2016-10-09 12:41:13 +02:00
Emilio Cobos Álvarez
602246a14c
script: Mark as unsafe multiple array_buffer_view_to_xxx functions that take a raw JSObject pointer. 2016-10-09 12:32:37 +02:00
Emilio Cobos Álvarez
ea8f115b8c
webgl: A few fixes regarding the nullability of WebGL parameters. 2016-10-09 12:32:37 +02:00
bors-servo
9d3fc76463 Auto merge of #13633 - glennw:forward-touch-events, r=mbrubeck
Send touch events to root pipeline, and allow forwarding to iframes.

Instead of letting the compositor try to find the correct scroll
layer for a touch event, switch touch events to work the same way
that mouse events do.

Touch events are now dispatched to the root pipeline, and then
forwarded to child iframes as required.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13633)
<!-- Reviewable:end -->
2016-10-07 19:07:24 -05:00
bors-servo
dad3b4785a Auto merge of #13589 - splav:SVGElement#12974, r=pcwalton,Ms2ger
Support SVG element

<!-- Please describe your changes on the following line: -->
minimal SVG element implementation
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #12974 (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13589)
<!-- Reviewable:end -->
2016-10-07 17:40:13 -05:00
Glenn Watson
291af9d115 Send touch events to root pipeline, and allow forwarding to iframes.
Instead of letting the compositor try to find the correct scroll
layer for a touch event, switch touch events to work the same way
that mouse events do.

Touch events are now dispatched to the root pipeline, and then
forwarded to child iframes as required.
2016-10-08 06:00:00 +10:00
bors-servo
d01a866215 Auto merge of #13498 - asajeffrey:script-iframe-stores-frameid, r=glennw
IFrame elements now manage FrameIds rather than the constellation.

<!-- Please describe your changes on the following line: -->

This PR stores the FrameId as well as the PipelineId in an html iframe. The iframes are now responsible for creating frame ids, not the constellation.

This is the first step in fixing #633, because it means we know the frame id of each script thread when it is created. It also means we can share the frame id, for example using it in the debugger.

cc @jdm, @ConnorGBrewster and @ejpbruel.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes do not require tests because it's a refactoring.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13498)
<!-- Reviewable:end -->
2016-10-07 14:54:31 -05:00
Alan Jeffrey
f53408df80 IFrame elements now manage FrameIds rather than the constellation. 2016-10-07 14:11:32 -05:00
yoyo930021
980c644a83 Make URLSearchParams iterable.
Fixes #13022.
Fixes #13077.
2016-10-07 17:35:54 +02:00
bors-servo
a6e4b5bb86 Auto merge of #13596 - nox:inline, r=Ms2ger
Get rid of dom::bindings::global

Globals in that PR are now represented by the fake IDL interface `GlobalScope`.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13596)
<!-- Reviewable:end -->
2016-10-07 07:52:09 -05:00
Anthony Ramine
d8e92bb271 Rename Reflectable::global_scope to global 2016-10-06 21:36:41 +02:00
Anthony Ramine
b6bbd41e11 Remove GlobalRoot and GlobalRef 2016-10-06 21:36:00 +02:00
Anthony Ramine
c66cf46bee Make the closure in flush_promise_jobs return a Root<GlobalScope> 2016-10-06 21:35:59 +02:00
Anthony Ramine
996fd284e2 Use global_scope_from_context in TestBinding::PromiseNativeHandler 2016-10-06 21:35:59 +02:00
Anthony Ramine
00e66a777a Make workers' interrupt_callback use GlobalScope 2016-10-06 21:35:59 +02:00
Anthony Ramine
907781eb75 Remove Reflectable::global 2016-10-06 21:35:58 +02:00
Anthony Ramine
e7a1149984 Introduce GlobalScope::file_reading_task_source 2016-10-06 21:35:57 +02:00
Anthony Ramine
0a11c48e89 Make XMLHttpRequest::fetch take a &GlobalScope 2016-10-06 21:35:56 +02:00
Anthony Ramine
ca15dd5eea Introduce GlobalScope::process_event 2016-10-06 21:35:56 +02:00
Anthony Ramine
cdf3ef05e7 Introduce GlobalScope::new_script_pair 2016-10-06 21:35:55 +02:00
Anthony Ramine
1f8bb3a89f Make Fetch take a &GlobalScope 2016-10-06 21:35:55 +02:00
Anthony Ramine
144dc62575 Do not use GlobalRoot in CodegenRust anymore 2016-10-06 21:35:55 +02:00
Anthony Ramine
02d38e74e9 Make Promise::Reject and Resolve take a &GlobalScope 2016-10-06 21:35:54 +02:00
Anthony Ramine
26455b8a67 Remove global_root_from_reflector 2016-10-06 21:35:54 +02:00
Anthony Ramine
1fed45e393 Use global_scope_from_object in Window::global_is_mozbrowser 2016-10-06 21:35:53 +02:00
Anthony Ramine
4d9347d5b3 Introduce GlobalScope::enqueue_promise_job 2016-10-06 21:35:53 +02:00
Anthony Ramine
2ee073053a Make PromiseJobQueue::enqueue take a &GlobalScope 2016-10-06 21:35:53 +02:00
Anthony Ramine
6e3be6d894 Introduce GlobalScope::flush_promise_jobs 2016-10-06 21:35:52 +02:00
Anthony Ramine
44ca9f3d71 Make TaskSource::queue take a &GlobalScope 2016-10-06 21:35:52 +02:00
Anthony Ramine
514819f37a Introduce GlobalScope::get_runnable_wrapper 2016-10-06 21:35:51 +02:00
Anthony Ramine
ca8c6fb072 Make RunnableWrapper store an Option<Arc<AtomicBool>>
This makes WorkerGlobalScope::get_runnable_wrapper not panic anymore
when the worker is a ServiceWorkerGlobalScope.
2016-10-06 21:35:51 +02:00
Anthony Ramine
991801488c Move timers to GlobalScope 2016-10-06 21:35:51 +02:00
Anthony Ramine
5d8979237b Make devtools::handle_evaluate_js take a &GlobalScope 2016-10-06 21:35:50 +02:00
Anthony Ramine
9c04eb60bd Move JS evaluation functions to GlobalScope 2016-10-06 21:35:50 +02:00
Anthony Ramine
19108aa330 Pass a &GlobalScope to WebIDL static methods and constructors 2016-10-06 21:35:49 +02:00
Anthony Ramine
1fd470889d Introduce GlobalScope::networking_task_source 2016-10-06 21:35:49 +02:00
Anthony Ramine
a7305b7fc4 Introduce GlobalScope::script_chan 2016-10-06 21:35:48 +02:00
Anthony Ramine
71236e168a Introduce GlobalScope::core_resource_thread 2016-10-06 21:35:48 +02:00
Anthony Ramine
de846f25a6 Make create_scope_things take a &GlobalScope 2016-10-06 21:35:48 +02:00
Anthony Ramine
83feb7dee3 Make prepare_workerscope_init take a &GlobalScope 2016-10-06 21:35:47 +02:00
Anthony Ramine
9a48ebb245 Make dom::blob::read_file take a &GlobalScope 2016-10-06 21:35:47 +02:00
Anthony Ramine
bad49e4696 Introduce GlobalScope::resource_threads 2016-10-06 21:35:46 +02:00
Anthony Ramine
86d2008137 Introduce GlobalScope::report_an_error 2016-10-06 21:35:46 +02:00
Anthony Ramine
d4fccbace4 Make bluetooth::result_to_promise take a &GlobalScope 2016-10-06 21:35:46 +02:00
Anthony Ramine
9183525192 Make XMLHttpRequest::new_doc use Reflectable::global_scope 2016-10-06 21:35:45 +02:00
Anthony Ramine
766010379e Introduce GlobalScope::as_window 2016-10-06 21:35:45 +02:00
Anthony Ramine
2f54022761 Remove some duplication in XMLHttpRequest methods 2016-10-06 21:35:44 +02:00
Anthony Ramine
99b346ac52 Make Request::new take a &GlobalScope 2016-10-06 21:35:44 +02:00
Anthony Ramine
f38159b7d3 Introduce GlobalScope::get_url 2016-10-06 21:35:44 +02:00