Commit Graph

83 Commits

Author SHA1 Message Date
Ms2ger
fb7d12cdc4 servo: Merge #4705 - Encapsulate to-be-cleaned-up refcounted pointers (from Ms2ger:refcounted); r=larsbergstrom
This will allow us to make them Send in the future.

Source-Repo: https://github.com/servo/servo
Source-Revision: ad328fda65e6b7180de8b47f0964fe2f94c505a9
2015-01-21 12:09:56 -07:00
Ms2ger
dfc91abf3f servo: Merge #4682 - Move to to_owned rather than into_string (from servo:to_owned); r=jdm
into_string has been removed from Rust.

Source-Repo: https://github.com/servo/servo
Source-Revision: 94ebc7c32d5ce58ada3f9d8ffdb60cc025eb5997
2015-01-20 07:54:46 -07:00
Ms2ger
f3ffdb970d servo: Merge #4609 - Make Runnable::handler take self by value (from Ms2ger:runnable-self-by-value); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 879af966b3c18d9405b6f5837b39a28039db1eb3
2015-01-10 10:30:44 -07:00
Ms2ger
9ad17a520b servo: Merge #4607 - Consolidate structured cloning code (from Ms2ger:clone); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: a07c3eadb33eca1fbb2209d168c63c5ec3db23df
2015-01-10 09:18:45 -07:00
Tetsuharu OHZEKI
ad588dacb3 servo: Merge #4532 - Make DOMContentLoaded and load asynchronous with using Runnable (from saneyuki:event); r=jdm
Fix #4505

Source-Repo: https://github.com/servo/servo
Source-Revision: 21fd1120c3c18a8ccc3d95f8d53b5f2875c77c97
2015-01-09 13:54:47 -07:00
Ms2ger
8dddd875d5 servo: Merge #4584 - Deny unsafe blocks in script (from Ms2ger:unsafe); r=jdm
As a first start, this allows them indiscriminately where used.

Source-Repo: https://github.com/servo/servo
Source-Revision: f74d5360ba30ec7aaa12f675eb267fd11053d8a8
2015-01-09 07:15:52 -07:00
Matthew Rasmus
8a04144529 servo: Merge #4575 - Post-rustup warning fixes (from mttr:warnings); r=jdm
Notes:

* This adds `#![allow(missing_copy_implementations)]` to components/*/lib.rs. I'm not sure how to approach the missing Copy warnings (are there things for which Copy should NOT be implemented, and how can I tell?) so I stuck this in to make life easier when looking through the warnings. I can easily remove this if necessary.
* This leaves the following type of warnings, which I couldn't figure out how to approach (I'll investigate it later if no one else wants to).
```
css/matching.rs:72:23: 72:35 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:72         this_as_query.equiv(other)
                                         ^~~~~~~~~~~~
css/matching.rs:95:10: 95:49 warning: use of deprecated item: Use overloaded core::cmp::PartialEq, #[warn(deprecated)] on by default
css/matching.rs:95 impl<'a> Equiv<ApplicableDeclarationsCacheEntry> for ApplicableDeclarationsCacheQuery<'a> {
```

Source-Repo: https://github.com/servo/servo
Source-Revision: 0793137631cbe4ebbff8fb85639206ce8e41bbb7
2015-01-08 16:03:55 -07:00
Guillaume Bort
60c43609d0 servo: Merge #4069 - Fix #3936 – {Window,WorkerGlobalScope}.set{Timeout,Interval}(DOMString) (from guillaumebort:fix/3936); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: df6a7959df69bf98b397f088fc3cf1fad2cc0aaf
2015-01-08 08:48:54 -07:00
Ms2ger
b3c7f9d2ca servo: Merge #4554 - Update rustc to revision 2cfb5acb5a2751c759627377e602bac4f88f2d19 (from servo:rustup_20141221); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1d7148c79f9124779a910fd5291c5fa0543b2dae
2015-01-08 08:00:57 -07:00
Ms2ger
843040ab81 servo: Merge #4548 - Various cleanup (from Ms2ger:cleanup); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: 65ee8166bd64e911502e29a050258b70d9f263aa
2015-01-05 01:27:48 -07:00
Ms2ger
2979891740 servo: Merge #4542 - Prepare for the rust upgrade (from servo:pre-rustup_20141221); r=saneyuki
In particular, this contains changes to qualify enums where rust will require it, and to stop using some features that will be removed.

Source-Repo: https://github.com/servo/servo
Source-Revision: ba8cf6b0e6145265f9472d4855f078d8b5943fe7
2015-01-04 12:39:47 -07:00
Megha Gupta
49ad060695 servo: Merge #4495 - Add HTMLElementTypeId enum (fixes #3625) (from MeghaGupta:typeid); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 2e17cae5d080db72d5f89733d19e0304857cfd34
2015-01-04 12:12:48 -07:00
Bharath M R
0948512050 servo: Merge #4533 - Issue 4497 Fix: Converts WorkerPostMessage into a Runnable (from catchmrbharath:4497); r=jdm
A lot of tests were failing when I ran `./mach test tests/wpt/web-platform-tests/workers --processes=4` and
`./mach test tests/wpt/web-platform-tests/XMLHttpRequest --processes=4` on master. So I could not completely test it. I verified that the tests that were failing were the same, before and after the change.

Is there any way to run it here?

Source-Repo: https://github.com/servo/servo
Source-Revision: 076e28795d90a9a8bb523774b993f841602ae9e6
2015-01-04 06:21:50 -07:00
Ms2ger
03365eb590 servo: Merge #4535 - Stop using some obsolete features (from servo:pre-rustup_20141221); r=jdm
This prepares for the rust upgrade currently being conducted.

Source-Repo: https://github.com/servo/servo
Source-Revision: e8fac3681b690adb0796b2a807ac95bd9c13597a
2015-01-03 14:39:46 -07:00
Martin Robinson
6c0ac241fb servo: Merge #4536 - Stall PaintTask exit until it can release all buffers (from mrobinson:pixmap); r=pcwalton
It is possible for a PaintTask to start exiting soon after sending new
buffers to the compositor. In that case, the compositor should return
the now unnecessary buffers to the PaintTask so that it can properly
free them.

To accomplish this, the compositor now keeps a hash map of paint task
channels per pipeline id. When a PaintTask exists, the constellation
informs the compositor that it can forget about it. Additionally, the
PaintTask should not wait for any buffers when the engine is doing a
complete shutdown. In that case, the compositor is already halted and
has simply let all buffers leak. We pipe through the shutdown type when
destroying the pipeline to make this decision.

Fixes #2641.

Source-Repo: https://github.com/servo/servo
Source-Revision: a31acffb0405b2c38b39c39c6d552f2ba79b6326
2015-01-02 20:21:47 -07:00
Ms2ger
473efad71a servo: Merge #4526 - Move away from Root::deref (from servo:deref-1); r=Manishearth
This is a start towards fixing #3868. Not all callers have been fixed yet, so the `Deref` implementation remains for now.

Source-Repo: https://github.com/servo/servo
Source-Revision: 141b5d038fad3c0c44a6f1b309b8ca9edea54580
2015-01-02 09:22:51 -07:00
Ms2ger
987dcd9e44 servo: Merge #4528 - Stop using ptr.is_not_null() in script (from Ms2ger:is_not_null); r=larsbergstrom
This method is deprecated in rust master; removing its users in advance will
make a future rust upgrade smoother.

Source-Repo: https://github.com/servo/servo
Source-Revision: a61417e2a87004e30e2a02f2e6ae58629062e3d5
2015-01-01 14:42:44 -07:00
Manish Goregaokar
93844b0dcd servo: Merge #4488 - Add a lint for usages of to_string() (from servo:into_string-lint); r=jdm
This is a rebase of #4366.

Source-Repo: https://github.com/servo/servo
Source-Revision: 0da57abec6014f8a6edde9781598053deab996c7
2014-12-31 05:00:52 -07:00
Josh Matthews
b23f44d460 servo: Merge #4057 - Enable refcounting arbitrary DOM types (from jdm:refcountdom); r=Ms2ger
This replaces the specialized TrustedXHRAddress and TrustedWorkerAddress code that was used for the same purpose. A non-zero refcount pins the given DOM object's reflector and prevents it from being GCed even when there are no other outstanding references visible to SpiderMonkey. This will enable us to implement asynchronous operations that refer to particular DOM objects (such as "queue a task to fire a simple event named load at the iframe element" from the spec) safely and conveniently, and paves the way for things like asynchronous network responses.

Some concerns about the resulting size of XHR progress messages have been expressed, but I believe optimizations to reduce that can be implemented in subsequent PRs.

r? @Ms2ger - note in particular the changes to the worker lifetime code. I couldn't figure out how to achieve an identical lifetime to the previous addref/release pairing, and I also was having trouble figuring out why the existing setup was safe. The new implementation now holds the main script task Worker object alive via the TrustedWorkerAddress field in the dedicated worker global scope, which is a significant difference.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2c259f477c41331e66beab8bda865971982a1ff4
2014-12-29 11:57:45 -07:00
Ms2ger
1fff3e04f9 servo: Merge #4501 - Simplify some code in handle_click_event (from Ms2ger:script_task); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 1539051896c5c4093e7a7bb5a52939b31bb0d7da
2014-12-29 09:54:45 -07:00
Manish Goregaokar
8e0ed407b9 servo: Merge #4485 - Replace most to_string calls by into_string calls (from servo:into_string); r=Ms2ger
`str::to_string()` goes through a `Formatter`, `str::into_string()` is a direct copy and is apparently 5× faster.

This is a rebase of the boring and bitrot-prone parts of #4366.

Source-Repo: https://github.com/servo/servo
Source-Revision: 9857ea26cb9ee262654bee97322dbbf373486bff
2014-12-27 06:51:44 -07:00
thiagopnts
cc03f684ac servo: Merge #4474 - Replace XHR events for generic ones in ScriptTask (from thiagopnts:generic-msgs); r=jdm
This refs #3735. As discussed in the issue, I did it cloning when I couldn't dereference an attribute. The trait method should be on `&self` for object-safety reasons.

Source-Repo: https://github.com/servo/servo
Source-Revision: 194ce20969f04bf2d077ebed106fc1bfb5eb32ee
2014-12-24 03:45:44 -07:00
Matt McCoy
3dc5d262db servo: Merge #4453 - This will fix #4259. Dispatch mousemove when the mouse is moved (from mattnenterprise:dispatch-mousemove); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: fb59e7929998facb292ed606255a665c74cf9416
2014-12-23 23:15:47 -07:00
Ms2ger
36d5e975b5 servo: Merge #4444 - Simplify some code in ScriptTask::load (from Ms2ger:load-simplify); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: b9edc2243a98f2d71408430fe68716bdbbd015d7
2014-12-19 08:09:48 -07:00
Ms2ger
f2ea9296ec servo: Merge #4443 - Make the argument to dispatch_event_with_target non-optional (from Ms2ger:dispatch_event_with_target); r=Manishearth
The name of the method makes it clear it's supposed to be used with a target
override, so we might as well enforce that.

Source-Repo: https://github.com/servo/servo
Source-Revision: 11b27361c9f6af08ed78fa1a3fe58732b4c69cd4
2014-12-19 04:33:46 -07:00
Tetsuharu OHZEKI
d32b4e13f5 servo: Merge #4434 - script: Remove glob imports added in #4405 (from saneyuki:glob_script); r=jdm
#4406

Source-Repo: https://github.com/servo/servo
Source-Revision: 803e5ef7904f2843d8e44184f9154af079eea9fa
2014-12-18 15:57:48 -07:00
Patrick Walton
03b57b5792 servo: Merge #4403 - script: Fix double borrow error when going back. Closes #4402 (from pcwalton:back-borrow); r=jdm
I have verified that back and forward work once again.

Sorry about this one. r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 8626be6ab00d966cb4abed2a2fef691d286df32d
2014-12-18 14:39:50 -07:00
Patrick Walton
53a1509c58 servo: Merge #4358 - compositing: Implement cursor per CSS3-UI § 8.1.1 in the CEF/Mac port (from pcwalton:cursor); r=mbrubeck
I'm not sure how we want to handle Linux cursors, and GLFW has no
ability to set cursors (short of disabling it and managing it yourself).

If you test this in the wild you will probably hit #4357 until that PR lands.

Source-Repo: https://github.com/servo/servo
Source-Revision: e2267e0a0749e27046ee8a26ba514cc6865e0345
2014-12-18 00:24:49 -07:00
Glenn Watson
636d338cf6 servo: Merge #4405 - Update rustc to revision 3dcd2157403163789aaf21a9ab3c4d30a7c6494d (from servo:rustup_20141124); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: fbf42c951b2f53d91e2f32f8035484a07ea83493
2014-12-17 18:45:49 -07:00
thiagopnts
eb7182b71b servo: Merge #4374 - Add auxiliary method to EventTargetHelpers for events without target (from thiagopnts:dispatch-event); r=Ms2ger
servo/pull/4369 with the right commit.

Source-Repo: https://github.com/servo/servo
Source-Revision: 746b262ff4e23db11586f74ef1a03e98cb12bb52
2014-12-16 06:36:47 -07:00
Patrick Walton
6ed2b8f60a servo: Merge #4385 - script: Fix double-borrow error (from pcwalton:page-double-borrow); r=jdm
This was my fault. It comes up on almost any page after scrolling a bit.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: fb5c1bef6fe48b7bd2c1dd9e73069d5b00b20aad
2014-12-15 20:54:44 -07:00
Patrick Walton
a25bac63a9 servo: Merge #3844 - script: Improve dirty propagation and fix script-layout synchronization (from pcwalton:script-layout-synchronization); r=jdm
This fixes race conditions whereby layout and script could be running
simultaneously.

r? @jdm
cc @cgaebel

Source-Repo: https://github.com/servo/servo
Source-Revision: 5f2684d2f81046abd7548fb22d996d1e506a104a
2014-12-15 15:31:21 -07:00
Gilbert Röhrbein
c05a0bf762 servo: Merge #4356 - refactor script_task.rs fn handle_msgs (from servo:msgs); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: ea39b878ac619e68907e27c486660dd4bc3fc618
2014-12-12 17:30:47 -07:00
Greg Weng
5244de1f1a servo: Merge #4355 - Return real page titles and URLs for devtools tab choices (from servo:devtools-title); r=metajack
Fixes #4167.

Source-Repo: https://github.com/servo/servo
Source-Revision: 6362d060e16aa006877b2920c5de2fad7db3dace
2014-12-12 17:03:45 -07:00
Nathan E. Egge
fc4605515d servo: Merge #4347 - Sending key events through script task before processing them in the com (from negge:backspace4); r=jdm
...positor.

Fixes #4163

Source-Repo: https://github.com/servo/servo
Source-Revision: 4b8c9128597a7598ef76a4bebe6d81fb2ff9aa1a
2014-12-12 10:36:55 -07:00
Patrick Walton
755e7a69c3 servo: Merge #4193 - ports/cef: Implement accelerated compositing for the CEF port (from pcwalton:cef-redux); r=pcwalton,metajack
@glennw, is it possible to rebase your stuff on top of this? Sorry for the mess.

r? @metajack

Source-Repo: https://github.com/servo/servo
Source-Revision: ba06d50e3a611d1c27c6c9aa0b21441282911c3f
2014-12-10 09:40:03 -07:00
Ms2ger
4c10b22c29 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
Ms2ger
d26f791183 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
Ms2ger
4f460d5230 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
Ms2ger
6645943ae6 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
Manish Goregaokar
3259a22290 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
Shanil Puri
62df127725 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
nkdalmia
e399ad3e2b 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
Michael Booth
fec3728296 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
Mukilan Thiyagarajan
0f497e555c servo: Merge #3941 - Allow passing arguments to setTimeout/setInterval callbacks (from mukilan:timeout-arguments); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 43b452f3b874c4bf0392ceaec27a0e40f18b5e34
2014-11-15 11:09:32 -07:00
Manish Goregaokar
3c672569d6 servo: Merge #3973 - Don't overwrite redirected URL in script_task (fixes #3970) (from Manishearth:301-fix); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 10cd7728ff0daa7d2e5e13d002d008b5049f389b
2014-11-13 17:45:29 -07:00
Josh Matthews
82582a7847 servo: Merge #3585 - Implement single-line text input (from jdm:input); r=gw
This attempts to implement a bunch of the DOM Level 3 Events spec by implementing the KeyboardEvent interface, the document focus context, and dispatching keyup/keydown/keypress events appropriately. There's also some support for multiline text input that's untested.

Source-Repo: https://github.com/servo/servo
Source-Revision: 2ffa845cf463b14b19322d477a77ffd20efa89a9
2014-11-13 10:57:33 -07:00
Glenn Watson
71f726977a servo: Merge #3948 - Rust upgrade to rustc hash b03a2755193cd756583bcf5831cf4545d75ecb8a (from servo:rustup-20141105_2); r=Manishearth
Source-Repo: https://github.com/servo/servo
Source-Revision: c5e1b0d32e17fad29799023c85e2e73ac89c3af7
2014-11-12 20:48:31 -07:00
Martin Robinson
814dac2156 servo: Merge #3809 - Clip display list based on frame viewport (from mrobinson:display-list-optimization); r=pcwalton
Instead of creating a display list for the entire page, only create one
for an area that expands around the viewport. On my machine this makes
incremental layout of http://timecube.com 50% faster.

Source-Repo: https://github.com/servo/servo
Source-Revision: 26045d7fcbab8851fbefe2851cd904203f8fd8dd
2014-11-12 17:36:32 -07:00
Shing Lyu
a2432737ac servo: Merge #3915 - Extract the script task handlers code into separate methods (from shinglyu:bug3811); r=jdm
This is a fix for bug #3811 , thank you.

Source-Repo: https://github.com/servo/servo
Source-Revision: fc62243f81ba4c5a3585b2a80c859fad16083557
2014-11-09 20:24:31 -07:00